Mouvement brownien

Page 3 sur 3 Précédente  1, 2, 3

Voir le sujet précédent Voir le sujet suivant Aller en bas

Re: Mouvement brownien

Message par ihecien le Sam 15 Déc - 21:22

J'ai fait une autre solution qui est plus simple mais qui génère un seul vecteur :

Code:

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<math.h>
#include<time.h>
                              //Générateur d'une loi Uniforme
float unif ()
      {
      return( (float) rand()/RAND_MAX);
      }
     
                              // Générateur d'une loi Normale
float normale ( float e, float v)
      {
        srand(time(NULL));
        float u1,u2,c,w1,w2,w;
            do
           
              {
                  u1=unif();
                  u2=unif();
                  w1=2*u1-1;
                  w2=2*u2-1;
                  w=w1*w1+w2*w2;
              }
             
            while (w>1);
        c=sqrt(-2*log(w)/w);
        return (c*w*sqrt(v)+e);
      }
                                //Simulation d'un Mouvement Brownien           
int main()
      {
          int i,n,T;
          float x,d;
          x=0;// La somme d'une variable normale est initialisée en zéro
          n=100;// Le nombre de période temps
          T=1;
          d= (float) T/n;//Le pas qu'on va utiliser
         
          for (i=1;i<=n;i++)// Boucle FOR qui parcoure les N intervalles qu'on a pris
              {
              x=x+normale(0,1);// X est la somme d'une loi normale centrée et réduite
           
              printf(" la valeur est:%f \n",sqrt(d)*x);/* Le mouvement Brownien est la racine carré de la 
                                                          période de temps fois la variable normale X */
              }
             
          getch();
          return(0);
}

ihecien
Nouveau membre
Nouveau membre

Sexe:MasculinBalanceRat
Messages : 23
Inscrit le : 10 Nov 2007
Age : 24
Localisation : Exponentielle

Feuille de personnage
Capacité linguistique:
1000/1000  (1000/1000)

Revenir en haut Aller en bas

Re: Mouvement brownien

Message par informix le Sam 15 Déc - 21:31

c'est bonh. elle fait ce qui est demandé Smile
informix, Ecole d'ingénieurs
Les passions font vivre l'Homme; sa sagesse le fait seulement durer.

informix
Membre fondamental
Membre fondamental

Messages : 350
Inscrit le : 19 Mar 2007

Feuille de personnage
Capacité linguistique:
1000/1000  (1000/1000)

Revenir en haut Aller en bas

Page 3 sur 3 Précédente  1, 2, 3

Voir le sujet précédent Voir le sujet suivant Revenir en haut


Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum