SWBPIPE · The open manual
Part VI · VerificationVI–D2

Part VI

Verification

D. Nonlinear supports  ·  Friction with a derived normal force

A straight member 1.0 mm long has axial stiffness 100.0 N/mm and one fixed end. Its other end can move only axially. Friction coefficient is μ = 0.30, and axial push is 10.0 N. No normal force is given, but a restraint at that end holds transverse y against load −100.0 N. The friction support must use that restraint reaction as normal force. Does the support hold?

This page preserves a recorded benchmark and its expected values. The dated run below is not a new run of the current product.

The current product limits active-set solves to four iterations. Current mechanics combinations with nonlinear supports are withheld. These recorded transitions and free-degree residuals do not establish general equilibrium or convergence for other models.

Read with

Friction here acts along one axis, with its normal force given or taken from another support. In a real line, friction belongs to the rest itself. It acts against the resultant sliding in the support plane (Part II H, Status).

Friction uses a named transverse reaction of 100.0 N as normal force. Its 30.0 N limit holds a 10.0 N axial push in one iteration. F FRICTION μ N FROM THE y-RESTRAINT AXIAL MOVEMENT ONLY AT THE TIP
Fig. VI–D2.—Friction with a derived normal force

1.Inputs.

Illustrative values, taken from no standard and chosen so the arithmetic can be followed by hand. Most do not describe a real pipe; read them in any consistent set of units.

QuantitySymbolValue
Node count—2
Member lengthL1.0 mm
Axial stiffnessk100.0 N/mm
Applied axial (friction-direction) forceFx10.0 N
Applied normal-direction forceFy−100.0 N
Friction coefficientμ0.30
Normal source—node 1, Uy restraint
Maximum iterations—4
Active-set residual tolerance—0.0 (count)
Initial state—sticking

2.Method.

The sticking support restrains the axial degree of freedom, and the transverse degree of freedom at the same node is restrained as well. One linear solve gives a transverse reaction of 100.0 N against the −100.0 N load. The friction support takes the absolute value of that named reaction as its normal force.

The friction limit is then 0.30 × 100.0 = 30.0 N. The axial reaction is −10.0 N, well inside the limit, so the support stays sticking and nothing changes state on the first iteration.

The normal force comes only from the restraint the case names. No default normal force is supplied.

N = |Ry| = 100.0 N(1)
μN = 0.30 × 100.0 = 30.0 N(2)
|Rx| = 10.0 N < 30.0 N  ⇒  sticking(3)

3.Results.

Expected values
QuantityExpected
Derived normal reaction100.0 N
Tangential reaction−10.0 N
Iteration count1
Final changed-support count0.0
Final statesticking
Convergedtrue

The case record describes these checks:

  • The solve converges in exactly 1 iteration, ending with the support still sticking and a changed-support count of 0.
  • The derived normal reaction and the tangential reaction are worked in the reference but are not compared as numbers. The tests check them through the resulting state and iteration count.
  • At the final iteration the out-of-balance force, moment and work at the free degrees of freedom are all exactly 0.0.
  • The solve carries no notice that its tolerance is unset.
  • With only one iteration there is no previous result, so no displacement change is recorded.

What it shows. Compared with an independent hand calculation.

Path exercised. The benchmark calls the solver’s components directly: elements, loads, frame solver and stress recovery. It does not go through the program’s own model-to-solve path.

Agreement. The loop counts as converged only when no support changes state between iterations. The changed-support count must reach exactly 0 within at most 4 iterations, with no relative or absolute allowance. At the final iteration, out-of-balance force, moment and work at free degrees of freedom must be 0.0. Changes in displacement and reaction over the last iteration must stay inside the recorded envelope. Long values are shown here to seven significant figures; the tests compare the full values in the record.

For the student

This friction model takes normal force from a named restraint. Its friction limit therefore depends on the solved reaction rather than a fixed input.

4.Recorded command.

This command belongs to the linked case record and its recorded execution path. This website update did not rerun it. A historical command or result does not establish current product support.

cd projects/chirality-piping
cargo test --manifest-path validation/benchmarks/nonlinear/Cargo.toml assembled_global_loop_seed_cases_converge_under_governed_policy
cargo test --manifest-path validation/benchmarks/nonlinear/Cargo.toml assembled_convergence_observations_record_measured_fixture_values_only
cargo test --manifest-path validation/benchmarks/nonlinear/Cargo.toml assembled_force_displacement_residual_observations_use_free_dof_force_moment_thresholds

Hand calculation: validation/hand_calcs/nonlinear/assembled_friction_derived_normal.md. Test record, with the recorded run of 2026-07-10: nl-assembled-friction-derived-normal-original.md.

Contents · Part VI · The program: swbpipe.com · MIT licence