Skip to main content
Version: 3.4 (unreleased)

Fracture Intensity Mapping (P21 / P32 / P33)

VRGS can compute fracture intensity across a triangulated outcrop mesh and store it as colour-mappable vertex attributes. Three measures from the Dershowitz Pᵢⱼ system are produced together:

AttributeDefinitionUnitsSampled from
P21trace length per unit aream / m² (= m⁻¹)fracture traces on the surface
P32fracture area per unit volumem² / m³ (= m⁻¹)orientation glyphs (virtual ellipses)
P33fracture volume per unit volume (≈ fracture porosity)m³ / m³ (dimensionless)P33 = aperture × P32

P21 is what you can measure directly from a 2D outcrop — the trace length you see per unit of rock face. P32 is the scale-independent volumetric measure the DFN generator targets (see the DFN user guide). P33 turns P32 into a porosity-like quantity using a fracture aperture.


How it is computed — the search sphere

Every value is evaluated per mesh vertex inside a search sphere of radius R centred on that vertex:

trace length inside the sphere
P21(vertex) = ────────────────────────────────
mesh surface area inside the sphere

fracture (glyph) area inside the sphere
P32(vertex) = ───────────────────────────────────────
sphere volume

P33(vertex) = aperture × P32(vertex)

Both halves of each ratio are clipped exactly to the sphere:

  • A trace that only partly crosses the sphere contributes only the length inside.
  • A triangle straddling the sphere contributes only the area inside.
  • A fracture ellipse straddling the sphere contributes only the proportion of its area inside — not the whole ellipse.

Because numerator and denominator use the same clipped region, the result is a true local intensity, and it varies continuously as the sphere sweeps across the mesh — there is no abrupt jump when a fracture enters or leaves the sphere.

Why "RBF radius"?

The radius parameter is historically labelled RBF Radius (radial basis function). Conceptually the sphere is the support of a local averaging kernel — see Distance weighting below.


Running the tool

In the Data tree, right-click a triangulated mesh. Two commands launch the same calculation:

  • P21 Map (ID_ATTRIBUTES_P21MAP) — the full command. Prompts for every parameter (radius, aperture, glyph shape, kernel) so you control P21, P32 and P33.
  • Radial Basis Function (RBF) Area (ID_ATTRIBUTES_RBFAREA) — a quick path that prompts only for the radius and uses sensible defaults (ellipse glyph, aperture 0, biweight kernel).

Both produce the same six attribute layers (below). The computation is spatially indexed and runs in parallel across vertices; large meshes are processed in one fused pass.

You can select several meshes before running — each is processed in turn.


Parameters

Search radius (R)

The radius of the sphere, in project units. This is the single most important control: it sets the scale over which intensity is averaged.

  • Small R → high spatial detail, but noisier (few fractures per sphere) and more sensitive to mesh sampling.
  • Large R → smoother, more stable maps that blur local variation.

Treat R as a bandwidth: choose it to match the spacing of the features you want to resolve. A common starting point is a few times the mean fracture spacing.

Distance-weighting kernel

By default every fracture inside the sphere counts equally regardless of where it sits (a top-hat). That makes a fracture's influence switch on at the sphere edge, which can leave a faint "halo" at radius R and abrupt transitions as the sphere moves. A smooth kernel down-weights fractures near the rim so their influence fades to zero at R, giving smoother maps. The kernel weights both the numerator and denominator, so it never biases the magnitude — on a uniform fracture field every kernel returns the same true intensity.

Kernel (prompt code)Weight w(r), s = (r/R)²Behaviour
0 — Uniform1Legacy top-hat; counts the exact geometric proportion inside the sphere with no fade. Reproduces older results bit-for-bit.
1 — Epanechnikov1 − sGentle fade; removes the hard halo edge.
2 — Biweight (default)(1 − s)²Smooth fade with zero slope at R; removes both the halo and the abrupt onset.
3 — Triweight(1 − s)³Strongest centre-weighting; smoothest of all.
tip

Choose Uniform if you want the literal proportion of each fracture inside the sphere with no weighting. Choose Biweight (the default) for the smoothest maps. A smooth kernel slightly reduces the effective radius (the rim is down-weighted), so peaks are a little lower and broader — the spatial average is preserved.

