OpendTect  6.6
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
RayTracer1D Class Referenceabstract

Ray tracer in 1D. More...

Inheritance diagram for RayTracer1D:
[legend]

Classes

class  Setup
 

Public Member Functions

 ~RayTracer1D ()
 
uiString errMsg () const
 
virtual void fillPar (IOPar &) const
 
float getDepth (int layer) const
 
const ElasticModelgetModel () const
 
void getOffsets (TypeSet< float > &offsets) const
 
bool getReflectivity (int offset, ReflectivityModel &) const
 
float getSinAngle (int layeridx, int offsetidx) const
 
bool getTDModel (int offset, TimeDepthModel &) const
 
float getTime (int layer, int offset) const
 
bool getZeroOffsTDModel (TimeDepthModel &) const
 
virtual bool hasSameParams (const RayTracer1D &) const
 
bool isPSWithoutZeroOffset () const
 
bool setModel (const ElasticModel &)
 
void setOffsets (const TypeSet< float > &offsets)
 
virtual const RayTracer1D::Setupsetup () const =0
 
virtual RayTracer1D::Setupsetup ()=0
 
virtual bool usePar (const IOPar &)
 
- Public Member Functions inherited from ParallelTask
virtual ~ParallelTask ()
 
bool execute ()
 
virtual bool executeParallel (bool parallel)
 
int64_t nrDone () const
 May be -1, i.e. class does not report nrdone. More...
 
void setProgressMeter (ProgressMeter *)
 Must be called before execute() More...
 
int64_t totalNr () const
 
- Public Member Functions inherited from Task
virtual ~Task ()
 
virtual void controlWork (Control)
 
virtual void enableWorkControl (bool=true)
 Must be called before execute() More...
 
virtual uiRetVal errorWithDetails () const
 
virtual Control getState () const
 
virtual uiString uiMessage () const
 will be message() again in 7.x More...
 
virtual uiString uiNrDoneText () const
 will be nrDoneText() in 7.x More...
 
bool workControlEnabled () const
 
- Public Member Functions inherited from NamedCallBacker
 NamedCallBacker (const char *nm=0)
 
 NamedCallBacker (const NamedCallBacker &)
 
virtual Notifier< NamedCallBacker > & objectToBeDeleted () const
 
bool operator== (const NamedCallBacker &oth) const
 
bool operator== (const NamedObject &oth) const
 
- Public Member Functions inherited from CallBacker
 CallBacker ()
 
 CallBacker (const CallBacker &)
 
virtual ~CallBacker ()
 
bool attachCB (const NotifierAccess &, const CallBack &, bool onlyifnew=false) const
 
bool attachCB (const NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) const
 
void detachAllNotifiers () const
 Call from the destructor of your inherited object. More...
 
void detachCB (const NotifierAccess &, const CallBack &) const
 
void detachCB (const NotifierAccess *notif, const CallBack &cb) const
 
virtual bool isCapsule () const
 
bool isNotifierAttached (const NotifierAccess *) const
 Only for debugging purposes, don't use. More...
 
void stopReceivingNotifications () const
 
- Public Member Functions inherited from NamedObject
 NamedObject (const char *nm=nullptr)
 
 NamedObject (const NamedObject &oth)
 
virtual ~NamedObject ()
 
virtual BufferString getName () const
 
bool getNameFromPar (const IOPar &)
 
virtual const name_typename () const
 
NamedObjectoperator= (const NamedObject &)
 
bool operator== (const NamedObject &oth) const
 
virtual void setName (const char *nm)
 
- Public Member Functions inherited from ObjectWithName
virtual ~ObjectWithName ()
 
bool hasName (const char *nm) const
 
bool hasName (const name_type &nm) const
 
void putNameInPar (IOPar &) const
 

Static Public Member Functions

static float cDefaultBlockRatio ()
 
static RayTracer1DcreateInstance (const IOPar &, uiString &)
 
