 |
OpendTect
6.6
|
Go to the documentation of this file.
40 int size()
const {
return sz_; }
42 bool setModel(
const float* dpths,
const float* times,
int sz);
50 static float getDepth(
const float* dpths,
const float* times,
int sz,
52 static float getTime(
const float* dpths,
const float* times,
int sz,
54 static float getVelocity(
const float* dpths,
const float* times,
63 static float convertTo(
const float* dpths,
const float* times,
int sz,
64 float z,
bool targetistime);
148 const float* offsets,
149 float* res)
const = 0;
152 const float* offsets,
const float* moveout )
const;
166 int nrVariables()
const {
return 3; }
167 const char* variableName(
int idx)
const
172 case 1:
return "RMO";
173 case 2:
return "Reference offset";
178 bool computeMoveout(
const float*,
int,
const float*,
float*)
const;
180 int,
const float*,
float*);
192 int nrVariables()
const {
return 3; }
193 const char* variableName(
int idx )
const
198 case 1:
return "Vrms";
199 case 2:
return "Effective anisotrophy";
204 bool computeMoveout(
const float*,
int,
const float*,
float*)
const;
206 int,
const float*,
float*);
214 const double* t,
int nrlayers,
float* Vint);
218 const float* t,
int nrlayers,
float* Vint);
230 virtual bool compute(
const float* Vrms,
float t0,
float v0,
231 const float* t,
int nrlayers,
float* Vint) = 0;
246 bool compute(
const float* Vrms,
double t0,
float v0,
247 const double* t,
int nrlayers,
float* Vint)
248 {
return computeDix( Vrms, t0, v0, t, nrlayers, Vint ); }
251 bool compute(
const float* Vrms,
float t0,
float v0,
252 const float* t,
int nrlayers,
float* Vint)
253 {
return computeDix( Vrms, t0, v0, t, nrlayers, Vint ); }
263 int nrvels,
float* Vint);
270 const double* t,
int nrlayers,
float* Vint);
274 const float* t,
int nrlayers,
float* Vint);
280 int nrvels,
float* Vrms);
287 int nrlayers,
float* Vrms);
291 int nrlayers,
float* Vrms);
299 const double* t_in,
int nr_in,
301 float* Vout,
int nr_out);
305 float v0_in,
const float* t_in,
int nr_in,
307 float* Vout,
int nr_out);
316 const float* t,
int nrvels,
float* Vavg);
325 const float* t,
int nrvels,
float* Vint);
360 int nroffsets,
bool outputdepth,
361 const float* offsets,
float* output);
368 float reference_z,
bool zisdepth,
float& V_0,
369 float& gradient,
float& error);
392 int nr_out,
float* voutarr);
397 int nr_out,
float* voutarr);
405 int nr_out,
float* outarr);
409 const float* t_in,
int nr_in,
417 int nr_out,
double* outarr);
423 int nr_out,
float* outarr);
431 int sz,
float* res );
438 int sz,
float* res );
mODTextTranslationClass(TimeDepthConverter) public bool isOK() const
Interface to a series of values.
Definition: odmemory.h:16
static float getTime(const float *dpths, const float *times, int sz, float depth)
bool fitLinearVelocity(const float *Vint, const float *z_in, int nr_in, const Interval< float > &zlayer, float reference_z, bool zisdepth, float &V_0, float &gradient, float &error)
bool setModel(const float *dpths, const float *times, int sz)
float getTime(float depth) const
static bool calcDepths(const ValueSeries< float > &vels, int velsz, const ValueSeries< double > ×, double *depths)
FixedString Time()
Definition: keystrs.h:163
float getLastTime() const
Computes moveout in depth from RMO at a certain reference offset.
Definition: velocitycalc.h:164
#define mGlobal(module)
Definition: commondefs.h:180
float lastvel_
Definition: velocitycalc.h:126
float getDepth(int idx) const
static bool calcDepths(const ValueSeries< float > &vels, int velsz, const SamplingData< double > &, float *depths)
static bool isVelocityDescUseable(const VelocityDesc &, bool velintime, uiString *errmsg=0)
Export_Basic uiString toUiString(ViewStyle)
#define mDefaultFactoryInstantiation(baseclss, clss, keywrd, usernm)
Definition: factory.h:288
#define mExpClass(module)
Definition: commondefs.h:177
void resampleZ(const double *zarr, const double *tord_in, int nr_in, const SamplingData< double > &sd_out, int nr_out, double *zsampled)
uiString errmsg_
Definition: velocitycalc.h:71
static bool calcTimes(const ValueSeries< float > &vels, int velsz, const ValueSeries< float > &depth, float *times)
static float convertTo(const float *dpths, const float *times, int sz, float z, bool targetistime)
bool computeVint(const float *Vavg, const double *t, int nrvels, float *Vint)
Converts a number of layers with Vavg to Vint velocities.
bool regularinput_
Definition: velocitycalc.h:128
void computeResidualMoveouts(float z0, float rmo, float refoffset, int nroffsets, bool outputdepth, const float *offsets, float *output)
bool convertToVintIfNeeded(const float *inpvel, const VelocityDesc &veldesc, const StepInterval< float > &zrange, float *outvel)
#define mODTextTranslationClass(clss)
Definition: uistring.h:40
static bool calcTimes(const ValueSeries< float > &vels, int velsz, const SamplingData< double > &, float *times)
mStartAllowDeprecatedSection bool compute(const float *Vrms, float t0, float v0, const float *t, int nrlayers, float *Vint)
Definition: velocitycalc.h:251
SamplingData< double > getDoubleSamplingData(const SamplingData< float > &)
static float getDepth(const float *dpths, const float *times, int sz, float time)
int sz_
Definition: velocitycalc.h:129
virtual bool computeMoveout(const float *variables, int nroffsets, const float *offsets, float *res) const =0
#define mStartAllowDeprecatedSection
Definition: plfdefs.h:232
static mODTextTranslationClass(RMOComputer) public bool computeMoveout(float d0, float rmo, float refoffset, int, const float *, float *)
bool sampleVrms(const float *Vin, double t0_in, float v0_in, const double *t_in, int nr_in, const SamplingData< double > &sd_out, float *Vout, int nr_out)
bool sampleVint(const float *Vint, const double *t_in, int nr_in, const SamplingData< double > &sd_out, float *Vout, int nr_out)
static mODTextTranslationClass(NormalMoveout) public bool computeMoveout(float t0, float Vrms, float effectiveanisotropy, int, const float *, float *)
Converts between time and depth given a model.
Definition: velocitycalc.h:80
virtual ~TimeDepthModel()
mODTextTranslationClass(TimeDepthModel) public TimeDepthModel(const TimeDepthModel &)
Converts between time, depth and velocity given a model. The velocity model can be either RMO-velocit...
Definition: velocitycalc.h:31
virtual int nrVariables() const =0
bool computeVrms(const float *Vint, const SamplingData< double > &sd, int nrvels, float *Vrms)
float firstvel_
Definition: velocitycalc.h:125
Base class for computing a moveout curve.
Definition: velocitycalc.h:139
mODTextTranslationClass(DixConversion) public bool compute(const float *Vrms, double t0, float v0, const double *t, int nrlayers, float *Vint)
Definition: velocitycalc.h:246
#define mDefineFactoryInClass(T, funcname)
Definition: factory.h:425
void calcZ(const float *, int inpsz, ValueSeries< float > &, int outpsz, const SamplingData< double > &, bool istime) const
float findBestVariable(float *variables, int variabletochange, const Interval< float > &searchrg, int nroffsets, const float *offsets, const float *moveout) const
float getVelocity(float depth) const
float getTime(int idx) const
FixedString Depth()
Definition: keystrs.h:60
Computes moveout with anisotropy, according to the equation by Alkhalifah and Tsvankin 1995.
Definition: velocitycalc.h:190
virtual const char * variableName(int) const =0
bool calcDepths(ValueSeries< float > &, int sz, const SamplingData< double > ×amp) const
SamplingData< double > sd_
Definition: velocitycalc.h:130
Rms velocity to interval velocity conversion using the Dix formula.
Definition: velocitycalc.h:240
#define mStopAllowDeprecatedSection
Definition: plfdefs.h:233
bool setVelocityModel(const ValueSeries< float > &vels, int sz, const SamplingData< double > &sd, const VelocityDesc &, bool istime)
float getDepth(float time) const
void sampleEffectiveThomsenPars(const float *vinarr, const double *t_in, int nr_in, const SamplingData< double > &sd_out, int nr_out, float *voutarr)
int size() const
Definition: velocitycalc.h:40
bool sampleVavg(const float *Vavg, const double *t_in, int nr_in, const SamplingData< double > &sd_out, float *Vout, int nr_out)
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
static float getVelocity(const float *dpths, const float *times, int sz, float depth)
const char * errMsg() const
mODTextTranslationClass(MoveoutComputer) public
Definition: velocitycalc.h:139
virtual bool compute(const float *Vrms, float t0, float v0, const float *t, int nrlayers, float *Vint)=0
float getFirstTime() const
virtual mODTextTranslationClass(Vrms2Vint) public ~Vrms2Vint()
Definition: velocitycalc.h:228
bool computeVavg(const float *Vint, const double *t, int nrvels, float *Vavg)
Converts a number of layers with Vint to average velocities.
virtual bool isOK() const
static mDeprecatedDef bool calcDepths(const ValueSeries< float > &vels, int velsz, const ValueSeries< float > ×, float *depths)
TimeDepthModel & operator=(const TimeDepthModel &)
#define mDeprecatedDef
Definition: plfdefs.h:216
bool calcTimes(ValueSeries< float > &, int sz, const SamplingData< double > &depthsamp) const
void resampleContinuousData(const double *in, const double *t_in, int nr_in, const SamplingData< double > &sd_out, int nr_out, double *outarr)
bool computeDix(const float *Vrms, double t0, float v0, const double *t, int nrlayers, float *Vint)
bool computeLinearD2T(double v0, double dv, double v0depth, const SamplingData< float > &depthsampling, int sz, float *res)
void sampleIntvThomsenPars(const float *inarr, const double *t_in, int nr_in, const SamplingData< double > &sd_out, int nr_out, float *outarr)
int sz_
Definition: velocitycalc.h:66
float * times_
Definition: velocitycalc.h:68
Rms velocity to interval velocity conversion.
Definition: velocitycalc.h:225
bool computeLinearT2D(double v0, double dv, double v0depth, const SamplingData< float > ×ampling, int sz, float *res)
float * depths_
Definition: velocitycalc.h:69
Generated at
for the OpendTect
seismic interpretation project.
Copyright (C): dGB Beheer B.V. 1995-2021