Part III
The Method in SWBPIPE
A. The 3D beam model
SWBPIPE solves the problem of Part II by the direct stiffness method. The centerline is divided into elements that meet at nodes. Every node has six degrees of freedom, three movements and three rotations, in the order ux, uy, uz, θx, θy, θz. The stiffness matrix relates twelve end movements to twelve end forces and moments. Assembly combines the element matrices into one system for the line. The solution gives the movements of the nodes.
The classical force method of Part II F solves the same problem by another method. The bend element below uses the same flexibility integrals.
This part separates beam theory from supported software at revision
8212c765ec. Model 0.5.0 is the current format; older model versions are refused for re-authoring.
Pressure-free models omit pressure_contract and publish preview-physics-1 results.
Exact-contract models declare 3.0.0/exact_pressure_v3 and their shear model.
They publish ordinary pressure-1 or eligible captured pressure-source-1 results.
The former pressure v2 contract and its result identities are retired.
Model 0.5.0 also carries explicit load and reference states on the exact route.
A mark headed Today describes current behavior and links to the
status of this edition.
1.Axes.
Each element has its own axes. Local x runs from the first node to the second. Local y comes from the element’s reference direction, with its x component removed. Local z completes a right-handed set. For a round straight pipe, the reference direction selects the reporting axes for forces and moments. It does not change the stiffness.
The direction cosines transform the element stiffness to global axes:
where T repeats the 3 × 3 direction-cosine matrix four times along its diagonal. The inclined member case checks this transformation.
A reference direction must be entered on every pipe, although it does not change a round section’s stiffness.
2.Straight pipe.
A straight element carries axial force, torsion and bending about both local axes. Its section comes from the nominal outside diameter Do and nominal wall t, with Di = Do − 2t:
J is the torsion constant, equal to the polar moment for a circular tube. Stiffness and weight use the nominal wall. Corrosion and other allowances reduce the section used for stress only, as the codes require (Part II K).
For bending in the local x–y plane, with the degrees of freedom ordered vi, θz,i, vj, θz,j, an element of length L has the stiffness
| 12 | 6L | −12 | 6L |
| 6L | 4L2 | −6L | 2L2 |
| −12 | −6L | 12 | −6L |
| 6L | 2L2 | −6L | 4L2 |
Equation (3) is the Euler–Bernoulli bending block. In the x–z plane, movement-rotation terms change sign. A positive θy lowers the z coordinate ahead of it. The axial and torsional terms are EA/L and GJ/L.
Exact-contract straight members select timoshenko_annulus_energy_v1 or euler_bernoulli.
New authoring defaults to Timoshenko, using the energy-matched shear factor of the nominal annulus.
An existing document keeps its selected formulation. Realized arcs and pressure-free members remain Euler–Bernoulli
(Status).
On the exact route, nominal wall supplies stiffness and metal mass. Mill tolerance and corrosion allowance define the reduced stress section and pressure bore; stress rows identify nominal or reduced basis. Pressure-free models retain one wall-minus-mill-tolerance section (Status).
3.Bends.
The curved bend element uses a flexibility formulation, as in the classical methods. With one end fixed, unit-load moments and forces define the flexibility at the other end. The formulation integrates these terms around the arc of radius R. The flexibility factor k multiplies the bending terms (Part II E):
Here, M is the in-plane bending moment. The out-of-plane bending moment is M′. The product mapping applies the same user-entered k in both planes. The element interface can accept separate factors.
The formulation evaluates the integrals in closed form and inverts the 6 × 6 flexibility matrix. Equilibrium transfers the result to a 12 × 12 stiffness matrix between the tangent points. Weight is applied along the arc. The expansion loop records a bending-only reference at k = 1, 5, 10 and 20.
A bend with solver_consumption=curved_bend_macro_element
replaces chord mechanics with a realized curved element.
The element uses declared geometry, material and the user’s finite positive flexibility factor k.
Missing or inconsistent geometry blocks the solve.
The mechanics_geometry_only mode retains chord mechanics.
A bend drawn on screen does not establish its solver mode
(Status).
The program does not derive k from geometry. The v3 contract admits realized bends within the pressure restrictions in B 3. It refuses geometry-only bends with a realization message.
Arc end and station actions do not establish a governing arc stress maximum. The program withholds arc hoop and radial pressure stresses, arc maxima and an incomplete-coverage stress headline. The member-relative check in A 6 replaces the former geometric short-bend demotion rule. A bend too short relative to its neighbors can still trigger a named pivot-screen refusal.
4.Rigid elements, expansion joints and tees.
Rigid elements. In the engineering model, valves, flanges and other stiff components use elements much stiffer than the adjoining pipe. Their weight acts at their center of gravity.
Expansion joints replace the pipe over their length with the joint’s own axial, lateral, angular and torsional stiffness. A joint without tie rods transmits pressure thrust to the adjoining pipe and anchors. The thrust equals pressure times effective area. Tie rods carry the thrust across a tied joint.
Tees join the header and branch at a common node; the branch SIF is applied with the branch section modulus.
Rigid component geometry and weight fields do not establish a rigid solver element or an applied component weight (Status).
The current joint is an objective connector on a v3 document.
It replaces one straight span with an authored symmetric 6 × 6 work matrix, frame, end attachments and installed reference.
Its law uses small movements and rotations and symmetric midpoint kinematics.
Only untied hardware is admitted. The connector declares either an unpressurized law or
constant_effective_area_reference_v1 with explicit effective area, pressure basis and source.
A participating joint is an explicitly listed edge of one equal-bore region between coaxial straight members,
with zero attachment offsets. Joint faces at region terminals or beside realized arcs are refused.
Elastic actions, pressure force and effective axial force are published separately.
Ties, finite rotation, pressure-dependent tangent laws, temperature laws and stops remain unsupported
(Status).
The replaced span supplies no pipe member results, self-weight or eigenloads. An applied load primitive targeting that span is refused, including an explicit zero primitive. A resolved eigenstrain requires an exactly zero intended midpoint and enclosure radius. A stored load excluded from the case does not act.
Both legacy four-rate joints and previously app-authored joints require re-authoring on every route. The program does not convert them. An explicit annotation-only joint is analyzed as pipe and disclosed on a pressure-free result; exact pressure contracts refuse it. A tee still lacks a general flexible branch element (Status).
5.Assembly and solution.
Each element adds its stiffness to the model system, Ku = F. Elimination removes rigidly restrained degrees of freedom. Prescribed movements contribute to the reduced load. For a properly restrained model the reduced K is symmetric and positive definite. The sparse direct method reorders equations by reverse Cuthill–McKee and factors the matrix as LDLT.
A zero, negative or relatively small pivot can indicate an unconstrained mechanism. Numerical admission also requires the applicable integrity checks. A dense solve is available as a check.
No support is ever assumed. A model with no supports, or one missing a material, an orientation or a unit, is not solved, and the message names what is missing.
The current structural path applies numerical integrity and formation gates. A successful factorization alone does not qualify the model or every recovered quantity. Earlier mechanisms could produce rotations of 109 radians or more (Status).
Model 0.5.0 supports explicit rigid boundary translations and rotations on its exact route. It refuses spring base motion and device preload/reference laws (Status). Published scope and desktop output availability remain separate.
6.What comes back.
In beam theory, solved movements give restraint reactions, R = Ku − F. Member recovery gives end actions and section forces at the quarter points and middle. The element stiffness acts on its end movements, less the equivalent loads applied at its nodes.
The current linear recovery uses one intended system, re-formed at 128-bit precision from the authored binary64 inputs. Its residuals, correction solves and member recovery use the same stiffness contributions and load primitives. Every formed load summand must match its independently enumerated source binding.
When prior integrity checks pass and the member bound is available, recovery uses two displacement corrections. Member actions, stress components and support actions are rounded once from that corrected recovery. Displayed nodal movements and rotations retain the original binary64 solution. Reconstructing member actions from those displayed movements can therefore give different values.
The error bound is conditional. It assumes the inverse norm of the prepared scaled matrix is at most 1,024 times its Hager estimate. Hager’s estimate alone is a lower bound, so it does not prove that assumption. The arc re-formation also retains an unproved distance premise of 2−120κtip relative to the real-number element. The bound qualifies recovery against the intended re-formed system; it does not certify the physical model.
The member-relative check judges axial, shear, torsional and bending groups at ends, endpoint cuts and stations. Pipe-wall axial rows are judged separately. The check compares each group’s bound with 10−9 times its published norm. Its floor uses the larger of the published norm and certified upper magnitude. The comparison applies when that magnitude reaches 2−34 of the coupled body scale and the scale reaches 2−988. An excessive or unavailable bound makes the case Sensitive. The former resolution conjunct and geometric short-bend demotion rule no longer apply.
Missing load closure, a failed correction check or missing member-bound inputs prevents a Passed result. After nonlinear iteration converges, a separate confirmation checks the final support state and member recovery. Confirmed cases can publish checked member and support rows. An unestablished state or missing bound keeps Sensitive with a named reason; convergence alone is insufficient. A case demoted before certified recovery keeps its prior action and component-stress rows.
Current arc end actions use the endpoint tangent frame and node-on-element convention on both ordinary routes. Section cuts have their own signed section convention. Historical cases may retain chord-frame end rows; their metadata and source pin govern their interpretation (Status).
Current support results require six signed components and both force and moment magnitudes.
Force and moment families have separate bounds, including their scalar magnitudes.
Ambiguous coincident rigid attribution is withheld.
Historical precision-1 records retain force norms without moments;
they remain readable but are not current or eligible for rules, reports or export
(Status).
Checked by: cantilever, branch assembly, loads to resultants, intermediate points, one linear static path, torsion.