pyHarm.Analysis.Linear_Analysis =============================== .. py:module:: pyHarm.Analysis.Linear_Analysis Classes ------- .. autoapisummary:: pyHarm.Analysis.Linear_Analysis.Linear_Analysis Module Contents --------------- .. py:class:: Linear_Analysis(inputData: dict, System: pyHarm.Systems.ABCSystem.ABCSystem) Bases: :py:obj:`pyHarm.Analysis.ABCAnalysis.ABCAnalysis` Modal analysis and linear forced response analysis. Performs a linear modal analysis and then proceeds to a linear FRF by using mode superposition .. attribute:: system ABCSystem associated with the analysis. :type: ABCSystem .. attribute:: analysis_options input dictionary completed with the default values if keywords are missing. :type: dict .. attribute:: flag_print if True, prints a message after each Solve method. :type: bool .. attribute:: SolList list of SystemSolution stored. :type: list[SystemSolution] .. attribute:: eigensol output dictionary containing the eigenfrequencies and the eigenvectors :type: dict .. py:attribute:: factory_keyword :type: str :value: 'linear_analysis' keyword that is used to call the creation of this class in the system factory. :type: str .. py:attribute:: name :value: 'Linear modal and FRF analysis' .. py:attribute:: default default dictionary for the analysis. :type: dict .. py:attribute:: system .. py:attribute:: analysis_options .. py:attribute:: flag_print .. py:attribute:: SolList :value: [] .. py:attribute:: eigensol .. py:method:: initialise() Retrieves the mass and stiffness matrix of the assembled system :returns: full stiffness matrix of the system M_global (np.ndarray): full mass matrix of the system :rtype: K_global (np.ndarray) .. py:method:: modal_analysis(K, M) Eigenvalue analysis leading to the eigenfrequencies and the normalized right eigenvectors :param K: full stiffness matrix of the system :type K: np.ndarray :param M: full mass matrix of the system :type M: np.ndarray :returns: eigenfrequencies in rad/s phi (np.ndarray): normalized to unity right eigenvectors :rtype: omega (np.ndarray) .. py:method:: compute_linear_FRF(K, M, phi) Linear frequency response function by means of mode superposition :param K: full stiffness matrix of the system :type K: np.ndarray :param M: full mass matrix of the system :type M: np.ndarray :param phi: normalized to unity right eigenvectors :type phi: np.ndarray .. py:method:: Solve(x0=None, **kwargs) Solving step of the analysis. .. py:method:: makeStep(K, M) Makes a whole step of the analysis. :param K: full stiffness matrix of the system :type K: np.ndarray :param M: full mass matrix of the system :type M: np.ndarray :returns: eigenfrequencies in rad/s phi (np.ndarray): normalized to unity right eigenvectors :rtype: omega (np.ndarray)