Você está na página 1de 149

Block Modelling

Block Modelling with Surpac Vision

Block
Modelling
Copyright
Block
Model
Concepts
Creating a
Block Model
Constraints
Model
Filling
Reporting
Sectioning
Block
Maths and
Calculated
Attributes
Whittle
Interface
Column
Processing
Advanced
Filling
Answers
to Questions

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/index.htm (1 of 2)02/05/2005 14:54:53

Block Modelling

Contact
details

Back To Top

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/index.htm (2 of 2)02/05/2005 14:54:53

Block Model Concepts

Block Model Concepts

[Next]

Table of Contents
Overview

What You'll Learn


What is a Surpac Block Model?
Block Model Concepts
Open model.
Review
Where To Next

Overview
This section introduces the concepts and terms fundamental to the understanding of the use of the
Surpac Block Model.

What You'll Learn


What is a Surpac Block Model?
In the past, resource modelling with Surpac software has relied heavily on traditional polygonal methods
of modelling. These methods are simple to use and understand, but are extremely time consuming,
particularly if you wish to modify or change parameters used in creating a model.
The Surpac three dimensional Block Model is still very simple to use and understand, but is significantly
faster in its creation, and modelling parameters can be added and modified at any time.
The Surpac Block Model is a form of database. This means that its structure not only allows the storage
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (1 of 11)02/05/2005 14:55:06

Block Model Concepts

and manipulation of data, but also the retrieval of information derived from that data. It differs from a
more traditional database, in that data stored are likely to be interpolated values, rather than true
measurements. Another major difference is that these values may be spatially referenced as well as
being spatially related. A third important difference is that the Block Model is recalled in its entirety into
memory which makes dynamic operations such as colouring of attributes possible but imposes
significant memory overheads.
For example, consider the Geological database. Records have spatial attributes which relate them to a
spatial position. However, the converse does not necessarily hold as spatial positions are not necessarily
related to a record in the database.
The Block Model portions space into an exhaustive set of blocks, each being related to a record. The
records may be spatially referenced, that is, information may be retrieved for any point in space, not just
for points that have been explicitly measured. This spatial referencing allows the addition of a number of
operators to the querying capabilities of the database manipulation scheme, namely spatial operators
such as INSIDE and ABOVE, which may operate on solids and surfaces. Outside and below may be
built using the NOT logical i.e. NOT INSIDE or NOT ABOVE.
The Block Model comprises of a number of components:

Model Space

The model space is a cuboid volume outside of which nothing exists in terms of the Block Model.

Attributes

The properties of the model space that are to be modelled are termed attributes. These attributes may be
nominal, ordinal, interval or ratio measurements expressed as numeric or character data. Attributes may
also be calculated from the values in other attibute fields, for reporting and visualising.

Constraints

Constraints are the logical combinations of spatial operators and objects that may be used to control the
selection of blocks from which information may be retrieved and/or into which interpolations may be
made. Constraints may be saved and have file extensions of .CON.
The model itself is a binary image constructed in the model space and defined by the existence or nonexistence of blocks. Model files will have file extensions of .MDL
The Block Model may be applied to any situation where properties of a volume of space are to be
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (2 of 11)02/05/2005 14:55:06

Block Model Concepts

modelled in terms of the distribution of values through that space.

Block Model Concepts


The following terms are used in Surpac Vision model definition:

Origin

The origin of the model is the lower, front, left hand corner (ie. the minimum Y, X and Z coordinates) of
the model expressed in Y,X,Z Cartesian coordinates. The origin is the anchoring point from which
rotations involving the Bearing, Dip and Plunge are to be performed.

Extent

The extent of model is the dimensions of the model in the Y, X and Z directions.
For example, if a model was to cover the following area:
3000mN to 3650mN 1500mE to 2100mE 120mEl to 270mEl
The origin will be:
Y=3000 X=1500 Z=120
and the extent of the model will be:
Y=650 X=600 Z=150

Bearing

The bearing of the model is the horizontal angle in degrees of the direction of the major axis of the
model. A bearing of zero indicates a non-rotated model where the major axis of the model is in a northsouth orientation.

Dip

The dip of the model is the vertical angle of the blocks in degrees from the horizontal in a direction
perpendicular to the bearing of the model. A negative dip is an angle below the horizontal to the right
when looking along the bearing of the model. A dip of zero indicates horizontal blocks normal to the
bearing of the model.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (3 of 11)02/05/2005 14:55:06

Block Model Concepts

Plunge.

The plunge of the model is the vertical angle of the blocks in degrees from the horizontal along the
bearing of the model. This can also be referred to as the tilt of the model. A negative plunge is an angle
below the horizontal when looking along the bearing of the model. A plunge of zero indicates horizontal
blocks along the bearing of the model.

User Block Size

The block size in the Y, X and Z directions. The user block size is used as the reporting unit for the
Block Model. The user block is also the block size upon which interpolation is performed.
The user block size will depend on the Model purpose (ie. Grade Control, Resource Calculation, Pit
Optimization) with reference to the data spacing.
For example, what block size is appropriate for a prospect drilled on a 100m x 100m pattern, which is to
have a resource estimate completed? It would not be appropriate to set this model up with a block size of
5x5x5, as the small blocks won't give a ``better'' estimate of the resource, as the original data is widely
spaced. Perhaps, 25x25x10 may be more realistic ( ie. one-third to one-quarter of the sample spacing).

Maximum sub-blocks per side

The maximum number of blocks along each side of the model. This number must always be 2 to the
power of an integer. ( eg 2, 4, 8, 16, 32, 64, 128, 256, 512)
This value will need to satisfy a base resolution. For the example used previously: extents Y=650 X=600
Z=150 user block size 25x25x10
The number of blocks along each side will be 26x24x15(extent divided by user block size). This means
that the base resolution will be 32 (the number greater than the maximum number of blocks and is 2 to
the power of something). If we wish to allow sub-blocking (the sub-dividing of blocks), the resolution
will need to be greater than base resolution.
For this example: if maximum sub-blocks per side = 64 smallest sub-block = 12.5x12.5x5 if maximum
sub-blocks per side =128 smallest sub-block = 6.25x6.25x2.5
In this way we find it possible to fill a model with interpolated values calculated at a User Block Size, i.
e. user block size 25x25x10 and still constrain the data within geological envelopes that are able to be
sub-blocked to smaller sizes i.e.6.25x6.25x2.5. This becomes important when considering the size of the
model and the number of calculations to be performed to fill the model.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (4 of 11)02/05/2005 14:55:06

Block Model Concepts

Objective.
To ensure you understand the terms used in setting up a Block Model, answer the following questions.
(Answers may be found in Appendix 1).
1. What base resolution (maximum sub-blocks per-side) will be needed for a model with extents of
Y=1000, X=600, and Z=200, with a user block size of 20x10x5?
2. What resolution (maximum sub-blocks per-side) will be needed for a model which has extents of
Y=1500, X=1000, Z=300 and a user block size of 20X20X10, but sub-blocking to 10x10x5 is
required?
3. What will be the smallest block size for a model which has, maximum sub-blocks per side=128,
extents of Y=500, X=250, Z=100 and a user block size of 10x10x5?
In the following exercise you will view two Block Models, in order that several more Block Model
concepts may be demonstrated.
If do not have the training data installed on your computer, run the Surpac2000 setup program on the
installation CD and choose to down load the demonstration data.
This is the list of files that are necessary for the completion of this tutorial.

Objective.
To become familiar with selecting existing block models.
1. Choose the block modelling menu by right clicking with your mouse at the end of the main
menu bar (to the right of Help)
This will bring up the block modelling menu bar.
2. Select Block Model New/Open. Enter the name of the model as shown below. Leave `Load with
constraints' field at the default setting of N.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (5 of 11)02/05/2005 14:55:06

Block Model Concepts

Look at the bottom right corner of the status line - you will see the block model icon and the name of the
active model. Only one model may be active at a time -this is referred to as the current model.
This model was created using the following parameters:
Extents Y=160 X=160 Z=16 User Block Size 10 x 10 x 10 Maximum sub blocks per side 16
3. Choose Model Summary from the Block model menu.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (6 of 11)02/05/2005 14:55:06

Block Model Concepts

This function shows details of the block model, for display purposes only. Clearly displayed are:

Model origin
Model extent
Block size
Rotation

Also displayed is the Block Resolution, which is the minimum resolution required for this model. The
Maximum Resolution, will always be the maximum sub-blocks per side, as defined when the model was
set up. In the case of this simple model, the block resolution and the maximum resolution are the same,
which indicates that there will be no sub-blocking in this model.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (7 of 11)02/05/2005 14:55:06

Block Model Concepts

The total number of blocks, is also displayed. Why does this form indicate that this model contains only
1 block? Surely, it would be more reasonable to expect that there would be 16 x 16 x 16 = 4096 blocks?
To help conserve memory, the Block Model will minimise the number of blocks required to represent
the volume of space. This is known as Block Aggregation. In this case, as each block has no attributes or
values assigned, the blocks all have the same value, and so have been combined into one block. The
Storage Efficiency indicates how successful this aggregation process has been, where 0% would indicate
no aggregation.
The final part of the form shows any attributes that have been defined. Attributes reflect the properties of
interest that are modelled. The creation of attributes will be covered later in this manual.
It is possible to display the exterior faces of this model in Graphics.
4. Choose Display Block Model from the Block Modelling menu.
5. Apply the following form.

The Block Model will be displayed in plan view. Notice how the model is centred on the screen.
6. To obtain a better view of the model, try the following:
View By Bearing (alias VB) Bearing = 45, Dip = -45 and Zoom Out (alias ZO)
Alternatively try the interactive, on-screen 3D Viewing commands, by simply positioning your mouse in
the Graphics viewport, depressing a mouse button (the left button is best to start), and moving the
mouse. Turn hidden surface removal on (alias HON).
You will see one large pink block displayed.
7. From the navigator window on the left hand side, find Model2.mdl. Select this, and drag it
across into the Graphics window. Apply the following form:

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (8 of 11)02/05/2005 14:55:06

Block Model Concepts

Your model is not being `destroyed', just cleared from memory. There is no need to save it, as we didn't
change anything.
Your status line will be updated to reflect the new current model. This model was created using the
following parameters:

Extents Y=100 X=100 Z=100


User Block Size 10 x 10 x 10
Maximum sub blocks per side 16

8. From the Model sub-menu, choose Summary. (Located at the top of the Block Model Graphics
menu).

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (9 of 11)02/05/2005 14:55:06

Block Model Concepts

If the model was created with extents of 100 x 100 x 100, why does the model summary indicate the
extent to be 160 x 160 x 160? This is because the block resolution specified indicates that the model has
sixteen blocks in the Y, X and Z directions. Thus, Surpac increases the extents in these directions to
accommodate this. However, this does not mean that there will be blocks located where not required.
Notice also that the number of blocks and storage efficiency is different from the first model. To
illustrate these principles, we'll look at the model graphically.
9. Apply or cancel the Block Model Summary form.
10. From the Display menu, choose Display Block Model.
This model is not centred on the Graphics screen, reflecting the user defined extent (100 x 100 x 100)
versus the Surpac extent (160 x 160 x 160) (model space).
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (10 of 11)02/05/2005 14:55:06

Block Model Concepts

11. Draw a 2-Dimensional Grid (20 metre spacing) (alias 2DG).

Notice how blocks have not been created past Y =100 X = 100 (and Z = 100)
12. To obtain a better view of the model, try the following:
View By Bearing (alias VB) Bearing = 45, Dip = -45 Zoom Out (alias ZO)
Alternatively try the interactive, on-screen 3D Viewing commands, by simply positioning your mouse in
the Graphics viewport, depressing a mouse button (the left button is best to start), and moving the mouse.
13. From the Display menu, choose View attributes for one block and click on one of the large
blocks and then on a smaller block.
You will find you have blocks of dimension 80x80x80 and 20x20x20. Why haven't blocks been
aggregated into one large 100 x 100 x 100 block given that all blocks are the same?
This is because when Surpac Vision produces a sub-block, the block size in the Y, X and Z directions is
halved, ie. from one 3-dimensional block, eight equal size 3-dimensional blocks are produced. The same
principle applies when blocks are aggregated. Thus, from a user block size of 10x10x10, blocks of
dimension 20x20x20 can be produced, and then 40x40x40, 80x80x80, 160,160,160 and so on.
Following this principle it is not possible to aggregate 10x10x10 blocks into 100x100x100.

Review
You should now be familiar with the concepts and terms used specifically for the Surpac2000 Block
Model.
Please review this chapter or consult the Online Reference Manual if you are unclear about the
definitions used in this section.

Where To Next
The next section demonstrates the steps involved in creating a Surpac2000 Block Model.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/concepts.htm (11 of 11)02/05/2005 14:55:06

Creating a Block Model

Creating a Block Model

[Previous] [Next]

Table of Contents
Overview

What You'll Learn


Model Definition
Adding Attributes
Background Value
Saving the Block Model
Review
Where To Next

Overview
In this section you will create a Block Model with the qualities required to satisfy the origins and extents of your data.

What You'll Learn


This section will provide an overview of the functionality of the following:

Model definition
Adding attributes
Saving the Block Model

