RVL::TensorOp< Scalar > Class Template Reference

Explicit BlockOp construction for two range components. More...

#include <blockop.hh>

Inheritance diagram for RVL::TensorOp< Scalar >:

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

Public Member Functions

 TensorOp (Operator< Scalar > const &_op1, Operator< Scalar > const &_op2)
 TensorOp (TensorOp< Scalar > const &op)
 ~TensorOp ()
Space< Scalar > const & getDomain () const
ProductSpace< Scalar > const & getProductRange () const
ostream & write (ostream &str) const

Protected Member Functions

void applyComponent (int i, const Vector< Scalar > &x, Vector< Scalar > &yi) const
void applyComponentDeriv (int i, const Vector< Scalar > &x, const Vector< Scalar > &dx, Vector< Scalar > &dyi) const
void applyComponentAdjDeriv (int i, const Vector< Scalar > &x, const Vector< Scalar > &dyi, Vector< Scalar > &dx) const
void applyComponentDeriv2 (int i, const Vector< Scalar > &x, const Vector< Scalar > &dx0, const Vector< Scalar > &dx1, Vector< Scalar > &dyi) const
void applyComponentAdjDeriv2 (int i, const Vector< Scalar > &x, const Vector< Scalar > &dx0, const Vector< Scalar > &dyi, Vector< Scalar > &dx1) const
TensorOp< Scalar > * cloneTensorOp () const
BlockOperator< Scalar > * cloneBlockOp () const

Detailed Description

template<typename Scalar>
class RVL::TensorOp< Scalar >

Explicit BlockOp construction for two range components.

Definition at line 202 of file blockop.hh.


Constructor & Destructor Documentation

template<typename Scalar>
RVL::TensorOp< Scalar >::TensorOp ( Operator< Scalar > const &  _op1,
Operator< Scalar > const &  _op2 
)

Definition at line 320 of file blockop.hh.

template<typename Scalar>
RVL::TensorOp< Scalar >::TensorOp ( TensorOp< Scalar > const &  op  ) 

Definition at line 337 of file blockop.hh.

template<typename Scalar>
RVL::TensorOp< Scalar >::~TensorOp (  ) 

Definition at line 340 of file blockop.hh.


Member Function Documentation

template<typename Scalar>
void RVL::TensorOp< Scalar >::applyComponent ( int  i,
const Vector< Scalar > &  x,
Vector< Scalar > &  yi 
) const [protected, virtual]

Implements RVL::BlockOperator< Scalar >.

Definition at line 214 of file blockop.hh.

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

template<typename Scalar>
void RVL::TensorOp< Scalar >::applyComponentDeriv ( int  i,
const Vector< Scalar > &  x,
const Vector< Scalar > &  dx,
Vector< Scalar > &  dyi 
) const [protected, virtual]

Implements RVL::BlockOperator< Scalar >.

Definition at line 233 of file blockop.hh.

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

template<typename Scalar>
void RVL::TensorOp< Scalar >::applyComponentAdjDeriv ( int  i,
const Vector< Scalar > &  x,
const Vector< Scalar > &  dyi,
Vector< Scalar > &  dx 
) const [protected, virtual]

Implements RVL::BlockOperator< Scalar >.

Definition at line 253 of file blockop.hh.

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

template<typename Scalar>
void RVL::TensorOp< Scalar >::applyComponentDeriv2 ( int  i,
const Vector< Scalar > &  x,
const Vector< Scalar > &  dx0,
const Vector< Scalar > &  dx1,
Vector< Scalar > &  dyi 
) const [protected, virtual]

Implements RVL::BlockOperator< Scalar >.

Definition at line 273 of file blockop.hh.

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

template<typename Scalar>
void RVL::TensorOp< Scalar >::applyComponentAdjDeriv2 ( int  i,
const Vector< Scalar > &  x,
const Vector< Scalar > &  dx0,
const Vector< Scalar > &  dyi,
Vector< Scalar > &  dx1 
) const [protected, virtual]

Implements RVL::BlockOperator< Scalar >.

Definition at line 294 of file blockop.hh.

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

template<typename Scalar>
TensorOp<Scalar>* RVL::TensorOp< Scalar >::cloneTensorOp (  )  const [protected]

Definition at line 315 of file blockop.hh.

Referenced by RVL::TensorOp< Scalar >::cloneBlockOp().

template<typename Scalar>
BlockOperator<Scalar>* RVL::TensorOp< Scalar >::cloneBlockOp (  )  const [protected, virtual]

Implements RVL::BlockOperator< Scalar >.

Definition at line 316 of file blockop.hh.

References RVL::TensorOp< Scalar >::cloneTensorOp().

template<typename Scalar>
Space<Scalar> const& RVL::TensorOp< Scalar >::getDomain (  )  const [virtual]

Implements RVL::Operator< Scalar >.

Definition at line 342 of file blockop.hh.

template<typename Scalar>
ProductSpace<Scalar> const& RVL::TensorOp< Scalar >::getProductRange (  )  const [virtual]

Implements RVL::BlockOperator< Scalar >.

Definition at line 343 of file blockop.hh.

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

Implements RVL::Writeable.

Definition at line 345 of file blockop.hh.


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