Free Utility programs

Overview

This page contains basic tensor mesh utilities and some GUIs for interacting with UBC-GIF modeling codes. The following utilities can be downloaded from this page:

2D models/meshes 3D models/meshes | MAG3D | GRAV3D | DCIP2D | EM1DFM | EM1DTM | MTZ3Dinv

THE ACTUAL MODELING CODES ARE NOT DOWNLOADED HERE. MODELING CODES ARE ONLY AVAILABLE THROUGH COMMERCIAL OR ACADEMIC LICENSES!

Distribution Policy

The below utility programs (and UBC-GIF graphical user interfaces) are freely available. These are NOT the inversion or modelling programs - they are provided to assist with running the forward modelling and inversion codes, and with inspecting data and models. Industry standard outputs can not be produced, nor are the codes designed for managing geophysical data sets or for doing other forms of data processing. Please see the page on licensing of inversion and forward modelling codes. In short:

  • All programs are copyright protected as indicted in the Help menu, About option of each program. They are freely available, BUT CODES MUST NOT BE RE-DISTRIBUTED.
  • These programs are not guaranteed in any way.
  • We can not provide support for their use.
  • Source code is NOT available.
  • Utilities and documentation will be upgraded periodically without announcement so please check back occasionally for newer versions.

Utility installation notes

  • Any graphical utilities are written for the Windows operating system.
  • Utility programs are provided in zipped archives via links in the table below.
  • Each utility code is a single executable program for the Windows operating system.
  • To install, simply extract the executable programs from the archive and place them in a suitable subdirectory of your hard drive.
  • All UBC-GIF programs that are expected to work together (forward modelling, inversion, and graphical utilities) must reside within the same sub-directory.
  • Note that only UBC-GIF input and output file formats are supported; see relevant documentation located on the pages of each main code.

 

Tidbits of useful information

  • The version of licensed code (or the build date of utilities) can be found in the program's Help menu, About option.
  • Utility codes may be updated. Only the most recent versions will be available.
  • No provisions are included for "industry standard" hard copy output. However, all images can be saved as bitmaps to the Windows clip-board for pasting into documents.
  • We are interested in your comments (good or bad) with respect to the forward modelling, inversion, or utility codes. Not all suggestions provided by users can be implemented, but we will consider suggestions as codes get upgraded. You can pass these along via email.
  • For frequently asked questions, and good advice, see the FAQ page.

 

2D Models and Meshes

  • Create a cell-centred file with x,z, and values of a 2D model (mod2xyz: x86)

    • Description: A command line utility for converting 2D model and mesh files into a single XYZ file with model cell values located at the centres of cell locations.
    • Usage: mod2xyz meshFile modelFile outfile.xyz
    • Help: mod2xyz
  • Create a 2D model from blocks (blk2cell: x86 x64)

    • Description: A command line utility to creates a 2D model with n number of blocks in a constant background from an input file.
    • Usage: blk2cell meshFile blk2cell.inp outModel
    • Help: blk2cell -inp
  • Smooth the model (smooth2d: x86 x64)

    • Description: Make a 2D model smoother by assigning each cell the average of 3x3 cells that surround it. Cycles is the number of times the smoothing will be performed.
    • Usage: smooth2d mesh inModel outModel cycles
    • Help: smooth2d
  • Create a weights file from topography and/or and input model (find_edges: x86 x64)

    • Description: Create a weights file for a 2D model. 
    • Usage: find_edges inputFile
    • Help: find_edges

 

3D Models and Meshes

  • View meshes and models (meshTools3d: x86 x64)

    • Description: For viewing 3D models that are represented by a rectangular mesh in the UBC-GIF format, with optional topography. Functions include mesh construction, display via slices (in either dimension or diagonally) and isosurfaces (positive or negative), overlay of surface data as a transparent colour contour map, rotation, animation of views, block model construction, and (if forward codes are licensed and pathed) calling of forward 3D magnetics or 3D gravity codes. 
    • Usage (one model): meshTools3d "meshFile" "modelFile" [\log] [\octree] [\NOBANNER]
    • Usage (two models): meshTools3d "meshFile" "modelFile++modelFile" [\log] [\mod2log] [\octree] [\NOBANNER]
    • Help: Open meshTools3d and look under the Help menu.
  • Create a cell-centred file with x,y,z, and values of a 3D model (mod2xyzval: x86 x64)

    • Description: A command line utility used to convert a 3D model file into a file in XYZVal format that can be input into users' plotting utilities. The XYZVal file has four columns (x,y,z,v), where xy, and z is the centre of the cell and v is the property value of the corresponding cell.
    • Usage: mod2xyzval mesh model file.xyz
    • Help: mod2xyzval
  • Create a 3D model from blocks (blk3cell: x86 x64)

    • Description: A command line utility to creates a 3D model with n number of blocks in a constant background from an input file.
    • Usage: blk3cell mesh blk3cell.inp outModel
    • Help: blk3cell
  • Interpolate models from one mesh to another (interpolate_model: x86 x64)

    • Description: This command line utility interpolates a model on one 3D mesh onto a second 3D mesh. The user has the choice between smooth  (SMOOTH) interpolation or blocky interpolation (NOT_SMOOTH) and topography is optional.  The interpolation can be done in either log domain (LOG), or linear (LIN).
    • Usage: interpolate_model inMesh1 inMesh2 inModel outModel SMOOTH|NOT_SMOOTH LOG|LIN [topo]
    • Help: interpolate_model

 