You will be investigating the following scenario:


A gold prospect has been Reverse Circulation and Diamond drilled on a 40 x 40 metre pattern. It remains to estimate
the resource based on the drilling.
The geology has been interpreted on section and three distinct geological ore zones have been identified.
1. SAND - mineralisation is associated with a horizontal palaeo-drainage channel, striking 020. The channel has
an average thickness of 2.5 metres.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/creating.htm (1 of 8)02/05/2005 14:56:03

Creating a Block Model

2. QPY - mineralisation is associated with quartz-pyrite breccia, strike= 035, dip= 40W.
3. BIF - mineralisation is associated with a banded iron formation, strike= 030, dip= 65W.
The base of complete weathering is assumed to be flat lying, and is at 970 m Elevation. The top of fresh rock is
assumed to be at 950 m Elevation.
The drill hole data has been stored in a relational database and several files have been created using some of the Data
Processing functions available in the Surpac Geological Database. These files are:
Down hole composites
CMPS1.STR - 1 metre down hole composites for SAND
CMPQ1.STR - 1 metre down hole composites for QPY
CMPB1.STR - 1 metre down hole composites for BIF
Point Data:
SG1.STR - String file containing specific gravity data for waste and the various mineralised zones.
Geological:
SAND1.STR - Geological interpretations (from section) of the SAND zone
QPY7120.STR to QPY7520.STR (every 40m) - Geological interpretations (from section) of the QPY Zone.
BIF1.STR, BIF1.DTM - Geological interpretation and wire frame (Surpac Solid Model) of the BIF zone.
DHT7120.STR to DHT7520.STR (every 40 metres) - Drill hole sections
Miscellaneous Data:
TOPO1.STR, TOPO1.DTM - String file and Digital Terrain Model of the natural surface.
PIT1.STR, PIT1.DTM - String file and Digital Terrain Model of the design open cut pit.
Take time to view some of the string and DTM files in Graphics to familiarise yourself with the data.

Model Definition

Objective.
To create a Block Model with the parameters derived from the drilling data and also based on the required reporting
requirements.
1. Make sure you have the Block Modelling menu visible. Select Block model New/Open

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/creating.htm (2 of 8)02/05/2005 14:56:03

Creating a Block Model

The SELECT MODEL form will be displayed allowing you to enter a name for your model. The model name
may be up to forty characters in length.
2. Enter the model name as shown below and Apply the form.

If the model does not exist the following form will be displayed, confirming that a new model is to be created. .
3. Apply the following form to begin defining the new model.

The Creating New Block Model form allows you to define:

Description

A description of the model is optional. However, it is useful to record the purpose of the model.

Origin

Discussed previously

Extent

Discussed previously
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/creating.htm (3 of 8)02/05/2005 14:56:03

Creating a Block Model

User Block Size

Discussed previously

Rotation

Discussed previously

Maximum sub-blocks per side

Discussed previously
4. Enter the parameters as shown below and Apply the form.

The Model Confirmation form will be displayed, allowing you to check the model dimensions, rotation, user
block size and minimum sub-block size. If you wish to change any of the model parameters, press the Cancel
button. To accept the parameters, press the Apply button.
5. Check your parameters to match those shown below, and apply the form.
The creation of the block model will begin. The model is created rapidly - the icon in the status bar tells you
when creation is complete.
After the model is created, you cannot alter the extent, rotation, block size, or the maximum blocks per side.
You will need to create a new model if you wish to modify the geometry of the model.

Adding Attributes
The next step in the creation of your block model is to add the attributes. Attributes are the properties of the model
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/creating.htm (4 of 8)02/05/2005 14:56:03

Creating a Block Model

space that are to be modelled. These attributes may be nominal, ordinal, interval or ratio measurements expressed as
numeric or character data. Attributes may also be calculated from values in other attribute fields.
When creating attributes, you must nominate:

Attribute Name

Up to 30 characters in length made up of any printable character. Spaces are allowed in the attribute name, but are not
recommended - these may complicate the use of the Block Maths function.

Attribute Type

This may be a character, real, integer, float or calculated. Float saves the data as a single precision number, to 6
decimal places, and requires 4 bytes/block. Real saves the data as a double precision number, to 15 decimal places, and
requires 8 bytes/block. Therefore, if it is sufficient to store your data to 6 decimal places, when creating your attributes
you should choose an attribute type of float for the most efficient data storage requirements. Integer and character type
attributes also use 4 bytes/block to save the data. Calculated attributes are not stored in the model but rather, are
calculated ``on demand''. No memory is used in storing calculated attributes

Background Value
All blocks must have some value for each attribute in the model. When you first create an attribute you specify this
background value. All blocks retain this value until they are assigned another value, through a block model function. If
the background value is left blank and the attribute is numerical, the background value will be 0. Further information
on appropriate background values will follow later in the exercise.
Attributes may be added and deleted at any time. You may also use Clear Attribute to reset all or part of the model
attribute(s) to their background values. You may change an attributes background value or name using the Edit
Attribute function, however you cannot change the attribute type.

Objective.
To add attributes to the Block Model.
1. Choose New Attribute the Attributes menu.
The Add Attributes form will be displayed. When nominating the attribute type there are three possible ways to
enter the attribute type:

Type the full word using the keyboard, ie. real


Use the browser icon to choose the required attribute type
Type the first character of the required attribute type and press enter

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/creating.htm (5 of 8)02/05/2005 14:56:03

Creating a Block Model

The last option is very quick and easy and in most cases may be used whenever a browser icon is located next
to a field. You need to type in enough characters so that the required field entry is unambiguous. For example,
if you created two attributes called silver and sulphur, whenever you are asked to nominate the attribute you
wish to work with, typing the characters ``si'' and ``su'' will be enough to nominate either of these attributes.
2. Add the attributes as shown below then Apply the form.

3. Select Model Summary to view the results.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/creating.htm (6 of 8)02/05/2005 14:56:03

Creating a Block Model

Saving the Block Model


When working on the Block Model, all data from the model is stored in memory, meaning that you are always
working on a copy of the model. Any changes you make to the model will not be saved until you choose to exit from
Block Modelling, at which time you will be prompted to save the existing model. Thus, it is good practice to save your
model at regular intervals, to avoid the grief that ``accidents'' can cause (ie. interruption to the power supply). After a
Fill or Columns operation (covered later in the Manual), if any blocks have had their value changed, you will be
prompted by a form to overwrite the current model file or to cancel it.

Objective.
To save the Block Model.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/creating.htm (7 of 8)02/05/2005 14:56:03

Creating a Block Model

1. Choose Model Save from the Block Model menu. displayed. Check the message window to ensure that the
model training.mdl was saved.
Do not interrupt the loading or saving operations of the Block Model as you will risk the integrity of the model. At
all other times you are working on a copy of the original model which is stored on the hard disk but during the
saving operation in particular, you might save an incomplete model if the program is aborted during saving.

Review
You should now be familiar with the creation and saving of Surpac Block Models.
Please review this section or consult the Online Reference Manual if you are unclear about the operations covered in
this section.

Where To Next
The next section demonstrates the concepts involved in the creation and application of Surpac Block Model
Constraints.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/creating.htm (8 of 8)02/05/2005 14:56:03

Copyright

Copyright (C) 1995 Surpac Software International Pty Ltd. All rights reserved. Printed in Western
Australia.
Printing History:
November 1995: First Edition.
April 1998: Second Edition.
November 2000 Third Edition
This software and documentation is proprietary to Surpac Software International Pty Ltd.
Surpac Software International Pty Ltd publishes this documentation for the sole use of Surpac licences.
Without written permission you may not sell, reproduce, store in a retrieval system, or transmit any part
of the documentation, except for the brief quotations embodied in critical articles and reviews. For such
permission, or to obtain extra copies, apply to Surpac Software International Pty Ltd at the address
below, or any Surpac office around the world.
Surpac Software International Pty Ltd
Level 8, 190 St Georges Terrace
Perth, Western Australia 6000
Telephone: (08) 9420 1383
Facsimile: (08) 9420 1350
International Telephone: +618 9420 1383
International Facsimile: +618 9420 1350
While every precaution has been taken in the preparation of this manual, we assume no responsibility for
errors or omissions. Neither is any liability assumed for damages resulting from the use of the
information contained herein.
UNIX is a registered trademark of AT&T.
Sun, SPARCstation are trademarks of Sun Microsystems Inc.
PostScript is a trademark of Adobe Systems Inc.
Microsoft, Windows and Windows NT are registered trademarks of Microsoft Corporation.
AutoCAD is a registered trademark of Autodesk Inc.
MicroStation is the registered trademark of Bentley Systems Inc.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/copyright.htm (1 of 2)02/05/2005 14:56:19

Copyright

All other brands and product names are trademarks or registered trademarks of their respective owners.

Last Modified: -8:-2147483648am , January -2147483648, -2147481748

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/copyright.htm (2 of 2)02/05/2005 14:56:19

Constraints

Constraints

[Previous] [Next]

Table of Contents
Overview

What You'll Learn


Constraints form.
Loading a Constrained Block Model
Review
Where To Next

Overview
One of the very powerful features of Surpac Block Modelling is the ability to apply constraints. Constraints are the
logical combinations of spatial operators and objects and may be used to control the selection of blocks from
which information may be retrieved and/or into which interpolations may be made.
Constraints can be likened to queries made from relational databases and parallels can be seen with the ``query
constraints'' used to select a range of drill holes in the Surpac Geological Database module. The noticeable
difference being that the flexibility of the Block Model constraints ``engine'' is much greater.
Constraints may be as simple or as complex as you like, and are most commonly used when:

Filling the Block Model with values


Producing Reports
Viewing models in Graphics.
Loading a constrained portion of a model

The choice of spatial operators you have are:

ABOVE
INSIDE
>

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (1 of 20)02/05/2005 14:56:30

Constraints

<
=

The operator you will use will depend on the nature of your objects. In order to reduce the number of spatial
operators , the word `NOT' is used to imply the opposite of an operation. For example, OUTSIDE would be
represented by the expression NOT INSIDE.
The choice of objects you have are:

Surpac Vision Digital Terrain Model (DTM)


Surpac Vision Solid Model (3DM)
Surpac Vision String
Y , X and Z Planes
Oblique Plane (specified by an equation)
Block value
Constraint

What You'll Learn


In the following exercises, you will create and save several constraints, and view the results in the Graphics
module. Later, you will use these constraints when interpolating values for the model.

Objective.
To learn the layout of the constraints form.
1. From the Block Modelling menu choose Constraints - New constraint file.
The ENTER CONSTRAINTS form will be displayed. The Make Constraints function allows you to create a
constraint without having to perform any other function (ie. filling the model with values). This form consists of a
number of different parts which bear examining. The key to working with the Surpac block model is in the
mastering of this form. The Constraint Type is the most important part of this form - by selecting a type of
constraint to use other parts of the form are turned on and off as required. For example the above form is DTM
constraint. If you were using an extended string constraint the data entry fields would be different. You build a
constraint up by constructing elements and transferring them over to the table on the right hand side of the
constraints form. Once you have constructed your constraint, you save it by filling in the ``Constraint combination
box'' and the ``Save constraint to'' box.
2. Take some time to familiarise yourself with the layout of the ENTER CONSTRAINTS form.
In the following exercise you will create several constraints so that later, blocks in the model may classified as:

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (2 of 20)02/05/2005 14:56:30

Constraints

air
oxide
transitional
fresh

The information you will have to work with is:


TOPO1.STR, TOPO1.DTM (Digital Terrain Model of the Natural Surface) Base of complete weathering is
assumed to be 970 m Elevation, Top of Fresh Rock is assumed to be 950 m Elevation.

Firstly, you will make a constraint to define air blocks.


1. From the Block Modelling menu select Constraints -New constraint file and enter the parameters as
shown below.

The blocks which lie above the natural surface will be stored in the constraint called air.con. As you have a single
constraint there is no need to specify the constraint combination. When processing is complete, the message
window will indicate that the constraint has been saved. This file, air.con, is a binary file and cannot be viewed or
edited outside of Surpac. A quick and easy way to check the constraint is to view the effect the constraint has on
the block model graphically.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (3 of 20)02/05/2005 14:56:30

Constraints

To graphically validate a constraint.


1. From the Block Modelling menu choose Display -- Display block model.
2. Apply the form that appears.
3. From the Display menu select New graphical constraint and enter the parameters as shown below.

Notice that you are adding the saved constraint air, as this is faster than using the DTM again.
4. Use some of the viewing tools to better view the results. (To view in section, use the XZ icon). Turn Hide
On using the Hidden Surface Removal icon and the model will refresh faster on the screen.
In general, always turn Hide On, when viewing Block Models. If Hide is Off and you choose Edit Block and select
a block, you cannot be sure if you have selected a block on the near side or the far side of the model. With Hide
On, the block you select will always be the block you see.
You may add as many constraints until you achieve the result you want. As constraints are added, they are added
to the drawing constraints stack, with the first constraint at the bottom of the stack and the most recent at the top.
In Graphics, constraints are always ANDed, that is only blocks that satisfy all the constraints will be displayed.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (4 of 20)02/05/2005 14:56:30

Constraints

For example, if you were to add another constraint ``NOT INSIDE CONSTRAINT AIR'' to the existing constraint
(INSIDE CONSTRAINT AIR) then no blocks would be displayed as they are either above or below the natural
surface.
Under the Display menu, the function ``Remove last graphical constraint'' will remove the constraint at the top of
the stack and the graphics image will be updated accordingly. Alternatively, the function ``Remove all graphical
constraints'' will remove all of the constraints added to the stack.
5. From the Display menu, choose Remove last graphical constraint.
The original block model will be displayed.
To ensure you understand the use of the NOT clause in a constraint try the following exercise.

To build a simple constraint.


1. From the Constraints menu and choose Add new constraint. Enter the parameters as shown below.

2. Use the viewing tools to see the effect as shown.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (5 of 20)02/05/2005 14:56:30

Constraints

Now you have a constraint (air) that can be used later to classify blocks which lie above the natural surface. The
next step is to create constraints to classify oxide, transitional and fresh blocks.
Firstly create a constraint which will show only oxide blocks (ie. between the base of complete weathering 970 m
Elevation and natural surface). To do this you will make use of a Z plane constraint.

To build a number of constraints to classify oxide, transitional and fresh blocks.


1. Select New constraints file from the Constraints menu and enter as below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (6 of 20)02/05/2005 14:56:30

Constraints

When using more than two constraints, the default combination when saving is constraint a AND constraint b.
That is, only blocks that satisfy both constraints will be saved. Since this is the default combination there is no
need to enter this as the required constraint combination. The next constraint you will make is to classify the
blocks in the transitional zone. These are the blocks between 970m RL and 950m RL.
2. Choose Constraints - Add new constraint and enter the constraint as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (7 of 20)02/05/2005 14:56:30

Constraints

Finally a constraint is required to classify blocks as fresh - that is, blocks below 950 m Elevation.
3. Use Constraints - Add new constraint to make a constraint to show all fresh blocks. Save the constraint to
a file called `fresh'. ( Answer in Appendix 1)
You now have four constraints which may be used to classify material types. In the next exercise, you will make
constraints based on geology.
Firstly, you will make a constraint which contains blocks that are of the ore type QPY. You have a series of string
files ( QPY7120 to QPY7520) which are the digitised outlines of the QPY ore type in section view (ie. Y=
Elevation, X=Easting and Z=Northing). You could wireframe this orebody, but the geology is a little complex, so
you will constrain the blocks to the inside of string outlines and mid way between sections. This type of constraint
is called an extended string constraint. For this example, it will demonstrate the use of string constraints and Y
plane constraints in combination.
The things you should check for before proceeding to use string files in constraints are:

