scripts d'export qui ne fonctionnent pas
Salut, j'ai crée des exports qui complilent mais n'ont pas fonctionné (le csv est vide) Peux tu trouver l'erreur? Sinon tu crois qu'ils marchent si store result on disk est different de -1 ? Merci
On 26/06/2015 16:30, Sigrid Lehuta wrote:
Salut, j'ai crée des exports qui complilent mais n'ont pas fonctionné (le csv est vide)
Peux tu trouver l'erreur? Je vois que tu gères les cas d'erreur de façon "silencieuse" avec "if( mat != null){" donc l'erreur, tu l'as toi même géré :)
Je n'aime pas trop le concept, parce que ca devient étrange d'avoir un export qui déclare des "necessaryResult", et tu geres le cas où, dans certains cas il serait quand même non présents... Il vaux mieux ne pas gérer le cas et faire planter la simulation car on comprend mieux si l'export échoue que si il n'export rien.
Sinon tu crois qu'ils marchent si store result on disk est different de -1 ? Il faut au moins que cela ne soit pas "0", sinon, il ne sauve rien sur le disque, seulement en mémoire.
Je pense que les résultats ne sont pas présents, mais le problème vient plutôt des parametres de la simulation. -- Éric Chatellier - www.codelutin.com - 02.40.50.29.28
On 26/06/2015 16:53, Eric Chatellier wrote:
Je pense que les résultats ne sont pas présents, mais le problème vient plutôt des parametres de la simulation. Ha non, finalement il y a bien des erreurs :
Biomasse_at_age_Indiseas : java.lang.ArrayIndexOutOfBoundsException: 1 at exports.Biomasse_at_age_Indiseas.export(Biomasse_at_age_Indiseas.java:93) at fr.ifremer.isisfish.simulator.SimulationExportResultWrapper$ExportContext.export(SimulationExportResultWrapper.java:160) at fr.ifremer.isisfish.simulator.SimulationExportResultWrapper.afterSimulation(SimulationExportResultWrapper.java:262) at fr.ifremer.isisfish.simulator.SimulationContext.fireAfterSimulation(SimulationContext.java:288) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher.localSimulateSameThread(InProcessSimulatorLauncher.java:463) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher$SimThread.run(InProcessSimulatorLauncher.java:265) EffortsMetierYear : java.lang.ClassCastException: java.lang.Integer cannot be cast to fr.ifremer.isisfish.types.TimeStep at exports.EffortsMetierYear.export(EffortsMetierYear.java:87) at fr.ifremer.isisfish.simulator.SimulationExportResultWrapper$ExportContext.export(SimulationExportResultWrapper.java:160) at fr.ifremer.isisfish.simulator.SimulationExportResultWrapper.afterSimulation(SimulationExportResultWrapper.java:262) at fr.ifremer.isisfish.simulator.SimulationContext.fireAfterSimulation(SimulationContext.java:288) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher.localSimulateSameThread(InProcessSimulatorLauncher.java:463) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher$SimThread.run(InProcessSimulatorLauncher.java:265) GrossValuesSpYear : java.lang.ClassCastException: java.lang.Integer cannot be cast to fr.ifremer.isisfish.types.TimeStep at exports.GrossValuesSpYear.export(GrossValuesSpYear.java:94) at fr.ifremer.isisfish.simulator.SimulationExportResultWrapper$ExportContext.export(SimulationExportResultWrapper.java:160) at fr.ifremer.isisfish.simulator.SimulationExportResultWrapper.afterSimulation(SimulationExportResultWrapper.java:262) at fr.ifremer.isisfish.simulator.SimulationContext.fireAfterSimulation(SimulationContext.java:288) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher.localSimulateSameThread(InProcessSimulatorLauncher.java:463) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher$SimThread.run(InProcessSimulatorLauncher.java:265) -- Éric Chatellier - www.codelutin.com - 02.40.50.29.28
Argg yes merci ! donc en fait ca veut dire que les semantics des matrices [step, ...], c est pas un objet TimeStep, c'est un entier? Le 26 juin 2015 17:28, Eric Chatellier <chatellier@codelutin.com> a écrit :
Je pense que les résultats ne sont pas présents, mais le problème vient
On 26/06/2015 16:53, Eric Chatellier wrote: plutôt
des parametres de la simulation. Ha non, finalement il y a bien des erreurs :
Biomasse_at_age_Indiseas : java.lang.ArrayIndexOutOfBoundsException: 1 at exports.Biomasse_at_age_Indiseas.export(Biomasse_at_age_Indiseas.java:93) at
fr.ifremer.isisfish.simulator.SimulationExportResultWrapper$ExportContext.export(SimulationExportResultWrapper.java:160) at
fr.ifremer.isisfish.simulator.SimulationExportResultWrapper.afterSimulation(SimulationExportResultWrapper.java:262) at
fr.ifremer.isisfish.simulator.SimulationContext.fireAfterSimulation(SimulationContext.java:288) at
fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher.localSimulateSameThread(InProcessSimulatorLauncher.java:463) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher$SimThread.run(InProcessSimulatorLauncher.java:265
EffortsMetierYear : java.lang.ClassCastException: java.lang.Integer cannot be cast to fr.ifremer.isisfish.types.TimeStep at exports.EffortsMetierYear.export(EffortsMetierYear.java:87) at
fr.ifremer.isisfish.simulator.SimulationExportResultWrapper$ExportContext.export(SimulationExportResultWrapper.java:160) at
fr.ifremer.isisfish.simulator.SimulationExportResultWrapper.afterSimulation(SimulationExportResultWrapper.java:262) at
fr.ifremer.isisfish.simulator.SimulationContext.fireAfterSimulation(SimulationContext.java:288) at
fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher.localSimulateSameThread(InProcessSimulatorLauncher.java:463) at
fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher$SimThread.run(InProcessSimulatorLauncher.java:265)
GrossValuesSpYear : java.lang.ClassCastException: java.lang.Integer cannot be cast to fr.ifremer.isisfish.types.TimeStep at exports.GrossValuesSpYear.export(GrossValuesSpYear.java:94) at
fr.ifremer.isisfish.simulator.SimulationExportResultWrapper$ExportContext.export(SimulationExportResultWrapper.java:160) at
fr.ifremer.isisfish.simulator.SimulationExportResultWrapper.afterSimulation(SimulationExportResultWrapper.java:262) at
fr.ifremer.isisfish.simulator.SimulationContext.fireAfterSimulation(SimulationContext.java:288) at
fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher.localSimulateSameThread(InProcessSimulatorLauncher.java:463) at
fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher$SimThread.run(InProcessSimulatorLauncher.java:265)
-- Éric Chatellier - www.codelutin.com - 02.40.50.29.28
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
On 26/06/2015 18:11, Sigrid Lehuta wrote:
Argg yes merci ! donc en fait ca veut dire que les semantics des matrices [step, ...], c est pas un objet TimeStep, c'est un entier? Ha mais j'ai même pas fait attention. C'est un problème avec Isis, pas vraiment ton script. Pourtant, il ressemble aux autres exports, c'est bizarre.
Je regarde. -- Éric Chatellier - www.codelutin.com - 02.40.50.29.28
On 29/06/2015 09:10, Eric Chatellier wrote:
On 26/06/2015 18:11, Sigrid Lehuta wrote:
Argg yes merci ! donc en fait ca veut dire que les semantics des matrices [step, ...], c est pas un objet TimeStep, c'est un entier? Ha mais j'ai même pas fait attention. C'est un problème avec Isis, pas vraiment ton script. Pourtant, il ressemble aux autres exports, c'est bizarre.
Dans Biomasse_at_age_Indiseas, tu recupères un resultat sur un seul pas de temps, donc la matrice n'a que les dimensions groupe/zones. Après réduction de la dim (1), il ne reste qu'une dimension, et donc sems[1] n'existe pas. Pour les deux autres regles, effectivement, après "mat = mat.sumOverDim(0,12); //sum/an" la dimension est un "int" et plus un TimeStep. Je n'ai pas eu le temps de trouver le code qui produit ce changement, mais c'est "peut-etre" volontaire (après l'opération de somme, ce ne sont plus des mois). -- Éric Chatellier - www.codelutin.com - 02.40.50.29.28
On 29/06/2015 18:00, Eric Chatellier wrote:
Pour les deux autres regles, effectivement, après "mat = mat.sumOverDim(0,12); //sum/an" la dimension est un "int" et plus un TimeStep. Je n'ai pas eu le temps de trouver le code qui produit ce changement, mais c'est "peut-etre" volontaire (après l'opération de somme, ce ne sont plus des mois). Effectivement, c'est une changement volontaire de la méthode sumOverDim() : https://nuiton.org/projects/nuiton-matrix/repository/revisions/1f0bf4f0a25ec...
Maintenant, on change les semantiques en "1, 2, 3, 4..." dans tous les cas et on ne conserve plus les sématiques d'origine car après la somme, les semantiques ne veulent plus rien dire. Sinon, c'est bon pour cette erreur et les autres ? -- Éric Chatellier - www.codelutin.com - 02.40.50.29.28
Ca y est les exports marchent nickel. Merci Le 3 juillet 2015 14:38, Eric Chatellier <chatellier@codelutin.com> a écrit :
On 29/06/2015 18:00, Eric Chatellier wrote:
Pour les deux autres regles, effectivement, après "mat = mat.sumOverDim(0,12); //sum/an" la dimension est un "int" et plus un TimeStep. Je n'ai pas eu le temps de trouver le code qui produit ce changement, mais c'est "peut-etre" volontaire (après l'opération de somme, ce ne sont plus des mois). Effectivement, c'est une changement volontaire de la méthode sumOverDim() :
https://nuiton.org/projects/nuiton-matrix/repository/revisions/1f0bf4f0a25ec...
Maintenant, on change les semantiques en "1, 2, 3, 4..." dans tous les cas et on ne conserve plus les sématiques d'origine car après la somme, les semantiques ne veulent plus rien dire.
Sinon, c'est bon pour cette erreur et les autres ?
-- Éric Chatellier - www.codelutin.com - 02.40.50.29.28
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
participants (2)
-
Eric Chatellier -
Sigrid Lehuta