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.

  • 6,917 calculations in 1,248 source files
  • 143 exact
  • 6,286 in 64-bit
  • 335 with a 32-bit step
  • Last reviewed

Calculations

  • Weight and center of gravity of a pick

    The weight of an assembly and the point its weight acts at.

    W = Σ w_i; cg = Σ w_i·(a_i + b_i) ÷ 2 ÷ W

    Erection plan: picks, crane loads and times erection.js
    • DetailCraft
    64-bit
  • Storey a pick belongs to

    Which storey a pick is erected with, for the order of the sequence.

    Erection plan: picks, crane loads and times erection.js
    • DetailCraft
    64-bit
  • Load, radius and share of the chart

    The load on the hook, the working radius, the chart capacity there and the share of it used.

    load = W·(1 + rigging% ÷ 100) + deduction; radius = max(r_pick, r_set); share = load ÷ capacity

    Erection plan: picks, crane loads and times erection.js
    • DetailCraft
    64-bit
  • Time of a pick

    How long a pick takes and when it starts and ends.

    travel = (plan distance + top height) ÷ 1000; minutes = hook + travel ÷ speed + set + release; start = max(crane free, supports done)

    Erection plan: picks, crane loads and times erection.js
    • DetailCraft
    64-bit
  • Status of a pick

    Whether a pick is fine, over the chart, above the chosen limit, out of reach or too high for the hook.

    over when share > 1; high when share > limit

    Erection plan: picks, crane loads and times erection.js
    • DetailCraft
    64-bit
  • Plan totals

    The total weight, the total time, the heaviest pick and the pick that uses most of the chart.

    total kg = Σ W; minutes = max end time

    Erection plan: picks, crane loads and times erection.js
    • DetailCraft
    64-bit
  • Figures in the plan's warnings

    The numbers quoted when a pick is over the chart, over the limit or too high.

    Erection plan: picks, crane loads and times erection.js
    • DetailCraft
    64-bit
  • Data handed to the movie

    The picks, boxes and times saved into the erection movie page.

    Erection plan: picks, crane loads and times erection.js
    • DetailCraft
    64-bit
  • Concrete strength from the footing's text

    The concrete strength in MPa read from text such as 4000 psi, 28 MPa or C30/37.

    MPa = psi × 0.00689476

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Support reaction as a footing load

    Turns an analysis support reaction into the load on the footing in the footing's own axes.

    P = F_z ÷ 1000; (V_x, V_y) = rot(−F) ÷ 1000; (M_x, M_y) = rot(−M) ÷ 10⁶

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Effective depths

    The depth from the top of the footing to the middle of each layer of bottom bars.

    d_X = H − c − d_bX ÷ 2; d_Y = H − c − d_bX − d_bY ÷ 2

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Service load and its eccentricity

    The total vertical load on the soil and where it acts.

    W = γ_c·A·h + γ_s·A·fill; N = ΣP + W; e_x = (ΣP·x + ΣM_y + h·ΣV_x) ÷ N

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Pressure under a rigid rectangle

    The plane of soil pressure under the footing, with part of the base lifting off when the load is outside the kern.

    q = a + b·x + c·y; inside the kern: a = N ÷ A, b = 12·N·e_x ÷ (A·L²), c = 12·N·e_y ÷ (A·B²)

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Three equations in three unknowns

    Solves the Newton step for the pressure plane.

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Soil force and moment beyond a cut

    The upward soil force on the part of the base beyond a cut, and its moment about the cut.

    V = Σ q·dw·ds; M = Σ q·dw·ds·(t − cut)

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Demand over capacity

    The ratio each check reports and whether it passes.

    ratio = demand ÷ capacity; ok when ratio ≤ 1 + 1e-9

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Sliding and overturning

    The safety factors against sliding on the base and against overturning.

    H = √(V_x² + V_y²); sliding: fs·H ≤ μ·N; overturning: FS = 1 ÷ max(|e_x| ÷ (L ÷ 2), |e_y| ÷ (B ÷ 2))

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Shear and moment on a cut, and the largest moment

    The shear and moment on a cut across the footing, and the cut with the largest moment.

    V = V_soil − ΣP; M = M_soil − Σ(P·arm + M_col + h·V_col)

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Bending steel

    The steel provided per meter, the steel bending needs and the minimum steel.

    M_u per m = |M| ÷ (b ÷ 1000) × 10⁶; A_s provided = A_bar × 1000 ÷ s; A_s,min = ρ_min × 1000 × H

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • One-way shear

    The largest shear at a distance d from each column face against the concrete's shear strength.

    V_u = max |V| at face ± d; capacity = 0.75 × V_c

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Bar development length

    The straight length a bar needs beyond the column face to develop its strength.

    l_d = max(300, f_y ÷ (k·λ·√f′c) × d_b); k = 2.1, 1.7, 1.4 or 1.1

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Hooked bar development length

    The length a hooked bar needs.

    l_dh = max(8·d_b, 150, 0.24·f_y ÷ (λ·√f′c) × d_b)

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Length available for development

    The length of bar from the farthest column face to the end of the footing, less the cover.

    available = side ÷ 2 − (|x_col| + c_col ÷ 2) − cover

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Critical section for punching

    The perimeter at d ÷ 2 from a column, cut off at the footing's edge, with its length, centroid and section properties.

    b_o = Σ l; J = Σ (d·l³ ÷ 12 + l·d³ ÷ 12 along the bending direction) + d·l·arm²

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Punching shear

    The shear stress on the critical section against the concrete's punching strength.

    v_u = V_u ÷ (b_o·d) + γ_v·M·c ÷ J (both directions); v_c = min(0.33, 0.17·(1 + 2 ÷ β), 0.083·(2 + α_s·d ÷ b_o))·λ_s·λ·√f′c

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Share of the base in contact

    The share of the base still pressing on the soil when part has lifted off.

    share = cells with q > 0 ÷ 1600

    Footing design checks foundation.js
    • DetailCraft
    64-bit
  • Settlement at the corner of a loaded rectangle

    The settlement under the corner of a flexible rectangle carrying a uniform pressure on an elastic half-space.

    w = q·b·(1 − ν²) ÷ (π·E) × (m·ln((1 + √(m² + 1)) ÷ m) + ln(m + √(m² + 1))); m = long side ÷ short side

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • Settlement at the center and corner of a footing

    The elastic settlement at the middle and at a corner of the footing.

    center = 4 × corner of the quarter rectangle

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • Mat mesh size and concrete stiffness

    The element size of the plate mesh and the concrete's modulus.

    size = max(min(clamp(min(L, B) ÷ 14, 150, 600), max(100, smallest column ÷ 3)), √(L·B ÷ 8000)); E_c = 4700·√f′c

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • Soil springs under the nodes

    The spring stiffness under each node from the subgrade modulus and the area the node carries.

    A = |d₁ × d₂| ÷ 2 (the two diagonals); k_node = k_s × 10⁻⁶ × Σ A ÷ 4

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • A column load spread over its footprint

    The force on each node inside a column's footprint.

    R_i = P ÷ n + M_y·dx_i ÷ Σdx² − M_x·dy_i ÷ Σdy²

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • Mat settlement and contact pressure

    The largest and smallest settlement of the mat and the largest spring pressure.

    q = k_s × w ÷ 1000; reaction = Σ k_node × w ÷ 1000

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • Mat bending moments and shear

    The largest sagging and hogging moments per meter each way and the largest transverse shear.

    M = max and min of the node moments ÷ 1000; V = max √(q_x² + q_y²) away from the columns

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • Hogging capacity of plain concrete

    The hogging moment a mat with no top bars can take.

    capacity = 0.60 × 0.42·λ·√f′c × (H² ÷ 6) × 1000 ÷ 10⁶

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • Spring pressure at a point

    The soil pressure at any point of the mat from the settlements of the nodes round it.

    q = k_s ÷ 1000 × bilinear blend of the four corner settlements

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • Pile group reactions

    The load each pile takes under a vertical load and two moments.

    R_i = P ÷ n + M_x·y_i ÷ Σy² + M_y·x_i ÷ Σx²

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • Cantilever retaining wall

    Overturning, sliding and bearing of a cantilever wall with level backfill.

    K_a = tan²(45° − φ ÷ 2); P_a = ½·K_a·γ·H_t²; e = B ÷ 2 − (M_r − M_o) ÷ W

    Settlement, flexible mats, pile groups and retaining walls foundation.js
    • DetailCraft
    64-bit
  • A real number in the file

    How every length, coordinate, direction component and weight is written.

    text = toFixed(6), trailing zeros dropped; |v| < 1e-9 → 0

    IFC export ifc.js
    • DetailCraft
    64-bit
  • Storey of an element

    Which storey an element is put in: the highest level at or below its lowest point.

    level z ≤ lowest point + 0.5 mm

    IFC export ifc.js
    • DetailCraft
    64-bit
  • Placement of a part

    The origin and the two axes each part is placed with, relative to its storey.

    location = (p_x, p_y, p_z − level z); Axis = part x; RefDirection = part u

    IFC export ifc.js
    • DetailCraft
    64-bit
  • Profile dimensions

    The section dimensions written for each profile type.

    IFC export ifc.js
    • DetailCraft
    64-bit
  • Mitre cut plane

    The plane that clips a part's extrusion at a mitre end.

    normal = unit(−sg·ku, −sg·kv, sg); point = (0, voff, x0)

    IFC export ifc.js
    • DetailCraft
    64-bit
  • Hole openings

    The position, direction, depth and radius of each hole's opening.

    depth = thickness + 2; start = center − axis·depth ÷ 2; radius = d ÷ 2

    IFC export ifc.js
    • DetailCraft
    64-bit
  • Cope openings

    The box that cuts each cope out of a part.

    center v = voff ± (depth ÷ 2 − cope depth ÷ 2 + 0.5); box = (width + 2) × (cope depth + 1) × (cope length + 1)

    IFC export ifc.js
    • DetailCraft
    64-bit
  • Bolts and anchor rods

    The placement, diameter and length written for each bolt and rod.

    IFC export ifc.js
    • DetailCraft
    64-bit
  • Reinforcing bar center lines

    The center line of each placed bar as lines and true arcs, with the bar's radius.

    point = origin + s·ŝ + t·t̂; arc through start, middle and end; radius = d_b ÷ 2

    IFC export ifc.js
    • DetailCraft
    64-bit
  • Length and weight properties

    The cut length and weight written in each part's property set.

    IFC export ifc.js
    • DetailCraft
    64-bit
  • Length unit to millimeters

    The factor that turns the file's lengths into millimeters.

    toMm = prefix × 1000; converted units: toMm = factor × prefix × 1000

    IFC import ifc-import.js
    • DetailCraft
    64-bit
  • A placement's axes

    The three axes and origin of an IFC axis placement.

    Z = unit(Axis); X = unit(Ref − Z·(Ref·Z)); Y = Z × X

    IFC import ifc-import.js
    • DetailCraft
    64-bit
  • Placements combined

    One placement expressed inside another.

    X′ = A·X, Y′ = A·Y, Z′ = A·Z, O′ = A·O + O_A

    IFC import ifc-import.js
    • DetailCraft
    64-bit

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.