Geophysical Inversion and Modelling Library  v1.5.0
GIMLI::LinearModelling Class Reference
+ Inheritance diagram for GIMLI::LinearModelling:
+ Collaboration diagram for GIMLI::LinearModelling:

Public Member Functions

 LinearModelling (Mesh &mesh, MatrixBase &A, bool verbose=false)
 
 LinearModelling (Mesh &mesh, MatrixBase *A, bool verbose=false)
 
 LinearModelling (MatrixBase &A, bool verbose=false)
 
RVector response (const RVector &model)
 
virtual void createJacobian (const RVector &model)
 
RVector createDefaultStartModel ()
 
- Public Member Functions inherited from GIMLI::ModellingBase
 ModellingBase (bool verbose=false)
 
 ModellingBase (DataContainer &dataContainer, bool verbose=false)
 
 ModellingBase (const Mesh &mesh, bool verbose=false)
 
 ModellingBase (const Mesh &mesh, DataContainer &dataContainer, bool verbose=false)
 
void setVerbose (bool verbose)
 
bool verbose () const
 
virtual RVector response_mt (const RVector &model, Index i=0) const
 
RVector operator() (const RVector &model)
 
void setData (DataContainer &data)
 
DataContainerdata () const
 
virtual RVector startModel ()
 
virtual void setStartModel (const RVector &startModel)
 
void setMesh (const Mesh &mesh, bool ignoreRegionManager=false)
 
Meshmesh ()
 
void createRefinedForwardMesh (bool refine=true, bool pRefine=false)
 
void deleteMesh ()
 
virtual void setJacobian (MatrixBase *J)
 
virtual void createJacobian (const RVector &model, const RVector &resp)
 
virtual void createJacobian_mt (const RVector &model, const RVector &resp)
 
virtual void initJacobian ()
 
MatrixBasejacobian ()
 
MatrixBasejacobian () const
 
virtual RMatrixjacobianRef () const
 
virtual RMatrixjacobianRef ()
 
virtual void clearJacobian ()
 
RVector createMappedModel (const RVector &model, double background=-9e99) const
 
void setRegionManager (RegionManager *reg)
 
const RegionManagerregionManager () const
 
RegionManagerregionManager ()
 
RegionManagerregionManagerRef ()
 
bool verbose ()
 
Regionregion (int marker)
 
RVector createStartModel ()
 
RVector createStartVector ()
 
void initRegionManager ()
 
void setThreadCount (Index nThreads)
 
Index threadCount ()
 
void setMultiThreadJacobian (Index nThreads)
 
Index multiThreadJacobian () const
 

Additional Inherited Members

- Protected Member Functions inherited from GIMLI::ModellingBase
virtual void init_ ()
 
virtual void deleteMeshDependency_ ()
 
virtual void updateMeshDependency_ ()
 
virtual void updateDataDependency_ ()
 
void setMesh_ (const Mesh &mesh, bool update=true)
 
- Protected Attributes inherited from GIMLI::ModellingBase
Meshmesh_
 
DataContainerdataContainer_
 
MatrixBasejacobian_
 
bool ownJacobian_
 
MatrixBaseconstraints_
 
bool ownConstraints_
 
RMatrix solutions_
 
RVector startModel_
 
bool verbose_
 
bool regionManagerInUse_
 
bool ownRegionManager_
 
Index nThreads_
 
Index nThreadsJacobian_
 

Detailed Description

Linear modelling class (multiplication by a matrix). Calculate response from derivative matrix (Jacobian,Sensitivity) * model

Member Function Documentation

◆ createDefaultStartModel()

RVector GIMLI::LinearModelling::createDefaultStartModel ( )
virtual

Interface to define custom start model generators.

Reimplemented from GIMLI::ModellingBase.

References GIMLI::MatrixBase::cols().

◆ createJacobian()

void GIMLI::LinearModelling::createJacobian ( const RVector model)
virtual

Create and fill the Jacobian matrix with a given model vector.

Reimplemented from GIMLI::ModellingBase.

◆ response()

RVector GIMLI::LinearModelling::response ( const RVector model)
virtual

Calculate

Reimplemented from GIMLI::ModellingBase.

References GIMLI::MatrixBase::cols().