das mir genau n Werte in eine Zeile einer neuen Matrix schreibt. Ich möchte jetzt eine Schleife einfügen, dass er diese Simulation zb 10 mal durchführt und die immer weiter so speichert--> S1,S2,S3,S4...
Kann mir da jemand helfen??
hey
danke für di schnelle antwort, aber ich glaube ich hab mich falsch ausgedrückt, S0 ist einfach ein Startwert für den Prozess, speicheren soll er es unter S, S1,S2,S3.... (= Sim(S0, dT, n, mr , sd, alpha) )
oder passt der Code schon und ich steh nur auf der Leitung??
ich probiers noch einmal , ich habe jetzt folgende Schleife, die leider noch nicht funktioniert:
Code:
function M = SimulateMC(n, m, S0, dT, mu, sigma, lambda)
a = exp(-lambda*dT);
b = mu*(1-a);
c = sigma*sqrt((1-a*a)/2/lambda);
% definiert eine matrix mit m zeilen und jeweils n werten pro zeile - noch mit nullen befüllt, wird später befüllt
M = zeros(n, m);
% Schleife 1 (senkrecht = eine neue Zeile wird begonnen) for i=1:1:n
% Schleife 2 (waagrecht = die Zeile wird befüllt) for j=1:1:m % schleife beginnt bei 1: schritteweite ist 1; schleife endet bei n durchläufen
% Hier findet die Berechnung statt und wird an einen Platz in der Matrix geschrieben (Position[j])
M(i, j) = S0 filter(1,[1 -a], b+c*randn(1,n), a*S0);
Die ursprüngliche Funktion S = Simulate(S0, dT, n, mu, sigma, lambda) gibt mir einen Zeilenvektor mit n+1 Werten zurück, mit S0 als ersten Wert. Mit Hilfe der obenangeführten Schleife möchte ich, dass er diese Prozedur wiederholt und ein die Matrix M in jede Zeile jeweils eine Berechnung hineinschreibt. dh bei 10facher Wiederholung sollen 10 Zeilen mit jeweils n Werten in der Matrix M enthalten sein.
Kann mir jemand helfen wo das Problem liegt, bekomme wenn ich die Funktion ausführe nämlich immer eine Fehlermeldung
Also es kommt folgende Fehlermeldung:
??? Error: File: OU_SimulateMC.m Line: 17 Column: 29
Unexpected MATLAB expression.
im Editor: Line 17 Parse Error at 'filter': usage might be invalidt MATLAB syntax
Line 17 Terminate statement with semicolon to suppress output (in functions)
Line 17 -||-
Line 17 Parse error at ')': usage might...
Mit dieser Zeile hat er Probleme (ohne Schleife hat er keine Probleme damit):
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
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.