MAG3D Utility Codes

  • Gravity/magnetics data viewer (gm-data-viewer: x86 x64)

    • Description: View magnetic data (in GIF format) as colour contour plots and create a line profile display in any direction from the map. Also can add noise or assigns errors to data. NOTE: This is the same program found in under the GRAV3D utility codes below (works for both magnetics and gravity).
    • Usage: gm-data-viewer dataFile [/pre or fileName]
    • Help: Open gm-data-viewer and look under the Help menu.
  • MAG3D v5.0 GUI (Windows/Linux: x64)

    • Description: GUI to aid users in using MAG3D v5.0. Double click on the exectuble .jar file in Windows or run through java in linux (see usage below). The user should have an updated version of Java (1.7). Click here to see if you need to update your Java. Does not work on previous versions of MAG3D.
    • Linux usage: java -jar mag3d-gui.jar
  • MAG3D v6.0 GUI (Windows/Linux: x64)

    • Description: GUI to aid users in using MAG3D v6.0. Double click on the exectuble .jar file in Windows or run through java in linux (see usage below). The user should have an updated version of Java (1.7). Click here to see if you need to update your Java. Does not work on previous versions of MAG3D.
    • Linux usage: java -jar mag3d-gui.jar

 

GRAV3D Utility Codes

  • Gravity/magnetics data viewer (gm-data-viewer: x86 x64)

    • Description: View gravity data (in GIF format) as colour contour plots and create a line profile display in any direction from the map. Also can add noise or assigns errors to data. NOTE: This is the same program found in under the MAG3D utility codes above (works for both magnetics and gravity).
    • Usage: gm-data-viewer dataFile [/pre or fileName]
    • Help: Open gm-data-viewer and look under the Help menu.
  • GRAV3D v5.0 GUI (Windows/Linux: x64)

    • Description: GUI to aid users in using GRAV3D v5.0. Double click on the exectuble .jar file in Windows or run through java in linux (see usage below). The user should have an updated version of Java (1.7). Click here to see if you need to update your Java. Does not work on previous versions of GRAV3D.
    • Linux usage: java -jar grav3d-gui.jar
  • GRAV3D v6.0 GUI (Windows/Linux: x64)

    • Description: GUI to aid users in using GRAV3D v6.0. Double click on the exectuble .jar file in Windows or run through java in linux (see usage below). The user should have an updated version of Java (1.7). Click here to see if you need to update your Java. Does not work on previous versions of GRAV3D.
    • Linux usage: java -jar grav3d-gui.jar

 

