The Damping class creates a class which emulates loss of energy in an structural element. In other words, the Damping class defines how the damping \(\mathbf{C}\) matrix will be constructed. This matrix is assembled using the object, and currently there are 3 options available:
\[ \mathbf{C} = \mathbf{0} \,. \]
\[ \mathbf{C} = a_m \,\mathbf{M} + a_k \,\mathbf{K} \,. \]
\[ \mathbf{C} = \mathbf{M} \sum_{\textrm{i}=1}^{N_p} a_\textrm{j} \left( \mathbf{M}^{-1} \mathbf{K} \right) \,. \]
REFERENCES:
The python 01-Pre_Process/Method/Attach.py file provides with an interface to populate the Entities
dictionary. A Surface can be added using the addDamping() function. This function will transform the provided information into json format to be parse in the Run-Analysis.
addDamping(tag, name, attributes):
Example
A DAMPING can be defined using the python interface as follows:
SVL.addDamping(tag=1, name='Rayleigh', attributes={'am': 0.1244195110, 'ak': 0.0007878958, 'list': 'ALL'})
Application
Please refer to the D21-DY_Damped_Rectangular_BodyLoad_Elastic_Frame2.py file located at 03-Validations/01-Debugging/ to see an example on how to define damping using the addDamping function.
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 Damping, use:
The C++ 02-Run_Process/12-Utilities/Damping.cpp file provides the damping declaration. A Damping is added to a Element using the Element::SetDamping() member function. A Damping is defined inside the "Dampings" json field indicating its "Tag" as follows,
{ "Dampings": { "Tag": { "name" : "FREE", "attributes": { "list" : [ ] } } } }
Variable | Description |
---|---|
Tag | Unique Damping object identifier. |
list | List of element identifiers that share this Damping model. |
{ "Dampings": { "Tag": { "name" : "RAYLEIGH", "attributes": { "am" : double, "ak" : double, "list" : [ ] } } } }
Variable | Description |
---|---|
Tag | Unique Damping object identifier. |
am | Coefficient associated to mass matrix to construct the damping \(\textbf{C}\) matrix. |
ak | Coefficient associated to stiffness matrix to construct the damping \(\textbf{C}\) matrix. |
list | List of element identifiers that share this Damping model. |
{ "Dampings": { "Tag": { "name" : "CAUGHEY", "attributes": { "aj" : [ ], "list" : [ ] } } } }
Variable | Description |
---|---|
Tag | Unique Damping object identifier. |
aj | List of parameters to construct the damping \(\textbf{C}\) matrix. |
list | List of element identifiers that share this Damping model. |
A FREE DAMPING applied to elements with identifier 1,2, and 3 is constructed as:
{ "Dampings": { "1": { "name" : "FREE", "attributes": { "list" : [1,2,3] } } } }