Ga naar inhoud

Modale analyse

Gegeneraliseerd eigenwaardeprobleem

Voor vrije-trillingsanalyse van een continuüm wordt het domein ruimtelijk gediscretiseerd en gemodelleerd als een systeem met meerdere vrijheidsgraden van geconcentreerde massa's, zoals weergegeven in Figuur 2.3.1. Voor een ongedempt vrije-trillingsprobleem luidt de basisvergelijking (bewegingsvergelijking) als volgt.

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

Hier is \(u\) de gegeneraliseerde verplaatsingsvector, \(M\) de massamatrix en \(K\) de stijfheidsmatrix. Laat de eigenhoekfrequentie \(\omega\) zijn, laat \(a\), \(b\) en \(c\) willekeurige constanten zijn en laat \(x\) een vector zijn. Definieer de functie

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

De tweede afgeleide van deze uitdrukking is

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

Substitutie van deze uitdrukkingen in Vergelijking \(\eqref{eq:2.3.1}\) geeft

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

Dat wil zeggen,

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

wordt verkregen.

Als Vergelijking \(\eqref{eq:2.3.5}\) dus wordt voldaan door de coëfficiënt \(\lambda = \omega^2\) en de vector \(x\) kan worden bepaald, dan is de functie \(u(t)\) een oplossing van Vergelijking \(\eqref{eq:2.3.1}\).

De coëfficiënt \(\lambda\) heet een eigenwaarde en de vector \(x\) een eigenvector. Het probleem om deze uit Vergelijking \(\eqref{eq:2.3.1}\) te bepalen heet een gegeneraliseerd eigenwaardeprobleem.

Voorbeeld van een systeem met meerdere vrijheidsgraden bij ongedempte vrije trilling

Figuur 2.3.1 Voorbeeld van een systeem met meerdere vrijheidsgraden bij ongedempte vrije trilling

Matrixeigenschappen en aannames

Voor het gegeneraliseerde eigenwaardeprobleem \(K x = \lambda M x\) dat in de vorige sectie is verkregen, neemt deze handleiding de volgende matrixeigenschappen aan. Deze aannames vormen de basis voor de convergentie en het toepassingsbereik van de hieronder beschreven verschoven inverse iteratie en Lanczos-methode. Bij een complexe matrix is de getransponeerde matrix complex geconjugeerd, terwijl een reële matrix symmetrisch is. Concreet: als de \(ij\)-component van matrix \(K\) gelijk is aan \(k_{ij}\), en de complex geconjugeerde van \(k\) wordt aangeduid met \(\bar{k}\), dan

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

geldt de volgende relatie.

In deze handleiding worden de matrices symmetrisch en positief-definiet verondersteld. Positief-definiet betekent dat alle eigenwaarden positief zijn; equivalent hieraan voldoet de matrix altijd aan Vergelijking \(\eqref{eq:2.3.7}\) hieronder.

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

Verschoven inverse iteratie

Bij structurele analyse met de eindige-elementenmethode zijn in de praktijk doorgaans niet alle eigenwaarden nodig; in veel gevallen volstaan slechts enkele eigenwaarden van lage orde. HEC-MW is bedoeld voor grootschalige problemen, waarvoor de matrices groot en zeer ijl zijn (veel nulelementen bevatten). Daarom is het belangrijk om, met deze eigenschap in gedachten, de eigenwaarden van modi van lage orde efficiënt te berekenen.

Laat \(\sigma\) de ondergrens van de eigenwaarden zijn. Vergelijking \(\eqref{eq:2.3.5}\) kan dan worden omgevormd tot de volgende wiskundig equivalente vorm.

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

Deze transformatie heeft voor de berekening de volgende nuttige eigenschappen.

  1. De volgorde van de modi is omgekeerd.
  2. Eigenwaarden in de buurt van \(\rho\) worden naar de grootste waarden afgebeeld.

In werkelijke berekeningen worden de grootste eigenwaarden vaak het eerst verkregen. Daarom wordt de hoofdberekening voor convergentie niet op Vergelijking \(\eqref{eq:2.3.5}\), maar op Vergelijking \(\eqref{eq:2.3.8}\) toegepast, met als doel eerst de eigenwaarden in de buurt van \(\rho\) te verkrijgen. Deze techniek heet verschoven inverse iteratie.

Lanczos-methode

Reden voor gebruik (vergelijking met de Jacobi-methode)

Onder de klassieke methoden is de Jacobi-methode algemeen bekend.

Deze methode is effectief wanneer de matrix klein en dicht is. Omdat de matrices die HEC-MW verwerkt echter groot en ijl zijn, wordt de Jacobi-methode niet gebruikt; in plaats daarvan wordt de iteratieve Lanczos-methode toegepast.

Algoritme en kenmerken

