Geophysical Inversion and Modelling Library  v1.3.1-2-g7599abf9
GIMLI::TTModellingWithOffset Class Reference
+ Inheritance diagram for GIMLI::TTModellingWithOffset:
+ Collaboration diagram for GIMLI::TTModellingWithOffset:

Public Member Functions

 TTModellingWithOffset (Mesh &mesh, DataContainer &dataContainer, bool verbose)
virtual RVector createDefaultStartModel ()
virtual RVector response (const RVector &model)
void initJacobian ()
virtual void createJacobian (const RVector &slowness)
size_t nShots ()
- Public Member Functions inherited from GIMLI::TravelTimeDijkstraModelling
 TravelTimeDijkstraModelling (bool verbose=false)
 TravelTimeDijkstraModelling (Mesh &mesh, DataContainer &dataContainer, bool verbose=false)
RVector createGradientModel (double lBound, double uBound)
Graph createGraph (const RVector &slownessPerCell) const
double findMedianSlowness () const
RVector getApparentSlowness () const
void createJacobian (RSparseMapMatrix &jacobian, const RVector &slowness)
const IndexArrayway (Index sht, Index rec) const
const Dijkstradijkstra () const
- 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)
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

Protected Attributes

RVector shots_
std::map< Index, Index > shotMap_
Mesh offsetMesh_
- Protected Attributes inherited from GIMLI::TravelTimeDijkstraModelling
Dijkstra dijkstra_
double background_
IndexArray shotNodeId_
std::map< Index, Index > shotsInv_
IndexArray receNodeId_
std::map< Index, Index > receiInv_
std::vector< std::vector< IndexArray > > wayMatrix_
- 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::TravelTimeDijkstraModelling
virtual void updateMeshDependency_ ()
- Protected Member Functions inherited from GIMLI::ModellingBase
virtual void init_ ()
virtual void deleteMeshDependency_ ()
virtual void updateDataDependency_ ()
void setMesh_ (const Mesh &mesh, bool update=true)

Detailed Description

New Class derived from standard travel time modelling

Constructor & Destructor Documentation

◆ TTModellingWithOffset()

GIMLI::TTModellingWithOffset::TTModellingWithOffset ( Mesh mesh,
DataContainer dataContainer,
bool  verbose 

find occuring shots, and map them to indices starting from zero

create new region containing offsets with special marker

References GIMLI::RegionManager::addRegion(), GIMLI::createMesh1D(), GIMLI::DataContainer::get(), initJacobian(), and GIMLI::unique().

Member Function Documentation

◆ createDefaultStartModel()

RVector GIMLI::TTModellingWithOffset::createDefaultStartModel ( )

Interface to define custom start model generators.

Reimplemented from GIMLI::TravelTimeDijkstraModelling.

References GIMLI::TravelTimeDijkstraModelling::createDefaultStartModel().

◆ createJacobian()

void GIMLI::TTModellingWithOffset::createJacobian ( const RVector slowness)


extract slowness from model and call old function

set 1 entries for the used shot

Reimplemented from GIMLI::TravelTimeDijkstraModelling.

References GIMLI::TravelTimeDijkstraModelling::createJacobian(), GIMLI::DataContainer::get(), GIMLI::ModellingBase::jacobian(), and GIMLI::DataContainer::size().

◆ initJacobian()

void GIMLI::TTModellingWithOffset::initJacobian ( )


Reimplemented from GIMLI::TravelTimeDijkstraModelling.

Referenced by TTModellingWithOffset().

◆ response()

RVector GIMLI::TTModellingWithOffset::response ( const RVector slowness)

Interface. Calculate response

extract slowness from model and call old function

normal response

Reimplemented from GIMLI::TravelTimeDijkstraModelling.

References GIMLI::DataContainer::get(), and GIMLI::TravelTimeDijkstraModelling::response().