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

Raketenflug mittels DGL lösen

 

maerkler
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 15.08.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.08.2016, 15:35     Titel: Raketenflug mittels DGL lösen
  Antworten mit Zitat      
Hallo,

wir haben versucht mittels einer DGL und ode45 solver einen Senkrechten Raketenflug bzw. Abschuss zu programmieren. Problem: wir wollen eine Abbruchbedinung einbauen. Ab dem Punkt an dem der Treibstoff leer ist soll kein Schub mehr vorhanden sein. Hier unser Programm.
Hier das Hauptprogramm
Code:
clear all;
clc;
close all;

time_gesamt=[0 300];

h_way=[0 0];

  options=odeset('Events',@Abbruch);

[t,y]=ode45(@rakete2, time_gesamt, h_way,options);


plot(t,y(:,1))
title('h-distance')
xlabel('time[s]')
ylabel('höhe[m]')
figure
plot(t,y(:,2))
title('v-Geschwindigkeit')
xlabel('time[s]')
ylabel('Geschwindigkeit[m/s]')
 


Hier die DGL Funktion
Code:

function dy=rakete2(t,y)
ms=50;
m=9000;
F_A=120000;
g=9.81;
dy = [y(2);(F_A/(m-ms*t))-g];

 

Hier die Abbruchfunktion
Code:

function [value,isterminal,direction]= Abbruch (m,t)
mn=3000;
mn=m(1);
value(1)= m-mn;
isterminal(1)=1;
direction(1)=0;
 


Vielleicht hat jemand eine Idee.
Vielen Dank im Vorraus!
Private Nachricht senden Benutzer-Profile anzeigen


gs
Forum-Century

Forum-Century


Beiträge: 172
Anmeldedatum: 17.03.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.08.2016, 06:54     Titel:
  Antworten mit Zitat      
Hi,

Wie wäre es mit einer If-Abfrage?

Wenn Treibstoff leer, dann DGL = 0
sonst DGL lösen...


Müsste man jetzt noch auf Plausibilität prüfen, aber sowas in der Art.
Private Nachricht senden Benutzer-Profile anzeigen
 
maerkler
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 15.08.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.08.2016, 19:35     Titel:
  Antworten mit Zitat      
Hallo ,

wir hatten das versucht. Wo genau müssen wir die If-Abfrage einbauen.
Question
Private Nachricht senden Benutzer-Profile anzeigen
 
gs
Forum-Century

Forum-Century


Beiträge: 172
Anmeldedatum: 17.03.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.08.2016, 06:56     Titel:
  Antworten mit Zitat      
Na in deiner DGL...

If Treibstoff vorhanden, dann DGL berechnen
sonst
DGL nicht berechnen und letzten Wert nehmen
Private Nachricht senden Benutzer-Profile anzeigen
 
AKNOT
Forum-Century

Forum-Century


Beiträge: 129
Anmeldedatum: 12.10.11
Wohnort: Bochum
Version: R2018a
     Beitrag Verfasst am: 17.08.2016, 08:30     Titel:
  Antworten mit Zitat      
Soll die DGL-Berechnung wirklich abgebrochen werden oder soll weiter gerechnet werden aber ohne Schub? Ist F_A der Schub?
Private Nachricht senden Benutzer-Profile anzeigen
 
maerkler
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 15.08.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.08.2016, 09:47     Titel:
  Antworten mit Zitat      
Hi,

ja richtig die DGL soll nicht abgebrochen werden, sondern nur der Schub soll aufhöre da die Erdanziehung noch wirkt. Ja der Schub ist F_A.
Private Nachricht senden Benutzer-Profile anzeigen
 
AKNOT
Forum-Century

Forum-Century


Beiträge: 129
Anmeldedatum: 12.10.11
Wohnort: Bochum
Version: R2018a
     Beitrag Verfasst am: 17.08.2016, 09:58     Titel:
  Antworten mit Zitat      
Dann kannst du es doch trotzdem so machen wie gs es gesagt hat. Setze F_A Null, wenn t >= t_TreibstoffAlle erreicht ist.
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.