String directions
Strings are closed
Foldbacks in strings
Orientation of strings

The block model will detect and display an appropriate warning message if any problems are detected with
string files, but you will save time if you check the files before beginning modelling.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (8 of 20)02/05/2005 14:56:30

Constraints

To make a combined extended string constraint.


1. From the navigator pane on the left hand side of the screen select all the qpy string files. Holding the Shift
key down enables you to select a range of files. Drag these files over into the graphics window using the
CTRL and Shift keys together so that all files end up in the same layer. You will see all the files appear in
graphics.

2. Save the file as qpy1.str


3. Choose Display - Display block model. Nominate to replace the existing drawing and to clear constraints.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (9 of 20)02/05/2005 14:56:30

Constraints

4. From the Display menu choose New graphical constraint and enter the following.

This is an example of an extended string constraint. Note the format of the constraint when using a string. These
constraints are all ANDed meaning that only blocks which are common to constraint a,b and c are displayed.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (10 of 20)02/05/2005 14:56:30

Constraints

5. View the data in 3D using the on-screen, interactive 3D viewing tools until you completely understand
this constraint. An example of a 3D view is shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (11 of 20)02/05/2005 14:56:30

Constraints

6. From the Display menu, choose Remove last graphical constraint.


Following the same principle, you should now be able to make a constraint which shows blocks that have only the
ore type QPY. However, there are a total of eleven strings and each string requires three constraints and you are
only able to have twenty six constraints entered on a form. You will need to create two constraints, one for the
southern part of the ore body and one for the north and then combine these later.
7. From the Constraints menu, choose New constraints file. Enter the constraints as shown below for
sections 7120 to 7320.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (12 of 20)02/05/2005 14:56:30

Constraints

8. Constraint combination (a and b and c) or (d and e and f) or (g and h and i) or (j and k and l) or (m and n
and o) or (p and q and r). Save constraint to south_qpy.
9. .From the Constraints menu, choose New constraints file. Create a constraint for the northern part of the
ore body (strings 7360 to 7520), using the same method for the south part of the ore body. Save the
constraint as north_qpy. (Answer in Appendix 1 ).
When you are satisfied with your two constraints for the north and south ends of the ore body, they will need to be
combined to form one constraint for the entire ore body. It pays to graphically check these constraints before
making the final file.
You will use the constraints as objects to create a final constraint, for all of the QPY ore body.
10. From the Constraints menu, select New constraints file. Enter the Constraint as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (13 of 20)02/05/2005 14:56:30

Constraints

The results from adding this constraint are shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (14 of 20)02/05/2005 14:56:30

Constraints

In the next exercise you will use a Surpac Vision Solid Model or 3DM to create a constraint. It is important, that
when using a 3DM as part of a constraint, you ensure the 3DM is properly validated. (See the Solids Modelling
Manual for further information on 3DM validation). For this exercise a solid model `BIF1' has been created for
you, which models the Banded Iron Formation ore body.

To build a 3DM constraint called `Bif1.con'.


11. From the Constraints menu, choose New graphical constraint file. Add the constraint shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (15 of 20)02/05/2005 14:56:30

Constraints

In Plan View, this constraint will resemble the following image, we still have the qpy sections displayed. Recall
the 3DM bif1.dtm and see how it relates to the Block Model..

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (16 of 20)02/05/2005 14:56:30

Constraints

To summarise, you should now have the following constraints:


air.con

Blocks above natural surface

oxide.con

Blocks below natural surface and above the base of extremely weathered rock (EW)

trans.con

Blocks below the base of extremely weathered rock (EW) and above the top of fresh rock

fresh.con

Blocks below the top of fresh rock

qpy.con

Blocks for the orebody QPY

bif.con

Blocks for the orebody BIF

When the word AND is used in a constraint combination, blocks that are common to the ANDed constraints will
be selected. When the word OR is used in a constraint combination, all blocks which related to either of the
ORed constraints will be shown, not just those that are common.

Loading a Constrained Block Model


Now that you understand constraints, you will appreciate the significance of being able to load constrained models
into memory. Using constrained models it is possible to load in just the area of the model in which you are

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (17 of 20)02/05/2005 14:56:30

Constraints

interested.
As well as loading geographically constrainted models, you are also able to specify which attributes to load. For
example, you may be carrying a dozen attributes in your model, but only require a couple for the pit design
process. Being able to specify that you wish to load those two attributes into memory rather than all 12, would
reduce the memory requirements six times (for this scenario).
Not only can constraints of block models be loaded for applications such as pit design, but changes to the
constrained model can also be made and the constrained model then merged back into the original model.

To review loading a constrained model


1. Select Block model training.mdl and choose yes to constraints. Enter temp for the name of the
constrained model .

This form allows the user to nominate which attributes to load

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (18 of 20)02/05/2005 14:56:30

Constraints

2. Load the gold attribute as shown.


Note that it is possible to limit the blocks loaded by an attribute value here ie.we could constraint the model with
blocks where gold >1.
3. The next form is the constraints form. Apply the constraint as shown..

The constrained model with only the attributes specified is loaded into memory.
4. Try viewing the constrained model in graphics. You will note that you only see the blocks of interest.
If changes are made to this model the results can be merged back to the original model training.mdl.
Before finishing this chapter go over the following exercises to ensure you understand Constraint combination
expressions. Answers are in Appendix 1 .

To review the use of constraints.


1. In Graphics, draw the blocks which show the QPY and BIF ore bodies.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (19 of 20)02/05/2005 14:56:30

Constraints

2. In Graphics, draw the fresh blocks for the QPY and BIF ore bodies.
3. In Graphics, draw the blocks which show the QPY and BIF ore bodies, 10 metres either side of the Y
plane 7450 mN.

Review
You should now be familiar with Surpac Block Model constraints. Further examples and definitions can be found
in the Online Reference Manual.
Please review this section if you are unclear about the definitions used so far.

Where To Next
The next section demonstrates the steps involved in filling attributes in a Surpac Vision Block Model.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/constraints.htm (20 of 20)02/05/2005 14:56:30

Model Filling

Model Filling

[Previous] [Next]

Table of Contents
Overview

What You'll Learn


Assign Value
Display Exercise
Inverse Distance
Ordinary Kriging
Assign Value
Anisotropy Ellipsoid Parameters
Review
Where To Next

Overview
What You'll Learn
The next step in the block modelling process is to fill the Block Model with values. The Estimation menu
gives you several choices as to how block values will be assigned or interpolated. This section will
investigate some of the more commonly used methods:

Assign Value
Nearest Neighbour
Inverse Distance
The data to be used for the interpolation/assigning of values will most commonly be in the form
of a string file, with northing, easting and elevation stored in the Y, X and Z fields and the values
to be interpolated stored in the description fields.

Frequently sample data would have been stored and then extracted from the Surpac Geological
Database. You should take care to use the appropriate function to create a string file for use when
filling a block model. For example, if your sample data results from sampling of drill holes (ie. samples
have a length and are stored in an interval table) then you should use either:

Composite Downhole or,


Composite By Elevation

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (1 of 16)02/05/2005 14:56:35

Model Filling

to create your string file. This will ensure that the composites have an equal length. If you wish, you can
constrain your composites by geology.
You should not use the Extract Sections for Grade Calculations function. The reason why are as follows:

The samples (potentially) will not have an equal length


You cannot constrain by geology
The description field(s) for the first point is blank.

Also, you should not use any of the other Compositing or Extract Sample Data Functions to prepare
string files to be used as the input for block modelling. The results from these functions are not equally
length-weighted and therefore should not be used as an input for statistics or geostatistics.
Extract Sample Data functions can be used you need to import point type data.
The choices you have when filling a Block Model are:

Nearest neighbour (Assign the value from the closest sample point to the block centroid)
Inverse distance (Interpolate block values using an inverse distance estimator)
Assign value (Assign an explicit value to blocks in the model)
Ordinary kriging (Interpolate block values using Kriging with Variogram parameters developed
from a geostatistical study)
Indicator kriging
Assign from string (Assign to all blocks falling within a closed segment, the value from a
description field in that segment.)
Import centroids (import block-centroid based data from a text file directly into the current
block model)

In the following exercise you will use the Assign Value to assign Specific Gravity values to waste and ore.

Assign Value

Objective
To use the Assign Value fill option to assign air blocks a specific gravity of zero.
1. Make sure you have loaded your training.mdl. If this is active, there will be an icon on the status bar
at the bottom of your screen. You may open the model by clicking and dragging it from the navigator
bar.
The simplest tool you have to fill a block model is the Assign Value function. This function allows
you to assign discrete values to attributes, within defined constraints. In the following exercise,
you will assign air blocks a specific gravity of zero.
2. Choose Assign Value from the Estimation menu.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (2 of 16)02/05/2005 14:56:35

Model Filling

You must now nominate the attribute you wish to assign a value to. This attribute must have
previously been added to the model using Attributes - New.
3. Enter the attribute as shown below.

As you have nominated to constrain the blocks to be interpolated, the Constraints form is
displayed.
This means that you can make and save constraints at the same time as filling the model.
4. Enter the constraint, to constrain the assigning of values to air blocks only.

Once the assigning of the value is complete, you will be prompted to save the updated model. Only if the
model has been changed will you be prompted to save the model. This is a good check on your model
filling. You are not prompted to save the model if no blocks have been changed.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (3 of 16)02/05/2005 14:56:35

Model Filling

5. The Assign Value step just preceding this has assigned an SG of 0 to the air blocks. The default value
for all the other blocks is now the background sg of 2.8 (from the create model exercise).
The process of assign value can be used to apply different SG's to different weathered zones, or
geological zones. This is done by CONSTRAINING the blocks which are used for the assignment.
This is obviously quite a simplistic way of looking at specific gravity. If this were a real scenario we
would probably assign different specific gravities in the fresh and weathered rock zones.
Now that you have filled the model with values for specific gravity, it would be useful to visualise the
results.

Objective
View the results of the fill operations in Graphics.
1. Choose Display - Display block model.
2. Add a New graphical constraint so that you can see the blocks inside the qpy and the bif.

3. From the Display sub-menu, choose Colour model by attribute.


This function enables you to colour blocks based on a numerical attribute.
4. Enter the parameters shown below and Apply the form.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (4 of 16)02/05/2005 14:56:35

Model Filling

Don't worry about the choice of colour - that is entirely up to


