Equations → calculation → independent comparison → bounded conclusion.

This is a public, reproducible proof notebook—not a model's assertion that a heat exchanger is safe. All inputs are synthetic. No employer information, private RAG, local-machine controls, or blocked HX qualification cases are published here.

Open this problem in Aero's guided chat + LaTeX workspace →

Pressure-only bore hoop stress21.048 MPaClosed-end Lamé solution
Thermal-only free expansion1.280 mm80 K uniform temperature rise
Thermal-only axial restraint−243.2 MPaCompression, not a safety disposition

One exchanger tube. Three different questions.

A straight tube stands in for one member of a tube-bundle heat exchanger. First ask what pressure does to it. Then ask how it expands when heated. Finally ask what happens if the tube sheets prevent that axial expansion. These are separate verification cases, not a combined pressure-and-temperature design analysis.

Idealized heat exchanger tube and separate axial thermal restraintsSchematic, not a CAD model or computed field. A 1 metre straight tube has a 10 millimetre bore radius and 1 millimetre wall. Thermal cases compare a sliding end with axial restraint at both ends.Synthetic tube · schematic, not a solver fieldPressure-only: 2 MPa gauge insideL = 1 mThermal-only:free end → 1.280 mmaxially fixed → compressionNo tube-sheet contact, welds, plasticity, buckling, fatigue, or mapped CFD temperature.
InputAssumed valueMeaning
Inner / outer radius10 / 11 mmUniform circular wall
Length1 mPressure reference away from end effects
Pressure2 MPa inside; 0 outsideGauge pressures; pressure case only
E / ν190 GPa / 0.30Assumed constant isotropic elasticity
α / ΔT16 × 10⁻⁶ K⁻¹ / 80 KUniform thermal-only cases

No actual alloy strength, temperature-dependent properties, fatigue limit, or allowable stress has been supplied. Consequently hardware safety is NOT_ESTABLISHED, even when the equation checks pass.

1. Pressure proof: equilibrium before a contour plot.

Tension is positive. A long, rotationally symmetric elastic cylinder must satisfy radial equilibrium. The Lamé solution simultaneously satisfies that equation and the inner/outer pressure tractions.

Compatibility: radial displacement defines strain; isotropic elasticity and equilibrium fix its shape

ϵr=ur′,ϵθ=urr,ϵz=const,ur′′+ur′r−urr2=0⇒ur=C1r+C2r\epsilon_r=u_r',\quad \epsilon_\theta=\frac{u_r}{r},\quad \epsilon_z=\mathrm{const},\qquad u_r''+\frac{u_r'}{r}-\frac{u_r}{r^2}=0\Rightarrow u_r=C_1r+\frac{C_2}{r}
View LaTeX source
\epsilon_r=u_r',\quad \epsilon_\theta=\frac{u_r}{r},\quad \epsilon_z=\mathrm{const},\qquad u_r''+\frac{u_r'}{r}-\frac{u_r}{r^2}=0\Rightarrow u_r=C_1r+\frac{C_2}{r}

Radial equilibrium and Lamé stress field

dσrdr+σr−σθr=0,σr=A−Br2,σθ=A+Br2\frac{d\sigma_r}{dr}+\frac{\sigma_r-\sigma_\theta}{r}=0,\qquad \sigma_r=A-\frac{B}{r^2},\quad\sigma_\theta=A+\frac{B}{r^2}
View LaTeX source
\frac{d\sigma_r}{dr}+\frac{\sigma_r-\sigma_\theta}{r}=0,\qquad \sigma_r=A-\frac{B}{r^2},\quad\sigma_\theta=A+\frac{B}{r^2}

Constants from the two pressure boundary conditions

A=pia2−pob2b2−a2,B=a2b2(pi−po)b2−a2A=\frac{p_i a^2-p_o b^2}{b^2-a^2},\qquad B=\frac{a^2b^2(p_i-p_o)}{b^2-a^2}
View LaTeX source
A=\frac{p_i a^2-p_o b^2}{b^2-a^2},\qquad B=\frac{a^2b^2(p_i-p_o)}{b^2-a^2}

The check is explicit: differentiation gives 2B/r³; the hoop-minus-radial term supplies −2B/r³. Their sum is zero. At r = a, radial stress is −pᵢ; at r = b, it is −pₒ. The script tests both tractions rather than accepting a plausible-looking stress contour.

Closed-end force balance—not open ends, and not plane strain

σzπ(b2−a2)=π(pia2−pob2),σz=A\sigma_z\pi(b^2-a^2)=\pi(p_i a^2-p_o b^2),\qquad \sigma_z=A
View LaTeX source
\sigma_z\pi(b^2-a^2)=\pi(p_i a^2-p_o b^2),\qquad \sigma_z=A

Radial displacement from isotropic Hooke's law

ur(r)=(1−2ν)Ar+(1+ν)B/rE,ϵz=(1−2ν)AEu_r(r)=\frac{(1-2\nu)Ar+(1+\nu)B/r}{E},\qquad \epsilon_z=\frac{(1-2\nu)A}{E}
View LaTeX source
u_r(r)=\frac{(1-2\nu)Ar+(1+\nu)B/r}{E},\qquad \epsilon_z=\frac{(1-2\nu)A}{E}
Calculated referenceValue
Bore radial stress-2.000 MPa
Bore hoop stress21.047619 MPa
Closed-end axial stress9.523810 MPa
Bore von Mises stress19.959824 MPa
Outer radial displacement0.937343 μm

The thin-wall estimate pᵢa/t gives 20 MPa, versus 21.048 MPa at the bore in the thick-wall calculation. Geometry determines whether that approximation is adequate. These stresses are not applicable at ports, tube-sheet joints, welds, or end-cap transitions.

2. Thermal proof: the boundary condition is the physics.

For the thermal-only axial model, the transverse surfaces are traction-free. Axial elastic strain is total axial strain minus thermal strain. A sliding end and two axially fixed ends solve different engineering problems.

Axial thermoelastic constitutive equation

σz=E(dudx−αΔT)\sigma_z=E\left(\frac{du}{dx}-\alpha\Delta T\right)
View LaTeX source
\sigma_z=E\left(\frac{du}{dx}-\alpha\Delta T\right)

Case A: one datum, other end free; uniform heating creates no axial stress

σz=0⇒u(L)=αΔTL=1.280 mm\sigma_z=0\quad\Rightarrow\quad u(L)=\alpha\Delta T L=1.280\ \mathrm{mm}
View LaTeX source
\sigma_z=0\quad\Rightarrow\quad u(L)=\alpha\Delta T L=1.280\ \mathrm{mm}

Case B: both ends axially fixed; transverse contraction remains free

u(0)=u(L)=0⇒σz=−EαΔT=−243.200 MPau(0)=u(L)=0\quad\Rightarrow\quad \sigma_z=-E\alpha\Delta T=-243.200\ \mathrm{MPa}
View LaTeX source
u(0)=u(L)=0\quad\Rightarrow\quad \sigma_z=-E\alpha\Delta T=-243.200\ \mathrm{MPa}

Reaction force independently closes the constrained bar

S=π(b2−a2),∣R∣=SEαΔT=16.045 kNS=\pi(b^2-a^2),\qquad |R|=S E\alpha\Delta T=16.045\ \mathrm{kN}
View LaTeX source
S=\pi(b^2-a^2),\qquad |R|=S E\alpha\Delta T=16.045\ \mathrm{kN}

Negative stress means compression. It does not mean the real tube can sustain it: yielding, buckling, support compliance, gradients, and tube-sheet behavior are omitted. Nor is −EαΔT the formula for fully triaxial restraint. As COMSOL's constraint example explains, adding restraints can produce a converged but physically irrelevant result.

3. Actual small FE calculations, compared with the derivations.

The downloadable Python implementation assembles and solves stiffness matrices. This is an educational radial FE / axial-bar calculation, not an ANSYS or CalculiX run. It does not replace Aero's existing conventional-solver qualification infrastructure.

Radial FE: displacement interpolation plus a constant axial-strain degree of freedom

K=∑e∫eBTDB 2πrL dr,Kq=f\mathbf K=\sum_e\int_e\mathbf B^T\mathbf D\mathbf B\,2\pi rL\,dr,\qquad\mathbf K\mathbf q=\mathbf f
View LaTeX source
\mathbf K=\sum_e\int_e\mathbf B^T\mathbf D\mathbf B\,2\pi rL\,dr,\qquad\mathbf K\mathbf q=\mathbf f

The pressure model uses the full isotropic radial/hoop/axial constitutive matrix, three-point Gauss integration, and the closed-end pressure force. Linear radial elements are refined through five meshes. Stress error is evaluated at quadrature points against the independent analytical field—not against the next mesh alone.

