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

Funktion wird nicht geplottet

 

M aus Z
Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 12.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.09.2013, 12:36     Titel: Funktion wird nicht geplottet
  Antworten mit Zitat      
Hallo lieben Forengemeinde,

nachdem mir schon so toll bei meinem Zeitdiskretisierungsproblem geholfen wurde, hoffe ich auch diesmal, dass mir jemand bei der Lösung meines Problems behilflich sein kann.

Ich habe folgende Funktion gegeben:

Vm=Vf * (1-e^{-a(1/D-1/Dmax)})

Diese möchte ich nun gerne plotten. 'Vf' steht dabei für die freie Geschwindigkeit (bspw. 50 km/h), 'Vm' ist die gesuchte mittlere Geschwindigkeit, 'a' ist ein straßenspezifischer Parameter (Wert > 0) und 'D' stellt die Verkehrsdichte dar (sollte so zwischen 50 und 80 liegen). Es soll der Zusammenhang zwischen Geschwindigkeit und Dichte dargestellt werden (also y=Vm und x=D, wenn mich nicht alles täuscht).

Mein Code dazu würde folgendermaßen aussehen:

Code:

clear;
clc;
close all;
Vf=50;
a=0.5;
for D = 1:70
 Vm(D)=Vf*(1-(exp(-a*D)));
end;
plot(D,Vm(D),)
 


Wäre klasse, wenn mir jemand sagen könnte, wo ich den grundlegenden Fehler mache, ich find ihn nämlich nicht. Embarassed

Die besten Grüße
M aus Z
Private Nachricht senden Benutzer-Profile anzeigen


HauNei
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 55
Anmeldedatum: 18.04.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.09.2013, 12:48     Titel:
  Antworten mit Zitat      
Hallo M aus Z
so wie du dein Programm geschrieben hast,
plottest du nur den letzten Wert von Vm,
da dein Plot-Befehl, nach deiner forschleife kommt, und du an diesen nur Vm(D) übergist, was nur ein Wert ist,
Wenn du
Code:

eingibst sollte es passen, dann schreibt er deinen gesamten Vektor in den Plot.
Viele Grüße
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 09.09.2013, 12:51     Titel:
  Antworten mit Zitat      
anmerkung:
Zitat:
Code:

ist nicht hilfreich. warum nicht steht gefühlt in jedem 2. post in diesem forum ^^
solche fehler wie du sie hast finden sich meist schnell mit dem debugger. es ist immer hilfreich den mal auszuprobieren. was allerdings bei denem code dank des ausschnitts den ich gepostet hab nicht geht ^^
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
M aus Z
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 12.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.09.2013, 12:53     Titel:
  Antworten mit Zitat      
Hallo HauNei,

vielen Dank für deine schnelle Antwort. Wie du es mir geraten hast, hab ich es auch schon probiert; leider erfolglos. Sad Ich sehe einfach keinen Plot.

Edit: Ah, jetzt hab ich erst gesehen, dass ich das 'D' im plot-Befehl weglassen soll. Da kommt auch ne schöne Kurve, allerdings sollte es eher so aussehen, wie im Anhang. Ich glaube aber, dass ich die vorgegebene Formel falsch interpretiere... Die einzelnen Argumente im Exponenten sind durch Slash getrennt ((1/D-1/Dmax)), was wohl nicht heißt, dass es ein Bruch ist, oder?

@Winkow: Das mit den ganzen "clc,clear,close all" tut mir leid. Ich gelobe Besserung. Was das Debuggen angeht: Mein Knopf, der das Programm zum Laufen bringt, ist gleichzeitig der Debug-Knopf. Ich weiß also nicht so recht, wie ich mir den zu Nutze machen kann. Laughing

b1.jpg
 Beschreibung:

Download
 Dateiname:  b1.jpg
 Dateigröße:  24 KB
 Heruntergeladen:  1065 mal


Zuletzt bearbeitet von M aus Z am 09.09.2013, 13:09, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen
 
M aus Z
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 12.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.09.2013, 13:41     Titel:
  Antworten mit Zitat      
Hallo nochmal,

habs jetzt endlich gescheit zum Laufen gekriegt, u.a. dank eurer Hilfe. Smile Hab die Parameter noch angepasst und "D" als x-Vektor im Plot-Befehl definiert. Die Skalierung werd ich noch anpassen, aber im Großen und Ganzen kommt es dem geposteten Bild schon nahe. Hier der Code:

Code:

Vf=50;
Dmax=60;
a=Dmax./2;
D=0:0.1:Dmax;
 Vm=Vf.*(1-exp(-a.*(1./D-1./Dmax)));

figure(1)
plot(D,Vm,'-r');
 


Die besten Grüße,
M aus Z
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 12.09.2013, 13:46     Titel:
  Antworten mit Zitat      
Zitat:
n Knopf, der das Programm zum Laufen bringt, ist gleichzeitig der Debug-Knopf. Ich weiß also nicht so recht, wie ich mir den zu Nutze machen kann.
dann soltest du dich mal mit dem debugger auseinander setzen und wie er funktioniert.
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 12.09.2013, 13:57     Titel:
  Antworten mit Zitat      
Zitat:
Was das Debuggen angeht: Mein Knopf, der das Programm zum Laufen bringt, ist gleichzeitig der Debug-Knopf. Ich weiß also nicht so recht, wie ich mir den zu Nutze machen kann. Laughing


In Octave solltest du Funktion DBSTOP nutzen, um einen Breakpoint zu setzen.
Private Nachricht senden Benutzer-Profile anzeigen
 
M aus Z
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 12.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.09.2013, 14:07     Titel:
  Antworten mit Zitat      
Habt ihr zufällig nen schönen Link, wo das beschrieben steht? Meine Hilfe im Editor/Debugger kann ich zwar anklicken, aber da passiert nichts. Rolling Eyes
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 - 2024 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.