Pardon soucis technique :
Hello
j essai de me remettre a jour de la liste isis.
Loic, as tu eu une reponse a ton mail? sinon je peux m y pencher.
A+


Le 24 avril 2012 09:31, Sigrid Lehuta <sigridlehuta@gmail.com> a écrit :
Hello
j essai de me remettre a jour de la liste isis.
Loic,

Le 6 avril 2012 11:29, Loic GASCHE <Loic.Gasche@ifremer.fr> a écrit :
Bonjour,

J'ai dans mes debugs le message suivant :

L'objet passé en argument n'a pas été retrouvé ou la dimension donnée ne convient pas:janvier 0 in [Plaice7D, Sole7D]

Si je comprends bien cela veut dire que je ne mets pas les bonnes choses aux bons endroits dans ma matrice de résultats (tfmMatrix) ?

Cela m'amène à m'interroger sur l'articulation entre :
- La phase de création de la méthode :
ex :    public MatrixND TotalFishingMortality (TimeStep step, ResultStorage resManager)throws TopiaException {

- La phase de création de la matrice de résultats :
ex :    MatrixND tfmMatrix = MatrixFactory.getInstance().create(
               ResultName.MATRIX_TOTAL_FISHING_MORTALITY,
                               new List[]{populations}, //,
               new String[]{n_("Populations")}); //,

- La phase de remplissage de cette matrice :
ex : tfmMatrix.setValue(pop, Fpop);

Première question :
Pourquoi n'avons nous pas mis "Population pop" dans les arguments de public MatrixND TotalfishingMortality(...) mais faisons nous une boucle sur les populations après ?
Est-ce équivalent à mettre "Population pop" dans les arguments et enlever la boucle sur les populations ?
Faut-il mieux faire l'un que l'autre ?

Deuxième question :
Quand on crée la matrice de résultats et qu'on dit quelles sont ses dimensions (new List[]{...}), quelles sont les règles à respecter sur ce qu'on met dans List[]{} (à part le fait que ça doit être des listes) ?
Par exemple si je veux mes résultats par population et par timestep, est-ce qu'il suffit de mettre List[]{populations, Liste_des_timesteps}?
Si oui comment faire pour obtenir une liste des timesteps (ou des années) de ma simulation ?
Si non que faut-il faire ? Est-ce lié aux arguments qu'on met dans public MatrixND TotalfishingMortality(...) ? Par exemple si j'y mets Population pop et Timestep step alors mes résultats seront forcément par pop et par Timestep donc il n'y a pas besoin de le demander dans List[]{} ?

Troisième question :
A l'etape de remplissage de la matrice on fait bien setValue(objet d'une liste 1, objet d'une liste 2, etc., valeur ) ?
Par exemple tfmMatrix.setValue(pop, Fpop); si on veut remplir par population et que pop désigne une population de la liste populations ?
Et si on veut remplir par population et Timestep, faut-il rajouter "step" dans setvalue() ? Ou alors est-ce que comme à la question d'avant il n'y a pas besoin de le faire car timestep est un des paramètres d'entrée ?

Voilà, j'espère que ce n'est pas trop confus...

Loïc

_______________________________________________
Isis-fish-devel mailing list
Isis-fish-devel@list.isis-fish.org
http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-devel