For the complete documentation index, see llms.txt. This page is also available as Markdown.

Nodes [FEA]

A node is a point in the model where degrees of freedom exist. Elements connect to nodes, loads and masses are applied at nodes, and the solver's unknowns are nodal displacements and rotations. A node also carries its own support conditions — restraints and springs — so in OpenBrIM the node object is both the geometric point and the boundary condition at that point.

Every node has six degrees of freedom: three translations (Tx, Ty, Tz) and three rotations (Rx, Ry, Rz), expressed in global axes unless a Coordinate System is assigned.

Value
Meaning

0

Free — no restraint, no spring (the default)

negative (use −1)

Fixed — the degree of freedom is fully restrained

positive

Spring — an elastic support of that stiffness

Geometry

X / Y / Z: The node's location in global coordinates. These are connectivity and geometry parameters: they place the point, and thereby set every element length, orientation and lever arm that depends on it.

Engineering influence. Moving a node changes the length and direction of every element attached to it, which changes those elements' stiffness — a beam's bending stiffness varies with 1/L³, so apparently small coordinate errors have a disproportionate effect on flexible members. Coordinates also set the lever arms used by rigid diaphragms and by offset/rigid-end members. They do not by themselves create or remove restraint.

Two nodes at the same location are not automatically the same node — see the merge settings below.

Coordinate System: An optional local frame for this node. When assigned, the node's restraint and load directions are interpreted in that frame rather than in global axes, and its displacements and reactions are reported there. It does not change where the node sits — X/Y/Z stay global.

Engineering influence. This is the mechanism for a skewed or radial support: a bearing that is fixed along the bearing line and free transverse to it, on an abutment that is not square to the global axes, is modelled by assigning a rotated coordinate system and restraining in the local direction. Without it, restraining "X" restrains the global direction, which on a skewed abutment restrains a combination of the along- and across-bearing directions and produces reactions the real bearing cannot deliver. Leave empty to work in global axes. Displacements and reactions at the node are reported in the assigned system — which is also why a skewed node's output appears to disagree with a global hand-check.

Alignment: Associates the node with a roadway alignment, so its position can be driven by station and offset rather than by fixed coordinates. Use it when the geometry should follow the roadway; changes to the alignment then move the node automatically. Leave empty for a node placed by explicit coordinates.

Group: The FE Group the node belongs to, used for construction-stage activation and for selecting sets of nodes elsewhere (diaphragm slaves, result extraction, load filters). This is a selection parameter with no mechanical effect of its own. A node whose group is inactive in a stage does not participate in that stage.

DOF

These six define the support condition, following the sign convention above: 0 free, negative fixed, positive an elastic spring stiffness. Right-click any DOF cell for the 6x6 Stiffness Matrix… action, which opens the coupled-stiffness editor described below.

Tx / Ty / Tz: Translational restraint or spring stiffness along each axis, in force per unit length.

Rx / Ry / Rz: Rotational restraint or spring stiffness about each axis, in moment per unit angle.

Engineering influence, common to all six. Restraining a degree of freedom removes it from the system, so the structure becomes stiffer or equally stiff — never softer — and a reaction appears there. A positive spring value gives partial fixity: increasing the stiffness moves the behaviour toward fully fixed, increasing the reaction and the moment attracted to that support, while decreasing it toward zero approaches free and sheds load to other supports. The transition is not linear in any useful sense — what matters is the spring stiffness relative to the stiffness of the structure it supports, so a value that behaves as nearly-fixed under one superstructure is nearly-free under a much stiffer one.

Very large positive values are a poor substitute for a fixed restraint: they add a term orders of magnitude larger than the rest of the matrix, degrading conditioning and producing noisy reactions and spurious high-frequency modes. Use a negative value to mean fixed.

Results sensitive to these: reactions, the distribution of moment between spans and supports, and — because restraint removes degrees of freedom — the natural periods and mode shapes. A model with too few restraints is singular; one with too many carries load paths that do not exist.

These parameters are interpreted in the node's Coordinate System when one is assigned.

Stiffness Matrix

6x6 Stiffness Matrix: A full 6×6 nodal stiffness matrix, edited through its own sub-sheet, for supports whose behaviour is coupled between degrees of freedom.

Engineering influence. The six DOF values above are only the diagonal of a support stiffness; they cannot express coupling — that a horizontal translation also produces a moment reaction, as a real spread footing or pile group does. The 6×6 form carries the off-diagonal terms, which is why a foundation stiffness handed over from a geotechnical analysis, or produced by an Equivalent Stiffness point, is normally a full matrix. Supplying it makes the support response direction-dependent in a way the diagonal form cannot reproduce, typically reducing the rotation that accompanies a lateral load.

The matrix should be symmetric and positive-definite to represent a real elastic support; one that is not can make the global system indefinite and cause the solve to fail or return meaningless results. Leave it empty when the diagonal DOF values are sufficient.

Gap

Tx Gap / Ty Gap / Tz Gap: A translational gap, in length units, that must close before the node's spring in that direction engages.

Rx Gap / Ry Gap / Rz Gap: A rotational gap, in angle units, before the rotational spring engages.

Engineering influence. A gap makes the support nonlinear and one-sided: the node moves freely until the gap closes, then the spring stiffness applies. This is how a bearing with a physical clearance, a shear key with a construction gap, or a joint that must close before bearing is modelled. Zero (the default) means the spring engages immediately.

Because the behaviour is nonlinear, gaps are only honoured in a nonlinear analysis. In a linear static, modal or response-spectrum case the model is linearized and the gap is ignored — the support behaves according to the linearization chosen under Stiffness Option. This is the most common misunderstanding with gaps: they are entered, the analysis is linear, and nothing in the result reflects them.

Increasing a gap delays engagement, increases the displacement at which load transfers, and sheds load to other supports at low load levels; below the gap-closing load the support contributes nothing at all. Results sensitive to it: displacements at low load, the order in which supports engage, and any envelope built from load levels that straddle gap closure.

Tx Link / Ty Link / Tz Link / Rx Link / Ry Link / Rz Link: For each degree of freedom, another node whose corresponding degree of freedom this node is tied to.

Engineering influence. This is a per-DOF tie expressed directly on the node — a compact alternative to an Equal Constraint object when only one or two directions need joining. The tied degrees of freedom share a single equation, so the two nodes move together in that direction; the tie is exact and adds no stiffness of its own. Leave empty for no tie.

Use it for coincident nodes that must share some directions and stay independent in others: the two sides of a pin, a shear-only connection, or stitching two meshes along a line without welding rotations. Prefer explicit Equal Constraint objects when many directions or many node pairs are involved — they appear in one reviewable list, whereas ties buried on individual nodes are easy to lose track of.

Do not tie a degree of freedom that is also restrained on this node, and do not chain ties through a node that is itself a slave; overlapping ties resolve in processing order and the result becomes order-dependent.

Settings

Merge Nearest: When YES, this node is merged with the nearest node found during model assembly. Used to stitch geometry generated separately that does not share exact coordinates.

Engineering influence. Merging joins two sets of degrees of freedom into one, which connects parts of the model that were previously independent — a structural change, not a cosmetic one. Enabling it where two members were meant to stay separate silently welds them; failing to merge where they were meant to connect leaves an invisible discontinuity whose usual symptom is a mechanism, a singular matrix, or members carrying no load. Defaults to NO.

Merge Nearest ID / Merge Nearest Target: Identify the specific node this one should merge with, rather than relying on proximity alone.

Merge w/Same Loc Node: When YES (the default), nodes at identical locations are merged automatically.

Engineering influence. This default is why coincident geometry usually just works. It is also why two members that happen to share a coordinate become connected when they were meant to be separate — an expansion joint modelled as two nodes at the same point is welded shut unless this is turned off. Setting it to NO keeps coincident nodes independent, which is what a joint, a gap, or a link element between coincident points requires.

Merge w/Spring: Controls whether a node carrying a spring participates in merging. Defaults to NO, which protects support conditions from being absorbed into a neighbouring node during assembly. Enabling it can silently relocate or duplicate a restraint.

Use Nonlinear Penalty: Whether the nonlinear penalty formulation is used for this node's nonlinear conditions (gaps and one-sided behaviour). Defaults to YES. It affects how the condition is enforced numerically, not what the condition is. Turning it off changes convergence behaviour and is a troubleshooting measure for a nonlinear case that will not converge, not a modelling decision.

Disp Based Force Scaling NL: Enables displacement-dependent scaling of this node's forces in a nonlinear analysis. Defaults to NO. Use only where the support force genuinely varies with the displacement of a reference set of nodes; enabling it without a coherent node group and factor list produces support forces that correspond to no simple stiffness.

Force Scaling Node Group: The FE Group whose displacements drive the scaling above. Only meaningful when Disp Based Force Scaling NL is YES.

Force Scaling Factors: The factors applied. Only meaningful when Disp Based Force Scaling NL is YES, and must be consistent in length with the node group it accompanies.

Stiffness Option

These twelve columns decide what stiffness a nonlinear support contributes when the analysis being run is linear. A linear static, modal, response-spectrum or non-FNA time-history case cannot use a gap or a one-sided spring, so it must substitute something.

Tx / Ty / Tz / Rx / Ry / Rz Linear Mode: How the linear stiffness is obtained for that degree of freedom:

Mode
Meaning

Nonlinear (default)

tangent/initial stiffness taken from the current state

Initial Stiffness

always the slope of the nonlinear curve at zero displacement

Effective Stiffness

the constant value typed in the matching Eff. Stiffness column

Tx / Ty / Tz Eff. Stiffness and Rx / Ry / Rz Eff. Stiffness: The constant stiffness used when that direction's Linear Mode is Effective Stiffness. Ignored in the other two modes.

Engineering influence. This is the standard initial-versus-secant stiffness question for dynamic analysis. Initial Stiffness gives the small-amplitude stiffness — appropriate for a serviceability or low-level vibration check — and produces shorter periods and generally higher spectral accelerations. Effective Stiffness lets you enter a secant stiffness representative of the expected response amplitude, which is what seismic codes normally require for isolators and other devices whose stiffness falls with displacement; it produces longer periods, usually lower forces, and larger displacements. The choice can change base shear by a factor of two or more, and neither option is universally conservative — a longer period reduces force demand while increasing displacement demand.

An Effective Stiffness of zero means the support contributes nothing in that direction in a linear analysis, which can leave the model unstable. This is a common reason a linear case fails on a model whose nonlinear case solves without complaint.

Verification

  • Display support symbols in the 3D view and confirm every intended restraint appears, in the right direction. This catches the free-versus-fixed sign error faster than reading the table.

  • Check reactions: they must equilibrate the applied load, and no reaction should appear at a degree of freedom you intended to be free.

  • Run a self-weight case and inspect the deflected shape for rigid-body motion (a missing restraint) or for a support that does not deflect where a spring was intended.

  • For a spring support, divide the reaction by the displacement at that degree of freedom; the result must return the stiffness you entered. This is the quickest way to detect a support entered as 1 when −1 was meant.

  • For a skewed support, display the node's local axes and confirm the restrained direction lies along the bearing line.

  • Compare the assembled model's node count against what you expect, to confirm coincident nodes merged (or did not) as intended.

  • For a gap, run the nonlinear case at load levels either side of closure and confirm the support engages at the right displacement.

  • Compare a simple support's reaction against statics by hand.

Common mistakes

  • Entering 1 to mean "fixed". It creates a spring of stiffness 1, effectively an unrestrained support. Use −1. Older documentation stated this convention incorrectly, so models built from it should be re-checked.

  • Leaving a support at 0 believing it is fixed. Zero is free, and the result is either a singular matrix or a structure that visibly floats.

  • Using a very large positive stiffness to mean fixed, degrading matrix conditioning instead of using a negative value.

  • Restraining in global axes at a skewed support, generating reactions in directions the real bearing cannot resist.

  • Relying on Merge w/Same Loc Node at an expansion joint, silently welding a joint that should open.

  • Entering gaps and then running a linear analysis, where they are ignored entirely.

  • Leaving Linear Mode at Nonlinear for an isolator, then reading modal periods that correspond to the small-amplitude stiffness rather than the design displacement.

  • Setting an Effective Stiffness of zero, removing the support from every linear analysis.

  • Restraining a degree of freedom that is also tied by a Link or an Equal Constraint, where the restraint may belong to an equation that has been eliminated.

  • Over-restraining — fixing all six degrees of freedom at several supports on a structure that must expand — producing large spurious thermal and shrinkage forces.

Last updated