you.
5. Using the 3-D viewing tools, view the model.
Sometimes a 3D Grid can help visualise 3D orientation.
6. Find the 3-D grid icon on the main toolbar and accept the defaults.
When viewing block models graphically, a perspective view can often look better than an orthographic
view. A perspective view is more pleasing to the eye as parallel lines appear to get close together with
distance. This is akin to the way people see things in the real world.
7. From the View menu, choose Surface view options - Perspective.
You should be able to see the two discrete geological zones, as shown in the following image.
Next we will try rendering this with a light source to see if we can get it looking even more three
dimensional.
8. Choose the render icon from the main icon bar
For a block model to appear three dimensional with the edges off, once the light is applied you

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (5 of 16)02/05/2005 14:56:35

Model Filling

want to see a different shade of colour on a block for each of the three face orientations. This
light source is from due west. A white light works best on a coloured block model as the white
light does not affect the colours of the blocks.
Now that the model is rendered, visualize it further in 3D using the on-screen 3D viewing tools. You
should be able to obtain an excellent understanding of the shape of the ore body.
Often, Surpac Vision users wish to `import' a block model from other mining software packages for use
in the Surpac Vision Block Model functions.
Another function specifically designed for filling a Surpac Block Model with block model centroid data is
the Import Centroids function.
This function allows you to import block-centroid based data from a text file directly into the current
block model. Each line of the input file must contain one point (with x, y and z coordinates). The block
that this point falls in will be calculated and the specified attributes for this block filled from the data.
This is currently the best method for importing block models from other mining software packages.
To import centroid data from another software package, follow these instructions. This will only work if
the model sub-cells in the same manner that a Surpac block model currently sub-cells ie by half in each
dimension. It is not possible to import a model where blocks are subcelled by different proportions in
the different dimensions, as is sometimes the case with Datamine block models. This method will work
well with regularised data.
1. The first thing to do is create an empty block model with the same origin, extents and cells sizes as the
model to be imported. Make the new model in Surpac with the smallest block size from the centroid
data. Usually Datamine and Vulcan give the origin coordinates and the extent. Ensure the centroids
match up - it is a common mistake to match the block edges of one model with the centroid of the new
model
2. Create the attributes in the new Surpac model by using Attributes - New. The header record of the
data to be imported should let you know what these attributes are called.
3. The easiest format to use is a comma delimited file, rather than space delimited. There are a number
of ways of creating this comma delimited file including importing the raw data through Excel and
saving as a CSV. You can also use the File - Import - Data from one file option in Surpac to create a
comma delimited Surpac string file. This will also aid in visual validation of your data.
4. From the Block model menu chose import text file. Chose the virtual block size that represents the
biggest block size in the data to be imported.
5. Fill in the columns according to the attribute names and the fields in the import file. A log file will
inform you whether or not the action has been sucessful.
6. If you have blocks of varying size in the data to be imported run Step 4 again, chosing the next size
down for virtual block size. eg if the parent cell was 10 x 10 x 5 and the smallest cell was 5 x 5 x 2.5 the
first pass would have filled the bigger blocks.
7. Most importantly run some reports to check volumes against the original model
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (6 of 16)02/05/2005 14:56:35

Model Filling

For an exercise using this function please see the Advanced Fill chapter at the end of this manual.

Inverse Distance
The Inverse Distance method of filling a model, allows you to interpolate block values based on the
values of the sample points closest to the block centroid. The weighting of the surrounding samples is
calculated based on the inverse of their distance to the block centroid raised to a specified power.

Objective
To use the Inverse Distance method to fill the block model with gold grades within the BIF zone.
Down hole composites for the BIF are stored in `cmpb1.str'. We will use inverse distance squared and
the search parameters as shown below.
1. Choose Inverse Distance from the Estimation menu. Fill in the form as follows:.

2. We do not need to constrain the string data at this stage, as this string file was already constrained by
geology when it was composited from the database. As such, it is already only composites for the BIF
type of geology.
3. Enter the Search Parameters as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (7 of 16)02/05/2005 14:56:35

Model Filling

This search parameters form differs slightly to that seen already in that there are two more fields
to be input:

The minimum number of samples to select is a number below which no estimate is made ( in this
case no estimate would be made if only one sample were found within the search ellipsoid. )
The maximum number of samples is a means of restricting the estimate to the nearest ``n''
samples ( in this case 10 )

4. Enter the Inverse Distance Parameters as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (8 of 16)02/05/2005 14:56:35

Model Filling

Descretisation points.

If you leave these fields at 3, 3 and 3, each user block in the model is subdivided into 27 sub-blocks and
the grade estimated is at the centroid of each of the sub-blocks. The mean of the grades for the 27 subblocks is then calculated and this is the grade assigned to the block. This obviously increases processing
time compared to x,y and z being set to 1).Using inverse distance there is often no appreciable benefit in
making these extra calculations
5. Constrain the interpolation of Blocks to BIF only.

Once processing is complete, save the updated model. The output file will contain a summary of the
estimation parameters.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (9 of 16)02/05/2005 14:56:35

Model Filling

6. Use the Inverse Distance method to fill the block model for the QPY zone. Down hole composites of
QPY only are stored in `cmpq1.str'. Enter the data specifications as shown below after selecting
Estimation - Inverse distance.
Note the data in the string file is already constrained by the geology.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (10 of 16)02/05/2005 14:56:35

Model Filling

7. Enter the Inverse Distance Parameters as shown below

8. Constrain the interpolation of blocks to QPY only


file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (11 of 16)02/05/2005 14:56:35

Model Filling

An interesting exercise would be to compare the results with all parameters equal except for
descretisation. Try running the descritisation at 3 x 3 x 3 and then compare the results. To do this
you could create different attributes to store the results of different block model estimations and
then use Block maths to subtract the results of one from the other. (The Block maths function is
detailed in a later chapter).

Objective.
View the model using the Viewer Tools in Graphics to validate that the gold values have been correctly
filled.
1. Choose Display - Display block model.
2. Choose Display - New graphical constraint and nominate to view all blocks with a gold value >1.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (12 of 16)02/05/2005 14:56:35

Model Filling

This is an example of a Block constraint where you constrain on the value of blocks in the model. This is
another powerful method of constraining the model and it is important to understand its application.
3. Use the View tools to interrogate the image.

Ordinary Kriging
Another method of filling a model is using the Ordinary kriging function. This will be discussed in a
later section. A necessary pre-requisite is the development of an acceptable variogram. However, the
use of the function is similar and as simple as the other methods you have already covered.
The only variation when using this function is that the user may create an attribute to which the kriging
variance is stored. This may be used to help classify resource categories for reporting purposes.

Assign Value

Objective
To use Assign Value to fill a new attribute called ``material''.
1. Choose Attributes - New to add a character attribute called material.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (13 of 16)02/05/2005 14:56:35

Model Filling

2. Choose Assign Value to assign the material values in the following manner:
Answer in Appendix 1. Save the Block model.
When creating character attributes, it is a much better technique to enter a background value of
unassigned as opposed to leaving the background value blank. The reason for this is that later on,
when reporting on the model by this character attribute, if any blocks have not had this attribute
assigned, this will be very evident as ``unassigned'' will show up in the report. If no background
value is entered a blank space will show up in the report next to the reported values. This still
signifies that these blocks have not had a value assigned, but it is much easier to miss this than if
these blocks were clearly tagged unassigned.
It takes no more memory or storage space to have a background value of unassigned as opposed to a
blank background value, as the actual text is just stored once in the model file and then referenced.

Anisotropy Ellipsoid Parameters


At this point, we will step back and look at the issues and requirements of the Anisotropy Ellipsoid
Parameters.

Objective
To create an anisotropy ellipsoid for visual validation of geostatistical search ellipsoid inputs.
1. Choose Block model -- Estimation -- Ellipsoid visualiser and enter the form as shown.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (14 of 16)02/05/2005 14:56:35

Model Filling

2. Select the "Save now" button on the form to save a ellipsoid string file at the specified coordinate
origin.
The result is a string file representing the orientation and dimensions specified in the form. When
exported at a specified coordinate origin it can be recalled into graphics in close proximity to the data
and thus be used for visual confirmation.
3. Recall the file ellipsoid_qpy1.str into a graphics layer of the same name and then recall cmpq1.str
into a different layer.
Tip: dragging a string file into graphics from the navigator pane automatically places the data into a layer of
the same name.
3. Modify the styles of the cmpq1 layer to display the samples as markers instead of lines (alias sss =
styles string) .
It should now be possible to determine if the anisotropy ellipsoid is sufficient in range in each of the
three dimensions (major, semi-major and minor) to find sufficient samples to inform the block model. It
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (15 of 16)02/05/2005 14:56:35

Model Filling

is also valuable to determine if the ellipsoid is correctly oriented as it is a common mistake to rotate the
ellipsoid in the wrong direction.
Note that it is also possible to invoke the ellipsoid visualiser on all of the relevant estimation forms such as
inverse distance and ordinary kriging and the rotation parameters specified will populate subsequent forms.

Review
This section has covered some very important concepts relating to populating the Block Model with
data. It would be advisable to consult the Online Reference Manual at this stage to ensure that these
concepts are clearly understood.

Where To Next
A later section will cover some more advanced filling methods. The next section involves the generation
of Block Model Reports.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/modelfilling.htm (16 of 16)02/05/2005 14:56:35

Reporting

Reporting

[Previous] [Next]

Table of Contents
Overview

What You'll Learn


Block Model Report
Isosurfaces
Exporting Centroids
Review
Where To Next

Overview
What You'll Learn
This section demonstrates the use of the Block model report function and associated exporting functions:

Block model reporting


Isosurfaces - 3D contours
Exporting block model centroids

Block Model Report


The Block Model Report function allows you to create a customisable report for printing. You may choose to report average or aggregate values for
numeric attributes, as well as ordering the report by attribute. You can create a template for reporting so that subsequent runs of the same report can be
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/reports.htm (1 of 8)02/05/2005 14:56:48

Reporting

made using different constraints.


This function may be accessed from the main Block modelling menu by selecting Block model - Report. Reports suitable for printing are quick and easy
to produce and the next exercise will demonstrate the use of this function.

Objective
The first report you will produce will show the Volume, Tonnage and average gold concentration, every 10 metres in elevation, for several nominated
gold concentration ranges.
1. Make sure you have training.mdl loaded up. Either click and drag the model from the navigator to load or chose Block model open. Choose
Report from the Block model menu We need to define a format for our report .

You can chose one of a number of different formats for your report to be created in. The choices are:
html - for use with web browsers
rtf - format used by many word processing packages
pdf - Adobe Acrobat format
ps - Postscript files - many printers read this format directly
not - the original Surpac text file
csv - can be imported into spreadsheets and databases easily

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/reports.htm (2 of 8)02/05/2005 14:56:48

Reporting

If you make a format file for your block model report you have a convenient way of obtaining the same format report within various constraints ie you
can run this report again for some other part of the ore body without recreating a new format file.
2. Enter the parameters as shown below.

Report description

Your header may be of any length and will appear on all reports produced with this format

Attributes to report

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/reports.htm (3 of 8)02/05/2005 14:56:48

Reporting

You may list any number of numeric attributes to be averaged.

Weight by mass, volume or none

Mass is most common. When using mass a multiplication factor for the volume must be entered eg a specific gravity.

Report

Average or aggregate (the nominated attribute can be reported as an average, ie. average copper grade or aggregated, i.e. summation of all the stored
attribute values).

Multiplication factor volume

Volume and mass may be reported. If you wish to report for volume mass, then this may be calculated by using a fixed value, or by using a nominated
attribute.

Attributes to group

List here the way in which attributes are to be grouped and the order to appear in the report. In this example, the report will be grouped by elevation (z)
from 820 to 1020 every 10 metres, and grouped by gold grade in the nominated cut-off grades. As the z attribute is listed first the report will show each
elevation and then the grade ranges for each elevation.
3. Enter the constraint as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/reports.htm (4 of 8)02/05/2005 14:56:48

Reporting

The report will be produced. The message window will show the total volume, mass and average gold grade. The full report is contained in the file called
training.csv.
The message window should report the grand total volume and tonnes for immediate verification that the report has been completed.
4. The report will appear in the report viewer window.
5. Produce a report grouped by material type and gold grade. You will need to make a new format file. Choose Report from the Block model
menu and enter the parameters shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/reports.htm (5 of 8)02/05/2005 14:56:48

Reporting

You will notice we are producing a report in a different format just so you can see the difference. Each site will have different requirements for reporting.
6. Fill in the block model report form as follows.
7. Enter the character attributes for material as shown below and apply the form..
8. Enter the constraint as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/reports.htm (6 of 8)02/05/2005 14:56:48

Reporting

9. The resultant file will appear in the report viewer. The grand total should match the previous report `training.csv'. This is a good check.
10. Try creating a report which reports average gold grade and groups by elevation, material type and gold grade for QPY and BIF.

Isosurfaces
This function generates 3D triangulations of approximations to isosurfaces (that is, surfaces with a constant attribute value) from data stored in the block
model.
The 3DMs generated by this function are typically used to enhance the visualisation of data. eg. a 3D contour of the 2 gram cutoff surface for a particular
attribute.
As with all functions in Block Modelling, you may apply a simple or complex constraint to the model when generating the isosurface.

Exporting Centroids
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/reports.htm (7 of 8)02/05/2005 14:56:48

Reporting

