Mouvement brownien

Page 2 sur 2 Précédent  1, 2

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

Mouvement brownien

Message par ihecien le Mer 5 Déc - 0:26

Rappel du premier message :

salam tous le monde
qui peut m'aider SVP à simuler la trajectoire d'un mouvement brownien?
J'ai pas trouver de solution scratch


Dernière édition par le Mer 5 Déc - 2:08, édité 1 fois

ihecien
Entier Naturel
Entier Naturel

Masculin
Nombre de messages : 23
Age : 33
Localisation : Exponentielle
Réputation : 0
Points : 3634
Date d'inscription : 10/11/2007

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

Revenir en haut Aller en bas


Re: Mouvement brownien

Message par ihecien le Ven 7 Déc - 2:42

Impressionnant Admin, vraiment chapeau Very Happy

ihecien
Entier Naturel
Entier Naturel

Masculin
Nombre de messages : 23
Age : 33
Localisation : Exponentielle
Réputation : 0
Points : 3634
Date d'inscription : 10/11/2007

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

Revenir en haut Aller en bas

Re: Mouvement brownien

Message par manianis le Ven 7 Déc - 18:44

Code:
program brownien;
uses Graph;

procedure draw_brownien(n : integer);
var
    interval : integer;
    i : integer;
    x, y : integer;
begin
    interval := GetMaxX div n;
    y:= GetMaxY div 2;
    x:=0;
    MoveTo(x, y);
    for i:=1 to n do begin
        x := x + interval;
        y := y + (random(20) - 10);
        LineTo(x, y);
    end;
end;

var
  gd,gm : integer;
begin
    Randomize;
   
    gd := D8bit; { highest possible resolution }
    gm:=m640x480; { not needed, auto detection }
    InitGraph(gd,gm,'');
    if (GraphResult<>grok) then halt;
   
    draw_brownien(GetMaxX);
    Readln;
   
    CloseGraph; { restores the old graphics mode }
end.

manianis
Nombre Réel
Nombre Réel

Masculin
Nombre de messages : 975
Localisation : Tunisie
Réputation : 4
Points : 3666
Date d'inscription : 11/10/2007

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

http://manianis.sitesled.com/

Revenir en haut Aller en bas

Re: Mouvement brownien

Message par manianis le Ven 7 Déc - 18:57

çà produit quelque chose comme suit :

manianis
Nombre Réel
Nombre Réel

Masculin
Nombre de messages : 975
Localisation : Tunisie
Réputation : 4
Points : 3666
Date d'inscription : 11/10/2007

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

http://manianis.sitesled.com/

Revenir en haut Aller en bas

Re: Mouvement brownien

Message par Napoléon le Sam 8 Déc - 1:21

manianis:
Ca ressemble beaucoup aux simulations des applets JAVA. Mais d'après ce que propose ihecien, la loi Normale est toujours présente dans les pas browniens. Il faut l'intégrer dans ton code au lieu de la loi Uniforme.

NB: il faut toujours indiquer le langage et la version du compilateur de chaque code source qu'on propose. C'est pour faciliter le test des programmes qu'on propose.

Merci pour la participation
a+

_________________
Nabil - tunis
خير الناس أنفعهم للناس
avatar
Napoléon
Admin
Admin

Masculin
Nombre de messages : 2934
Localisation : Tunisie
Réputation : 122
Points : 5283
Date d'inscription : 19/03/2007

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

http://infomath.online-talk.net

Revenir en haut Aller en bas

Re: Mouvement brownien

Message par informix le Sam 8 Déc - 12:18

Admin a écrit:Voilà un rapport de DEA qui contient une bonne présentation des processus stochastiques. Tu y trouvers:

1. les processus Gaussiens.
2. les mouvements Browniens
3. les martingales
4. les intégrales stochastiques...

http://www.dma.ens.fr/~legall/DEA96.pdf

@+

Il est très intéressant ce rapport. Mais, je n'ai pas trouvé où est la contribution de l'auteur. Un DEA = Un travail de Recherche...

_________________
informix, Ecole d'ingénieurs
Les passions font vivre l'Homme; sa sagesse le fait seulement durer.
avatar
informix
Nombre Rationnel
Nombre Rationnel

Nombre de messages : 399
Réputation : 4
Points : 3937
Date d'inscription : 19/03/2007

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

Revenir en haut Aller en bas

Re: Mouvement brownien

Message par ihecien le Sam 15 Déc - 23: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
Entier Naturel
Entier Naturel

Masculin
Nombre de messages : 23
Age : 33
Localisation : Exponentielle
Réputation : 0
Points : 3634
Date d'inscription : 10/11/2007

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 - 23: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.
avatar
informix
Nombre Rationnel
Nombre Rationnel

Nombre de messages : 399
Réputation : 4
Points : 3937
Date d'inscription : 19/03/2007

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

Revenir en haut Aller en bas

Re: Mouvement brownien

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Page 2 sur 2 Précédent  1, 2

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

- Sujets similaires

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