|
Florian85 |

Forum-Anfänger
|
 |
Beiträge: 40
|
 |
|
 |
Anmeldedatum: 29.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 10.08.2010, 15:36
Titel: Spline Interpolation
|
 |
Hallo,
Nach langer Suche im Forum mache ich jetzt doch eine neues Thema. Ähnliche Problemstellungen sind zwar schon behandelt worden, aber es hat nie wirklich für mein problem gepasst.
Ich habe eine Matrix[6x52] mit 6Spalten und 52 Zeilen. Ich möchte diese MAtrix zeilenweise interpolieren, was ich wie folgt mache:
E = die Anzahl der Zeilen(in diesem Fall 52)
r_p = Vektor mit 6 Spalten
z = Datenmatrix [6x52]
r_pn = Vektor mit 50 Spalten
Meine Frage bezieht sich auf den Ausdruck 'spline'. Kann man diesen Spline, der für die Interpolation verwendet wird irgendwie verändern? Weil die Fläche, die diese Interpolation ergibt hat ziemlich hohe Spitzen bzw. Täler. Sollte etwas flacher verlaufen.
Ich habe auch 'cubic' probiert. Kann 'cubic' auch irgendwie modifiziert werden?`
Ich hoffe meine Fragestellung war halbwegs verständlich
mfg Flo
|
|
|
|
|
Florian85 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 40
|
 |
|
 |
Anmeldedatum: 29.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 10.08.2010, 15:45
Titel:
|
 |
Im angehängten Bild sieht man meine Darstellung. Was mich stört sind die zwei Hügel und das Tal dazwischen.
Meine Messdaten sind in den 4 Subplots unten zu sehen. Diese Kurven muss man sich auf die eingezeichneten 4 Radien der rechten oberen Darstellung verteilt vorstellen. Sensor 1 ist der innere Radius, Sensor 4 der äußere.
mfg Flo
Beschreibung: |
|
 Download |
Dateiname: |
untitled.jpg |
Dateigröße: |
97.52 KB |
Heruntergeladen: |
1516 mal |
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 10.08.2010, 18:10
Titel: Re: Spline Interpolation
|
 |
|
 |
|
Hallo Florian,
ich hatte irgendwo in diesem Forum schon mal auf eine Spline-Frage von Dir geantwortet.
Mit INTERP1 kannst Du übrigens auch Matrizen bearbeiten. Es gibt keinen Grund die Vecktoren einzeln zu liefern:
Zitat: |
Meine Frage bezieht sich auf den Ausdruck 'spline'. Kann man diesen Spline, der für die Interpolation verwendet wird irgendwie verändern? Weil die Fläche, die diese Interpolation ergibt hat ziemlich hohe Spitzen bzw. Täler. Sollte etwas flacher verlaufen.
Ich habe auch 'cubic' probiert. Kann 'cubic' auch irgendwie modifiziert werden?` |
Eine Spline-Interpolation ist eindeutig definiert. Es gibt keine Möglichkeit an einem Parameter zu drehen. Das gleiche gilt für die Kubische Interpolation.
Ein Spline kann bei der Interpolation "überschwingen" und dabei heftige Wellen produzieren. Wenn man Messdaten normalisieren möchte, ist eine Spline (oder Kubische) Interpolation deshalb im Allg. nicht hilfreich. Die lineare Interpolation ist dann immer noch das ehrlichste.
Kannst Du nochmal beschreiben, was Du mit der Interpolation erreichen möchtest und wie sich die Resultate von Deinen erwartungen unterscheiden?
Gruß, Jan
|
|
|
Florian85 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 40
|
 |
|
 |
Anmeldedatum: 29.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.08.2010, 08:20
Titel:
|
 |
Ich soll einen Druckverlauf eines Ölfilmes über eine Segmentfläche darstellen. Als Messwerte bekomm ich die Daten der 4 Sensoren. Die Darstellung soll möglichst physikalisch plausibel sein. Beim Druckverlauf kann es keine scharfe Drucksprünge geben. Ebenso ist es eher unlogisch, dass zwischen den beiden Spitzen eine Vertiefung ist. Bei der linearen Interpolation entstehen scharfe Kanten, die ich nicht brauchen kann
hmmm....
Wäre vielleicht eine ganz andere Art der Interpolation sinnvoller?
Bei
wird ja, was ich aus der Forumsuche erfahren habe, ein rechteckiges Gitter benötigt, was ich ja nicht habe. Deswegen hab ichs damit noch gar nicht versucht.
mfg Flo
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 11.08.2010, 12:29
Titel:
|
 |