static StepInterval< float > sDefOffsetRange ()
 
static void setIOParsToZeroOffset (IOPar &iop)
 
static const char * sKeyBlock ()
 
static const char * sKeyBlockRatio ()
 
static const char * sKeyOffset ()
 
static const char * sKeyOffsetInFeet ()
 
static const char * sKeyPWave ()
 
static const char * sKeyReflectivity ()
 
- Static Public Member Functions inherited from ParallelTask
static uiString sPosFinished ()
 
static uiString sTrcFinished ()
 
- Static Public Member Functions inherited from Task
static uiString stdNrDoneText ()
 
static uiString uiStdNrDoneText ()
 
- Static Public Member Functions inherited from CallBacker
static void createReceiverForCurrentThread ()
 
static void removeReceiverForCurrentThread ()
 

Protected Member Functions

 RayTracer1D ()
 
virtual bool compute (int, int, float)
 
virtual bool doPrepare (int)
 
bool getTDM (const Array1D< float > &, TimeDepthModel &) const
 
od_int64 nrIterations () const
 
void setZeroOffsetTWT ()
 
- Protected Member Functions inherited from ParallelTask
 ParallelTask (const char *nm=0)
 
 ParallelTask (const ParallelTask &)
 
void addToNrDone (int64_t increment)
 
int64_t calculateThreadSize (int64_t totalnr, int nrthreads, int thread) const
 
virtual int maxNrThreads () const
 
virtual int minThreadSize () const
 
void quickAddToNrDone (int64_t loopidx)
 
void resetNrDone ()
 
virtual bool stopAllOnFailure () const
 
- Protected Member Functions inherited from Task
 Task (const char *nm=nullptr)
 
virtual bool shouldContinue ()
 
- Protected Member Functions inherited from NamedCallBacker
void sendDelNotif () const
 

Protected Attributes

TypeSet< float > depths_
 
uiString errmsg_
 
ElasticModel model_
 
TypeSet< int > offsetpermutation_
 
TypeSet< float > offsets_
 
Array2DImpl< float_complex > * reflectivity_
 
Array2DImpl< float > * sini_
 
Array2DImpl< float > * twt_
 
TypeSet< float > velmax_
 
Array1D< float > * zerooffstwt_
 
- Protected Attributes inherited from Task
Control control_
 
Threads::ConditionVarworkcontrolcondvar_
 
- Protected Attributes inherited from NamedCallBacker
Threads::Atomic< bool > delalreadytriggered_
 
Notifier< NamedCallBackerdelnotif_
 
- Protected Attributes inherited from NamedObject
BufferString name_
 

Additional Inherited Members

- Public Types inherited from Task
enum  Control { Run , Pause , Stop }
 
- Public Types inherited from ObjectWithName
typedef OD::String name_type
 

Detailed Description

Ray tracer in 1D.

<>

Constructor & Destructor Documentation

◆ ~RayTracer1D()

RayTracer1D::~RayTracer1D ( )

◆ RayTracer1D()

RayTracer1D::RayTracer1D ( )
protected

Member Function Documentation

◆ cDefaultBlockRatio()

static float RayTracer1D::cDefaultBlockRatio ( )
static

◆ compute()

virtual bool RayTracer1D::compute ( int  ,
int  ,
float   
)
protectedvirtual

Reimplemented in VrmsRayTracer1D.

◆ createInstance()

static RayTracer1D* RayTracer1D::createInstance ( const IOPar ,
uiString  
)
static

◆ doPrepare()

virtual bool RayTracer1D::doPrepare ( int  nrthreads)
protectedvirtual

Called once, before any doWork is called.

Reimplemented from ParallelTask.

◆ errMsg()

uiString RayTracer1D::errMsg ( ) const
inline

◆ fillPar()

virtual void RayTracer1D::fillPar ( IOPar ) const
virtual

◆ getDepth()

float RayTracer1D::getDepth ( int  layer) const

◆ getModel()

