Structural Model#

class sgio.StructuralModel(name: str = '', fe_model: FEModel | None = None, boundary_conditions: list[Any] | None = None, loads: list[Any] | None = None, steps: list[Any] | None = None, interactions: list[Any] | None = None, coordinate_systems: Mapping[str, Any] | None = None, extras: Mapping[str, Any] | None = None)#

Bases: object

Minimal structural-analysis application model built on top of FEModel.

Parameters:
  • name (str, optional) – Model name. If fe_model is given, this value overrides fe_model.name when non-empty.

  • fe_model (FEModel, optional) – Backing finite element model.

  • boundary_conditions (list[Any], optional) – Structural boundary-condition payloads.

  • loads (list[Any], optional) – Structural load payloads.

  • steps (list[Any], optional) – Analysis step payloads.

  • interactions (list[Any], optional) – Structural interaction payloads.

  • coordinate_systems (mapping[str, Any], optional) – Structural coordinate systems indexed by name.

  • extras (mapping[str, Any], optional) – Additional structural-level metadata.

copy() StructuralModel#

Create a deep copy of the structural model.

Returns:

Deep copy of the current instance.

Return type:

StructuralModel

classmethod from_fe(fe_model: FEModel) StructuralModel#

Create a structural model from finite-element data.

Parameters:

fe_model (FEModel) – Source finite element model.

Returns:

New structural model with a deep-copied backing FEModel.

Return type:

StructuralModel

property fe: FEModel#

Backing finite element model.

property fe_model: FEModel#

Backing finite element model.

property materials: dict[str, Any]#

Materials indexed by material name.

property mesh: SGMesh | None#

Finite element mesh.

property name: str#

Model name.

property orientations: dict[str, Orientation]#

Finite element orientations indexed by name.

property sections: dict[str, Section]#

Finite element sections indexed by section name.