This function is used to export out a block model for use in another mining software package. There are two different methods - export centroids and
export centroids and block faces. These functions produce a string file with the centroid position and selected attributes listed in the descriptive fields.
The easiest method to use is found under the Block model menu - Export - Block centroids to string file. The resultant string file is an Ascii file which
can be easily read in a text editor.

Review
This section has covered the basics concepts of:

Block Model Reports


Isosurfaces
Exporting centroids

Further information is available in the Online Reference Manual. Please review and practice these reports to gain a full understanding of them.

Where To Next
The next section deals with the extraction of sections from the Block Model.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/reports.htm (8 of 8)02/05/2005 14:56:48

Sectioning

Sectioning

[Previous] [Next]

Table of Contents
Overview

What You'll Learn


Section along Northings.
Plan sections
Review
Where To Next

Overview
Surpac allows you to extract orthogonal, oblique and/or dipping sections through a Block Model. You may extract either block centroids or block outlines.
The results are written to a string file, with attributes stored in description fields. The resulting files may be used for further manipulation.Sectioning tools
are located on the main block model menu bar.
The following exercises will demonstrate how to extract sections, and some of the potential uses for the resulting files.

What You'll Learn


This section will cover the following concepts:

Extracting sections normal to the Y axis


Extracting sections normal to the Z axis
Avoiding sections coincident with block faces

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (1 of 13)02/05/2005 14:57:27

Sectioning

Plotting sections

Objective.
To create northing sections (perpendicular to the Y axis) through our block model
1. Ensure you are connected to the training.mdl. You can check to see if the icon is present on your status bar at the bottom of the screen. Connect
by clicking and dragging from the navigator.
2. Choose Sections - Create.
The first step in extracting sections, is to nominate the sectional type required. The choices you have are:

Normal to the Y, X or Z axis (most commonly used)


Plan or vertical section (need to enter horizontal or vertical constraints for these options)
Axis (using end point), (typically for oblique sections)
Axis (using bearing and dip), typically for inclined oblique sections
The define button is used when extracting plan, vertical, axis (end point) and axis (bearing and dip) sections. It brings up another form which allows
you to define your extraction details more specifically.

In this exercise, you will be extracting sections normal to the Y-axis and so will not need to use this button.
3. Enter the parameters shown below, but do not apply the form.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (2 of 13)02/05/2005 14:57:27

Sectioning

The above example shows a common mistake made when extracting sections.
This model was originally set up with an origin of 7100 North and a block size in the y direction of 10. Therefore extracting a section at 7120 would
actually extract values from the blocks extending from 7110 to 7120 and also from the blocks extending from 7120 to 7130. Plotting this section would
result in the grades being over plotted as two values would be plotted at every block.
You do not want your section range to correspond with block edges - this results in duplicate strings for each section.
To avoid duplicate segments in the section string file, complete the form as shown below:

It is obviously not desirable to extract sections at 7120.0001 or at 7115.0001 if your drill holes sections are at even multiples of 10. This should be
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (3 of 13)02/05/2005 14:57:27

Sectioning

considered when creating the model in the first place. In our example, it would have been better to have the origin or our block model at 7105 or
6995 so that block model sections could be extracted at the same section interval as the drill hole sections and geological interpretations (without
producing duplicate segments).
The file created called `defgrp0' is a string file which shows the section boundaries, as a series of strings. It is not very useful for this type of section
extraction, but can be very useful when trying more complex extractions, such as Axis (bearing and dip). It allows you to preview where the section will be
extracted.
The next step is to nominate an output file location and details of how the section will look.
4. Enter the details shown below and apply the form

.
5. Constrain the extraction to the BIF or QPY blocks as shown

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (4 of 13)02/05/2005 14:57:27

Sectioning

Once processing is complete, your message window will indicate the files created. The section files can now be combined with raw drilling data to help
check the validity of the model.
6. By right clicking in the menu area, bring up the geological database menu.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (5 of 13)02/05/2005 14:57:27

Sectioning

7. From the Display menu, select Section files and enter the following parameters..

8. Now bring in the string file sect7200.str by clicking and dragging from the navigator.
On section you now have the original sample drilling displayed with the model blocks for the 7200 mN section, as shown below. These string files could
also be used to produce a plotted map.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (6 of 13)02/05/2005 14:57:27

Sectioning

Objective.
This exercise will demonstrate how to extract sections normal to the Z-axis and produce a simple map which could be used for mine planning purposes.
When the model was set up, the Z origin was at 820 mEl and the Z block dimension was 5 metres. This means that at intervals of 5 metres in elevation (ie.
825, 830, 835, 840...) there will be coincident block faces. If sections are extracted at these elevations there may be two coincident segments for each block
outline or centroid. This may then create problems, especially when plotting.
For the purposes of this exercise, assume that mining will be on 5 metre benches and that bench plans are therefore required mid-bench (ie. bench from
970 - 975 has mid-bench of 972.5). The bottom cut-off is 1ppm gold.
1. Choose Sections - Create from the Block model menu and enter the parameters as shown below.

2. Define the section files as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (7 of 13)02/05/2005 14:57:27

Sectioning

The name `sect' may be confusing here because, in essence, these are not ``sections'' but plan slices through the model. A better name for this may
be `plan' or `bm_plan' but for now we will leave it at `sect', as a pre-defined map for plotting in a subsequent exercise uses this name.
When extracting plan view ``sections'' as above, coordinates can be set to Section View or Real World. See the Online Reference Manual for a detailed
explanation on this field and how it affects the function.
3. Enter the Constraints as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (8 of 13)02/05/2005 14:57:27

Sectioning

4. Call up the string file `sect9725' by clicking and dragging from the navigator. Bring in the string file lev9725 into the same layer by using Ctrl
drag from the navigator.
On screen you should have the ore blocks for the 972.5 mEL and the pit outline. There are blocks outside of the design pit, so before continuing, it would
be useful to calculate the volume, mass and average gold content inside the pit limits. This can be achieved using Block model report.
5. Choose Report from the Block model menu and enter the parameters as shown below. We can use the same format file that we created earlier.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (9 of 13)02/05/2005 14:57:27

Sectioning

6. The only thing we need to change to get our report is the constraint that we use. Enter the constraint shown below. (Note the use of an extended
string constraint limiting the report to blocks inside the pit outline).
Your report will come up in the Print Preview window and the results will also be reported to the message window
Finally, we will produce a map to show the results.
7. From the File menu choose Open - Plotting Window.
8. Go to Map - Edit and select the map called Ore Blocks. Modify the map as follows:

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (10 of 13)02/05/2005 14:57:27

Sectioning

9. Select Process Map and process the map Ore Blocks.


10. Enter the Plot Presentation Parameters as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (11 of 13)02/05/2005 14:57:27

Sectioning

11. Once processing is complete, the plot will appear in the plot preview window.

Review
This section has effectively covered the more commonly used vertical section and plan section extractions from the Block Model and also the conventions
and pitfalls of sectioning. Information about the other section types:
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (12 of 13)02/05/2005 14:57:27

Sectioning

Plan or Vertical Section


Axis (using End Point) (typically for oblique sections)
Axis (using bearing and dip) ( typically for inclined oblique sections)

can be found in the Online Reference Manual.

Where To Next
The next section introduces the concepts involved in manipulating values stored in the Block Model using general expressions, ie. Block Maths.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/sections.htm (13 of 13)02/05/2005 14:57:27

Block Maths and Calculated Attributes

Block Maths and Calculated Attributes

[Previous] [Next]

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.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/blockmaths.htm (1 of 8)02/05/2005 14:57:35

Block Maths and Calculated Attributes

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
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

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/blockmaths.htm (2 of 8)02/05/2005 14:57:35

Block Maths and Calculated Attributes

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)

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/blockmaths.htm (3 of 8)02/05/2005 14:57:35

Block Maths and Calculated Attributes

You can see that a grade greater than 10 has been cut back to 10 in the new calculated cut_gold attribute.
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:

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/blockmaths.htm (4 of 8)02/05/2005 14:57:35

Block Maths and Calculated Attributes

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.

2. Select Attribute - Maths. Enter the Immediate If expression as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/blockmaths.htm (5 of 8)02/05/2005 14:57:35

Block Maths and Calculated Attributes

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.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/blockmaths.htm (6 of 8)02/05/2005 14:57:35

Block Maths and Calculated Attributes

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
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/blockmaths.htm (7 of 8)02/05/2005 14:57:35

Block Maths and Calculated Attributes

in the Block Model functionality. We will begin with Whittle Model importing and exporting.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/blockmaths.htm (8 of 8)02/05/2005 14:57:35

Whittle Interface

Whittle Interface

[Previous] [Next]

Table of Contents
Overview

What You'll Learn


Who uses Whittle? What is Whittle? Why would you use
Whittle?
Who Needs Pit Optimisation?
Exploration Geologists
Project Financiers
Mining Engineers
The Whittle Interface
Review
Where To Next

Overview
A direct interface has been developed within the Surpac block model to Whittle Programming's suite of
optimisation products.

What You'll Learn


This section gives a brief overview of the Whittle interface

Who uses Whittle? What is Whittle? Why would you use Whittle?
The abstract below was written by Nick Journet, Principal Mining Engineer of Windrush Mining
Technology in Perth, WA. Nick is a specialist in pit optimisation and carries out optimisation studies on
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/whittle.htm (1 of 6)02/05/2005 14:57:41

Whittle Interface

30 different mineral deposits each year. Deposits covered range from gold through base metals to
diverse industrial minerals.

Who Needs Pit Optimisation?


These days when we think of pit optimisation software, we think of Whittle. Whittle Programming
produce the World-renowned pit optimisation packages called Three-D, Four-D and Four-X. Four-X
differs from Four-D in that it can optimise multi-element deposits.
Briefly, if a resource model is optimised for a given set of economic parameters, mining and
metallurgical recoveries, and pit wall angles; the result will be a single optimal pit outline. Three-D
optimises cash flow which is usually adequate for limited life projects. Four-D and Four-X introduce the
fourth dimension, which is time. Both Four-D and Four-X packages will optimise net present value of an
open pit for a given set of production and discount rates.

Exploration Geologists
As development capital becomes harder and harder to raise, companies are becoming smarter with the
way they spend their exploration budgets. One way that this can be done is to drive an exploration
program with pit optimisation.
In attempting to prove up an open pit reserve, it would be pointless to sink holes to extend the known
depth of the deposit beyond the economic limit of an open pit. A well organised exploration program
could update a simplistic resource model ``on-the-fly'' as new drillhole results become available. Using
conceptual economic parameters, the resource model could be regularly re-optimised. There are even
techniques to test the blue sky potential of a deposit by artificially extending the depth of mineralised
blocks.
Two or more mineralised zones can often co-operate to mine the same portion of waste. Such an
excavation can result in a saddle-back. The question is often asked once mining is well underway, ``is
the saddle-back barren?'' By employing pit optimisation techniques at an early stage, the explorationist
can identify and confirm whether the saddle-back is real or perhaps caused by shortage of data.

Project Financiers
Today pit optimisation is a prerequisite before any new open pit project is given approval and allowed to
get off the ground. The Whittle range of optimisation products are recognised as world leaders. In
simple terms, bankers and mining executives trust Whittle software can help them meet their objectives
which are to:

maximise return on investment

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/whittle.htm (2 of 6)02/05/2005 14:57:41

Whittle Interface

minimise risk
ensure all corporate objectives are met

Traditionally, Four-D and lately Four-X, have been used to optimise net present value. In today's
corporate climate where many mines use sophisticated hedging techniques to forward sell production
thereby guaranteeing their revenues, it is often not appropriate to optimise an operation on net present
value alone. For instance if a company has locked into a high forward sales price, the average cash
operating cost of the optimal net present value pit may indeed be higher than the spot metal price. If this
were the case, the company would trade more profitably, and with less risk, if it ceased mining and
became a metals trader instead. The trick is to choose a pit outline and mining sequence where the
marginal operating cost per unit of metal (say for gold $/oz), is always less than the metal's spot market
price. Adopting this approach, the company will maximise benefit from its forward sales policy.
If there are uncertainties in metal price, operating costs and recoveries, it becomes a relatively trivial
exercise to run a sensitivity analysis on these parameters. With Four-D and Four-X, it is possible to
quantify and develop a risk profile for project within hours. Experience has shown that nine times out of
ten, a project is more sensitive to changes in grade than anything else. Therefore, if the resource model is
inaccurate, sensitivity to changes in other parameters becomes irrelevant.

Mining Engineers
An optimisation using Four-D and Four-X, generally produces between 40 and 99 nested pit shells. Each
shell represents the optimal pit outline for a given metal price or mining cost (all other parameters
remaining constant). If the smallest shell is evaluated with a realistic metal price and mining cost, it will
provide the fastest return.
Mining engineers can use this to identify the correct position for a ``starter pit''. For larger projects,
subsequent pit shells are used to prepare an orderly (and optimal) mine development schedule. The pit's
push-back sequence can be guided by nominating specific pit shells. The analysis programs will
calculate net present value for:

the worst case schedule which is flat bench mining to the ultimate pit limit
the best case schedule which is mining incremental shells and is usually not practical, and finally
the specified push back schedule which aims to simulate the actual situation

With the advent of the Whittle Interface to the Block Model, engineers now have a sensational tool to
calculate mining and processing costs for individual blocks and rock types using the powerful
constraints engine. Traditionally, a project is optimised during the feasibility study stage. Some mines
are becoming more sophisticated and optimise each year to define their ore reserve statement. The block
model becomes an ideal storage medium for operating cost data as well as grades, rock type and bulk
density information. If this data is kept up date, automated re-optimisation can be a macro and a few
mouse clicks away. Incredible, imagine being able to use pit optimisation to guide short term as well as
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/whittle.htm (3 of 6)02/05/2005 14:57:41

Whittle Interface

long term planning projects.


Used in conjunction with the Surpac block model, the Whittle pit shell outlines, have never been
presented better. Using all the sophisticated block model query tools at your disposal, you can calculate
isopachs which show the difference between an optimal pit shell and the current topography or another
pit design. Results, when visualised with Surpac's rendering and colourisation tools will leave you
stunned.
For more advice on pit optimisation and its use with Surpac, contact Nick Journet, the Principal
Engineer for Windrush Mining Technology, Perth, WA. Nick can be reached though e-mail at
windrush@iinet.net.au or through your local SSI support centre.

The Whittle Interface


The Whittle interface is accessed on the Block modelling menu bar under Block model - Export - To
Whittle

The form shown below is the only form to complete (other than the constraints form, if constraints are to
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/whittle.htm (4 of 6)02/05/2005 14:57:41

Whittle Interface

be applied to the export).


The cost adjustment factors are stored as attributes in the model. Therefore adding these to your block
model is an important part of the pre-processing, and this will generally be performed using the block
maths function.
The results from the Export to Whittle 4D are two files, the Whittle model file and the Whittle
parameters file.
The form below is completed as would be typical when performing an export from the block model to
Whittle 4D. As you can see, the interface itself is very straightforward. The `work' involved is all in
ensuring your model is valid.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/whittle.htm (5 of 6)02/05/2005 14:57:41

