Pour cette histoire de reproduction inconnu, n'y a-t-il pas la possibilité pour Jessica de mettre à la place de l'équation une ligne de commande pour lire un fichier .csv comme lors de la calibration par exemple? Bastien -----Message d'origine----- De : isis-fish-users-bounces@list.isis-fish.org [mailto:isis-fish-users-bounces@list.isis-fish.org] De la part de Eric Chatellier Envoyé : jeudi 24 mars 2011 19:41 À : isis-fish-users@list.isis-fish.org Objet : Re: [Isis-fish-users] Question sur une simulation test Le 24/03/2011 00:58, Jessica Andre a écrit :
Bonjour,
Merci pour les précisions. Je n'avais effectivement pas donne d'engin pour non metier "inactivité". Donc j'ai relance la simu après avoir rajouté un engin et j'obtiens:
java.lang.NullPointerException at
ERROR|10:25:13,105|InProcessSimulatorLauncher.java|434|localSimulateSameThre ad|Error during simulation scripts.SiMatrix.aw$original$_AW_$matrixFishingMortality$_AW_$scripts_SiMatr ix(SiMatrix.java:578)
donc ligne 578 du SiMatrix: double ciblage = infoMet.getTargetFactor(group); Il n'y aurait pas de Target factor pour un des métiers, ou plutôt pas de
Target factor par groupe. J'ai vérifié et ils sont tous renseignés (j'ai mis return 0; pour les espèces non ciblées par un engin). Une suggestion?! En fait non. Une NullPointerException (une joie du java) signifie la plupart du temps que vous appeler une méthode sur un objet null. Donc, dans "infoMet.getTargetFactor(group)", seul infoMet peut être null. La ligne précedente qui défini infoMet est MetierSeasonInfo infoMet = metier.getMetierSeasonInfo(month); donc, un de vos metier n'a pas de saison portant sur le mois "month".
Une autre question concernant la reproduction. J'ai 4 espèces et aucune n'a de stock-recruitement relationship établie (donc pas d'équation de reproduction, ou plutôt elle retourne 0). Il va falloir que je renseigne ISIS sur le nombre de nouveau individus produit chaque mois. Je ne suis pas sure comment faire ca (script de pre-simu je suppose mais c'est la que ca se gâte...).En fouillant sur le web, j'ai trouve ce que je cherche (je crois): l'endroit ou est créée la matrice de reproduction
http://isis-fish.labs.libre-entreprise.org/isis-fish/xref/fr/ifremer/isisfis h/entities/PopulationSeasonInfoImpl.html#797
Il est spécifié ligne 793: * Construit la matrice de reproduction. C'est un vecteur contenant le
nombre d'individu créer par la reproduction. Le vecteur est structure en zone de reproduction.*
Donc il y aurait une matrice de reproduction par population, et c'est un vecteur. Comme je n'ai qu'une zone de reproduction par espèce (composée de 10 cellules par exemple), ce serait essentiellement un vecteur de 1x1 donc un chiffre par espèce?! Si je veux appeler cette matrice (ou plutôt la remplir), qu'elle est son nom? Matrix ND ReproductionMatrix? Ou juste ReproductionMatrix? En lisant bien le code, cette matrice est construite par évaluation de l'équation de reproduction. Donc la seule façon de la remplir est de définir l'équation de reproduction.
Voici à titre d'exemple, l'équation de la base GolfeDeGascogne : double compt=0; for (Zone zone : zoneRepro){ compt=0; for (PopulationGroup group : groups){ double cf = group.getReproductionRate(); compt += N.getValue(group, zone) * cf; } result.setValue(zone, compt*prepro); } return 0; -- Éric Chatellier <chatellier@codelutin.com> Tel: 02.40.50.29.28 http://www.codelutin.com _______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users