You are on page 1of 4

Block Maths and Calculated Attributes

Table of Contents

Overview

 Calculated attributes.
 Block maths.
 Review
 Where To Next

Overview

Block maths functionality allows you to assign values to attributes based on the values of other attributes. With the
introduction of calculated attributes, the need to store calculated values is lessened compared with previous versions
of Surpac. However a knowledge of the mathematical expressions will allow you to store an attribute or make a
dynamically calculated attribute. The advantage of making a calculated attribute is that no memory is taken up to store
a value in a block.

In the first exercise we will just do a simple mathematical calculation on our gold value to demonstrate the functionality
of calculated attributes. Let us calculate a new attribute to store a gold grade to which an upper cut has been applied
(whilst we are not advocating applying top cuts, it is a regularly asked question). Calculated attributes access the
same expressions that Block maths accesses. The only decision you need to make is whether or not you store the
result or calculate it dynamically.

We will use an IIF statement: iif(gold>10,10,gold). This translates into plain speak as: If the gold grade is greater than
10 make it 10, otherwise leave it as the gold grade.

Objective:

To use calculated attributes and block maths expressions to create a cut gold attribute
1. Make sure you have your training.mdl loaded up - an easy way to check is by looking to see if the icon is
displayed in the status area at the bottom of the 3D window

/conversion/tmp/scratch/451621001.doc Page 1 of 4
2. Under the Attributes menu select New and fill in the form as follows

3. Apply the form and then save your model (Block Model - Save)
4. Display the model in the graphics window and add a new constraint so that only those blocks with a value
for gold of greater than 10g/t are displayed

5. Try selecting one of the blocks to ensure your calculation has worked properly. The function to use is
Display - View Attributes for one block. You should see something like the following (although the values will
be different)

You can see that a grade greater than 10 has been cut back to 10 in the new calculated cut_gold attribute.

/conversion/tmp/scratch/451621001.doc Page 2 of 4
In the following exercise, you will create a character attribute called stockpile. This attribute will be used to determine
the destination for ore once it is mined (ie. mill, leach pad, low grade stockpile). The destination of the ore will depend
on the material type and the gold grade as follows:

 Mill

any oxide, transitional and fresh ore > 1ppm gold

 Leach

any oxide ore <1ppm gold

 Lowgrade

any transitional/fresh ore <1ppm gold.

We will use nested IIF expressions to

The expression will take the form:

iif(gold > 1, ``mill'', iif(material = = ``oxide'', ``leach'', ``lowgrade''))

If you were to express this out loud it would read:

IF the grade of gold is greater than 1ppm then send it to the mill stockpile. However, if the gold grade is less than
1ppm and the material type is oxide then send it to the leach stockpile, otherwise send the ore to the lowgrade
stockpile. (ie. all fresh transitional ore <1 ppm gold)

Objective.

To investigate the Immediate If expression syntax and thus classify a character attribute called ``stockpile''.
1. Use Attributes - New to define the attribute stockpile as shown below.

/conversion/tmp/scratch/451621001.doc Page 3 of 4
2. Select Attribute - Maths. Enter the Immediate If expression as shown below.

Note in the above expression that each iif statement is enclosed in brackets and that character values are in
enclosed in double quotes ( `` ``).
3. Enter the constraint as shown below.

You are not prompted to save the model after Block Maths. You may wish to save the model at this time.
Without saving, the results of the block maths operation will remain in memory, however if the computer were
to lose power, the block maths results would be lost.
4. View the results in Graphics by adding graphical constraints and displaying the attributes for various
blocks.

Review

This section should have given you an introduction to the concepts of using Block Maths. Further information can be
found in the Online Reference Manual under the sections indexed BM Block Maths and Expressions. (Note that not all
general expressions are suitable for Block Maths.)

Where To Next

The following sections mark the beginning of some of the more advanced or specialised topics available in the Block
Model functionality. We will begin with Whittle Model importing and exporting.

/conversion/tmp/scratch/451621001.doc Page 4 of 4

You might also like