Whittle Interface

Upon applying this form, the function will start processing. The processing feedback scroll bar will go
across once, from 0 to 100%, which gives excellent feedback as to how long the process will take. Also,
the function line reads ``Exporting Whittle file filename.mod''.
The result is a valid Whittle model file and parameters file.
After running the Whittle pit optimisation, to bring the results back into Surpac2000, when prompted for
a model to load, simply choose the Whittle file. This will either have a .mod, .eco or .res extension.
A specific example is available in the dem\examples\whittle directory of our demonstration data
distributed with Surpac.
The data used in this demonstration is the Simba Mining Corporation data also referred to in the Online
Reference Manual. It has been converted to be used in conjuction with the Block Model interface.

Review
This section gives a broad overview of the concepts of Whittle model import and export using the
Surpac Block Model.

Where To Next
The next section covers some of the column filling functions of the Surpac Block Model with emphasis
on their use in economic modelling.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/whittle.htm (6 of 6)02/05/2005 14:57:41

Column Processing

Column Processing

[Previous] [Next]

Table of Contents
Overview

View data
Classify blocks into Ore and Waste
Reduction Dilution
Recoverable Product
Thicknesses
Review
Where To Next

Overview
This section takes an existing block model and uses Surpac's block model column processing functions to evaluate the economics of the
block model.
The supplied data is a block model containing only one attribute, `grade', and a DTM representing surface topography. This section will go
through the following processes:

Classify blocks as ore and waste based on a cutoff grade and minimum mining thickness.
Apply reduction and dilution at ore/waste contacts
Calculate recoverable product
Determine bottom of economic ore
Calculate economic ore volume, grade and total recoverable product.

Objective
To familiarise yourself with the data graphically.
1. Load the block model called blockmodel.mdl into graphics by clicking and dragging from the navigator. Colour on grade (use a
grade range of 0;6;8;999) by using Display - Colour model by attribute. View in 3D. Constrain to blocks where grade > 0. You
should be able to generate an image on the screen similar to the one shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (1 of 25)02/05/2005 14:57:57

Column Processing

The purpose of this section is to teach the block model column functions, not to teach block model fundamentals. If you are
unsure of how to generate the image, you should re-do the first half of this manual which contains details on the block
modelling basics
This is a perspective view looking at a bearing of 330 degrees and a dip of -10 degrees. The light source is from the south at 0,1,0.5.
The blocks in this model are 35 metres in the x and y dimensions and 3 metres high. Because the vertical extent of this model is limited
compared to the horizontal extent, we will vertically exaggerate this model five times using the View Scale function (under View - Data
view options - View scale factor).
After exaggerating the model five times, to get our view at a bearing of 330 degrees and a dip of -10 degrees back, we need to set the View
by Bearing function to a dip of -2, the dip you want divided by the vertical exaggeration. Orbit Up once (by the default rotation increments
of 10 degrees) so you are viewing the model at a bearing of 330 and a dip of -20.

2. Recall the topography DTM, Blocktopo1.dtm into Graphics and view this at the same time as the block model. Note the

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (2 of 25)02/05/2005 14:57:57

Column Processing

separation between the topography and the highest blocks with any grade. This separation is the overburden.

3. Use the on-screen viewing tools to become familiar with the model. Perhaps slice the model to see the internal structure, as
shown below.
4. To slice the model, first change your view back to plan view. Zoom All is an easy way to do this. Choose the function Add Slice.
With the mouse, click and drag a slice orientation from left to right close to the south end of the model as shown below, just inside
the model area.

5. For slices at a 250 metre spacing, as shown above, complete the form as shown in the second form below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (3 of 25)02/05/2005 14:57:57

Column Processing

After applying the form above, a 35 metre slice (one block width) will be generated every 250 metres, as shown below. These slices can
then be viewed in 3D

Once familiar with the model, we are ready to start the economic modelling process.

Objective
To classify blocks into Ore and Waste based on minimum mining thickness and cutoff grade. The functions used will be BM Column Tops
and BM Ore Waste Discrimination.
The first part of this process is to create surfaces which represent the top and bottom occurrence of material above the cutoff grade. The
reason for this is that you will never mine a block as ore at the top or bottom of your ore body if its grade is below cutoff grade. Ideally,
you will start and stop mining ore at the first and last occurrence of a block above cutoff grade, for a given column.
It must be stressed that the column processing functions are just that, column processing. They process each column independently of all
other columns and so do not take into account grades in adjacent columns. This methodology has some applications in determining
economic mining depths, as this exercise will show, but it is only one dimensional and should in no way be considered as a substitute for a

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (4 of 25)02/05/2005 14:57:57

Column Processing

three dimensional pit optimiser such as Whittle.


The first step is to run Column Tops to create surfaces which represent the top and bottom occurrence of material above cutoff grade.
These surfaces will then act as constraints for the ore/waste discrimination. In this way no sub-grade blocks at the top or bottom of the ore
can get grouped in with the ore during the ore/waste discrimination process.
1. Choose Column processing - Column tops and complete the forms as shown below.

This will search down through the block model extracting a point at the top of the first block in each column where the grade is greater than
8. The result will be a string file called `top_cutoff1.str'. The `nominal value above top' (first form) is the default elevation which will be
assigned if no blocks in the column satisfy the constraint. As a rule of thumb, when extracting upper surfaces, the nominal z elevation
should be set to an elevation below your model and when extracting lower surfaces it should be set to an elevation above your model.
2. Repeat the Column Tops function to create `bot_cutoff1.str'. This time the search is in the Z direction (positive Z is up) and the
nominal elevation should be set to 400.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (5 of 25)02/05/2005 14:57:57

Column Processing

3. Create DTMs from `top_cutoff1.str' and `bot_cutoff1.str', specifying N to use strings as break lines. Use Surfaces - DTM File
functions - Create DTM from string file.
4. View DTMs in Graphics to ensure all is OK. Upper DTM shown below. Note how it follows the top of the first block above cutoff
grade.

5. Choose Layers Status (alias L) and make all layers not visible so only the block model remains visible on screen. (The block
model is on its own layer which does not show up when using layers function).

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (6 of 25)02/05/2005 14:57:57

Column Processing

The next step is to add two attributes to the model which will be filled in the Ore/Waste Discrimination function. These are:
composite_grade and ore_waste_flag.
6. Choose Attribute - New and complete form as shown below.

The ore_waste_flag is a flag which will signify an ore block if set to 1 and a waste block if set to 0. The composite_grade attribute will
store the grade for a contiguous set of ore and waste blocks in a column.
7. Choose Column processing - Ore/Waste discrimination and complete the form as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (7 of 25)02/05/2005 14:57:57

Column Processing

We are specifying minimum mining thicknesses of ore and waste of 6 metres and a cutoff grade of 8.
This function classifies blocks as ORE or WASTE according to a cutoff grade and minimum thickness criteria. The ore/waste classification
is stored as an integer value in the ore_waste_flag attribute which facilitates colouring the model on ore/waste. A master attribute is
specified (grade) and an attribute to store the composite grade for each resulting ore and waste layer. Further attributes can also be
composited if they exist, based on ore/waste classifications on the master attribute.
The mining method to use is also specified in the Digging Zones field (Truck and Shovel, Dragline, or None). This determines whether
different ore and waste minimum thicknesses are specified depending on the location of the blocks within the bench. This is because the
mining equipment can have different selectivity capabilities depending on where the mining is taking place within the bench. At the top of
the bench, the equipment can be more selective than lower in the bench. For the initial economic evaluation, we will choose no digging
zones and the ore and waste minimum thicknesses will be consistent throughout the model.
For further detail on the digging zones and the Maximise field, refer to the Online Reference Manual.
8. Fill in the constraints form as follows:

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (8 of 25)02/05/2005 14:57:57

Column Processing

Note: it is very important that this function be applied using the above constraint. This way no outlying sub-grade waste blocks will be
included in the top or bottom ore layers. This constraint should be saved for future processing
A summary is shown below.

9. View the results of this function graphically. Colour the model on the ore_waste_flag attribute as shown below. Ensure you are
viewing the blocks within your new constraint file - top_bot_cutoff.con.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (9 of 25)02/05/2005 14:57:57

Column Processing

This should colour the model as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (10 of 25)02/05/2005 14:57:57

Column Processing

The yellow blocks are ore and the blue blocks are internal waste. Note that the minimum mining thickness of 6 metres (2 blocks in
elevation) has been taken into account.
10. Choose Display - View attributes for one block and select a block. The composite grade will be reported. This is the average
grade for all contiguous ore or waste blocks in that column. If you select a block above or below this block in the same layer, it will
have the same grade. All ore layers have a composite grade greater than 8 and all waste layers have a composite grade below 8.
11. Show only the internal waste in the model so we can see its distribution in 3D, like the image below.

Choose Display - New graphical constraint and add the constraint = BLOCK ore_waste_flag 0.
These functions can also be used for calculating such things as cumulative grades in a stope in any orientation. The above example is only
utilising the Z direction for compositing columns.

Reduction Dilution
Because of the practical realities of mining, it is impossible to mine exactly to an ore/waste contact. There will be some material blending
at the contact. Chances are there will be some ore which will be mined with the waste, and some waste which will be mined with the ore.
The Reduction Dilution function in the block model allows you to specify your expected reduction and dilution parameters, and then this
function will calculate a diluted grade for each ore and waste layer. This will give the best estimate of the grade of material actually mined.
The first step is to add another attribute to the model.

Objective.
To use the Dilution & Reduction function.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (11 of 25)02/05/2005 14:57:57

Column Processing

1. Choose Attributes - New and add an attribute called diluted_grade, of type float and background value -99.

2. Choose Column processing - Dilution and reduction and complete the form as shown below.

Digging Zones.

This is a very specific tool designed to modify the amount of dilution and reduction that occurs at different places within a bench. You may
have more reduction and dilution near the bottom of the bench than near the top of the bench. For this reason, you can input the type of
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (12 of 25)02/05/2005 14:57:57

Column Processing

mining method and then specify different reduction and dilution factors at different depths. If you are uncertain whether or not you have
digging zones we suggest that you leave this as none. In this example we will leave Digging Zones at the default of none, and the dilution
and reduction for all internal ore/waste contacts will be the same.

Volume Factor

It is possible that the reduction and dilution thicknesses are not equal. For example if the ore is extremely high grade, then it may be
desirable to ensure that all ore is mined, even though this may result in extra dilution. Because blocks themselves cannot change in size in
the block model, a volume factor attribute in the model is used to keep track of the effect on the volume of unequal reduction and dilution
at ore/waste contacts. This volume factor is then used in the volume report and all volumes reported for ore and waste to be mined will be
correct. For our example, the reduction and dilution factors are equal and therefore there is no need to use the volume factor.

Thicknesses - Column. Top & Bottom. Reduction & Dilution.

This is the reduction and dilution at the top and bottom of the constraint. In our case the constraint is first occurrence of grade above cutoff.
This will be the top of the upper ore bench and the bottom of the lowest bench. It is entered as a vertical thickness of the entire block.
Therefore a dilution of 1 on our 35 metre square blocks would equal 1225 cubic metres of waste being mined as ore. Reduction refers to
the amount of ore mined as waste.

Thicknesses - Ore Layer, Top & Bottom, Reduction & Dilution.

