Picard-iteraties : 18.02.2007

Op het college zijn  Picard-iteraties gedemonstreerd; zie ook opmerking 1.10.3 in het boek.
We hebben dus een differentiaalvergelijking \(TraditionalForm\`\(y\^'\)\)= f(x,y) met y((Subscript[x, 0])) = (Subscript[y, 0]) en nu laten we hierop
de integraal operator F(η(x)) =  (Subscript[y, 0])+(∫_((Subscript[x, 0]))^x)f(ξ,η(ξ))dξ werken. Het idee is om met een functie η\(TraditionalForm\`\(\_0\) \((x)\)\)= (Subscript[y, 0]) 
te beginnen en dan een aantal, zeg n, Picard iteraties te doen.  In dit notebook gaan we het volgende doen:

We gaan eerst een aantal Picard-iteraties uitrekenen voor een eenvoudige differentiaalvergelijking, waarvoor we ook de expliciete
oplossing kunnen vinden. Dan gaan we testen hoe goed dit gaat; hoe verhoudt de benadering zich tot de expliciete oplossing? Na hoeveel
iteraties verkrijgt men een redelijk antwoord? Wat is de invloed van de beginfunctie op de convergentie?

Onderdeel 1

Werk nu opgave 1.11.15a door (zie ook onderaan de notebook); ga na wat er staat, wat het doet, wat het produceert en wat je er dan mee kunt.
Geef n zodat na n Picard-iteraties geldt dat  |η\(TraditionalForm\`\(\_n\) \((x)\)\)-y(x)|≤(10^(-3)) voor x∈[0,1].
Hint: Maak een plot van η\(TraditionalForm\`\(\_n\) \((x)\)\) en y(x) om een idee te krijgen wat er gebeurt.

Onderdeel 2

Neem nu η\(TraditionalForm\`\(\_0\) \((x)\)\)=(Subscript[y, 0])(1 + (x^2))en kijk hoeveel iteraties je nu moet uitvoeren om dezelfde nauwkeurigheid te krijgen.
Een andere manier om te vergelijken zijn Taylorreeksen. Vergelijk nu eens de n-de Picard-iteratie met de Taylorreeks tot op orde n.
Doe dit eerst voor η\(TraditionalForm\`\(\_0\) \((x)\)\)= (Subscript[y, 0]) en dan voor η\(TraditionalForm\`\(\_0\) \((x)\)\)=(Subscript[y, 0])(1 + (x^2)), Probeer ook andere beginfuncties uit, zoals η\(TraditionalForm\`\(\_0\) \((x)\)\)=Exp[-x]. Wat zie je gebeuren?

Onderdeel 3 -- Inleveropgaven

Opgave1

A) Los het beginwaardeprobleem in opgave 1.11.15b handmatig op.
B) Probeer bovenstaande stappen ook voor opgave 1.11.15b.
Geef n zodat na n Picard-iteraties geldt dat  |η\(TraditionalForm\`\(\_n\) \((x)\)\)-y(x)|≤(10^(-3)) voor x∈[1,2].


Opgave2

Beschouw het volgende beginwaardeprobleem:
dy/dx=3(y^(2/3)),  y(2)=0;
A) Schrijf de oplossing die Mathematica met DSolve geeft en maak daarvan een plaatje voor  x∈[2,3].
B) Maak een plaatje  van de 5e Picard-iteratie met η\(TraditionalForm\`\(\_0\) \((x)\)\)=x-2 voor x∈[2,3] en geef een schatting voor de fout.
C) Laat zien dat  η\(TraditionalForm\`\(\_n\) \((x)\)\) te schrijven is in de vorm (Subscript[(((Subscript[c, n])(x - 2))^r), n]).
D) Laat zien dat (lim_(n -> ∞))  η\(TraditionalForm\`\(\_n\) \((x)\)\)=(((x - 2))^3). Ga na dat dit een exacte oplossing is. Hints:
	-Laat zien dat (Subscript[r, n])strikt monotoon stijgt, en convergeert naar 3.
	-Controleer dat (Subscript[c, 1])> 1, en laat zien dat (Subscript[c, n])> 1, voor n groot genoeg.
	-Laat zien dat (Subscript[c, n]) strikt monotoon daalt, en convergeert naar 1.
E)  Bepaal m.b.v. Picard-iteratie een benadering van de oplossing van het beginwaardeprobleem door η\(TraditionalForm\`\(\_0\) \((x)\)\)=0 te nemen. Ga na dat dit een exacte oplossing is. Merk op dat deze oplossing gemist wordt door Mathematica

Hint:onderstaand commando bevat een aantal handigheidjes, meer daarover in de helpfunctie.
Destilleer eruit wat je wil gebruiken. Verder is dit notebook geschreven voor Math 5.2!
Voor de Taylorreeks gebruik de volgende opdracht:

Plot[
      Normal[Series[functie[x], {x, x0, orde}]], {x, begin, eind}]

OPGAVE 1.11.15a

F[x_, y_] := y
x0 := 0
y0 := 1
etas := {y0}
n := 3
Do[etas = 
        Append[etas, 
          y0 + Integrate[(F[x, etas[[i]]] /. x -> t), {t, x0, 
                x}]], {i, 1, n}]
Simplify[etas]
DSolve[{y'[x] == F[x, y[x]], y[x0] == y0}, y[x], 
      x]

OPGAVE 1.11.15b

F[x_, y_] := y/x + 1
x0 := 1
y0 := 1
etas := {y0}
n := 3
Do[{H[t_] = Integrate[(F[x, etas[[i]]] /. x -> t), t], 
        etas = Append[etas, 
            y0 + H[x] - 
              H[x0]  ]}, {i, 1, 
        n}]
etas
DSolve[{y'[x] == F[x, y[x]], y[x0] == y0}, y[x], 
      x]