Description
Class for setting the damping via N damping factors z_i for all the modes of the subassembly, where assembly n.modes = (boundary coords+internal modes) R^ = V'^-1 * Dd * V^-1 with Dd=diag { 2 z_1 w_1, 2 z_2 w_2, ..., 2 z_i w_i }, and V = eigenvectors of (M^, K^).
Note there can be more z_i than in the case of ChModalDampingFactorRmm, ex. if one has 2 dynamic modes and 6 static modes, here you can have 8 z_i.
#include <ChModalDamping.h>
Public Member Functions | |
ChModalDampingFactorAssembly (const ChVectorDynamic<> &factors) | |
Construct from the z_i in coefficients in Rmm=diag { 2 z_1 w_1, 2 z_2 w_2, ..., 2 z_i w_i } for modes, and from alpha-beta Rayleight coefficients for boundary nodes. | |
virtual void | ComputeR (ChModalAssembly &assembly, const ChMatrixDynamic<> &modal_M, const ChMatrixDynamic<> &modal_K, const ChMatrixDynamic<> &Psi, ChMatrixDynamic<> &modal_R) const |
Public Attributes | |
ChVectorDynamic | damping_factors |
Member Function Documentation
◆ ComputeR()
|
virtual |
NOTE: when using ChUnsymGenEigenvalueSolverNullspaceDirect the V eigenvectors are normalized in the complex sense,
Implements chrono::modal::ChModalDamping.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_modal/ChModalDamping.h
- /builds/uwsbel/chrono/src/chrono_modal/ChModalDamping.cpp