Defining structural damping ratio #1003
rahultarale
started this conversation in
General
Replies: 1 comment
-
To calculate the damping matrix where:
In ROSS, the damping matrix can be implemented with the following script: import scipy as sp
import numpy as np
import ross as rs
# Initialize the rotor system
rotor = ...
n = rotor.ndof
# Define the damping ratios for each mode
# Make sure the number of ratios matches the system's degrees of freedom (n)
damping_ratio = [...]
# Retrieve the mass matrix for the rotor system
M = rotor.M(0)
# Retrieve the stiffness matrix removing the cross-coupled coefficients
# of bearing stiffness matrix
K_aux = rotor.K(0)
for elm in rotor.bearing_elements:
dofs = list(elm.dof_global_index.values())
# If 4 dof model:
K_aux[np.ix_(dofs, dofs)] -= elm.K(0) * [[0, 1], [1, 0]]
# If 6 dof model:
# K_aux[np.ix_(dofs, dofs)] -= elm.K(0) * [[0, 1, 0], [1, 0, 0], [0, 0, 0]]
# Calculate the natural frequencies
evals, evectors = sp.linalg.eigh(K_aux, M)
wn = np.sqrt(evals)
# Initialize the damping matrix
C = np.zeros((n, n))
# Populate the diagonal elements of the damping matrix
for r in range(n):
C[r, r] = 2 * damping_ratio[r] * wn[r] * M[r, r]
# Replace the rotor's damping matrix method with the custom one defined above
rotor.C = lambda frequency: C
# Run the unbalance response analysis
unbalance = rotor.run_unbalance_response(...) |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
please help me to understand how to apply structural damping ratio while performing unbalance response analysis.
Beta Was this translation helpful? Give feedback.
All reactions