Menu Bar¶
In the Menu Bar of the interface one can find menu entries:
There is also an information panel showing the IGMAS+ version number (e.g. 1.4.8837), the name of the loaded project (model, e.g., salt.model) and its timeline version tag (e.g., V_2023-09-29_10_53).
The timeline version tag shows the date and time when the model was saved last time and is given in the format: V_YYYY_MM_DD_HH_mm, where
Vstands for versionYYYYis the yearMMis the monthDDis the dayHHare hoursmmare minutes
The search panel can be used for quick access to the search functionality on this website:
A search request is constructed in the following format:
https://igmas.git-pages.gfz-potsdam.de/igmas-docs/?q=request
where request is what you search for.
File¶
File menu entry consists of the following sub-entries:
- Project-related menu entries:
- New Project is used to create a new project
- Open Project is used to load an already existing project
- Save Project and Save as are used to save the current modified project.
- Close Project is used to close the current project.
- Import / Export menu entries:
- Import is used to import data
- Export is used to export data
- Exit is used to quit
Project-related menu entries¶
The typical file load/save functionality is implemented in Open Project and Save Project menu entries. Both Save Project and Save as allow you to save the project within a folder. In both cases IGMAS+ will ask after a directory name and a new directory (global folder) and subdirectory (timeline folder) will be created. This directory structure keeps the valuable information about project changes over time. In this way the user can always recover old and current models.
Import / Export menu entries¶
Import and Export entrees can be used for data exchange with other software products.
It is possible to import the following data to IGMAS+:
- Borehole
- Model
- Stations
- Interfaces
- PointSet (set of points)
- Lines
- Image
- VoxelCube
- Project (XML)
It is possible to export the following data from IGMAS+:
- Body Parameter Table
- Boreholes
- Model
- Stations
- Interfaces
- VoxelCube
- Border-VoxelCube
- StressMap
Exit¶
Menu entry Exit is used to quit IGMAS+. Before closing, IGMAS+ will check for changes in the project and a corresponding dialogue will pop up:
Edit¶
Edit menu entry consists of the following sub-entries:
Add sections¶
Add sections will open the sectioning wizard:
It is used to generate new vertical working sections, usually it is needed to get a higher flexibility for the structures.
The sections are constructed by cutting the complete triangulated domain with section planes, and build polygons out of the resulting cross sections.
Warning
To use the sectioning wizard you must be sure, that the triangulation is up-to-date.
In doubt, use Edit → Model - Triangulation or
once.
The wizard shows the area where your model is located. Change the values according to your needs:
- Define the distance (Spacing) between the newly created working sections
- Change the number (Count) of them
Use Preview to update the preview of the working sections on the right.
It is also possible to adjust the area in which the working sections are defined:
To define the area, either move one of the white circle, or click one of them with right mouse button to use numeric input.
The green color shows the side which is used as a first section. In the figure above the southern side of the rectangular area is used is a first working section. In the figure below the western side of the rectangular area is used is a first working section.
Select Preview and then Finish once you are ready and run Edit → Model - Triangulation or
again to update the triangulation.
If you want to reset the current configuration of the working sections, use Reset.
See also the Simple Basin example for a use case.
The same sectioning wizard is used when importing horizons, with the only change is that there you can also control the direction (azimuth) of the sections:
Tip
You can also change the orientation of newly created work sections if you have previously deleted all existing sections.
Model Triangulation¶
Model - Triangulation or
will open the model triangulation wizard:
You decide if you want to recompute the anomaly at the same time after the triangulation.
The triangulation wizard checks the model vertices for potential triangulation error:
In case of a potential triangulation error, the wizard shows the section where the problem has occurred, the corresponding body to which the affected polygon belongs, and the respective coordinates. In the simple example above the error has been caused by the intersection of a body with the boundary of the model:
Even if there are potential error reports, you can run the triangulation by pressing Finish, and the final triangulation can still be successful. After triangulation of the model, the actual validity of the triangulation is automatically checked for:
- Completeness: each body has to be surrounded by a complete hull of triangles
- Orientation: the hull of triangles has to take the orientation of the triangles into account.
The result of the triangulation check is shown in the Status Bar:
In the example above both the Completeness and Orientation conditions are fulfilled, therefore triangulation is successful.
However, the resulting model doesn't make physical sense because it does not correspond to a realistic geological configuration and a potential field response calculated from such a model is not comparable to a measured data.
Warning
Even when triangulation is successful, the model can have no physical sense
In the contrast to the situation shown earlier, triangulation for a more complex model with the section shown below produces several errors:
The reason for the error is that the Completeness criterion is not fulfilled. The problematic vertices in each section are highlighted with red.
Preferences¶
Preferences menu entry will open the Preferences window with four tabs:
It is possible to Import and Export the preferences in XML format, and reset them to Default.
After changing the preferences, Import
General¶
The preferences in the General tab are divided into three categories:
Preferences related to the 2D view:
| Name | Function | Values |
|---|---|---|
| 2D Rendering Quality | Rendering quality of the graphics in 2D views | high/low |
| Point Colour | Color of the polygon vertices | color palette |
| show tooltip | Turn on/off tooltips with information on polygons | true/false |
| Size in Pixel [Point Size 2D] | Size of the polygons vertices in pixels | numeric |
| Station Dot Size [Pixel] | Size of the station dots in pixels | numeric |
Preferences related to the 3D view:
| Name | Function | Values |
|---|---|---|
| Background Colour | Background color for the 3D View | color palette |
| Interface Shading | Type of shading of the interfaces | Gouraud/Flat |
| Marker Colour | Color for the cursor tracking line | color palette |
| Marker Size | Size of the cursor tracking marker in pixels | numeric |
| Marker Speed | Speed to update each frame | 5(fast) - 30(slow) |
| Render Mode | Select Render Mode | Solid/Wireframe/Point |
| Show section marker | Turn on/off section marker | true/false |
| Name | Function | Values |
|---|---|---|
| Clipping Box Colour | Color for the model clipping box | color palette |
| Colour of Marker Lines | Color of the triangle lines | color palette |
| Colour of Section Lines | Color of the lines between polygons | color palette |
| Global Transparency | Level of transparency of bodies in the 3D View | 0 - 1 |
| Marker Line Width | Width of the triangles lines | numeric |
| Project Path | The default path to open projects for the user | text path |
| Section Line Width | Width of the lines between polygons | numeric |
| Show Clipping Bounds | Turn on/off the model clipping box | true/false |
| Show Marker Lines | Turn on/off the triangles lines | true/false |
| Show Polygon Outline | Turn on/off the lines between polygons | true/false |
| use Antialiasing | Turn on/off antialiasing | true/false |
Colour Map¶
In the Colour Map tab you can specify the colour map that is used for density, as well as you can adjust the range for densities manually:
Units¶
In the Units tab you can adjust the default project units for several physical quantities:
| Physical quantity | Available values for units | Default unit |
|---|---|---|
| Acceleration | ||
| Bulk Density | ||
| Magnetic Field | ||
| Gravity Gradient | ||
| Magnetic Gradient |
Length units are provided here just for information purposes and can't be changed in this window, as they are selected independently during the creation of a project.
Controls¶
In the Controls tab you can adjust preferences related to navigation in the 3D view:
- Reverse Zoom: reverse the direction of the mouse wheel to zoom in/zoom out. If checked, rotating the mouse wheel backwards will zoom in, otherwise it will zoom out
- Reverse Rotation: reverse the direction of rotation of the model while dragging it with the left mouse button
- Reverse Translation: reverse the direction of translation (movement in space) of the model while dragging it with the right mouse button
- Head-Up-Mode: control the way 3D rotation is done. If checked, it will no be possible to rotate the model upside-down, so the top of the model will always face upwards.
Options¶
Option menu entry consists of the following sub-entries:
Look & Feel¶
Select among a large number of theme in light and dark variants:
The "FlatLaf" themes are based on the Flat Look and Feel for Java Swing desktop applications.
Language¶
IGMAS+, IGMAS+ installer and IGMAS+ Settings are available in two languages:
- English (default)
- Deutsch (German)
Undo / Redo¶
With Undo and Redo, and similarly with
and
icons you can undo or redo the last action.
Warning
Be careful, not all actions performed in IGMAS+ can be undone using Undo
View¶
View menu entry consists of the following sub-entries:
Fit to Screen¶
When using this function, the model in the current view (3D View, 2D View or 2D Maps View) is zoomed in our out such that it fits the view tab, i.e. it is completely visible on the screen.
Fit To Screen can alternatively be called by pressing F or by the
icon on the Tool Bar.
Center at¶
Center at menu entry allows to rotate the model in the 3D view and center the size at which it is facing:
- Left side of the model: View Left or

