LineSupport#
- class planestress.pre.boundary_condition.LineSupport(point1: tuple[float, float], point2: tuple[float, float], direction: str, value: float = 0.0)[source]#
Bases:
LineBoundaryCondition
Class for adding supports along a line.
- Variables:
mesh_tag – Tagged line object.
Methods
Applies the boundary condition.
Gets the degrees of freedom based on the BC direction.
Returns a list of unique node indexes along the line BC.
- __init__(point1: tuple[float, float], point2: tuple[float, float], direction: str, value: float = 0.0) None [source]#
Inits the LineSupport class.
- Parameters:
point1 (tuple[float, float]) – Point location (
x
,y
) of the start of the line support.point2 (tuple[float, float]) – Point location (
x
,y
) of the end of the line support.direction (str) – Direction of the line support, either
"x"
or"y"
(rollers), or"xy"
(pin).value (float) – Imposed displacement to apply to the line support. Defaults to
0.0
, i.e. a line support with fixed zero displacement.
Example
TODO.
- apply_bc(k: lil_array, f: npt.NDArray[np.float64]) tuple[lil_array, npt.NDArray[np.float64]] [source]#
Applies the boundary condition.
- Parameters:
k (lil_array) – Stiffness matrix.
f (npt.NDArray[np.float64]) – Load vector.
- Returns:
Modified stiffness matrix and load vector (
k
,f
).- Return type:
tuple[lil_array, npt.NDArray[np.float64]]