simdesign.rcmrf.bdim.eu_cdl.loads

This module provides the class implementations representing loads for the eu_cdl design class in the BDIM layer.

class simdesign.rcmrf.bdim.eu_cdl.loads.Variable(*, floor, roof, staircase)[source]

Bases: VariableBase

Variable load (Q) model implementation for the eu_cdl design class.

This class directly uses the behaviour defined in VariableBase.

See also

VariableBase

Base class defining the core behaviour and configuration.

Parameters:
  • floor (float)

  • roof (float)

  • staircase (float)

class simdesign.rcmrf.bdim.eu_cdl.loads.Permanent(*, floor, roof, staircase, gamma_rc)[source]

Bases: PermanentBase

Permanent load (G) model implementation for the eu_cdl design class.

This class directly uses the behaviour defined in PermanentBase.

See also

PermanentBase

Base class defining the core behaviour and configuration.

Parameters:
  • floor (float)

  • roof (float)

  • staircase (float)

  • gamma_rc (float)

class simdesign.rcmrf.bdim.eu_cdl.loads.Combination(*, tag, loads, masses=None)[source]

Bases: CombinationBase

Load combination model implementation for the eu_cdl design class.

This class directly uses the behaviour defined in CombinationBase.

See also

CombinationBase

Base class defining the core behaviour and configuration.

Parameters:
  • tag (str)

  • loads (Dict[Literal['G', 'Q', 'E+X', 'E-X', 'E+Y', 'E-Y'], float])

  • masses (Dict[Literal['G', 'Q'], float] | None)

class simdesign.rcmrf.bdim.eu_cdl.loads.LoadsData(*, variable, permanent, combinations, eccentricity=0.0)[source]

Bases: LoadsDataBase

Loads data model implementation for the eu_cdl design class.

This class extends LoadsDataBase by narrowing the attribute types.

Variables:
  • variable (Variable) – Object representing variable (live) loads.

  • permanent (Permanent) – Object representing permanent (dead) loads.

  • combinations (List[Combination]) – List of load combination objects.

Parameters:

See also

LoadsDataBase

Base class defining the core behaviour and configuration.

variable: Variable
permanent: Permanent
combinations: List[Combination]
class simdesign.rcmrf.bdim.eu_cdl.loads.Loads[source]

Bases: LoadsBase

Loads implementation for the eu_cdl design class.

This class extends LoadsBase by narrowing the attribute types and overriding get_seismic_loads() to use uniform weight distribution.

Variables:
  • variable (Variable) – Object representing variable (live) loads.

  • permanent (Permanent) – Object representing permanent (dead) loads.

  • combinations (List[Combination]) – List of load combinations.

  • _data_path (Path) – Path to the file containing loads data.

See also

LoadsBase

Base class defining the core behaviour and configuration.

variable: Variable
permanent: Permanent
combinations: List[Combination]
get_seismic_loads(**kwargs)[source]

Calculate and return seismic loads.

Unlike get_seismic_loads(), this implementation distributes forces proportionally to storey weight alone, without height weighting. The heights parameter is therefore not required and should not be passed.

Parameters:

**kwargs (dict[float | np.ndarray]) –

Keyword arguments consumed by this method:

betafloat

Design lateral load factor expressed as a fraction of building weight.

weightsnp.ndarray

Array of storey weights in kN.

Returns:

Total base shear force (kN) and seismic forces acting at each storey (kN), distributed proportionally to storey weight. The forces array has the same shape as weights.

Return type:

Tuple[np.float64, np.ndarray]

Notes

**kwargs are used instead of explicit keyword arguments in order to satisfy the interface expected by run_seismic_load_cases().