RVL::ColumnLinearOp< Scalar > Class Template Reference

Linear Operator defined with product range. More...

#include <blockop.hh>

Inheritance diagram for RVL::ColumnLinearOp< Scalar >:

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

Public Member Functions

 ColumnLinearOp ()
 ColumnLinearOp (const ColumnLinearOp< Scalar > &)
virtual ~ColumnLinearOp ()
virtual const ProductSpace<
Scalar > & 
getProductRange () const =0
 access to range as ProductSpace
const Space< Scalar > & getRange () const
 access to range as Space - delegates to getProductRange

Protected Member Functions

virtual void applyComponent (int i, const Vector< Scalar > &x, Vector< Scalar > &yi) const =0
virtual void apply (Vector< Scalar > const &x, Vector< Scalar > &y) const
virtual void applyComponentAdj (int i, const Vector< Scalar > &yi, Vector< Scalar > &x) const =0
 $x_j = F_i^*y_i$, where $x_j \in X_j$
virtual void applyAdj (const Vector< Scalar > &x, Vector< Scalar > &y) const
 applyAdj() is implemented in terms of applyComponentAdj().
virtual ColumnLinearOp< Scalar > * cloneColumnLinearOp () const =0
 Primary clone method returns object of this type; parent clone method delegates.
LinearOp< Scalar > * clone () const

Friends

class OperatorEvaluation< Scalar >

Detailed Description

template<class Scalar>
class RVL::ColumnLinearOp< Scalar >

Linear Operator defined with product range.

Y.H. at Oct 22, 2014 Renamed - WWS 03.03.15

Definition at line 734 of file blockop.hh.


Constructor & Destructor Documentation

template<class Scalar>
RVL::ColumnLinearOp< Scalar >::ColumnLinearOp (  ) 

Definition at line 792 of file blockop.hh.

template<class Scalar>
RVL::ColumnLinearOp< Scalar >::ColumnLinearOp ( const ColumnLinearOp< Scalar > &   ) 

Definition at line 793 of file blockop.hh.

template<class Scalar>
virtual RVL::ColumnLinearOp< Scalar >::~ColumnLinearOp (  )  [virtual]

Definition at line 794 of file blockop.hh.


Member Function Documentation

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

Implemented in RVL::TensorLinearOp< Scalar >.

Referenced by RVL::ColumnLinearOp< Scalar >::apply().

template<class Scalar>
virtual void RVL::ColumnLinearOp< Scalar >::apply ( Vector< Scalar > const &  x,
Vector< Scalar > &  y 
) const [protected, virtual]

Implements RVL::Operator< Scalar >.

Definition at line 744 of file blockop.hh.

References RVL::ColumnLinearOp< Scalar >::applyComponent().

template<class Scalar>
virtual void RVL::ColumnLinearOp< Scalar >::applyComponentAdj ( int  i,
const Vector< Scalar > &  yi,
Vector< Scalar > &  x 
) const [protected, pure virtual]

$x_j = F_i^*y_i$, where $x_j \in X_j$

Implemented in RVL::TensorLinearOp< Scalar >.

Referenced by RVL::ColumnLinearOp< Scalar >::applyAdj().

template<class Scalar>
virtual void RVL::ColumnLinearOp< Scalar >::applyAdj ( const Vector< Scalar > &  x,
Vector< Scalar > &  y 
) const [protected, virtual]

applyAdj() is implemented in terms of applyComponentAdj().

Default implementation supplied, which may be overridden.

Implements RVL::LinearOp< Scalar >.

Definition at line 766 of file blockop.hh.

References RVL::ColumnLinearOp< Scalar >::applyComponentAdj(), RVL::Components< Scalar >::getSize(), and RVL::Vector< Scalar >::linComb().

template<class Scalar>
virtual ColumnLinearOp<Scalar>* RVL::ColumnLinearOp< Scalar >::cloneColumnLinearOp (  )  const [protected, pure virtual]

Primary clone method returns object of this type; parent clone method delegates.

Implemented in RVL::TensorLinearOp< Scalar >.

Referenced by RVL::ColumnLinearOp< Scalar >::clone().

template<class Scalar>
LinearOp<Scalar>* RVL::ColumnLinearOp< Scalar >::clone (  )  const [protected, virtual]

Implements RVL::Operator< Scalar >.

Definition at line 788 of file blockop.hh.

References RVL::ColumnLinearOp< Scalar >::cloneColumnLinearOp().

template<class Scalar>
virtual const ProductSpace<Scalar>& RVL::ColumnLinearOp< Scalar >::getProductRange (  )  const [pure virtual]

access to range as ProductSpace

Implemented in RVL::TensorLinearOp< Scalar >.

Referenced by RVL::ColumnLinearOp< Scalar >::getRange().

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

access to range as Space - delegates to getProductRange

Implements RVL::Operator< Scalar >.

Definition at line 799 of file blockop.hh.

References RVL::ColumnLinearOp< Scalar >::getProductRange().


Friends And Related Function Documentation

template<class Scalar>
friend class OperatorEvaluation< Scalar > [friend]

Reimplemented from RVL::Operator< Scalar >.

Definition at line 736 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