ross.Guyan
Contents
ross.Guyan#
- class ross.Guyan(method='guyan', **kwargs)#
Guyan reduction method.
This method can be used to reduce model of the rotor system to a defined list of degrees of freedom (DOF).
- Parameters:
- rotor: rs.Rotor
The rotor object.
- speedfloat
Rotor speed.
- include_nodeslist of int, optional
List of the nodes to be included in the reduction.
- dof_mappinglist of str, optional
List of the local DOFs to be considered in the reduction. Valid values are: ‘x’, ‘y’, ‘z’, ‘alpha’, ‘beta’, ‘theta’, corresponding to:
‘x’ and ‘y’: lateral translations
‘z’: axial translation
‘alpha’: rotation about the x-axis
‘beta’: rotation about the y-axis
‘theta’: torsional rotation (about the z-axis)
Default is [‘x’, ‘y’].
- include_dofslist of int, optional
List of DOFs to be included in the reduction, e.g., DOFs with applied forces or probe locations.
Examples
>>> import ross as rs >>> rotor = rs.rotor_example() >>> size = 10000 >>> node = 3 >>> speed = 500.0 >>> t = np.linspace(0, 10, size) >>> F = np.zeros((size, rotor.ndof)) >>> dofx = rotor.number_dof * node + 0 >>> dofy = rotor.number_dof * node + 1 >>> F[:, dofx] = 10 * np.cos(2 * t) >>> F[:, dofy] = 10 * np.sin(2 * t) >>> mr = ModelReduction( ... rotor=rotor, ... speed=speed, ... method="guyan", ... include_dofs=[dofx, dofy] ... ) >>> F_reduct = mr.reduce_vector(F.T).T >>> np.where(F_reduct[5000, :] != 0)[0] array([4, 5])
Methods
- __init__(rotor, speed, include_nodes=None, dof_mapping=None, include_dofs=None, **kwargs)#
- get_transformation_matrix()#
Build transformation matrix
- Returns:
- Tgnp.ndarray
Transformation matrix for Guyan method.
- reduce_matrix(array)#
Transform a square matrix from complete to reduced model.
- Parameters:
- array: np.ndarray
Square matrix to be transformed.
- Returns:
- array_reducednp.ndarray
Reduced matrix.
- reduce_vector(array)#
Transform a vector from complete to reduced model.
- Parameters:
- array: np.ndarray
Vector to be transformed.
- Returns:
- array_reducednp.ndarray
Reduced vector.
- revert_vector(array_reduced)#
Transform a vector from reduced to complete model.
- Parameters:
- array_reduced: np.ndarray
Reduced vector to be reverted.
- Returns:
- arraynp.ndarray
Vector of complete model.
Attributes
subclasses