This is the reduction and dilution at the top and bottom of each internal ore/waste contact. That is every ore/waste contact within our
constraint other than the top and bottom of the constraint. As above, it is entered as a vertical thickness of the entire block.

Change waste above cutoff to ore? Change ore above cutoff to waste?

The result of the reduction and dilution may be that the grade of a waste layer actually increases to a grade above the cutoff grade, or the
grade of an ore layer is diluted to such an extent that the overall grade for that layer falls below cutoff. If these scenarios occur, you have
the option of reclassifying those layers as ore or waste based on their new grade.
This reduction and dilution should be performed within the constraint as shown below. This constraint was saved during the ore waste
discrimination function
A summary is shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (13 of 25)02/05/2005 14:57:57

Column Processing

Step 3: Recoverable Product


This function calculates the volume of recoverable product for each ORE block, and stores this as a ratio of volume of recoverable product
to total volume in that block. Therefore it can be considered as the volume of recoverable product in one unit of volume, ie. in one cubic
metre if working in metric. The value is stored this way because Surpac2000 dynamically sub-blocks and super-blocks. The aggregate
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (14 of 25)02/05/2005 14:57:57

Column Processing

option in the block model reporting function is then used to produce volume reports showing total volumes of product.
For each ore layer, the function also calculates two ratios. It is these ratios which give a measure of whether an ore layer at that depth is
economic.
The first ratio is the ratio of the total volume of material in that ore layer and the waste layer immediately above it to the volume of
recoverable product in that ore layer. This gives an indication as to whether that ore layer contains sufficient product to ``carry'' the waste
layer immediately above it.
The second ratio is the ratio of total volume of material of that ore layer and all ore and waste layers above it (to surface) to the volume of
recoverable product in that ore layer and all ore layers above it. This gives an indication as to whether mining to that depth is economic.
Because even though that ore layer may carry the waste immediately above it, if, for example, there is a large amount of overburden in that
column, mining to that depth may not be economic.
Again remember, these are one dimensional calculations. Grades in blocks in adjacent columns are not taken into consideration. Each
column is processed independently of any other columns.
The economic bottom of ore is then determined as the first ore band encountered when searching up through the block model where both
the individual and cumulative ratios are lower than a specified ``cutoff'' ratio. This cutoff ratio is determined by the economic mining
factors, such as commodity price, cost of mining, cost of processing, etc.
The Recoverable Product function requires that all blocks processed by this function be classified as either ore or waste. Presently we have
overburden on our model which is still unclassified. Before running the Recoverable Product we must classify our overburden as waste.
We do this using the Assign value fill function.
1. Choose Estimation - Assign value. Complete the forms as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (15 of 25)02/05/2005 14:57:57

Column Processing

This will assign those blocks above the top of our ore, and below the topography ie the overburden blocks to waste.
Before we run the Recoverable product function, we should add the attributes which will store the results of this function.
Note: the attributes do not have to be added ahead of time, as in this function, as in the ore/waste and reduction/dilution functions, if the
attributes specified to store the results do not exist they will be created. However it is a better technique to add them first for two reasons.
The first reason is that if they are added by the function they are created as real attributes and not floats and therefore will require double
the storage space. The second being that you have control of the background values when adding them yourself. For data management
reasons you will want to standardize your background values. In this exercise we are using -99.
1. Choose Attributes - New. Complete the form as shown below.

Unlike most other attributes, the ratio attributes are given a high background value. A high value of the ratio of volume to product denotes
less economic material. We will be searching for the first value below a certain value. If we picked a low background value, when
searching for the first block below a certain value using the column tops function, we would always find the top or bottom of the model
because this is outside of our constraint and so remains at the background value.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (16 of 25)02/05/2005 14:57:57

Column Processing

2. Choose Column processing - Recoverable product and complete the forms as shown below.

Try graphically editing some of the blocks and looking at the values for recoverable_product and ratios. Do the ratios make sense? Edit a
few blocks until they do, remembering the lower the ratio the better. One would expect an ore layer with only a small amount of overlying
waste to have a lower individual ratio than an ore layer with a higher thickness of overlying waste. Also, once would expect the uppermost
ore layer to have the same value for the individual and cumulative ratios. If this does not make sense, please re-read the description above
on the Recoverable product function.
The Block Edit function should give you results similar to those shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (17 of 25)02/05/2005 14:57:57

Column Processing

The final steps of the process are to extract and create surfaces representing the top and bottom of economic ore. The bottom of economic
ore will be a surface created when searching up through the model, using the Column Tops function, for the first block where both
individual and cumulative ratios are below a cutoff ratio. For this exercise we will use a cutoff ratio of 12.
3. Invoke Column processing - Column tops and complete the forms as shown below.

4. Create a DTM of the bottom of the ore. This function is accessed from the Surfaces - DTM File functions menu - Create DTM
from string file. .

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (18 of 25)02/05/2005 14:57:57

Column Processing

5. Click and drag the new DTM file from the navigator into graphics. This will go into a new layer.
6. Use the 3D viewing tools to view the block model from below, as shown below.
It is clear to see that the economic bottom of ore matches the lowest occurrence of ore in all parts of the model except for the
southwest. This is to be expected as we can see in this area there is a lot of interburden.

The top of the ore will simply be the first occurrence of ore searching down through the model (ie. the ore_waste_flag =1). If this ore is not
economic, as in the southwest of the model, it will be excluded by the fact that the economic bottom or ore is at an elevation of 400 here.
This is a reason that the nominal values are important when using the Column Tops functions.
7. Choose Column processing - Column tops and complete the forms as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (19 of 25)02/05/2005 14:57:57

Column Processing

8. Create a DTM of top_ore. Do not use strings as breaklines.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (20 of 25)02/05/2005 14:57:57

Column Processing

A block model report can now be generated to calculate volume, tons, average grade and recoverable product of the economic ore.
9. Choose Report from the Block model menu and fill in the forms as follows.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (21 of 25)02/05/2005 14:57:57

Column Processing

The resulting report is shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (22 of 25)02/05/2005 14:57:57

Column Processing

Experiment with other reports by using different constraints and different values to group
by.

Thicknesses
The last piece of functionality to investigate is the column thicknesess function. This can be used to produce string files containing
thicknesses and average grades of ore and waste. As with all other block model functions, it can be used under any constraints. We will use
this function to prepare total ore thickness, total waste thickness and average diluted ore grade.
When using the thickness function it is important that you have some kind of flag in your model to specify which blocks are to be included
in the thickness calculation. This is a particularly useful function even if you haven't used the other column processing functions. eg in a
strategraphically hosted iron ore mine you may use the thickness function to determine the thickness of alumina rich blocks (contaminant)
above a certain cutoff. If you haven't used any of the other column processing functions the key thing to do here is to add a flag attribute. In
our example we already have this attribute, but this is a helpful tip.
1. Ensure that you have our column processing model, blockmodel.mdl loaded into memory. You can check the status area at the
bottom of your graphics screen.
2. Under the Column processing menu select Thickness, and complete the form as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (23 of 25)02/05/2005 14:57:57

Column Processing

In the resultant string file, String 1 contains the ore thickness and average diluted grade in the first and second description fields,
respectively. There is also a string 2 in this file which contains the thickness of all other material (in this case this represents interburden
thickness) and the average diluted_grade.
Beware of string 2. It must be deleted from this file before you can create a DTM of ore thicknesses and grades, or the values from string
one and two will be averaged when creating the DTM giving you meaningless results.
Once string 2 has been deleted from the output file, a DTM can be created from this file, and contours extracted of the ore thickness and
ore grades for plotting purposes. The ore thicknesses and grades can also be visually studied in the Graphics module by colouring the DTM
on thickness or grade using the Draw Shells function. The Draw Shells function in Graphics gives a powerful visualisation tool and is an
excellent way to study and understand the results.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (24 of 25)02/05/2005 14:57:57

Column Processing

This concludes the exercise.


Other exercises that could be performed with this data include:

Extracting sections classified by ore and waste


Plotting the sections extracted above
Adding topography section to above plot
Contouring the ore thickness and ore grade
Plotting the ore thickness and grade contours and raw values
Making macros of the economic evaluation process (see paragraph below)
Adding variables to the macros so volumes and grades can easily be determined for different cutoff grades, mining thicknesses,
cutoff economic ratios, etc. (see paragraph below)

There are a number of steps involved in this process of evaluating the economics of the block model. This is what gives the process
flexibility. In a production situation, this process can be recorded by macros and variables added to the macro for any parameters which
may change. In this way the process becomes a one button solution, which can be run efficiently by anyone, regardless of whether they
even now how to operate Surpac. Because macros can be used to run other macros, a macro can be set up to run this macro many times,
passing different variables to the macro, and in this way sensitivity analysis can be efficiently run on the parameters affecting the economic
evaluation.

Review
This section has covered some practical aspects of using the Column Processing options available under the Block Modelling menu.

Where To Next
The next section introduces some more advanced model filling exercises dealing with Kriging, Importing Centroid data and also provides a
search ellipsoid macro to demonstrate some search concepts.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/columnfill.htm (25 of 25)02/05/2005 14:57:57

Advanced filling

Advanced filling

[Previous] [Next]

Table of Contents
Overview

What You'll Learn


Import a centroid file.
Ordinary kriging.
Indicator kriging.
Cumulative frequency function
Block values and fractions
Probabilities
Percentiles
Review
Where To Next

Overview
This section demonstrates some of the more advanced techniques available when filling a Surpac Block Model.
There is also more detail in the Geostatistics manual.

What You'll Learn


Topics covered in this section include:

Importing centroids from a text file


Ordinary Kriging
Indicator Kriging

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (1 of 24)02/05/2005 14:58:04

Advanced filling

Objective.
Import a centroid file into an existing Block Model attribute.
This function allows you to import block-centroid based data from a text file directly into the current block model.
Each line of the input file must contain one point (with x, y and z coordinates) that matches with a block in a newly
created ``shell'' model. The specified attributes for this block will be filled from the text data.
This function is quite different to any of the other fill functions as no calculations are performed to find the nearest
data point(/s) ie this is not an interpolation, it is simply an importing of data.
It is important that the dimensions of the target block closely match the dimensions of the blocks being input from
the file. If the data you are importing contains centroids from block with various dimensions, it is recommended that
these data be split into files containing equally sized blocks.
1. Choose the `training.mdl' block model from the earlier part of this manual and create a new attribute as
shown below.

2. Choose Import text file from the main Block model menu item and fill in the form as shown below.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (2 of 24)02/05/2005 14:58:04

Advanced filling

The number of header lines were chosen to exclude the first two lines of a Surpac string file which contain the
header and axis information.
The comment characters were set to zero to exclude Surpac `end of segment' lines which begin with the
character 0.
The target block size defaults to the user block size which is appropriate for this data.
The errors reported was limited to 100 in the log file to prevent large log files being produced in the event of a
mishap.

