Datamine models
It is now possible to load and work with block models from Datamine using the standard Surpac block model functions. However, there are a number of fundamental differences about how the two block modelling systems work that stop some Surpac functions working correctly with Datamine block models. This means it is important that you understand the differences between the two systems.
What can you do with a Datamine Block Model in Surpac?
The purpose of the reader that allows you to load Datamine block models into Surpac is to allow different departments on the same mine site (or mining company) to operate on the same data without losing data in the conversion from one format to another. The purpose of the reader is not to duplicate Datamine functionality. If you are trying to build a resource model from your data, you will get much better results using the native program (Surpac or Datamine) to build the model.
However, if your Geology department has built 50 models in Datamine, but you want to use Surpac to create your mine design, you can use the Datamine reader to load the models into Surpac and perform the mine design functions on the Datamine-generated model. The Datamine reader does not convert any data. Instead the reader, loads the data as it is, and enables you to run Surpac functions on the data. By loading a Datamine model in Surpac, you can perform functions that would not be available to you in Datamine. The functionality that you can perform on Datamine models is listed below.
- Load Datamine models into memory.
- Display models as blocks, regular point clouds, and non-regular point clouds.
- Take sections from the block model.
- Constrain the block model using the standard block model constraints (differences are noted below). You can also save a constraint to a constraint file.
- Calculate partial percentages inside solids dynamically.
- Report using the standard block model report to output a report in html, pdf, csv, and a number of other formats.
- Add and delete attributes, both normal and calculated.
- Export block model to centroids.
- Export to Whittle.
- Perform block maths using the Surpac standard expression handling system.
- Save any changes you have made in Datamine format, to be used again later by Datamine.
Note: Because of the way Datamine models are constructed, point clouds appear visually superior, and perform better, compared to block display.
Performance is also superior when viewing and editing attributes in a block, and colouring a model by attribute.
Note: The Surpac block model has some features that Datamine cannot duplicate at this time (for example, maximum number of attributes and calculated attributes).
You must either discard these features, or save the model in the free block model .fbm format.
Unfortunately, Datamine will no longer be able to read these models (until the extra features are removed from your model).
Almost every function you can perform on a Surpac model, you can perform on a Datamine model. However, there are a few exceptions. Please see the limitations below for more detailed explanation of these exceptions.
Features of Datamine block models
To use a Datamine block model in Surpac, you need a good background knowledge of Datamine models. Listed below are four points you need to know to correctly use Datamine models in Surpac.
- Datamine models have a parent block size, and child blocks. Child blocks exist within the parent block, but can be any size and in any position in that parent. There are no regular-sized child blocks. This is the major difference between a Surpac model and a Datamine model. Surpac models have regular sized blocks.
- Datamine does not perform any dynamic creation (sub or super blocking) of blocks. The blocks that exist in the model are created when a model is created, and they never change for the life of the model. This includes sub-blocks, which are created by constraining the block model space by a solid when the model is created. For this reason, when you load a Datamine block model in Surpac, no blocks are created. This is particularly important when using constraints.
- Datamine models have the concept of NULL or Missing values for attributes. This is a special value (currently -1E30) for numeric attributes which indicates that no value has been filled for that attribute. In Datamine, reports and some other functions will ignore blocks that contain these values. If you report a block model containing NULL or Missing values in Surpac, you will receive error messages about these values. Therefore GEOVIA does not recommend that you use the block model report with a Datamine model that contains NULL or missing values.
- Datamine models have the concept of explicit and implicit attributes. An implicit attribute is an attribute that is the same for all blocks in the model, and cannot be changed on a block by block basis. An explicit attribute is contained in every block, and each block can have a unique value. Surpac does not have the concept of implicit fields, and so all implicit attributes are converted to explicit attributes for use in Surpac.
Limitations of the Datamine block model in Surpac
Due to the major philosophical and design differences between the Surpac block model and the Datamine block model, it is impossible to make all functions work as efficiently for both models. In some cases it is impossible, or dangerous to the integrity of your data, to make some functions work at all. The following is a list of the functions that either do not work, or have some limitations, when working with a Datamine block model.
Constraints
Due to the differences in dynamic creation of blocks, constraints on a Datamine model work differently to those in a Surpac model. With a Surpac model, if you are constraining a block, and the constraint cuts the block, that block is subdivided, potentially several times, until it reaches the minimum block size. Then the centroid test is performed to determine if the sub-block is inside the constraint or not.
With the Datamine model, it is not possible to subdivide the block, and so the centroid inside/outside test is performed only on the blocks that are read in from Datamine. This has the potential to cause some problems if, for example, you are constraining using different solids from those used to create the Datamine model. Because of the potential coarseness of the centroid inside/outside test, some of the required blocks might be omitted. To get accurate values, make sure you select the Keep blocks partially inside the constraint check box on the constraints form, or use the Partial Percentages function to accurately determine the percentage of a block inside the constraints.
Estimation functions
Although the estimation functions could potentially work in this reader functionality, they are disabled due to the potential problems they could cause. This is because, in a Surpac model, we assume every block exists (either on its own or as a super block) and so we can accurately fill all blocks inside a model space. Only a subset of Datamine blocks exist, and so we cannot guarantee that all blocks which should be filled are actually filled. This can lead to underestimation, or overestimation, of the resource.
All estimation should be done in a single package, whether it is Surpac or Datamine, to ensure consistent results.
Column Processing functions
The Column processing functions (for example, Ore/Waste discrimination) all work on columns of data. Because Surpac models all have regular block sizes, columns of data always exist. This is not always the case for Datamine models, and so the column processing functions cannot work with the data. As a result the column processing functions have been disabled.
Saving the Datamine model
Datamine models have their own limitations. Currently, the limitation for the total number of attributes is 64 "words". A word is a data storage amount. A numeric (float) attribute takes 1 word. A character attribute takes one word for every 4 characters (up to a maximum of 20 words). So a character attribute with a maximum of 9 characters takes 3 words. There are a total of 13 words reserved for use by the block model, allowing the remaining 51 words to be used by attribute values.
If you try to save a model that has more than the allowed number of attributes, you will be asked to cut down the number of attributes being saved. You can save all the new attributes to a file (with a .fbm extension) but you cannot read this file into Datamine. Cutting down the number of attributes is the only way to ensure that you can read your model in Datamine.
Calculated Attributes
One of the most powerful features of the Surpac block model is the calculated attributes feature. Calculated attributes are virtual attributes that perform a calculation on request, and do not take up storage space. One of the benefits of loading a Datamine model into Surpac is that calculated attributes are available to you. However, there is a problem when saving calculated attributes. When you save a calculated attribute, you can do one of two things:
- Save it as an implicit attribute. This will save the calculation expression, so that reading the model back into Surpac will replace the calculation exactly as it was, but reading the model into Datamine will ignore the attribute entirely.
- Save it as an explicit attribute. This will save the value of the calculation to the model file, so that the value will never again be automatically calculated by Surpac, but it will be available for use by Datamine, exactly the same as a normal numeric attribute.
Known issues with the Datamine reader
There is only one known problem with the Datamine reader, which relates to the display of block faces in Graphics. With regular blocks, it is very easy to determine which blocks are the outside blocks in the model. This allows Surpac to significantly cut down the number of blocks displayed, significantly increasing the speed of the display of the block model. With the Datamine model, regular blocks are not available to determine the outside blocks. As a result, the display of blocks in a Datamine model is much slower than displaying the equivalent Surpac model. It is suggested you use the Point Cloud display for Datamine block models, which is effective because of Datamine's sub-blocking scheme.