1.8.0
CCC
 
Loading...
Searching...
No Matches
gstlrn::HessianOp Class Reference

#include <HessianOp.hpp>

Inheritance diagram for gstlrn::HessianOp:
gstlrn::ALinearOpEigenCG< HessianOp > gstlrn::ALinearOp

Public Member Functions

 HessianOp ()
 
virtual ~HessianOp ()
 
Id init (PrecisionOp *pmat, const ProjMatrix *projdata, const ProjMatrix *projseis, const 1 &indic, const 1 &propseis, const 1 &varseis)
 
Id getSize () const override
 Return the size of the operator.
 
void setLambda (const 1 &lambda)
 
- Public Member Functions inherited from gstlrn::ALinearOpEigenCG< HessianOp >
virtual ~ALinearOpEigenCG ()
 
Eigen::Index rows () const
 
Eigen::Index cols () const
 
Eigen::Product< HessianOp, Rhs, Eigen::AliasFreeProduct > operator* (const Eigen::MatrixBase< Rhs > &x) const
 
- Public Member Functions inherited from gstlrn::ALinearOp
 ALinearOp ()
 
 ALinearOp (const ALinearOp &m)=delete
 
ALinearOpoperator= (const ALinearOp &m)=delete
 
virtual ~ALinearOp ()
 
Id evalDirect (const 1 &inv, 1 &outv) const
 
 evalDirect (const 1 &in) const
 
virtual void multiplyByValueAndAddDiagonal (double v1=1., double v2=0.) const
 
virtual void resetModif () const
 
void setUseFactor (bool usefactor)
 
Id evalDirect (constvect inv, vect outv) const
 
Id addToDest (const constvect inv, vect outv) const
 
Id addToDest (const ::Eigen::VectorXd &inv, ::Eigen::VectorXd &outv) const
 

Additional Inherited Members

- Public Types inherited from gstlrn::ALinearOpEigenCG< HessianOp >
enum  
 
typedef double Scalar
 
typedef double RealScalar
 
typedef Id StorageIndex
 

Constructor & Destructor Documentation

◆ HessianOp()

HessianOp::HessianOp ( )

◆ ~HessianOp()

HessianOp::~HessianOp ( )
virtual

Member Function Documentation

◆ getSize()

Id HessianOp::getSize ( ) const
overridevirtual

Return the size of the operator.

Returns the dimension of the matrix

Returns
Id

Implements gstlrn::ALinearOp.

◆ init()

Id HessianOp::init ( PrecisionOp pmat,
const ProjMatrix projdata,
const ProjMatrix projseis,
const 1 &  indic,
const 1 &  propseis,
const 1 &  varseis 
)

Initialize the Hessian Operator

Parameters
[in]pmatThe precision matrix to be optimized
[in]projdataThe Projection operator between Data and Meshing
[in]projseisThe Projection operator between Seismic and Meshing
[in]indicArray of facies values
[in]propseisArray of facies proportions
[in]varseisArray of variance attached to the seismic

◆ setLambda()

void gstlrn::HessianOp::setLambda ( const 1 &  lambda)
inline

Set the initial vector


The documentation for this class was generated from the following files: