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

For-Schleife mit Vektor als Endwert

 

A.W.

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.07.2015, 19:39     Titel: For-Schleife mit Vektor als Endwert
  Antworten mit Zitat      
Hallo zusammen,

ich sitze momentan an einer Hausarbeit in Matlab, bei der ich nicht mehr weiterkomme Sad

Der Kontext sieht folgendermaßen aus:

Es soll eine eigene Trapez-Formel erstellt werden, die als Input eine Funktion, die Grenzen des Integrals und die Anzahl der Stützstellen erhält.

Die Funktion habe ich programmiert und funktioniert soweit auch, zumindest mit einer fest vorgegebenen Anzahl an Stützstellen.

Nun kommt der Punkt, an dem ich nicht mehr weiter weiss:

Übergebe ich der Trapezfunktion einen Vektor n z.B. mit 2:100, um den Fehler anhand der Anzahl der Stützstellen aufzuzeigen, zählt die enthaltene for-Schleife nur bis zum ersten Element von n (in diesem Fall 2) und hört dann auf.

Ich möchte aber erreichen, dass nacheinander die Elemente des Vektors durchlaufen werden, so dass ich als Ergebnis einen Vektor sum erhalte, der die Integrale in Abhängigkeit der Stützstellen zeigt, also
sum(1) = A (mit n = 2)
sum(2) = A (mit n = 3)
usw.

Bisher habe schon probiert mit doppelter Schleife zu arbeiten, indem ich den index von n durchlaufen habe, allerdings klappt es dann nicht mit der Summe von sum2 = sum2 + feval(...).

Ich hoffe jemand kann mir ein paar nützliche Tipps geben.


Code:

function sum = trapez(f, a, b, n)

h = (b-a)./n;

sum1 = feval(f, a) + feval(f, b);
sum2 = 0;

for k = 1:n-1;

    sum2 = sum2 + 2.*feval(f,a+k.*h);
       
end;

sum = h./2 .* (sum1 + sum2);

 


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 02.07.2015, 20:29     Titel:
  Antworten mit Zitat      
Zitat:
Bisher habe schon probiert mit doppelter Schleife zu arbeiten, indem ich den index von n durchlaufen habe, allerdings klappt es dann nicht mit der Summe von sum2 = sum2 + feval(...).
ohne den code kann man dazu wenig sagen. du must dann bei sum halt auch den index mitbenutzen.
_________________

richtig Fragen
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.