- Front side of the model: View Front or

- Bottom side of the model: View Bottom or

- Right side of the model: View Right or

- Back side of the model: View Back or

- Top side of the model: View Top or

Body Color Mode¶
Body Color Mode menu entry allows to change the color mode of the bodies in the 3D and 2D views.
It is possible to select among the following color modes:
- Density Color Mode: bodies are colored according to their density
- Normal Color Mode (default): bodies are colored according to the assigned color
- Susceptibility Color Mode: bodies are colored according to their magnetic susceptibility
Add View¶
Add View menu entry repeats the Add View button and allows to add a new view to the Views Window.
It is possible to add the following views:
- 2D View
- 3D View
- 2D Maps View
- Borehole View
- SEG-Y Inspector View
- Multiple Cutter View
- Script View
- Globe View
Show section back/front¶
Menu entries Show section back and Show section front allow to show the back and front side (default) of the sections in the 2D view.
Tools¶
Tools menu entry consists of the following sub-entries:
- Calculate Anomalies
- Re-Calculate Anomaly
- Check Topology
- Create Station Grid
- Parameter inversion (MMSE)
- Timeline Editor
Calculate Anomalies¶
to be added
Re-Calculate Anomaly¶
to be added
Check Topology¶
to be added
Create Station Grid¶
to be added
Parameter inversion¶
to be added
Timeline Editor¶
to be added
Research¶
Research menu entry consists of the following sub-entries:
Voxelize Model¶
to be added
Border effect¶
to be added
Voxel algorithm¶
to be added
Triangle algorithm¶
to be added
Plugin Manager¶
to be added
Plugin¶
to be added
JVM Settings¶
In Research → JVM Settings user can adjust the following settings related to the Java Virtual Machine (JVM):
- Initial heap size: When JVM starts, its heap space is equal to the initial size of heap memory specified by this parameter. As application progress, more objects get created and heap space is expanded to accommodate new objects. Usually it is not needed to adjust this value.
- Maximum heap size: The JVM expands heap memory in Java somewhere near to maximum heap size specified by this parameter and if there is no more memory left for creating new objects in java heap, JVM throws
java.lang.OutOfMemoryErrorand application dies. Adjust it if you have problems with loading or creating a big model. - JRE for IGMAS+: Version of the JRE used by IGMAS+.
- Proxy settings: Setup proxy settings for internet connection, if needed.
- Stereo Settings: User can force stereo rendering which can help to overcome potential visualization issues.
Tip
See more information on how to adjust the JVM settings here.
The JVM settings window can also be accessed directly from the system without starting IGMAS+.
In Windows just start typing IGMAS+ settings in the Start Menu to find the shortcut:
Note
You should restart IGMAS+ for changes in the JVM settings to take effect.
Help¶
Help menu entry consists of the following sub-entries:
View Help¶
View Help menu entry opens the Help window in the Views Window.
It has two tabs:
List of shortcuts¶
Equation Description¶
The Equation Description tab contains a list of equation elements used in IGMAS+:
| Operator | Description | Example |
|---|---|---|
+ |
Addition of Values | x + y |
- |
Subtraction of Values | x - y |
* |
Multiplication of Values | x * y |
/ |
Division of Values | x / y |
% |
Modulus of Values | x % y |
^ |
Power operator | x^2 |
e |
The double value that is closer than any other to e, the base of the natural logarithms | 2.718281828459045 |
| Constant | Description | Example |
|---|---|---|
pi |
The double value that is closer than any other to pi, the ratio of the circumference of a circle to its diameter | 3.141592653589793 |
| Function | Description | Example | Parameters | Returns |
|---|---|---|---|---|
gardner(a, scale) |
Gardner's relation, or Gardner's equation, named after G. H. F. Gardner and L. W. Gardner, is an empirically derived equation that relates seismic P-wave velocity to the bulk density of the lithology in which the wave travels | gardner(cellvalue, scale) |
a - an argument (typical: cellvalue), scale - factor for scale the unit (ex. 1000 for km/s) |
evaluation of the gardner function for m/s |
nafedrake(a, scale) |
Nafe - Drake relationship -a n empirical relationship between the P-wave velocity and density of water-saturated sediments and sedimentary rocks. It is commonly used to evaluate the density of sedimentary rocks in shallow seismic surveys | nafedrake(cellvalue, scale) |
a - an argument (typical: cellvalue), scale - factor for scale the unit (ex. 1000 for km/s) |
evaluation of the nafedrake function for m/s |
sin(a) |
Returns the trigonometric sine of an angle. Special cases:
The computed result must be within 1 ulp of the exact result. Results must be semi-monotonic. |
sin(a) |
a - an angle, in radians |
the sine of the argument |
cos(a) |
Returns the trigonometric cosine of an angle. Special cases:
The computed result must be within 1 ulp of the exact result. Results must be semi-monotonic. |
cos(a) |
a - an angle, in radians |
the cosine of the argument |
tan(a) |
Returns the trigonometric tangent of an angle. Special cases:
The computed result must be within 1 ulp of the exact result. Results must be semi-monotonic. |
tan(a) |
a - an angle, in radians |
the tangent of the argument |
sinh(x) |
Returns the hyperbolic sine of a double value. The hyperbolic sine of x is defined to be where is Euler's number.Special cases:
The computed result must be within 2.5 ulps of the exact result. |
sinh(x) |
x - the number whose hyperbolic sine is to be returned |
the hyperbolic sine of the argument |
cosh(x) |
Returns the hyperbolic cosine of a double value. The hyperbolic cosine of x is defined to be where is Euler's number.Special cases:
The computed result must be within 2.5 ulps of the exact result. |
cosh(x) |
x - the number whose hyperbolic cosine is to be returned |
the hyperbolic cosine of the argument |
tanh(x) |
Returns the hyperbolic tangent of a double value. The hyperbolic tangent of x is defined to be , in other words, sinh(x)/cosh(x).Note that the absolute value of the exact tanh is always less than 1.Special cases:
The computed result must be within 2.5 ulps of the exact result. |
tanh(x) |
x - the number whose hyperbolic tangent is to be returned |
the hyperbolic tangent of the argument |
asin(a) |
Returns the arc sine of a value; the returned angle is in the range through . Special cases:
The computed result must be within 1 ulp of the exact result. Results must be semi-monotonic. |
asin(a) |
a - the value whose arc sine is to be returned |
the arc sine of the argument |
acos(a) |
Returns the arc cosine of a value; the returned angle is in the range 0.0 through . Special cases:
The computed result must be within 1 ulp of the exact result. Results must be semi-monotonic. |
acos(a) |
a - the value whose arc cosine is to be returned |
the arc cosine of the argument |
atan(a) |
Returns the arc tangent of a value; the returned angle is in the range through . Special cases:
The computed result must be within 1 ulp of the exact result. Results must be semi-monotonic. |
atan(a) |
a - the value whose arc tangent is to be returned |
the arc tangent of the argument |
atan2(y, x) |
Returns the angle theta from the conversion of rectangular coordinates to polar coordinates . This method computes the phase by computing an arc tangent of y/x in the range of to .Special cases:
The computed result must be within 2 ulps of the exact result. Results must be semi-monotonic. |
atan2(y, x) |
y - the ordinate coordinate, x - the abscissa coordinate |
the theta component of the point in polar coordinates that corresponds to the point in Cartesian coordinates. |
deg(x) |
Converts an angle measured in radians to an approximately equivalent angle measured in degrees. The conversion from radians to degrees is generally inexact; users should not expect cos(toRadians(90.0)) to exactly equal 0.0. |
deg(x) |
x - an angle, in radians |
the measurement of the argument in degrees |
rad(x) |
Converts an angle measured in degrees to an approximately equivalent angle measured in radians. The conversion from degrees to radians is generally inexact. |
rad(x) |
x - an angle, in degrees |
the measurement of the argument in radians |
abs(a) |
Returns the absolute value of a double value. If the argument is not negative, the argument is returned. If the argument is negative, the negation of the argument is returned. Special cases:
|
abs(a) |
a - the argument whose absolute value is to be determined |
the absolute value of the argument |
round(a) |
Returns the closest int to the argument. The result is rounded to an integer by adding ½, taking the floor of the result, and casting the result to type int.Special cases:
|
round(a) |
a - a floating-point value to be rounded to an integer |
the value of the argument rounded to the nearest int value |
ceil(a) |
Returns the smallest (closest to negative infinity) double value that is greater than or equal to the argument and is equal to a mathematical integer. | ceil(a) |
a - a value |
the smallest (closest to negative infinity) floating-point value that is greater than or equal to the argument and is equal to a mathematical integer |
floor(a) |
Returns the largest (closest to positive infinity) double value that is less than or equal to the argument and is equal to a mathematical integer. | floor(a) |
a - a value |
the largest (closest to positive infinity) floating-point value that less than or equal to the argument and is equal to a mathematical integer |
exp(a) |
Returns Euler's number raised to the power of a double value. Special cases:
The computed result must be within 1 ulp of the exact result. Results must be semi-monotonic. |
exp(a) |
a - the exponent to raise to |
the value , where is the base of the natural logarithm |
ln(a) |
Returns the natural logarithm (base ) of a double value. Special cases:
The computed result must be within 1 ulp of the exact result. Results must be semi-monotonic. |
ln(a) |
a - a value |
the value ln a, the natural logarithm of a |
log(a) |
Returns the base 10 logarithm of a double value. Special cases:
The computed result must be within 1 ulp of the exact result. Results must be semi-monotonic. |
log(a) |
a - a value |
the base 10 logarithm of a |
sqrt(a) |
Returns the correctly rounded positive square root of a double value. Special cases:
Otherwise, the result is the double value closest to the true mathematical square root of the argument value. |
sqrt(a) |
a - a value |
the positive square root of a |
min(a, b) |
Returns the smaller of two values. | min(a, b) |
a - an argument, b - another argument |
the smaller of a and b |
max(a, b) |
Returns the larger of two values. | max(a, b) |
a - an argument, b - another argument |
the larger of a and b |
rnd(a) |
Generate a random number (between 0 and a given argument) | rnd(a) |
a - a value |
a random number |
sign(a) |
Returns the signum function of the argument; zero if the argument is zero, 1.0f if the argument is greater than zero, -1.0f if the argument is less than zero. |
sign(a) |
a - the floating-point value whose signum is to be returned |
the signum function of the argument |
if(condition, expr1, expr2) |
Provides an if-like function; it expects three arguments: a condition, an expression being evaluated if the condition is 1 and an expression which is being evaluated if the condition is not 1. | if(z > -6, exp(z), z) |
condition - the condition (<, <=, =, >=, >, !=), expr1 - will be evaluated if condition is true, expr2 - will be evaluated if condition false |
the evaluation of the condition |
| Variable | Description | Returns |
|---|---|---|
x |
Returns the middle coordinate of the current cell in the voxelization process | mid x - cell value |
y |
Returns the middle coordinate of the current cell in the voxelization process | mid y - cell value |
z |
Returns the middle coordinate of the current cell in the voxelization process | mid z - cell value |
density |
Returns the density value of the Body (subtract by reference density) at Cell Location , , of the current cell in the voxelization process | density - density value subtract by reference density (only if available!) |
susceptibility |
Returns the susceptibility value of the Body (subtract by reference susceptibility) at Cell Location , , of the current cell in the voxelization process | susceptibility - susceptibility value subtract by reference susceptibility(only if available!) |
zmin |
Gets the lower - corner of the bounding box from the current Body | z - lower - corner |
zmax |
Gets the upper - corner of the bounding box from the current Body | z - upper - corner |
cellvalue |
Gets the current Cell Value of the Voxel Cube(for import) | cellvalue - the current cell value (0 - if not found) |
ztopo |
Gets the deepest value at Cell [,] of the Interfaces defined in the Bathymetry Tree Node | ztopo - value at Cell [,] |
Equation elements are used mainly during the voxel import.
Check for updates¶
to be added
About¶
to be added
Log Window¶
to be added
License Wizard¶
to be added




















