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] } } } }