You are on page 1of 14

Material Percentage Model Coding and Verification

Material Percentage Model Coding and Verification


The intent of this workshop is to demonstrate how to model and verify multiple material
percentages. The discussion of subcelling versus material percentage modeling is outside
the scope of the workshop, but may be discussed if time permits.
The workshop will show the coding and verification of both geology solids and polygons. It
will also demonstrate the building, coding, and verifying of topo, backfill, and ftopo (topo to
zone footwall) solids. Rationalization of multiple material percentage items using Pctrat
and reserves reporting using material priorities in Pitres/Cmpres will also be explained.
Geology Model Coding and Verification
This workshop assumes that the geology solids/polygons have already been built, but a
couple interpretation notes are worth mentioning. If the original interpretation is being
done on wider spaced sections, then the recommended approach is to set up a grid set that
best utilizes the drillhole locations. This can be done by creating 2-point plan polylines
for each section. The polylines can be moved and rotated using the Element functions
to get the best fit. Each polyline should be named with the section name using Element
Attribute. This ensures the polylines are kept in the correct order and that they have a
meaningful plane name as the grid set creation uses the same names. The polylines are
then used in the grid set Between polyline endpoints option (see 2008 Mintec Annual
Seminar workshop paper, “MineSight® Tips and Tricks”, page 9, for setting up the
drillhole collar display and MineSight in the Foreground, November 2008 “New Features
in MineSight 3-D (MS3D) v. 4.50”, page 1, for grid set creation options). The polylines do
not have to be parallel. They can be at any orientation with any spacing. The length of
the polylines isn’t used, only the midpoint of the line and the orientation. The length and
elevation range are set from the grid set creation dialog. These bounds will also become
the plot bounds for each section, ensuring a proper plot setup (see Figure 1 for sample of
section lines and grid set creation dialog).

Mintec, Inc.
Global
Mining
Software
Solutions
Since
1970

Figure 1. View showing drillhole section lines and grid set creation dialog.
When doing the interpretation, the Viewer Properties | Clipping | Plane Filter Range for
selected planes is very useful for viewing the new interpretation on adjacent sections. As
the polylines/polygons are created, they are put into the selection buffer and the selected

Page 1
Material Percentage Model Coding and Verification

planes option shows only the selection buffer data, minimizing the clutter. Figure 2 shows an
example of interpreting the footwall of zone 21 on the current section with the interpretation
from the previous section as a guide. The Utilities | Virtual elements | Drop markers is also
useful for dropping markers from other sections. The markers in Figure 2 are from a section
approximately 190m to the north while the previous interpretation is from a section 70m to
the south (i.e., irregular section spacing).

Figure 2. Example of geologic interpretation using previous section and virtual markers as guide.

If working with geology solids or surfaces, once the solids/surfaces are linked, they should
be conditioned in the usual manner. The new MS3D v.4.50 Surface | Verify and Repair
Surfaces and Solids tool makes this very easy. If there are problems with the solids/
surfaces, select them and keep splitting self-intersecting faces and deleting all duplicate
faces as needed. The last step is to patch any openings and do a final check.
If working with geology polygons, use script poly2drpt to check for openings and self-
intersecting faces (see verification section below for description of poly2drpt).
Once the geology is correct, it is critical to clip it to the current mined-out surface for
proper reserves reporting. MineSight stores material percentages in each block but doesn’t
know where they occur within that block. Leaving ore in the air or in backfilled areas
can result in over-accounting. The Large Gridded Object (LGO) tool is very good for
maintaining all topo surfaces including the mined-out surface (there is a workshop at this
year’s seminar on LGOs).
The recommended method for maintaining the geology solids/surfaces/polygons is to have Mintec, Inc.
a folder of the original unclipped geology, copy the files to a new folder labeled clipped, Global
and clip the copied files against the mined out surface. Both the solids and polygon clipping Mining
tools now have an option to close against the clipping surface ensuring that the geology is Software
easily clipped and ready to use in the model build. Solutions
Once the geology solids/polygons have been conditioned and the appropriate material type Since
assigned, they are then ready for coding to the model. The number of zones per block to 1970
store in the model needs to be determined in order to code properly. Each zone requires a
zone code and a zone percentage item, as well as a set of items for grades and any other data
to be stored by zone. If unsure as to how many zones to store per block, initialize a model
with an extra percentage item, do a test run storing any extra percentages into that item,
and then check its significance. The easiest way of doing this is to use the model coding
Combine leftover partials | Add to an item. A MineSight Data Analyst (MSDA) Custom

