当前位置: 首页>>代码示例>>C++>>正文


C++ Expression::eq方法代码示例

本文整理汇总了C++中Expression::eq方法的典型用法代码示例。如果您正苦于以下问题:C++ Expression::eq方法的具体用法?C++ Expression::eq怎么用?C++ Expression::eq使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Expression的用法示例。


在下文中一共展示了Expression::eq方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: Expression

//---------------------------------------------------------------------------
Expression
UnaryExpr::df(std::string const& n) const
{
    Expression e = _expr.df(n);

    if ( e.eq(0.0) ) return Expression(0.0);

    //switch (_opMap[_op])
    switch (_op)
    {
        case MINUS :    if ( e.eq(1.0) ) return Expression(-1.0);
                        return Expression( MINUS,  e );

        case ABS   :    if ( e.eq(1.0) ) return Expression( SIGN, _expr );
                        return Expression( TIMES,  Expression(SIGN, _expr), e );

        case EXP   :    if ( e.eq(1.0) ) return Expression( EXP, _expr );
                        return Expression( TIMES,  Expression(EXP, _expr), e );

        case LN    : return Expression( DIVIDE, e, _expr);

        case LOG   : return Expression(
                                DIVIDE,
                                Expression(DIVIDE, e, _expr),
                                std::log(10.0)
                            );

        // case SIGN  : return Expression( TIMES,  Expression(DELTA, _expr), e );

        case SIN   :    if ( e.eq(1.0) ) return Expression( COS, _expr );
                        return Expression( TIMES,  Expression(COS, _expr), e );

        case COS   :    if ( e.eq(1.0) ) return Expression( MINUS,  Expression(SIN, _expr) );
                        return Expression( MINUS,  Expression(TIMES, Expression(SIN, _expr), e) );

        case TAN   : return Expression(
                                DIVIDE,
                                e,
                                Expression(
                                    TIMES,
                                    Expression(COS, _expr),
                                    Expression(COS, _expr)
                                )
                            );

        default    : return Expression(0.0);
    }
}
开发者ID:,项目名称:,代码行数:49,代码来源:


注:本文中的Expression::eq方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。