Rosetta
|
Pure virtual base class to define arbitrary expressions for scripting arithmetic operations (e.g. addition and multipliction). More...
#include <Arithmetic.hh>
Public Member Functions | |
~Expression () override | |
Automatically generated virtual destructor for class deriving directly from VirtualBase. More... | |
virtual numeric::Real | operator() () const =0 |
virtual ExpressionCOP | differentiate (std::string const &varname) const =0 |
Returns the expression for the partial derivative of this expression by the variable named varname. If the partial derivative is always zero with respect to varname, returns null. More... | |
virtual std::list< std::string > | active_variables () const =0 |
![]() | |
VirtualBase ()=default | |
Default constructor. More... | |
virtual | ~VirtualBase ()=default |
The virtual destructor is one of the main reasons for the VirtualBase class. More... | |
VirtualBase (VirtualBase const &)=default | |
VirtualBase (VirtualBase &&)=default | |
VirtualBase & | operator= (VirtualBase const &)=default |
VirtualBase & | operator= (VirtualBase &&)=default |
Pure virtual base class to define arbitrary expressions for scripting arithmetic operations (e.g. addition and multipliction).
|
overridedefault |
Automatically generated virtual destructor for class deriving directly from VirtualBase.
Auto-generated virtual destructor
|
pure virtual |
Implemented in numeric::expression_parser::ITEExpression, numeric::expression_parser::MetaMinExpression, numeric::expression_parser::MetaMaxExpression, numeric::expression_parser::MinExpression, numeric::expression_parser::MaxExpression, numeric::expression_parser::BinaryExpression, numeric::expression_parser::UnaryExpression, numeric::expression_parser::VariableExpression, and numeric::expression_parser::LiteralExpression.
|
pure virtual |
Returns the expression for the partial derivative of this expression by the variable named varname. If the partial derivative is always zero with respect to varname, returns null.
Implemented in numeric::expression_parser::ITEExpression, numeric::expression_parser::NotExpression, numeric::expression_parser::OrExpression, numeric::expression_parser::AndExpression, numeric::expression_parser::LTE_Expression, numeric::expression_parser::LT_Expression, numeric::expression_parser::GTE_Expression, numeric::expression_parser::GT_Expression, numeric::expression_parser::EqualsExpression, numeric::expression_parser::MetaMinExpression, numeric::expression_parser::MetaMaxExpression, numeric::expression_parser::MinExpression, numeric::expression_parser::MaxExpression, numeric::expression_parser::DivideExpression, numeric::expression_parser::MultiplyExpression, numeric::expression_parser::SubtractExpression, numeric::expression_parser::AddExpression, numeric::expression_parser::AbsoluteValueExpression, numeric::expression_parser::SquarerootExpression, numeric::expression_parser::VariableExpression, and numeric::expression_parser::LiteralExpression.
|
pure virtual |
Implemented in numeric::expression_parser::ITEExpression, numeric::expression_parser::NotExpression, numeric::expression_parser::OrExpression, numeric::expression_parser::AndExpression, numeric::expression_parser::LTE_Expression, numeric::expression_parser::LT_Expression, numeric::expression_parser::GTE_Expression, numeric::expression_parser::GT_Expression, numeric::expression_parser::EqualsExpression, numeric::expression_parser::MetaMinExpression, numeric::expression_parser::MetaMaxExpression, numeric::expression_parser::MinExpression, numeric::expression_parser::MaxExpression, numeric::expression_parser::DivideExpression, numeric::expression_parser::MultiplyExpression, numeric::expression_parser::SubtractExpression, numeric::expression_parser::AddExpression, numeric::expression_parser::AbsoluteValueExpression, numeric::expression_parser::SquarerootExpression, numeric::expression_parser::VariableExpression, and numeric::expression_parser::LiteralExpression.