Bonjour, Dans mon modèle jutilise la surface des zones pour décrire les coefficients de migration entre mes zones. Je calcule un paramètre c tel que : c = surfaceZoneArrivée / (surfaceZoneDépart + surfaceZoneArrivée) Dans léquation cela donne : c = arrivalZone.getCell().size() / (departureZone.getCell().size() + arrivalZone.getCell().size()) ; Mais je me suis rendu compte que c valait 0 bien que mes surfaces soient égales à 324 et 56. Jai essayé de faire : szd = departureZone.getCell().size(); sza = arrivalZone.getCell().size(); c = sza / (szd + sza); Et ça marche! c est différent de 0. Jaimerais savoir pourquoi la première façon en calculant directement c ne fonctionne pas ? Pour savoir si cela risque de se produire dans dautres cas. Merci. Bastien Bastien Preuss Doctorant (PhD Student) IFREMER - IRD - Université de Nouvelle-Calédonie 101 Promenade Roger Laroque BP A5 98848 Noumea cedex New-Caledonia Tel: (+687) 260 723 P afin de contribuer au respect de l'environnement, merci de n'imprimer ce mail qu'en cas de nécessité
Le 08/07/2011 10:28, Bastien Preuss a écrit :
Bonjour,
Dans mon modèle j’utilise la surface des zones pour décrire les coefficients de migration entre mes zones. Je calcule un paramètre c tel que :
c = surfaceZoneArrivée / (surfaceZoneDépart + surfaceZoneArrivée)
Dans l’équation cela donne :
c = arrivalZone.getCell().size() / (departureZone.getCell().size() + arrivalZone.getCell().size()) ;
Mais je me suis rendu compte que c valait 0 bien que mes surfaces soient égales à 324 et 56.
J’ai essayé de faire :
szd = departureZone.getCell().size();
sza = arrivalZone.getCell().size();
c = sza / (szd + sza);
Et ça marche! c est différent de 0.
C'est un probleme de conversion, double/int. Il y a un point là dessus dans la FAQ : http://isis-fish.labs.libre-entreprise.org/wiki-moin/instance/cgi-bin/moin.c... -- Éric Chatellier <chatellier@codelutin.com> Tel: 02.40.50.29.28 http://www.codelutin.com
participants (2)
-
Bastien Preuss -
Eric Chatellier