OpendTect-6_4
6.4
|
A table of elastic prop layers with processing utilities. More...
Public Member Functions | |
int | isOK (bool dodencheck=true, bool dosvelcheck=true) const |
bool | getValues (bool isden, bool issvel, TypeSet< float > &) const |
bool | getValues (bool vel, bool den, bool svel, Array2DImpl< float > &) const |
void | checkAndClean (int &firsterroridx, bool dodencheck=true, bool dosvelcheck=true, bool onlyinvalid=false) |
void | interpolate (bool dovp, bool doden, bool dovs) |
void | upscale (float maxthickness) |
void | upscaleByN (int nblock) |
void | setMaxThickness (float maxthickness) |
void | mergeSameLayers () |
void | block (float relthreshold, bool pvelonly) |
bool | getUpscaledByThicknessAvg (ElasticLayer &outlay) const |
bool | getUpscaledBackus (ElasticLayer &outlay, float theta=0.) const |
bool | createFromVel (const StepInterval< float > &zrange, const float *pvel, const float *svel=0, const float *den=0) |
bool | createFromAI (const StepInterval< float > &zrange, const float *ai, const float *si=0, const float *den=0) |
float | getLayerDepth (int layerix) const |
void | getTimeSampling (Interval< float > &, bool usevs=false) const |
Public Member Functions inherited from TypeSet< ElasticLayer > | |
TypeSet () | |
TypeSet (int nr, ElasticLayer typ) | |
TypeSet (const ElasticLayer *t, int nr) | |
TypeSet (const TypeSet< ElasticLayer > &t) | |
Public Member Functions inherited from TypeSetBase< ElasticLayer, int > | |
virtual | ~TypeSetBase () |
TypeSetBase< ElasticLayer, int > & | operator= (const TypeSetBase< ElasticLayer, int > &ts) |
size_type | size () const |
virtual int64_t | nrItems () const |
virtual bool | setSize (size_type, ElasticLayer val=ElasticLayer()) |
virtual bool | setCapacity (size_type sz, bool withmargin) |
virtual size_type | getCapacity () const |
void | setAll (ElasticLayer) |
void | replace (ElasticLayer, ElasticLayer) |
ElasticLayer & | operator[] (size_type) |
const ElasticLayer & | operator[] (size_type) const |
ElasticLayer & | first () |
const ElasticLayer & | first () const |
ElasticLayer & | last () |
const ElasticLayer & | last () const |
virtual bool | validIdx (int64_t) const |
virtual size_type | indexOf (ElasticLayer, bool forward=true, size_type start=-1) const |
bool | isPresent (const ElasticLayer &) const |
size_type | count (const ElasticLayer &) const |
TypeSetBase< ElasticLayer, int > & | add (const ElasticLayer &) |
virtual void | insert (size_type, const ElasticLayer &) |
bool | push (const ElasticLayer &) |
ElasticLayer | pop () |
TypeSetBase< ElasticLayer, int > & | operator+= (const ElasticLayer &t) |
virtual bool | append (const ElasticLayer *, size_type) |
virtual bool | append (const TypeSetBase< ElasticLayer, int > &) |
virtual bool | addIfNew (const ElasticLayer &) |
virtual TypeSetBase< ElasticLayer, int > & | copy (const ElasticLayer *, size_type) |
virtual TypeSetBase< ElasticLayer, int > & | copy (const TypeSetBase< ElasticLayer, int > &) |
virtual void | createUnion (const TypeSetBase< ElasticLayer, int > &) |
virtual void | createIntersection (const TypeSetBase< ElasticLayer, int > &) |
Only keeps common items. More... | |
virtual void | createDifference (const TypeSetBase< ElasticLayer, int > &, bool must_preserve_order=false) |
Removes all items present in other set. More... | |
virtual void | swap (int64_t, int64_t) |
virtual void | move (size_type from, size_type to) |
virtual void | getReOrdered (const size_type *, TypeSetBase< ElasticLayer, int > &) |
Fills as per the given array of indexes. More... | |
virtual void | reverse () |
virtual void | erase () |
virtual void | removeSingle (size_type, bool preserver_order=true) |
TypeSetBase< ElasticLayer, int > & | operator-= (const ElasticLayer &) |
virtual void | removeRange (size_type from, size_type to) |
virtual ElasticLayer * | arr () |
3rd party access More... | |
virtual const ElasticLayer * | arr () const |
std::vector< ElasticLayer > & | vec () |
const std::vector< ElasticLayer > & | vec () const |
Public Member Functions inherited from OD::Set | |
virtual | ~Set () |
bool | isEmpty () const |
void | setEmpty () |
Static Public Member Functions | |
static bool | getTimeSampling (const TypeSet< ElasticModel > &, Interval< float > &timerg, bool usevs=false) |
Protected Member Functions | |
bool | getRatioValues (bool vel, bool den, bool svel, Array2DImpl< float > &ratiovals, Array2DImpl< float > *vals=0) const |
bool | doBlocking (float threshold, bool pvelonly, TypeSet< Interval< int > > &blocks) const |
void | removeSpuriousLayers (float zstep) |
Protected Member Functions inherited from TypeSetBase< ElasticLayer, int > | |
TypeSetBase () | |
TypeSetBase (size_type nr, ElasticLayer typ) | |
TypeSetBase (const ElasticLayer *, size_type nr) | |
TypeSetBase (const TypeSetBase< ElasticLayer, size_type > &) | |
virtual ElasticLayer * | gtArr () const |
Additional Inherited Members | |
Public Types inherited from TypeSetBase< ElasticLayer, int > | |
typedef int | size_type |
typedef ElasticLayer | object_type |
Protected Attributes inherited from TypeSetBase< ElasticLayer, int > | |
VectorAccess< ElasticLayer, int > | vec_ |
A table of elastic prop layers with processing utilities.
void ElasticModel::block | ( | float | relthreshold, |
bool | pvelonly | ||
) |
Block elastic model so that no blocks have larger difference than the threshold. Attempts will be made to put boundaries at large changes.
pvelonly | Will use density and SVel as well if false |
void ElasticModel::checkAndClean | ( | int & | firsterroridx, |
bool | dodencheck = true , |
||
bool | dosvelcheck = true , |
||
bool | onlyinvalid = false |
||
) |
bool ElasticModel::createFromAI | ( | const StepInterval< float > & | zrange, |
const float * | ai, | ||
const float * | si = 0 , |
||
const float * | den = 0 |
||
) |
bool ElasticModel::createFromVel | ( | const StepInterval< float > & | zrange, |
const float * | pvel, | ||
const float * | svel = 0 , |
||
const float * | den = 0 |
||
) |
|
protected |
float ElasticModel::getLayerDepth | ( | int | layerix | ) | const |
|
protected |
Computes first derivative of the elastic properties May also return the input values
|
static |
void ElasticModel::getTimeSampling | ( | Interval< float > & | , |
bool | usevs = false |
||
) | const |
bool ElasticModel::getUpscaledBackus | ( | ElasticLayer & | outlay, |
float | theta = 0. |
||
) | const |
bool ElasticModel::getUpscaledByThicknessAvg | ( | ElasticLayer & | outlay | ) | const |
compute an upscaled elastic layer from an elastic model using simple weighted averaging. The thickness of the input and output remains constant. returns false if the input model does not contain a single valid input layer
bool ElasticModel::getValues | ( | bool | isden, |
bool | issvel, | ||
TypeSet< float > & | |||
) | const |
Get one of the properties
bool ElasticModel::getValues | ( | bool | vel, |
bool | den, | ||
bool | svel, | ||
Array2DImpl< float > & | |||
) | const |
Get several properties, in the order vel - den - svel
void ElasticModel::interpolate | ( | bool | dovp, |
bool | doden, | ||
bool | dovs | ||
) |
Replaces all undefined or invalid values
int ElasticModel::isOK | ( | bool | dodencheck = true , |
bool | dosvelcheck = true |
||
) | const |
Checks if all layers have valid property values returns index of first invalid layer
void ElasticModel::mergeSameLayers | ( | ) |
Merged consecutive layers with same properties.
|
protected |
void ElasticModel::setMaxThickness | ( | float | maxthickness | ) |
Ensures that all layers in the elastic model are not thicker than a maximum thickness. Splits the blocks if necessary
void ElasticModel::upscale | ( | float | maxthickness | ) |
Ensures a model does not have layers below a given thickness last layer may not comply though
void ElasticModel::upscaleByN | ( | int | nblock | ) |
Smashes every consecutive set of nblock layers into one output layer
Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B. V. 2019