#include "gstlearn_export.hpp"
#include "Basic/NamingConvention.hpp"
#include "Db/DbGrid.hpp"
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
Classes | |
struct | binaryFileHeader |
struct | traceHead |
struct | SegYArg |
Enumerations | |
enum | ENUM_SEGY { SEGY_NUM = 0 , SEGY_ILINE = 1 , SEGY_XLINE = 2 , SEGY_XTRACE = 3 , SEGY_YTRACE = 4 , SEGY_ZMIN = 5 , SEGY_ZMAX = 6 , SEGY_VMIN = 7 , SEGY_VMAX = 8 , SEGY_THICK = 9 , SEGY_NB = 10 , SEGY_AUXTOP = 11 , SEGY_AUXBOT = 12 , SEGY_COUNT = 13 } |
Functions | |
GSTLEARN_EXPORT Grid | segy_summary (const char *filesegy, DbGrid *surf2D=nullptr, const String &name_top="", const String &name_bot="", double thickmin=TEST, int option=0, int nz_ss=ITEST, int verbOption=1, int iline_min=ITEST, int iline_max=ITEST, int xline_min=ITEST, int xline_max=ITEST, double modif_high=TEST, double modif_low=TEST, double modif_scale=TEST, int codefmt=1) |
GSTLEARN_EXPORT SegYArg | segy_array (const char *filesegy, DbGrid *surf2D=nullptr, const String &top_name="", const String &bot_name="", const String &top_aux="", const String &bot_aux="", double thickmin=TEST, int option=0, int nz_ss=ITEST, int verbOption=0, int iline_min=ITEST, int iline_max=ITEST, int xline_min=ITEST, int xline_max=ITEST, double modif_high=TEST, double modif_low=TEST, double modif_scale=TEST, int codefmt=1) |
GSTLEARN_EXPORT int | db_segy (const char *filesegy, DbGrid *grid3D, DbGrid *surf2D=nullptr, const String &name_top="", const String &name_bot="", double thickmin=TEST, int option=0, int nz_ss=ITEST, int verbOption=0, int iline_min=ITEST, int iline_max=ITEST, int xline_min=ITEST, int xline_max=ITEST, double modif_high=TEST, double modif_low=TEST, double modif_scale=TEST, int codefmt=1, const NamingConvention &namconv=NamingConvention("SEGY")) |
enum ENUM_SEGY |
GSTLEARN_EXPORT int db_segy | ( | const char * | filesegy, |
DbGrid * | grid3D, | ||
DbGrid * | surf2D, | ||
const String & | name_top, | ||
const String & | name_bot, | ||
double | thickmin, | ||
int | option, | ||
int | nz_ss, | ||
int | verbOption, | ||
int | iline_min, | ||
int | iline_max, | ||
int | xline_min, | ||
int | xline_max, | ||
double | modif_high, | ||
double | modif_low, | ||
double | modif_scale, | ||
int | codefmt, | ||
const NamingConvention & | namconv | ||
) |
Read the contents of a SEGY file
[in] | filesegy | Name of the SEGY file |
[in] | grid3D | Db containing the resulting 3-D grid |
[in] | surf2D | Db containing the top, Bottom and Reference surfaces This file is optional |
[in] | name_top | Rank of variable containing the Top Surface (or 0) |
[in] | name_bot | Rank of variable containing the Bottom Surface (or 0) |
[in] | thickmin | Minimum thickness (or 0) |
[in] | option | Flattening option: 0 no flattening; 1 flattening from top; -1 flattening from bottom -2 squeeze and stretch option 2 averaging from 3-D to 2-D |
[in] | nz_ss | Deprecated argument |
[in] | verbOption | Verbose option |
[in] | iline_min | Minimum Inline number included (if defined) |
[in] | iline_max | Maximum Inline number included (if defined) |
[in] | xline_min | Minimum Xline number included (if defined) |
[in] | xline_max | Maximum Xline number included (if defined) |
[in] | modif_high | Upper truncation (when defined) |
[in] | modif_low | Lower truncation (when defined) |
[in] | modif_scale | Scaling value (when defined) |
[in] | codefmt | Reading format |
[in] | namconv | Naming convention |
: In the case of Squeeze and Stretch (S&S), the number of layers
: is meaningless. It is fixed by the user, unless defined
: by the output grid (if flag_store == 1)
GSTLEARN_EXPORT SegYArg segy_array | ( | const char * | filesegy, |
DbGrid * | surf2D, | ||
const String & | top_name, | ||
const String & | bot_name, | ||
const String & | top_aux, | ||
const String & | bot_aux, | ||
double | thickmin, | ||
int | option, | ||
int | nz_ss, | ||
int | verbOption, | ||
int | iline_min, | ||
int | iline_max, | ||
int | xline_min, | ||
int | xline_max, | ||
double | modif_high, | ||
double | modif_low, | ||
double | modif_scale, | ||
int | codefmt | ||
) |
Read the contents of a SEGY file
[in] | filesegy | Name of the SEGY file |
[in] | surf2D | Db containing the top, Bottom and Reference surfaces This file is optional |
[in] | top_name | Name of variable containing the Top Surface (or "") |
[in] | bot_name | Name of variable containing the Bottom Surface (or "") |
[in] | top_aux | Name of auxiliary variable containing a Top (or "") |
[in] | bot_aux | Name of auxiliary variable containing a Top (or "") |
[in] | thickmin | Minimum thickness (or 0) |
[in] | option | Flattening option: 0 no flattening; 1 flattening from top; -1 flattening from bottom -2 squeeze and stretch option 2 averaging from 3-D to 2-D |
[in] | nz_ss | Number of layers for different options (see details) |
[in] | verbOption | Verbose option |
[in] | iline_min | Minimum Inline number included (if defined) |
[in] | iline_max | Maximum Inline number included (if defined) |
[in] | xline_min | Minimum Xline number included (if defined) |
[in] | xline_max | Maximum Xline number included (if defined) |
[in] | modif_high | Upper truncation (when defined) |
[in] | modif_low | Lower truncation (when defined) |
[in] | modif_scale | Scaling value (when defined) |
[in] | codefmt | Reading format |
In the case of Squeeze and Stretch (S&S), the number of layers
is meaningless. It is fixed by the user.
GSTLEARN_EXPORT Grid segy_summary | ( | const char * | filesegy, |
DbGrid * | surf2D, | ||
const String & | name_top, | ||
const String & | name_bot, | ||
double | thickmin, | ||
int | option, | ||
int | nz_ss, | ||
int | verbOption, | ||
int | iline_min, | ||
int | iline_max, | ||
int | xline_min, | ||
int | xline_max, | ||
double | modif_high, | ||
double | modif_low, | ||
double | modif_scale, | ||
int | codefmt | ||
) |
Read the contents of a SEGY file and returns the structure SegyRead which captures the main characteristics of the SEGY grid
[in] | filesegy | Name of the SEGY file |
[in] | surf2D | Db containing the top, Bottom and Reference surfaces This file is optional |
[in] | name_top | Rank of variable containing the Top Surface (or 0) |
[in] | name_bot | Rank of variable containing the Bottom Surface (or 0) |
[in] | thickmin | Minimum thickness (or 0) |
[in] | option | Flattening option: 0 no flattening; 1 flattening from top; -1 flattening from bottom -2 squeeze and stretch option 2 averaging from 3-D to 2-D |
[in] | nz_ss | Number of layers for different options (see details) |
[in] | verbOption | Verbose option |
[in] | iline_min | Minimum Inline number included (if defined) |
[in] | iline_max | Maximum Inline number included (if defined) |
[in] | xline_min | Minimum Xline number included (if defined) |
[in] | xline_max | Maximum Xline number included (if defined) |
[in] | modif_high | Upper truncation (when defined) |
[in] | modif_low | Lower truncation (when defined) |
[in] | modif_scale | Scaling value (when defined) |
[in] | codefmt | Reading format |
: In the case of Squeeze and Stretch (S&S), the number of layers
: is meaningless. It is fixed by the user, unless defined
: by the output grid (if flag_store == 1)