Bedingungen von Splines < Interpol.+Approx. < Numerik < Hochschule < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 17:10 Fr 25.02.2005 | Autor: | heino |
Hallo, ich will ein kubischen Spline berechnen. Dazu hab ich nun folgende Anleitung gefunden.
1) p1(x0) = y0, pi(xi) = yi für i=1,...,n
***Frage1: warum wurden beim ersten die Bezeichungen 1und 0 gewählt und nicht wie im folgenden i?***
2) pi(xi) = pi+1(xi) für i=1,...,n-1
3) pi'(xi) = pi+1'(xi) für i=1,...,n-1
4) pi''(xi) = pi+1''(xi) für i=1,...,n-1
Man erhält hieraus 4n-2 Gleichungen. Zum Lösen des Systems mit 4n Gleichungen fehlen also noch 2. Diese erhält man durch Randbedingungen.
***Frage: warum hat man nun erst 4n-2 Gleichungen? Es wurden doch schon für 4 unbekannte 4 bedingungen/Gleichungen aufgestellt***
Danke für eure Hilfe
Mfg Sebastian
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 20:43 Fr 25.02.2005 | Autor: | Stefan |
Hallo heino!
> Hallo, ich will ein kubischen Spline berechnen. Dazu hab
> ich nun folgende Anleitung gefunden.
>
>
> 1) p1(x0) = y0, pi(xi) = yi für i=1,...,n
>
> ***Frage1: warum wurden beim ersten die Bezeichungen 1und 0
> gewählt und nicht wie im folgenden i?***
Naja, was man eigentlich haben will, ist:
(1)
[mm] $p_i(x_i)=y_i$ $(i=1,\ldots,n)$,
[/mm]
[mm] $p_{i+1}(x_i)=y_i$ $(i=0,\ldots,n-1)$.
[/mm]
Jedes [mm] $p_i$ [/mm] soll also den $i$-ten Punkt und den Punkt links daneben exakt treffen.
Wenn man es aber wie hier in der Form
(2)
[mm] $p_i(x_i)=y_i$ $(i=1,\ldots,n)$,
[/mm]
[mm] $p_i(x_i)=p_{i+1}(x_i)$ $(i=1,\ldots,n-1)$
[/mm]
(was vielleicht unübersichtlicher, aber vielleicht intuitiver ist),
dann sieht man, dass einem bei (2) noch genau die Bedingung [mm] $p_1(x_0)=y_0$ [/mm] fehlt, um zu (1) zu gelangen.
>
> 2) pi(xi) = pi+1(xi) für i=1,...,n-1
>
>
> 3) pi'(xi) = pi+1'(xi) für i=1,...,n-1
>
>
> 4) pi''(xi) = pi+1''(xi) für i=1,...,n-1
>
>
>
> Man erhält hieraus 4n-2 Gleichungen. Zum Lösen des Systems
> mit 4n Gleichungen fehlen also noch 2. Diese erhält man
> durch Randbedingungen.
>
> ***Frage: warum hat man nun erst 4n-2 Gleichungen? Es
> wurden doch schon für 4 unbekannte 4
> bedingungen/Gleichungen aufgestellt***
Nein, wir haben ja $n+1$ Punkte. Zunächst werden [mm] $4\cdot [/mm] (n-1) = 4n-4$ Bedingungen an die $n-1$ Punke "im Inneren" gestellt, nämlich
1) dass für jeden Punkt [mm] $x_i$ [/mm] sowohl [mm] $p_i(x_i)$ [/mm] als auch [mm] $p_{i+1}(x_i)$ [/mm] gleich [mm] $y_i$ [/mm] sein muss
(dies sind schon mal $2 [mm] \cdot [/mm] (n-1)$ Bedingungen),
2) dass für jeden Punkt [mm] $x_i$ [/mm] die erste und zweite Ableitung der benachbarten kubischen Polynome übereinstimmen muss
(dies sind ebenfalls $2 [mm] \cdot [/mm] (n-1)$ Bedingungen).
Hinzu kommen zwei Randbedingungen, nämlich:
[mm] $p_1(x_0)=y_0$,
[/mm]
[mm] $p_n(x_n)=y_n$.
[/mm]
Das sind zusammen $4 [mm] \cdot [/mm] (n-1) +2=4n-2$ Bedingungen.
Wir haben aber $n$ kubische Polynome, also $4n$ Parameter. Also brauchen wir zwei weitere Randbedingungen, für die man in der Regel
[mm] $p_1''(x_0)=0$,
[/mm]
[mm] $p_n''(x_0)=0$
[/mm]
wählt.
Ist es jetzt klar?
Viele Grüße
Stefan
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 11:40 Sa 26.02.2005 | Autor: | heino |
Hallo,
danke erst einmal für die Hilfe!
Aber so ganz durchleuchtet bin ich noch nicht,...
Also nehmen wir an es gibt 8 Stützpunkte. Dann werden ja 8*4 Unbekannte gesucht.
- p1(x0) = y0, pi(xi) = yi für i=1,...,n
dann ergibt sich dadurch 9 bedingungen
-2) pi(xi) = pi+1(xi) für i=1,...,n-1
-3) pi'(xi) = pi+1'(xi) für i=1,...,n-1
-4) pi''(xi) = pi+1''(xi) für i=1,...,n-1
und bei 2,3 u.4.
jeweils 7 bedingungen. Insgesamt also insgesamt 30.
Die 2 weiteren werden noch durch Randbedingungen festgelegt.
Hab ich das so richtig verstanden? oder eher nicht so?
Wenn ich richtig liege, dann will mir aber nicht einleuchten, warum 1) 9 bedingugnen einbringt. Und beinhaltet
pi(xi) = yi für i=1,...,n
nicht schon die bedingung die durch
p1(x0) = y0
festgelegt wird?
Wenn ich pi(xi) = yi für i=1,...,n habe, sagt dass dann aus, dass zu jedem x wert der zugeordnete y wert passen muss...? Aber diese bedingung beinhaltet doch schon alle Punkte von 1-n . warum brauch ich dann zusätzlich noch p1(x0) = y0 ?
irgendwie bin ich ein bisschen verwirrt. Ich hoffe ihr könnt mir weiter helfen! Danke schon mal im voraus!
Mfg
Sebastian
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 15:30 Sa 26.02.2005 | Autor: | wluut |
> Also nehmen wir an es gibt 8 Stützpunkte. Dann werden ja
> 8*4 Unbekannte gesucht.
Jau.
> - p1(x0) = y0, pi(xi) = yi für i=1,...,n
> dann ergibt sich dadurch 9 bedingungen
Stimmt.
Nämlich:
1.) [mm] p_1(x_0)=y_0
[/mm]
...und jetzt immer mit gleichen Indizes:
2.) [mm] p_1(x_1)=y_1
[/mm]
3.) [mm] p_2(x_2)=y_2
[/mm]
...
9.) [mm] p_8(x_8)=y_8
[/mm]
> -2) pi(xi) = pi+1(xi) für i=1,...,n-1
>
> -3) pi'(xi) = pi+1'(xi) für i=1,...,n-1
>
> -4) pi''(xi) = pi+1''(xi) für i=1,...,n-1
> und bei 2,3 u.4.
> jeweils 7 bedingungen. Insgesamt also insgesamt 30.
auch alles richtig!
> Die 2 weiteren werden noch durch Randbedingungen
> festgelegt.
genau.
> Hab ich das so richtig verstanden? oder eher nicht so?
Ja, hast Du.
> Wenn ich richtig liege, dann will mir aber nicht
> einleuchten, warum 1) 9 bedingugnen einbringt. Und
> beinhaltet
> pi(xi) = yi für i=1,...,n
> nicht schon die bedingung die durch
> p1(x0) = y0
> festgelegt wird?
Die 9 Bedingungen hab ich ja oben nochmal hingeschrieben. Man muss da ein bisschen mit den Indizes aufpassen, damit man nicht durcheinander kommt.
Also:
[mm] p_i(x_i)=y_i [/mm] beinhaltet NICHT [mm] p_1(x_0)=y_0. [/mm] Wenn man für i = 1 einsetzt, bekommt man ja [mm] p_1(x_1)=y_1 [/mm] und nicht [mm] p_1(x_0)=y_0.
[/mm]
Die Punkte sind von 0 bis n durchnummeriert. Es gibt also (n+1) Punkte. Die sollen durch die Polynome [mm] p_1 [/mm] bis [mm] p_n [/mm] interpoliert werden, also durch n Stück. Jedes Polynom liegt zwischen zwei Punkten. [mm] p_1 [/mm] zum Beispiel zwischen [mm] x_0 [/mm] und [mm] x_1, p_2 [/mm] zwischen [mm] x_1 [/mm] und [mm] x_2 [/mm] usw. bis [mm] p_n [/mm] (zwischen [mm] x_{n-1} [/mm] und [mm] x_n).
[/mm]
Mach Dir am besten mal eine Skizze dazu.
Die "inneren" Punkte sind die Punkte [mm] x_1 [/mm] bis [mm] x_{n-1}, [/mm] also (n-1) Stück. Jeder dieser Punkte gehört zu 2 Polynomen. Daraus ergeben sich für jeden Punkt 4 Bedingungen:
1.) Der Funktionswert muss zu dem "linken" Polynom passen:
[mm] p_i(x_i)=y_i
[/mm]
2.) Der Funktionswert muss zu dem "rechten" Polynom passen:
[mm] p_{i+1}(x_i)=y_i
[/mm]
3.) Die Ableitungen beider Polynome muss in dem Punkt gleich sein:
[mm] p^{'}_i(x_i)=p^{'}_{i+1}(x_i)
[/mm]
4.) Die zweiten Ableitungen müssen in dem Punkt gleich sein:
[mm] p^{''}_i(x_i)=p^{''}_{i+1}(x_i)
[/mm]
Man beachte: Im Moment haben wir nur die "inneren" Punkte angeguckt (i=1..n-1). Es fehlen noch die Punkte [mm] x_0 [/mm] und [mm] x_n, [/mm] die am Rand liegen.
Für die beiden gibt es nur jeweils eine Bedingung, nämlich:
[mm] p_1(x_0)=y_0 [/mm] und [mm] p_n(x_n)=y_n).
[/mm]
Wenn Du dir 1.) nochmal anguckst, sind das genau die beiden Bedingungen, die dafür sorgen, dass dort 9 und nicht nur 7 Bedingungen bei raus kommen.
> Wenn ich pi(xi) = yi für i=1,...,n habe, sagt dass
> dann aus, dass zu jedem x wert der zugeordnete y wert
> passen muss...? Aber diese bedingung beinhaltet doch schon
> alle Punkte von 1-n . warum brauch ich dann zusätzlich noch
> p1(x0) = y0 ?
Die Indizes passen nicht. Die Formel [mm] p_i(x_i)=y_i) [/mm] beschreibt die Polynome, die "links" von den Punkten [mm] x_i [/mm] liegen.
[mm] p_1(x_0)=y_0 [/mm] beschreibt das Polynom, das "rechts" von [mm] x_0 [/mm] liegt.
(So gesehen passt diese Bedingung eigentlich eher zu Punkt 2)
> irgendwie bin ich ein bisschen verwirrt. Ich hoffe ihr
> könnt mir weiter helfen! Danke schon mal im voraus!
> Mfg
> Sebastian
Ich hoffe, damit sind alle Klarheiten beseitigt
LG
wluut
<< Je mehr Käse, desto mehr Löcher...
... je mehr Löcher, desto weniger Käse...
... also: je mehr Käse, desto weniger Käse! >>
|
|
|
|