View on GitHub

Ballistic Calculator 2

User guide — a free, open-source ballistic calculator for Windows, Linux and macOS

What the model includes — and what it does not

Goal of this article: judge the numbers. Know which physical effects the engine actually computes, which it approximates, which it ignores entirely, and where that puts the limit on how far a result can be trusted.

Every ballistic solver is a simplification. The useful question is never “is it accurate?” but “which effects does it include, and are the ones it leaves out big enough to matter for the shot I am planning?” This article answers the first half so you can answer the second.

The engine is a 3DOF point-mass model

The bullet is treated as a point with mass. Three degrees of freedom means three position coordinates — downrange, vertical, lateral — integrated forward in time. The forces acting on that point are drag along the air-relative velocity vector and gravity, plus several explicit correction terms listed below.

What a point has no notion of is which way it is pointing. The bullet’s orientation — yaw, pitch, precession, nutation — is not part of the state being integrated. That is the single most important thing to understand about the model, and most of the “not included” list below follows from it.

What is computed

Effect How
Drag From a drag table, at the current Mach number, divided by the ballistic coefficient. Standard curves G1, G2, G5, G6, G7, G8, GI, GS and RA4, or a projectile’s own measured curve from a .drg, or a multi-BC profile
Gravity Constant, 9.80665 m/s²
Air Density from the station pressure, temperature and humidity; speed of sound, which is what turns a velocity into the Mach number the drag curve is read at
Wind A horizontal vector split into range and cross components, in as many zones along the flight path as you define
Spin drift Litz’s approximation from the Miller stability coefficient — 1.25 × (Sg + 1.2). Folded into the windage figure, not reported separately
Crosswind aerodynamic jump Litz, Applied Ballistics Eq 5.4. A pure crosswind moves the impact vertically as well as horizontally
Coriolis Two distinct effects — see below
Shot angle and cant The line-of-sight incline, and a rotated sight
Sight geometry Sight height above the bore, the zero, and clicks already dialled

Three of these deserve more than a table row.

Spin drift and aerodynamic jump need three inputs

Both are computed from the Miller twist-rate stability coefficient (Sg), which needs the barrel twist, the bullet diameter and the bullet length. Leave any of the three out and both effects are silently absent — not wrong, not zero-by-physics, simply not in the answer. This is the most common reason two solvers disagree at long range, and the most common reason a windage figure looks too small.

The Ammunition tab article says which fields these are; the Rifle tab covers the twist.

Coriolis is two effects, not one

So latitude alone is the honest answer when you do not know the bearing: it gets the horizontal term right and leaves the vertical one out. The Parameters tab gives measured magnitudes for both, and they are smaller than most people expect.

Sg is used, but never judged

The stability coefficient is computed to scale drift and jump. It is not reported, and nothing warns you when it comes out marginal. A bullet that would be barely stabilised in reality — an Sg near or below 1.4 — is integrated here exactly as if it flew perfectly, because a point mass cannot be unstable.

What is not computed

What a 4DOF model would add — and what it would not

A 4DOF model tracks the bullet’s angular motion as well as its position. That buys a computed yaw of repose instead of an approximated one, better long-range spin drift, and honest transonic behaviour.

It is worth being clear about what it does not buy: a better drag curve. The dominant source of error in any solver is the drag data — a 4DOF model fed a guessed G1 coefficient is less accurate than this 3DOF one fed a measured .drg. If you want a better answer, better drag data is nearly always the cheaper improvement. See choosing a drag model and custom drag tables.

Numerical accuracy, as distinct from physical accuracy

Even a perfect model has to be integrated numerically. Three things are worth knowing:

The zero is found iteratively, to a default accuracy of 0.1 mm — far finer than any other error here.

Checking a number yourself

The engine is a separate open-source project, and it is the place to look when you want to know how a figure was produced rather than take this article’s word for it: BallisticCalculator. The formulae named above — Miller for stability, Litz for spin drift and aerodynamic jump, the Eötvös term for vertical Coriolis — are all standard and published; recommended reading lists where.

Risk notice

Repeated here in full rather than left as fine print at the end of another article, because this is the article about how far to trust the output:

The application performs a very limited simulation of a complex physical process and therefore makes a great many approximations. The calculation results MUST NOT be considered as completely and reliably reflecting the actual behaviour or characteristics of projectiles. While these results may be used for educational purposes, they must NOT be considered reliable in any area where an incorrect calculation could lead to a wrong decision, financial harm, or risk to human life.

The practical reading of that: this is a tool for planning and learning, and the ground truth is always what your rifle does on paper at a measured distance. Use the model to decide what to test, then test it.

Next

Known problems — the defects and platform quirks that are known rather than theoretical.


← Contents