Kubische Splineinterpolation

Neue Frage »

Chris2701 Auf diesen Beitrag antworten »
Kubische Splineinterpolation
Hallo alle miteinander,

ich bin dabei eine Aufgabe zu lösen bekomme aber irgendwie den Ansatz nicht hin habe mir auch schon einige Workshops angesehen zum Thema Spline Interpolation aber ich verstehe irgendwie nur Bahnhof....

Bei der Aufgabe habe ich eine Funktion gegegeben. Es soll der kubische Spline berechnet werden. Ich habe 3 verschiedene Stützstellen gegeben.xo,x1, und x2.
und irgendwie eine Randbedingung die ich nicht so ganz verstehe.

Als erstes würde ich zu den Stützstellen die einzelnen Stützwerte (yo,y1,y2) berechnen. Richtiger Anfang soweit? Aber wie führe ich die Aufgabe fort?

Es wäre echt sehr nett, wenn ihr mir weiterhelfen würdet smile

Gruß
Chris
tigerbine Auf diesen Beitrag antworten »
RE: Kubische Splineinterpolation
Ohne Randbedingung sind kubische Splines ja nicht eindeutig. Zumindest soviel sollte aus dem WS klar geworden sein. Eine allgemeine Berechnungsvorschrift sieht halt was komplizierter aus.

Aus wie vielen Teilfunktionen (Restriktionen) besteht dein Spline?

Welche Bedienungen kannst du formulieren?

Löse das entstehende Gleichungssystem.
 
 
Chris2701 Auf diesen Beitrag antworten »

Also das Grundprinzip habe ich glaube ich soweit verstanden.. Das jedes Teilstück also die Intervalle durch eine kubische Funktion beschrieben bzw. definiert werden. Also 4 Unbekannte in einer Gleichung oder? Kubisch bedeutet 3.Grades also müssen n+3 Punkte gegeben werden. Ich habe ja x0-x2 und dann noch die Randbedingung das macht 4 Bedinungen?

Das Problem dass ich jetzt habe ich weiß nicht wieviele Gleichungen ich benötige und wie ich diese Ansätze wähle??? Könntest du mir bitte einen Hinweis geben oder mal 1 oder 2 Gleichungne hinschreiben damit ich es nachvollziehen kann.


Vielen Dank smile
tigerbine Auf diesen Beitrag antworten »

Im Workshop steht eine Formel, die sagt, wie viele Gleichungen es geben muss.

Sie sagt auch, welche Bedingungen dahinter stehen.

Wodurch müssen die Polynome gehen? Wie glatt muss der Übergang sein, usw... Augenzwinkern

Also, zeig mal.
Chris2701 Auf diesen Beitrag antworten »

Also zu jedem Abschnitt gibt es 4 Unbekannte. Hat man n Abschnitte , so hat man 4n Unbekannte, die man wahrscheinlich mit einem LGS lösen kann???

Ich habe 2 Abschnitte. Einmal von -1 bis 0 und von 0 bis 1. Das heißt ich habe insgesamt 8 Unbekannte. Also benötige ich 8 Gleichungen oder?
Chris2701 Auf diesen Beitrag antworten »

Habe nun mal ein wenig weiter gemacht.....

x0 = -1 f0 = 0

x1 = 0 f1 = 1

x2 = 1 f2 = 0


n= 2



Ansatz: s1(x) = a1x³+b1x²+c1x+d1
s2(x) = a2x³+b2x²+c2x+d2


s1'(x) = 3a1x²+2b1x+c1
s2'(x) = 3a2x²+2b2x+c2


s1''(x) = 6a1x+2b1
s2''(x) = 6a2x+2b2




Aufstellen der Gleichungen:

s0(xo) = f0
s1(x1) = f1

s0(x1) = f1
s1(x2) = f2

s'0(x1) = s'1(x1)

s''0(x1) = s''1(x1)

Randbedingungen ( natürlicher Spline )

