Re! Si je comprends bien j'ai 2 options: 1) ne pas supprimer les métiers qui ne capturent pas mon espèce dans les valeurs simulées. Mais dans ce cas, il faut que j'importe des matrices des captures nulles pour avoir des valeurs Observées à comparer, non? 2) Supprimer les métiers qui ne capturent pas mon espèce dans les valeurs simulées. Dans ce cas je peux utiliser le bout de script que tu m'as envoyé. J'ai essayé cette deuxième option, mais il y a une erreur car Isis ne reconnait pas l'objet "Metier", j'ai le message d'erreur: cannot find symbol symbol : class Metier location: class analyseplans.CalibrationSimplexePasVariable2_BecDeCane List <Metier> listmet = L2.getSemantic(1); int[] indexMetagarder = new int[4]; J'ai essayé de le déclarer plus haut mais sans succès. Sais-tu à quoi cela est-il dû? J'ai dû rater quelque chose! De façon plus général, pour les deux cas, je me demande comment sait-on si les valeurs comparées obs et simulées sont les bonnes? Je n'ai pas compris dans le script où est-ce qu'on récupère les données obs d'un métier pour les comparer aux données simulées du métiers correspondant en s'assurant qu'il s'agisse du même métier. Merci. 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 Sigrid.Lehuta@ifremer.fr Envoyé : mercredi 1 juin 2011 03:04 À : isis-fish-users@list.isis-fish.org Objet : Re: [Isis-fish-users] Exclusion de certains métiers pour la calibration Re-hello, En fait si les metiers ne capturent pas la population leurs captures seront nulles et c est pas grave de les garder (ca fera + 0!)... mais si tu veux quand meme les extraire, d'abord reccuperer les index des metiers à garder en utilisant leurs noms par exemple : List <Metier> listmet = L2.getSemantic(1) int[] indexMetagarder = new int[4]; for(Metier m : listmet){ if(m.getName().equals("nommetier1")) indexMetagarder [1] = listmet.indexOf(m); else if(m.getName().equals("nommetier5")) indexMetagarder [2] = listmet.indexOf(m); etc... } ensuite extraire la sous matrice: MatrixND L = L2.getSubMatrix(1, indexMetagarder).copy(); A++ Bastien Preuss <Bastien.Preuss@ird.fr> a écrit :
Bonjour,
Je souhaite exclure certains de mes métiers pour réaliser ma calibration.
Je calibre espèce par espèce, donc il me faut exclure les métiers qui ne capturent pas lespèce en cours de calibration.
La ligne 363 du script de calibration semble permettre de faire cela, mais le problème est comment sélectionner les bons métiers à exclure ?! :
/////*** If some strategies, metiers or areas must not be included in the cumulated catches see below else put "//" at the beginning of line 297 and replace "L2" by "L" at line 289
/////*** the strategies or so to exclude must be at the begining or end of the list you enter in the parameters interface
/////*** fill the line MatrixND L = L2.getSubMatrix(a,b,c).copy(); as follow :
/////*** a = 1 if you want to exclude strategies, 2 if metiers and 4 if areas
/////*** b = indice of the first object considered
/////*** c = number of object to keep after b, b included
//MatrixND L = L2.getSubMatrix(0, 0, 12).copy(); // for instance : keep strategies 2,3,4,5
Dans mon cas jai 8 métiers et je souhaite nen conserver que 4 pour ma calibration sur mon espèce 1. Comment savoir dans quel ordre sont rangés les métiers et quel numéro correspond à quel métier ? De plus il semble quil ne soit possible dexclure que des métiers qui se suivent dans la liste comment faire si les métiers à conserver ne se suivent pas ?
Merci de votre aide.
Bastien
Bastien Preuss
Doctorant (PhD Student)
IFREMER - IRD - Université de Nouvelle-Calédonie
101 Promenade Roger Laroque
BP A5
98848 Noumea cedex
New-Caledonia
Tel: (+687) 260 723
P afin de contribuer au respect de l'environnement, merci de n'imprimer ce mail qu'en cas de nécessité
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users