+
+The Mode Indicator Functions are usually used on \(n\times p\) FRF matrix where \(n\) is a relatively large number of measurement DOFs and \(p\) is the number of excitation DOFs, typically 3 or 4.
+
+
+
+In these methods, the frequency dependent FRF matrix is subjected to a singular value decomposition analysis which thus yields a small number (3 or 4) of singular values, these also being frequency dependent.
+
+
+
+These methods are used to determine the number of modes present in a given frequency range, to identify repeated natural frequencies and to pre process the FRF data prior to modal analysis.
+
+
+
+From the documentation of the modal software:
+
+
+
+The MIF consist of the singular values of the Frequency response function matrix. The number of MIFs equals the number of excitations.
+By the powerful singular value decomposition, the real signal space is separated from the noise space. Therefore, the MIFs exhibit the modes effectively.
+A peak in the MIFs plot usually indicate the existence of a structural mode, and two peaks at the same frequency point means the existence of two repeated modes.
+Moreover, the magnitude of the MIFs implies the strength of the a mode.
+
+
+
+
+
+The Complex Mode Indicator Function is defined simply by the SVD of the FRF (sub) matrix:
+
+\begin{align*}
+ [H(\omega)]_{n\times p} &= [U(\omega)]_{n\times n} [\Sigma(\omega)]_{n\times p} [V(\omega)]_{p\times p}^H\\
+ [CMIF(\omega)]_{p\times p} &= [\Sigma(\omega)]_{p\times n}^T [\Sigma(\omega)]_{n\times p}
+\end{align*}
+
+
+
+
+We compute the Complex Mode Indicator Function. The result is shown on figure 1.
+The exact same curve is obtained when computed using the OROS software.
+
+
-
sed '/^\s*[0-9]*[XYZ][+-]:/!d' modal_analysis_updated/modes.asc > mat/mode_shapes.txt
-sed '/freq/!d' modal_analysis_updated/modes.asc | sed 's/.* = \(.*\)Hz/\1/' > mat/mode_freqs.txt
-sed '/damp/!d' modal_analysis_updated/modes.asc | sed 's/.* = \(.*\)\%/\1/' > mat/mode_damps.txt
-sed '/modal A/!d' modal_analysis_updated/modes.asc | sed 's/.* =\s\+\([-0-9.e]\++[0-9]\+\)\([-+0-9.e]\+\)i/\1 \2/' > mat/mode_modal_a.txt
-sed '/modal B/!d' modal_analysis_updated/modes.asc | sed 's/.* =\s\+\([-0-9.e]\++[0-9]\+\)\([-+0-9.e]\+\)i/\1 \2/' > mat/mode_modal_b.txt
+MIF = zeros(size(FRFs, 2), size(FRFs, 2), size(FRFs, 3));
+
+for i = 1:length(freqs)
+ [~,S,~] = svd(FRFs(:, :, i));
+ MIF(:, :, i) = S'*S;
+end
+
+
+
-Then we import them on Matlab.
+We can also compute the CMIF using the FRF matrix expressed in the same global frame.
+We compare the two CMIF on figure 2.
+
+
+
+They do not indicate the same resonance frequencies, especially around 110Hz.
+
+
+
+
MIF_O = zeros(size(FRFs_O, 2), size(FRFs_O, 2), size(FRFs_O, 3));
+for i = 1:length(freqs)
+ [~,S,~] = svd(FRFs_O(:, :, i));
+ MIF_O(:, :, i) = S'*S;
+end
+
+
+
+
+
+