Le 14/02/2014 18:29, Eric Chatellier a écrit :
Le 14/02/2014 18:22, Loic GASCHE a écrit :
La ligne 183 de ma HCR correspond à un sumAll() sur une matrice correspondant à la mortalité par pêche pour l'année 2010.
Cette matrice je vais la chercher en faisant un :
context.getSimulationStorage().getResultStorage().getMatrix(param_beginStep.previous(), param_populationHCR, ResultName.MATRIX_TOTAL_FISHING_MORTALITY)
Donc si ca plante en Février 4 c'est peut-être parce que mon HCR commence en Janvier 3, donc à partir de Février 4 on n'a plus accès à Décembre 2. Oui. Hier on a pensé qu'aux exports en fait et on se disait que tu n'avais au final besoin que des 12 derniers pas de temps (la derniere années).
Moi aussi je l'avais oublié celui-là.
Mais si une règles à besoin d'un résultat au dela des 12 derniers pas de temps, ca ne peut plus fonctionner comme approche.
Sinon, autre solution, param_beginStep.previous() renvoit-il toujours la même valeur ? Je pense car c'est un parametre fixe de la regle pour la simulation.
Oui c'est un paramètre fixe car pour faire la transition vers le F cible on applique un coefficient multiplicateur à cette valeur (le F2010), donc c'est le coefficient multiplicateur qui change au cours du temps et pas la valeur en elle-même.
Tu peux demander UNE SEULE fois le resultat dès que tu en as besoin, et le conserver dans la règle et il sera donc disponible jusqu'à la fin de la simulation.
Je vais faire comme le dit Sigrid : mettre ma valeur dans le contexte une fois qu' elle est calculée et ensuite l'appeler à partir du contexte.
Reste à vérifier que le reste de la règle n’accède pas à un autre résultat au delà des 12 derniers pas de temps.