Page 2
Material Percentage Model Coding and Verification

Report can then be used to report the total percentages for all the ore% items, including the
“leftover”. If the “leftover” is greater than a percent or two of the grand total, then an extra
zone per block should be considered.
Once the model has been initialized, the coding is done through a regular model view
(2008 Mintec Annual Seminar workshop paper, “Geomodeling and Coding”, for full
description of all coding options). The coding setup for solids is simpler than for polygons
as no orientation and spacing information is needed. Figure 3 shows an example of coding
geology from solids into a two zone per block model. If more than two zones occur in any
block, then the extra percentage is distributed proportionally to the other two zones. For
example, if the first zone percentage is 20, the second is 10, and the third is 6, then the first
zone ends up at 24 and the second at 12. The extra percentage can also just be added into the
majority percentage.

Figure 3. Example of model coding for two


Mintec, Inc. zones per block using solids.
Global
The codes and percentages can be stored in majority or priority order. The priority order is
Mining
sometimes required for MineSight Interactive Planner (MSIP) or Pitres mining priorities.
Software The priorities are setup using the Prioritize Model Codes button at the bottom of the
Solutions dialog. Using Prioritize Model Codes controls which zone gets stored into the first, second,
Since etc., zones in each block. The coding is done using a 3D integration by passing vertical
1970 vectors through the solids using the subcell count from the project settings.
The solids coding has an option for normalizing the geology percentages to a single
total block percentage. The normalization is limited in that it is done against a single
total percentage. MineSight Compass™ (MSCompass) procedure Pctrat is much more
flexible and will be used in this workshop. An example of a case where the model view
normalization is applicable is sub-zones modeled within a larger zone (e.g., individual rock

Page 3
Material Percentage Model Coding and Verification

types within a total ore zone). The sum of the individual zone percents should match the
total ore zone percent.
The coding options for polygons are more complicated as origin and spacing information is
required. The first dialog is the same as Figure 3 except the Code From Polygons option is
used and the orientation is specified. If the model is rotated, then use the appropriate Model
XY, XZ, YZ orientation to match the orientation of the 2D geology with respect to the model.
The normalization is the same as the solids coding (see note above).
The polygon coding has two extra tabs for the Planes information and 2D options. Figure
4 shows the Planes information. The planes to use can either be specified with a start, end,
and increment for non-rotated models or with a grid set for both rotated and non-rotated.
Typically, the geology should be on the planes so only a small tolerance is needed. If there
is geology on each row/column/level of the model, then the dialog is filled in as shown.
If the geology is at a wider spacing than the block size, then the distance to project can be
controlled or the geology can be extended from one plane to the next for irregular spacing.
The general recommendation is to have geology spaced at the block size in the coding
direction for the best coding accuracy.

Mintec, Inc.
Global
Mining
Software
Figure 4. Planes information for model
coding from polygons.
Solutions
Since
Coding from polygons is done using a 2D integration. The 2D options (see Figure 5) control 1970
whether the integration is done with vertical or horizontal vectors and how many to use
for each block. The tolerance to ignore overlaps should only be used when the polygons
are supposed to be coincident to each other. This parameter will fill any gaps up to the
distance specified. It should never be used for bedded/seamed deposits. Also, for bedded/
seamed deposits that need to honor the seam thickness but may have some overlaps in the
polygons, the Compute partials one polygon at a time option will ensure that all material

Page 4
Material Percentage Model Coding and Verification

within the seams is accounted for, even if they overlap. If this option is off, then the coding
will in effect snap the polygons to each other halfway between the overlaps, reducing the
zone thicknesses.

Figure 5. 2D options for polygon coding.

Waste percentages and types can either be coded from waste solids or by using the geology
polygons. If using the geology polygons, the setup is the same as the regular ore polygon
coding except the Code as option is set to waste coding in the appropriate direction. When
MineSight does the ore coding, it passes the integration vectors through the polygons, hitting
the various intersections. The odd to even intersections (i.e., 1st to 2nd, 3rd to 4th, etc.) signify
inside ore and the even to odd intersections signify outside ore. For waste coding, an extra
intersection point is added at 0 and the odd to even intersections are coded in the usual
manner, coding the waste and ignoring the ore. It also means that the waste is coded out to
the edge of the model in the starting direction and needs to be rationalized using Pctrat.

Figure 6. Coding options for coding waste


using geology polygons.

