#include <Sacado_ELRFad_Expression.hpp>
Public Types | |
| typedef ExprT1::value_type | value_type_1 |
| Typename of the first argument value. | |
| typedef ExprT2::value_type | value_type_2 |
| Typename of the second argument value. | |
|
typedef Sacado::Promote< value_type_1, value_type_2 >::type | value_type |
| Typename of the expression values. | |
| typedef ExprT1::base_expr_type | base_expr_type_1 |
| Typename of base-expression of first argument. | |
| typedef ExprT2::base_expr_type | base_expr_type_2 |
| Typename of base-expression of second argument. | |
|
typedef ExprPromote< base_expr_type_1, base_expr_type_2 >::type | base_expr_type |
| Typename of base-expression. | |
| typedef Op< ExprT1, ExprT2 > | OpT |
Public Member Functions | |
| BinaryExpr (const ExprT1 &expr1, const ExprT2 &expr2) | |
| Constructor. | |
| int | size () const |
| Return size of the derivative array of the operation. | |
| void | computePartials (const value_type &bar, value_type partials[]) const |
| Return partials w.r.t. arguments. | |
| void | getTangents (int i, value_type dots[]) const |
Rturn tangent component i of arguments. | |
| value_type | val () const |
| Return value of operation. | |
| template<int Arg> | |
| value_type | getTangent (int i) const |
Return tangent component i of argument Arg. | |
| template<int Arg> | |
| bool | isActive () const |
| Return whether argument is active. | |
Static Public Attributes | |
| static const int | num_args1 = ExprT1::num_args |
| Number of arguments of left arg. | |
| static const int | num_args2 = ExprT2::num_args |
| Number of arguments of right arg. | |
| static const int | num_args = num_args1 + num_args2 |
| Number of arguments. | |
Protected Attributes | |
| ExprConstRef< ExprT1 >::type | expr1_ |
| Left argument. | |
| ExprConstRef< ExprT2 >::type | expr2_ |
| Right argument. | |
This template class represents a binary operation of the form op(a1,a2) where a1 is the left argument of type ExprT1, r is the right argument of type ExprT2, and op is the operation represented by type Op. The operation is evaluated by the static methods Op::computeValue() and Op::computeDx().
1.4.7