#include <Sacado_CacheFad_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. | |
Public Member Functions | |
| BinaryExpr (const ExprT1 &expr1, const ExprT2 &expr2) | |
| Constructor. | |
| int | size () const |
| Return size of the derivative array of the operation. | |
| bool | hasFastAccess () const |
| Return if operation has fast access. | |
| value_type | val () const |
| Return value of operation. | |
| value_type | dx (int i) const |
Return derivative component i of operation. | |
| value_type | fastAccessDx (int i) const |
Return derivative component i of operation. | |
Protected Attributes | |
| ExprConstRef< ExprT1 >::type | expr1_ |
| Left argument. | |
| ExprConstRef< ExprT2 >::type | expr2_ |
| Right argument. | |
| Op< ExprT1, ExprT2 > | op_ |
| Operator. | |
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 non-static methods Op::computeValue() and Op::computeDx().
It is assumed Op::computeValue() will cache its result for later Op::computeDx() calls.
1.4.7