Advanced Analytics Engine
BlastCAD’s Module 2 analytics engine — five mechanistic and empirical models covering the full blast prediction lifecycle, from fragmentation to flyrock to timing validation.
Table of contents
- Module 1 — Lilly Blastability Index & Rock Factor A
- Module 2 — Open-Pit Fragmentation: Kuz-Ram + JKMRC Fines
- Module 3 — Holmberg-Persson Near-Field PPV
- Module 4 — Underground Mechanistic Fragmentation
- Module 5 — Kleine 4D Energy Field Theory
- Module 6 — Lundborg Flyrock (Proper Formulation)
- Module 7 — Monte Carlo Timing Scatter
- Module 8 — Auto-Calibration Engine
- API Reference
- Academic References
Academic note: All models in this module are implemented against their original published references. Calibration inputs can be derived from standard site monitoring campaigns. The auto-calibration engine updates site constants using ordinary least squares regression and Bayesian sequential updates.
Module 1 — Lilly Blastability Index & Rock Factor A
Rather than guessing the Kuz-Ram rock factor $A$, BlastCAD derives it systematically from Lilly’s Blastability Index (BI).
\[BI = 0.5 \times (RMD + JPS \times JPA + RDI + HF)\] \[A = 0.12 \times BI\]Component Definitions
| Component | Description | Values |
|---|---|---|
| RMD | Rock Mass Description | Powdery/Friable = 10, Blocky = 20, Totally Massive = 50 |
| JPS | Joint Plane Spacing | < 0.1 m = 10, 0.1–0.3 m = 20, 0.3–1 m = 30, > 1 m = 40 |
| JPA | Joint Plane Angle (relative to free face) | Dipping Out = 20, Strike = 30, Dipping In = 40 |
| RDI | Rock Density Index: $0.025\rho_{rock}\ [\text{kg/m}^3] - 50$ | ≈ 17.5 for granite at 2700 kg/m³ |
| HF | Hardness Factor: $E/3$ if $E < 50$ GPa, else $\sigma_c/5$ | Typical hard rock: 20 |
Typical BI ranges:
| Rock type | BI | A |
|---|---|---|
| Soft, powdery / friable | 20 – 35 | 2.4 – 4.2 |
| Medium-hard, blocky | 40 – 55 | 4.8 – 6.6 |
| Hard, competent | 55 – 70 | 6.6 – 8.4 |
| Very hard, massive | 70 – 90 | 8.4 – 10.8 |
Reference: Lilly, P.A. (1986). An empirical method of assessing rock mass blastability. Proc. Large Open Pit Mining Conference, AusIMM.
Module 2 — Open-Pit Fragmentation: Kuz-Ram + JKMRC Fines
2.1 Cunningham 2005 Kuznetsov Equation
\[x_{50} = A \times \left(\frac{V}{Q}\right)^{0.8} \times Q^{\frac{1}{6}} \times \left(\frac{115}{RWS}\right)^{\frac{19}{30}}\]Note that $-0.8 + \tfrac{1}{6} = -\tfrac{19}{30}$, so this is equivalent to:
\[x_{50} = A \times V^{0.8} \times Q^{-19/30} \times \left(\frac{115}{RWS}\right)^{19/30}\]This formulation (Cunningham 2005) places higher weight on explosive strength than the original 1983 version, better matching observed fragmentation in high-RWS explosives.
2.2 Uniformity Index (Cunningham 1987)
\[n = \left(2.2 - \frac{14B}{d}\right) \times \sqrt{\frac{1 + S/B}{2}} \times \left(1 - \frac{W}{B}\right) \times \left(\frac{L_{ch}}{H}\right)^{0.1} \times P_f\]| Symbol | Parameter | Typical range |
|---|---|---|
| $B$ | Burden (m) | 2–5 m |
| $d$ | Hole diameter (mm) | 76–311 mm |
| $S$ | Spacing (m) | $B \times 1.15$ typically |
| $W$ | Drilling standard deviation (m) | 0.05–0.3 m |
| $L_{ch}$ | Charge column length (m) | — |
| $H$ | Hole length (m) | — |
| $P_f$ | Pattern factor | 1.0 (square), 1.1 (staggered) |
Valid range: $n \in [0.6,\ 3.0]$. Values below 0.8 indicate highly non-uniform fragmentation (long tails of both oversize and fines).
2.3 JKMRC Fines Correction (Djordjevic 1999)
Standard Kuz-Ram underestimates fine material generated in the crush zone immediately around the blasthole, where rock is subjected to detonation pressures far exceeding its compressive strength.
CJ Detonation Pressure: \(P_{CJ} = \frac{\rho_e \times VoD^2}{4} \quad [\text{Pa}]\)
Crush zone radius (Djordjevic 1999): \(r_c = \frac{d_h}{2} \times \left(\frac{P_{CJ}}{\sqrt{3} \times \sigma_c}\right)^{1/3}\)
Fines fraction (area ratio method): \(f = \min\!\left(1,\ \left(\frac{r_c}{r_{breakage}}\right)^2\right)\)
where $r_{breakage} = \sqrt{V_0 / (\pi L_{ch})}$ is the equivalent breakage radius from the Voronoi cell.
Combined PSD: \(P_{total}(x) = f \times P_{crush}(x) + (1-f) \times P_{KuzRam}(x)\)
$P_{crush}(x)$ is a steep Rosin-Rammler with $x_{50,crush} = d_h/20$ and $n_{crush} = 3.0$, representing the near-uniform, very fine crush-zone material.
Reference: Djordjevic, N. (1999). Two-component model of blast fragmentation. Proc. FRAGBLAST-6, Johannesburg.
Module 3 — Holmberg-Persson Near-Field PPV
For underground ring blasts, far-field PPV models (Attewell & Farmer) are inappropriate — the monitoring point is within the near-field of the charge. Holmberg & Persson (1978) developed an integral model treating the explosive column as a distributed line source.
3.1 The Distributed Charge Integral
\[PPV = K \times \left[\int_{L_1}^{L_2} \frac{l_c}{\left(R_0^2 + (x - x_0)^2\right)^{\alpha/2}}\ dx\right]^{\beta}\]| Symbol | Parameter | Typical value (underground hard rock) |
|---|---|---|
| $K$ | Site transmission constant | 700 |
| $\alpha$ | Geometric attenuation exponent | 1.7 |
| $\beta$ | Non-linear amplitude exponent | 0.7 |
| $R_0$ | Perpendicular distance to blasthole axis (m) | — |
| $x_0$ | Projection of receiver along blasthole axis (m) | — |
| $l_c$ | Linear charge concentration (kg/m) | $Q / L_{ch}$ |
| $L_1, L_2$ | Charge column bounds (m) | — |
Numerical integration: The integral is solved via Gaussian quadrature (QUADPACK). An analytical solution exists only for $\alpha = 2$ (standard inverse-square decay). For $\alpha \neq 2$, numerical integration is used with relative error $< 10^{-5}$.
3.2 Critical PPV for Rock Damage
Derived from one-dimensional wave mechanics (Persson et al. 1994):
\[\sigma = \rho \cdot c_p \cdot v \quad \Rightarrow \quad v_c = \frac{\sigma_T}{\rho \cdot c_p}\]Using $E = \rho \cdot c_p^2$:
\[\boxed{PPV_c = \frac{\sigma_T \times c_p}{E} \quad [\text{m/s, then} \times 1000\ \text{for mm/s}]}\]Typical values:
| Rock type | $\sigma_T$ (MPa) | $c_p$ (m/s) | $E$ (GPa) | $PPV_c$ (mm/s) |
|---|---|---|---|---|
| Soft rock | 3 | 3,500 | 20 | 525 |
| Medium rock | 7 | 4,500 | 40 | 788 |
| Hard rock | 10 | 5,000 | 60 | 833 |
| Very hard rock | 15 | 6,000 | 80 | 1,125 |
3.3 Three-Zone Damage Classification
| Zone | PPV range | Effect |
|---|---|---|
| Crush zone | $PPV > 10 \times PPV_c$ | Rock crushed; minimal block size |
| Fracture zone | $PPV_c < PPV \leq 10 \times PPV_c$ | Tensile/shear cracks; primary breakage zone |
| Elastic zone | $PPV \leq PPV_c$ | No permanent damage |
References: Holmberg & Persson (1978, 1979); Persson, Holmberg & Lee (1994) Rock Blasting and Explosives Engineering, CRC Press.
Module 4 — Underground Mechanistic Fragmentation
For confined underground ring blasts, the Kuz-Ram model (calibrated on open-pit benches) is not appropriate. BlastCAD implements a PPV-gradient-to-PSD pipeline:
Step-by-Step Pipeline
Step 1. Compute radial PPV profile $PPV(r)$ via the Holmberg-Persson integral at the charge column midpoint.
Step 2. Calculate $PPV_c$ from rock properties (Module 3).
Step 3. Map PPV to Fracture Density Index (FDI) in the damaged zone:
\[FDI(r) = k_{fd} \times \left(\frac{PPV(r)}{PPV_c} - 1\right) \quad \text{for } PPV(r) > PPV_c\]Step 4. Estimate local fragment size using a power-law model:
\[x(r) = \frac{x_0}{(1 + FDI(r))^m}\]where $x_0$ = in-situ block size (m), $m$ = size reduction exponent (typically 0.5).
Step 5. Integrate annular volume elements:
\[dV_i = \pi\,(r_{i+1}^2 - r_i^2)\,L_{ch}\]Step 6. Distribute volume elements into size bins and compute cumulative PSD.
Key Parameters
| Parameter | Symbol | Physical meaning | Typical range |
|---|---|---|---|
| Fracture density constant | $k_{fd}$ | Rock brittleness/jointing | 1.0–3.0 |
| Size reduction exponent | $m$ | Crushing efficiency | 0.3–0.8 |
| In-situ block size | $x_0$ | Pre-blast joint spacing | 0.1–2.0 m |
References: Holmberg & Persson (1978); Persson et al. (1994); Ouchterlony (1997).
Module 5 — Kleine 4D Energy Field Theory
Kleine & Cameron (1993) introduced a dynamic treatment of explosive energy distribution, modelling the charge column as a continuous volumetric energy source.
5.1 Energy Integral (Analytical Solution)
\[P(r) = \int_{L_1}^{L_2} \frac{\rho_e \times \pi \times (D/2)^2}{\rho_r \times \frac{4}{3}\pi \times (h^2 + l^2)^{3/2}}\ dl\]Simplifying the prefactor: \(C = \frac{3\,\rho_e\,D^2}{16\,\rho_r}\)
Exact closed-form integral: \(\int_{L_1}^{L_2} \frac{dl}{(h^2 + l^2)^{3/2}} = \left[\frac{l}{h^2\sqrt{h^2 + l^2}}\right]_{L_1}^{L_2}\)
This is computed analytically — no numerical integration required. A full 3D energy density grid can be computed in milliseconds.
5.2 Energy Superposition (Cooperation Window)
Holes detonating within the cooperation window $T_{coop}$ (default 8 ms) create superimposed stress fields. Their energy contributions sum at every point in the 3D domain:
\[E_{total}(\mathbf{r}) = \sum_{i\,:\,|t_i - t_{ref}| \leq T_{coop}/2} E_i(\mathbf{r})\]Cooperation zones identify volumes receiving energy from multiple holes — high cooperation generally improves fragmentation but also increases PPV.
Reference: Kleine, T.H. & Cameron, A.R. (1993). The relationship of blast dynamics to rock breakage and fragmentation. Proc. 4th Int. Symp. Rock Fragmentation by Blasting.
Module 6 — Lundborg Flyrock (Proper Formulation)
The existing simplified flyrock estimate is replaced with the proper Lundborg (1975) dimensional analysis:
\[S = k \times \frac{M^a}{D^b}\]| Symbol | Parameter | Default (Lundborg 1975) |
|---|---|---|
| $S$ | Maximum throw distance (m) | — |
| $M$ | Per-hole charge mass (kg) | — |
| $D$ | Hole diameter (m) | — |
| $k$ | Site constant | 260 |
| $a$ | Charge exponent | 1/3 |
| $b$ | Diameter exponent | 2/3 |
Physical derivation: The formula follows from dimensional analysis of the ejection velocity: \(v_{eject} \propto M^{1/3}/D^{2/3}\) combined with projectile motion at the worst-case angle (45°): $S = v_{eject}^2 / g$.
Risk zones:
| Zone | Radius | Requirement |
|---|---|---|
| Exclusion | $S$ | All personnel evacuated |
| Warning | $1.5 \times S$ | Sheltered positions only |
| Monitor | $2.0 \times S$ | Observer positions acceptable |
Reference: Lundborg, N., Persson, A., Ladegaard-Pedersen, A. & Holmberg, R. (1975). Keeping the lid on flyrock. E&MJ, 176(5), 95-100.
Module 7 — Monte Carlo Timing Scatter
Deterministic timing analysis assumes exact detonation at the nominal delay. In reality, all detonators exhibit timing scatter. BlastCAD’s Monte Carlo simulation propagates this uncertainty through to MIC and sequence reliability.
7.1 Scatter Model
For each hole $i$ with nominal delay $t_{i,nom}$:
\[t_{i,actual} \sim \mathcal{N}\!\left(t_{i,nom},\ \sigma_i^2\right)\] \[\sigma_i = \sqrt{\sigma_{abs}^2 + (\sigma_{frac} \times t_{i,nom})^2}\]Detonator scatter parameters:
| Type | $\sigma_{abs}$ (ms) | $\sigma_{frac}$ |
|---|---|---|
| Electronic | 0.5 | 0.1% |
| Non-electric (shock tube) | 3.0 | 5% |
| Pyrotechnic | 8.0 | 10% |
7.2 MIC Distribution
For each simulation: \(MIC_{sim} = \max_t \sum_{i\,:\,|t_{i,actual} - t| \leq T_{window}/2} Q_i\)
After $N$ simulations (default 1,000):
- P95 MIC — the MIC that will not be exceeded in 95% of actual blasts
- P99 MIC — for conservative vibration compliance
7.3 Out-of-Sequence Detection
Ring $R_2$ fires out-of-sequence relative to $R_1$ when: \(\min_j(t_{R_2,j,actual}) < \max_k(t_{R_1,k,actual}) + T_{min,relief}\)
BlastCAD reports $P(\text{out-of-sequence})$ — the fraction of simulations in which at least one ring fires before adequate relief is established.
Minimum relief time: 15 ms is the commonly used minimum inter-ring interval in underground hard rock. Reduce to 8 ms for electronic detonators only.
References: Morin & Ficarazzo (2006); Sanchidrian & Singh (2013).
Module 8 — Auto-Calibration Engine
8.1 PPV Calibration (Log-Log OLS Regression)
Given field measurements $(R_j, PPV_j, MIC_j)$, calibrate $K$ and $\alpha$:
\[\ln(PPV) = \ln(K) - \alpha \times \ln(SD) \quad \text{where}\ SD = \frac{R}{\sqrt{MIC}}\]Solved via Ordinary Least Squares in log-space. Returns $K$, $\alpha$, $R^2$, and 95% confidence intervals.
Minimum observations: 3 (5+ recommended for reliable $R^2$).
8.2 Rock Factor A — Bayesian Update
\[A_{cal} = A_{current} \times \frac{x_{50,actual}}{x_{50,predicted}}\] \[A_{new} = \lambda \times A_{cal} + (1-\lambda) \times A_{current}\]where $\lambda \in (0, 1)$ is the Bayesian decay factor (weight on new observation). Default $\lambda = 0.7$ — new observations receive 70% weight.
8.3 Lundborg Constants — Log-Log Multi-Regression
\[\ln(S) = \ln(k) + a \ln(M) - b \ln(D)\]Solved via OLS least squares with 3 unknowns. Requires minimum 4 flyrock observations with known charge mass, hole diameter, and measured throw distance.
8.4 Calibration Database Schema
All field observations and calibrated constants are stored in the BlastCAD calibration database:
| Table | Contents |
|---|---|
blast_sites | Site metadata + active calibration constants |
blast_events | Design parameters + predicted outcomes per blast |
vibration_records | PPV measurements (+ optional waveform JSON) |
fragmentation_records | Post-blast PSD curves (WipFrag, sieve, etc.) |
site_calibrations | Versioned history of all calibration updates |
The waveform_json field supports full time-history storage ([[t_ms, v_mmps], ...]), enabling JKBMS-style post-blast frequency analysis and dominance frequency identification.
API Reference
| Endpoint | Method | Description |
|---|---|---|
/api/blast/advanced-stats | POST | Full advanced analytics run |
/api/blast/calibrate/ppv | POST | Calibrate K, α from PPV field data |
/api/blast/calibrate/fragmentation | POST | Bayesian update of rock factor A |
/api/blast/calibrate/flyrock | POST | Calibrate Lundborg constants |
All endpoints require JWT authentication.
Example: Advanced Stats Request
{
"operationMode": "underground",
"holes": [...],
"holeCharges": {...},
"youngModulusGpa": 65,
"tensileStrengthMpa": 12,
"pWaveVelocityMs": 5200,
"ucsMpa": 85,
"hpK": 700,
"hpAlpha": 1.7,
"hpBeta": 0.7,
"fractureDensityK": 1.5,
"insituBlockSizeM": 0.4,
"runMonteCarlo": true,
"mcSimulations": 1000,
"detonatorType": "electronic",
"minReliefTimeMs": 15
}
Academic References
| # | Citation |
|---|---|
| [HP78] | Holmberg, R. & Persson, P-A. (1978). The Swedish approach to contour blasting. Proc. 19th US Symp. Rock Mechanics, Reno. |
| [HP79] | Holmberg, R. & Persson, P-A. (1979). Design of tunnel perimeter blasthole patterns. Proc. Tunnelling ‘79, IMM, London. |
| [KL93] | Kleine, T.H. & Cameron, A.R. (1993). The relationship of blast dynamics to rock breakage. Proc. 4th FRAGBLAST, Vienna. |
| [DJ99] | Djordjevic, N. (1999). Two-component model of blast fragmentation. Proc. FRAGBLAST-6, Johannesburg. |
| [LI86] | Lilly, P.A. (1986). An empirical method of assessing rock mass blastability. Proc. Large Open Pit Mining, AusIMM. |
| [LU75] | Lundborg, N. et al. (1975). Keeping the lid on flyrock. Engineering and Mining Journal, 176(5), 95-100. |
| [CU05] | Cunningham, C.V.B. (2005). The Kuz-Ram model — 20 years on. Brighton Conference, EFEE. |
| [PE94] | Persson, P-A., Holmberg, R. & Lee, J. (1994). Rock Blasting and Explosives Engineering. CRC Press. |
| [MO06] | Morin, M.A. & Ficarazzo, F. (2006). Monte Carlo simulation for blast fragmentation. Computers and Geosciences, 32(3). |
| [SA14] | Sanchidrian, J.A. & Singh, V.K. (2013). Measurement and Analysis of Blast Fragmentation. CRC Press. |
| [OU97] | Ouchterlony, F. (1997). Prediction of crack lengths in rock after cautious blasting. Int. J. Blasting and Fragmentation, 1. |
| [HU02] | Hustrulid, W. & Lu, W. (2002). Design concepts for the control of blast-induced damage. Proc. 7th FRAGBLAST. |