Skip to content

Analysis

xdfem2D uses a three-tier model. Keeping these distinct is the key to using the program correctly.

Load case        Analysis case            Combination
──────────       ─────────────            ───────────
defines loads →  applies load cases   →   combines analysis cases
(no results)     with factors & a         (linear / envelope / SRSS / seismic)
                 solution method
                 (produces results)
  • Load case — a named set of loads. It is only a definition; on its own it produces no results.
  • Analysis case — references one or more load cases with factors and a solution method, and is solved. This is where results come from.
  • Combination — combines analysis cases (never load cases directly).

Automatic Linear cases

Adding a load case creates a Linear analysis case of the same name. If you build a combination that needs a load case directly, xdfem2D wraps that load case in a Linear analysis case automatically, so combinations always combine analysis cases.

Analysis cases

Create them on the Analysis Cases sub-tab. Each type has its own form:

Type Purpose Key inputs
Linear Static linear-elastic solution load-case coefficients; optional stored stiffness from a P-Delta run
NonLinear Static solution honouring unilateral (tension-/compression-only) springs load-case coefficients (same inputs as Linear)
Mass Build a mass matrix from gravity loads and/or nodal masses load-case→mass factors (e.g. G + 0.3·Q); concentrated nodal masses
Modal Eigenvalue analysis number of modes; the Mass case to use
Spectrum Response-spectrum analysis Modal case; spectral function; combination rule (SRSS/CQC); direction; damping
Geometric Nonlinear P-Delta / large displacement method; max iterations; tolerance; member stiffness factors; load-case coefficients
Sequence Incremental staged-construction analysis defined by a construction sequence (see Variants & Construction Sequences); appears automatically when a sequence is created

A Linear case may reuse the tangent stiffness of a Geometric Nonlinear (P-Delta) run instead of the elastic stiffness.

In the plate domain

Linear, non-linear static, modal and response-spectrum analysis are all available for slabs and grillages. The mass sits on the transverse DOF w, so the modes are the out-of-plane (vertical) vibration and the response spectrum is vertical. P-Delta is not available — its geometric stiffness is built from in-plane axial force, which a plate model does not carry. See Slabs and Grillages.

NonLinear cases (unilateral springs)

A NonLinear case takes exactly the same inputs as a Linear case (load-case coefficients) but solves the model honouring tension-only / compression-only springs — see Springs. It is the only case type that activates that unilateral behaviour; in every other case type a spring acts bilaterally (resisting in both directions).

How it is solved: the case builds the combined load vector (Σ coeffᵢ · load caseᵢ) and runs an active-set iteration — each unilateral spring is included in the stiffness only while it is active (its displacement has the sign matching its mode), re-solving until the active set no longer changes. Because the result is non-linear, it cannot be scaled or superposed, which drives the combination rule below.

When a NonLinear case behaves like Linear

If the model has no tension-/compression-only springs, a NonLinear case produces exactly the same result as a Linear case.

Mass and Modal cases

The mass matrix is diagonal (lumped): it is built from the absolute value of the vertical force |Fy|/g that each referenced load case puts on a node, plus any concentrated nodal mass. Two consequences are worth knowing before reading modal results:

  • the mass derived from a load case is applied equally to X and Y, so an upward load contributes the same mass as a downward one, and a purely horizontal load contributes no mass at all;
  • there is no rotary inertia unless a rotational nodal mass (mtz) is given explicitly.

Rocking modes need an explicit rotary inertia

Degrees of freedom with no mass (typically the nodal rotations) are eliminated exactly by static condensation, so they cost no accuracy and produce no spurious modes. But a mode whose kinematics involve those rotations — the rocking of a rigid block on springs is the typical case — only exists if it has a rotational mass mtz: without it the rocking merges with heave. For a member lumped into segments of length h, the consistent value is mtz = mᵢ·h²/12 at each node.

Effective mass percentages are relative to the FREE mass

