Resources Numerical accuracy
Calculations
Every calculation under our calculation policies: what it works out, its formula and the precision it runs at. Open one to see its code as it is in the released app.
Calculations
-
Rain results in inches and cubic feet per second
Depths and flows from the rain solver converted from meters for a feet project.
inches = meters × 39.3700787; ft³/s = m³/s ÷ 0.028316846592
Earthwork, route and pond tools: values stored and exported eg-agent.js64-bit- CivilCraft
-
Pad level set by an assistant
A pad's level and, for a tilted pad, its corner elevations, as stored in the project.
z stored = r3(level); corner z = r3(level + gx·(x − cx) + gy·(y − cy))
Earthwork, route and pond tools: values stored and exported eg-agent.js64-bit- CivilCraft
-
Alignment from route points
The PIs of an alignment made by an assistant from route points, with curve radii.
r = min(R, min(l₁, l₂) ÷ (2·tan(Δ/2))), stored to 3 decimals
Earthwork, route and pond tools: values stored and exported eg-agent.js64-bit- CivilCraft
-
Orifice sized by an assistant
The orifice diameter found for an allowed outflow, as used for the reported run.
diameter = r3(d ÷ L)
Earthwork, route and pond tools: values stored and exported eg-agent.js64-bit- CivilCraft
-
Arc from two points and a bulge
The center, radius, start angle, sweep and length of the arc between two vertices.
k = (1 − b²) ÷ (4b); center = chord middle + k·(−Δy, Δx); r = c·(1 + b²) ÷ (4|b|); sweep = 4·atan(b); L = r·|sweep|
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Bulge of an arc through three points
The bulge of the arc drawn from a start, through a middle point, to an end.
sweep = 2·(π − angle at the middle point); bulge = sign × tan(sweep ÷ 4)
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Bulge for a typed radius
The bulge of the shorter arc of a given radius between two vertices.
Δ = 2·asin(c ÷ 2r); bulge = ±tan(Δ ÷ 4)
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Point and direction along a segment
The plan point and travel direction at a fraction of a straight or arc segment.
arc: p = c + r·(cos θ, sin θ), θ = a₀ + sweep × u
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Segment lengths and grades
Each segment's plan length, chord, 3D length, rise and grade.
length = chord or r·|sweep|; 3D length = √(L² + Δz²); grade = Δz ÷ L
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Stations along a feature line
The plan distance from the start to each vertex.
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Elevation from a grade
The far vertex of a segment moved to the elevation a typed grade gives.
z₂ = z₁ + grade × length
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
One grade between two vertices
The vertices between two chosen ones placed on a single grade.
z = z₀ + (z₁ − z₀) × (s − s₀) ÷ L
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Stepped offset
A copy of the line moved sideways with mitred corners and raised by a height or a cross slope.
corner shift = bisector × d ÷ cos(half angle); z + Δz, or z + |d| × slope
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Straight segment against an alignment element
Where a straight feature line segment crosses a line or arc of the alignment, with the station.
line: 2×2 solve by cross products; arc: A·t² + B·t + C = 0, t = (−B ± √(B² − 4AC)) ÷ 2A
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Arc segment against an alignment element
Where an arc of a feature line crosses a line or arc of the alignment.
two circles: along = (r₁² − r₂² + d²) ÷ 2d; h = √(r₁² − along²)
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Feature line read from a file
The vertices kept when a feature line is read from a project file or a drawing.
Feature line grades, arcs, offsets and crossings featureline.js64-bit- CivilCraft
-
Elevations of a newly drawn line
The elevation each vertex of a new feature line gets.
Feature line grades, arcs, offsets and crossings features-ui.js64-bit- CivilCraft
-
Elevation and grade boxes
A typed vertex elevation or segment grade applied to the line.
grade = typed percent ÷ 100
Feature line grades, arcs, offsets and crossings features-ui.js64-bit- CivilCraft
-
Offset distance and amount
The typed offset distance and height or slope passed to the stepped offset.
slope = typed percent ÷ 100
Feature line grades, arcs, offsets and crossings features-ui.js64-bit- CivilCraft
-
Number of pieces for an arc
How many straight pieces draw an arc within the tolerance.
step = min(2·acos(1 − tol ÷ r), 5°); pieces = ⌈|sweep| ÷ step⌉, from 1 to 720
Feature line arcs as straight pieces featureline.js64-bit- CivilCraft
-
Line as straight pieces
The feature line with every arc replaced by vertices on the arc.
p = c + r·(cos θ, sin θ), θ = a₀ + sweep × s ÷ k; z = z_a + (z_b − z_a) × s ÷ k
Feature line arcs as straight pieces featureline.js64-bit- CivilCraft
-
Closed design line as a grading item
The outline and the single elevation a closed design feature line passes to grading.
z = Σ vertex z ÷ number of vertices
Feature line arcs as straight pieces featureline.js64-bit- CivilCraft
-
Feature line written to DWG or DXF
The 3D polyline and the extended data that records which runs of pieces were arcs.
Feature line arcs as straight pieces featureline.js64-bit- CivilCraft
-
Feature line read back from DWG or DXF
The feature line rebuilt from a polyline and its extended data.
Feature line arcs as straight pieces featureline.js64-bit- CivilCraft
-
Crossings with an alignment
Every place a feature line crosses the centerline, with its station and elevation.
z = z_a + t × Δz
Feature line arcs as straight pieces featureline.js64-bit- CivilCraft
-
Stretches running beside an alignment
The parts of a feature line within a given distance of the centerline, as station and elevation for a profile view.
Feature line arcs as straight pieces featureline.js64-bit- CivilCraft
-
Project units to meters
The factor that takes a project length to meters for every engine in this file.
feet: 0.3048; meters: 1
Running saved geotechnical, survey, pit and link items geo-run.js64-bit- CivilCraft
-
Soil profile along a section
The borings in meters, the layers between them, and the layer stack at evenly spaced stations.
stations = max(2, round(length ÷ step)), default step = max(length ÷ 40, 0.5 m)
Running saved geotechnical, survey, pit and link items geo-run.js64-bit- CivilCraft
-
Slope cross section for stability
The ground line, layer tops, water level, surcharges and floor that the slope stability engine reads.
81 samples along the section; layer top = min(layer top, ground)
Running saved geotechnical, survey, pit and link items geo-run.js64-bit- CivilCraft
-
Slope stability run
The factor of safety of a given circle, or the critical circle from a search.
Running saved geotechnical, survey, pit and link items geo-run.js64-bit- CivilCraft
-
Settlement run
Settlement under a footing at a boring, and the time for 50 % and 90 % consolidation.
layer top = (z − from) × k; drainage path = clay thickness ÷ 2
Running saved geotechnical, survey, pit and link items geo-run.js64-bit- CivilCraft
-
Traverse run
A traverse closed by the compass rule from legs typed as distance and azimuth in degrees.
azimuth in radians = degrees × π ÷ 180
Running saved geotechnical, survey, pit and link items geo-run.js64-bit- CivilCraft
-
Radio link run
Path length, terrain profile, line of sight, link budget and mast height for a link between two points.
distance in km = √(Δx² + Δy²) ÷ 1000
Running saved geotechnical, survey, pit and link items geo-run.js64-bit- CivilCraft
-
Coverage run
Received power over a grid round a transmitter and the farthest covered cell.
farthest = max over covered cells of √(Δx² + Δy²) ÷ k
Running saved geotechnical, survey, pit and link items geo-run.js64-bit- CivilCraft
-
Open pit run
The block model in meters, block values, the ultimate pit and its phases.
slope in radians = degrees × π ÷ 180; phase factors from 0.4 to 1 in equal steps
Running saved geotechnical, survey, pit and link items geo-run.js64-bit- CivilCraft
-
Layers made end to end
The depth limits of a boring's layers after gaps and overlaps are removed.
Boring logs and the soil profile between borings geotech.js64-bit- CivilCraft
-
Layer elevations
The top and bottom elevation and the thickness of each layer of a boring.
top = z − from; bottom = z − to; thickness = to − from
Boring logs and the soil profile between borings geotech.js64-bit- CivilCraft
-
SPT blow count corrections
N60 and (N1)60 from a field blow count.
N60 = N × ER ÷ 60 × CB × CS × CR; CN = min(1.7, √(101.325 ÷ σ′v)); (N1)60 = CN × N60
Boring logs and the soil profile between borings geotech.js64-bit- CivilCraft
-
Boring projected onto the section line
The station along the section and the offset from it of a boring.
t = ((p − a)·(b − a)) ÷ |b − a|², clamped to 0…1; station = length so far + t·|b − a|
Boring logs and the soil profile between borings geotech.js64-bit- CivilCraft
-
Soil profile between borings
The polygon of each soil unit between neighboring borings, the ground line and the water line.
pinch-out point = ((s₁ + s₂) ÷ 2, (top + bottom) ÷ 2)
Boring logs and the soil profile between borings geotech.js64-bit- CivilCraft
-
Layer stack at a station
The top and bottom of every soil unit at one station of the profile.
z = z_a + (s − s_a) ÷ (s_c − s_a) × (z_c − z_a)
Boring logs and the soil profile between borings geotech.js64-bit- CivilCraft
-
Unit weight of water
The constant behind every pore pressure and every submerged unit weight in this file.
γw = 9.81 kN/m³
Slope stability geotech.js64-bit- CivilCraft
-
Elevation of a line at a position
The ground, a layer top or the water table at a horizontal position.
Slope stability geotech.js64-bit- CivilCraft
-
Where a circle meets the ground
The positions where the lower arc of a trial circle crosses the ground line.
f(x) = ground(x) − (zc − √(R² − (x − xc)²))
Slope stability geotech.js64-bit- CivilCraft
-
Slices of the sliding mass
Each slice's width, weight, base angle, strength and pore pressure.
W = Σ layers γ × thickness × b; sin α = −(x − xc) ÷ R; u = γw × (zw − zb), or ru × W ÷ b
Slope stability geotech.js64-bit- CivilCraft
-
Factor of safety
The factor of safety of one circle by the ordinary method or by Bishop's simplified method.
Bishop: FS = Σ[(c·b + (W − u·b)·tan φ) ÷ (cos α + sin α·tan φ ÷ FS)] ÷ Σ W·sin α
Slope stability geotech.js64-bit- CivilCraft
-
Critical circle search
The circle with the lowest factor of safety among those tried.
Slope stability geotech.js64-bit- CivilCraft
-
Stress influence factor under a corner
The share of the surface load felt at a depth under the corner of a loaded rectangle.
m = a ÷ z, n = b ÷ z, v = m² + n² + 1; I = [2mn√v ÷ (v + m²n²) × (v + 1) ÷ v + atan2(2mn√v, v − m²n²)] ÷ 4π
Foundation settlement geotech.js64-bit- CivilCraft
-
Stress under a footing
The vertical stress increase under the center or a corner of a rectangular footing.
center: Δσ = 4·q·I(B ÷ 2, L ÷ 2, z); corner: Δσ = q·I(B, L, z)
Foundation settlement geotech.js64-bit- CivilCraft
-
Stress by the 2:1 spread
The average stress increase at a depth by the quick 2:1 rule.
Δσ = q·B·L ÷ ((B + z)·(L + z))
Foundation settlement geotech.js64-bit- CivilCraft
A calculation is added only after its source was read. Each statement can be checked in the code shown on its policy's page; the app repositories are public. When a release changes a calculation, its page says so until it has been read again.