Any model (or drillhole) coding setup can be exported to an mscode file and run from
Mintec, Inc.
within a multi-run or script. Each coding step should have its own model view to preserve
Global
its setup and make updates easier.
Mining
Software The model coding can be verified by checking total volumes, reviewing all planes, and
Solutions checking individual blocks. The total volumes can be checked by comparing a Pitres/
Cmpres total resource run ignoring topo to the volumes for solids, or the areas x block size
Since
for polygons. The solids volumes can be reported using shellrpt.pyc (see Figure 7) and
1970
the polygon areas can be reported using poly2drpt.pyc (see Figure 8).

Page 5
Material Percentage Model Coding and Verification

Figure 7. Example of
shellrpt script for solids
volume reporting.

Mintec, Inc.
Global
Mining
Software
Solutions
Figure 8. Example of poly2drpt script for reporting areas of polygons. Since
The results from shellrpt/poly2drpt vs Pitres/Cmpres can be combined into a
1970
spreadsheet as shown in Figure 9 with a poly2drpt area run. The Vol column is the area x
block size (25 in this case)

Page 6
Material Percentage Model Coding and Verification

Figure 9. Example of Microsoft® Excel spreadsheet


comparing poly2drpt areas x block size vs Cmpres.

Since MS3D is fast when displaying and updating 2D views, it is recommended that all
model coding planes be viewed with the geology solids/polygons and the model view
overlain. A couple of individual blocks should also be checked in detail by digitizing
the shape of the geology zone in the block, dividing its area by the area of the block, and
comparing it to the percentage coded.

Other Model Coding and Verification


Some of the other material percentages that may need to be stored in addition to the ore
and waste percentages include the topo%, the backfill%, and the ftopo%. The recommended
method for coding these is to build a solid that is limited to the model bounds, code the
solid, and check it by comparing to a Pitres volume run.
One way of limiting the topo solid to the model bounds is to make a polygon and a DTM at
the bottom of the model that are the exact size of the model bounds. This can easily be done
by creating a plan grid set based upon the PCF, deleting all planes except the bottom one,
creating a polygon using Surface | Create | from Grid set or edit grid, and triangulating
inside it. The topo solid limited to the model bounds can then be created by using the
surface intersector with topo as primary, bottom of model DTM as secondary, keeping the
Mintec, Inc. cut solid. The topo solid can then be coded with a model view as shown in Figure 10.
Global
Mining
Software
Solutions
Since
1970

Figure 10. Example of coding a single percentage item from a


solid.

Page 7
Material Percentage Model Coding and Verification

The backfill solid can be built using the surface intersector with the topo as primary
limiting it to the bottom of model polygon of the model bounds, the mined-out as
secondary, keeping the cut solid. If the backfill is the only waste type, it can be coded
as a percentage. If there are other waste types and percentages, then it should be coded
using both a percentage and a code item. The backfill can then be split out using the usual
waste reporting with Cmpres/Pitres. Cmpres has a special option for a swell factor. For
Pitres, the density can be used to compensate for the swell factor.
In MineSight, ftopo is used for mining to a zone footwall, ensuring that the footwall waste
isn’t mined (see Pitres section below). This can be something as simple as following the
bottom of a shallow dipping lens or it can be as complicated as stepping along multiple
seam/bed footwalls. A footwall surface needs to be built that follows the lowest potential
mining where the footwall(s) exists and then the bottom of the model where they don’t. If it
is a simple lens, the footwall surface can be split out from the geology solid using the LGO.
For more complicated cases, section polylines will most likely need to be linked. The ftopo
solid is then built in the same way as the backfill solid with the topo as primary, the ftopo
surface as secondary, keeping the cut solid. Coding is the same as for topo.
As with the geology coding, all the other percentage coding can be checked by viewing all
planes, checking individual blocks, and comparing the MS3D volume to a Pitres volume
run. When running Pitres, put N/A for the zone item, the percentage item being checked
as the ore% item, a density of 1 for metric and 27 for imperial, and use the Ignore Topo
option. Total volume coded will be reported and since the solid has been limited to the
model bounds, the MS3D and Pitres volumes should match within a fraction of a percent.
Material% Rationalization
After all the percentages have been coded, they need to be rationalized to ensure proper
balancing. This sometimes requires multiple steps and is best done using Pctrat. The
workshop example is a complex coal example and has a total of 10 main percentage items:
two seams per block with two percentages per seam (met and oxide), three regular waste
percentages, a backfill/rehandle percentage, a topo%, and an ftopo%. The met coal is
coded from the geology polygons. The oxide is split out from the met based upon a vertical
distance from original ground using MSCompass procedure Cmpoxi. The three main waste
types/percentages are coded from the geology polygons. The backfill is coded from the
backfill solid and the ftopo from the ftopo solid.
The first rationalization step is to make sure the backfill% isn’t larger than the topo% (see
Figure 11). This should never happen if the solids were built properly, but the extra Pctrat
run is easy to do. RHPCT is specified as a ratio item so that when it is larger than topo%, it is
set equal to it. If it is less than topo, 1.0 (tolerance for normalizing), then it is also set to topo.
This accounts for any potential rounding and minor coding differences. Mintec, Inc.
Global
Mining
Software
Solutions
Since
1970

