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

  • Coordinate rounding

    A coordinate or label value rounded for the drawing.

    f(v) = +v.toFixed(3); 0 when v is not finite

    Process diagram entities process/draw.js
    • CadCraft
    • BimCraft
    64-bit
  • Stream label

    The text under a stream arrow: its name, temperature in degrees Celsius and pressure in bar.

    T (°C) = T − 273.15; P (bar) = P ÷ 1e5; both to 3 decimals

    Process diagram entities process/draw.js
    • CadCraft
    • BimCraft
    64-bit
  • Point inside a node boundary

    Whether a tag or line label lies inside a hazard study node's region.

    count the sides whose ends straddle the point's height and cross to its right; inside when the count is odd

    Process diagram entities process/draw.js
    • CadCraft
    • BimCraft
    64-bit
  • Controller faceplate numbers

    The set point, measurement, output and error a controller faceplate shows from a simulation.

    error = set point − last measurement

    Process diagram entities process/draw.js
    • CadCraft
    • BimCraft
    64-bit
  • Bar-screen head loss

    The head lost through a bar screen.

    h = β × (w ÷ b)^(4/3) × v² ÷ 2g × sin θ

    Water treatment unit processes and sludge sizing process/env/water.js
    • CadCraft
    • BimCraft
    64-bit
  • Ideal settling basin

    The overflow rate and the fraction of particles removed.

    v₀ = Q ÷ A; removal = min(1, vs ÷ v₀)

    Water treatment unit processes and sludge sizing process/env/water.js
    • CadCraft
    • BimCraft
    64-bit
  • Granular filter head loss

    The head lost through a clean filter bed in laminar flow.

    h = 180 × L × ν × (1 − ε)² × v ÷ (g × ε³ × d²)

    Water treatment unit processes and sludge sizing process/env/water.js
    • CadCraft
    • BimCraft
    64-bit
  • Disinfection survival

    The fraction of organisms surviving a contact time, and the log removal.

    s = exp(−k × Cⁿ × t); log removal = −log₁₀(s)

    Water treatment unit processes and sludge sizing process/env/water.js
    • CadCraft
    • BimCraft
    64-bit
  • Contact time for a log removal

    The contact time needed to reach a wanted log removal.

    t = log₁₀ removal × ln 10 ÷ (k × Cⁿ)

    Water treatment unit processes and sludge sizing process/env/water.js
    • CadCraft
    • BimCraft
    64-bit
  • Sludge retention time

    The mass of sludge in the system divided by the mass leaving per day.

    SRT = V × X ÷ (Qw × Xw + Qe × Xe)

    Water treatment unit processes and sludge sizing process/env/water.js
    • CadCraft
    • BimCraft
    64-bit
  • Tank footprints for the site plan

    The plan area and the side of a square footprint for each tank.

    area = V ÷ depth; side = √area

    Water treatment unit processes and sludge sizing process/env/water.js
    • CadCraft
    • BimCraft
    64-bit
  • Complete-mix tank sizing

    Sludge production, tank volume, retention time, food-to-mass ratio and oxygen demand.

    Px = Y × Q × (S₀ − S) ÷ (1 + kd × θc); V = θc × Px ÷ X; O₂ = Q × (S₀ − S) − 1.42 × Px

    Water treatment unit processes and sludge sizing process/env/design.js
    • CadCraft
    • BimCraft
    64-bit
  • Return sludge ratio

    The return flow as a fraction of the plant flow.

    Qr ÷ Q = (X − Xe) ÷ (Xr − X)

    Water treatment unit processes and sludge sizing process/env/design.js
    • CadCraft
    • BimCraft
    64-bit
  • Clarifier loadings

    Surface overflow rate and solids loading of a clarifier.

    overflow = Q ÷ A; solids = (Q + Qr) × X ÷ 1000 ÷ A ÷ 24

    Water treatment unit processes and sludge sizing process/env/design.js
    • CadCraft
    • BimCraft
    64-bit
  • Reading to SI units

    Converts a temperature, pressure, flow or length reading to SI, including gauge pressures.

    K = °C + 273.15; K = (°F − 32) × 5 ÷ 9 + 273.15; Pa = gauge × factor + atmosphere; else value × factor

    Plant readings: units, comparison and trends process/env/historian.js
    • CadCraft
    • BimCraft
    64-bit
  • Marker text

    The value shown next to a tag on the diagram and the 3D model.

    Plant readings: units, comparison and trends process/env/historian.js
    • CadCraft
    • BimCraft
    64-bit
  • Plant against model

    How far each plant reading is from the value the model gives.

    deviation = (plant − model) ÷ |model| (÷ 1 when the model value is 0)

    Plant readings: units, comparison and trends process/env/historian.js
    • CadCraft
    • BimCraft
    64-bit
  • Trend thinning

    Reduces a long series to at most a given number of points for plotting, keeping its shape.

    per bucket: keep the sample with the largest triangle area against the previous kept point and the next bucket's mean

    Plant readings: units, comparison and trends process/env/historian.js
    • CadCraft
    • BimCraft
    64-bit
  • Series summary

    Count, minimum, maximum, mean and standard deviation of a series.

    mean = Σ v ÷ n; sd = √(Σ (v − mean)² ÷ n)

    Plant readings: units, comparison and trends process/env/historian.js
    • CadCraft
    • BimCraft
    64-bit
  • Cylindrical shell thickness

    The required thickness of a cylindrical shell under internal pressure.

    t_circ = P·R ÷ (S·E − 0.6P); t_long = P·R ÷ (2S·E + 0.4P); t = larger of the two

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Formed head thickness

    The required thickness of an ellipsoidal, torispherical or hemispherical head.

    ellipsoidal: t = P·D·K ÷ (2S·E − 0.2P), K = (2 + (D ÷ 2h)²) ÷ 6; torispherical: t = P·L·M ÷ (2S·E − 0.2P), M = (3 + √(L ÷ r)) ÷ 4

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Conical section thickness

    The required thickness of a cone.

    t = P·D ÷ (2·cos α × (S·E − 0.6P))

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Maximum allowable working pressure

    The pressure a shell of given thickness may carry.

    P_c = S·E·t ÷ (R + 0.6t); P_l = 2S·E·t ÷ (R − 0.4t); P = smaller of the two

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Hydrostatic test pressure

    The test pressure from the allowable working pressure.

    P_test = 1.3 × MAWP × stress ratio

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • External pressure, elastic formulas

    The critical and allowable external pressure of a plain cylinder.

    long: P = 2E·(t ÷ D)³ ÷ (1 − ν²); short: P = 2.42E·(t ÷ D)^2.5 ÷ ((1 − ν²)^0.75 × (L ÷ D − 0.45·√(t ÷ D))); P_a = P_cr ÷ 4

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Limits of reinforcement

    How far along and normal to the wall material counts as reinforcement of an opening.

    along wall = max(d, Rn + tn + t); normal = min(2.5t, 2.5tn + te)

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Opening reinforcement areas

    The area an opening removes and the areas available to replace it.

    A = d·tr + 2tn·tr·(1 − fr₁); available = A₁ + A₂ + A₄₁ + A₅; margin = available ÷ A − 1

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Saddle bending stresses

    Longitudinal bending moments and stresses of a horizontal vessel on two saddles.

    M₁ = Q·a·(1 − (1 − a ÷ L + (R² − H²) ÷ 2aL) ÷ (1 + 4H ÷ 3L)); σ = M ÷ (π·R²·t)

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Wind velocity pressure

    The wind pressure on a vessel from the wind speed.

    q = 0.613 × Kz × Kzt × Kd × V² × I

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Wind force and overturning moment

    The wind force on a vertical vessel and its moment at the base.

    F = q × 10⁻⁶ × Cf × D × H; M = F × H ÷ 2

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Seismic base shear and moment

    A first estimate of the seismic shear and overturning moment.

    V = Cs × W; M = Cs × W × 2H ÷ 3

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Skirt stresses

    Compressive and tensile stress at the base of a skirt from weight and overturning.

    A = π·D·t; Z = π·D²·t ÷ 4; σ = M ÷ Z ± W ÷ A

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Flat head thickness

    The required thickness of a circular flat head or cover.

    t = d × √(C·P ÷ (S·E))

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Minimum design metal temperature

    The stress ratio and the temperature reduction read from points a person types.

    ratio = tr·E ÷ (tn − c); MDMT = base − ΔT(ratio)

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Data sheet values

    The rows and text of the vessel data sheet.

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • Equipment parameters for the plant model

    The diameter, length and support height handed to the plant equipment.

    Pressure vessel thickness and support formulas process/equip/vessel.js
    • CadCraft
    • BimCraft
    64-bit
  • External pressure from chart factors

    The allowable external pressure of a cylinder from the chart factor A and the material curve a person types.

    chart: P_a = 4B ÷ (3·D_o ÷ t); elastic: P_a = 2A·E ÷ (3·D_o ÷ t)

    Pressure vessel thickness and support formulas process/equip/vessel2.js
    • CadCraft
    • BimCraft
    64-bit
  • Stiffening ring inertia

    The moment of inertia a stiffening ring must have.

    I_s = D_o² × L_s × (t + A_s ÷ L_s) × A ÷ 14

    Pressure vessel thickness and support formulas process/equip/vessel2.js
    • CadCraft
    • BimCraft
    64-bit
  • Table values in millimeters

    Converts each published row to millimeters, mm² and kg/m.

    mm = in × 25.4; mm² = in² × 25.4 × 25.4; kg/m = lb/ft × 1.48816394; r = (k_des − t_f) × 25.4

    Steel section dimensions, areas and outlines shapes/sections.js
    • CadCraft
    • BimCraft
    • DetailCraft
    • PartCraft
    64-bit
  • Exact section area

    The cross-section area worked out from the dimensions, with fillets and rounded corners included.

    I: 2·b_f·t_f + (d − 2t_f)·t_w + (4 − π)·r²; RHS: 2t(h + b − 2t) − (4 − π)(r_o² − r_i²); CHS: π(D − t)·t

    Steel section dimensions, areas and outlines shapes/sections.js
    • CadCraft
    • BimCraft
    • DetailCraft
    • PartCraft
    64-bit
  • Section outline

    The outline of a section as loops of points, centered on its bounding box.

    arc point = (cx + r·cos a, cy + r·sin a), a = a₀ + (a₁ − a₀)·i ÷ n

    Steel section dimensions, areas and outlines shapes/sections.js
    • CadCraft
    • BimCraft
    • DetailCraft
    • PartCraft
    64-bit
  • Rounded rectangle loop

    The outer or inner loop of a rectangular hollow section with rounded corners.

    Steel section dimensions, areas and outlines shapes/sections.js
    • CadCraft
    • BimCraft
    • DetailCraft
    • PartCraft
    64-bit
  • Loop area

    The signed area of an outline loop.

    A = ½ × Σ (xᵢ·yᵢ₊₁ − xᵢ₊₁·yᵢ)

    Steel section dimensions, areas and outlines shapes/sections.js
    • CadCraft
    • BimCraft
    • DetailCraft
    • PartCraft
    64-bit
  • Loop perimeter

    The length around an outline loop.

    L = Σ √(Δx² + Δy²)

    Steel section dimensions, areas and outlines shapes/sections.js
    • CadCraft
    • BimCraft
    • DetailCraft
    • PartCraft
    64-bit
  • Part sizes in millimeters

    The table dimensions of each size of a part family, with inch sizes converted.

    mm = in × 25.4; pitch = 25.4 ÷ threads per inch

    Standard parts and library items shapes/parts.js
    • CadCraft
    • PartCraft
    64-bit
  • Hexagon area

    The area of a hexagon from its width across flats.

    A = (√3 ÷ 2) × s²

    Standard parts and library items shapes/parts.js
    • CadCraft
    • PartCraft
    64-bit
  • Mass from volume

    The mass of a part in kilograms from its volume in mm³.

    kg = mm³ × 10⁻⁹ × 7850, rounded to 4 decimals

    Standard parts and library items shapes/parts.js
    • CadCraft
    • PartCraft
    64-bit
  • Inch length as a fraction

    Writes an inch length as a whole number and a fraction for the part's designation.

    n = round(v × 64); reduce n ÷ 64

    Standard parts and library items shapes/parts.js
    • CadCraft
    • PartCraft
    64-bit
  • Part dimensions and mass

    The full set of dimensions, the bounding box and the mass of one part.

    e = 2s ÷ √3; bolt mass = (hex area × k + π ÷ 4 × d² × l) × ρ; gear: d = m·z, d_a = m(z + 2), d_f = m(z − 2.5), d_b = d·cos 20°

    Standard parts and library items shapes/parts.js
    • CadCraft
    • PartCraft
    64-bit
  • Coordinate rounding in library items

    Rounds every coordinate written into a library item's drawing.

    round(v × 1000) ÷ 1000

    Standard parts and library items shapes/items.js
    • CadCraft
    • PartCraft
    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.