En fait ca fait bien 0 j'ai l'impression. double ssb = 1.2332636999125256E8; double a = 10.8; double b = 1.8 * Math.pow(10, -5); double res = a * ssb * Math.exp(-b * ssb); -b * ssb donne : -2219.874659842546 Et Math.exp(-2219.874659842546) donne 0 Alors qu'avec mes valeurs de simulation: double ssb = 524497.8776161199; double a = 10.8; double b = 1.8 * Math.pow(10, -5); double res = a * ssb * Math.exp(-b * ssb); -b * ssb donne : -9.440961797090159 Et Math.exp(-9.440961797090159) = 449.7900855436043 Le 10/01/2024 à 12:19, aricouar a écrit :
Bonjour Eric,
C'est très étrange car chez moi, la SSB est bien non nulle mais TotalRec est toujours à 0. Cf. debug ci-joint. Comment cela est-il possible ?
Le 2024-01-10 11:11, Eric Chatellier a écrit :
BOnjour,
Je ne comprend pas tout le problème.
Lors de la simulation, il y a bien des traces : SSB : 524497.8776161199 TotalRec : 449.7900855436043 param_a : 10.8 param_b : 1.8E-5 Recruitment by zone: 449.7900855436043
Donc "res" est bien calculé à "449" et non "0"
autre trace :
SSB : 6915.327139057854 TotalRec : 65944.3047428816 param_a : 10.8 param_b : 1.8E-5 Recruitment by zone: 65944.3047428816
Le 08/01/2024 à 16:47, aricouar a écrit :
Merci pour les réponses,
Alors nous avons un peu avancé depuis ce matin, cependant ça ne fonctionne toujours pas. Pas de plantage mais un recrutement toujours nul. Si on prend l'exemple de Lepidorhombus_whiffiagonis, toujours, il semblerait que l'erreur se trouve au niveau de la ligne 34. Il n'arrive apparemment pas à faire le calcul : res = a * ssb * Math.exp(-b * ssb);
Il renvoie toujours res=0 alors que la ssb est bien calculée à la ligne précédente, et a est non nul. Comment expliquer cela ?
Ci-joint la nouvelle base. Merci.
Antoine
Le 2024-01-08 11:50, Stephanie MAHEVAS a écrit :
Le 08/01/2024 à 11:46, Stephanie MAHEVAS a écrit :
hello Le 08/01/2024 à 11:12, aricouar a écrit :
Isissiennes, isissiens,
Bonjour et bonne année 2024 ! Je vous souhaite des simulations réussies et tout le bonheur possible dans vos vies réelles et personnelles.
Pour attaquer cette nouvelle année du bon pied, je modifie les équations de reproduction (ou de recrutement, c'est selon) des espèces de mon modèle pour y intégrer des relations stock-recrutement à partir d'un certain nombre d'années de simulation. Cela implique de calculer la biomasse reproductrice.
Pour la sole (déjà codée par Audric) cela compile bien. Voici comment est calculée cette biomasse pour cette espèce:
for (Zone zone:zoneRepro){ for (PopulationGroup cr : groups){ ssb += cr.getMaturityOgive()*N.getValue(cr,zone) * cr.getMeanWeight() *prepro ; } }
(je ne sais pas où sont définies les variables prepro et N).
prepro est le vecteur de distribution de la repro dans la saison de reproduction (onglet saison). C'est cette valeur qui etait à 0 pour la sole...
N est l'abondance (MatrixAbundance) calculée par ISIS
Pour la cardine (Lepidorhombus whiffiagonis) qui n'avait pas déjà de relation stock-recrutement, par contre, j'ai recopié ces lignes de codes (l. 29-33 dans la nouvelle équation) et cela ne compile plus. Quelle est la bonne syntaxe a adopter ? Les variables auxquelles on a accès dans eq repro et eq recrutement ne sont pas les memes je t'appelle
steph
Ci-joint la base sur laquelle je travaille actuellement.
Merci beaucoup, à bientôt,
Antoine
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org
https://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
Archives et moteur de recherche: http://list.isis-fish.org/pipermail/isis-fish-users/
-- ...................................................................... Stephanie MAHEVAS UMR MARBEC - site de Sète IFREMER/HM https://annuaire.ifremer.fr/cv/16343/
Tel: (33) 04 99 57 32 39 (8239) - 06 75 83 59 33
o \ o / _ o __| \ / |__ o _ \ o / o /|\ | /\ ___\o \o | o/ o/__ /\ | /|\ / \ / \ | \ /) | ( \ /o\ / ) | (\ / | / \ / \
......................................................................
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org https://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users Archives et moteur de recherche: http://list.isis-fish.org/pipermail/isis-fish-users/
-- ...................................................................... Stephanie MAHEVAS UMR MARBEC - site de Sète IFREMER/HM https://annuaire.ifremer.fr/cv/16343/
Tel: (33) 04 99 57 32 39 (8239) - 06 75 83 59 33
o \ o / _ o __| \ / |__ o _ \ o / o /|\ | /\ ___\o \o | o/ o/__ /\ | /|\ / \ / \ | \ /) | ( \ /o\ / ) | (\ / | / \ / \ ...................................................................... _______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org https://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users Archives et moteur de recherche: http://list.isis-fish.org/pipermail/isis-fish-users/
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org https://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users Archives et moteur de recherche: http://list.isis-fish.org/pipermail/isis-fish-users/
-- Éric Chatellier - www.codelutin.com - 02.40.50.29.28