GXGU class¶
- class GXGU(handle=0)[source]¶
GXGU class.
Not a class. A catch-all group of functions performing various geophysical processes, including the calculation of simple EM model responses, certain instrument dump file imports, and 2D Euler deconvolution.
- classmethod despike_em_array(vv_in, vv_noise, vv_out, num_removed)[source]¶
Despike a time-series with individual noise levels
- Parameters:
New in version 9.5.
License: Geosoft End-User License
Note: Remove spikes from a single EM time-series decay curve. Each point has its own noise level. The algorithm is to be determined.
- classmethod dipole_mag(xyz_file, depth, inc, nx, ny, dx, dy)[source]¶
Calculate a dipole magnetic field into XYZ file
- Parameters:
xyz_file (str) – sXYZ
depth (float) – rDepth
inc (float) – rInc
nx (int) – iNX
ny (int) – iNY
dx (float) – rDX
dy (float) – rDY
New in version 5.1.6.
License: Geosoft End-User License
- classmethod em_half_space_inv(coil_spacing, coil_frequency, coil_configuration, tol, threshold, vv_height, vv_in_phase, vv_quadrature, vv_res, inv, err, start_val)[source]¶
Inverts EM responses to the best halfspace model.
- Parameters:
coil_spacing (float) – Coil spacing: error if == 0
coil_frequency (float) – Frequency
coil_configuration (int) – EMLAY_GEOMETRY constants
tol (float) – Fractional error in best fit resistivity
threshold (float) – Don’t invert values below this
vv_height (GXVV) – Height above ground
vv_in_phase (GXVV) – In-phase part (ppm)
vv_quadrature (GXVV) – Quadrature part (ppm)
vv_res (GXVV) – On return - inverted halfspace resistivities
inv (int) – EM_INV constants
err (int) – EM_ERR constants
start_val (float) – Starting value for inversion (can be
rDUMMY
)
New in version 5.0.
License: Geosoft End-User License
- classmethod em_half_space_vv(coil_spacing, coil_frequency, coil_configuration, rvv, hvv, ivv, qvv)[source]¶
EM Halfspace forward model response.
- Parameters:
coil_spacing (float) – Coil separation
coil_frequency (float) – Frequency
coil_configuration (int) – EMLAY_GEOMETRY constants
rvv (GXVV) – Input resistivity values
hvv (GXVV) – Input height values
ivv (GXVV) – Output In-phase
qvv (GXVV) – Output Quadrature-phase
New in version 5.0.
License: Geosoft End-User License
- classmethod em_layer(coil_spacing, coil_frequency, coil_height, coil_configuration, n_layers, vv_thickness, vv_sigma, in_phase, quadrature)[source]¶
Calculate the EM response of a layered earth model.
- Parameters:
coil_spacing (float) – Coil spacing, error if == 0
coil_frequency (float) – Coil frequency
coil_height (float) – Coil height above layer [0]
coil_configuration (int) – EMLAY_GEOMETRY constants
n_layers (int) – Number of layers (including lower halfspace)
vv_thickness (GXVV) – sNLayer-1 thicknesses [0] to [sNLayer-2]
vv_sigma (GXVV) – sNLayer conductivities [0] to [sNLayer-1]
in_phase (float_ref) – On return - in-phase part (ppm)
quadrature (float_ref) – On return - quadrature part (ppm)
- Returns:
0 of OK 1 if some error
- Return type:
int
New in version 5.0.
License: Geosoft End-User License
- classmethod em_plate(strike_length, dip_length, strike, dip, plunge, x_off, y_off, z_off, plate_depth, n_spons, sig_tvv, tx_orient, tx_freq, tx_dt, params, xivv, yivv, zivv, xqvv, yqvv, zqvv)[source]¶
Calculate the conductance of a thin plate model.
- Parameters:
strike_length (float) – Plate strike length (m)
dip_length (float) – Plate dip length (m)
strike (float) – Plate strike (degrees) from X axis
dip (float) – Plate dip (degrees) from horizontal
plunge (float) – Plate plunge (degrees) from horizontal
x_off (float) – Rx offset in X from Tx
y_off (float) – Rx offset in Y from Tx
z_off (float) – Rx offset in Z from Tx (+’ve down)
plate_depth (float) – Depth below Tx
n_spons (int) – EMPLATE_DOMAIN constants
sig_tvv (GXVV) – The plate conductances (
GXVV
length <= 100)tx_orient (int) – EMPLATE_TX constants
tx_freq (float) – Tx frequency (for
EMPLATE_TIME
)tx_dt (float) – Tx time window spacing (for
EMPLATE_TIME
)params (float) – The frequency/time parameters (SI units: f[Hz] or t[s])
xivv (GXVV) – On return - X in-phase part (ppm)
yivv (GXVV) – On return - Y in-phase part (ppm)
zivv (GXVV) – On return - Z in-phase part (ppm)
xqvv (GXVV) – On return - X quadrature part (ppm)
yqvv (GXVV) – On return - Y quadrature part (ppm)
zqvv (GXVV) – On return - Z quadrature part (ppm)
- Returns:
0 of OK 1 if some error
- Return type:
int
New in version 5.0.
License: Geosoft End-User License
- classmethod gen_ux_detect_symbols_group_name(target_gdb, targets, ostr)[source]¶
Generate a group name string for UX-Detect symbols
- Parameters:
target_gdb (str) – Input Targets database name
targets (str) – Input Targets group (line) name
ostr (str_ref) – Output group name string
New in version 6.3.
License: Geosoft Open License
Note: Start a new group for the symbols in the UX-Detect system. The Target GDB is often in the form “GDB_Targets”, where “GDB” is the original data. Cut off the part including the underscore when creating the map, so you don’t get map group Names like “SYMBOLS_UxData_Targets_Targets”.
See also
- classmethod geometrics2_db(db, ra, log_wa, survey_mode, line_dir, corner, bi_uni, corner_x, corner_y, mark_space, line_space)[source]¶
Convert a Geometrics STN file to a database.
- Parameters:
survey_mode (int) – Simple mode (1) or Mapped mode (2)
line_dir (int) – Survey line orientation: North-south - 0 East-west - 1
corner (int) – Starting survey position: SW - 0, NW - 1, SE - 2, NE - 3,
bi_uni (int) – Bidirectional (0) or Unidirectional (1)
corner_x (float) – Starting position X
corner_y (float) – Starting position Y
mark_space (float) – Mark spacing
line_space (float) – Line spacing
New in version 5.0.
License: Geosoft End-User License
Note: Assumes that the database is new and empty. If not, existing channels with names X, Y, Mag1, Mag2, Time, Date, and Mark will deleted and then created. Existing lines will be erased and then created if they are the same as the new ones.
- classmethod geometrics2_tbl(ra, wa, log_wa)[source]¶
Convert a Geometrics station file (STN) to a table file (TBL)
- Parameters:
New in version 5.0.
License: Geosoft End-User License
- classmethod geometrics_qc(wa, line, in_vv, tol, min_coord, max_coord, out_vv, flag_vv)[source]¶
Correct reading positions in a database.
- Parameters:
wa (GXWA) – Output error log file
line (str) – Database line number. For output to log file only
tol (float) – Tolerance defined as percentage, say 50.0 means 50%. Must be >=0.0 Lower bound = (Normal Density) - (Normal Density)*Tolerance Upper bound = (Normal Density) + (Normal Density)*Tolerance
min_coord (float) – Minimum coordinate (X or Y)
max_coord (float) – Maximum coordinate (X or Y)
New in version 5.0.
License: Geosoft End-User License
Note: There are six cases to consider:
Case
Flag
Solutions
Symptoms
CASE 1A:
0
No correction
Recorded and actual Line lengths same Reading densities vary slightly (passed the tolerance test)
CASE 1B
-1
No correction
Line lengths same Reading densities vary and cannot pass the tolerance test
CASE 2A
1
Corrected by extension
Recorded line length too short Possible high readings in segment(s) Corrected (by extending) and actual lengths become the same
CASE 2B
2
Corrected by interpolation
Recorded line length too short Possible high readings in segment(s) Corrected (by extending) and actual lengths are not same. Interpolation is then applied
CASE 3A
1
Corrected by shifting or (shrank)
Recorded line length too long Possible low readings in segment(s) Corrected (by shifting) and actual lengths are same
CASE 3B
2
Corrected by interpolation
Recorded line length too long Possible low readings in segment(s) Corrected (by shifting) and actual lengths are not same. Interpolation is then applied
TERMINOLOGY:
- Segments
A segment refers to the distance and its contents between two adjacent fiducial markers
- Normal Density
The density (number of readings) shared by the segments in a survey line. The number of segments with the density is greater than the number of segments having a different density in a line.
- Tolerance and Bound:
Tolerance is defined as a percentage, say
50% (=0.5)
. Based on the tolerance, a lower bound and upper boundcan be defined:
Lower bound = (Normal Density) - (Normal Density)*Tolerance Upper bound = (Normal Density) - (Normal Density)*Tolerance
Segments will pass the tolerance test if the number of readings falls within the Lower and Upper Bounds.
- classmethod geonics3138_dump2_db(db, r_ah, r_ad, log_wa, line_mult, stat_mult)[source]¶
Convert a Geonics EM31/EM38 file in dump format to a database.
- Parameters:
New in version 5.0.
License: Geosoft End-User License
Note: Assumes that the database is new and empty. If not, existing channels with names X, Y, Station, Conductivity, Inphase, Quadrature, and Time will deleted and then created. Existing lines will be erased and then created if they are the same as the new ones.
- classmethod geonics61_dump2_db(db, ra, log_wa, line_mult, stat_mult)[source]¶
Convert a Geonics EM61 file in dump format to a database.
- Parameters:
New in version 5.0.
License: Geosoft End-User License
Note: Assumes that the database is new and empty. If not, existing channels with names X, Y, Station, Conductivity, Inphase, Quadrature, and Time will deleted and then created. Existing lines will be erased and then created if they are the same as the new ones.
- classmethod geonics_dat2_db(db, ra, log_wa, line_mult, stat_mult)[source]¶
Convert a Geonics EM31/EM38/EM61 file in
GXDAT
format to a database.- Parameters:
New in version 5.0.
License: Geosoft End-User License
Note: Assumes that the database is new and empty. If not, existing channels with names X, Y, Station, Conductivity, Inphase, Quadrature, and Time will deleted and then created. Existing lines will be erased and then created if they are the same as the new ones.
- classmethod gr_curv_cor(vv_elev, vv_lat, vv_boug)[source]¶
Gravity Curvature (Bullard B) Correction to Bouguer anomaly
- Parameters:
New in version 5.0.
License: Geosoft End-User License
- classmethod gr_curv_cor_ex(vv_elev, vv_lat, vv_boug, rho)[source]¶
Gravity Curvature (Bullard B) Correction to Bouguer anomaly, with user input cap density.
- Parameters:
New in version 8.0.1.
License: Geosoft End-User License
- classmethod gr_demvv(im_gdem, vv_x, vv_y, vv_z)[source]¶
Get gravity DEM grid
GXVV
for Bouguer anomaly- Parameters:
New in version 6.2.
License: Geosoft End-User License
- classmethod gr_test(xm, ym, zm, vv_x, vv_y, vv_g3, vv_g4, vv_g1, vv_g2)[source]¶
Test triangular prism gravity calculation
- Parameters:
xm (float) – dXm - model dimension x
ym (float) – dYm - model dimension y
zm (float) – dZm - model depth
vv_x (GXVV) – VVx - stations x
vv_y (GXVV) – VVy - stations y
vv_g3 (GXVV) – VVg3 - 2 triangular prism gravity results
vv_g4 (GXVV) – VVg4 - regtangular prism gravity results
vv_g1 (GXVV) – VVg1 - lower triangular prism gravity results
vv_g2 (GXVV) – VVg2 - upper triangular prism gravity results
New in version 5.1.4.
License: Geosoft End-User License
- classmethod gravity_still_reading_correction(db, grav_in, date, time, still, grav_out)[source]¶
Gravity Still Reading Correction on selected lines.
- Parameters:
db (GXDB) – Database
grav_in (int) – Input gravity channel handle [
DB_LOCK_READONLY
]date (int) – Input date channel handle [
DB_LOCK_READONLY
]time (int) – Input time channel handle [
DB_LOCK_READONLY
]still (str) – Still readings file
grav_out (int) – Output gravity channel handle [
DB_LOCK_READWRITE
]
New in version 8.5.
License: Geosoft End-User License
- classmethod gravity_still_reading_database_correction(db, grav_in, date, time, stillDB, station_channel, date_channel, time_channel, readings_channel, grav_out)[source]¶
Gravity Still Reading Correction on selected lines, using a still readings database
- Parameters:
db (GXDB) – Database
grav_in (int) – Input gravity channel handle [
DB_LOCK_READONLY
]date (int) – Input date channel handle [
DB_LOCK_READONLY
]time (int) – Input time channel handle [
DB_LOCK_READONLY
]stillDB (GXDB) – Still readings database
station_channel (str) – station channel in still readings database
date_channel (str) – date channel in still readings database
time_channel (str) – time channel in still readings database
readings_channel (str) – readings (gravity) channel in still readings database
grav_out (int) – Output gravity channel handle [
DB_LOCK_READWRITE
]
New in version 9.7.
License: Geosoft End-User License
- classmethod import_daarc500_ethernet(file, output, bytes)[source]¶
Import Ethernet data from the RMS Instruments DAARC500.
- Parameters:
file (str) – File to import
output (str) – Output binary file
bytes (int_ref) – Returned number of bytes per block
New in version 7.2.
License: Geosoft Open License
Note: Imports Ethernet data recorded by the RMS Instruments DAARC500 instrument, and outputs the data to a new binary file, returning the number of bytes per block, to make it easier to import the data using the regular binary import.
- classmethod import_daarc500_serial(file, channel, output, bytes)[source]¶
Import Serial data from the RMS Instruments DAARC500.
- Parameters:
file (str) – File to import
channel (int) – Channel to import, 1-8
output (str) – Output binary file
bytes (int_ref) – Returned number of bytes per block
New in version 7.2.
License: Geosoft Open License
Note: Imports a single channel of the up to 8 serial data channels recorded by the RMS Instruments DAARC500 instrument, and outputs the data for that channel to a new binary file, returning the number of bytes per block, to make it easier to import the data using the regular binary import.
- classmethod import_p190(db, file, rec_type, wa)[source]¶
Import navigation data in the P190 format.
- Parameters:
New in version 6.3.
License: Geosoft End-User License
Note: Imports the data, and, if projection information is included set the “X” and “Y” channel projection info. (Note: the last file imported always takes precedence). Different record types are imported to separate lines, but in the same order as in the file. Data in existing lines is overwritten. If the record type is specified, only records beginning with that letter are imported, otherwise all records (except for the header “H” records) are imported.
- is_null()[source]¶
Check if this is a null (undefined) instance
- Returns:
True if this is a null (undefined) instance, False otherwise.
- Return type:
bool
- classmethod lag_daarc500_gps(mag_fid_vv, mag_event_vv, gps_fid_vv)[source]¶
Lag the GPS fid values for the DAARC500 import.
- Parameters:
New in version 7.2.
License: Geosoft Open License
Note: The fiducial times recorded for the GPS in the RMS Instrument DAARC500 are delayed, and associated with the “wrong” fid value. They should actually be moved to the previous fid value in the mag data where the event flag is non-zero.
- classmethod magnetic_tilt_depth(tilt_deriv_grid, horiz_deriv_grid, database)[source]¶
Calculate the depth of magnetic sources based on the tilt depth method by Ahmed Salem et al.
- Parameters:
tilt_deriv_grid (str) – Tilt derivative grid
horiz_deriv_grid (str) – Horizontal derivative grid
database (str) – Output database name (will overwrite existing)
New in version 9.9.
License: Geosoft End-User License
Note: Tilt-Depth is a magnetic depth estimation method that lends itself to rapid mapping of sedimentary basins without the complexity of unraveling the depth solutions from methods that give multiple solutions (e.g. Euler deconvolution). Reference: Sedimentary basins reconnaissance using the magnetic Tilt-Depth method by Ahmed Salem et al. Exploration Geophysics, 2010, 41, 198-209. Rick Blakely & Gerry Connard have extended and improved this method, as have other authors. The 0-value contour of the tilt derivative grid is sampled to a new database, and the horizontal derivative grid is sampled at those locations. The inverse of the horizontal derivative values are output to the Tilt_Depth channel.
- classmethod maxwell_plate_corners(x, y, z, dip, dip_dir, plunge, length, width, x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4)[source]¶
Calculate the corner point locations for a Maxwell Plate.
- Parameters:
x (float) – Top-center point, X
y (float) – Top-center point, Y
z (float) – Top-center point, Z
dip (float) – Dip
dip_dir (float) – Dip-direction
plunge (float) – Plunge
length (float) – Length
width (float) – Width (height)
x1 (float_ref) – [returned] Corner 1 X
y1 (float_ref) – [returned] Corner 1 Y
z1 (float_ref) – [returned] Corner 1 Z
x2 (float_ref) – [returned] Corner 2 X
y2 (float_ref) – [returned] Corner 2 Y
z2 (float_ref) – [returned] Corner 2 Z
x3 (float_ref) – [returned] Corner 3 X
y3 (float_ref) – [returned] Corner 3 Y
z3 (float_ref) – [returned] Corner 3 Z
x4 (float_ref) – [returned] Corner 4 X
y4 (float_ref) – [returned] Corner 4 Y
z4 (float_ref) – [returned] Corner 4 Z
New in version 6.1.
License: Geosoft End-User License
Note: This routine calculates the corner locations of plates defined in the Maxwell Plate program, given the top-center location and plate geometry parameters.
- classmethod scan_daarc500_ethernet(file, type, items)[source]¶
Scan Ethernet data from the RMS Instruments DAARC500.
- Parameters:
New in version 7.2.
License: Geosoft Open License
Note: Scans the file to see what data type is in the Ethernet file. Currently only detects GR820 types.
- classmethod scan_daarc500_serial(file, vv_type, vv_items)[source]¶
Scan Serial data from the RMS Instruments DAARC500.
- Parameters:
New in version 7.2.
License: Geosoft Open License
Note: Scans the file to see which of the 8 serial channels were used to store data.
- classmethod vv_euler(vv_xin, vv_yin, img_data, imgx, imgy, imgz, vv_xout, vv_yout, vv_depth, vvdc, vv_zer, vvx_yer, wnd_sz, si, wt_pow, x_yfit)[source]¶
Get Euler solutions of depth from VVs and grids.
- Parameters:
img_data (GXIMG) – Field grid
imgx (GXIMG) – dF/dX grid
imgy (GXIMG) – dF/dY grid
imgz (GXIMG) – dF/dZ grid
wnd_sz (int) – Window size
si (float) – Structure index
wt_pow (float) – Weighting factor
x_yfit (int) – PEAKEULER_XY constants
New in version 5.0.
License: Geosoft End-User License
Note: All VVs must be REAL
The output X and Y values are the same as the inputs, except if
PEAKEULER_XY_FIT
is selected. All other output values are set to dummy if:The input X or Y is a dummy
The derived window size is a dummy.
The derived solution is outside the range
The solution is invalid (singular matrix)
- classmethod vv_euler2(vv_xin, vv_yin, img_data, imgx, imgy, imgz, vv_xout, vv_yout, vv_depth, vvdc, vv_zer, vvx_yer, vv_wnd, si, wt_pow, x_yfit)[source]¶
Get Euler solutions of depth from VVs and grids (method 2).
- Parameters:
New in version 5.0.
License: Geosoft End-User License
Note: All VVs must be REAL
See also
EM_ERR constants¶
Error Scaling
EM_INV constants¶
Type of Inversion
EMPLATE_DOMAIN constants¶
Type of Domain
EMPLATE_TX constants¶
Orientation
GU_DAARC500_DATATYPE constants¶
Supported serial data types for import
PEAKEULER_XY constants¶
Fit Options