www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Interpolation und Approximation" - 3D Extra-/Interpolation
3D Extra-/Interpolation < Interpol.+Approx. < Numerik < Hochschule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Interpolation und Approximation"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

3D Extra-/Interpolation: Fehlende Werte in 3x3x3 Gitter
Status: (Frage) beantwortet Status 
Datum: 11:38 Do 16.09.2010
Autor: Frank_gsm

Hallo zusammen!

Ich tüftle jetzt schon lange an einem blöden Problem hin, bisher ohne Erfolg:

Problemstellung:
Ich habe 7 Werte einer 3x3x3-Matrix gegeben, jeweils 3 in Reihe in eine Richtung (in den 7 Punkten sind gemeinsame Punkte enthalten).

Die Ebenen der Matrix sehen z.B. so aus:

1:               2:               3:
? - ? - ?      ? - 3 - ?      ? - ? - ?
? - 4 - ?      ? - 2 - ?      ? - 6 - ?
? - ? - ?      2 - 4 - 9      ? - ? - ?

Frage:
Wie kann ich die fehlenden 20 Werte (3x3x3=27; 27-7=20) inter-/extrapolieren? Gibt es ein bestimmtes Verfahren zur Lösung von Problemstellungen dieser Art? Oder ist das vielleicht prinzipiell nicht/nur sehr eingeschränkt möglich? Wenn ja, warum?

Bisherige Ansätze:
Ich habe bereits viel mit Matlab herumprobiert, also mit linearer und kubischer Interpolation. Diese brachten aber nur Fehler, da meine zu interpolierenden Werte außerhalb der konvexen Hülle liegen.
Anschließend dachte ich mir, dass die Ergänzung der fehlenden Werte mittels direkter Proportionalität, d.h. dem Dreisatz, eine Annäherung/Lösung sein könnte. Ich habe also die Werte nach dem Schema "P11/P12 = P21/P22" (bei 3 bekannten und einem unbekannten Wert) ergänzt und diese sahen auch ganz ok aus. Trotzdem erscheint mir das als zu einfach und falsch.

Über Lösungsvorschläge oder Anregungen würde ich mich sehr freuen!

Vielen Dank und viele Grüße!
Frank

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

        
Bezug
3D Extra-/Interpolation: Antwort
Status: (Antwort) fertig Status 
Datum: 12:57 Do 16.09.2010
Autor: Al-Chwarizmi


> Hallo zusammen!
>  
> Ich tüftle jetzt schon lange an einem blöden Problem hin,
> bisher ohne Erfolg:
>  
> Problemstellung:
>  Ich habe 7 Werte einer 3x3x3-Matrix gegeben, jeweils 3 in
> Reihe in eine Richtung (in den 7 Punkten sind gemeinsame
> Punkte enthalten).
>  
> Die Ebenen der Matrix sehen z.B. so aus:
>  
> 1:               2:               3:
>  ? - ? - ?      ? - 3 - ?      ? - ? - ?
>  ? - 4 - ?      ? - 2 - ?      ? - 6 - ?
>  ? - ? - ?      2 - 4 - 9      ? - ? - ?
>  
> Frage:
>  Wie kann ich die fehlenden 20 Werte (3x3x3=27; 27-7=20)
> inter-/extrapolieren? Gibt es ein bestimmtes Verfahren zur
> Lösung von Problemstellungen dieser Art? Oder ist das
> vielleicht prinzipiell nicht/nur sehr eingeschränkt
> möglich? Wenn ja, warum?
>  
> Bisherige Ansätze:
>  Ich habe bereits viel mit Matlab herumprobiert, also mit
> linearer und kubischer Interpolation. Diese brachten aber
> nur Fehler, da meine zu interpolierenden Werte außerhalb
> der konvexen Hülle liegen.
> Anschließend dachte ich mir, dass die Ergänzung der
> fehlenden Werte mittels direkter Proportionalität, d.h.
> dem Dreisatz, eine Annäherung/Lösung sein könnte. Ich
> habe also die Werte nach dem Schema "P11/P12 = P21/P22"
> (bei 3 bekannten und einem unbekannten Wert) ergänzt und
> diese sahen auch ganz ok aus. Trotzdem erscheint mir das
> als zu einfach und falsch.
>  
> Über Lösungsvorschläge oder Anregungen würde ich mich
> sehr freuen!
>  
> Vielen Dank und viele Grüße!
>  Frank


