> 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/temperature-loads-fea.md).

# Temperature Loads \[FEA]

A Temperature Load applies a thermal effect to line elements — either a uniform temperature change across the whole section, or a gradient through its depth. The temperature is converted to strain using the material's thermal coefficient, and that strain becomes force wherever the structure is restrained.

Temperature Loads **generate load**. They add nothing to stiffness or mass.

{% hint style="info" %}
**Thermal effects produce force only where movement is restrained.** An unrestrained member simply changes length or curves and carries nothing. A member restrained against that movement — by fixed bearings, by integral abutments, or by redundancy in a continuous frame — develops large forces. This is why thermal actions often govern bearing, joint and substructure design, and why the same temperature change can be irrelevant in one bridge and decisive in another.
{% endhint %}

**Load Case:** The analysis case the load belongs to — typically a case classified as uniform temperature (TU) or thermal gradient (TG) so that combinations and code checks pick it up correctly. With no case assigned it applies nowhere.

*Engineering influence.* Codes treat uniform temperature and gradient as separate actions with different factors, so keep them in separate cases. Temperature cases are also normally run as both a rise and a fall, since the two produce opposite-signed effects and different members govern in each.

**Element:** The FE Line, or group of lines, the temperature applies to. This is a **connectivity** parameter.

*Engineering influence.* Thermal force depends on which members expand relative to which do not, so the **extent** of the group is part of the physics rather than a bookkeeping detail. Heating the whole superstructure produces a very different result from heating one girder: the latter produces differential expansion and induces force between girders that the uniform case does not.

**Use Active Elements:** When YES, every active line in the stage receives the temperature rather than only the named element. Convenient for a whole-structure temperature case; indiscriminate if the active set is broader than the region you intend to heat.

**Equation to Filter Elements:** An expression evaluated per element to narrow the selection. Leave empty for no filter. A filter matching nothing produces a load object that silently does nothing — confirm how many elements actually received the temperature.

## Temperature

**Temperature:** The temperature change, in temperature units. This is a **change from the stress-free state**, not an absolute temperature.

*Engineering influence.* The induced strain is `α × ΔT`, and in a fully restrained member the induced stress is `E × α × ΔT` — independent of member length, which is why long and short restrained members develop the same thermal stress. The **force** does depend on area, and the **movement** in an unrestrained member depends on length.

A positive value is a temperature rise, producing expansion; a negative value is a fall, producing contraction and, in a restrained member, tension. Both directions must normally be checked, because expansion and contraction load bearings, joints and substructure in opposite senses and different elements govern each.

A value of zero applies nothing. The effect is **entirely dependent on the material's thermal coefficient**: a material whose coefficient is left at zero produces no thermal effect at all regardless of the temperature entered, which is a common reason a thermal case appears to do nothing.

Results sensitive to it: bearing and joint movements, substructure moments and shears, and axial force in continuous or integral structures.

**Temp. Variation Dir.:** Whether a gradient varies through the element's local **Y** or local **Z** direction.

*Engineering influence.* This selects the axis the temperature varies across, which determines the plane the resulting thermal curvature acts in. For a bridge girder the vertical direction is the one that matters — solar heating warms the deck relative to the soffit and produces a **vertical** gradient, which causes the member to curve and, in a continuous structure, generates significant secondary moments over the supports.

Choosing the wrong direction applies the gradient across the width instead of the depth, producing lateral curvature rather than the vertical hogging the design expects. Because both options are local, the correct choice depends on the member's **Beta Angle**, so a girder that is rotated will need the other setting — this is worth checking element by element rather than assuming.

{% hint style="warning" %}
Thermal gradients apply to **frame** elements only. Shell elements support uniform temperature but **not** a through-thickness gradient, so a deck modelled with shells cannot carry a thermal gradient directly and needs an equivalent representation.
{% endhint %}

## Verification

* Check that an **unrestrained** member simply expands by `α × ΔT × L` and carries no force. If it develops force, it is restrained somewhere you did not intend.
* Check that a **fully restrained** member develops `E × α × ΔT` and compare against a hand calculation.
* Confirm bearing and joint movements are within their capacity, and that they move in the direction the temperature sign implies.
* Confirm the material's thermal coefficient is non-zero; a zero coefficient produces no effect at all.
* For a gradient, inspect the deflected shape: a vertical gradient should produce visible upward or downward curvature, not lateral movement. Lateral movement means the variation direction is wrong for that member's orientation.
* Run both a rise and a fall and confirm the effects reverse.
* Check how many elements the load actually reached, particularly when using Use Active Elements or a filter.

## Common mistakes

* **Entering an absolute temperature** rather than a change from the stress-free state.
* **A zero thermal coefficient on the material**, so the load has no effect whatsoever.
* **Checking only a temperature rise**, missing the contraction case where joints open and different members govern.
* **Wrong variation direction** for the member's orientation, applying a gradient across the width instead of the depth.
* **Applying a gradient to shell elements**, which do not support it.
* **Heating only part of the structure unintentionally**, through a filter or group narrower than intended, producing spurious differential expansion.
* **Combining thermal cases with uncracked stiffness** where the code expects reduced stiffness, which overstates the induced forces.
* **Restraining the structure more than the real bridge is restrained**, which is the most common way thermal forces come out unrealistically high.


---

# 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/temperature-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.
