EXPNDMOD Process
To access this process:
-
Model ribbon >> Manipulate >> Expand.
- Enter "EXPNDMOD" into the Command Line and press <ENTER>.
See this process in the Command Table.
Process Overview
Note: This is a superprocess and running it may have an effect on other Datamine files in the project.
Expand a model to cover a larger volume and fill it with cells. The volume can optionally be defined and constrained by input wireframe surfaces or perimeters.
EXPNDMOD fills a model with cells to the limits defined by its data definition and optionally extends its data limits to cover the maximum volume defined by a supplied wireframe, perimeter or extents defined by parameters
An optional wireframe can be supplied to define the limits of the required expanded model and also to constrain the addition of new cells. The minimum cell sizes to be created in X, Y and Z are defined in the same way as in the WIREFILL process.
An optional perimeter file can be supplied to constrain cell creation to within the perimeters.
An optional table can be supplied to define default values of fields for new cells.
The parent cell sizes of the expanded model will always be the same as the input model, only the origin or number of cells in each direction may change. The model data definition is never decreased: the origin is either retained or moved in a negative X, Y or Z direction. The number of cells are either retained or increased.
EXPNDMOD is useful for preparing a model for mine planning, for example expanding a model that contains only mineralised zones to be used as an input to Studio NPVS (which requires a full model) or for other mine planning and evaluation purposes.
EXPNDMOD Files
WIRETR and WIREPT
The wireframe file is optional and is used to both define the expanded limits as well as constrain the addition of new cells. For example if a topography wireframe is supplied the model limits will be expanded to cover the wireframe extents and new cells will be added according the rules specified by the WIRETYPE parameter. For example if the default value of WIREFTYPE (2 - Surface Create cells below) is used the the model is expanded in X, Y and Z to the limits defined by the wireframe point file and cells are only created below the wireframe. The model limits are never decreased.
PERIMIN
The input perimeter file is optional. The model will be expanded to cover the limits defined by the input perimeter and cell addition is constrained to be within the perimeter. The filling direction is similar to that in the PERFIL process. The direction is implied by the WIRETYPE parameter. For example if the value of WIREFTYPE (2 - Surface Create cells below) is used then the perimeters are used to constrain the addition of cells in the X and Y directions with no constraint in the Z value; the Z value of the perimeters is ignored. The perimeters do not have to be planar.
EXPNDMOD Parameters
[XYZ]MIN and [XYZ]MAX
It is possible to define the required limits of the expanded model using one or more of the optional limit parameters. For example if a topography wireframe is being used to define the expanded limits in X and Y the model could aso be expanded downwards by setting the ZMIN parameter to a value less than the existing Z model origin.
FILVOL
If a wireframe is being used to constrain the addition of new cells the FILVOL parameter can optionally be used to avoid cell splitting. If FILVOL is set to 1 then rather than add sub cells the process will add a FILVOL field with a value between zero and 1 that defines the proportion of the cell volume that is constrained by the wireframe.
DEFVALS
It is possible to define default values to be set in new cells using the optional DEFVALS file. This must contain two fields, one defining the field name (up to a 24 character alphanumeric field) and one defining the field value (alpha or numeric). If the value field is alpha numeric fields can still be set by having numbers represented as strings. To set absent alpha values leave the alpha field blank. The names of the NAME and VALUE fields in the DEFVAL file are specified using the field specification.
Expanding Rotated models
The input model to be extended may be rotated. If the input model &PROTO is a Rotated Model, as defined using the PROTOM process, then the coordinates of the input points in the &WIREPT and PERIMIN files are automatically transformed internally to the rotated model coordinate system for processing.
EXPNDMOD will usually be run with an input PERIMIN string file only if the rotated model has just a single rotation. EXPNDMOD uses the PERFIL process to create model cells within the string with the cells being orthogonal to the model prototype in the local coordinate system. PERFIL requires the string to be planar and lie on one of the XY, XZ or YZ planes, otherwise the process will fail with a message that the string is not planar. The string can therefore be digitised on the appropriate orthogonal plane in the world coordinate system as this plane will be parallel to the same plane in the local system.
If the model includes two or three rotations then the process can still be run successfully but the input string will no longer lie on an orthogonal plane in the world coordinate system. It must be on a plane that when rotated within EXPNDMOD will lie on one of the orthogonal planes of the model in the local coordinate system. This can be more difficult to achieve but in practice there are few situations where a second rotation with an input PERIMIN string would be required.
EXPNDMOD Example
The first image below shows an input model to be expanded to the limits of the wireframe. It contains only cells in the mineralized zones. The second image shows the expanded model whose limits have been increased. Cells have been added outside the mineralized zone to fill the model but have been constrained by the wireframe.
Input Files
Name |
Description |
I/O Status |
Required |
Type |
MODEL |
Input block Model file to be expanded. |
Input |
Yes |
Model |
WIRETR |
Input wireframe triangle file to constrain and define the expansion limits. The wireframe may consist of one or more solid wireframes, or one or more single surface DTMs. It may not contain both solid wireframes and DTMs. |
Input |
No |
Wireframe Triangles |
WIREPT |
Input wireframe points file. |
Input |
No |
Wireframe Points |
PERIMIN |
Input perimeter file to constrain the model expansion. This file can contain multiple perimeters. The model will be expanded to the limits of the perimeters and constrained by them. |
Input |
No |
String |
DEFVALS |
Input file containing a list of default field values. This file must contain the fields NAME and VALUE. The VALUE field can be either alpha or numeric. |
Input |
No |
Table |
Output Files
Name |
I/O Status |
Required |
Type |
Description |
MODELOUT |
Output |
Yes |
Model |
Output expanded block model file. |
Fields
Name |
Description |
Source |
Required |
Type |
Default |
DENSITY |
Name of the DENSITY field in the input block model |
IN |
No |
Alphanumeric |
Undefined |
NAME |
Name of the NAME field in the default values file DEFVALS |
IN |
No |
Alphanumeric |
Undefined |
VALUE |
Name of the VALUE field in the default values file DEFVALS |
OUT |
No |
Alphanumeric |
Undefined |
Parameters
Name |
Description |
Required |
Default |
Range |
Values |
||||||||||||||
DENSITY |
Default density value to be applied to new cells |
No |
1 |
Undefined |
Undefined |
||||||||||||||
WIRETYPE |
Type of wireframe model to be filled with cells. Select one of the following options, with the default being 2:
|
Yes |
2 |
1,6 |
1,2,3,4,5,6 |
||||||||||||||
CELLXMIN |
Minimum cell size in the X direction. If it is set to zero then seam filling is used - ie the cell is split once at the wireframe boundary. Only one of the values CELLXMIN , CELLYMIN , and CELLZMIN may be zero. |
Yes |
2.5 |
Undefined |
Undefined |
||||||||||||||
CELLYMIN |
Minimum cell size in the X direction. If it is set to zero then seam filling is used - ie the cell is split once at the wireframe boundary. Only one of the values CELLXMIN , CELLYMIN , and CELLZMIN may be zero. |
Yes |
2.5 |
Undefined |
Undefined |
||||||||||||||
CELLZMIN |
Minimum cell size in the X direction. If it is set to zero then seam filling is used - ie the cell is split once at the wireframe boundary. Only one of the values CELLXMIN , CELLYMIN , and CELLZMIN may be zero. |
Yes |
2.5 |
Undefined |
Undefined |
||||||||||||||
XMIN |
Minimum value in the X direction that the output model must cover. This value will be used only if it is less than the minimum value defined by the input wireframe or perimeter(s) |
No |
Undefined |
Undefined |
Undefined |
||||||||||||||
YMIN |
Minimum value in the Y direction that the output model must cover. This value will be used only if it is less than the minimum value defined by the input wireframe or perimeter(s) |
No |
Undefined |
Undefined |
Undefined |
||||||||||||||
ZMIN |
Minimum value in the Z direction that the output model must cover. This value will be used only if it is less than the minimum value defined by the input wireframe or perimeter(s) |
No |
Undefined |
Undefined |
Undefined |
||||||||||||||
XMAX |
Maximum value in the X direction that the output model must cover. This value will be used only if it is greater than the maximum value defined by the input wireframe or perimeter(s) |
No |
Undefined |
Undefined |
Undefined |
||||||||||||||
YMAX |
Maximum value in the Y direction that the output model must cover. This value will be used only if it is greater than the maximum value defined by the input wireframe or perimeter(s) |
No |
Undefined |
Undefined |
Undefined |
||||||||||||||
ZMAX |
Maximum value in the Z direction that the output model must cover. This value will be used only if it is greater than the maximum value defined by the input wireframe or perimeter(s) |
No |
Undefined |
Undefined |
Undefined |
||||||||||||||
FILVOL |
Specify whether to use the input wireframe for cell splitting or to add a FILVOL field to the output model:
|
No |
0 |
0,1 |
0,1 |
Macro Example
!EXPNDMOD &MODEL(ore_mod), &WIRETR(topo_tr),&WIREPT(topo_pt),
&DEFVALS(fields2),&MODELOUT(ore_mod_exp),*DENSITY(DENSITY),
*NAME(NAMEX),*VALUE(VALUEX),@DENSITY=2.5,@WIRETYPE=2.0,
@CELLXMIN=2.5,@CELLYMIN=2.5,@CELLZMIN=2.5,@FILVOL=0.0
Error and Warning Messages
>>> |
WARNING - DATA ABOVE TOP OF MODEL <<< |
>>> |
ERR 132 <<< ( n) IN TRIFIL |
|
Data in the input wireframe point data file has been found to be above the top of the model. Warning; processing continues. |
>>> |
WARNING - DATA BELOW BOTTOM OF MODEL <<< |
>>> |
ERR 133 <<< ( n) IN TRIFIL |
|
Data in the input wireframe point data file has been found to be below the bottom of the model. Warning; processing continues. |
>>> |
NO DATA IN INPUT FILE <<< |
>>> |
ERR 136 <<< ( n) IN TRIFIL |
|
The input wireframe point data file has no data. Fatal; the process is exited. |
>>> |
MISSING OR ALPHA FIELDS IN MODEL PROTOTYPE <<< |
>>> |
ERR 142 <<< ( n) IN TRIFIL |
|
Fatal; the process is exited. |
>>> |
ERR 143 <<< ( n) IN TRIFIL |
|
Fatal; the process is exited. |
>>> |
MISSING OR ALPHA FIELDS IN WIREPT FILE <<< |
>>> |
ERR 145 <<< ( n) IN TRIFIL |
|
Fatal; the process is exited. |
>>> |
MISSING OR ALPHA FIELDS IN WIRETR FILE <<< |
>>> |
ERR 146 <<< ( n) IN TRIFIL |
|
Fatal; the process is exited. |