本文整理汇总了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);
}
}