const ElasticModel& RayTracer1D::getModel ( ) const
inline

◆ getOffsets()

void RayTracer1D::getOffsets ( TypeSet< float > &  offsets) const

◆ getReflectivity()

bool RayTracer1D::getReflectivity ( int  offset,
ReflectivityModel  
) const

◆ getSinAngle()

float RayTracer1D::getSinAngle ( int  layeridx,
int  offsetidx 
) const

◆ getTDM()

bool RayTracer1D::getTDM ( const Array1D< float > &  ,
TimeDepthModel  
) const
protected

◆ getTDModel()

bool RayTracer1D::getTDModel ( int  offset,
TimeDepthModel  
) const

◆ getTime()

float RayTracer1D::getTime ( int  layer,
int  offset 
) const

◆ getZeroOffsTDModel()

bool RayTracer1D::getZeroOffsTDModel ( TimeDepthModel ) const

◆ hasSameParams()

virtual bool RayTracer1D::hasSameParams ( const RayTracer1D ) const
virtual

◆ isPSWithoutZeroOffset()

bool RayTracer1D::isPSWithoutZeroOffset ( ) const

◆ nrIterations()

od_int64 RayTracer1D::nrIterations ( ) const
protectedvirtual
Returns
the number of times the process should be run.

Implements ParallelTask.

◆ sDefOffsetRange()

static StepInterval<float> RayTracer1D::sDefOffsetRange ( )
static

◆ setIOParsToZeroOffset()

static void RayTracer1D::setIOParsToZeroOffset ( IOPar iop)
static

◆ setModel()

bool RayTracer1D::setModel ( const ElasticModel )

◆ setOffsets()

void RayTracer1D::setOffsets ( const TypeSet< float > &  offsets)

<Note, if either p-wave or s-wave are undef, will fill them with Castagna to compute zoeppritz coeffs <!

◆ setup() [1/2]

virtual const RayTracer1D::Setup& RayTracer1D::setup ( ) const
pure virtual

Implemented in VrmsRayTracer1D.

◆ setup() [2/2]

virtual RayTracer1D::Setup& RayTracer1D::setup ( )
pure virtual

Implemented in VrmsRayTracer1D.

◆ setZeroOffsetTWT()

void RayTracer1D::setZeroOffsetTWT ( )
protected

◆ sKeyBlock()

static const char* RayTracer1D::sKeyBlock ( )
inlinestatic

◆ sKeyBlockRatio()

static const char* RayTracer1D::sKeyBlockRatio ( )
inlinestatic

◆ sKeyOffset()

static const char* RayTracer1D::sKeyOffset ( )
inlinestatic

◆ sKeyOffsetInFeet()

static const char* RayTracer1D::sKeyOffsetInFeet ( )
inlinestatic

◆ sKeyPWave()

static const char* RayTracer1D::sKeyPWave ( )
inlinestatic

◆ sKeyReflectivity()

static const char* RayTracer1D::sKeyReflectivity ( )
inlinestatic

◆ usePar()

virtual bool RayTracer1D::usePar ( const IOPar )
virtual

Member Data Documentation

◆ depths_

TypeSet<float> RayTracer1D::depths_
protected

◆ errmsg_

uiString RayTracer1D::errmsg_
protected

◆ model_

ElasticModel RayTracer1D::model_
protected

◆ offsetpermutation_

TypeSet<int> RayTracer1D::offsetpermutation_
protected

◆ offsets_

TypeSet<float> RayTracer1D::offsets_
protected

◆ reflectivity_

Array2DImpl<float_complex>* RayTracer1D::reflectivity_
protected

◆ sini_

Array2DImpl<float>* RayTracer1D::sini_
protected

◆ twt_

Array2DImpl<float>* RayTracer1D::twt_
protected

◆ velmax_

TypeSet<float> RayTracer1D::velmax_
protected

◆ zerooffstwt_

Array1D<float>* RayTracer1D::zerooffstwt_
protected

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2022