How-To & Guides

Part 1: Viewing Invalid values in Leapfrog Geo

By diciembre 6, 2019 febrero 7th, 2020 No Comments

The topics in this post were originally presented at the Seequent Lyceum 2019 in Vancouver by Project Geologist, Anna Kutkiewicz.

This is Part 1 of a 2-part blog series:

  • Part 1 discusses how to view and categorize invalid values, missing intervals, and missing values on a numeric table in the 3D scene.
  • Part 2 explains some tricks for quickly querying and identifying Wedge holes in the 3D scene, and handling duplicate data conflicts without removing them. View Part 2 here.

Leapfrog is ideal for identifying errors and warnings within drillhole databases and other sheet-based data. A blog post from 2013 addresses the tools that are still available within the product. We’ve added some UI updates and additional features, but these are still valid and are worth a review if you need to brush up on them. Even with the availability of these tools, some common questions brought up in training, technical support, and our forum are: How do I view these in the 3D scene? Or how can I quickly address these errors and warnings?

Example error identification for the assay table in a drillhole database.

Invalid Values will not, by the design of the program, display in the 3D scene, so it can be difficult to visualise where these invalid values lie.

Let’s take a situation where the “NS” code has been used in the database for assays. This represents “no sample.” There are numerous reasons why this code may be used; the most common are that the sample was lost/not recovered, or the assay was simply not performed. How you manage these codes has important implications in the numeric modeling/compositing/resource evaluation stage. If we simply apply the default action of Omit, these intervals will be ignored and any composites, interpolants, and estimators will treat this gap as empty space, allowing grade to be “smeared”.

However, choosing a replacement value will cut the interpolant off. In this example, perhaps the geologist chose not to assay due to lack of visible sulfide in the core, so he replaced these values with a low background value.

Therefore, it’s very important for us to visualize the invalid values in the 3D scene and understand the impact of how we treat these.

Adding Flags Using the Interval Selection: A Workflow

In this case, we can use Interval Selection on the assay table in order to create flags. This is a 3-part process:

  1. Assign a temporary replacement for 3D visualisation
  2. Apply a value filter
  3. Create a new Interval Selection column and add these values to a new category

Part 1: Temporary Replacements

Temporary replacements can be made in order to show where these values sit. Let’s start with NS and temporarily replace this value with something which is standout bogus: 999, for example.

Click on the “Add Rule” button, select the value, and then type in a 999 for the Replacement.

Be sure to leave “These rules have been reviewed” unticked while we do our EDA! Save your replacement.

Processing Tip: If you have objects in your project already which are referencing this Numeric Value, it’s a good idea to use Priority-Only processing or the new Pause feature (available in Geo 5.0) to avoid unnecessary processing. Enable this before saving your replacement.

Part 2: Applying Value Filters

View the assay table in the scene, displaying the numeric value you are working with, and then apply a Value Filter to limit the values to only the replacements (e.g. 998-1000 to visualise the 999s). In this example, we are working with Au.

This allows you to identify the locations of the NS values and make a decision going forward. In this example, we have the majority of the NS samples for Au scattered along the surface (perhaps lost core within a broken, weathered zone) but also some at depth within the ore zone.

Part 3: Assigning Labels Using the Interval Selection

Since we don’t want to keep these 999 values, we can use the Interval Selection option to add a label. Right click on the assay table > New Column > Interval Selection. Let’s name it “Error Type”.

The Scene View display will flip to the empty Error Type column, so we’ll need to switch it back to a field that we can use before categorising the data. The eventual data types will be NS, Missing Value, and Missing Interval (as we saw in the Introduction). Before adding these, we need to assign a generic label to all values so that nothing is null.

Change the Scene Display to be Flat Colour, which will allow us to see all intervals.

Use the Select All button to highlight all intervals and assign them to a new ‘lithology’ called “No Error”. We will then work through all errors to add a label. Switch back to the Au view in the scene, and then select all of these intervals and give them a new ‘lithology’ called NS.

Final Stage: Repeat for all error types

Let’s return to the Fix Errors window. In this case we may decide to move forward with “Omit” since we cannot be confident if these samples are in waste or in ore (and, therefore, there is no acceptable replacement value). However, now that we have a label, we can easily make further decisions without having to return to replacements.

Return to Fix Errors

  • Remove your replacement behaviour of 999, and move on to the next error.
  • Make a replacement of 999. Decide if Priority processing is necessary. Save.
  • Apply a Value Filter in the scene view to isolate these 999s.
  • Return to your Interval Selection editor. Adjust your table view to the numeric field in question, and then use the Select All feature to select these new 999s.
  • Assign them to another new ‘lithology’. Save.
  • Return to the Fix Errors table and repeat.

Your resulting table may look something like this:

Summary

Flagging your error types with Interval Selection gives you a flexible way to view all invalid values and errors, which provides insight into replacement or omit decisions, but also reflects drilling decisions and provides insights into behaviour like core loss.

For an interactive View of the resulting table, check out the embedded View below: