SWBPIPE · The open manual
Part VI · VerificationVI–D1

Part VI

Verification

D. Nonlinear supports  ·  Sliding friction as a bounded 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. That end rests on friction with μ = 0.25 and given normal reaction 12.0 N. An axial push of 8.0 N acts at the end. The support starts sliding and should retain a bounded resisting force rather than release fully. Where does the end settle?

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

These recorded transitions and free-degree residuals do not establish general equilibrium or convergence for other models.

Support state and independent numerical comparison. The recorded test exercises nonlinear support state or assembled-loop behavior in its benchmark crate. It does not exercise desktop authoring.

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).

An 8.0 N axial push acts against friction (μ = 0.25, N = 12.0 N). Bounded reaction must be −3.0 N, leaving 0.05 mm displacement. F FRICTION μ N AXIAL MOVEMENT ONLY AT THE TIP
Fig. VI–D1.—Sliding friction as a bounded 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 forceF8.0 N
Friction coefficientμ0.25
Normal reaction (given)N12.0 N
Friction limitμN3.0 N
Maximum iterations—4
Active-set residual tolerance—0.0 (count)
Initial state—sliding

2.Method.

At the first iteration, no solved displacement exists to determine sliding direction. The degree of freedom is released for a free trial: 8.0 / 100.0 = 0.08 mm. This trial ignores friction, so the loop does not accept convergence.

At the second iteration, positive trial displacement determines sliding direction. A force of magnitude μN opposes that direction. Net push is 8.0 − 3.0 = 5.0 N. Displacement is 5.0 / 100.0 = 0.05 mm, with bounded support reaction −3.0 N. The support stays sliding, so no state changes and the loop converges.

The reference records the same final result for a sticking start. These tests use only the sliding start. No friction history or load stepping is modeled.

u1 = F / k = 8.0 / 100.0 = 0.08 mm(1)
Ff = −(μ N) = −(0.25 × 12.0) = −3.0 N(2)
u = (F + Ff) / k = (8.0 − 3.0) / 100.0 = 0.05 mm(3)

3.Results.

Expected values
QuantityExpected
Released free displacement (iteration 1)0.08 mm
Bounded sliding force (iteration 2)−3.0 N
Final displacement0.05 mm
Final tangential reaction−3.0 N
Iteration count2
Final changed-support count0.0
Final statesliding
Convergedtrue

The case record describes these checks:

  • The solve converges in exactly 2 iterations, ending with the support sliding and a changed-support count of 0.
  • No friction force is applied on the first iteration. On the second, exactly one friction force is applied, and it is −3.0 N.
  • The final displacement is 0.05 mm and the final reaction is −3.0 N, compared exactly.
  • 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.
  • Any change in displacement or reaction over the last iteration stays inside the recorded envelope.

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

Sliding friction is a force of known size, μN, that opposes the motion. Treating a sliding support as a full release would overstate the movement: 0.08 mm here, against 0.05 mm with the friction force in place.

4.Recorded command.

This command belongs to the archived source at 462f66975d36cd10d5b8455193ada9517d28d353. Use a checkout of that exact revision. This edition did not run the command. The recorded result does not establish current product support.

git checkout --detach 462f66975d36cd10d5b8455193ada9517d28d353
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
cargo test --manifest-path validation/benchmarks/nonlinear/Cargo.toml dec_067_transition_fixtures_witness_state_switched_and_bounded_outcomes

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

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