|
|
Code oder Funktion zur Bestimmung von Unbekannten |
|
Simon1508 |

Forum-Newbie
|
 |
Beiträge: 3
|
 |
|
 |
Anmeldedatum: 24.02.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.02.2016, 13:00
Titel: Code oder Funktion zur Bestimmung von Unbekannten
|
 |
Hallo zusammen,
ich kenne mich mit Matlab leider kaum aus, muss jetzt aber durch die Uni auf Funktionen des Programms zurückgreifen, da die Gleichungen manuell nicht mehr lösbar sind.
Die folgenden Gleichungen habe ich gegeben:
Q. = (T.*a + D.*b + H.*c)*x
Q. = (T.*a) * (D.*b) * (H.*c) *x
Die Vektoren Q., T., D. und H. sind bekannte Spaltenvektoren und haben jeweils über 17000 Zeilen. Mit Matlab möchte ich die ideale Kombination der Konstanten a, b, c und x bestimmen, sodass am Ende der Fehler zwschen den errechneten Werten und meinem vorgebenen Q möglichst gering ist. Für die Konstanten würde ich gerne jeweils einen Wert und keinen Vektor zurück bekommen. Meine Ansätze über solve und linsolve haben leider nur zur Fehlermeldungen geführt und mit der Programmierung von Schleifen kenne ich mich nicht aus.
Vielen Dank schon mal im voraus,
Viele Grüße
|
|
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 24.02.2016, 13:31
Titel:
|
 |
Zitat: |
Meine Ansätze über solve und linsolve haben leider nur zur Fehlermeldungen |
ohne den code und die fehlermelungen kann man dir bei diesem problem dann nur schwer helfen oder ?
_________________
richtig Fragen
|
|
|
Simon1508 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 3
|
 |
|
 |
Anmeldedatum: 24.02.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.02.2016, 13:47
Titel:
|
 |
Da ich nicht wusste, ob die Ansätze überhaupt zielführend sind oder ob Matlab für mein Problem noch eine ganz andere Funktion bietet, hatte ich zuerst auf den Code verzichtet.
Q, T, D und H habe ich aus einer Excel Datei über Import Data importiert.
Kann linsolve denn mehrere Konstanten gleichzeitig berechnen?
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 24.02.2016, 14:43
Titel:
|
 |
hmm wenn a b c und x skalare sind müsste man die doch zu drei variablen zusammen fassen können oder= interessant ist ja dann nur ax bx und cx oder?
und dann soltle doch
gehen oder? dann wird ein least square fit gemacht wenn ich mich nicht irre. p ist dann[ax,bx,cx]
zu deiner fehlermeldung du versuchst eine zuweisung zu machen innhalb eines anderen codes das passt da nicht. außerdem paast die syntax so überhaubt nicht zur doc. welches release verwendest du ?
_________________
richtig Fragen
|
|
|
Simon1508 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 3
|
 |
|
 |
Anmeldedatum: 24.02.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.03.2016, 19:15
Titel:
|
 |
Ja das stimmt. Das hat so wunderber geklappt und ich habe mit dem Ansatz Lösungen für die Skalare a, b und c bekommen. Vielen Dank!!
Wenn ich allerdings eine muliplikative Verknüpfung der Form T*D*H*x habe und keine additive, dann kann ich den Ansatz ja nicht verwenden. Muss ich dann eine Schleife programmieren, die Matlab immer wieder durchläuft, bis die optimale Lösung gefunden ist?
In dem Fall wäre es ja egal, ob ich T*a*D*b*H*c rechne oder einfach nur T*D*H*x, damit ich nur den einen Skalar bestimmen muss.
T, D, und H sind weiterhin 17200x1 Vektoren und x einfach nur ein Skalar.
Ich verwende die Version 2013b.
|
|
|
|
|
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.
|
|