OpendTect  7.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
Seis::SynthGenerator Class Reference
Inheritance diagram for Seis::SynthGenerator:
[legend]

Public Member Functions

 ~SynthGenerator ()
 
virtual bool isAdvanced () const
 
- Public Member Functions inherited from Seis::SynthGenBase
virtual void doSampledTimeReflectivity (bool yn)
 
virtual void enableFourierDomain (bool dofreq)
 
uiString errMsg () const
 
virtual void fillPar (IOPar &) const
 
float getMuteLength () const
 
float getStretchLimit () const
 
void setMuteLength (float n)
 
virtual bool setOutSampling (const ZSampling &)
 
void setStretchLimit (float n)
 
virtual bool usePar (const IOPar &)
 

Static Public Member Functions

static bool areEquivalent (const IOPar &, const IOPar &)
 
- Static Public Member Functions inherited from Seis::SynthGenBase
static bool cDefIsFrequency ()
 
static float cStdMuteLength ()
 
static float cStdStretchLimit ()
 
static const char * sKeyConvDomain ()
 
static const char * sKeyMuteLength ()
 
static const char * sKeyNMO ()
 
static const char * sKeyStretchLimit ()
 
static const char * sKeyTimeRefs ()
 

Protected Member Functions

 SynthGenerator ()
 
virtual void cleanup ()
 
virtual bool computeReflectivities ()
 
int getFFTSz () const
 
ReflectivityModelTracegetSampledFreqReflectivities ()
 
const ReflectivityModelTracegetSampledFreqReflectivities () const
 
ReflectivityModelTracegetSampledTimeReflectivities ()
 
const ReflectivityModelTracegetSampledTimeReflectivities () const
 
float_complex * getTempRefs ()
 
const float_complex * getTempRefs () const
 
bool hasExistingReflectivities () const
 
virtual bool isEquivalent (const SynthGenerator &) const
 
bool needSampledReflectivities () const
 
virtual bool needSampledTimeReflectivities () const
 
virtual bool outputSampledFreqReflectivities () const
 
virtual bool outputSampledTimeReflectivities () const
 
const ReflectivitySamplerrefSampler () const
 
- Protected Member Functions inherited from Seis::SynthGenBase
 SynthGenBase ()
 
virtual ~SynthGenBase ()
 
bool isInputOK () const
 

Protected Attributes

SeisTrcouttrc_ = nullptr
 
ConstRefMan< ReflectivityModelTracerefmodel_
 
const float * spikescorrectedtwt_ = nullptr
 
const float * spikestwt_ = nullptr
 
- Protected Attributes inherited from Seis::SynthGenBase
bool applynmo_ = false
 
bool dofreq_
 
bool dosampledtimereflectivities_ = false
 
uiString errmsg_
 
float mutelength_
 
ZSampling outputsampling_
 
float stretchlimit_
 
const Waveletwavelet_ = nullptr
 
bool waveletismine_ = false
 

Private Member Functions

bool computeTrace ()
 
bool doFFTConvolve (ValueSeries< float > &)
 
mDeprecatedDef bool doFFTConvolve (ValueSeries< float > &, int sz)
 
mDeprecatedDef bool doNMOStretch (const ValueSeries< float > &, int insz, ValueSeries< float > &out, int outsz) const
 
bool doNMOStretch (const ValueSeries< float > &uncorrvs, ValueSeries< float > &nmovs) const
 
bool doTimeConvolve (ValueSeries< float > &)
 
mDeprecatedDef bool doTimeConvolve (ValueSeries< float > &, int sz)
 
bool doWork ()
 
bool genFreqWavelet ()
 
void getWaveletTrace (const SamplingData< float > &, float z, float scal, Array1D< float > &) const
 
int nextStep ()
 
int setConvolveSize ()
 
void setModel (const ReflectivityModelTrace &, const float *spikestwt_, const float *spikescorrectedtwt_, SeisTrc &)
 
void setSampledFreqReflectivities (ReflectivityModelTrace *)
 
void setSampledTimeReflectivities (ReflectivityModelTrace *)
 
void setUnCorrSampling (const ZSampling *)
 
bool setWavelet (const Wavelet *, OD::PtrPolicy) override
 
void sortOutput (const float_complex *, ValueSeries< float > &) const
 
mDeprecatedDef void sortOutput (const float_complex *, ValueSeries< float > &, int sz) const
 
void useSampledFreqReflectivities (const ReflectivityModelTrace *)
 
void useSampledTimeReflectivities (const ReflectivityModelTrace *)
 

Static Private Member Functions

static SynthGeneratorcreateInstance (const IOPar *=nullptr)
 