s''(xo) = 0
s''(x2) = 0

Einsetzen in die Gleichung:

so( -1 ) = - 1a1 + 1b1 - 1c1 + d1 = 0
s1( 0 ) = + d1 = 1

s0( 0 ) = + d1 = 1
s1( 1 ) = 1a1 + 1b1 + 1c1 + d1 = 0


s'0( 0 ) = + 1c1 = ???

s''0(0 ) = + 2b1 = ???

s''( -1) = - 6a1 + 2b1 = 0

s''( 1 ) = 6a1 + 2b1 = 0


Falls dass bis dahin stimmen sollte würde ich gerne wissen was kommt denn dahin wo ich meine Fragezeichen hingemacht habe??? Und wie löse ich dann am besten dieses Gleichungssystem ich benötige ja meine 8 Unbekannten? Aber das LGS hier hat zwar 8 Gleichungen sind doch nur 4 Unbekannte??? Oder blicke ich da jetzt was nicht?
tigerbine Auf diesen Beitrag antworten »

1. s0(xo) = f0
2. s1(x1) = f1

3. s0(x1) = f1
4. s1(x2) = f2

5. s''(xo) = 0
6. s''(x2) = 0



7. s'0(x1) = s'1(x1)
8. s''0(x1) = s''1(x1)

7, und 8 sind doch auch mit den Variablen a1...d1,a2,...d2 formuliert. Umstellen nach =0 und dann hast du deine 8 Gleichungen. Danach nen Gauß laufen lassen.

Vergleichsrechnung bekommst du z.B. auf der Webseite von Arndt-Brünner.
Chris2701 Auf diesen Beitrag antworten »

Also irgendwie hänge ich gerade an der 7. und 8.Gleichung herum und bekomme es irgendwie nicht gebacken....

s'0(0) = s'0(0)


Den Ansatz habe ich also die erste Ableitung.

s1'(x) = 3a1x²+2b1x+c1


Muss ich jetzt einfach einsetzen?

Also quasi


3a1*0²+2b1*0+C1 = 3a1*0²+2b1*0+C1
C1 = C1

Macht aber irgendwie keinen Sinn.....

Es wäre nett wenn du mir bitte die 7.Gleichung mit meinem Ansatz mal hinschreiben bzw. herleiten würdest dann würde ich es sicherlich bzw. hoffentlich verstehen und die 8. alleine machen.

LGS lösen mit Gauß ist ansich kein Problem aber ich habe es noch nicht ganz verstanden wenn ich die 8 Gleichungen nun habe. Meine Koeffizienten lauten ja
a,b,c und d. Ich habe somit eigentlich nur 4 Unbekannte und 8 Gleichungen???

Oder verwechsel ich da etwas bei den Indizes??

Danke schon einmal im voraus smile
tigerbine Auf diesen Beitrag antworten »

[latex]s'_0(x_1) = s'_1(x_1)[/latex]

[latex]s'_0(0) = s'_1(0)[/latex]

[latex]c_1 = c_2[/latex]

[latex]c_1 -c_2 =0[/latex]
Chris2701 Auf diesen Beitrag antworten »

Hey Tigerbine,

ich wollte dich einmal daurm bitten mal über die Aufgabe zu schauen die ich nun zu Ende gerechnet habe. Ist alles richtig soweit?...Oder muss ich deiner Meinung nach noch etwas explizit hinschreiben ? Sollte ich das LGS per Hand lösen oder sollte es okay sein wenn ich es mit einem Taschenrechner löse?

Vielen Dank schon einmal im voraus für deine [attach]24462[/attach]Mühe!
tigerbine Auf diesen Beitrag antworten »

Von der Struktur her sieht es i.O. aus. TR sollte auch ok sein, wenn ihr schon so "Luxusdinger" habt. Augenzwinkern

Hast du die Probe gemacht? Also sind deine Bedingungen erfüllt?

Wink
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »