Geophysical Inversion and Modelling Library  jenkins-pyGIMLi_release-295-SUCCESS-1-geb9a2204
GIMLI::MRS1dBlockModelling Class Reference
+ Inheritance diagram for GIMLI::MRS1dBlockModelling:
+ Collaboration diagram for GIMLI::MRS1dBlockModelling:

Public Member Functions

 MRS1dBlockModelling (Mesh &mesh, RMatrix &KR, RMatrix &KI, RVector &zvec, bool verbose=false)
 MRS1dBlockModelling (int nlay, RMatrix &KR, RMatrix &KI, RVector &zvec, bool verbose=false)
RVector response (const RVector &model)
void createJacobian (const RVector &model)
- Public Member Functions inherited from GIMLI::MRSModelling
 MRSModelling (Mesh &mesh, RMatrix &KR, RMatrix &KI, bool verbose=false)
 constructor using a predefined mesh and real/imag matrix
 MRSModelling (RMatrix &KR, RMatrix &KI, bool verbose=false)
 constructor with real/imag matrix only
virtual ~MRSModelling ()
- 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 createDefaultStartModel ()
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 ()
virtual void setConstraints (MatrixBase *C)
virtual void clearConstraints ()
virtual void initConstraints ()
virtual void createConstraints ()
virtual MatrixBaseconstraints ()
virtual MatrixBaseconstraints () const
virtual RSparseMapMatrixconstraintsRef () const
virtual RSparseMapMatrixconstraintsRef ()
const RMatrixsolution () const
void mapModel (const RVector &model, double background=0)
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

Protected Attributes

size_t nlay_
size_t nvec_
RVector zvec_
- Protected Attributes inherited from GIMLI::MRSModelling
- Protected Attributes inherited from GIMLI::ModellingBase
bool ownJacobian_
bool ownConstraints_
RMatrix solutions_
RVector startModel_
bool verbose_
bool regionManagerInUse_
bool ownRegionManager_
Index nThreads_
Index nThreadsJacobian_

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)

Detailed Description

Magnetic Resonance Sounding (MRS) modelling non-classical variant using a block model using mapping to classical varian MRS1dBlockModelling(int nlay, RMatrix KR, KI, RVector zvec [, verbose])

Constructor & Destructor Documentation

◆ MRS1dBlockModelling() [1/2]

GIMLI::MRS1dBlockModelling::MRS1dBlockModelling ( Mesh mesh,
RMatrix KR,
RMatrix KI,
RVector zvec,
bool  verbose = false 

constructor using mesh, real/imag matrix and zvector

◆ MRS1dBlockModelling() [2/2]

GIMLI::MRS1dBlockModelling::MRS1dBlockModelling ( int  nlay,
RMatrix KR,
RMatrix KI,
RVector zvec,
bool  verbose = false 

constructor using real/imag matrix and zvector

References GIMLI::createMesh1DBlock().

Member Function Documentation

◆ createJacobian()

void GIMLI::MRS1dBlockModelling::createJacobian ( const RVector model)

use default (brute-force) jacobian generator (override the smooth one)

Reimplemented from GIMLI::MRSModelling.

References GIMLI::ModellingBase::createJacobian().

◆ response()

RVector GIMLI::MRS1dBlockModelling::response ( const RVector model)

return voltage for a given block model vector

extract water content and thickness from model vector

fill vector of original size wit last layer water content

run through layers and fill water content

call original forward response and return;

Reimplemented from GIMLI::MRSModelling.

References GIMLI::MRSModelling::response().