MC-Simulation < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) überfällig | Datum: | 20:34 Do 04.10.2007 | Autor: | NY152 |
Hallo,
ich habe eine Frage bzgl. einer MCS mit Matlab. Der Code ist unten aufgeführt.
Folgendes Problem habe ich, die ich nicht lösen kann. Die Simulation funktioniert, aber nur für M=4000 Pfade. Wenn ich mehr als 4000 bzw. 4500 eingebe, dann meldet Matlab die folgende Fehlermeldung "Out of memory". Daraufhin habe ich eine äußere Schleife implementiert, mit der Idee, daß nach jedem Durchgang eine Teilmatrix mit save gespeichert werden soll. Es sollte also S(1), S(2),....,S(25) gespeichert werden, so daß ich am Ende eine MCS mit 100000 Pfaden habe. S sollte wie folgt konstuiert werden: S = [ S(1); S(2);....;S(25) ]. Nur mit dem Speichern und Konstruktion habe ich meine Probleme.
%
%
%==========================================================================
% MC-Simulation
%
%==========================================================================
%
clear all; clc;
%
%Inputdaten und Schrittweite
%
dt = 1/365;
T = 3.32;
M = [mm] 4*10^3; [/mm] % <- Anzahl der MCS.
N = ceil(T/dt); % <- Anzahl der gesamten Zeitschritte.
t = [0:dt:T];
%
[mm] S_0 [/mm] = rand(1,1)*100;
[mm] r_0 [/mm] = rand(1,1);
sigma = rand(1,1);
%
%
tic
%
for j = 1:25
dW = sqrt(dt)*randn(M,N); %Wiener-Prozess
S = [mm] S_0*ones(M,N); [/mm]
r = [mm] r_0*ones(M,N); [/mm]
%
for i = 2:N+1
S(:,i) = S(:,i-1).*(1 + r(:,i-1)*dt + sigma*dW(:,i-1)); %<- S wird Spaltenweise konstruiert.
end
%
%
eval('S',num2str(j),S(j)); <- Ab hier beginnt mein Problem.
save S(j);
%
end
%
S_neu = [S(1); S(2); .... ; S(25)]; %<- Vielleicht geht dieser auch in der for schleife.
toc
%
%
%
%==========================================================================
%==========================================================================
%
%
Danke im Voraus.
MFG
Murat
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 21:22 So 07.10.2007 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|