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

iterativ Gleichung lösen

 

Smitty
Forum-Anfänger

Forum-Anfänger


Beiträge: 39
Anmeldedatum: 12.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.08.2011, 14:35     Titel: iterativ Gleichung lösen
  Antworten mit Zitat      
Hallo zusammen,
ich habe eine Gleichung, die ich nach T auflösen möchte:
Code:

T=c1+c2*(c3/c2)^(T*t*c4)

Darin ist T eine Funktion von t. c1 bis c4 sind bekannte und berechenbare Konstanten.
Es gibt bestimmt eine Möglichkeit diese Gleichung mit Matlab meintwegen durch raten einens Startwertes o.Ä. zu lösen.
Kann mit bitte jemand erklären wie ich am besten vorgehe?

edit:
was mit auch hlefen würde:
Ich möchte T im Bereich von 2250 bis 800 in 50er Schritten variieren, und zu jedem Schritt ein t berechnet bekommen

Dankeschön und Grüße
Smitty
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 30.08.2011, 15:07     Titel:
  Antworten mit Zitat      
Hallo,

ich gehe davon aus, dass mit T jeweils T(t) gemeint ist, nicht etwa T zu unterschiedlichen Zeitpunkten.

Willst du wirklich T angeben und t bekommen? Naheliegender wäre doch umgekehrt?

So oder so: das ist eine implizite Gleichung und kann z.B. mit FSOLVE gelöst werden.

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 39
Anmeldedatum: 12.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.08.2011, 15:11     Titel:
  Antworten mit Zitat      
hi,
besten dank schon mal. das mit dem T(t) ist richtig. Ich möchte wirklich das t berechnen. weil ich wissen will. nach wie vielen sekunden z.B eine Temperatur von 2000 K (als BSp) erreicht wird.
Ich probiers mal mit FSOLVE

Grüße
Smitty
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 30.08.2011, 15:19     Titel:
  Antworten mit Zitat      
Hallo,

das könntest du ja sogar von Hand auflösen, bzw. symbolisch mit SYMS und SOLVE, und dann deine Werte einsetzen.

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 39
Anmeldedatum: 12.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.08.2011, 15:38     Titel:
  Antworten mit Zitat      
ja,
so:
Code:
>> syms Tw T Tad Te t mPunkt R V p
>> solve(Tw-T+(Tad-Tw)*((Te-Tw)/(Tad-Tw))^(t*mPunkt*R*T/(V*p)),t)
??? Undefined function or method 'minus' for input arguments of type 'sym'.

nur das ich die fehlermeldung nicht verstehe.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 30.08.2011, 16:05     Titel:
  Antworten mit Zitat      
Hallo,

es gibt aus zunächst unerfindlichen Gründen Probleme mit - für symbolische Variablen. Unerfindlich, weil dein Code bei mir läuft.

Probiere bitte folgendes:
Code:
clear all
syms a b x
a - b
solve(a*x - b, x)


Bitte eventuelle Fehlermeldungen bei diesem Code posten.
Bitte auch angeben, mit welcher Version du arbeitest.
Code:
ver('symbolic')


Probier zudem mal
Code:

Dabei solltest du ein lange Liste erhalten, die etwas in der Art enthält
Zitat:
[...]\toolbox\symbolic\symbolic\@sym\minus.m % sym method


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

Forum-Anfänger

Forum-Anfänger


Beiträge: 39
Anmeldedatum: 12.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.08.2011, 08:55     Titel:
  Antworten mit Zitat      
Guten Morgen,
ich muss die oben genannte Gleichung wohl doch nach T(t) auflösen. Hab aber Null Ahnung wie ich das Problem lösen kann.
also wenn ich die Gleichung mit FSOLVE lösen möchte muss besteht mein erstes Problem in der Syntax.
Ich meine, dass bei meiner Funktion ja das T(t) auf beiden Seiten der Funktion steht und es grade darum geht.
Ich hoffe mein problem ist halbwegs verständlich formuliert Question

Grüße
Smitty
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 31.08.2011, 09:06     Titel:
  Antworten mit Zitat      
Hallo,

du hattest ja einen guten Ansatz, nur funktioniert er aus irgendeinem Grund bei dir nicht. Um herauszufinden, woran es genau liegt, hatte ich dir ja verschiedene Schritte empfohlen.

Sicher steht T auf beiden Seiten, aber du kannst ja das T auf die rechte Seite bringen - genauso, wie du das für den symbolischen Ansatz gemacht hast. Siehe auch Example 1 in
Code:

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 39
Anmeldedatum: 12.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.08.2011, 10:04     Titel:
  Antworten mit Zitat      
Hi,
hab das erste Problem inzwischen gelöst.
Code:
Undefined function or method 'minus' for input arguments of type 'sym'.

Diese Fehlermeldung kommt nicht mehr. Kann das was mit der Lizenz zu tuen haben?
ich nutze eine Studentenversion, 2010 B, die nur funzt wenn ich entweder im Uninetz bin oder die Matlab Lizens gebucht habe (über borrow licence). Gestern habe ich über diese gebuchte Lizenz gearbeitet, heute bin ich im VPN eingeloggt und die Rechnung ist möglich.

Grüße
Smitty
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 31.08.2011, 10:18     Titel:
  Antworten mit Zitat      
Hallo,

das kann durchaus sein.
Insbesondere kann es sein, dass zu dem Zeitpunkt gerade keine Lizenz für die Symbolic Math Toolbox verfügbar war. Ich hätte jedoch erwartet, dass es dann schon bei dem SYMS-Befehl einen Fehler gibt.

Evtl. auch mal mit dem Administrator in der Uni reden.

Ansonsten kannst du dich natürlich auch hier weiter rühren.

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.