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
 
ReflectivityModelTrace * getSampledFreqReflectivities ()
 
const ReflectivityModelTrace * getSampledFreqReflectivities () const
 
ReflectivityModelTrace * getSampledTimeReflectivities ()
 
const ReflectivityModelTrace * getSampledTimeReflectivities () 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 ReflectivitySampler * refSampler () const
 
- Protected Member Functions inherited from Seis::SynthGenBase
 SynthGenBase ()
 
virtual ~SynthGenBase ()
 
bool isInputOK () const
 

Protected Attributes

SeisTrc * outtrc_ = nullptr
 
ConstRefMan< ReflectivityModelTrace > refmodel_
 
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 Wavelet * wavelet_ = 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 SynthGenerator * createInstance (const IOPar *=nullptr)
 

Private Attributes

int convolvesize_ = 0
 
RefMan< ReflectivityModelTrace > creflectivities_
 
ConstRefMan< ReflectivityModelTrace > csampledfreqreflectivities_
 
ConstRefMan< ReflectivityModelTrace > csampledtimereflectivities_
 
RefMan< ReflectivityModelTrace > freqwavelet_
 
bool reflectivitiesdone_ = false
 
PtrMan< ReflectivitySampler > refsampler_
 
RefMan< ReflectivityModelTrace > sampledfreqreflectivities_
 
RefMan< ReflectivityModelTrace > sampledtimereflectivities_
 
float_complex * temprefs_ = nullptr
 
const ZSampling * uncorrsampling_ = 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