FORTRAN générer des nombres aléatoires

Résolu/Fermé
foko - 19 avril 2011 à 17:02
ccm81 Messages postés 10905 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 27 décembre 2024 - 22 mai 2012 à 14:09
Bonjour,

Je dois générer des nombres aléatoires que fortran doit aller chercher dans un intervalle [-130,130]. Jusque là, pas de soucis, j'utilise la fonction rand où N0=-130 et N1=130:

x=int(rand(0)*(N1+1-N0))+N0

Mais le problème c'est que les nombres générés devraient suivre une loi normale pour que ce soit plus réaliste, vu que je crée cette variable pour illustrer la variabilité dans la pluviométrie...

Quelqu'un a une idée?

Merci beaucoup!



5 réponses

ccm81 Messages postés 10905 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 27 décembre 2024 2 429
Modifié par ccm81 le 20/04/2011 à 17:41
bonjour

pour une simulation de tirages selon une loi normale de moyenne m et d'écart type s

u et v sont de type réels
u = Rnd
v = Rnd
normale = m + s * Sqr(-2 * Log(u)) * Cos(2 * pi * v)

bonne suite
2
Bonjour à tous!

Juste une petite mise à jour du message, personne ne sait comment générer des nombres aléatoires suivant une loi normale dans FORTRAN 77?

Mercii!
0
bonjour tous le monde,
j'ai besoins de générer des nombres aléatoires compris entre 0 et 1 et qui suit une loi normale sur fortran90 car je veux utiliser une décomposition qui marche avec des lois normales.

merci de m'aider
0
Merci beaucoup ccm81!

Ça a fonctionné niquel!
0
ccm81 Messages postés 10905 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 27 décembre 2024 2 429
21 avril 2011 à 15:31
re
une modif
Remplacer log(u) par log(1-u), c'est plus prudent, puis qu'on a
0 <= u < 1
si par malchance, avec les rnd, tu tombes sur u = 0, ça va planter alors que
0 < 1-u <= 1
va passer à tous les coups
bonne suite
0
ccm81 Messages postés 10905 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 27 décembre 2024 2 429
21 avril 2011 à 12:00
re

avec plaisir,

peux tu mettre le pb a résolu

bonne suite
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ccm81 Messages postés 10905 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 27 décembre 2024 2 429
22 mai 2012 à 14:09
bonjour

tu as la réponse dans les post#2 et #5
je ne connais pas le fortran mais tu dois avoir l'équivalent de
rnd pour un aléa de 0 à 1
sqr pour racine carrée

bonne suite
0