|
|
quadratische Gleichung lösen und reelle Werte speichern |
|
Moses84 |

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 11.05.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.05.2012, 15:44
Titel: quadratische Gleichung lösen und reelle Werte speichern
|
 |
Hallo zusammen,
ich habe eine m-file, in der eine Vielzahl von quadratischen Gleichungen gelöst werden sollen. Mit den positiven Ergebnissen möchte ich in der gleichen m-file weiter arbeiten.
Es handelt sich immer um die gleiche Formel die gelöst werden muss. Sie hat die Form:
Für einen bestimmten Vektoreintrag z.B. j(end)=0.83*94/60*5.8 erhalte ich mit
die zwei richtigen Lösungen, wobei mich die negative nicht interessiert.
Habt ihr eine Idee für mich, wie ich das umsetzen kann?
Hab erst vor ein paar Tagen angefangen mit Matlab zu arbeiten, darum bitte nicht zu knapp erklären...
Danke, Moses
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 11.05.2012, 15:57
Titel:
|
 |
Hallo,
wenn du eine Vielzahl von solchen Gleichungen hast, solltest du mit ROOTS arbeiten statt das ganze halb-symbolisch zu lösen.
Die zweite Zeile kann wohl durch
ersetzt werden, aber ich möchte nicht garantieren, dass da im komplexwertigen Fall das richtige herauskommt.
Grüße,
Harald
|
|
|
Moses84 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 11.05.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.05.2012, 16:52
Titel:
|
 |
Hallo Harald,
danke für deine rasche Antwort.
Folgendes hab ich ausprobiert, wobei ich meine Konstanten wegen der ersten aufgetretenen Fehlermeldung in Vektoren umgeschrieben habe:
Jetzt kommt folgende Fehlermeldung:
Die Variablen wp1eq, wp2eq und je haben alle die gleiche Dimension, das wurde bei der ersten Fehlermeldung 'kritisiert'. Stimmt jetzt irgendwas an der Syntax nicht? In line 24 steht bei mir nix.
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 11.05.2012, 19:24
Titel:
|
 |
Hallo,
roots kannst du nur auf eine Gleichung anwenden, da müsste also eine Schleife über die Gleichungen kommen.
Wenn du eine Schleife vermeiden möchtest, könntest du versuchen, das einmal symbolisch zu lösen und dann mit matlabFunction ein Function Handle daraus erzeugen, und dann deinen Vektor vs einsetzen.
Oder natürlich die quadratische Formel verwenden und das manuell herleiten.
Grüße,
Harald
|
|
|
Moses84 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 11.05.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 12.05.2012, 17:34
Titel:
|
 |
Auf diesem Weg komme ich zum Ziel.
Aber gibt es auch eine elegantere Lösung? Denn jetzt lege ich eine Datei an und schreibe meine Nullstellen für jeden Schleifendurchlauf zeilenweise ein, nur um sie im folgenden Schritt wieder auszulesen und mir den gewünschten Vektor anzeigen zulassen.
Meine Matlab Kenntnisse sind recht jung und Verbesserugsvorschläge sind mir willkommen - wie schreibe ich die positiven Nullstellen direkt in den Vektor v_S_iter?
Nochmals danke für den Hinweis auf die Funktion root und allen Interessierten einen schönen Samstag Abend.
Moses.
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 12.05.2012, 18:01
Titel:
|
 |
Hallo,
warum schreibst du in eine Datei? Warum legst du das nicht in einer Variable welcher Art auch immer ab? Im Zweifelsfall in einem Cell Array...
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
|
|
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.
|
|