DCIP2D Utility Codes

  • DCIP2D v5.0 GUI (Windows/Linux: x64)

    • Description: GUI to aid users in using DCIP2D v5.0 (e.g., works for both ipinv2d and dcinv2d). Double click on the exectuble .jar file in Windows or run through java in linux (see usage below). The user should have an updated version of Java (1.7). Click here to see if you need to update your Java. NOTE: Does not work on previous versions of DCIP2D.
    • Linux usage: java -jar dcip2d-gui.jar
  • Download all the DCIP2D v5.0 utilities (x86 x64)

    • Description: Contains the following executables (also found on this page): smooth2d, obsnois, find_edges, dcip2d-model-viewer, dcip2d-model-maker, dcip2d-data-viewer, and blk2cell.
  • Data viewer (dcip2d-data-viewer: x86 x64)

    • Description: Displays observed data as a pseudosection and optionally a second pseudosection representing either the predicted data, the data error map, or the difference between observed and predicted data normalized by standard deviation. The image can be adjusted or copied and data errors can be specified globally or individually. The usage is below. The topography file, if given, must be surrounded by quotation marks. The "/pre" options loads the file ipinv3d.pre or dcinv3d.pre.
    • Usage DC: dcip2d-data-viewer dataFile  /dc  [/topo="topoFile"]  [/pre]
    • Usage IP: dcip2d-data-viewer dataFile  /ip  [/topo="topoFile"]  [/pre]
    • Help: Open dcip2d-data-viewer and look under the Help menu.
  • Model viewer (dcip2d-model-viewer: x86 x64)

    • Description: Displays models of the earth recovered by the DCIP2D inversion process and optionally a graph of the convergence behaviour of the process. The image can be manipulated, or copied, but there are no options for editing these results. The optional "/conv" command loads the convergence curves from dcinv3d.out or ipinv3d.out.
    • Usage: dcip2d-model-viewer meshFile modelFile [/ip]  [/conv]
    • Help: Open dcip2d-model-viewer and look under the Help menu.
  • Model maker (dcip2d-model-maker: x86 x64)

    • Description: A dialogue appears when first started. These parameters define the model space (x1 = left edge, x2 = right edge, depth, log of the background conductivity in mS/m, background chargeability in your chosen units.) Spatial dimensions are in any units you like, but the resulting resistivities etc. will be in the same units (e.g., dimensions in feet will result in resistivities of Ohm-feet). Consequently, it is advisable to use metres.
    • Usage: dcip2d-model-maker
    • Help: Open dcip2d-model-viewer and look under the Help menu.
  • Add noise or assign standard deviations (obsnois: x86 x64)

    • Description: Assigns standard deviations and optionally contaminate the data with Gaussian noise. The file type must be specified using LOC_X (no z-column in file) or LOC_XZ (contains z column). The user has the choice of ADD_SD (add the standard deviation column) or ADD_NOISE (contaminate the data with Gaussian noise and adds a standard deviation column). The standard deviation is calculated by sd = abs(data)*percent + floor. The noisy data is contaminated by newData = data + sd*r where r is a random Gaussian value. The percent value is a fraction (e.g., 5% is 0.05).
    • Usage: obsnois inFile outFile percent floor [LOC_X | LOC_XZ] [ADD_NOISE | ADD_SD]
    • Help: obsnois

 

EM1DFM Utility Codes

  • Inversion GUI (EM1DFMgui: x86)

    • Description: A graphical user interface (GUI) designed to aid the user in carrying out 1D frequency-domain electromagnetic inversions with em1dfm.
    • Usage: em1dgui
    • Help: Open em1dgui and look under the Help menu.
  • Conversion of data file from columns to EM1DFM observations file (lodi: x86)

    • Description: Takes a data file formatted with the data for each sounding location on a single line with each column a datum at a different frequency or transmitter-receiver combination. The name of the control file MUST be "lodi.in".
    • Usage: lodi [lodi.in]
    • Help: PDF (42 KB)
  • Conversion of EM1DFM observations file to data file (noci: x86)

    • Description: Converts a predicted data file (and an observations file, but ignoring the uncertainty information) from program EM1DFM into a formatted with the data for each sounding location on a single line with each column a datum at a different frequency or transmitter-receiver combination. The name of the columns file is hard-wired to be "noci.out".
    • Usage: noci dataFile
    • Help: No documentation is provided for this utility 
  • Conversion of the inversion output into a 3D model file (em1d3d: x86)

    • Description: Takes an EM1DFM output file that has soundings gathered at many locations over an area, and uses the 1D results to build a 3D volume with pohysical properties interpolated onto a 3D mesh that can be viewed using MeshTools3D. The usage is below. The dx and dy are cell widths of the mesh. The optional "1" is a flag to use a log scale.
    • Usage: em1d3d inFile outFile dx dy [1]
    • Help: em1d3d

 

EM1DTM Utility Codes

  • Inversion GUI (EM1DTMgui: x86)

    • Description: A graphical user interface (GUI) designed to aid the user in carrying out 1D frequency-domain electromagnetic inversions with em1dfm.
    • Usage: EM1DTMgui
    • Help: Open em1dgui and look under the Help menu.
  • xyz2td1d.exe (x86)

    • Description: Takes an XYZ-columns-like data file formatted with the data for each sounding location on a single line of the file and with each column a datum at a different delay time or receiver orientation/location and produces a file appropriate for input to program EM1DTM.
    • Help: see page 37 of the manual.

 

MTZ3Dinv Utility Codes

  • Inversion GUI (MTZ3D-gui: x86 x64)

    • Description: A graphical user interface (GUI) designed to aid the user in carrying out 3D magnetotelluric inversions with mtz3dinv.
    • Usage:  MTZ3D-gui
    • Help: Open mtz3dinvgui and look under the Help menu.