3D Kriging

Use the Voxel > New > Kriging menu option (geogxnet.dll(Geosoft.GX.VoxUtils.VoxelGrid;Run)*), to create a 3D voxel grid model from 3D data contained in a Geosoft Database (GDB file). The data to be gridded must have defined X, Y and Z fields that locate the data within a coordinate system in which Z coordinates are interpreted as positive up.

3D Kriging dialog options

Channel to grid

Select the name of the data column to be gridded in 3D. This channel can be either a regular channel, with one data value per row in the database, or an array channel. If it is an array channel, then the current "Z" channel should also be an array channel with the same number of columns, so that each data value is assigned the correct corresponding value of Z.

Script Parameter: GRIDVOX.CHAN

Output voxel name

Select the name of the new Voxel file. The default name is constructed from the database name and the data that is being gridded.

Script Parameter: GRIDVOX.VOX

Cell size

Specify a voxel cell size in the units of the X,Y,Z coordinate system of the data. The Calculate button right of the control will calculate a default value for your data based on the X,Y,Z spatial extents of the data. A volume is calculated from the extents. The cell size is calculated for a single cube, assuming the volume is divided into 10000 individual cubes. The value is rounded down to give a "nicer" value.

Note that, each halving of the cell size will result in an 8-fold increase in the time to both calculate and display the voxel model.

Script Parameter: GRIDVOX.CELLSIZE

[More]

Click the More button to display the Advanced and Variogram tabs.

Advanced

Cell size for Z

By default, the voxel cell sizes in the Z direction will be the same as the Cell size for the X and Y directions specified in the basic parameters. You can choose to have different Z cell size by specifying a value here.

Script Parameter: GRIDVOX.CELLSIZEZ

Blanking distance

Nodes in the voxel model that have no data within the Blanking distance of the node will be blank. The Blanking distance is denominated in by the "Cell size". The default is 4, which means that any voxel nodes that are not within 4 cells of observed data will be blank.

Note that if anisotropic parameters are defined (Strike weight or Dip weight greater the 1.0), the Blanking Distance will be adjusted based on the defined anisotropy. For example, if you have a strike weight of 4.0 and a Blank distance of 4, the distance in the direction of strike will be 16 voxel cells.

Script Parameters: GRIDVOX.BLANKDISTANCE

Log option

You can either grid the original data or its logarithmic (base 10) representation. Gridding the log of the data can be a very effective way to reduce distortion due to highly skewed data such as geochemical data.

The options are:

  • linear: grid the data as it is.
  • log, save as linear: grid the data in logarithmic space and clip all values less than ‘Log minimum’ to the ‘Log minimum’ value, then convert the data back to linear space before saving it to the grid file.
  • log-linear, save as linear: grid the data above the positive ‘Log minimum’ and below the negative ‘Log minimum’ in logarithmic space (flip the sign of the data originally in the negative range to take the logarithm then inherit back the sign of the original data; grid the conditioned data). After gridding, all cell values outside the ± ‘Log minimum’ range are converted back to linear space and scaled to maintain continuity at the boundary. Data within the ± ‘Log minimum’ range remains intact and is gridded in a linear sense.
    Finally, the linear representation of the data (in both ranges) is saved to the grid file.
  • log, save as log: same as ‘log, save as linear’ except that the grid values are kept in log space: the gridded values are saved to the grid file in their logarithmic representation.
  • log-linear, save as log: same as ‘log-linear, save as linear’ except that the grid values are not converted back from log space. The output grid is in logarithmic space with the large amplitude anomalies being somewhat moderated.

Script Parameter: GRIDVOX.LOG_OPTION
  linear: 0
  log, save as linear: -1
  log-linear, save as linear: -2
  log, save as log: 1
  log-linear, save as log: 2

Log minimum

If gridding in log space (see the Log options above), this parameter specifies the minimum value. The default is 1.

Script Parameter: GRIDVOX.LOG_MIN

