class HCL_BlockLinearOpAdj_d : public HCL_LinearOpAdj_d

HCL_BlockLinearOpAdj_d implements an array of linear operators (with adjoints) acting on a product vector space

Inheritance:


Public Methods

int Cols ()
Cols returns the number of columns in the array.
virtual HCL_VectorSpace_d& Domain ()
Domain space access.
HCL_BlockLinearOpAdj_d ( int r, int c )
Alternate constructor; only the arrangement of blocks (i
HCL_BlockLinearOpAdj_d ( HCL_LinearOpAdj_d * A, HCL_LinearOpAdj_d * B, HCL_LinearOpAdj_d * C, HCL_LinearOpAdj_d * D )
Provided for convenience in the special case of a 2x2 operator
HCL_BlockLinearOpAdj_d ( HCL_ProductVectorSpace_d * d, HCL_VectorSpace_d * r )
Special constructor for the case of a ``row'' operator
HCL_BlockLinearOpAdj_d ( HCL_VectorSpace_d * d, HCL_ProductVectorSpace_d * r )
Special constructor for the case of a ``column'' operator
HCL_BlockLinearOpAdj_d ( HCL_ProductVectorSpace_d * d, HCL_ProductVectorSpace_d * r )
Usual constructor; needs the domain and range spaces
int Initialized ()
Initialized is a boolean method indicating whether the blocks in the operator have been initialized
int IsSet ( int i, int j )
IsSet is a boolean indicated whether the (i,j) block has been initialized
HCL_LinearOpAdj_d& operator) ( int i, int j )
The () operator provides access to the individual operators.
virtual HCL_VectorSpace_d& Range ()
Range space access.
int Rows ()
Rows returns the number of rows in the array.
void Set ( int i, int j, HCL_LinearOpAdj_d * L )
Set sets the (i,j) block to L
void SetNext ( HCL_LinearOpAdj_d * L )
SetNext sets the next operator (by rows) to L
virtual ~HCL_BlockLinearOpAdj_d ()
Destructor.

Public

I/O
virtual ostream& Write ( ostream & str )
Write prints out the operators on the diagonal.
Image methods
virtual void Image ( const HCL_Vector_d & x, HCL_Vector_d & y )
Image computes the action of the operator on x, giving y.
virtual void AdjImage ( const HCL_Vector_d & x, HCL_Vector_d & y )
AdjImage computes the action of the adjoint on y, giving x.

Inherited from HCL_LinearOpAdj_d:

Public Methods

virtual void AdjImage( const HCL_Vector_d & y, HCL_Vector_d & x )
virtual void Image( const HCL_Vector_d & x, HCL_Vector_d & y )
int TestAdj(int Display = 1, double tol = 1000 )
virtual ostream& Write( ostream & str )

Inherited from HCL_LinearOp_d:


Inherited from HCL_Base:

Public Methods

int Count()
void DecCount()
void IncCount()

Private Fields

int ReferenceCount

Documentation

HCL_BlockLinearOpAdj_d implements an array of linear operators (with adjoints) acting on a product vector space. For example, if the array is 2x2, the operator is of the form $(x,y) \mapsto (Ax+By,Cx+Dy)$.
HCL_BlockLinearOpAdj_d( HCL_ProductVectorSpace_d * d, HCL_ProductVectorSpace_d * r )
Usual constructor; needs the domain and range spaces. The operators are defined with the SetNext method.

HCL_BlockLinearOpAdj_d( int r, int c )
Alternate constructor; only the arrangement of blocks (i.e. number of rows and columns) must be specified. The operators are defined with the Set method.

HCL_BlockLinearOpAdj_d( HCL_LinearOpAdj_d * A, HCL_LinearOpAdj_d * B, HCL_LinearOpAdj_d * C, HCL_LinearOpAdj_d * D )
Provided for convenience in the special case of a 2x2 operator

HCL_BlockLinearOpAdj_d( HCL_ProductVectorSpace_d * d, HCL_VectorSpace_d * r )
Special constructor for the case of a ``row'' operator

HCL_BlockLinearOpAdj_d( HCL_VectorSpace_d * d, HCL_ProductVectorSpace_d * r )
Special constructor for the case of a ``column'' operator

virtual ~HCL_BlockLinearOpAdj_d()
Destructor.

int Initialized()
Initialized is a boolean method indicating whether the blocks in the operator have been initialized

int IsSet( int i, int j )
IsSet is a boolean indicated whether the (i,j) block has been initialized

virtual HCL_VectorSpace_d& Domain()
Domain space access.

virtual HCL_VectorSpace_d& Range()
Range space access.

HCL_LinearOpAdj_d& operator)( int i, int j )
The () operator provides access to the individual operators.

int Rows()
Rows returns the number of rows in the array.

int Cols()
Cols returns the number of columns in the array.

Image methods

virtual void Image( const HCL_Vector_d & x, HCL_Vector_d & y )
Image computes the action of the operator on x, giving y.

virtual void AdjImage( const HCL_Vector_d & x, HCL_Vector_d & y )
AdjImage computes the action of the adjoint on y, giving x.

void SetNext( HCL_LinearOpAdj_d * L )
SetNext sets the next operator (by rows) to L

void Set( int i, int j, HCL_LinearOpAdj_d * L )
Set sets the (i,j) block to L

I/O

virtual ostream& Write( ostream & str )
Write prints out the operators on the diagonal.


This class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de