Saltar a contenido

Análisis modal

Problema generalizado de valores propios

Para analizar la vibración libre de un medio continuo, este se discretiza espacialmente y se modela como un sistema de múltiples grados de libertad con masas concentradas, como se muestra en la figura 2.3.1. Para un problema de vibración libre no amortiguada, la ecuación gobernante (ecuación de movimiento) es la siguiente.

\[\begin{equation} M \ddot{u} + K u = 0 \label{eq:2.3.1} \end{equation}\]

Aquí, \(u\) es el vector de desplazamientos generalizados, \(M\) es la matriz de masa y \(K\) es la matriz de rigidez. Sea \(\omega\) la frecuencia angular natural, sean \(a\) y \(b\) constantes arbitrarias que no son simultáneamente nulas y sea \(x\) un vector. Se define la función

\[\begin{equation} u(t) = (a \sin \omega t + b \cos \omega t ) x \label{eq:2.3.2} \end{equation}\]

Su segunda derivada es

\[\begin{equation} \ddot{u}(t) = -\omega^2 (a \sin \omega t + b \cos \omega t) x \label{eq:2.3.3} \end{equation}\]

Al sustituir la ecuación \(\eqref{eq:2.3.2}\) y la ecuación \(\eqref{eq:2.3.3}\) en la ecuación \(\eqref{eq:2.3.1}\), se obtiene

\[\begin{equation} M \ddot{u} + K u = (a \sin \omega t + b \cos \omega t) (K-\omega^2 M) x = 0 \label{eq:2.3.4} \end{equation}\]

Con ello se obtiene la relación anterior.

Para una vibración no trivial, \(a \sin \omega t + b \cos \omega t\) no es idénticamente nulo. Por tanto,

\[ (K-\omega^2M)x=0 \]

se obtiene la relación anterior. Así, al establecer \(\lambda=\omega^2\), resulta

\[\begin{equation} K x = \lambda M x \label{eq:2.3.5} \end{equation}\]

Con ello se obtiene la ecuación anterior.

El escalar \(\lambda\) se denomina valor propio, el vector \(x\) se denomina vector propio y el problema expresado por la ecuación \(\eqref{eq:2.3.5}\) se denomina problema generalizado de valores propios.

La frecuencia angular natural \(\omega\) se obtiene a partir del valor propio \(\lambda=\omega^2\), y el vector propio correspondiente \(x\) representa un modo de vibración.

Ejemplo de un sistema de múltiples grados de libertad para vibración libre no amortiguada

Figura 2.3.1 Ejemplo de un sistema de múltiples grados de libertad para vibración libre no amortiguada

Propiedades y supuestos de las matrices

Para el problema generalizado de valores propios \(Kx=\lambda Mx\) obtenido en la sección anterior, este manual supone que las matrices consideradas son simétricas. En el caso de matrices complejas, esto corresponde a matrices hermíticas; en el de matrices reales, a matrices simétricas.

Sea \(k_{ij}\) el elemento \(ij\) de la matriz \(K\). La propiedad hermítica se expresa como

\[\begin{equation} k_{ij} = \bar{k}_{ji} \label{eq:2.3.6} \end{equation}\]

donde \(\bar{k}_{ji}\) es el conjugado complejo de \(k_{ji}\). Para matrices reales, esta relación se convierte en \(k_{ij}=k_{ji}\).

Una matriz real simétrica \(H\) es definida positiva si, para todo vector no nulo \(x\),

\[\begin{equation} x^{t} H x > 0 \label{eq:2.3.7} \end{equation}\]

se cumple la desigualdad anterior. En este caso, todos los valores propios de \(H\) son positivos.

En un problema estructural de valores propios, la matriz de masa \(M\) suele tratarse como definida positiva. Sin embargo, la matriz de rigidez \(K\) puede ser semidefinida positiva dependiendo de las restricciones y puede tener valores propios nulos correspondientes a modos de cuerpo rígido.

Iteración inversa con desplazamiento

En el análisis estructural práctico mediante el método de los elementos finitos, por lo general no se necesitan todos los valores propios; a menudo bastan unos pocos valores propios de orden bajo. HEC-MW está concebido para problemas de gran escala, cuyas matrices son grandes y extremadamente dispersas, con muchos elementos nulos. Por tanto, es importante calcular de forma eficiente los valores propios de los modos de orden bajo teniendo en cuenta estas características.

