|
|
Gleichungssystem lösen und Ergebnis runden |
|
Flo_89 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 29.08.2012, 11:18
Titel: Gleichungssystem lösen und Ergebnis runden
|
 |
|
 |
|
Hallo zusammen,
ich habe folgendes Problem:
ich möchte die große und kleine Halbachse einer Ellipse aus derem konstanten Umfang und dem Volumen des sich durch Rotation um die große Halbachse bildenden Rotationsellipsoiden berechnen. In erster Näherung nehme ich dafür die einfachste Formel zur Berechnung des Umfangs einer Ellipse (an sich nicht analytisch lösbar). Der Umfang ist 4*pi. Das Volumen soll sich dabei über die Zeit verändern, was ich später einfüge. Für den Anfang nehme ich das maximale Volumen (was dem einer Kugel entspricht) mit 32/3 * pi an.
Damit 2 Gleichungen, 2 Unbekannte - an sich kein Problem.
Mit folgendem Algorythmus erhalte ich 6 Lösungen, davon 4 komplexe.
syms a;
S = solve('c = 4/3*32/3*pi*1/(pi*a^2)','4*pi = sqrt(2*(a^2+c^2))');
S = [S.a S.c]
Ich möchte aber nur die reelen angezeigt bekommen und die dabei auch gerundet, meinetwegen auf 4 Nachkomma-Stellen - und nicht in der komplizierten exakten Lösung durch Matlab.
Daher meine Fragen, wie ich Lösungen aus einer Schar ausschließen kann und meine Ergebnisse sinnvoll runden kann.
Danke für eure Hilfe
Flo
|
|
|
|
|
Flo_89 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 29.08.2012, 11:23
Titel:
|
 |
Beziehungsweise anders gefragt:
Gibt es eine Möglichkeit die Lösungen auszuwählen, wenn man den zu erwartenden Wertebereich kennt?
In meinem Fall läuft das c von ca. 3.15 gegen 2 und das a von 0.04 gegen 2.
Also mit steigendem Volumen wird der Rotationsellipsoiden größer und größer bis am letzten Punkt die Kugel erreicht ist (für a=c=2).
Danke
|
|
|
Flo_89 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 29.08.2012, 13:10
Titel:
|
 |
In meinen Code hat sich ein Fehler eingeschlichen, er muss korrekterweise so lauten:
syms a;
S = solve('c = 3/4*32/3*pi*1/(pi*a^2)','4*pi = sqrt(2*(a^2+c^2))');
S = [S.a S.c]
|
|
|
|
|
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.
|
|