Private Attributes

int convolvesize_ = 0
 
RefMan< ReflectivityModelTracecreflectivities_
 
ConstRefMan< ReflectivityModelTracecsampledfreqreflectivities_
 
ConstRefMan< ReflectivityModelTracecsampledtimereflectivities_
 
RefMan< ReflectivityModelTracefreqwavelet_
 
bool reflectivitiesdone_ = false
 
PtrMan< ReflectivitySamplerrefsampler_
 
RefMan< ReflectivityModelTracesampledfreqreflectivities_
 
RefMan< ReflectivityModelTracesampledtimereflectivities_
 
float_complex * temprefs_ = nullptr
 
const ZSamplinguncorrsampling_ = nullptr
 
bool useexistingrefs_ = false
 

Friends

class MultiTraceSynthGenerator
 
class RaySynthGenerator
 

Detailed Description

<>

Constructor & Destructor Documentation

◆ ~SynthGenerator()

Seis::SynthGenerator::~SynthGenerator ( )

◆ SynthGenerator()

Seis::SynthGenerator::SynthGenerator ( )
protected

Member Function Documentation

◆ areEquivalent()

static bool Seis::SynthGenerator::areEquivalent ( const IOPar ,
const IOPar  
)
static

◆ cleanup()

virtual void Seis::SynthGenerator::cleanup ( )
protectedvirtual

◆ computeReflectivities()

virtual bool Seis::SynthGenerator::computeReflectivities ( )
protectedvirtual

◆ computeTrace()

bool Seis::SynthGenerator::computeTrace ( )
private

◆ createInstance()

static SynthGenerator* Seis::SynthGenerator::createInstance ( const IOPar = nullptr)
staticprivate

◆ doFFTConvolve() [1/2]

bool Seis::SynthGenerator::doFFTConvolve ( ValueSeries< float > &  )
private

◆ doFFTConvolve() [2/2]

mDeprecatedDef bool Seis::SynthGenerator::doFFTConvolve ( ValueSeries< float > &  ,
int  sz 
)
private

◆ doNMOStretch() [1/2]

mDeprecatedDef bool Seis::SynthGenerator::doNMOStretch ( const ValueSeries< float > &  ,
int  insz,
ValueSeries< float > &  out,
int  outsz 
) const
private

◆ doNMOStretch() [2/2]

bool Seis::SynthGenerator::doNMOStretch ( const ValueSeries< float > &  uncorrvs,
ValueSeries< float > &  nmovs 
) const
private

◆ doTimeConvolve() [1/2]

bool Seis::SynthGenerator::doTimeConvolve ( ValueSeries< float > &  )
private

◆ doTimeConvolve() [2/2]

mDeprecatedDef bool Seis::SynthGenerator::doTimeConvolve ( ValueSeries< float > &  ,
int  sz 
)
private

◆ doWork()

bool Seis::SynthGenerator::doWork ( )
private

◆ genFreqWavelet()

bool Seis::SynthGenerator::genFreqWavelet ( )
private

◆ getFFTSz()

int Seis::SynthGenerator::getFFTSz ( ) const
inlineprotected

◆ getSampledFreqReflectivities() [1/2]

ReflectivityModelTrace* Seis::SynthGenerator::getSampledFreqReflectivities ( )
protected

◆ getSampledFreqReflectivities() [2/2]

const ReflectivityModelTrace* Seis::SynthGenerator::getSampledFreqReflectivities ( ) const
protected

◆ getSampledTimeReflectivities() [1/2]

ReflectivityModelTrace* Seis::SynthGenerator::getSampledTimeReflectivities ( )
protected

◆ getSampledTimeReflectivities() [2/2]

const ReflectivityModelTrace* Seis::SynthGenerator::getSampledTimeReflectivities ( ) const
protected

◆ getTempRefs() [1/2]

float_complex* Seis::SynthGenerator::getTempRefs ( )
inlineprotected

◆ getTempRefs() [2/2]

const float_complex* Seis::SynthGenerator::getTempRefs ( ) const
inlineprotected

◆ getWaveletTrace()

void Seis::SynthGenerator::getWaveletTrace ( const SamplingData< float > &  ,
float  z,
float  scal,
Array1D< float > &   
) const
private

◆ hasExistingReflectivities()

bool Seis::SynthGenerator::hasExistingReflectivities ( ) const
inlineprotected

◆ isAdvanced()

virtual bool Seis::SynthGenerator::isAdvanced ( ) const
inlinevirtual

◆ isEquivalent()

virtual bool Seis::SynthGenerator::isEquivalent ( const SynthGenerator ) const
protectedvirtual

