HCL_OpDefaultPartialDeriv_d is a linear operator class implementing a partial derivative of a nonlinear operator
![]() | HCL_OpDefaultPartialDeriv_d ( int i, const HCL_EvalOpProductDomain_d * ev ) Usual constructor; just need an operator's evaluation object and an integer indicating which partial derivative is desired |
![]() | Domain () const Domain space access |
![]() | Range () const Range space access |
![]() | Image ( const HCL_Vector_d & x, HCL_Vector_d & y ) const Image compute the action of the operator on x, giving y. |
![]() | AdjImage ( const HCL_Vector_d & y, HCL_Vector_d & x ) const AdjImage computes the action of the adjoint on y, giving x. |
![]() | InvImage (const HCL_Vector_d & y, HCL_Vector_d & x) const InvImage computes the action of the inverse on y, giving x. |
![]() | InvAdjImage (const HCL_Vector_d & x, HCL_Vector_d & y) const InvAdjImage computes the action of the inverse adjoint on x, giving y |
![]() | Write ( ostream & str ) const Write prints a description of the object |
HCL_OpDefaultPartialDeriv_d is a linear operator class implementing a partial derivative of a nonlinear operator. It exists to relieve the implementor of an operator class from the necessity of creating a distinct class to represent the derivative if there is no (efficiency) advantage gained by creating such a class. In order to use this default derivative class, the implementor of the operator class must implement the protected virtual functions PartialDerivImage, PartialDerivAdjImage, etc.The various mechanisms for implementing operator classes are explained in detail, with concrete examples, in the report
"Implementing operators in HCL", Technical Report 99-22, Department of Computational and Applied Mathematics, Rice University, Houston, TX 77251-1892.
A forthcoming report, "Implementing HCL functionals and operators on product spaces", will provide similar details about implementing operators on product spaces. This report should be available from the same source in early 2000.
virtual HCL_VectorSpace_d& Domain() const
virtual HCL_VectorSpace_d& Range() const
virtual void Image( const HCL_Vector_d & x, HCL_Vector_d & y ) const
virtual void AdjImage( const HCL_Vector_d & y, HCL_Vector_d & x ) const
virtual void InvImage(const HCL_Vector_d & y, HCL_Vector_d & x) const
virtual void InvAdjImage(const HCL_Vector_d & x, HCL_Vector_d & y) const
virtual ostream& Write( ostream & str ) const
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