|
|
Format Funktion funktioniert nicht |
|
andiMat1001 |

Forum-Anfänger
|
 |
Beiträge: 10
|
 |
|
 |
Anmeldedatum: 15.03.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.03.2014, 14:52
Titel: Format Funktion funktioniert nicht
|
 |
Hallo,
Habe eine Funktion berechnet.
Folgendes Ergebnis wurde ausgegeben:
d =
1847351001^(1/2)/80000 + 72731/80000
72731/80000 - 1847351001^(1/2)/80000
Wieso rechnet Matlab die Werte nicht aus? Auch mit "format short" oder "format compat" ändert sich nichts. Was mache ich falsch. Ich möchte generell da Ergebnis als Dezimalzahl ausgeben lassen.
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 15.03.2014, 15:26
Titel:
|
 |
Hallo,
Zitat: |
Habe eine Funktion berechnet.
Folgendes Ergebnis wurde ausgegeben: |
Dann fehlt nur noch die Information, wie diese Ergebnis zustandekommt.
Meine Vermutung ist, dass dies das Ergebnis einer symbolischen Berechnung ist. Dann können double oder eval hilfreich sein.
Grüße,
Harald
|
|
|
andiMat1001 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 10
|
 |
|
 |
Anmeldedatum: 15.03.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.03.2014, 15:54
Titel:
|
 |
Hallo Harald,
wenn ich beispielsweise
y=0.058*x+a eingebe und Enter drücke schreibt Matlab
y=a + (29*x)/500
Warum?
(y, x, a sind Variablen)
_______________
Wie genau muss die Angabe lauten, dass meine Variable als double oder eval ausgegeben wird?
"format double" funktioniert nicht.
Ich kenne mich leider noch nicht so genau aus mit Matlab. Ich fange gerade erst an es zu lernen.
Grüße
Andi
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 15.03.2014, 16:13
Titel:
|
 |
Hallo,
bitte komplett reproduzierbare Befehle angeben und Rückfragen beantworten.
Warum nicht? Die Schreibweisen sind äquivalent.
Zitat: |
"format double" funktioniert nicht. |
Das ist kein Wunder und war auch nicht mein Vorschlag. Mein Vorschlag war, double oder eval für sich genommen zu verwenden.
Zitat: |
Ich kenne mich leider noch nicht so genau aus mit Matlab. Ich fange gerade erst an es zu lernen. |
Gerade dann sollte man sich aber schon die Mühe machen, die Dokumentation zu den vorgeschlagenen Befehlen zu lesen, z.B.
Grüße,
Harald
|
|
|
andiMat1001 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 10
|
 |
|
 |
Anmeldedatum: 15.03.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.03.2014, 18:26
Titel:
|
 |
Hallo Harald,
hier ein Beispiel
a=0.0057;
b=1;
c=2.128;
syms g d
g=-1/(d-a)-1/(d-b)-2/(d-c)
d=solve(g==0,d);
d=double(d)
Nun wird das Ergebnis als Dezimalzahl angezeigt. Irgendwie umständlich. Geht es auch anders. Zudem wird die Gleichung g wieder mit Brüchen ausgegeben. Wie kann ich das verhindern?
Grüße
Andi
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 16.03.2014, 18:43
Titel:
|
 |
Hallo,
was genau ist dir daran zu umständlich?
Alternativ zur symbolischen Lösung einer Gleichung und dem Einsetzen eines Werts kannst du Gleichungen auch direkt numerisch lösen, z.B. mit fsolve oder fzero.
Grüße,
Harald
|
|
|
andiMat1001 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 10
|
 |
|
 |
Anmeldedatum: 15.03.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.03.2014, 00:25
Titel:
|
 |
Hallo Harald,
Beispielsweise habe ich diese Übertragungsfunktion:
0.16
G= -------------------------------------------
s^4 + 4.75 s^3 + 3.125 s^2 + 0.5 s
Dann möchte ich mir den Nenner alleine anzeigen lassen, dann schreibt Matlab:
den= s^4 + (19*s^3)/4 + (25*s^2)/8 + s/2
Toll, dann rechne ich von Hand 19/4 und 25/8, damit ich sehe, dass es das selbe Polynom wie in der Übertragungsfunktion ist.
Ich möchte immer Dezimalzahlen angezeigt bekommen.
|
|
|
|
|
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.
|
|