Actual pressure finite-element stress error decreases as radial meshes refine from 4 to 64 elements.
Radial elementsOuter displacement errorStress relative L₂ errorEquilibrium residual
40.012724%1.3332%1.26e-13
80.003182%0.6668%2.52e-13
160.000796%0.3334%1.81e-12
320.000199%0.1667%2.52e-12
640.000050%0.0834%7.87e-12

Thermal bar: element stiffness and equivalent thermal load

ke=ESℓ[1−1−11],fth,e=ESαΔT[−11]\mathbf k_e=\frac{ES}{\ell}\begin{bmatrix}1&-1\\-1&1\end{bmatrix},\qquad\mathbf f_{th,e}=ES\alpha\Delta T\begin{bmatrix}-1\\1\end{bmatrix}
View LaTeX source
\mathbf k_e=\frac{ES}{\ell}\begin{bmatrix}1&-1\\-1&1\end{bmatrix},\qquad\mathbf f_{th,e}=ES\alpha\Delta T\begin{bmatrix}-1\\1\end{bmatrix}

Both thermal cases were solved with 2, 4, 8, and 16 elements. The linear free-expansion field and zero-displacement restrained field are represented exactly by these elements; stresses and reactions agree to floating-point precision. That exactness is specific to this simple problem, not proof that a real exchanger is mesh-independent.

9 executable tests passed · 0 failures · 0 errors

Boundary tractions, end-force balance, differential equilibrium, zero-load limit, pressure refinement, free expansion, fixed-end reactions, units/known values, and rejection of invalid geometry. Finest pressure stress error: 0.0834%. Physical validation and hardware qualification remain NOT_ESTABLISHED.

Try the first-principles equations.

Change synthetic inputs locally in your browser. This recalculates the closed-form equations only; it does not run FEA or change the frozen verification record above. No prompt, geometry, or input is sent to a server.

Bore hoop stress: 21.048 MPa · free extension: 1.280 mm · axial restrained stress: −243.200 MPa · reaction magnitude: 16.045 kN.

ν = 0.30; outside gauge pressure = 0; uniform constant properties. No allowable stress, buckling check, material certification, combined-load model, or engineering PASS is inferred from these numbers.

What would make this an exchanger FEA qualification?

  1. Freeze the real question, geometry, material data, pressure loads, temperatures, restraints, outputs, and acceptance criteria before solving.
  2. Use the relevant conventional solver. Retain native fields, mesh, element formulation, reactions, warnings, and input decks.
  3. Check pressure and reaction equilibrium, thermoelastic assumptions, mesh sensitivity, and relevant local stresses away from artificial singularities.
  4. Investigate tube-sheet contact, joints, thermal gradients, yielding, buckling, fatigue, and mapped-fluid loads where physically applicable.
  5. Separate numerical verification, physical validation, code compliance, and the engineer's release authority. Never promote an LLM explanation into observed solver evidence.

Existing retained conventional examples remain available in Aero's pressure-tube case, free thermal case, and restrained thermal case. They have their own inputs and dispositions; these new numbers do not rescore them.

The local LaTeX / 3090 verification: what actually worked?

October 12 checkObserved state
Separate desktop 14B inferenceExecuted on RTX 3090; 10.204 s wall time; 9,065,348,463 bytes reported model VRAM residency
Engineering arithmetic in that model responseFAIL: returned 5,500 N instead of 5,100 N; Isp also incorrect
Private LaTeX Studio assistant routingConfigured for GX10, not proven page-to-3090 inference
Private page compilationFAIL: service compiler discovery; old PDF remained
Independent existing compilerSuccessfully compiled the prior eight-page notebook outside the page

This new public page is a static proof-and-calculation notebook, not a public GPU endpoint or a repair of the private LaTeX app. Its math rendering and deterministic examples need no GPU. The failed model calculation is why numerical checks—not model confidence—provide the evidence here. Read the sanitized runtime receipt.

Equations and proof you can keep.

Reproduce with Python 3 and NumPy: download verify.py and inputs.json into the same folder, then run python verify.py. The public record pins NumPy 2.3.5, input and implementation hashes. The PDF retains the derivations and scope limitations.

Primary-source context

Notebook Rev 1.0 · October 12, 2026. This is a new public educational artifact, not a new Aero software release, training result, or revision of historical qualification evidence.