Seismic attribute functions for buffers More...
#include <Inventor/algorithms/SoSeismic.h>
Public Member Functions | |
SoSeismic () | |
Constructor. | |
virtual | ~SoSeismic () |
Destructor. | |
virtual int | computeInstPhase (SoBufferObject *sourceBufferObject, SoBufferObject *targetBufferObject, int traceSize, int numTrace) |
Compute instantaneous phase attribute on a set of seismic traces. | |
virtual int | computeEnvelope (SoBufferObject *sourceBufferObject, SoBufferObject *targetBufferObject, int traceSize, int numTrace) |
Compute envelope (amplitude) attribute on a set of seismic traces. | |
virtual int | computeHilbert (SoBufferObject *sourceBufferObject, SoBufferObject *targetBufferObject, int width, int height) |
Compute Hilbert transform on a set of seismic traces. | |
int | computeInstPhase (SoCpuBufferObject *sourceBufferObject, SoCpuBufferObject *targetBufferObject, int traceSize, int numTrace) |
Compute instantaneous phase attribute on a set of seismic traces. | |
int | computeEnvelope (SoCpuBufferObject *sourceBufferObject, SoCpuBufferObject *targetBufferObject, int traceSize, int numTrace) |
Compute envelope (amplitude) attribute on a set of seismic traces. | |
int | computeHilbert (SoCpuBufferObject *sourceBufferObject, SoCpuBufferObject *targetBufferObject, int width, int height) |
Compute Hilbert transform on a set of seismic traces. | |
Seismic attribute functions for buffers
The Seismic module provides functions for computing seismic attributes.
Examples:
SoAlgorithms, SoArithmetic, SoConversion, SoConvolution, SoDataExtract
Definition at line 51 of file SoSeismic.h.
SoSeismic::SoSeismic | ( | ) |
Constructor.
|
virtual |
Destructor.
|
virtual |
Compute envelope (amplitude) attribute on a set of seismic traces.
amp(t) = sqrt( re^2(t) + im^2(t))
sourceBufferObject | Should contain the real part of the complex trace (original trace data). |
targetBufferObject | should contain the imaginary part of the complex trace (Hilbert transform of trace data). Note: targetBufferObject will be overwritten with the result values. |
traceSize | Number of samples in each trace (must be same for all traces). |
numTrace | Number of traces. |
int SoSeismic::computeEnvelope | ( | SoCpuBufferObject * | sourceBufferObject, |
SoCpuBufferObject * | targetBufferObject, | ||
int | traceSize, | ||
int | numTrace | ||
) |
Compute envelope (amplitude) attribute on a set of seismic traces.
|
virtual |
Compute Hilbert transform on a set of seismic traces.
The Hilbert transform is computed by convolving sourceBufferObject with a windowed (approximate) version of the ideal Hilbert transformer.
int SoSeismic::computeHilbert | ( | SoCpuBufferObject * | sourceBufferObject, |
SoCpuBufferObject * | targetBufferObject, | ||
int | width, | ||
int | height | ||
) |
Compute Hilbert transform on a set of seismic traces.
|
virtual |
Compute instantaneous phase attribute on a set of seismic traces.
phase(t) = arctan( im(t)/re(t))
sourceBufferObject | Should contain the real part of the complex trace (original trace data). |
targetBufferObject | should contain the imaginary part of the complex trace (Hilbert transform of trace data). Note: targetBufferObject will be overwritten with the result values. |
traceSize | Number of samples in each trace (must be same for all traces). |
numTrace | Number of traces. |
int SoSeismic::computeInstPhase | ( | SoCpuBufferObject * | sourceBufferObject, |
SoCpuBufferObject * | targetBufferObject, | ||
int | traceSize, | ||
int | numTrace | ||
) |
Compute instantaneous phase attribute on a set of seismic traces.