HCL_BiLinearOpAdj_d is the base class for bilinear operators which can compute various adjoint operators
![]() | Image ( const HCL_Vector_d & x, const HCL_Vector_d & y, HCL_Vector_d & z ) Image computes the action of the operator on the pair (x,y), giving z. |
![]() | Op1 ( const HCL_Vector_d & x ) Op1 creates the linear operator B(x,.) |
![]() | Op1Adj ( const HCL_Vector_d & x ) Access to Op1 as a linear operator with adjoint. |
![]() | Op2 ( const HCL_Vector_d & y ) Op2 creates the linear operator B(.,y) |
![]() | Op2Adj ( const HCL_Vector_d & y ) Access to Op2 as a linear operator with adjoint. |
![]() | Op3Adj ( const HCL_Vector_d & z ) Access to the "partial adjoint" of the bilinear operator |
![]() | Write ( ostream & str ) Debugging information |
HCL_BiLinearOpAdj_d is the base class for bilinear operators which can compute various adjoint operators. Given a bilinear operator B:X x Y --> Z, we can define the following three linear operators:A HCL_BiLinearOpAdj_d represents a bilinear operator which can compute these three operators, each as a HCL_LinearOpAdj_d.
- Op1 y |--> B(x,y) (x fixed);
- Op2 x |--> B(x,y) (y fixed);
- Op3 x |--> B(x,.)'z (z fixed).
The primary class methods are:
- Domain1 Returns a reference to the domain of the first argument of the operator.
- Domain2 Returns a reference to the domain of the second argument of the operator.
- Range Returns a reference to the range of the operator.
- Image Computes the action of the operator on a pair of vectors:
B.Image( x,y,z ); // z <-- B(x,y)- Op1 Creates the operator B(x,.). Note that this operator maps Y into Z.
- Op2 Creates the operator B(.,y). Note that this operator maps X into Z.
- Op1Adj, Op2Adj The methods create the same operators as do Op1, Op2, but they are returned as HCL_LinearOpAdj_d's.
- Op3Adj Creates the operator x |--> B(x,.)'z as a linear operator with adjoint. Note that this operator maps X into Y.
virtual HCL_LinearOp_d* Op1( const HCL_Vector_d & x )
virtual HCL_LinearOp_d* Op2( const HCL_Vector_d & y )
virtual HCL_LinearOpAdj_d* Op1Adj( const HCL_Vector_d & x )
virtual HCL_LinearOpAdj_d* Op2Adj( const HCL_Vector_d & y )
virtual HCL_LinearOpAdj_d* Op3Adj( const HCL_Vector_d & z )
virtual ostream& Write( ostream & str )
this page has been generated automatically by doc++
(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de