simdesign.rcmrf.bnsm.baselib.foundation

This module provides a base class for representing structural foundations within the BNSM layer and for building and exporting their OpenSees representations.

class simdesign.rcmrf.bnsm.baselib.foundation.FoundationBase(design, mass)[source]

Bases: ABC

Abstract Base Class for foundation implementations in BNSM layer. It provides methods to define a foundation in the OpenSees domain and to export equivalent Python and Tcl commands.

The foundation is defined using a single node, which carries the lumped mass and is fully constrained in all degrees of freedom. To model soil-structure interaction, this class needs to be extended.

Variables:
  • foundation_node (Node) – Foundation node.

  • design (JointDesign) – Instance of support joint design information model.

Parameters:
foundation_node: Node
design: JointBase
add_to_ops()[source]

Adds all the objects that are necessary for defining foundation into the OpenSees domain.

Return type:

None

to_py()[source]

Gets the Python commands to define all the objects that are necessary for defining foundation in the OpenSees domain.

Returns:

List of Python commands for constructing the components of foundation in OpenSees.

Return type:

List[str]

to_tcl()[source]

Gets the Tcl commands to define all the objects that are necessary for defining foundation in the OpenSees domain.

Returns:

List of Tcl commands for constructing the components of foundation in OpenSees.

Return type:

List[str]