Maximum radius
Minimum points
Maximum points

When calculating each voxel node, observed data will be searched out to the Maximum radius to find between the Minimum Points and the Maximum Points. The Maximum radius is specified as number of cells (using the Cell size).

If more than the maximum number of points are found for a particular search radius, only the closest points up to the maximum number of points will be used.

A voxel cell will be set to dummy if less than the minimum number of points can be found within the maximum radius. If you observe too many "holes" on your voxel, you can consider either reducing the Minimum points or increasing the Maximum radius.

Note that if anisotropic parameters are defined (Strike weight or Dip weight is greater then 1.0), the Maximum Radius will be adjusted to use the defined anisotropy. For example, if you have a strike weight of 4.0 and a Maximum Radius of 16, the radius in the direction of strike will be 64 grid cells.

The defaults are a maximum search radius 16 cells, and between 16 and 32 points.

Script Parameters:
GRIDVOX.MAXRADIUS
GRIDVOX.MINPOINTS
GRIDVOX.MAXPOINTS

Strike

Dip

Plunge

Strike weight

Dip plane weight

These parameters control the anisotropic behaviour of the voxel gridding process. In many, if not most, geologic situations, there is a natural bias (anisotropy) of the features of interest in the direction of geologic strike. These parameters allow you to specify the dominant geologic strike and define preferential weighting in the strike and dip directions. This effectively creates an "ellipsoid" with major axis in the direction of strike-plunge, and a minor-axis in the perpendicular to the strike-plunge and along the plane of dip.

Strike is in degrees (0-360) clockwise from the coordinate axis "Y" axis, which is often North.

Dip is in degrees from 0 to 180 degrees relative to the right perpendicular of Strike.

Plunge is the angle of plunge from horizontal and along the Strike-Dip plane, and can be between -90 and +90 degrees.

The Strike and Dip plane weights (>0.0) are the elliptical weighting (or preference) to apply along strike and down-dip respectively. The default value of 1.0 in both directions creates NO directional bias in the data. Typically, if your data is biased along strike and dip, set the weightings to 2.0 and 2.0. This doubles the importance of data along strike and dip. If your data has plunge, or is only strike-affected, set the strike weight to 2.0 and the dip weight to 1.0. You can adjust weighting to achieve a desired outcome by looking at results and a bit of experimentation.

A second and related use of these parameters is to correct for anisotropy in the observed sampling pattern. Statistical kriging works best when data is nominally evenly distributed. If you have data collected on lines at a high sample density relative to line separation (IP data comes to mind), you should set the strike direction to be perpendicular to the lines, set the strike weight to be the line separation divided by the along-line sample interval. For example, 100 metre lines with 25 metre samples along lines should have a strike weight of 4.0

Script Parameters:
GRIDVOX.STRIKE
GRIDVOX.DIP
GRIDVOX.PLUNGE
GRIDVOX.STRIKEWEIGHT
GRIDVOX.DIPWEIGHT

Variogram

The Variogram parameters enable you to control the variogram model that will be applied to the statistical calculations of each grid node. You are also able to view the Variogram and use it to define your own model and parameters.

Model

Select Variogram model to be used.

  • "Spherical" model (requires nugget, range and sill)

  • "Gaussian" model (requires nugget, range and sill)

  • "Exponential" model (requires nugget, range and sill)

  • "Power" model using power n (requires nugget, power and slope)

Script Parameter: GRIDVOX.MODEL.

Range

Range/Slope. For spherical, Gaussian and exponential models, the range is the distance at which the variogram model reaches the sill value. Beyond the range, the data is uncorrelated. The range must be entered for the spherical, Gaussian and exponential models. For the power model, this is the rate of climb, or slope for a linear model.

Script Parameter: GRIDVOX.RANGE

Sill

Sill. This is the level at which the variogram becomes uncorrelated, or goes flat. Beyond the (range, sill) point, the variogram is flat. The sill must be specified for the spherical, power and Gaussian models.

