pystran.rigid module#
Define rigid link mechanical quantities.
- pystran.rigid.assemble_stiffness(Kg, member, i, j)[source]#
Assemble rigid link stiffness matrix.
- Parameters:
Kg – Global structural stiffness matrix.
member – Dictionary that defines the data of the member.
i – Dictionary that defines the data of the first joint of the member. This is the master.
j – Dictionary that defines the data of the second joint of the member. This is the subordinate joint.
- Returns:
Updated global matrix is returned.
- Return type:
array
See also
- pystran.rigid.rigid_link_stiffness(e_x, h, Gamma)[source]#
Compute rigid link stiffness matrix.
The stiffness matrix is computed as
\[\begin{split}K =\begin{bmatrix} C^T\Gamma C & -C^T\Gamma \\ -\Gamma C & \Gamma \\ \end{bmatrix}.\end{split}\]Here \(C\) is a matrix computed from the vector \(r = h e_x\), which is the difference between the location of the subordinate and the location of the master.
In three dimensions
\[\begin{split}C =\begin{bmatrix} 1 & \widetilde{r} \\ 0 & 1 \\ \end{bmatrix}.\end{split}\]Here :math:` widetilde{r}` is a skew matrix corresponding to the vector \(r\), and \(0\) and \(1\) stand for \(3\times3\) zero and identity matrices respectively.
Further, \(\Gamma\) is a diagonal matrix, such that the diagonal entries provide penalty on the difference between the individual degrees of freedom.
Reference: APPLICATION OF RIGID LINKS IN STRUCTURAL DESIGN MODELS, Sergey Yu. Fialko, International Journal for Computational Civil and Structural Engineering, 13(3) 119-137 (2017).
- Parameters:
e_x – Vector \(e_x\) is the direction vector along the axis of the member.
h – Length of the rigid link (distance between the joints).
Gamma – Diagonal matrix of the penalty constants.
- Returns:
Stiffness matrix.
- Return type:
array