Para un desplazamiento \(\sigma\), si \(-\sigma\) no es un valor propio y \(K+\sigma M\) es no singular, la ecuación \(\eqref{eq:2.3.5}\) puede transformarse como sigue.

\[\begin{equation} (K + \sigma M)^{-1} M x = \frac{1}{\lambda+\sigma} x \label{eq:2.3.8} \end{equation}\]

Esta transformación no modifica el vector propio \(x\) y transforma el valor propio \(\lambda\) en \(1/(\lambda+\sigma)\).

En consecuencia, cuanto más próximo está \(\lambda\) a \(-\sigma\), mayor es el valor absoluto del valor propio transformado. En un problema estructural de valores propios, \(\lambda \geq 0\) y \(\sigma \geq 0\), por lo que el valor propio más bajo se transforma en el valor propio de mayor valor absoluto. Aprovechando esta propiedad, al aplicar a la ecuación \(\eqref{eq:2.3.8}\) un método iterativo que tiende a converger primero hacia los valores propios de gran valor absoluto, los valores propios de orden bajo pueden obtenerse eficazmente en orden ascendente.

Este método se denomina iteración inversa con desplazamiento.

En los análisis con restricciones, FrontISTR establece \(\sigma = 0\), y la ecuación \(\eqref{eq:2.3.8}\) se convierte en \(K^{-1} M x = \frac{1}{\lambda} x\), es decir, en una iteración inversa sin desplazamiento. En un análisis libre-libre sin restricciones, \(K\) es singular porque posee valores propios nulos correspondientes a modos de cuerpo rígido; asignar un valor positivo a \(\sigma\) regulariza \(K+\sigma M\). El valor de \(\sigma\) se especifica mediante SIGMA en !EIGEN.

Método de Lanczos

Motivo de su uso (comparación con el método de Jacobi)

El método de Jacobi es un método clásico bien conocido.

Es eficaz cuando la matriz es pequeña y densa. Sin embargo, como las matrices tratadas por HEC-MW son grandes y dispersas, no se adopta el método de Jacobi; en su lugar se utiliza el método iterativo de Lanczos.

Algoritmo y características

Propuesto por C. Lanczos en la década de 1950, este método es un algoritmo para tridiagonalizar una matriz y presenta las siguientes características.

  • Es un método iterativo que permite realizar el cálculo manteniendo la matriz dispersa.
  • Sus operaciones consisten principalmente en productos matriz-vector, por lo que se presta bien a la paralelización.
  • Se adapta bien a la descomposición geométrica del dominio asociada a las mallas de elementos finitos.
  • Permite realizar cálculos eficientes limitando el número de valores propios o el intervalo de modos que se desea obtener.

El método de Lanczos parte de un vector inicial, construye sucesivamente vectores ortogonales y obtiene una base de un subespacio de Krylov.

En aritmética de precisión finita, los errores de redondeo pueden hacer que los vectores pierdan la ortogonalidad. Para reducir este efecto, la implementación de FrontISTR reortogonaliza cada vector con respecto a los vectores de la base de Lanczos ya obtenidos.

Interpretación geométrica (subespacio de Krylov)

Al aplicar los siguientes cambios de variable a la ecuación \(\eqref{eq:2.3.8}\),

\[ A = (K + \sigma M)^{-1} M \]
\[\begin{equation} \frac{1}{\lambda+\sigma}= \zeta \label{eq:2.3.9} \end{equation}\]

el problema puede reescribirse como

\[\begin{equation} A x = \zeta x \label{eq:2.3.10} \end{equation}\]

Con ello se obtiene la ecuación anterior.

Para un vector no nulo arbitrario \(q_0\),

\[ q_0,\ Aq_0,\ A^2q_0,\ldots,A^{m-1}q_0 \]

el espacio generado por estos vectores,

\[ \mathcal{K}_m(A,q_0) = \operatorname{span} \{q_0,Aq_0,A^2q_0,\ldots,A^{m-1}q_0\} \]

se denomina subespacio de Krylov.

El método de Lanczos construye sucesivamente una base de este subespacio de Krylov.

FrontISTR utiliza el siguiente producto escalar asociado a la matriz de masa \(M\)

\[ \langle x,y\rangle_M = x^T M y \]

para ortonormalizar la base. El producto escalar \(\langle x,y\rangle\) y la norma \(\|x\|\) que se muestran en las figuras siguientes se interpretan en los cálculos de FrontISTR como este producto escalar asociado a \(M\) y la correspondiente norma asociada a \(M\)

\[ \|x\|_M=\sqrt{x^T M x} \]

