function traj = euler1d(mu,sigma,x0,h,n,ntraj)
//      Retourne une matrice a n+1 lignes et nbtraj colonnes.
//      Les colonnes contiennent des simulations independantes 
//      de trajectoires du processus de diffusion de derive mu 
//      et diffusion sigma (fonctions de deux variables).
//      Les trajectoires partent de x0 et sont simulees par la methode
//      d'Euler de pas h sur n pas.

sh = sqrt(h);                              // racine carree du pas
pas_brownien = grand(n,ntraj,"nor",0,sh);  // tirage des pas browniens
traj = zeros(n+1,ntraj);                   // initialisations 
t = 0; X = x0*ones(1,ntraj);
traj(1,:) = X;
for i=1:n,                                 // simulation des trajectoires
    X = X + mu(t,X)*h + sigma(t,X).*pas_brownien(i,:);
    traj(i+1,:) = X;
    t = t+h;
end;