Page 8
Material Percentage Model Coding and Verification

Figure 11. Rationalize backfill/


rehandle% to topo.

The second panel for all the Pctrat steps described in the workshop (and in general), has
the Process all percentage items… tick box checked and the optional FTOPO item set as
blank/none. Pctrat was initially setup for coal projects with hangingwall and footwall
waste and an ftopo item. It was then extended for all projects and to maintain backward
compatibility, the wording and options got a bit confusing. Using the setup just described
takes care of the confusion.
The second rationalization step is to ensure that the total coal/ore percentages aren’t greater
than topo minus backfill (see Figure 12). This is a more complicated case as more percentage
items are involved. The RHPCT item is specified as Fixed items which means that it cannot
change and is subtracted from the topo percentage item. This is done as the backfill/
rehandle needs to be accounted for in the total Pctrat balancing. The four coal/ore% items
(two seams, two coal types) are specified in the ratio area meaning that if their total sum is
greater than TOPO minus RHPCT, then they are adjusted proportionally. A tolerance of 1 is
also used in this case to account for minor discrepancies and rounding.

Mintec, Inc.
Global
Mining
Software
Solutions
Since
1970
Figure 12. Rationalize individual
coal/ore percentages to topo minus
backfill/rehandle.

The third rationalization step is to ensure that all material percentages balance to topo
(see Figure 13). This is the most complicated case. The coal%/ore% and RHPCT items are
specified as Fixed items, they cannot change and are subtracted from the topo percentage

Page 9
Material Percentage Model Coding and Verification

item for proper balancing. The three waste percentage items are put in top down order as
Priority items. This means that if the sum of the waste percentage items is greater than
TOPO minus all coal percentages minus RHPCT, then the first priority item takes the full
adjustment. As mentioned in the waste coding section, the waste is coded from the edge of
the model so the first waste percentage will fill a block to 100%, rather than just to topo%.
A larger tolerance of three is used in this case to account for potentially bigger discrepancies
and rounding.

Figure 13. Rationalize the three


waste percentages to topo minus all
coal minus rehandle/backfill.

One additional rationalization step is required for ftopo against the total coal. The coal is
coded from 2D polygons using a 2D integration while the ftopo is coded from a solid using
a 3D integration. The result is some differences that needs to be compensated. This is best
done with a P61201 user calculation where the ftopo is forced to be at least as large as the
total coal [i.e., ftopo = max(ftopo,tcoal)].
Reserves Reporting Using Priorities
As mentioned previously, when modeling with material percents, the total amount of each
material in each block is accounted for but the actual location of the material within each
block is lost. The MSCompass reserves procedures, Pitres/Cmpres/Ug1res are setup to
allow the user some control over the order the materials are mined. For a full description of
Pitres, see the 2008 Annual Mintec Seminar workshop paper “Reserves Reporting using
Pitres” and the associated help files. Cmpres is very similar to Pitres for the handling of
material percentages and priorities. This workshop will only describe the reserves options Mintec, Inc.
that relate to material percent reporting. Global
Reserves are typically run by generating a partials file of what needs to be mined/reported Mining
from which blocks, and then applying that partials file to the model file, accumulating the Software
materials and grades for each bench/level. The partials file can be generated from a row/ Solutions
column/level limit, from within an existing MS3D solid, between two MS3D surfaces, Since
between two Gridded Surface File (GSF) items [i.e., MineSight Economic Planner (MSEP) 1970
shells], from a plan VBM file, or from the old Dipper B- and S-files. The latter two alternatives
should generally not be used any more. Figure 14 shows the Pitres panel for selecting
which source to use for the partials and Figure 15 shows the generation of a partials file from
MS3D using two DTM surfaces. The Cmpres partials panel has the same options.

Page 10
Material Percentage Model Coding and Verification

Figure 14. Pitres example using


partials from existing MS3D
partials file.

Figure 15. Example of generating partials file from MS3D


using two surfaces.

