goMatlab - Mein MATLAB Forum

Mein MATLAB Forum

 
Login  | Registrieren
Bücher:

Ingenieurmathematik mit Computeralgebra-Systemen

Fachkräfte:
Testingenieur (w/m) Testframework für Simulink-basierte Echtzeitanwendungen
Pflege des MATLAB/Simulink-Testframeworks, Spezifizieren von Testkriterien, Testfällen und Testszenarien
dSPACE GmbH - Paderborn

Softwareentwickler MATLAB/Simulink (w/m)
Erarbeitung von Lösungen im Bereich der Schnittstelle zum Simulink-Modell und der Benutzeroberfläche von TargetLink
dSPACE GmbH - Paderborn

Testingenieur (w/m) Konfigurationswerkzeuge für Echtzeitsysteme
Einbinden von Simulink®-Simulationsmodellen, Verteilung der Simulationsmodelle auf Multicore- und Multiprozessorsysteme
dSPACE GmbH - Paderborn

Junior Softwareingenieur/in
Test von Softwarefunktionen im Bereich embedded Antriebssteuergeräteentwicklung
ESG Elektroniksystem- und Logistik-GmbH - München

Senior Softwareingenieur/in
Entwicklung von Funktionen
ESG Elektroniksystem- und Logistik-GmbH - München

weitere Angebote

Partner:




Vermarktungspartner


Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Integral durch Potenzreihenentwicklung bestimmen

 

Ovid
Forum-Fortgeschrittener
Forum-Fortgeschrittener

Beiträge: 79
Anmeldedatum: 25.06.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.10.2011, 17:42     Titel: Integral durch Potenzreihenentwicklung bestimmen
  Antworten mit Zitat      
Hallo, Leute!

Ich hab mal wieder ein Problem:

Ich soll den Wert des folgenden Integrals durch Potenzreihenentwicklung des Integranden bestimmen und anschließend gliedweise auf 6 Dezimalstellen nach dem Komma integrieren.
Dabei soll ich beim ersten Glied der Potenzreihe beginnen, das integrieren und das Ergebnis ausdrucken. Dann für jedes zusätzliche Glied das Ergebnis ausdrucken bis ich die Genauigkeit erreicht habe.

Hier die Aufgabe:


<br />
\int_a^b \! cos(\sqrt{x})  \, dx , a=0  und  b=0,5
<br />

Ich hab bei Matlab die Aufgabe so eingegeben, aber er zeigt mir cos(sqrt(x)) nicht als Potenzreihe an, sondern als Summe einer komplexen e-Funktion.

1. Gibt es bei Matlab einen Befehl, mit dem ich das Ergebnis als Potenzreihe darstellen kann?

2. Und wie kann ich gliedweise integrieren und das Ergebnis anzeigen lassen?

3. Und wie stelle ich dann das mit einer Genauigkeit ein?

Hier was ich bisher erreicht habe...:

Code:

symsum(cos(sqrt(n)),1,inf)
 


Das gibt er mir aus:

Code:

ans =
 
sum(exp(i*n^(1/2)), n = 1..Inf)/2 + sum(1/exp(i*n^(1/2)), n = 1..Inf)/2
 


Ich hoffe ihr könnt mir helfen... Crying or Very sad

freundliche Grüße

Ovid
Private Nachricht senden Benutzer-Profile anzeigen


Thomas84
Forum-Guru
Forum-Guru

Beiträge: 367
Anmeldedatum: 10.02.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.10.2011, 16:40     Titel:
  Antworten mit Zitat      
Code:

doc taylor % potenzreihenentwicklung
doc int % symbolisch integrieren
doc quad % numerisch integrieren
Private Nachricht senden Benutzer-Profile anzeigen
 
Ovid
Themenstarter

Forum-Fortgeschrittener
Forum-Fortgeschrittener

Beiträge: 79
Anmeldedatum: 25.06.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.10.2011, 18:57     Titel:
  Antworten mit Zitat      
Also mit der Hilfe von Matlab komme ich nicht klar... Sad
Welchen Ausdruck von Taylor benötige ich denn jetzt??

Oder reicht einfach "taylor(cos(sqrt(x)))" aus?

Und wenn ich dann das Ergebnis via "int('ans',0,0.5)" integrieren tu, dann kommt ein falsches Ergebnis raus.

statt 0,4393 kommt 1/8 raus.....

was mach ich da falsch? und wie kann ich das gliedweise integrieren und mir anzeigen lassen?
Private Nachricht senden Benutzer-Profile anzeigen
 
Ovid
Themenstarter

Forum-Fortgeschrittener
Forum-Fortgeschrittener

Beiträge: 79
Anmeldedatum: 25.06.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.10.2011, 19:52     Titel:
  Antworten mit Zitat      
Also, hab jetzt mal etwas probiert und komme auf folgendes:

[code][code][/code]
syms n x
digits(6)
f = cos(sqrt(x))
[/code]

Nachdem ich jetzt mit dem Befehl "taylor" und "int" die Funktion eingebe:

[code]
taylor(f,6)
int(ans,0,0.5)
[/code]

kommt das ergebnis plötzlich richtig heraus...

Allerdings wie kann ich das jetzt gliedweise integrieren und anzeigen lassen?

Hab das mit dem versucht:

[code]
for i=1; i=6;
taylor(f,i)
i = i+1;
end
[/code]

und dann mit:

[code]
int(f(i),0,0.5)
[/code]

allerdings kommt hier immer ein Fehler, da i nur der Zähler für die Taylor-Terme ist und ich diese Terme nicht direkt aufrufen kann.

Wie muss ich das verändern, ich komm da grad echt nicht weiter...
Private Nachricht senden Benutzer-Profile anzeigen
 
Thomas84
Forum-Guru
Forum-Guru

Beiträge: 367
Anmeldedatum: 10.02.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.11.2011, 08:07     Titel:
  Antworten mit Zitat      
Code:

syms n x
digits(6)
f = cos(sqrt(x))

for k = 1:6
pr{k} =  taylor(f,k);
integral_tot(k) = double(int(pr{k},0,0.5));
end

integral = [integral_tot(1),diff(integral_tot)]

 


Du hast es doch schon fast. Bestimme einfach am Ende die Differenz der einzelnen Integrationen.


Schleifen werden in Matlab übrigens anders geschrieben.
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
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
.


goMatlab ist ein Teil des goForen-Labels
goForen.de goMATLAB.de goLaTeX.de goPCB.de


 Impressum  | Werbung/Mediadaten | Studentenversion | FAQ | goMatlab RSS Button RSS


Copyright © 2007 - 2012 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
Partner: LabVIEWforum.de

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.