3. The first critical information that must be specified is the position of the Y, X, and Z fields for the centroid
position as shown below. As the data is coming from a Surpac string file we know that the first column of data
is the string number (we needn't import this) the second is always y, third x and fourth is z. The data we are
interested in putting into the centroid attribute is in the 8th column of the string file.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (3 of 24)02/05/2005 14:58:04

Advanced filling

4. Apply the form and the function will process with a log file output at the end.
5. View the block model with a constraint of all blocks with a value for the attribute centroid >-1. View the
attributes for various blocks.
There are a few points to make about this function:

It is the most appropriate method to bring data in from other block modelling packages
Using this function you can import data from any column arranged Ascii file
You can fill multiple attributes with one pass

Objective.
To investigate the use of Ordinary kriging to fill the block model within the QPY ore zone.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (4 of 24)02/05/2005 14:58:04

Advanced filling

This function estimates values based on the weighted values of data points closest to the block centroid. The
weighting is the result of kriging the data points to provide the best linear unbiased estimator.
Before using this function you must have already developed an acceptable variogram. This is essential since without
these parameters the results of this function will be meaningless. For further information about variogram modelling
please consult the SSI Geostatistics training manual.
1. Ensure you have the training.mdl block model loaded. Create a new attribute as shown below.

2. Choose Ordinary kriging from the Estimation menu and fill in the form as below and apply.

3. Complete the optional fields in the Estimation Attributes form as shown.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (5 of 24)02/05/2005 14:58:04

Advanced filling

4. Choose the file cmpq1.str as the data source to fill as shown.

5. Complete the following form as shown.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (6 of 24)02/05/2005 14:58:04

Advanced filling

The search ellipsoid specifications are more fully explained in both the Online Reference Manual, the Form
Field Help.
These inputs define an ellipsoid striking 30 degrees clockwise from North with no plunge and dipping
towards the West 60 degrees below the horizontal.( by convention positive dips are clockwise tilts from
horizontal) The maximum search ellipsoid length is 120m along strike and down dip and the across strike
component is 60 m in length as defined by the anisotropy ratios and maximum search radius.

Many ore bodies show a geometrical anisotropy, where the continuity of the mineralisation is better in one direction
than it is in other directions. The anisotropy can often be quantified by using directional variograms in terms of the
bearing and range of the major axis of the anisotropy ellipsoid and the anisotropy ratios.
The directions to be considered are usually chosen taking known geological controls on the mineralisation into
account. The anisotropy ellipsoid will then be defined by three principal directions.

The direction of best continuity (longest range). This is called the major axis of the ellipsoid.
The direction normal to the major axis called the semi-major axis of the ellipsoid.
The direction of least continuity (shortest range) which is called the minor axis of the ellipsoid.

If the variograms in these three directions are to correctly model geometric anisotropy, the nugget and sill value for
each variogram should be the same, and only the range of each variogram will be different. If the range in each
direction is the same, then there is no anisotropy.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (7 of 24)02/05/2005 14:58:04

Advanced filling

6. The Kriging parameters form should be completed as shown:

Note that for a spherical model, only 1 structure is possible. The software allows up to 5 structures for nested
spherical models.
A variogram model must be defined for Ordinary Kriging - the parameters entered on this form have been derived
from the Variogram Modelling function. For a full description of the kriging parameters see the Online Reference
Manual.
7. Complete the form as shown to constrain to a 3DM called qpyl1.dtm, remembering to save the constraint
for later use.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (8 of 24)02/05/2005 14:58:04

Advanced filling

The Ordinary Kriging fill will now complete for the attribute ok_gold with the additional estimation attributes
ok_dist, ok_number and ok_krig_var representing the distance to the nearest point, the number of points considered
for each estimated block and the kriging variance of the block estimation.
8. Validate graphically that each of these attributes exists and contains data appropriate to the fill operation.
Try colour by attribute in graphics within the saved constraint qpyzone.con.

Objective.
To investigate the use of Indicator kriging to fill the block model within the QPY ore zone.
One really requires a good working knowledge of geostatistics to attempt Indicator kriging. It is beyond the scope of
this manual to teach the concepts of Indicator kriging - we are simply attempting to show where various parameters
are input into Surpac. Contact your local SSI office for advice about locally run geostatistics courses.
An indicator is a binary number whose value is dependant upon a samples grade with respect to a cutoff or threshold
value. In Surpac, an indicator of 1 is assigned if the grade is below the specified value.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (9 of 24)02/05/2005 14:58:04

Advanced filling

This function produces the cumulative frequency function (cff) for a variety of cutoff values. The cumulative
frequency function is used in subsequent processing and reporting.
1. Choose the training.mdl block model and choose Indicator kriging attribute from the Indicator kriging
menu. Fill in and apply the form as shown.

This form allows you to specify the label name of the group of attributes that will be created during subsequent
processing
Once you have named your IK attribute and have begun processing your model, Surpac creates a number of named
attributes to place all the various parameters for a particular IK run. These are based on a simple convention that is
explained below..

The following naming conventions are used on the attributes that are created by the Indicator kriging tools.
These examples are assuming that you entered ik_gold as your Ik attribute name.

Cumulative frequency function

_ikc#ik_gold#1

kriged estimate of indicators based on cutoff 1

Block values and fractions

_ikb#ik_gold#1

average grade above cutoff 1

_ikb#ik_gold#1_frac

fraction of block above cutoff 1

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (10 of 24)02/05/2005 14:58:04

Advanced filling

Probabilities

_ikr#ik_gold#2_above

probability that block grade is above 2 ( range= 0-1)

Percentiles

_ike#ik_gold#0.8_perc

block grade whose probability is at least 0.8


2. From the Indicator kriging menu choose Indicator kriging. This will activate the following form. We will fill
using cmpq1.str as the data source

3. Complete the following form with the same values taken from the Ordinary kriging exercise.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (11 of 24)02/05/2005 14:58:04

Advanced filling

4. Complete the constraints form such that the fill will only take place in the previously saved constraint
qpyzone.con.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (12 of 24)02/05/2005 14:58:04

Advanced filling

5. Apply the Ik anisotropy form as shown.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (13 of 24)02/05/2005 14:58:04

Advanced filling

Note that it is possible to specify different anisotropy ellipsoids for each cutoff as it is common for the
variograms for each grade cutoff to indicate different orientations and ranges. For simplicity sake we have
applied the same ellipsoid used for the Ordinary Kriging exercise
6. We now need to enter the kriging parameters for each of the various cutoffs. Fill in the forms as follows,
hitting the next key after each form is completed.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (14 of 24)02/05/2005 14:58:04

Advanced filling

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (15 of 24)02/05/2005 14:58:04

Advanced filling

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (16 of 24)02/05/2005 14:58:04

Advanced filling

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (17 of 24)02/05/2005 14:58:04

Advanced filling

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (18 of 24)02/05/2005 14:58:04

Advanced filling

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (19 of 24)02/05/2005 14:58:04

Advanced filling

7. Once processing is completed save the block model and then choose Attributes - Edit/Rename and check
that the appropriate new attributes have been formed by selecting the browser in the attribute name field.
Cancel this form without making any changes when you have reviewed what attributes are present now
present in the model.
Note that there is not actually an attribute explicitly called ``ik_gold'' The software actually produces an
attribute for each cutoff chosen. These are called the cumulative frequency function (cff) attributes, to be used
in subsequent processing. The name ik_gold is embedded into these manufactured attribute names as shown
in the screen capture above.
To further process the _ikc attributes in block maths you will need to include the attribute name in square brackets
when using in expressions eg [_ikc#ik_gold#0.7]

Objective.
This exercise creates a number of attributes based upon the attributes created in the previous exercise.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (20 of 24)02/05/2005 14:58:04

Advanced filling

1. If you have not stayed in the block model, you will need to choose Indicator kriging and select the attribute
ik_gold for further processing.
2. Select the function Block value estimates.
3. Complete the form as shown.

4. Accept the calculated means of the input data from cmpq1.str


It is quite acceptable to modify these arithmetic mean values if a more appropriate value representing this class
interval can be derived.

You should now begin calculating the Block value estimate attributes for each cutoff and be prompted to save the
model after this process.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (21 of 24)02/05/2005 14:58:04

Advanced filling

Two real attributes will be generated for each cutoff as well as two for the zero cutoff.
These are the grade of the block above that cutoff
(_ikb...value)
and the fraction of the block above that cutoff
(_ikb...frac).
For the zero cutoff, _ikb#ik_gold#0.0000_value will be the estimated grade of the block and
_ikb#ik_gold#0.0000_frac will be 1 (all of the block will be above 0.0 cutoff).

Objective.
To investigate the use of IK Percentiles.
This function will estimate a block grade from the cumulative frequency function for a given percentile. Two
interpretations may be applied to the estimate.
For example, if a reporting percentile of 0.8 is specified which gives a grade of 5 then we may say that 80% of the
block is above 5 and 20% below. Alternatively we may say that there is an 80% chance that the grade of the block is
above 5 and a 20% chance that it is below 5.
1. Choose Indicator kriging - IK Percentiles. Fill in the form as shown.

By specifying a percentile of 0.5 we will get the median grade for the block.
file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (22 of 24)02/05/2005 14:58:04

Advanced filling

2. Apply the constraints form using the saved constraint qpyzone.con and view the results in graphics.
The resultant attribute _ike#ik_gold#0.5000_perc will be created.

Objective.
To investigate the use of IK Probabliities.
This function will estimate a probability from the cumulative frequency function for a given grade.
Two interpretations may be applied to the estimate. For example, if a probability of 0.8 is returned for a reporting
grade of 5 then we may say that 80% of the block is above 5 and 20% below. Alternatively we may say that there is
an 80% chance that the grade of the block is above 5 and a 20% chance that it is below 5.
1. Choose Indicator kriging - IK Probabilities. Fill in the form as shown.

2. Apply the constraints form using the saved constraint qpyzone.con and view the results in graphics.
The resultant attribute _ikr#ik_gold#3.000_above will be created representing the probability of a particular block
being above a grade of 3 g/t.

Review
You should now be familiar with the concepts used for filling the Surpac Block Model with a range of tools.
Please review this chapter or consult the online reference manual if unclear about the definitions used so far.

Where To Next

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (23 of 24)02/05/2005 14:58:04

Advanced filling

The ideal method for reinforcing the concepts learned so far is to substitute some raw data of your own and step
through a number of the exercises in the relevant chapters.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/advanced_fill.htm (24 of 24)02/05/2005 14:58:04

Appendix 1

Appendix 1

[Previous] [Next]

Table of Contents
Appendix 1- Answers to Questions

Chapter 2- Block Model Concepts


Chapter 4- Constraints
Chapter 5 - Model Filling
Chapter 8 - Block Maths

Appendix 1- Answers to Questions


Chapter 2- Block Model Concepts

Q. What base resolution (maximum sub-blocks per-side) will be needed for a model with extents
of Y=1000, X=600, and Z=200, with a user block size of 20x10x5?
A. No. of Blocks Y= 1000/20 = 50 X= 600/10 = 60 Z = 200/5 = 40
Base Resolution (maximum sub-blocks per side) = 64 (ie. > largest number of blocks and 2 to the
power of 6)

Q. What resolution (maximum sub-blocks per-side) will be needed for a model which has extents
of Y=1500, X=1000, Z=300 and a user block size of 20X20X10, but sub-blocking to 10x10x5 is
required?
A. No. of Blocks Y= 1500/20 = 75 X= 1000/20 = 50 Z= 300/10 = 30

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/appendix.htm (1 of 6)02/05/2005 14:58:09

Appendix 1

Base Resolution = 128 Required resolution ( for sub-blocking) = 256

Q. What will be the smallest block size for a model which has, maximum sub-blocks per
side=128, extents of Y=500, X=250, Z=100 and a user block size of 10x10x5?
A. No. of Blocks Y= 500/10 = 50 X=250/10 = 25 Z=100/5 = 20
Base Resolution = 64 Smallest sub-block = 5 x 5 x 2.5 (ie maximum sub-blocks is twice Base
Resolution therefore sub-blocks will be half the user block size.)

Chapter 4- Constraints

Q. Use Constraints Add to make a constraint to show all fresh blocks. Save the constraint to a file
called fresh. (Answer in Appendix 1)
A.Use the parameters: Not above Zplane 950
Save Constraint To fresh.con

Q. From the Constraints sub-menu, select Add. Create a constraint for the northern part of the ore
body (strings 7 to 11). Save the constraint as nqpy.
A(1)

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/appendix.htm (2 of 6)02/05/2005 14:58:09

Appendix 1

Constraint combination (a AND b AND c) OR ( d AND e AND f) OR ( g AND h AND i ) OR ( j


AND k AND l) OR (m AND n AND o)
Save constraint to nqpy

A(2) Select Edit Constraint, and edit the constraint sqpy, as shown above, save constraint to nqpy

Q. In Graphics, draw the blocks which show the QPY and BIF ore bodies.

A. Select Add Constraint


inside constraint
qpy
inside constraint bif
Constraint combination a OR b

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/appendix.htm (3 of 6)02/05/2005 14:58:09

Appendix 1

Q. In Graphics, draw the fresh blocks for the QPY and BIF ore bodies.

A(1). Select Add Constraint (as this constraint is added to the stack it will be ANDed)
inside constraint
fresh

A(2). Select Clear Constraint then select Add Constraint


inside constraint
fresh
inside constraint qpy
inside constraint bif
Constraint combination a AND ( b OR c)

Q. In Graphics, draw the blocks which show the QPY and BIF ore bodies, 10 metres either side
of the Y plane 7450 mN.
A. Select Clear Constraint, then select Add Constraint
above Y plane 7440
above Y plane 7440
inside constraint
qpy
inside constraint bif
Constraint Combination a AND b AND (c OR d)

Chapter 5 - Model Filling

Q. Use Add Attribute to add a character attribute called material. Then use Assign value to assign
the following manner:
Material Constraint

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/appendix.htm (4 of 6)02/05/2005 14:58:09

Appendix 1

oxide Inside oxide for qpy or bif ore


transitional inside trans for qpy or bif ore
only
fresh inside fresh frp qpy or bif ore only

A. 1. Select Add Attribute, enter the following parameters:


Attribute name

material

Attribute Type

character

Background
Value

unassigned

2. Select Save Model and update the model


3. Select assign value, and for the attribute material, assign a value of oxide. Use the following
constraint:
inside constraint
oxide
inside constraint bif
inside constraint qpy
Constraint Combination a AND (b OR c)
Repeat step 3 for transitional, but using constraint trans
Repeat step 3 for fresh, but use constraint fresh

Chapter 8 - Block Maths

Q. Try adding a real attribute called cut_gold. Then use Block Maths to cut grades greater than
5ppm.
i.e. IF gold is greater than 15 THEN cut_gold equals 15 ELSE cut_gold = gold.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/appendix.htm (5 of 6)02/05/2005 14:58:09

Appendix 1

A. 1. Select Add from the Attributes sub-menu. Nominate a new attribute called cut_gold which
is type real. Then Save Model.
2. Select Block Maths and enter the following:
Attribute
name

cut_gold

Expression

iif(gold > 15,15,


gold)

Constrain the maths to


inside constraint bif
inside constraint
qpy
Constraint Combination a OR b
i.e. IF gold is greater than 15ppm THEN cut the value to 15 and store this in cut_gold, ELSE
leave the gold grade as is and store in cut_gold.

file:///C|/ssi_V4.1-R/share/refman/default/tutorials/blockmodel/appendix.htm (6 of 6)02/05/2005 14:58:09

Você também pode gostar