Deze methode, die in de jaren 1950 door C. Lanczos werd voorgesteld, is een algoritme om een matrix tot tridiagonale vorm te reduceren en heeft de volgende kenmerken.

  • Het is een iteratieve convergente methode en de berekening kan worden voortgezet terwijl de matrix ijl blijft.
  • Het algoritme bestaat hoofdzakelijk uit matrix-vectorproducten en is zeer geschikt voor parallellisering.
  • Het is zeer geschikt voor geometrische domeindecompositie die samenhangt met eindige-elementenmeshes.
  • Efficiënte berekening is mogelijk door het aantal te bepalen eigenwaarden en het bereik van modi te beperken.

De Lanczos-methode begint met een initiële vector, genereert achtereenvolgens orthogonale vectoren en construeert een basis voor een deelruimte. Deze methode wordt geacht sneller te zijn dan de deelruimtemethode, een andere iteratieve methode, en wordt veel gebruikt in eindige-elementenprogramma's. Deze methode is echter gevoelig voor numerieke fouten, waardoor de orthogonaliteit van vectoren verloren kan gaan en de berekening kan mislukken. Maatregelen tegen dergelijke numerieke fouten zijn daarom essentieel.

Geometrische interpretatie (Krylov-deelruimte)

Door in Vergelijking \(\eqref{eq:2.3.8}\) de volgende variabelentransformatie in te voeren,

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

kan het probleem worden herschreven als

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

wordt verkregen.

Pas voor een geschikte vector \(q_0\) de lineaire transformatie toe die wordt weergegeven door matrix \(A\) (zie Figuur 2.3.2).

Lineaire transformatie door matrix \(A\) van \(q_0\)

Figuur 2.3.2 Lineaire transformatie door matrix \(A\) van \(q_0\)

De getransformeerde vector wordt georthogonaliseerd binnen de ruimte die hij samen met de oorspronkelijke vector opspant. Dat wil zeggen, Gram-Schmidt-orthogonalisatie wordt uitgevoerd zoals geïllustreerd in Figuur 2.3.2. Laat de resulterende vector \(r_1\) zijn. Normaliseer deze tot eenheidslengte om \(q_1\) te verkrijgen (Figuur 2.3.3). Bepaal vanuit \(q_1\) met dezelfde procedure \(q_2\). Op dit punt is \(q_2\) orthogonaal aan zowel \(q_1\) als \(q_0\) (Figuur 2.3.4). Door dezelfde berekening voort te zetten, worden onderling orthogonale vectoren verkregen tot aan de orde van de matrix.

Een vector orthogonaal aan \(q_0\): \(q_1\)

Figuur 2.3.3 Een vector orthogonaal aan \(q_0\): \(q_1\)

Een vector orthogonaal aan \(q_1\) en \(q_0\): \(q_2\)

Figuur 2.3.4 Een vector orthogonaal aan \(q_1\) en \(q_0\): \(q_2\)

In het bijzonder wordt het Lanczos-algoritme toegepast op de vectorreeks \(A q_0\), \(A q_1\), \(A q_2\)

of equivalent \(A q_0\), \(A^2 q_0\), \(A^3 q_0\), ,\(A^n q_0\)

door Gram-Schmidt-orthogonalisatie. Deze vectorreeks heet een Krylov-reeks, en de ruimte die zij opspant heet een Krylov-deelruimte. Wanneer in deze ruimte Gram-Schmidt-orthogonalisatie wordt uitgevoerd, kan elke nieuwe vector worden verkregen met behulp van de twee meest recente vectoren. Dit heet het Lanczos-principe.

Tridiagonalisatie

In de bovenstaande iteratie kan de berekening voor de (i+1)-de vector worden geschreven als

\[\begin{equation} \beta_{i+1} q_{i+1} + \alpha_{i+1} q_{i} + \gamma_{i+1} q_{i-1} = Aq_{i} \label{eq:2.3.11} \end{equation}\]

waarbij

\[ \beta_{i+1} = \frac{1}{||r_{i+1}||} \]
\[ \alpha_{i+1} = \frac{(q_i, Aq_i)}{(q_i, q_i)} \]
\[\begin{equation} \gamma_{i+1} = \frac{(q_{i-1}, Aq_i)}{(q_{i-1}, q_{i-1})} \label{eq:2.3.12} \end{equation}\]

In matrixnotatie wordt dit

\[\begin{equation} AQ_m = Q_m T_m \label{eq:2.3.13} \end{equation}\]

waarbij

\[ Q_m = [q_{1}, q_{2}, q_{3}, \ldots ,q_{m}] \]
\[\begin{equation} T= \begin{pmatrix} \alpha_{1} & \gamma_{1} & & &\\ \beta_{2} & \alpha_{2} & \gamma_{2} & & \\ & \cdots & & &\\ & & & \beta_{m} & \alpha_{m} \end{pmatrix} \label{2.3.14} \end{equation}\]

De eigenwaarden worden dus verkregen door het eigenwaardeprobleem op te lossen voor de tridiagonale matrix die uit Vergelijking \(\eqref{eq:2.3.13}\) is verkregen.

Gerelateerde onderwerpen

AI-assisted translation May contain errors Official docs Status