ich sitze nun schon einige Tage an einem Problem und finde die Lösung nicht. Mittlerweile bin ich mir schon so gut wie sicher, dass alles richtig ist, nur noch etwas in der Syntax der letzten Zeile falsch ist.
Ich versuche mit Matlab 2006b ein System von neun Gleichungen mit neun Unbekannten (symbolisch) zu lösen, so dass ich als Ergebnis die Werte von M1-3, O1-3 und d1-3 bekomme. Ich habe auch schon hier und anderen Foren und Tutorials geguckt, aber ich komme irgendwie leider nicht zur Lösung wohl teilweise auch deswegen weil ich noch ein ziemlicher Neuling in Matlab bin.
Also habt ihr ne Idee, oder seht ihr meinen Fehler?
Ich bin über jede Hilfe dankbar. schon jetzt danke für Vorschläge!
Grüße, Björn
naja entweder hast du einen copy-paste Fehler beim Kopieren der Gleichungen ins Forum, oder dich vertippt:
Bei Gleichungen eq4 bis eq6 fehlen Klammern:
Matlab R2009b meldet dann keinen Fehler mehr, aber rechnet auch lange ... hab die Rechnung dann abgeborchen. Existiert für das System überhaupt eine Lösung und ist hier nicht eher eine numerische Lösung sinnvoller ?
ich würde auch auf jeden Fall eine numerische Lösung anstreben. Oder zumindest soweit möglich Dinge eliminieren. tan(d1) etc. ergeben sich ja z.B. unmittelbar aus der linken Seite der jeweiligen Gleichungen und kommen soweit ich sehe nicht anderweitig vor. Auch die letzten Gleichungen für y, M0, M4 sollten direkt eingearbeitet werden.
Beim Beitrag von mr_endres fällt mir noch ein SI statt SIN auf.
Zur numerischen Lösung würde ich FSOLVE empfehlen.
...heißt das, dass es auf keinen Fall eine Lösung gibt, oder hat Matlab bloß keine gefunden? Denn ich bin mir sicher, dass es eine gibt.
Aber der Misserfolg ist ja noch nicht ganz so schlimm, da ihr ja noch die numerische Lösung vorgeschlagen hattet. Aber leider habe ich damit, obwohl ich mich intensiv mit der Hilfe zu fsolve und umfassender Suche im Internet beschäftigt habe noch keine Lösung.
Es hakt leider an mehreren Stellen, aber ich fange mal ganz simpel an:
Wenn ich in dem Beispiel was in der Hilfe angegeben ist x(1) zu x und x(2) zu y ändere bekomme ich mit
Abweichende, falsche Ergebnisse. Wie muss denn die Syntax richtig heißen? Denn ich wollte nach Möglichkeit in meinem Fall mit den 12 Parameter- und Variablennamen, der Übersicht halber, die urspünglichen Namen behalten und nicht gegen x(i) austauschen.
Ich habe sie zwar zu Testzwecken ausgetauscht um zu schauen ob ich so auf ein Ergebnis komme, aber mit folgendem in der M-File
Soviel zu meinen Versuchen. Aber wie schon gesagt würde ich gerne die Ursprünglichen Namen bebehalten, so dass ich folgenen Ausdruck benutzen kann (solange er richtig ist...):
Ich glaube das war so in etwa das was ich heute Nachmittag/Abend ausprobiert habe. Ich hoffe die Beschreibung ist nicht zu umfangreich, aber ich wollte meinen Stand so detailiert wie möglich beschreiben.
Ich danke euch schon mal für's Durchlesen und hoffe auf Tipps für die ich noch dankbarer bin.
nimm in deiner Funktion test die Leerzeichen nach SIN raus, dann funktionierts. Und wenn du deine Beiträge kürzer hältst, erleichtert das das Beantworten
Grüße,
Harald
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
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.