respectivamente.

Se aplica al vector arbitrario \(q_0\) la transformación lineal definida por la matriz \(A\), como se muestra en la figura 2.3.2.

Transformación lineal de \(q_0\) mediante la matriz \(A\)

Figura 2.3.2 Transformación lineal de \(q_0\) mediante la matriz \(A\)

El vector transformado se ortogonaliza dentro del espacio generado por él y el vector original. En concreto, se realiza la ortogonalización de Gram-Schmidt que se muestra en la figura 2.3.3. Sea \(r_1\) el vector resultante; al normalizarlo se obtiene \(q_1\).

Vector \(q_1\) ortogonal a \(q_0\)

Figura 2.3.3 Vector \(q_1\) ortogonal a \(q_0\)

Mediante el mismo procedimiento se obtiene \(q_2\) a partir de \(q_1\). En este caso, \(q_2\) es ortogonal tanto a \(q_1\) como a \(q_0\), como se muestra en la figura 2.3.4.

Vector \(q_2\) ortogonal a \(q_1\) y a \(q_0\)

Figura 2.3.4 Vector \(q_2\) ortogonal a \(q_1\) y a \(q_0\)

De este modo, el método de Lanczos construye sucesivamente una base ortonormal del subespacio de Krylov. En teoría, la simetría del problema de valores propios permite expresar esta iteración como una recurrencia de tres términos que utiliza los vectores de base más recientes.

Sin embargo, la implementación de FrontISTR reortogonaliza cada vector con respecto a los vectores de la base de Lanczos ya obtenidos mediante el producto escalar asociado a \(M\), para reducir la pérdida de ortogonalidad causada por la aritmética de precisión finita.

Tridiagonalización

En la iteración de Lanczos de FrontISTR, los vectores de base se ortonormalizan con respecto al producto escalar asociado a \(M\) descrito en la sección anterior, por lo que

\[ q_i^T M q_j = \delta_{ij} \]

se cumple la relación anterior.

Utilizando la matriz \(A\) de la ecuación \(\eqref{eq:2.3.10}\), la iteración teórica de Lanczos se expresa como

\[\begin{equation} A q_i = \beta_i q_{i-1} + \alpha_i q_i + \beta_{i+1} q_{i+1} \label{eq:2.3.11} \end{equation}\]

la recurrencia de tres términos anterior.

En primer lugar, se define \(\alpha_i\) mediante

\[ \alpha_i = q_i^T M A q_i \]

A continuación, se define el residuo provisional como

\[ \tilde{r}_{i+1} = Aq_i - \beta_i q_{i-1} - \alpha_i q_i \]

De este modo queda definido el residuo provisional.

Para reducir la pérdida de ortogonalidad causada por la aritmética de precisión finita, la implementación de FrontISTR reortogonaliza \(\tilde{r}_{i+1}\) con respecto a los vectores de la base de Lanczos ya obtenidos mediante el producto escalar asociado a \(M\). Si \(r_{i+1}\) es el residuo después de la reortogonalización, entonces

\[\begin{equation} \beta_{i+1} = \sqrt{r_{i+1}^T M r_{i+1}}, \qquad q_{i+1} = \frac{r_{i+1}}{\beta_{i+1}} \label{eq:2.3.12} \end{equation}\]

se cumplen las relaciones anteriores.

Agrupando los \(m\) vectores de base obtenidos mediante la iteración de Lanczos en

\[ Q_m=[q_0,q_1,\ldots,q_{m-1}] \]

después de un número finito de iteraciones de Lanczos se cumple

\[\begin{equation} A Q_m = Q_m T_m + \beta_m q_m e_m^T \label{eq:2.3.13} \end{equation}\]

la relación anterior.

Aquí, \(e_m\) es el vector unitario de dimensión \(m\) cuya componente \(m\)-ésima es 1, y

\[\begin{equation} T_m= \begin{pmatrix} \alpha_0 & \beta_1 & & &\\ \beta_1 & \alpha_1 & \beta_2 & &\\ & \ddots & \ddots & \ddots &\\ & & \beta_{m-2} & \alpha_{m-2}& \beta_{m-1}\\ & & & \beta_{m-1} & \alpha_{m-1} \end{pmatrix} \label{eq:2.3.14} \end{equation}\]

es una matriz tridiagonal simétrica.

Por tanto, los valores propios del problema original de gran escala pueden aproximarse calculando los valores propios de la matriz tridiagonal \(T_m\).

Temas relacionados