> For the complete documentation index, see [llms.txt](https://docs.openbrim.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.openbrim.org/templates/openbrimfea/loads-fea/static-loads-fea/strain-loads-fea.md).

# Strain Loads \[FEA]

A Strain Load imposes an initial (fabrication) strain on one or more line elements. The member behaves as though it were manufactured slightly longer or shorter than the geometry it must fit into, so forcing it into place induces stress in it and in the surrounding structure.

This is how deliberate lack-of-fit is modelled: cross-frames detailed for a no-load, steel-dead-load or total-dead-load fit condition, pre-cambered members, jacked-in closure segments, and any element whose stress-free length differs from its modelled length.

A Strain Load is **load-generating**. It adds no stiffness and no mass; it produces an equivalent load vector from the imposed strain and the member's axial stiffness.

## General

**Load Case:** The analysis case the resulting load belongs to. A Strain Load with no case assigned produces no effect anywhere. In staged construction the choice of case (and therefore stage) decides what structure the lack-of-fit is forced into — the same strain applied to a bare steel frame and to a composite deck produces very different force distributions.

**Element:** The line element, or group of lines, to strain. This is a **connectivity** parameter. Define together with **Use Active Elements** and **Equation to Filter Elements**, which are alternative ways of selecting the same set.

**Use Active Elements:** When YES, every active line in the stage is strained rather than only the named element. Convenient for applying a uniform fabrication strain to a whole family of members, but indiscriminate — it will include members you did not intend if the active set is broader than the group being detailed.

**Equation to Filter Elements:** An expression evaluated per element to narrow the selection. Leave empty for no filter. A filter that matches nothing yields an object that silently does nothing; confirm how many elements were actually strained.

**Initial Strain:** The imposed strain, dimensionless (length per unit length).

**Positive means the member was fabricated short** — it must be stretched to fit, so it ends up in tension at zero displacement, and it pulls the surrounding structure toward it. Negative means the member was fabricated long, ends in compression, and pushes the structure apart. Getting this sign backwards reverses every force the load induces, which is the single most consequential mistake with this object.

*Engineering influence.* For a linear model the induced forces scale linearly with the strain. The magnitude of force produced depends on the **restraint** the member is forced against, not on the member alone: an unrestrained member with an initial strain simply changes length and induces almost nothing, while the same strain in a stiff, redundant frame produces large locked-in forces. This is why fit-condition effects are often negligible in one framing arrangement and dominant in another. A value of zero means no lack of fit.

**This parameter is ignored when Displacement Stage is set** — the strain is then computed from that stage's solved displacements instead. Entering a value in both places is a common source of confusion because the typed value has no effect.

Typical magnitudes are small: a fabrication strain corresponding to a few millimetres over a cross-frame length is of order 1e-4. Values orders of magnitude larger are usually a units slip (entering a length rather than a strain) and produce enormous, obviously wrong member forces.

**Displacement Stage:** When set, the strain is **computed at solve time** from that stage's solved displacements, rather than taken from the Initial Strain field. The member is made stress-free in its *deflected* shape — which is precisely the definition of a dead-load fit condition. It is applied in a trailing "Locked-in Force Effects" substage, after the referenced stage has been solved.

*Engineering influence.* This makes the load **dependent on the analysis result** rather than on a number you supply, so it automatically tracks changes to the structure, its loads, or its staging. Referencing a stage in which the relevant dead load has not yet been applied gives a fit condition based on an incomplete deflected shape — the usual cause of a fit that does not match the detailer's intent. Leave empty to use the typed Initial Strain instead.

**Displacement Components:** Which global direction of the referenced stage's displacement is measured when computing the strain — All (0), X (1), Y (2) or Z (3).

*Engineering influence.* Restricting to a single component isolates the part of the deflected shape that the fit is detailed against — commonly the vertical component for a girder bridge, where the cross-frames are detailed for vertical dead-load deflection and the small longitudinal and transverse movements are not part of the fit. Using All includes every component and generally produces a larger computed strain. This parameter only has meaning when **Displacement Stage** is set; it is ignored otherwise.

**Scale:** A multiplier on the strain, whether typed or computed; 1 means 100%.

*Engineering influence.* Scales the imposed strain and therefore, in a linear model, the induced forces proportionally. Useful for partial-fit conditions and for sensitivity studies — running the same model at 0, 0.5 and 1.0 shows how much of the force distribution is attributable to the fit condition. A value of 0 disables the load while keeping it in the model. Negative values invert the sense of the fit.

## Verification

* Check the axial force in the strained members. It should have the sign the strain implies: positive strain (fabricated short) puts the member in **tension**.
* Confirm the number of elements actually strained matches intent, especially with Use Active Elements or a filter.
* Run the model with Scale at 0 and at 1 and compare. The difference is exactly the locked-in effect of the fit condition; if there is no difference, the load is not being generated.
* For a computed fit, review the referenced stage's deflected shape and confirm the dead load you intend to fit against has actually been applied in it.
* Check that the surrounding structure shows the expected response — a fabricated-short cross-frame should pull the girders together and induce girder lateral bending.
* Hand-check an isolated member: force ≈ `E · A · strain · Scale` when fully restrained; much less when free.

## Common mistakes

* **Sign reversal.** Reading positive as "fabricated long". Every induced force flips, and the result is plausible-looking but exactly wrong.
* **Entering Initial Strain while Displacement Stage is set.** The typed value is ignored, and the analysis quietly uses the computed strain instead.
* **Referencing a stage whose dead load is not yet applied** for a dead-load fit condition.
* **Entering a displacement instead of a strain** — a value like 0.5 rather than 5e-4 — producing member forces orders of magnitude too large.
* **Using Displacement Components = All** when the fit was detailed against vertical deflection only.
* **Applying the strain to a member that is essentially unrestrained** and concluding fit conditions do not matter for the structure, when the restraint, not the strain, was the missing ingredient.
* **Leaving the Load Case empty**, so the object exists and does nothing.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.openbrim.org/templates/openbrimfea/loads-fea/static-loads-fea/strain-loads-fea.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