Hallo Frank,

es wäre wichtig, zu wissen, welchem Zweck diese Interpolation/
Extrapolation (allenfalls Approximation) dienen soll. Aus welcher
Anwendung stammt denn die Frage ?

1.) Man könnte zum Beispiel eine lineare Funktion f(i,j,k) mit

       $\ f(i,j,k)\ =\ a*i+b*j+c*k+d$

suchen, welche im Sinne der "kleinsten Quadrate" eine möglichst
gute Approximation für die 7 gegebenen Elemente der Matrix liefert.
Die Summe der quadrierten Abweichungen

       [mm] $\summe_{z=1}^{7}\left(a_{i(z)\,j(z)\,k(z)}\ -\ f(i(z)\,j(z)\,k(z))\right)^2$ [/mm]

müsste minimalisiert werden. Weg: Partielle Ableitungen dieser
Summe nach a,b,c,d gleich Null setzen und das entstehende
Gleichungssystem nach a,b,c,d auflösen.

2.) Ein ganz anderer Ansatz wäre es etwa, die Matrix so zu er-
gänzen, dass die Differenzen benachbarter Elemente (in
allen 3 Dimensionen betrachtet) jeweils in allen 3 in Frage
kommenden zueinander parallelen Ebenen identisch sind,
also zum Beispiel

      $\ [mm] a_{1,1,1}-a_{1,1,2}\ [/mm] =\ [mm] a_{1,2,1}-a_{1,2,2}\ [/mm] =\ [mm] a_{1,3,1}-a_{1,3,2}\ [/mm] =\ [mm] a_{2,1,1}-a_{2,1,2}\ [/mm] =\ .......$

Diese Ergänzung kann man ganz leicht auf einem Blatt
Papier und ganz ohne Rechenhilfsmittel durchführen.

Aber eben:  Hauptfrage bleibt, was die Interpolations-
funktion wirklich leisten soll.


LG      Al-Chw.

Bezug
                
Bezug
3D Extra-/Interpolation: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 15:08 Do 16.09.2010
Autor: Frank_gsm

Danke für die Antwort!

Es geht dabei um 7 Messwerte eines Bauteils mit 3 Parametern. Es soll ein Modell erstellt werden, bei dem auf weitere Werte, je nach Wahl der Parameter, geschlossen werden kann. Natürlich ist das ganze sehr ungenau, aber zumindest in der Nähe der Datenpunkte sollten "relativ" genaue Rückschlüsse gezogen werden können.

Die einzelnen Messreihen (also jeweils 3 Messwerte in eine Richtung) lassen sich schon relativ gut durch Polynome (bzw. Exponential-/Logarithmische/Potentielle Funktionen) beschreiben. Ich habe das bereits mit Excel/Matlab getestet. Mein Problem ist die Übertragung auf die 2. und dann die 3. Dimension.

Ich nehme an, dass hier ebenfalls polynomische Extrapolationen (evtl. kubische Splines) die Wahrheit besser widerspiegeln würden, als lineare. Matlab bietet dafür jedoch keine fertige Funktion. Nach langer Suche ohne Erfolg frage ich mich nun, ob es prinzipiell möglich ist, polynomische Funktionen aus verschiedenen Dimensionen in eine Funktion/Matrix mit allen drei Dimensionen zu vereinen und wenn ja, wie man das umsetzen könnte.

zu 1.)
Verstehe ich das richtig, dass hier i, j, k die Koordinatenrichtungen sind und man bei der 2. Gleichung den jeweiligen, bekannten Funktionswert (für "f(i,j,k)") einsetzt?

Aber müsste dann nicht statt des [mm] "a_i,j,k" [/mm] die komplette, lineare Funktion, also "ai + bj + ck + d" stehen oder was ist mit "a" gemeint?