meff X % and meff Y % use as denominator the mass on the unrestrained degrees of freedom, reported as total_mass_x / total_mass_y. Mass lumped on a restrained DOF cannot vibrate — it goes straight to the foundation — so it is excluded. The denominator is chosen so that the percentages of all modes add up to 100 %, which makes the column a reliable indicator of mode truncation.

This is not the model's total mass. The results also carry model_mass_x / model_mass_y (everything, restrained included) and restrained_mass_x / restrained_mass_y, so the ratio against the total can be computed when needed — notably for the EC8 §4.3.3.3.1 criterion, which asks for 90 % of the total mass of the structure.

How much is excluded depends on the mesh, not on the structure: on a simply supported beam discretised into n elements the supported nodes carry exactly 1/n of the mass (6,3 % with 16 elements). Refining the mesh therefore moves the percentages even though the absolute effective masses converge. When the restrained fraction exceeds 2 %, the Modal case results include a warnings entry saying so.

Model check (Structure menu) additionally reports any concentrated nodal mass placed on a restrained DOF, since that is almost always a modelling slip rather than an intention.

Response spectra (seismic)

A Spectrum analysis case reads a spectral function — a curve of spectral acceleration Sa(T) — and a referenced Modal case, then combines the modal responses (SRSS or CQC) in a chosen direction (X, Y, or XY). Define the spectral functions in Structure → Spectral Functions. You can build one three ways:

  • By code (EC8:2004) — pick Type 1 / Type 2, ground type A–E, the reference ground acceleration agR, importance factor γI and damping ξ. Choose Design (Sd) — which uses the behaviour factor q and the lower-bound factor β — or Elastic (Se). The soil parameters (S, TB, TC, TD) are derived and shown.
  • By national-annex zone — the same, driven by a seismicity zone that fixes agR.
  • User-defined — enter S, TB, TC, TD and ag directly, or a raw list of (T, Sa) points.

The response-spectrum result of a Spectrum case is the peak (absolute) response; when it enters a combination it becomes a seismic envelope (see below).

Combinations

Create them on the Combinations sub-tab. A combination references analysis cases only — eligible members are Linear, NonLinear, P-Delta (Geometric Nonlinear), and Spectrum cases. Modal and Mass cases cannot be combined.

NonLinear cases in combinations

A non-linear result cannot be scaled or added to others, so a combination that references a NonLinear case may contain only that single case, with a combination factor of 1.0 — no other analysis cases of any type. xdfem2D rejects combinations that break this rule.

Combination types:

Type Rule
LinearSum Σ coeffᵢ · caseᵢ (signed linear superposition)
Envelope Envelope: max/min of each component across the weighted cases
AbsSum Σ |coeffᵢ · caseᵢ| (sum of absolutes)
SRSS √(Σ (coeffᵢ · caseᵢ)²) (SRSS)

When a combination references a Spectrum case, the result becomes a seismic envelope: the gravity base ± Σ |coeffₛ · spectrumₛ|.

Automatic Eurocode combinations

Loads → Auto Comb. (EN 1990)… (Ctrl+Shift+C) generates ULS/SLS combinations from the load cases' action types. Generated combinations are folded into analysis-case references on the next refresh.

Construction sequences

A Sequence analysis case represents an incremental staged-construction analysis. Each sequence is composed of ordered phases — each phase adds elements, applies load cases as an increment, and optionally changes the provisional support set. The solver carries locked-in forces forward from phase to phase, so later members do not attract load that earlier ones already resisted.

Sequence cases are created and edited in Analysis → Variants Workspace… on the Sequences tab. They appear in the case drop-down alongside normal cases and combinations (order: analysis cases → sequences → combinations), and their results are navigated phase by phase using the phase selector in the toolbar. See Variants & Construction Sequences for the full workflow.

Running

Press F5 or the Run button. Results lock the model; unlock with Ctrl+L to edit (which clears results). See Results.