|
Michael89 |

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 22.08.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: R2015a
|
 |
|
|
 |
|
Verfasst am: 26.08.2015, 11:00
Titel: Inverse Interpolation
|
 |
|
 |
|
Hallo,
ich habe ein 2D-Kennfeld, welches mir für das Eingangsmoment sowie die Ausgangsdrehzahl eines Getriebes den jeweiligen Wirkungsgrad ausgibt (eta = f(M_ein, n_aus)).
Nun möchte ich das ganze gerne umdrehen, dass ich den Wirkungsgrad in Abhängigkeit von Ausgangsmoment und -drehzahl bekomme (eta = f(M_aus, n_aus)).
Dazu muss die Funktion erst einmal invertierbar sein, was sie meiner Meinung nach aber ist.
Das Ausgangsmoment zu berechnen, ist ja nicht weiter schwierig (M_aus = M_ein*eta).
Allerdings benötige ich zum Interpolieren ja diese grid-Matrizen, und da der Wirkungsgrad nicht konstant ist, sind die Stützstellen des Ausgangsmomentes nicht mehr konstant über der Drehzahl. Und für dieses grid bekomme ich daher die Fehlermeldung "Data is not valid NDGRID format", wenn ich damit interpolieren möchte.
Ich muss also wohl erst mein Wirkungsgrad-Kennfeld so abändern, dass die zugehörigen M_aus für alle Drehzahlen konstant sind.
Muss ich das dann für jede einzelne Zeile machen oder funktioniert das auch für die ganze Matrix auf einmal?
Oder gibt es vielleicht eine Matlab-Funktion, die auch mit der "ungleichmäßigen" Matrix M_aus arbeiten kann? Mathematisch sollte das doch durchaus möglich sein, oder? Ich habe jedenfalls nichts gefunden.
Eine ähnliche Problemstellung gabs vor einigen Jahren schonmal hier: http://www.gomatlab.de/rueckwerts-i.....kwerts+interpolieren.html, das ganze blieb aber damals ohne Ergebnis und ich habe den Eindruck, dass das eigentliche Problem mit dem ungleichmäßigen M_aus damals nicht erkannt und daher auch nicht gelöst wurde.
Und hier http://stackoverflow.com/questions/.....put-grid-is-not-a-valid-m verstehe ich das so, dass das meinem Problem schon sehr nahe kommt, aber ich kapiere nicht, was da gemacht wird.
Ich habe einen Beispiel-Code angehängt, um das ganze nochmal zu verdeutlichen.
Viele Grüße
Michael
Beschreibung: |
|
 Download |
Dateiname: |
goMatlab_Kennfelder_invertieren.m |
Dateigröße: |
863 Bytes |
Heruntergeladen: |
389 mal |
_________________
OS: Windows 7 x64
|
|
|
|
|
Michael89 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 22.08.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: R2015a
|
 |
|
|
 |
|
Verfasst am: 27.08.2015, 11:59
Titel:
|
 |
Für den oben genannten Fall mit zwei Eingangsgrößen habe ich das Ganze nun hinbekommen. Ich schreibe mir die neuen, gewünschten Eingangansgrößen M_aus und n_aus jeweils in Spaltenvektoren (Zusatz _SV), genauso wie die zugehörigen Wirkungsgrade.
Mittels
erstelle ich mir dann eine neue Interpolationsfunktion F.
Diese kann ich dann mit neuen Stützstellen als eigene Funktion abspeichern und damit wie gewohnt interpolieren.
Nun brauche ich das aber auch für ein Kennfeld mit vier Eingangsgrößen. Allerdings funktioniert
scatteredInterpolant
nur für 2-D und 3-D.
Gibt es eine Möglichkeit, das auch für den n-dimensionalen Fall zu machen, ich habe in der Documentation nichts dazu gefunden.
griddedInterpolant
unterstützt zwar auch n-D, aber das funktiioniert bei mir eben nicht, da ich ja gerade keine gridded Data habe.
Viele Grüße
Michael
_________________
OS: Windows 7 x64
|
|
|
|
|
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.
|
|