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

Nur reele Ergebnisse aus vielen Lösungen weiterverwenden ??

 

che-24
Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 04.04.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.04.2014, 20:58     Titel: Nur reele Ergebnisse aus vielen Lösungen weiterverwenden ??
  Antworten mit Zitat      
Hallo,
ich habe eine Frage bzgl. Matlab, ich habe mehrere Ergebnisse, will aber eins von den mehreren Ergebnissen hervorheben bzw. ich will nur dieses eine Ergebnis haben. Es handelt sich hier um mehrere komplexe Ergebnisse und nur eine reele Zahl (Nur diese soll verwendet werden für weitere Berechnungen).
Kann man Matlab nur auf reele Zahlen beschränken, so dass die komplexen Zahlen erst gar nicht errechnet werden?

Kann mir jemand helfen??? Question Question

Viele Grüße

Che
_________________

Wer kämpft der kann verlieren, wer nicht kämpft hat schon verloren!
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: 04.04.2014, 21:25     Titel:
  Antworten mit Zitat      
Hallo,

arbeitest du numerisch oder symbolisch?

Numerisch: du kannst dir am Ende mit
Code:

die reellwertigen Komponenten von x holen.

Symbolisch: definiere die Variablen mit
Code:


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

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 04.04.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.04.2014, 15:42     Titel:
  Antworten mit Zitat      
Vielen Dank Harald!

Leider konnte das Problem nicht gelöst werden:

Zitat:
syms a b c;
eqs= [a*exp(b*0.6)+c-Ta1==0,a*exp(b*12.3)+c-(Tend+(1/3)*(Ta1-Tend))==0,a*exp(b*24)+c-Tend==0]; % Ta1 und Tend bereits errechnet
S=solve(eqs,a,b,c,'Real',true);
S.a
S.b
S.c

% für a,b,c jeweils nur ein Realwert vorhanden. Andere Werte (komplex)
% kommen nicht in Betracht!

dis=2;
x=0.6:(23.4/dis):24;
Tx=a*exp(b*x)+c;
y=Tx;
plot(x,y)


Ziel ist es nur über die Realwerte zu Ploten..


Viele Grüße

Che
_________________

Wer kämpft der kann verlieren, wer nicht kämpft hat schon verloren!
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: 06.04.2014, 16:18     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Leider konnte das Problem nicht gelöst werden:

Hast du denn mal versucht, die Lösungsvorschläge umzusetzen - d.h. insbesondere die Variablen vorab als reellwertig zu definieren?

Bitte konkrete Werte für Ta1 und Tend angeben, damit man das Problem genau nachstellen kann.

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

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 04.04.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.04.2014, 17:11     Titel:
  Antworten mit Zitat      
Jap,

die Lösungsvorschläge haben leider nicht geklappt, zumindest haben wir es nicht hinbekommen. Für Ta1=1400 und Tend=1200 können Sie einsetzen. Wichtig ist jedoch, dass diese Werte ebenfalls aus vorherigen Berechnungen stammen.

VG
Che
_________________

Wer kämpft der kann verlieren, wer nicht kämpft hat schon verloren!
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: 06.04.2014, 19:34     Titel:
  Antworten mit Zitat      
Hallo,

mit den angegebenen Parametern bekomme ich genau eine, reellwertige Lösung.
Mit welchem Software-Release arbeitest du?

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

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 04.04.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.04.2014, 19:44     Titel:
  Antworten mit Zitat      
Die reellwertigen Lösungen erhalten wir auch, jedoch können wir erstaunlicherweise nicht plotten. Habs auch schon mit ezplot probiert...

Vllt liegt es am Format??

Wenn ich statt ezplot plot verwende, bekomme ich die Fehlermeldung: Conversion to double from sym is not possible.

Ehrlich gesagt weiss ich jetzt auch nicht wo der Fehler liegt. Bekomme die Fehlermeldung bei ezplot-eingabe: plotting curves requires 1 parameter.
Es fehlt jedoch kein Parameter!??!

Ich benutze Matlab 2013a bzw. 2014a.

Vielen Dank für deine Hilfe.
VG Che
_________________

Wer kämpft der kann verlieren, wer nicht kämpft hat schon verloren!
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: 06.04.2014, 20:16     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Die reellwertigen Lösungen erhalten wir auch,

Dann sag das doch...

Zitat:
Habs auch schon mit ezplot probiert...

Was hast du mit ezplot versucht? Also, welchen Code?

Tx enthält 3 Variablen - wie soll das denn geplottet werden?

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

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 04.04.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.04.2014, 22:00     Titel:
  Antworten mit Zitat      
Guten Abend,

also die drei Variablen a,b,c sollen die Ergebnisse übernehmen und wie Konstanten behandelt werden. Plot nach x und y. Also x-achse mit x und y.achse mit Tx=Funktionswerte besetzen.

VG

Che
_________________

Wer kämpft der kann verlieren, wer nicht kämpft hat schon verloren!
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: 06.04.2014, 22:08     Titel:
  Antworten mit Zitat      
Hallo,
Zitat:

also die drei Variablen a,b,c sollen die Ergebnisse übernehmen und wie Konstanten behandelt werden.

Woher soll MATLAB denn wissen, dass a den Wert von S.a annehmen soll etc.? Steht doch nirgends.

Code:
y=eval(subs(Tx, {a,b,c}, {S.a, S.b, S.c}));
plot(x, y)


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

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 04.04.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.04.2014, 15:24     Titel:
  Antworten mit Zitat      
Hallo Harald,

vielen Dank für deine Hilfe! Hat geklappt:-)

Alles Gute

Che
_________________

Wer kämpft der kann verlieren, wer nicht kämpft hat schon verloren!
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.