Institut für Geometrie und Praktische Mathematik — Numerik–Labor

Werbung
Institut für Geometrie und Praktische Mathematik — Numerik–Labor
K
3
y
x
-1
0
1
Zwei elastische, aber nicht biegsame Balken der Länge 2, bei dem der linke Balken eine doppelt so große
Federkonstante hat wie der rechte Balken; dies führt auf das folgende Gleichungssystem:
2 (1 + x) d+ − (1 − x) d− = 0
mit
y · (2 d+ + d− ) = K
2
d± := p
−1
y 2 + (1 ± x)2
c
IGPM RWTH Aachen, 2007
Institut für Geometrie und Praktische Mathematik — Numerik–Labor
knickendes Federstabwerk
2.0
1.5
1.0
Durchschlagspunkt
0.5
e
instabil
y
0.0
Lösung
en
−0.5
Durchschlagspunkt
−1.0
−1.5
−2.0
−2.5
−3.0
−1.5
−1.0
−0.5
0.0
0.5
K
1.0
1.5
2.0
2.5
c
IGPM RWTH Aachen, 2007
Institut für Geometrie und Praktische Mathematik — Numerik–Labor
Bessere Lösung — Prädiktor entlang der Tangente der Kurve
knickendes Federstabwerk
y
2.0
1.8
1.6
Prädiktor
1.4
1.2
Newton
1.0
0.8
0.6
0.4
0.2
K
0.0
0.0
0.2
0.4
0.6
0.8
1.0
1.2
1.4
c
IGPM RWTH Aachen, 2007
Institut für Geometrie und Praktische Mathematik — Numerik–Labor
Allgemeiner:
f (u, λ) = 0
Satz über implizite Funktionen =⇒ Es existiert lokal eine Kurve u(λ) mit f (u(λ), λ)) = 0 .
Differenzieren nach λ ergibt
(?)
∂f (u, λ)
∂f (u, λ)
δu +
δλ ≈ 0
∂u
∂λ
Daher: Änderung von λ um δλ =⇒ Änderung von u um δu
(??)
J δu = −
∂f (u, λ)
δλ
∂λ
J ist die Jacobi–Matrix(bzgl. u ) der Funktion f bei (u, λ) .
Nun das Newton–Verfahren (für das neue λ ) mit dem Startwert u + δu durchführen.
c
IGPM RWTH Aachen, 2007
Institut für Geometrie und Praktische Mathematik — Numerik–Labor
Freiwilliger Zusatz
Die Lösung u lässt sich nicht immer nach λ parametrisieren. Daher
Parametrisierung nach der Bogenlänge s
∂f (u, λ) ∂u
∂f (u, λ) ∂λ
δs +
δs ≈ 0
∂u
∂s
∂λ
∂s
oder gleichwertig
(+)
∂f (u, λ) ∂f (u, λ)
,
∂u
∂λ
T ≈ 0
mit
T =
δu
δλ
T ist ein (nicht–trivialer) Kernvektor der (erweiterten) Jacobi–Matrix (in Scilab : kernel )
Man muss noch das Vorzeichen von T festlegen! Z.B. so, dass die letzte Komponente ( δλ ) positiv ist.
Dann: Teste den Winkel (Skalarprodukt) zwischen Ta (alte Tangente) und dem neuen T .
Falls Winkel > 90o (Skalarprodukt negativ), so setze T := −T
Schrittweitensteuerung
Der eigentliche Schritt ist s · T .
=⇒ Steuere s so, dass der Winkel zwischen Ta und T klein bleibt (Skalarprodukt > 0.95 ).
Ist der Winkel sehr klein (Skalarprodukt > 0.99 ), so kann man die Schrittweite s vergrößern.
c
IGPM RWTH Aachen, 2007
Institut für Geometrie und Praktische Mathematik — Numerik–Labor
Quasi–Newton
knickendes Federstabwerk
y
Jˆ =
∂f (u, λ) ∂f (u, λ)
,
∂u
∂λ
1.8
1.6
Prädiktor
1.4
1.2
y
Bei (Standard–) Newton–Verfahren, lösen wir bei festem
λ das — in der Regel — vollständig bestimmte nichtlineare Gleichungssystem f (u, λ) (nur) nach u . In der Nähe
eines “Wendepunktes” funktioniert dies nicht mehr. Wir
müssen vielmehr simultan nach u und λ lösen. Dann haben wir aber eine Unbekannte mehr als Gleichungen — dies
ist ein unterbestimmtes Gleichungssystem. Man löst nun ein
unterbestimmtes Ausgleichsproblem mit der zusätzlichen
Forderung, dass die Lösung (bzgl. der euklidischen Norm)
minimale Länge hat. Haben wir
2.0
Quasi-Newton
1.0
0.8
0.6
0.4
0.2
K
0.0
0.0
0.2
0.4
0.6
0.8
1.0
1.2
K
und û = (u, λ)T
so können wir in Scilab einfach du_dach= - J_dach \ f(u,lambda) schreiben.
Besser ist jedoch die Verwendung der Pseudo–Inversen du_dach= - pinv(J_dach)*f(u,lambda)
c
IGPM RWTH Aachen, 2007
Herunterladen