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
-
Map conversion moved to another system
The same place on the earth described in a different coordinate system: new origin, rotation and scale.
origin' = T(E, N); p₁ = T(origin + 10 m along the X axis); axis' = (p₁ − origin') ÷ D; scale' = scale × D ÷ step
Placing a model on the map crs-georef.js64-bit- BimCraft
-
Illuminance of the whole sky
The horizontal illuminance of an unobstructed overcast sky, which every component is divided by.
E_h = 7π ÷ 9, in units of the zenith luminance
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Overcast sky integrated in altitude
The light a vertical plane gets from the sky between the horizon and an altitude.
F(θ) = (θ ÷ 2 + sin 2θ ÷ 4) ÷ 3 + (2 ÷ 9)(1 − cos³θ)
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Overcast sky luminance
The sky's brightness at an altitude, relative to the zenith.
L(θ) = (1 + 2 sin θ) ÷ 3
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Hidden altitude intervals joined
Joins the altitude ranges hidden by separate objects into one list.
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
What hides the sky in one direction
The altitudes hidden along one level direction from a window.
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Sky profile of a window
For each direction across the window's front, the altitudes that are hidden.
φᵢ = −90° + step ÷ 2 + i × step, i = 0 … 180 ÷ step − 1
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Weight of an azimuth band
How much a band of directions counts, by how squarely it faces the window.
w = sin(φ + step ÷ 2) − sin(φ − step ÷ 2)
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Vertical sky component
The share of the unobstructed sky's light that reaches the window, in percent.
VSC = 100 × Σ over bands of w × Σ over visible intervals of (F(b) − F(a)) ÷ (7π ÷ 9)
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Share of a uniform sky seen
The share of a uniform sky's light a window still gets, used for diffuse sun gain.
fraction = Σ w × Σ (G(b) − G(a)) ÷ Σ w × G(π ÷ 2), G(θ) = θ ÷ 2 + sin 2θ ÷ 4
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Angle of obstruction
The altitude of the top of whatever hides the horizon square to the window.
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Is a ray hidden
Decides whether a ray from a point through the window meets sky or an obstruction.
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Floor of a room
Picks the floor triangles out of a room's shell.
floor when |n_z| > 0.7 |n| and the triangle's mean height is below the shell's middle
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Is a grid point over the floor
Tests a plan point against one floor triangle.
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Grid of points in a room
The points at working-plane height where the daylight factor is worked out.
spacing = max(0.25, ceil(√(area ÷ max) × 20) ÷ 20) m; points at lo + s ÷ 2, then every s
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Window opening as a rectangle
The rectangle that stands for a window's opening.
k = √(area ÷ (width × height)); half sizes = k × width ÷ 2 and k × height ÷ 2
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Sky and externally reflected components at a point
The light a point gets through one window straight from the sky and from obstructions, in percent.
SC = 100 ÷ E_h × Σ over patches of L(θ) sin θ × dA cos ω ÷ r²
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
C factor by angle of obstruction
The coefficient C of the internally reflected component.
straight lines between table rows at 0°, 10° … 80°
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Internally reflected component
The light a room gets by reflection from its own surfaces, in percent.
IRC = T W ÷ (A (1 − R)) × (C R_fw + 5 R_cw) × M
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Daylight factor on the grid
The daylight factor at every grid point of a room and its mean, median, minimum, maximum and uniformity.
DF = (SC + ERC) × T × glazed share × M + IRC; uniformity = min ÷ mean
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Solar constant
The sun's irradiance outside the atmosphere at the mean earth–sun distance.
G_sc = 1367 W/m²
Sun gain through windows daylight-bim-sky.js64-bit- BimCraft
-
Clear-sky irradiance
Beam and diffuse irradiance under a clear sky for a day of the year and a sun height.
τ_b = a₀ + a₁ e^(−k ÷ cos θz); G_on = 1367 (1 + 0.033 cos(2π n ÷ 365)); τ_d = 0.271 − 0.294 τ_b
Sun gain through windows daylight-bim-sky.js64-bit- BimCraft
-
Climate factors for the date
Picks the row of climate factors that fits the latitude and the month.
Sun gain through windows daylight-bim-sky.js64-bit- BimCraft
-
Sun gain through one day
The gain through each window at every time step, each room's peak and when it falls, and the day's energy.
gain = g × A × (G_bn cos i unless shaded + G_dh × 0.5 × sky fraction + (G_bh + G_dh) × ρ × 0.5); kWh = Σ gain × step ÷ 1000
Sun gain through windows daylight-bim-sky.js64-bit- BimCraft
-
Total blocked angle
The total of the angle intervals that obstructions hide, with overlaps counted once.
total = Σ (hiᵢ − loᵢ) over the merged intervals, each clipped to 0°…90°
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Sky angle in one section
The angle of sky, from the horizon to straight up, that is still visible from a point on the window's outer face.
cut point = a + t · (b − a), t = d_a ÷ (d_a − d_b); angle = atan2(v, u); θ = 90° − blocked total
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Mean reflectance of the room
The area-weighted mean reflectance of floor, walls, ceiling and glass.
R = (A_floor·ρ_floor + A_wall·ρ_wall + A_ceiling·ρ_ceiling + A_glass·0.1) ÷ (A_floor + A_wall + A_ceiling + A_glass)
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Average daylight factor
The room's average daylight factor in percent.
ADF = Σ (T × A_g × θ × M) ÷ (A × (1 − R²))
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Triangle area and tilt
The area of one triangle of a room's shell and how far its normal points up or down.
area = |AB × AC| ÷ 2; nz = (AB × AC)_z ÷ |AB × AC|
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Closest point of a triangle
The point of a triangle nearest to a given point, used to find which room a window belongs to.
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Direction a window faces
The level direction across which a window's triangles are thinnest.
width(α) = max(x·cos α + y·sin α) − min(x·cos α + y·sin α); the α with the least width
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Floor, wall and ceiling areas of a room
The inside surface areas of a room from the triangles of its space.
A = A_floor + A_wall + A_ceiling
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Window area
The area of one window and the point on its outer face that the sky angle is measured from.
area = OverallWidth × k × OverallHeight × k, k = file length unit in mm ÷ 1000
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Sky angle of a window
The window's sky angle: the mean of five sections across its width.
θ = (θ₁ + θ₂ + θ₃ + θ₄ + θ₅) ÷ 5, at 10, 30, 50, 70 and 90 % of the width
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Result per room
Each room's mean reflectance, glazed areas, daylight factor and guidance band for the inputs given.
A_g = window area × glazed share; band: below 2 % low, below 5 % mid, else high
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
Daylight table as CSV
The rooms' results written as a CSV file.
Average daylight factor of rooms daylight-bim.js64-bit- BimCraft
-
A length as text
Millimeters as feet and inches to 1/16 inch, or as a decimal number in mm, cm, m, inches or feet.
sixteenths = round(|mm| ÷ 25.4 × 16); feet = ⌊sixteenths ÷ 192⌋; inches = ⌊rest ÷ 16⌋
Lengths, areas and volumes as text display-units.js64-bit- BimCraft
-
Unit factors
How many millimeters, square millimeters and cubic millimeters one display unit is.
in = 25.4 mm; ft = 12 × 25.4 mm; cm = 10 mm; m = 1000 mm
Lengths, areas and volumes as text display-units.js64-bit- BimCraft
-
A coordinate as a number
A coordinate in millimeters as a number in the display unit, with a fixed count of decimals.
value = mm ÷ factor, to 1 (mm), 2 (cm, in) or 3 (m, ft) decimals
Lengths, areas and volumes as text display-units.js64-bit- BimCraft
-
A small length to three figures
A tolerance or a scale per pixel as text with three significant figures.
value = mm ÷ factor, toPrecision(3)
Lengths, areas and volumes as text display-units.js64-bit- BimCraft
-
An area or a volume as text
Square or cubic millimeters as text in the matching square or cubic display unit.
value = v ÷ factor, to the unit's decimals; in² = 25.4² mm²; ft² = (12 × 25.4)² mm²; ft³ = (12 × 25.4)³ mm³
Lengths, areas and volumes as text display-units.js64-bit- BimCraft
-
From meters, square meters and cubic meters
What calculations give in SI, handed to the same formatters.
mm = m × 1000; mm² = m² × 10⁶; mm³ = m³ × 10⁹
Lengths, areas and volumes as text display-units.js64-bit- BimCraft
-
Lengths inside a message
Rewrites plain "N mm" and "N m" inside a message into the display unit.
Lengths, areas and volumes as text display-units.js64-bit- BimCraft
-
Quantities inside a sentence
Rewrites lengths, areas and volumes inside a calculation's sentence into the display unit.
Lengths, areas and volumes as text display-units.js64-bit- BimCraft
-
A paper size as text
A sheet's width and height in the display unit.
value = mm ÷ factor, to 1 (mm, cm), 2 (in) or 3 (m, ft) decimals
Lengths, areas and volumes as text display-units.js64-bit- BimCraft
-
Area of a region
The signed area of a closed outline, used to refuse a hatch with no area.
area = ½ Σ (xᵢ·yᵢ₊₁ − xᵢ₊₁·yᵢ)
Drafting lines and hatch regions drafting.js64-bit- BimCraft
-
Points taken from a drawing gesture
The points of a new line or region, without repeats.
Drafting lines and hatch regions drafting.js64-bit- BimCraft
-
Points read from the file
A drafting item's points in millimeters, from the IFC polyline that stores them.
mm = stored coordinate × file length unit in mm
Drafting lines and hatch regions drafting.js64-bit- BimCraft
-
Hatch spacing and angle written to the file
The IFC fill style of a pattern: one hatching per line family with its spacing and angle.
spacing = gap × scale in file units; angle = degrees × π ÷ 180 (× 180 ÷ π when the file's angles are degrees)
Drafting lines and hatch regions drafting.js64-bit- BimCraft
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.