RVL::CompLOVOp< Scalar > Class Template Reference

Composition in the first component of LinOpValOp with arbitrary op - could be accomplished with DiagonalOp, this construction introduced for efficiency's sake. More...

#include <op.hh>

Inheritance diagram for RVL::CompLOVOp< Scalar >:

RVL::LinOpValOp< Scalar > RVL::OperatorProductDomain< Scalar > RVL::Operator< Scalar > RVL::Writeable List of all members.

Public Member Functions

 CompLOVOp (Operator< Scalar > const &_op, LinOpValOp< Scalar > const &_lovop)
 CompLOVOp (CompLOVOp< Scalar > const &t)
ProductSpace< Scalar > const & getProductDomain () const
Space< Scalar > const & getRange () const
ostream & write (ostream &str) const

Protected Member Functions

void apply0 (const Vector< Scalar > &x0, const Vector< Scalar > &x1, Vector< Scalar > &y) const
void applyAdj0 (const Vector< Scalar > &x0, const Vector< Scalar > &y, Vector< Scalar > &x1) const
void applyPartialDeriv0 (const Vector< Scalar > &x0, const Vector< Scalar > &x1, const Vector< Scalar > &dx0, Vector< Scalar > &dy) const
void applyAdjPartialDeriv0 (const Vector< Scalar > &x0, const Vector< Scalar > &x1, const Vector< Scalar > &dy, Vector< Scalar > &dx0) const
void applyPartialDeriv20 (const Vector< Scalar > &x0, const Vector< Scalar > &x1, const Vector< Scalar > &dx00, const Vector< Scalar > &dx01, Vector< Scalar > &dy) const
void applyAdjPartialDeriv20 (const Vector< Scalar > &x0, const Vector< Scalar > &x1, const Vector< Scalar > &dy, const Vector< Scalar > &dx01, Vector< Scalar > &dx00) const
OperatorProductDomain< Scalar > * clonePD () const

Detailed Description

template<class Scalar>
class RVL::CompLOVOp< Scalar >

Composition in the first component of LinOpValOp with arbitrary op - could be accomplished with DiagonalOp, this construction introduced for efficiency's sake.

Definition at line 1197 of file op.hh.


Constructor & Destructor Documentation

template<class Scalar>
RVL::CompLOVOp< Scalar >::CompLOVOp ( Operator< Scalar > const &  _op,
LinOpValOp< Scalar > const &  _lovop 
)

Definition at line 1316 of file op.hh.

References RVL::Operator< Scalar >::clonePtr().

template<class Scalar>
RVL::CompLOVOp< Scalar >::CompLOVOp ( CompLOVOp< Scalar > const &  t  ) 

Definition at line 1331 of file op.hh.


Member Function Documentation

template<class Scalar>
void RVL::CompLOVOp< Scalar >::apply0 ( const Vector< Scalar > &  x0,
const Vector< Scalar > &  x1,
Vector< Scalar > &  y 
) const [protected, virtual]

Implements RVL::LinOpValOp< Scalar >.

Definition at line 1207 of file op.hh.

References RVL::Operator< Scalar >::export_apply(), and RVL::LinOpValOp< Scalar >::export_apply0().

template<class Scalar>
void RVL::CompLOVOp< Scalar >::applyAdj0 ( const Vector< Scalar > &  x0,
const Vector< Scalar > &  y,
Vector< Scalar > &  x1 
) const [protected, virtual]

Implements RVL::LinOpValOp< Scalar >.

Definition at line 1221 of file op.hh.

References RVL::Operator< Scalar >::export_apply(), and RVL::LinOpValOp< Scalar >::export_applyAdj0().

template<class Scalar>
void RVL::CompLOVOp< Scalar >::applyPartialDeriv0 ( const Vector< Scalar > &  x0,
const Vector< Scalar > &  x1,
const Vector< Scalar > &  dx0,
Vector< Scalar > &  dy 
) const [protected, virtual]

Implements RVL::LinOpValOp< Scalar >.

Definition at line 1235 of file op.hh.

References RVL::Operator< Scalar >::export_apply(), RVL::Operator< Scalar >::export_applyDeriv(), and RVL::LinOpValOp< Scalar >::export_applyPartialDeriv0().

template<class Scalar>
void RVL::CompLOVOp< Scalar >::applyAdjPartialDeriv0 ( const Vector< Scalar > &  x0,
const Vector< Scalar > &  x1,
const Vector< Scalar > &  dy,
Vector< Scalar > &  dx0 
) const [protected, virtual]

Implements RVL::LinOpValOp< Scalar >.

Definition at line 1252 of file op.hh.

References RVL::Operator< Scalar >::export_apply(), RVL::LinOpValOp< Scalar >::export_applyAdjPartialDeriv0(), and RVL::Operator< Scalar >::export_applyDeriv().

template<class Scalar>
void RVL::CompLOVOp< Scalar >::applyPartialDeriv20 ( const Vector< Scalar > &  x0,
const Vector< Scalar > &  x1,
const Vector< Scalar > &  dx00,
const Vector< Scalar > &  dx01,
Vector< Scalar > &  dy 
) const [protected, virtual]

Reimplemented from RVL::LinOpValOp< Scalar >.

Definition at line 1269 of file op.hh.

References RVL::Operator< Scalar >::export_apply(), RVL::Operator< Scalar >::export_applyDeriv(), and RVL::LinOpValOp< Scalar >::export_applyPartialDeriv20().

template<class Scalar>
void RVL::CompLOVOp< Scalar >::applyAdjPartialDeriv20 ( const Vector< Scalar > &  x0,
const Vector< Scalar > &  x1,
const Vector< Scalar > &  dy,
const Vector< Scalar > &  dx01,
Vector< Scalar > &  dx00 
) const [protected, virtual]

Reimplemented from RVL::LinOpValOp< Scalar >.

Definition at line 1290 of file op.hh.

References RVL::Operator< Scalar >::export_apply(), RVL::LinOpValOp< Scalar >::export_applyAdjPartialDeriv20(), and RVL::Operator< Scalar >::export_applyDeriv().

template<class Scalar>
OperatorProductDomain<Scalar>* RVL::CompLOVOp< Scalar >::clonePD (  )  const [protected, virtual]

Implements RVL::OperatorProductDomain< Scalar >.

Definition at line 1310 of file op.hh.

template<class Scalar>
ProductSpace<Scalar> const& RVL::CompLOVOp< Scalar >::getProductDomain (  )  const [virtual]

Implements RVL::OperatorProductDomain< Scalar >.

Definition at line 1334 of file op.hh.

template<class Scalar>
Space<Scalar> const& RVL::CompLOVOp< Scalar >::getRange (  )  const [virtual]

Implements RVL::Operator< Scalar >.

Definition at line 1335 of file op.hh.

template<class Scalar>
ostream& RVL::CompLOVOp< Scalar >::write ( ostream &  str  )  const [virtual]

Implements RVL::Writeable.

Definition at line 1337 of file op.hh.


The documentation for this class was generated from the following file:
Generated on 5 Jan 2017 for RVL by  doxygen 1.4.7