SAMPLE
Piping Toolset — Calculation Report
generated by calc-core · 2026-07-31

Thermal Expansion Table Interpolation Calculator (in/100 ft) — Sample Report

ProjectSample Project — Demonstration Only Job No.SAMPLE-001 Client
CalculationThermal Expansion Table Interpolation Calculator (in/100 ft) Calc byPiping Toolset (calc-core) Checked byUNCHECKED — sample
Date2026-07-31 Rev0 BasisLinear interpolation between two user-entered thermal-expansion table rows (ASME B31.3 Table C-1 / B31.1 App. B style, in/100 ft)

1 · Design inputs

A 120 ft straight run whose design temperature falls exactly between two rows of the expansion table. The engineer reads the bracketing rows for the line's material group: 0.5 in/100 ft at 100 °F and 1.5 in/100 ft at 200 °F. The design temperature is 150 °F.

Lower table temperature T₁100°F
Expansion at T₁0.5in/100 ft
Upper table temperature T₂200°F
Expansion at T₂1.5in/100 ft
Design temperature T150°F
Run length L120ft

2 · Method

Straight-line interpolation between two table points, then a unit conversion to total growth:

e = e1 + ( e2 − e1 ) · ( T − T1 ) / ( T2 − T1 )

ΔL = e · L / 100

where T1 and T2 are the two bracketing temperatures from the table with their tabulated expansions e1 and e2 in in/100 ft, T the design temperature, and L the run length in feet. The division by 100 is the conversion from the table's per-100-feet basis to the actual run — the sole reason the tables are published that way is to keep the numbers to a readable magnitude, and it is a common slip to drop it and end up a hundredfold out.

The interpolation is linear by construction, which is what the codes intend for use between adjacent published rows. Thermal expansion is not truly linear in temperature — the coefficient itself drifts, which is precisely why the tables have many rows rather than one coefficient — but across the interval between two adjacent rows the curvature is small enough that a straight line is the accepted treatment. Interpolating across a wide gap by skipping rows is a different proposition and is where the linear assumption starts to cost accuracy.

The engine requires T2T1 and a positive length, and it does not require the design temperature to lie between the two rows — it will extrapolate. It warns when you do: if T falls outside the interval you entered, the result is a projection beyond the data, and the correct fix is to go back to the table and read the rows that actually bracket your temperature. The warning exists because extrapolation here is nearly always a data-entry error rather than an intentional choice.

3 · Calculation

  1. Position within the bracket: (T − T₁)/(T₂ − T₁) = (150 − 100)/(200 − 100) = 50/100 = 0.5 — the design temperature sits exactly halfway between the two rows.
  2. Span of the table values: e₂ − e₁ = 1.5 − 0.5 = 1.0 in/100 ft across the interval.
  3. Interpolated expansion: e = 0.5 + 1.0 · 0.5 = 1.0 in/100 ft.
  4. Scale to the run: ΔL = e · L / 100 = 1.0 · 120 / 100 = 1.2.
  5. Total free growth of the run: 1.2 in.
  6. Status is COMPUTED — this is a load-input calculation, and there is no pass/fail criterion until the 1.2 in is absorbed by a loop or restrained into a stress.

4 · Results COMPUTED

e — interpolated unit expansion1.0in/100 ft
deltaL — total free growth1.2in

5 · Verification statement

The result values above are locked as fixture expansion-interpolation.json, case “midpoint interpolation, 120 ft run”, tolerance 1e-9, in the calc-core continuous verification gate (see https://pipingtoolset.com/trust/validation.html). Allowable-stress and factor data are user-supplied inputs; citations: ASME B31.3, Process Piping — Appendix C, Table C-1, thermal expansion of piping materials in in/100 ft referenced to 70 °F. Table values are copyrighted code data and are not reproduced here; the user enters two bracketing rows. · ASME B31.1, Power Piping — the equivalent appendix table of thermal expansion data; same treatment, values user-supplied. · ASME B31.3 — ¶319, flexibility analysis requirements, where the resulting displacement is used; and ¶319.4.4, the displacement stress range the restrained case produces. · Linear interpolation between adjacent tabulated rows is the intended treatment for values between published temperatures; the equation implemented here contains no code data.

SAMPLE REPORT — auto-generated from a verification fixture to show the report format. Not a project calculation. ⚠ Engineering-aid tool. Public code equations; allowable-stress and factor data are user-supplied. Results MUST be independently verified and reviewed by a qualified/licensed engineer before any design, fabrication, or operation decision.