Script Parameter: GRIDVOX.SILL

Nugget

The nugget for all models. The nugget is the average error in each data point, and is indicated by the intersection of the variogram model with the h=0 axis. The default is 0.

Script Parameter: GRIDVOX.NUGGET

Strike

Dip

Plunge

Strike weight

Dip plane weight

These parameters control the anisotropic behaviour of the voxel gridding process. In many, if not most, geologic situations, there is a natural bias (anisotropy) of the features of interest in the direction of geologic strike. These parameters allow you to specify the dominant geologic strike and define preferential weighting in the strike and dip directions. This effectively creates an "ellipsoid" with major axis in the direction of strike-plunge, and a minor-axis in the perpendicular to the strike-plunge and along the plane of dip.

Strike is in degrees (0-360) clockwise from the coordinate axis "Y" axis, which is often North.

Dip is in degrees from 0 to 180 degrees relative to the right perpendicular of Strike.

Plunge is the angle of plunge from horizontal and along the Strike-Dip plane, and can be between -90 and +90 degrees.

The Strike and Dip plane weights (>0.0) are the elliptical weighting (or preference) to apply along strike and down-dip respectively. The default value of 1.0 in both directions creates NO directional bias in the data. Typically, if your data is biased along strike and dip, set the weightings to 2.0 and 2.0. This doubles the importance of data along strike and dip. If your data has plunge, or is only strike-affected, set the strike weight to 2.0 and the dip weight to 1.0. You can adjust weighting to achieve a desired outcome by looking at results and a bit of experimentation.

A second and related use of these parameters is to correct for anisotropy in the observed sampling pattern. Statistical kriging works best when data is nominally evenly distributed. If you have data collected on lines at a high sample density relative to line separation (IP data comes to mind), you should set the strike direction to be perpendicular to the lines, set the strike weight to be the line separation divided by the along-line sample interval. For example, 100 metre lines with 25 metre samples along lines should have a strike weight of 4.0

Script Parameters:
GRIDVOX.STRIKE
GRIDVOX.DIP
GRIDVOX.PLUNGE
GRIDVOX.STRIKEWEIGHT
GRIDVOX.DIPWEIGHT

[View Variogram]

Click the View Variogram button to create a plot of the Variogram of the data together with the model parameters as defined here. Any parameters that are not defined will be calculated from the data based on a fitting algorithm for each model. You will typically have to adjust the automatic parameters manually to better fir your own data model.

Note that the Variogram is calculated by taking into account the bias implied by the weighting along strike and dip. Changing the weighting will change the Variogram.

Application Notes

*The GX.NET tools are embedded in the geogxnet.dll file located in the "...\Geosoft\Desktop Applications \bin" folder. If running this GX interactively, bypassing the menu, first change the folder to point to the "bin" directory, then supply the GX.NET tool in the specified format. See the topic Run GX for more details on running a GX.NET interactively.

This implementation of 3D Kriging is intended to provide a simple voxel visualization of 3D data. Such voxels can be easily visualized and isosurfaces can be calculated and displayed in 3D. However, the 3D Kriging methods used are quite limited compared to a full geostatistical 3D Kriging package like GSLIB (www.gslib.com). More comprehensive 3D Kriging and statistical analysis is required for activities like ore estimation and mine planning.

Statistical kriging works best when data is evenly distributed throughout the volume being gridded. However, data is often highly sampled along lines (2-D ground-penetrating geophysical surveys, such as IP, or drilling data for example). The first step in the process is to average data at the voxel cell size as defined by the first cell size parameter. Using a larger voxel cell size will increase the averaging effect, while a smaller cell size will show more detail, but potentially more noise in highly anisotropic data. The strike direction and strike weight are important parameters because they allow you to minimize the effect of such sampling in the direction of strike, or perpendicular to the direction of greater sampling.