WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Gleichung symbolisch nach Variable umstellen?

 

fztstudent87
Forum-Anfänger

Forum-Anfänger


Beiträge: 20
Anmeldedatum: 25.11.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.11.2012, 22:37     Titel: Gleichung symbolisch nach Variable umstellen?
  Antworten mit Zitat      
Hallo,

möchte eine gleichung symbolisch nach einer variable umstellen. Habe schon einiges im Internet gesucht und ausprobiert aber leider funktioniert der solve-Befehl nicht Confused
Was mach ich falsch? Hier mein Code:

Code:
syms a b c d
>> d=a*exp(b*c)
 
d =
 
a*exp(b*c)
 
>> solve(d,c)
Warning: Explicit solution could not be found.
> In solve at 169
 
ans =
 
[ empty sym ]
 
>>


Möchte die Formel einfach nur symbolisch nach c umstellen. So schwer kann das doch nicht sein, oder?

Vielen Dank im Voraus und
Viele Grüße
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 27.11.2012, 23:00     Titel:
  Antworten mit Zitat      
Hallo,

MATLAB setzt diese Gleichung gleich 0, versucht also
a*exp(b*c) = 0
zu lösen.
Ich würde MATLAB hier nun nicht vorwerfen, dass es dies nicht nach c auflösen kann, weil es außer im Sonderfall a=0 schlicht und einfach keine Lösung gibt.

Wenn die Gleichung nicht zu kompliziert ist und es eine (explizite) Lösung gibt, dann wird die in der Regel auch gefunden. Beispiel ähnlich deinem:
Code:
syms a b c d e
d=a*exp(b*c) - e
solve(d,c)
 


Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
fztstudent87
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 20
Anmeldedatum: 25.11.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.11.2012, 11:45     Titel:
  Antworten mit Zitat      
Ok, danke, da hast du Recht.
deshalb setz ich jetzt einfach mal werte für a und b ein und möchte für ein spezifisches d die Gleichung nach c auflösen lassen.
Leider funktioniert es nicht Embarassed

Hier mein Code:

Code:
>> a=0.05

a =

    0.0500

>> b=0.045
syms c d

b =

    0.0450

>> d=a*exp(b*c)
 
d =
 
exp((9*c)/200)/20
 
>> solve(d=0.5,c)
 solve(d=0.5,c)
       |
Error: The expression to the left of the equals sign is not
a valid target for an assignment.


Wo liegt der Fehler. Dass muss doch möglich sein.

Vielen Dank und Viele Grüße

PS: Mache diese Turnübung nicht, weil ich zu blöd bin, manuell umzustellen, sondern weil ich erstmal ein möglichst einfaches Bsp. probieren wollte, um das später auf kompliziertere, "lohnenswertere" Formeln übertragen zu können.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 28.11.2012, 12:23     Titel:
  Antworten mit Zitat      
Hallo,

es muss entweder alles auf eine Seite gebracht werden
Code:
oder == verwendet werden, weil auf Gleichheit überprüft werden soll.
Code:


In der Hilfe gibt es übrigens etliche Beispiele zur Anwendung des solve-Befehls:
Code:

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.