Hallo Florian,
darin finden sich nun einiger wertvolle Informationen.
Du möchtest eigentlich nicht per Spline interpolieren. sondern einen Spline finden, der durch Deine Messwerte geht. Nun ist auch ein Spline nicht beliebig differenzierbar, sondern aus einzelnen Stücken stetig und einfach differenzierbar zusammengesetzt.
Ein Polynom dagegen könnte so durch Deine 4 Punkte gelegt werden, dass die entstehende Kurve auch physikalisch sinnvoll ist. Siehe POLYFIT und PLOYVAL.
Wenn Du allerdings schon physikalisch argumentierst, welche Funktion würdest Du denn als Druckverlauf erwarten? Dann könntest Du nämlich gleich die Parameter dieser Funktion per Optimiertung an Deine Messdaten anpassen lassen.
Gruß, Jan
|
|
|
Florian85 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 40
|
 |
|
 |
Anmeldedatum: 29.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.08.2010, 13:02
Titel:
|
 |
Ich würde mir erwarten, dass der Flächenverlauf zwischen den 4 Radien ziemleich eben verläuft. So wie es außen aussieht passts eh, find ich.
ich schau mir mal das mit polyfit und polyval an. danke für den tip
mfg flo
|
|
|
Florian85 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 40
|
 |
|
 |
Anmeldedatum: 29.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 12.08.2010, 08:16
Titel:
|
 |
Also ich hab mal folgendes ausprobiert: im Anhang sind die ergebnisse...
ich hab die 6 messpunkte aus einer zeile meiner matrix herausgenommen und für diese zeile ein polynom erstellt. hab mehrere ordnungen ausprobiert, aber wieso werden hier nur geraden erstellt?
Die Warnung, die hier kommt kommt bei allen Ordnungen, die höher als n=2 ist.
Ich dachte mir, dass hier gekrümmte kurven rauskommen, aber leider sind es nur gerade stücke.
mfg flo
Beschreibung: |
|
 Download |
Dateiname: |
polynome.jpg |
Dateigröße: |
209.97 KB |
Heruntergeladen: |
1284 mal |
|
|
|
Florian85 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 40
|
 |
|
 |
Anmeldedatum: 29.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.08.2010, 10:43
Titel:
|
 |
ich bin immer noch nicht dahinter gekommen, warum der Plot der Kurven gerade Teilstücke sind und nicht gekrümmte Linien.
Bitte um Hilfe
mfg Flo
|
|
|
Thomas84 |

Forum-Meister
|
 |
Beiträge: 546
|
 |
|
 |
Anmeldedatum: 10.02.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.08.2010, 11:01
Titel:
|
 |
Du berechnest das Polynom ja nur an den Stützstellen. Wie es dazwischen aussieht weiss Matlab nicht und interpoliert daher einfach linear. Um das Polynom richtig zu erkennen musst du es an vielen Stellen berechnen lassen.
|
|
|
Florian85 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 40
|
 |
|
 |
Anmeldedatum: 29.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.08.2010, 14:29
Titel:
|
 |
danke thomas!
Hat funktioniert, aber ich hab bemerkt, dass polyfit und polyval nicht das richtige für meine zwecke ist.
hmmmm.....
ich bin ganz schön am verzweifeln....
gibt es eine möglichkeit, selber einen spline zu erstellen? nicht mit interp1 und auch nicht mit
.
Diese funktionen bauen mir in meine messpunkte einen fix definierten spline. ich kann zwar die anzahl der punkte verändern, aber der spline bzw. die kurve(bei interp1 mit'cubic' ) bleibt trotzdem immer dieselbe.
Ich frag mich schon langsam ob es im MATLAB überhaupt möglich ist diese Fläche so darzustellen wie es mein chef haben will
bin weiterhin überaus dankbar für jede hilfe und jeden tipp.
mfg Flo
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|