0 Daumen
507 Aufrufe

Aufgabe:

Wir verallgemeinern das Problem aus Aufgabe 1(c) jetzt durch das Hinzufügen eine Nichtlinearität in jeder Komponente \( (2 \leq i \leq n-1) \) :

\( f_{i}(u):=(A u)_{i}+\lambda u_{i}\left(u_{i}-1\right), \)
sowie \( f_{1}(u)=(A u)_{1} \) und \( f_{n}(u)=(A u)_{n} \). Nun betrachten wir das nichtlineare Problem \( f(u)=b \). Wir wollen dies per Fixpunktiteration lösen. Als Abbruchkriterium wählen Sie bitte für das Residuum \( \|f(u)\|_{2} \leq \) tol mit tol \( =10^{-8} \).

(a) Formulieren Sie \( f(u)=b \) als Fixpunktproblem und implementieren Sie diese Funktion und eine Fixpunktiteration.

(b) Lösen Sie damit das obige Problem für \( n=5 \) und \( \lambda=10^{-3} \) mit dem Anfangswert: \( u=(0, \ldots, 0) \). Dokumentieren Sie die Ergebnisse durch die Ausgabe von Iterationsschritt, Residuum in jeder Iteration und visualisieren Sie wieder die Lösung vergleichend mit der aus Aufgabe 1 (zu \( n=5) \).


Problem/Ansatz:

Hey, ich habe folgende Funktion: f(u) + u - b = u

f(u) ist dabei folgendermaßen Aufgebaut: blob.png

u ist folgender Vektor: (4.4408920985006264E-17, 0.06694176000000003, 0.08925568000000002, 0.06694176, 0.0)

b ist folgender Vektor: (1.115696, 1.115696, 1.115696, 0.26776704, 0.0)

Als Beschreibung wie eine Fixpunktiteration funktioniert habe ich folgendes bekommen:

\( f_{i}(u):=(A u)_{i}+\lambda u_{i}\left(u_{i}-1\right) \)

1. Wähle Startwert \( x^{(0)} \in M \), und setze \( k=0 \).

2. Setze \( x^{(k+1)}:=f\left(x^{(k)}\right) \).
3. Ist
\( d_{X}\left(f\left(x^{(k+1)}\right)-x^{(k+1)}\right)<\epsilon \)
dann STOP, sonst \( k \rightarrow k+1 \) und fahre fort mit 2 .

Leider stehe ich nun sehr auf dem Schlauch... wie genau muss ich hier vorgehen?

Avatar von
4.4408920985006264E-17,

Du weißt, dass das 0,000 000 000 000 000 044 bedeutet?

Ja, das ist mir bewusst, ist das schlimm?

1 Antwort

0 Daumen

Hallo,

zunächst musst Du Dir klar machen, dass die Bezeichnung f in der Aufgabenstellung nicht der Bezeichnung in der Beschreibung des Algorithmus entspricht.

Dann geht es um die Um-Formulierung der Gleichung f(u)=b in ein Fixpunktproblem, sagen wir h(u)=u. Dazu gibt es verschieden Möglichkeiten. Eine wurde Dir in Deinem vorigen Post genannt. (Warum machst Du den jetzt nochmal auf??)

Eine andere hast Du oben genannt: h(u)=f(u)-b+u.

Ich würde es so machen: Die i-te Gleichung von f(u)=b ist

$$\sum_{j=1}^na_{i,j}u_j+\lambda u_i^2-\lambda u_i=b_i$$

Das würde ich so umformen:

$$u_i=(h(u))_i:=\frac{1}{a_{i,j}-\lambda}(b_i-\sum_{j\neq i}a_{i,j}u_j-\lambda u_i^2)$$

Es kann aber nicht (ohne weiteres) vorhergesagt werden, welche Umformung zu einer konvergenten Iteration führt.

Ich frage mich, ob Ihr dazu nicht weitere Infos in der Vorlesung / Übung erhalten habt??

Gruß Mathhilf

Avatar von 14 k

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community