◆ needSampledReflectivities()

bool Seis::SynthGenerator::needSampledReflectivities ( ) const
protected

◆ needSampledTimeReflectivities()

virtual bool Seis::SynthGenerator::needSampledTimeReflectivities ( ) const
protectedvirtual

◆ nextStep()

int Seis::SynthGenerator::nextStep ( )
private

◆ outputSampledFreqReflectivities()

virtual bool Seis::SynthGenerator::outputSampledFreqReflectivities ( ) const
protectedvirtual

◆ outputSampledTimeReflectivities()

virtual bool Seis::SynthGenerator::outputSampledTimeReflectivities ( ) const
protectedvirtual

◆ refSampler()

const ReflectivitySampler* Seis::SynthGenerator::refSampler ( ) const
protected

◆ setConvolveSize()

int Seis::SynthGenerator::setConvolveSize ( )
private

◆ setModel()

void Seis::SynthGenerator::setModel ( const ReflectivityModelTrace ,
const float *  spikestwt_,
const float *  spikescorrectedtwt_,
SeisTrc  
)
private

◆ setSampledFreqReflectivities()

void Seis::SynthGenerator::setSampledFreqReflectivities ( ReflectivityModelTrace )
private

◆ setSampledTimeReflectivities()

void Seis::SynthGenerator::setSampledTimeReflectivities ( ReflectivityModelTrace )
private

◆ setUnCorrSampling()

void Seis::SynthGenerator::setUnCorrSampling ( const ZSampling )
private

◆ setWavelet()

bool Seis::SynthGenerator::setWavelet ( const Wavelet ,
OD::PtrPolicy   
)
overrideprivatevirtual

Reimplemented from Seis::SynthGenBase.

◆ sortOutput() [1/2]

void Seis::SynthGenerator::sortOutput ( const float_complex *  ,
ValueSeries< float > &   
) const
private

◆ sortOutput() [2/2]

mDeprecatedDef void Seis::SynthGenerator::sortOutput ( const float_complex *  ,
ValueSeries< float > &  ,
int  sz 
) const
private

◆ useSampledFreqReflectivities()

void Seis::SynthGenerator::useSampledFreqReflectivities ( const ReflectivityModelTrace )
private

◆ useSampledTimeReflectivities()

void Seis::SynthGenerator::useSampledTimeReflectivities ( const ReflectivityModelTrace )
private

Friends And Related Function Documentation

◆ MultiTraceSynthGenerator

friend class MultiTraceSynthGenerator
friend

◆ RaySynthGenerator

friend class RaySynthGenerator
friend

Member Data Documentation

◆ convolvesize_

int Seis::SynthGenerator::convolvesize_ = 0
private

◆ creflectivities_

RefMan<ReflectivityModelTrace> Seis::SynthGenerator::creflectivities_
private

◆ csampledfreqreflectivities_

ConstRefMan<ReflectivityModelTrace> Seis::SynthGenerator::csampledfreqreflectivities_
private

◆ csampledtimereflectivities_

ConstRefMan<ReflectivityModelTrace> Seis::SynthGenerator::csampledtimereflectivities_
private

◆ freqwavelet_

RefMan<ReflectivityModelTrace> Seis::SynthGenerator::freqwavelet_
private

◆ outtrc_

SeisTrc* Seis::SynthGenerator::outtrc_ = nullptr
protected

◆ reflectivitiesdone_

bool Seis::SynthGenerator::reflectivitiesdone_ = false
private

◆ refmodel_

ConstRefMan<ReflectivityModelTrace> Seis::SynthGenerator::refmodel_
protected

◆ refsampler_

PtrMan<ReflectivitySampler> Seis::SynthGenerator::refsampler_
private

◆ sampledfreqreflectivities_

RefMan<ReflectivityModelTrace> Seis::SynthGenerator::sampledfreqreflectivities_
private

◆ sampledtimereflectivities_

RefMan<ReflectivityModelTrace> Seis::SynthGenerator::sampledtimereflectivities_
private

◆ spikescorrectedtwt_

const float* Seis::SynthGenerator::spikescorrectedtwt_ = nullptr
protected

◆ spikestwt_

const float* Seis::SynthGenerator::spikestwt_ = nullptr
protected

◆ temprefs_

float_complex* Seis::SynthGenerator::temprefs_ = nullptr
private

◆ uncorrsampling_

const ZSampling* Seis::SynthGenerator::uncorrsampling_ = nullptr
private

◆ useexistingrefs_

bool Seis::SynthGenerator::useexistingrefs_ = false
private

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