Implements the derivative by delegating the implementation of the apply methods to the Operator class, by way of the Evaluation. More...
#include <op.hh>
Public Member Functions | |
~DerivEvaluation () | |
const Space< Scalar > & | getDomain () const |
access to domain, delegated to Evaluation datum | |
const Space< Scalar > & | getRange () const |
access to range, delegated to Evaluation datum | |
ostream & | write (ostream &str) const |
Protected Member Functions | |
DerivEvaluation (const DerivEvaluation< Scalar > &d) | |
DerivEvaluation (OperatorEvaluation< Scalar > &_fx) | |
Records reference to Evaluation object. | |
LinearOp< Scalar > * | clone () const |
Operator< Scalar > & | getOp () const |
supplied to enable child classes to access Operator data member directly | |
void | apply (const Vector< Scalar > &y, Vector< Scalar > &z) const |
image, application, MatVec product, whatever, via protected method of Evaluation datum | |
void | applyAdj (const Vector< Scalar > &y, Vector< Scalar > &z) const |
image of adjoint operator, via protected method of Evaluation datum | |
Protected Attributes | |
OperatorEvaluation< Scalar > & | fx |
Friends | |
class | OperatorEvaluation< Scalar > |
class | Operator< Scalar > |
Implements the derivative by delegating the implementation of the apply methods to the Operator class, by way of the Evaluation.
As no access to internal state (consisting only of an Evaluation reference) is provided, instances are effectively immutable. Only manufactured by OperatorEvaluation class - the nontrivial constructor is protected (others are private and not implemented) and OperatorEvaluation is the only friend class.
Definition at line 1958 of file op.hh.
RVL::DerivEvaluation< Scalar >::DerivEvaluation | ( | const DerivEvaluation< Scalar > & | d | ) | [protected] |
RVL::DerivEvaluation< Scalar >::DerivEvaluation | ( | OperatorEvaluation< Scalar > & | _fx | ) | [protected] |
RVL::DerivEvaluation< Scalar >::~DerivEvaluation | ( | ) |
LinearOp<Scalar>* RVL::DerivEvaluation< Scalar >::clone | ( | ) | const [protected, virtual] |
Implements RVL::Operator< Scalar >.
Reimplemented in RVL::InvertibleDerivEvaluation< Scalar >.
Operator<Scalar>& RVL::DerivEvaluation< Scalar >::getOp | ( | ) | const [protected] |
void RVL::DerivEvaluation< Scalar >::apply | ( | const Vector< Scalar > & | y, | |
Vector< Scalar > & | z | |||
) | const [protected, virtual] |
image, application, MatVec product, whatever, via protected method of Evaluation datum
Implements RVL::Operator< Scalar >.
void RVL::DerivEvaluation< Scalar >::applyAdj | ( | const Vector< Scalar > & | y, | |
Vector< Scalar > & | z | |||
) | const [protected, virtual] |
image of adjoint operator, via protected method of Evaluation datum
Implements RVL::LinearOp< Scalar >.
const Space<Scalar>& RVL::DerivEvaluation< Scalar >::getDomain | ( | ) | const [virtual] |
access to domain, delegated to Evaluation datum
Implements RVL::Operator< Scalar >.
Reimplemented in RVL::InvertibleDerivEvaluation< Scalar >.
const Space<Scalar>& RVL::DerivEvaluation< Scalar >::getRange | ( | ) | const [virtual] |
access to range, delegated to Evaluation datum
Implements RVL::Operator< Scalar >.
Reimplemented in RVL::InvertibleDerivEvaluation< Scalar >.
ostream& RVL::DerivEvaluation< Scalar >::write | ( | ostream & | str | ) | const [virtual] |
Implements RVL::Writeable.
Reimplemented in RVL::InvertibleDerivEvaluation< Scalar >.
friend class OperatorEvaluation< Scalar > [friend] |
Reimplemented from RVL::Operator< Scalar >.
friend class Operator< Scalar > [friend] |
OperatorEvaluation<Scalar>& RVL::DerivEvaluation< Scalar >::fx [protected] |