zu 2.)
Dafür bräuchte ich aber erst eine vollständig ausgefüllte Ebene oder? Aber genau da hakt es ja bereits.


Ich hoffe, das Problem ist klarer geworden und du/ihr habt noch ein paar Ratschläge für mich.

LG
Frank

Bezug
                        
Bezug
3D Extra-/Interpolation: Antwort
Status: (Antwort) fertig Status 
Datum: 01:48 Fr 17.09.2010
Autor: Al-Chwarizmi


> Danke für die Antwort!
>  
> Es geht dabei um 7 Messwerte eines Bauteils mit 3
> Parametern. Es soll ein Modell erstellt werden, bei dem auf
> weitere Werte, je nach Wahl der Parameter, geschlossen
> werden kann. Natürlich ist das ganze sehr ungenau, aber
> zumindest in der Nähe der Datenpunkte sollten "relativ"
> genaue Rückschlüsse gezogen werden können.
>  
> Die einzelnen Messreihen (also jeweils 3 Messwerte in eine
> Richtung) lassen sich schon relativ gut durch Polynome
> (bzw. Exponential-/Logarithmische/Potentielle Funktionen)
> beschreiben. Ich habe das bereits mit Excel/Matlab
> getestet. Mein Problem ist die Übertragung auf die 2. und
> dann die 3. Dimension.
>
> Ich nehme an, dass hier ebenfalls polynomische
> Extrapolationen (evtl. kubische Splines) die Wahrheit
> besser widerspiegeln würden, als lineare. Matlab bietet
> dafür jedoch keine fertige Funktion. Nach langer Suche
> ohne Erfolg frage ich mich nun, ob es prinzipiell möglich
> ist, polynomische Funktionen aus verschiedenen Dimensionen
> in eine Funktion/Matrix mit allen drei Dimensionen zu
> vereinen und wenn ja, wie man das umsetzen könnte.
>  
> zu 1.)
>  Verstehe ich das richtig, dass hier i, j, k die
> Koordinatenrichtungen sind und man bei der 2. Gleichung den
> jeweiligen, bekannten Funktionswert (für "f(i,j,k)")
> einsetzt?

Mit i, j und k meine ich die drei Indices, alle mit Werten aus [mm] $\{1,2,3\}$ [/mm] ,
welche die Elemente der 3x3x3-Matrix nummerieren. i entspricht
dabei der Nummer deiner "Ebenen", j dem Zeilen- und k dem
Spaltenindex.


> Aber müsste dann nicht statt des "[mm]a_{i,j,k}[/mm]" die komplette,
> lineare Funktion, also "ai + bj + ck + d" stehen oder was
> ist mit "a" gemeint?

Mit [mm]a_{i,j,k}[/mm]  bezeichne ich die Werte dieser 27 (erst zum Teil
bekannten) Matrixelemente.

Natürlich ist es ein wenig ungeschickt, dass ich den Buchstaben a
auch noch in anderer Bedeutung, nämlich als Parameter in der in i,
j und k linearen Funktion f(i,j,k) , verwendet habe. Deshalb schlage
ich vor, für die Matrix ein großes "A" und für die Matrixelemente
[mm]A_{i,j,k}[/mm]  zu schreiben.  

  

> zu 2.)
>  Dafür bräuchte ich aber erst eine vollständig
> ausgefüllte Ebene oder? Aber genau da hakt es ja bereits.

Die nach meiner zweiten Idee (mit den identischen Differenzen)
ergänzte Matrix wäre:

        i=1:         i=2:        i=3:

       [mm] $\pmat{3&5&10\\2&4&9\\4&6&11}$ $\pmat{1&3&8\\0&2&7\\2&4&9}$ $\pmat{5&7&12\\4&6&11\\6&8&13}$ [/mm]

Dies funktioniert hier so prima (und eindeutig !), weil in der gege-
benen Matrix in der Ebene i=2 eine komplette Zeile (j=3) und eine
komplette Spalte (k=3) vorliegt. Ferner ist die "Säule"  mit j=2 und
k=2  (und $\ [mm] i\in\{1,2,3\})$ [/mm] vollständig vorgegeben.


LG       Al-Chw.

Bezug
                                