Fracture aperture (P33)

A single global aperture (in project units) used for P33 = aperture × P32. Leave it at 0 if you do not need P33 (the P33 layer is then all zero). The aperture is also the link to fracture porosity used in the DFN permeability tools (porosity ≈ aperture × P32).

Glyph shape (P32 area model)

How each orientation's fracture area is modelled:

  • Ellipse (default) — area = π · (W/2) · (L/2).
  • Rectangle — area = W · L.

W and L are the glyph width and length (see Glyph size for P32 and P33 below).


Inputs — what feeds each measure

P21 (traces)

The P21 numerator gathers the visible trace geometry in the project: strike/dip geo-objects, orientation traces, faults and polylines. Traces produced by the AI Fracture Mapping workflow and projected onto the model feed P21 in the same way.

The P21 denominator is the mesh surface area inside the sphere, so P21 is automatically corrected for the proportion of the sphere that actually intersects the outcrop (edges of the mesh, holes, oblique faces).

P32 / P33 (orientation glyphs)

The P32 numerator gathers each visible orientation measurement as a planar fracture — the virtual ellipse (or rectangle) that VRGS draws for it, oriented to the measured dip and azimuth and sized by the glyph W/L. Only the part of that ellipse inside the search sphere is counted. Lineations (which have no plane area) are skipped.

This means the size of the glyph directly sets the fracture area that goes into P32 and P33 — so the glyph-size settings matter.


Glyph size for P32 and P33

Because P32 integrates the area of each fracture, the displayed glyph is not just decoration: its width and length are the fracture's modelled extent. Two orientation display settings control this:

SettingEffect
Auto Glyph SizeSizes the glyph to match the extent of the digitised vertices used to define the orientation — i.e. how big the fracture was traced on the outcrop.
Auto Scale W/L/HScales the glyph to the calculated width / length / height of the bounding box of those vertices, so width and length can differ (an elongate ellipse).
Minimum fracture size

With both Auto Glyph Size and Auto Scale W/L/H enabled, each glyph becomes an accurate "minimum fracture size" ellipse — the smallest plane consistent with the digitised trace. This is the recommended configuration for a physically meaningful P32/P33, because each measurement then contributes the real area it was mapped at rather than a fixed display size.

If Auto Glyph Size is off, the glyph uses a fixed display size (the group's display size), so every measurement contributes the same area regardless of how large the mapped fracture was. The glyph configuration lives in the orientation display properties — see Display Properties.


Output attribute layers

Both commands write six vertex attributes to the mesh (all colour-mappable, with histograms):

LayerMeaning
P21Areal intensity (trace length / sampled area).
P32Volumetric intensity (fracture area / sphere volume).
P33Aperture × P32 (fracture porosity).
RBF AreaThe clipped mesh surface area inside the sphere (the P21 denominator).
Line LengthThe clipped trace length inside the sphere (the P21 numerator).
Glyph AreaThe clipped fracture (glyph) area inside the sphere (the P32 numerator).

The three "raw" layers (RBF Area, Line Length, Glyph Area) are useful for diagnosis — e.g. a low P21 caused by little sampled area (mesh edge) looks different from one caused by few traces.


Interpretation notes & best practice

  • P32 is the most robust intensity measure because it is scale-independent; prefer it when comparing zones or validating against a DFN. P21 depends on the orientation of the outcrop face relative to the fractures.
  • Match R to your question. Use a smaller radius to map intensity gradients (e.g. damage zones around a fault); a larger radius for a stable regional background intensity.
  • Validate modelled intensity against independent data where possible — borehole or scanline P10, or the DFN generator's realized P32 (see the DFN user guide and DFN interpretation matching).
  • Reproducibility. If you need to reproduce historical maps exactly, run with the Uniform kernel — it is the original top-hat behaviour.
Related workflows

The traces that feed P21 are often produced by AI Fracture Mapping. The orientations that feed P32/P33 can be measured manually or generated as virtual orientations from mapped traces. Once intensity is mapped, the DFN tools can Override P32 from Traces and Score Against Traces — see DFN interpretation matching.