% Stochastische logistische Differentialgleichung
%
%   dX = X * (1-X) * dt + X * dB
%
% geloest mit dem Milstein-Verfahren

% Initialisiere den Zufallszahlengenerator, um reproduzierbare 
% Ergebnisse zu erhalten:

randn('seed',100) 

T      = 1;
N      = 1000;
dt     = T/N;

dB     = sqrt(dt) * randn(1,N);

% Die Anfangsbedingung hat den Arrayindex 1, d.h. das Array fuer die 
% Loesung muss die Laenge N+1 haben, um N Intervalle der Laenge dt 
% abzudecken.

X      = zeros(1,N+1);  
X(1)   = 1;

for j=1:N
  X(j+1) = X(j) * (1 + (1-X(j))*dt + dB(j) + 0.5*(dB(j)^2 - dt));
end

plot (X), grid, replot