Bezug
3D Extra-/Interpolation: Formel zum 2. Ansatz
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 02:41 Fr 17.09.2010
Autor: Al-Chwarizmi

Hallo Frank,

vor dem Einschlafen ist mir gerade noch eingefallen,
welcher gleichungsmäßige Ansatz zu meinem zweiten
Vorschlag passen müsste:

       $\ A(i,j,k)\ =\ [mm] a*(i-i_0)^2+b*(j-j_0)^2+c*(k-k_0)^2+d$ [/mm]

Darin stecken genau 7 Parameter, nämlich [mm] a,b,c,d,i_0,j_0,k_0, [/mm]
deren Zahlenwerte sich aus den gegebenen 7 Matrixelementen
eindeutig bestimmen lassen.

Gerechnet habe ich das nicht, aber ich bin mir recht
sicher, dass es so gehen muss. Für jeden, der diese
Rechnung durchführen will: die komplette Matrix habe
ich durch einfaches Ergänzen schon bestimmt:  siehe hier !


Gruß

Al  

Bezug
                                        
Bezug
3D Extra-/Interpolation: Polynomisch
Status: (Frage) beantwortet Status 
Datum: 11:31 Mi 22.09.2010
Autor: Frank_gsm

Hallo Al,

danke für deine Hilfe! Ich denke, ich verstehe die Ansätze. Der erste hört sich auch recht gut an. Dennoch ist das Problem, dass eine lineare Funktion die Realität nur sehr ungenau beschreibt. Ich denke, für ausreichende Genauigkeit, sollte die Funktion durch ein Polynom 3. Grades beschrieben werden. Und hier wird die Methode dann scheinbar extrem komplex.

Die Funktion müsste dann so aussehen, oder?

[mm]y(x_1,x_2,x_3) = a+b*x_1 + c*x_1^2 + d*x_1^3 + e*x_2+f*x_2^2+g*x_2^3+h*x_3+i*x_3^2+j*x_3^3[/mm]

Wenn ja, kennst du eine Möglichkeit das "kleinste Quadrate"-Problem mit diesem Term und den Datenpunkten zu lösen?

Gruß
Frank

Bezug
                                                
Bezug
3D Extra-/Interpolation: Antwort
Status: (Antwort) fertig Status 
Datum: 14:13 Mi 22.09.2010
Autor: Al-Chwarizmi


> Hallo Al,
>  
> danke für deine Hilfe! Ich denke, ich verstehe die
> Ansätze. Der erste hört sich auch recht gut an. Dennoch
> ist das Problem, dass eine lineare Funktion die Realität
> nur sehr ungenau beschreibt. Ich denke, für ausreichende
> Genauigkeit, sollte die Funktion durch ein Polynom 3.
> Grades beschrieben werden. Und hier wird die Methode dann
> scheinbar extrem komplex.
>  
> Die Funktion müsste dann so aussehen, oder?
>  
> [mm]y(x_1,x_2,x_3) = a+b*x_1 + c*x_1^2 + d*x_1^3 + e*x_2+f*x_2^2+g*x_2^3+h*x_3+i*x_3^2+j*x_3^3[/mm]
>  
> Wenn ja, kennst du eine Möglichkeit das "kleinste
> Quadrate"-Problem mit diesem Term und den Datenpunkten zu
> lösen?
>  
> Gruß
>  Frank


Mein "2. Ansatz" liefert doch schon eine exakte Lösung
mit einem Polynom 2. Grades (nicht 3. Grades !).

Hast du den überhaupt schon praktisch ausprobiert ?
Es kommt eine recht nette Lösung mit einfachen Brüchen
als Koeffizienten heraus !

Bei einem vollständigen Polynom in [mm] x_1, x_2 [/mm] und [mm] x_3 [/mm]
hättest du übrigens noch wesentlich mehr Parameter, da
du auch gemischte Terme der Art [mm] x_1*x_2 [/mm] oder [mm] x_2*x_3^2 [/mm]  oder  
[mm] x_1*x_2*x_3 [/mm] berücksichtigen müsstest.


LG     Al-Chw.


Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Interpolation und Approximation"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]