anastruct.fem.system_components.assembly
Functions
|
Set a force vector on a node within the system |
|
Prepare the system force vector for the matrix assembly |
|
Apply a moment load to the system |
|
Apply a point load to the system |
|
Apply a perpendicular q load to the system |
|
Apply a parallel qn load to the system |
|
Apply a dead load self-weight to an element in the system |
|
Assemble the system matrix |
|
Set the displacement vector for the system |
|
Process the conditions of the system |
|
Process the supports of the system |
Module Contents
- anastruct.fem.system_components.assembly.set_force_vector(system: anastruct.fem.system.SystemElements, force_list: List[Tuple[int, anastruct._types.AxisNumber, float]]) numpy.ndarray[source]
Set a force vector on a node within the system
- Args:
system (SystemElements): System to which the force vector is applied force_list (List[Tuple[int, AxisNumber, float]]): List of tuples containing
the node id, direction (1 = x, 2 = y, 3 = z), and force magnitude
- Returns:
np.ndarray: System force vector with the applied forces on the nodes
- anastruct.fem.system_components.assembly.prep_matrix_forces(system: anastruct.fem.system.SystemElements) None[source]
Prepare the system force vector for the matrix assembly
- Args:
system (SystemElements): System to which the force vector is applied
- anastruct.fem.system_components.assembly.apply_moment_load(system: anastruct.fem.system.SystemElements) None[source]
Apply a moment load to the system
- Args:
system (SystemElements): System to which the moment load is applied
- anastruct.fem.system_components.assembly.apply_point_load(system: anastruct.fem.system.SystemElements) None[source]
Apply a point load to the system
- Args:
system (SystemElements): System to which the point load is applied
- anastruct.fem.system_components.assembly.apply_perpendicular_q_load(system: anastruct.fem.system.SystemElements) None[source]
Apply a perpendicular q load to the system
- Args:
system (SystemElements): System to which the perpendicular q load is applied
- anastruct.fem.system_components.assembly.apply_parallel_qn_load(system: anastruct.fem.system.SystemElements) None[source]
Apply a parallel qn load to the system
- Args:
system (SystemElements): System to which the parallel qn load is applied
- anastruct.fem.system_components.assembly.dead_load(system: anastruct.fem.system.SystemElements, g: float, element_id: int) None[source]
Apply a dead load self-weight to an element in the system
- Args:
system (SystemElements): System to which the dead load is applied g (float): Magnitude of the dead load self-weight element_id (int): Element id to which the dead load is applied
- anastruct.fem.system_components.assembly.assemble_system_matrix(system: anastruct.fem.system.SystemElements, validate: bool = False, geometric_matrix: bool = False) None[source]
Assemble the system matrix Shape of the matrix = n nodes * n d.o.f. = n * 3
- Args:
system (SystemElements): System to be prepared validate (bool, optional): Whether or not to validate the system. Defaults to False. geometric_matrix (bool, optional): Whether or not to include the current geometric matrix. Defaults to False.
- anastruct.fem.system_components.assembly.set_displacement_vector(system: anastruct.fem.system.SystemElements, nodes_list: List[Tuple[int, anastruct._types.AxisNumber]]) numpy.ndarray[source]
Set the displacement vector for the system
- Args:
system (SystemElements): System to which the displacement vector is applied nodes_list (List[Tuple[int, AxisNumber]]): List of tuples containing
the node id and the direction (1 = x, 2 = y, 3 = z)
- Raises:
- IndexError: This often occurs if you set supports before the all the elements are
modelled. First finish the model.
- Returns:
np.ndarray: System displacement vector with the applied displacements on the nodes
- anastruct.fem.system_components.assembly.process_conditions(system: anastruct.fem.system.SystemElements) None[source]
Process the conditions of the system
- Args:
system (SystemElements): System to be processed
- anastruct.fem.system_components.assembly.process_supports(system: anastruct.fem.system.SystemElements) None[source]
Process the supports of the system
- Args:
system (SystemElements): System to be processed