SWBPIPE · The open manual
Part III · The MethodIII–1

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 the supported software routes at revision 462f66975d. The ordinary route publishes preview-physics-1 semantics. Models 0.3.0 and 0.4.0 can select exact_straight_pressure_v2; model 0.4.0 requires that route for load/reference states. Where the program does not yet compute it that way, a mark headed Today says so 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:

Kglobal = TT Klocal T(1)

where T repeats the 3 × 3 direction-cosine matrix four times along its diagonal. The inclined member case checks this transformation.

Today

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:

A = π(Do2 − Di2)/4,   I = π(Do4 − Di4)/64,   J = 2I(2)

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

EI/L3  
126L−126L
6L4L2−6L2L2
−12−6L12−6L
6L2L2−6L4L2
(3)

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.

Today

The element is an Euler–Bernoulli beam, with no shear deformation. A program that includes shear deformation can predict more flexibility for short, heavy legs (Status). A mill tolerance, if entered, is taken off the wall for stiffness and weight as well as stress (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):

fab = R ∫ ( k MaMb/EI + k M′aM′b/EI + TaTb/GJ + NaNb/EA ) dφ(4)

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.

Today

On the ordinary preview-physics-1 route, a bend component can declare solver_consumption=curved_bend_macro_element. The product-physics entrypoint then realizes a curved element. It replaces the straight chord stiffness and uses the declared geometry, material and finite positive user factor k. Missing or inconsistent geometry blocks the solve. The legacy mechanics_geometry_only mode retains chord mechanics. A bend drawn on screen does not establish which mode the model uses (Status).

The program does not derive k from geometry. Model 0.2.0 runtime tests exercise this ordinary curved mode. The exact_straight_pressure_v2 route for models 0.3.0 and 0.4.0 supports straight circular members only. Nonzero legacy pressure is refused. Arc end and station values do not establish a governing arc stress maximum.

The ordinary route withholds the stress headline when a model contains an arc.

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.

Today

Rigid component geometry and weight fields do not establish a rigid solver element or an applied component weight (Status). The ordinary route can replace a pipe span with an explicitly selected joint stiffness element. A nonzero lateral stiffness over a finite span is refused because its moment equilibrium is unqualified (Status).

This refusal contains the joint defect; it does not repair the formulation. Axial, angular and torsional joint stiffness alone are outside that specific refusal. Broad joint, pressure and component composition remain unfinished. 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.

Today

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.4.0 supports explicit rigid boundary translations and rotations on its straight-member route. It refuses spring base motion and device preload/reference laws (Status). Published scope and desktop output availability remain separate.

6.What comes back.

Solved movements give restraint reactions, R = Ku − F. Recovery also gives element end forces and moments, plus section forces at the quarter points and middle. Reaction attribution and output limits are stated below. Element forces are recovered as the element stiffness times its end movements, less the equivalent loads that were applied to its nodes.

Today

Ordinary preview-physics-1 results publish six signed support components where the action can be attributed. Ambiguous coincident rigid actions are withheld. Historic 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.

Part III · The MethodIII–2

B. Loads

Loads are applied at the nodes. A distributed load becomes consistent (equivalent) nodal loads. A uniform load w over a straight element of length L gives wL/2 and wL2/12 at each end. The forces the element actually carries then come from the solution, as in A 6.

1.Weight.

Weight is the mass per length of pipe, contents and insulation times a gravity you enter, with its sign and axis. There is no default gravity and no default density. On a bend it is applied along the arc. Each rigid component adds its weight at its center of gravity.

2.Thermal expansion.

For a uniform straight member, thermal load uses the mean expansion coefficient over its temperature change, or thermal strain directly (Part II A). The equivalent axial nodal load is

F = EAαΔT(5)

pushing outward at the two ends of the straight member. The solution gives the element force. With both ends fixed, the compressive force is EAαΔT. With free thermal growth, the force is zero.

A realized curved macro-element uses the free uniform thermal expansion field, u_free. Its equivalent load is K_macro*u_free. Its recovered elastic action uses K_macro*(d-u_free). It does not apply the straight member’s axial end-pair as the complete arc load.

3.Pressure.

Pressure is treated in the usual way for beam models of piping. In a continuous line, the pipe wall carries the closed-end pressure force. Unbalanced points can transmit thrust to the system: untied expansion joints, open ends and slip joints. There it acts as a thrust equal to the pressure times the effective area. The longitudinal pressure stress is always added in the stress recovery (E 1).

Pressure also lengthens a closed pipe slightly (the Bourdon effect). With the hoop stress σH and the longitudinal pressure stress σL = σH/2, the axial strain is

εp = (σL − νσH)/E = pD(1 − 2ν)/(4tE)(6)

about a fifth of σH/E for steel. It is small, and programs usually make it optional. In a heated, pressurized pipe fixed at both ends, temperature causes wall compression. Pressure causes wall tension of about νσH. The effects act in opposite senses. On the anchors both push, and the pressure’s share is (1 − 2ν)pAi, about 40 % of the closed-end force.

Today

Nonzero legacy pressure is refused. The earlier pAi treatment omitted the Poisson term and longitudinal stress; its anchor loads could be about two and a half times too large. That is a historical defect, not current pressure admission (Status).

The exact_straight_pressure_v2 route requires explicit case pressure regions, terminal ownership and closure-transfer paths. It supports homogeneous isotropic straight circular members with declared E/ν; G is derived. Pressure is internal differential, uniform in each collinear equal-bore region, with zero external pressure increment.

The route keeps mechanical, pressure-eigen and cap-transfer contributions distinct. The route name does not claim general exact pressure theory. Bends, joints, nonlinear supports and hydrostatic head remain outside its supported pressure composition. Equations (6) and the table in E explain thin-wall mechanics; they do not define the route’s source-annulus implementation.

4.Imposed movements and cold spring.

Equipment growth at a nozzle, anchor movement and settlement can be represented by prescribed movements. Each load case assigns these movements to restrained degrees of freedom. Cold spring is a prescribed closing of a gap left at the cut (Part II G).

Today

Model 0.4.0 declares installation, material, thermal and fit reference states. Its straight-member route composes thermal and fit strain once as lambda_fit*lambda_thermal-1. Rigid support translations and rotations are absolute prescribed boundary values, with reactions from the unreduced equations.

Spring base motions, device preload/reference laws, inactive or locked supports, and per-case mass states are refused. The route represents independent equilibrium, not installation or contact history. Fit reference strain does not provide a general cut-and-close joint model (Status).

5.Wind and seismic.

Both are equivalent static loads. Wind on a span is w = q·Cd·D. It uses wind pressure q, drag coefficient Cd and exposed diameter, including insulation. The engineering model uses the wind component normal to the pipe.

Static seismic load is w = m′·a·g. It uses mass per length and seismic coefficient a in g. The engineering model applies each direction and sense, with the selected combination rule.

Today

The program applies wind to the whole span in the entered direction, without a height profile. Seismic load acts in one sense per case (Status).

6.Material at temperature.

Elastic modulus, shear modulus and expansion coefficient can be entered at several temperatures. A load case takes its properties at one of them, or at a temperature between two, interpolated linearly:

y = y1 + (T − T1)(y2 − y1)/(T2 − T1)(7)

It never extrapolates. For code work the displacement stress range is computed with the reference (installed) modulus, and hot reactions are scaled from it (Part II D).

Today

The ordinary route uses a selected material basis for each case. It withholds combinations whose cases use different modulus bases. Model 0.4.0 declares each member’s actual, selected and installation temperatures, expansion definition and selected E/ν, with derived G.

These declarations do not create code stress categories or automatic cold-modulus stress ranges (Status).

Checked by: restrained thermal growth, partial-span load, weight, seismic and wind loads, properties at temperature.

Part III · The MethodIII–3

C. Supports

Supports are described in Part II H and I as the practitioner uses them. In this engineering description, each support acts on one node, rigidly or through a stiffness. Its type defines directions relative to the pipe, or the user specifies a direction.

SupportHow it acts in the model
AnchorHolds all six degrees of freedom, rigidly or with the stiffnesses you give.
Rest (+Y)Holds the pipe from moving down; lets it lift off. Nonlinear.
GuideHolds movement across the pipe axis, with or without clearance on each side.
Line stop, limit stopHolds movement along the pipe axis, in one or both senses, with or without clearance.
Skewed restraintHolds movement along a direction you give.
Variable spring hangerA spring of the hanger’s rate, preloaded with its cold (installed) load.
Constant support hangerA constant upward force equal to its load, in the cases that carry weight.
Rod hangerHolds the pipe up in tension; goes slack if the pipe rises. Nonlinear.
FrictionAt a rest or guide, resists sliding in the support plane up to μN, where N is that support’s own reaction.
Today

Current restraints act along the global axes that you list. The type does not imply directions. Skewed restraints and two-sided gaps remain unavailable (Status).

Springs carry no preload (Status). Constant-effort force acts in every case (Status). Friction is a separate support per global axis (Status). The program’s screens call a rest a one-way or lift-off support.

1.Nonlinear supports.

Whether a rest, a gap, a rod hanger or a friction support acts depends on the answer. The program assumes a state for each nonlinear support and solves the corresponding linear system. It compares each support state with the result. A rest releases if its reaction would pull the pipe. A released rest re-engages if the pipe would pass through it. A gap closes when movement reaches its clearance.

A friction support slides when tangential force would exceed μN. The sliding force is μN against the motion. Supports that disagree change state, and the program solves the system again. Iteration seeks unchanged states and balanced forces.

With rests and gaps alone this settles in a few passes for most lines. Friction makes the answer depend on the order of loading, and the iteration is not guaranteed to converge. When it does not, the result is reported as not converged, never as solved.

Today

The iteration stops after four passes. The earlier reviewed rack examples exceeded this limit (Status).

Checked by: mixed supports, spring boundary, rest re-engaging, gap, friction, and the other cases of Part VI D.

Part III · The MethodIII–4

D. Load cases and combinations

A load case is a set of loads with the material properties it is solved at. Each is solved on its own, as a linear solve or, with nonlinear supports, as an iteration on their states. Combinations are then formed from the results:

CombinationWhat it does
AlgebraicA factored sum or difference of cases, for example the expansion case as operating minus sustained. It combines movements, forces and moments, never stresses.
EnvelopeThe maximum, minimum or largest absolute value of each result across cases. An envelope is not a range.

A displacement stress range uses differences of section forces and moments between two states. Stress is then computed from those differences (E 2). The usual set of cases for a code check is set out in Part II C.

For the student

Adding results that were solved separately is exact only when the system is linear. A rest that lifts off, a gap that closes or a shoe that slides in one case may act differently when the loads come together. If rests lift off when hot, the sustained case therefore uses the supports’ operating state. Alternatively, the combined loading is solved as its own case.

Today

The ordinary route withholds combinations for nonlinear supports, constant-effort double counting and mixed modulus bases. A withheld combination is not a solved state (Status). Solve each combined nonlinear loading as its own load case.

The screens use result-state subtraction and range envelope labels. Neither label establishes a code displacement stress range. Exact-pressure and model 0.4.0 load/reference-state combinations remain unsupported (Status).

Part III · The MethodIII–5

E. Stress recovery

Stresses are recovered from the section forces at each end and intermediate point, by open mechanics:

ComponentFormula
Axialσa = N/A
Bending, peak on the circumferenceσb = √(My2 + Mz2)/Z,   Z = 2I/Do
Torsional shearτ = T/(2Z)
Hoop, from pressureσH = p r/t,   r = (Do − t)/2
Longitudinal, from pressureσlp = σH/2

The pressure stresses use the mean radius of a thin wall. The codes use their own forms, such as pDo/4t for the longitudinal stress, so the validating program will differ slightly.

1.Peak longitudinal stress.

For a quick reading at each point, the peak longitudinal stress on the circumference is

σmax = |σa + σlp| + √(My2 + Mz2)/Z(8)

with torsion reported beside it. It is a mechanics value, not a code stress. With in-plane and out-of-plane SIFs entered for a bend or branch, the intensified bending term is √((iiMi)2 + (ioMo)2)/Z. SIFs apply to the moments, never to the pressure stress.

Today

Ordinary preview-physics-1 replaces the retired absolute-sum summary. It publishes circular normal-stress extrema for supported straight members; torsional shear remains a separate component. Arc maxima and incomplete-coverage headlines are withheld (Status).

The user-SIF row is equal-factor intensified bending, i*hypot(My,Mz)/Z, with the member section modulus. It is not a code stress and is never combined. A realized curved-bend component supplies no measure on its arc or straight neighbors (Status).

Historic precision-1 records keep the former SIF×k summary and the stress sum that could be up to 41 % high. Their readability does not make those quantities current. The explicit straight-pressure route includes its supported pressure terms; nonzero legacy pressure is refused (Status).

2.Ranges.

The range between two states is recovered from the difference of their forces and moments: the moment range first, then the stress. Differencing two summary values, or two intensified values, gives the wrong answer whenever the moments turn between the states.

Today

The recorded component range |b-a| describes a component difference, not a code range. The ordinary route does not combine intensified bending rows. Nonlinear, constant-effort and mixed-modulus combination guards still apply (case, Status).

3.What it does not compute.

SWBPIPE computes movements, loads, forces, moments and the stress components above. It does not supply code stress rules, allowables or code acceptance. User-authored formula rules can evaluate declared inputs, including intervals. Nonfinite intermediate arithmetic blocks the formula evaluation. A formula gate does not establish standards approval or professional acceptance. That check is made in the program you validate in (Part V).

Checked by: axial, bending, torsion, pressure, range, end forces to stress.

The full theory

Retained-precision F2a D1 work is registered for development and tests only, with no public production caller. Reader and output-policy preparation do not activate it. B1/B2/B3, S-I2, F2b/F3 and native witnesses retain their open scope. This edition makes no general machine-size, memory-ceiling or complete numerical-accuracy claim.

This part distinguishes theory, current routes and unfinished work. The SWBPIPE theory develops the derivations, from element stiffness to nonlinear iteration, alongside the source in docs/theory. Part VII is intended to publish that theory chapter by chapter.

Contents · Part II · Part IV · The program: swbpipe.com · MIT licence