Loads
anaStruct allows the following loads on a structure. There are loads on nodes and loads on elements. Element loads are implicitly placed on the loads and recalculated during post processing.
Node loads
Point loads
Point loads are defined in x- and/ or y-direction, or by defining a load with an angle.
- SystemElements.point_load(node_id, Fx=0.0, Fy=0.0, rotation=0.0, Fz=None)[source]
Apply a point load to a node.
- Return type:
- Args:
node_id (Union[int, Sequence[int]]): The node ID to which to apply the load Fx (Union[float, Sequence[float]], optional): Force in the global X direction. Defaults to 0.0. Fy (Union[float, Sequence[float]], optional): Force in the global Y direction. Defaults to 0.0. rotation (Union[float, Sequence[float]], optional): Rotate the force clockwise by the given
angle in degrees. Defaults to 0.0.
- Raises:
FEMException: Point loads may not be placed at the location of inclined roller supports
Example
ss.add_element(location=[0, 1])
ss.point_load(ss.id_last_node, Fx=10, rotation=45)
ss.show_structure()
Bending moments
Moment loads apply a rotational force on the nodes.
- SystemElements.moment_load(node_id, Tz=0.0, Ty=None)[source]
Apply a moment load to a node.
- Return type:
- Args:
node_id (Union[int, Sequence[int]]): The node ID to which to apply the load Tz (Union[float, Sequence[float]]): Moment load (about the global Y direction) to apply
Example
ss.add_element([5, 0])
ss.moment_load(node_id=ss.id_last_node, Ty=20)
ss.show_structure()
Element loads
Q-loads are distributed loads. They can act perpendicular to the elements direction, parallel to the elements direction, and in global x and y directions.
q-loads
- SystemElements.q_load(q, element_id, direction='element', rotation=None, q_perp=None)[source]
Apply a q-load (distributed load) to an element.
- Return type:
- Args:
q (Union[float, Sequence[float]]): Value of the q-load element_id (Union[int, Sequence[int]]): The element ID to which to apply the load direction (Union["LoadDirection", Sequence["LoadDirection"]], optional):
“element”, “x”, “y”, “parallel”, or “perpendicular”. Defaults to “element”.
- rotation (Optional[Union[float, Sequence[float]]], optional): Rotate the force clockwise.
Rotation is in degrees. Defaults to None.
- q_perp (Optional[Union[float, Sequence[float]]], optional): Value of any q-load perpendicular
to the indicated direction/rotatione. Defaults to None.
- Raises:
FEMException: _description_
Example
ss.add_element([5, 0])
ss.q_load(q=-1, element_id=ss.id_last_element, direction='element')
ss.show_structure()