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

zeitechte Simulation

 

Birgit

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.12.2008, 21:00     Titel: zeitechte Simulation
  Antworten mit Zitat      
Hallo
ich habe eine Frage ich simuliere in Matlab ein Doppelpendel,
was auch etwa zeitecht funktoniert.
Das mache ich, indem ich 2 Kreise und Linien in einer Schleife immer neu setze (ensprechend dem Ergebnis des ODEs).(+Pause in der Länge der berechneten Zeitabstände)
Jetzt möchte ich aber, dass das untere Pendel eine Linie nachsich zieht (das mache ich zur Zeit mit dem line befehl).
Bei jedem Durchlaufen der Schleife wird eine kurze Linie gezeichnet.
Mein Problem:
Die Animation funktioniert immernoch, wird jetzt aber mit der Zeit immer langsamer.
woran liegt das?
wie kann ich das ändern, so das meine Simulation auch mit nachgezogner Linie in gleichem Tempo abläuft?
Vielen Dank in vorraus für jeden Tip


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 04.12.2008, 00:10     Titel:
  Antworten mit Zitat      
Hallo,
du sollst jedes Objekt am besten nur einmal zeichnen, und dann nur die Positionen ändern. Das ist viel schneller als Objekt neu zu zeichnen.

Warum die Simulation mit der Zeit langsamer wird, kann ich nur vermuten,deswegen sollst hier etwas genaue beschreiben, was du machst, vielleicht mit dem Beispiel.
Verwendest du drawnow?
Es kann daran liegen, dass du jedesmal die Linie neuzeichnest, löschst du überhaupt die alte? oder was machst du an dieser Stelle genau
Private Nachricht senden Benutzer-Profile anzeigen
 
Birgit

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2008, 09:12     Titel: RE:Antwort
  Antworten mit Zitat      
Hallo
vielen Dank erstmal für deine Hilfe.

Also um die Pendel zu simulieren habe ich am Anfang einmal 2 Linien und zwei Kreise gezeichnet mit "line" und rectangle".
Diese setze ich über "set" in der Schleife nur immer wieder an eine andere Position.
Das funktioniert soweit auch, die simulation wird nicht langsamer.
Aber ich will ja zusätzlich hinter der unteren Kugel eine Linie wie ein Faden herziehen, der den Weg der Kugel nachzeichnet.
Dafür zeichne ich in jeder schleife eine kleines Linienstück,mit"line"(von der vorigen Position der Kugel zur jetzigen Position der Kugel) was ich nicht wieder lösche weil alle Linienstücke zusammen den Faden darstellen sollen.
Das funktioniert auch ,nur die simulaion wird eben umso langsamer desto länger der Faden wird.
Ich verwende nicht drawnow sondern setze nach jeder schleife eine Pause von 0.001 Sekunden.
Ich habe es aber auch schon ohne Pause und mit drawnow versucht wird auch langsamer.
Liegt es vieleicht daran, dass das Grafikfenster sich jedesmal neu aufbaut?
Also auch die eigentlich schon vorher gezeichneten Elemente also in diesem Fall die Linien neu zeichnet und deshalb länger braucht weil es mit der Zeit so viele Linien werden?
 
dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2008, 11:03     Titel:
  Antworten mit Zitat      
Hallo,

für eine zeitgesteuerte bzw. Animation mit konstanter Frequenz bietet sich das Timer-Objekt an
Code:


MfG
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.