The next key material% information needed is how many zones per block and what the item
Mintec, Inc. names are for the zone and percentage items. Figure 16 shows Pitres with a two zone per
Global block case. Cmpres is very similar but also allows for two coal types per seam. Generally,
Mining the items are named for each zone using a numeric suffix (i.e., one full set of items for each
Software zone). Pitres does have the option to name the items individually without the suffix
Solutions method. Cmpres does not have this option. Both Pitres and Cmpres have the option of
using a zone/seam input file to input the zone numbers, their names, and optional default
Since
density and dilution/losses information.
1970

Page 11
Material Percentage Model Coding and Verification

Figure 16. Pitres example for


specifying zone and percentage
items.

The next material% information is for the waste materials. Figure 17 shows Pitres with
four waste types per block case. Cmpres is similar but does not have as many options. It
does have an option for a swell factor for rehandle/backfill for converting back to bank from
loose. For Pitres, the density should be adjusted to compensate for the swell (e.g., a bank
2.5 SG with a 1.3 swell factor would be set to 1.92).
Pitres has an option for a waste type input file. This file has the same general format as
the zone input file but uses only the name, number, and density part of the file. It is required
if there are waste type codes with a value larger than 15. When using multiple waste types
per block with Cmpres, it assumes the waste codes match the coal codes and uses the seam
input file.

Mintec, Inc.
Global
Mining
Figure 17. Pitres example
for specifying waste types and Software
percentages. Solutions
The last material% information is the topo% item and the material priorities. Figure 18 Since
shows Pitres with the most common setup. As mentioned, it is recommended that the 1970
ore solids/polygons be clipped to the mined-out surface to remove them from the air
and backfill. The topo should be coded from a topo solid. Pit partials should be generated
using the topo and pit DTMs. This will ensure that percentages, whether partials, topo, or
ore, are generated in a consistent way. The Pit is clipped at TOPO option should then be
used. Pitres will then take the minimum of the partial and the topo% for each block as

Page 12
Material Percentage Model Coding and Verification

compared to the product of the two. The Take ore first option should be set to 1 in most
cases as the ore should be clipped to the mined-out surface.

Figure 18. Pitres example for


material priorities.

The default calculation for Pitres and M711/712 is to take the block partial x topo and
apply it to all material types. For example, if the ore had been clipped at topo and a block
has ore%=60, topo%=80, and block partial=80% (partial is generated between topo and the
pit DTMs), the default calculation would be to mine total material of 0.8 * 0.8 = 0.64, ore of
0.8 * 0.8 * 0.6 = 0.384, and waste of 0.64 – 0.384 = 0.256. This would result in total material
under-accounted by 16% (80-64), ore under-accounted by 21.6% (60-38.4), and waste over-
accounted by 5.6% (25.6-20). If the Pit is clipped at TOPO and Take ore first for surface
blocks options are used, Pitres takes all the ore (60%) first, and the rest (minimum(80,80)
– 60 = 20%) is reported as waste.
If the pit follows a zone footwall and an FTOPO item has been used, then it should be
specified as the topo item. Both Pitres and Cmpres define a surface block as any block
where the percentage of the topo item is less than 100. This will ensure that all the ore is
taken along the footwall without taking any footwall waste. In certain cases that follow
a footwall, the take ore first for all blocks can be used instead of setting up FTOPO. This
should only be used if the highwall side of the pit never cuts the ore. Otherwise, the ore may
be over-accounted.
Pitres also has an option to take the zone 1 ore first. This allows additional control over
the material priorities when the ore has been coded using Priority order as compared to
Mintec, Inc.
Majority order.
Global
Mining Cmpres has an additional option to take coal first for blocks that fall inside a user specified
Software polygon(s). This allows the coal to be taken first in the footwall area of the pit and not in the
Solutions highwall area.
Since If using any of the priority options just described, the incremental reserves MUST be
1970 generated by running reserves on the full cumulative pit for each phase and running
Pitinc/Cmpinc for the proper incremental reserves. Generating and running partials
directly between any two pit phases will result in double accounting of some of the ore at
the pit phase contact blocks.

Page 13
Material Percentage Model Coding and Verification

The current Pitres limits are 4,000 total zones (1,000 for Cmpres) numbered from 1 to
99,999 (999,999 for Cmpres), 30 zones per block (4 for Cmpres), 30 grade items per zone, 100
cutoff bins (not applicable for Cmpres), and 99 waste types numbered from 1 to 99 (waste
type limits are the same as ore limits for Cmpres).

Mintec, Inc.
Global
Mining
Software
Solutions
Since
1970

Page 14

You might also like