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

nummerische Integration

 

spright
Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 12.12.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.08.2012, 17:39     Titel: nummerische Integration
  Antworten mit Zitat      
Hallo, liebe MatLab-Gemeinde!

Ich stehe gerade vor einer Integration, wie der Ochs vor dem Berg.

Die Gleichung sieht so aus, und kann direkt in den Editor kopiert werden:
Wichtig ist aber hierbei eigtl nur die linke Seite, die mich in den Wahnsinn treibt. Die rechte Seite ist kein Problem.

Code:
Dp*(-1)*(1-phi^2*(1-(pU/p0)^((k-1)/k)))/(p0^((k-1)/(2*k))...
    *sqrt((k/(k-1))*(1-(pU/p0)^((k-1)/k))))=Konstante*Dt


Die Gleichung findet ihr auch noch einmal im Anhang als pdf, da es so doch sehr unübersichtlich ist.


Mein Problem ist, dass in dem Buch, mit dessen Hilfe ich diese Gleichnung hergeleitet habe, steht, dass sie sich nur nummerisch integrieren lässt.
Wie mach ich das mit MatLab? Hab ehrlich gesagt, keinen blassen Schimmer und meine Programmierkenntnisse gehen eher gegen Null.

Bitte,bitte helft mir...ich wäre euch sehr dankbar

Formel_p_ukrit_Hauptdatei.pdf
 Beschreibung:
Das ist die komplette Gleichung. Jedoch bezieht sich mein Problem nur auf die linke Seite.

Download
 Dateiname:  Formel_p_ukrit_Hauptdatei.pdf
 Dateigröße:  82.19 KB
 Heruntergeladen:  398 mal
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden


MaFam
Forum-Meister

Forum-Meister


Beiträge: 799
Anmeldedatum: 02.05.12
Wohnort: ---
Version: R2009b
     Beitrag Verfasst am: 11.08.2012, 18:28     Titel:
  Antworten mit Zitat      
Hallo,

Code:

f=@(p0) Dp*(-1)*(1-phi^2*(1-(pU/p0)^((k-1)/k)))/(p0^((k-1)/(2*k))...
    *sqrt((k/(k-1))*(1-(pU/p0)^((k-1)/k))));

intval=quad(f,"Wert für linke Grenze", '"Wert für rechte Grenze");
 


Ich vermute aber mal, dass du da eine DGL durch Trennung der Veränderlichen lösen wolltest. Ist das der Fall, müsstest du die DGL in der Ausgangsform an einen geeigneten Solver übergeben: ode23, ode45...

Grüße, Marc
Private Nachricht senden Benutzer-Profile anzeigen
 
spright
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 12.12.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.08.2012, 20:07     Titel:
  Antworten mit Zitat      
Hallo, Marc!

Danke für deinen schnellen Tip. Du hast recht, es ist eine DGL ich habe sie schon nach den Variablen getrennt. Jetzt müsste ich doch nur noch jede Seite integrieren und einen Anfangswert angeben Bsp: p0(0)=p01....
Funktioniert das incht mit einem einfachen Integrationsbefehl?

Kann mir Matlab denn dann eine Wertetabelle ausgeben, damit ich mit diesen Werten weiterrechnen kann? Wie funktioniert das?
Und, wie funktionieren die ODE? hab mir das zum ODE45 angeschaut aber nich richtig kapiert....liegt wahrscheinlich dran, dass Samstag abend ist Sad

Danke...aber ich steh immer noch aufm Schlauch
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
MaFam
Forum-Meister

Forum-Meister


Beiträge: 799
Anmeldedatum: 02.05.12
Wohnort: ---
Version: R2009b
     Beitrag Verfasst am: 12.08.2012, 12:16     Titel:
  Antworten mit Zitat      
Hallo,

bringe, wie schon erwähnt die DGL in die Ausgangsform y'=f(y,t). Schaue dir dir Hilfe zu ode45 usw. an. Dort steht sehr gut beschrieben, wie man die DGL definiert und dann an den Solver übergibt.

Grüße, Marc
Private Nachricht senden Benutzer-Profile anzeigen
 
spright
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 12.12.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.08.2012, 18:45     Titel:
  Antworten mit Zitat      
So, ich bins wieder...Danke, Marc.Habe mich jetzt etwas in die ODEs eingelesen. Benutze den Solver ode45 im Moment. Jedoch bringt er mir bei der Lösung dann nicht die Ergebnisse, die ich erwartet habe bzw komme Ergebnisse mit imaginärem Teil heraus. Nun kenne ich mich mit den Solvern nicht so aus, Kann es sein, dass ich dafür einen anderen als den Solver ode45 nehmen muss?....In dem Buch aus dem ich diese Gleichung habe, steht ja, dass es nummerisch integriert werden muss. Zudem wurde ein Diagramm abgebildet an dem ich den Verlauf ablesen kann und da gibt es keine imaginären Anteile.
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
MaFam
Forum-Meister

Forum-Meister


Beiträge: 799
Anmeldedatum: 02.05.12
Wohnort: ---
Version: R2009b
     Beitrag Verfasst am: 13.08.2012, 19:07     Titel:
  Antworten mit Zitat      
In dem Ausdruck taucht eine Wurzel auf. Hast du das richtige Integrationsgebiet und einen richtigen Startwert verwendet?
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.