The HDRBYamamoto2DLink class creates a bi-axial high-damping rubber bearing element with two-nodes in two-dimensions. The number of degree-of-freedom depend on the node. Currently node with 2 (two translation) and 3 (two translation and one rotation) dofs are supported. The main purpose of this element in 2D is to force a uni-axial behavior along the orthogonal direction to local axis 1. Figure provides a simple representation of this element where (1) and (2) represent the start and end nodes.
The linkHDRBYamamoto2DLink mass matrix in global coordinates is \(\textbf{M}^\textrm{e} = 0\). On the other hand, the HDRBYamamoto2DLink solves the differential equation:
\[ \dot{\textbf{q}} = \frac{\dot{\textbf{p}}}{\alpha} \left( \hat{\dot{\textbf{p}}} - \|\textbf{q}\|^n \, \bar{\textbf{q}} \right) \,, \]
and the force is computed as
\[F(\textbf{p},\textbf{q}) = -\hat{\textbf{p}} \, F_r - \textbf{q} \, F_s\,, \]
where \(F_r = \tau_r\,A\), \(F_s = \tau_s\,A\), \(A\) is the rubber area, and
\[ \tau_r = \begin{cases} 0.22\,\gamma,& 0\leq \gamma \leq 1.8 \\ 0.22\,\gamma + 0.20(\gamma-1.8)^2, & \gamma > 1.8 \end{cases} \]
\[ \tau_s = 0.25 + 0.02\,\gamma + 0.016\,\gamma^3\,. \]
Note that the coefficients provided in previous equation are such that units in \(\tau_r\) and \(\tau_s\) are [MPa]. The local to global transformation matrix is
\[ \textbf{T}_\textrm{e} = \begin{bmatrix} \hat{\textbf{N}} & 0 \\ 0 & \hat{\textbf{N}} \end{bmatrix} \,. \]
The stiffness matrices as well as the force vector in global coordinates are defined as:
\[ \textbf{K}^\textrm{e} = \textbf{T}_\textrm{e}^\top \, \mathcal{K}^\textrm{e} \, \textbf{T}_\textrm{e} \,, \; \textbf{F}^\textrm{e} = \textbf{T}_\textrm{e}^\top \, \mathcal{F}^\textrm{e} \,, \]
and \(\hat{\textbf{N}} = [\hat{\textrm{n}}_1, \hat{\textrm{n}}_2, \hat{\textrm{n}}_3]^\top\) is the unit matrix of local coordinate axes, and \(\hat{\textrm{n}}_\textrm{i}\) is the unit vector of the i-th local coordinate axis. Note that \(\hat{\textbf{N}} \in \mathbb{R}^{3 \times 3}\), and \(\hat{\textrm{n}}_\textrm{i} \in \mathbb{R}^3\). Note that \(\textbf{M}^\textrm{e}, \textbf{K}^\textrm{e} \in \mathbb{R}^{\textrm{N}_\textrm{dof}^\textrm{e} \times \textrm{N}_\textrm{dof}^\textrm{e}}\) with \(\textrm{N}_\textrm{dof}^\textrm{e} = 4, \text{ or } 6\) (solid or structural).
REFERENCE:
The python Pre-Analysis in the 01-Pre_Process/Method/Attach.py file provides with an interface to populate the Entities
dictionary. This file contains several functions to populate specific fields. For example, to create a HDRBYamamoto2DLink, using json format, use:
addElement(tag, name='HDRBYamamoto2DLink', conn, attributes):
Example
A HDRBYAMAMOTO2DLINK element can be defined using the python interface as follows:
SVL.addElement(tag=1, name='HDRBYamamoto2DLink', conn=[1,2], attributes={'De': 1.3,'Di': 0.3,'Hr': 0.216})
Application
Please refer to the A12-DY_2D_UniAxial_YamamotoHDRB_Link.py file located at 03-Validations/01-Debugging/ to see an example on how to define a HDRBYamamoto2DLink element.
On the contrary, the 01-Pre_Process/Method/Remove.py file provides with an interface to depopulate the Entities
dictionary. For example, to remove an already define Element, use:
The C++ Run-Analysis in the 02-Run_Process/04-Elements/02-Link/HDRBYamamoto2DLink.cpp file provides the class implementation. A HDRBYamamoto2DLink element is created using the built-in json parse-structure provided in the Driver.hpp. A HDRBYamamoto2DLink is defined inside the "Elements" json field indicating its "Tag" as follows,
{ "Elements": { "Tag": { "name" : "HDRBYAMAMOTO2DLINK", "conn" : [ ], "attributes": { "De": double, "Di": double, "Hr": double, "dim": int } } } }
Variable | Description |
---|---|
Tag | Unique positive element identifier. |
conn | The element connectivity node array. |
De | External diameter of rubber. |
Di | Internal diameter of rubber. |
Hr | Total rubber height. |
dim | The number of degree of freedom of the nodes (2, or 3). |
A uniaxial HDRBYAMAMOTO2DLINK between nodes 1 and 2 with 2 dofs in a 2D problem is constructed as:
{ "Elements": { "1": { "name" : "HDRBYAMAMOTO2DLINK", "conn" : [1,2], "attributes": { "De": 1.3, "Di": 0.3, "Hr": 0.216, "dim": 2 } } } }