simdesign.rcmrf.bnsm.baselib.node

This module provides the class used to represent any structural node within the BNSM layer. Unlike other classes in baselib, this class does not require abstraction.

class simdesign.rcmrf.bnsm.baselib.node.Node(tag, coordinates, masses=None)[source]

Bases: object

Structural node representation in the BNSM layer. It provides methods to define the node in the OpenSees domain and to export equivalent Python and Tcl commands.

Variables:
  • tag (int) – Unique identifier of the node.

  • coordinates (List[float]) – Node coordinates [x, y, z].

  • masses (List[float]) – Nodal masses associated with each degree of freedom: [Mx, My, Mz, RMx, RMy, RMz].

  • nodal_mass (bool, default=True) – If True, masses are assigned directly to the node in OpenSees.

Parameters:
  • tag (int)

  • coordinates (List[float])

  • masses (List[float])

nodal_mass: bool = True
tag: int
coordinates: List[float]
masses: List[float]
add_to_ops()[source]

Adds the node object to OpenSees domain.

The node is created using the ops.node command. If nodal_mass is True and at least one mass component is non-zero, nodal masses are assigned using the -mass option.

Return type:

None

to_py()[source]

Gets the python command to construct the node object in OpenSees.

Returns:

Python command for constructing the node object in OpenSees.

Return type:

str

to_tcl()[source]

Gets the Tcl command to construct the node object in OpenSees.

Returns:

Tcl command for constructing the node object in OpenSees.

Return type:

str