blast-physics-js

Zero-dependency JavaScript blast engineering physics — vibration, damage, detonation, flyrock, frequency analysis and blast movement. Runs in the browser as ES modules and in Node.js. Every demo below computes from the library itself, in your browser.

MIT · github · blastingapps.com · kirra-design.com

Interactive demos

Vibration · Damage · Energy

Blast Analysis — Cross-Sections

Three draggable orthogonal planes slice a live-computed field through the blast. Eleven models, evaluated on demand from the KAP.

  • drag XY / XZ / YZ planes through the volume
  • PPV, Heelan, Holmberg-Persson, powder factor, SDoB
  • optional volumetric point cloud
Blast Movement

Blast Throw & Muckpile

Yang 3DMuck kinematic launch feeding a sphere DEM transport solver. Fire the pattern and watch the muckpile build.

  • voxelised burden blocks, timed initiation
  • swell and displacement vectors
  • calibrate against pre/post-blast surfaces
Timing · Signal

Ripple Tank & Frequency

Forward wave field from the initiation sequence as an orbitable 3D membrane, with inter-detonation interval, FFT spectrum and a synthesised monitor trace.

  • constructive / destructive timing interference
  • IDI histogram and dominant frequency
  • forward array L / T / V synthesis
  • wave analogue — see modelling note

Models in the analysis demo

ModelUnitModule
PPV (Site Law)mm/svibration/PPV
PPV Per-Deckmm/svibration/PPVDeck
Scaled Heelanmm/svibration/ScaledHeelan
Scaled Heelan Blairmm/svibration/ScaledHeelanBlair
Heelan Originalmm/svibration/HeelanOriginal
Holmberg-Perssonmm/sdamage/HolmbergPerssonDamage
Jointed Rockratiodamage/JointedRockDamage
Borehole PressureMPapressure/BoreholePressure
Powder Factorkg/m³pressure/PowderFactor
Specific EnergyGJ/m³pressure/SEE
Scaled Depth of Burialm/kg1/3flyrock/SDoB

Blair & Minchinton is in the library but is not offered live — it costs roughly 0.75 s per evaluated point, so it belongs in an offline pass. See examples/precompute.mjs.

Using the library

All three demos load the same SWELLFACTOR.kap sample. Drop your own Kirra .kap file onto any viewport to run the models against your own blast — nothing is uploaded, parsing and evaluation happen locally.

Use and interpretation. These are engineering calculations implemented from published methods, and the source for each is linked above. Choosing a model that suits the ground, calibrating its constants to your own site data, and validating output against measurement remain the user's responsibility — as does any decision taken from the results. Supplied under the MIT licence, without warranty of any kind.

One modelling note: the ripple tank is a wave analogue. Its timing and interference behaviour is real, but each charge radiates a multi-crest wavelet from a single point, where a real blasthole commits one transient pulse along the whole charge column. It is documented on the page itself.