je dirais
for (PopulationGroup cr : groups){
ssb += cr.getMaturityOgive()*N.sumOverDim(1).getValue(cr) * cr.getMeanWeight() *prepro ;
}Le 24 mars 2015 11:21, <Stephanie.Mahevas@ifremer.fr> a écrit :_______________________________________________
Bonjour
j'ai une erreur dans l'evaluation d'une equation, certainement du à une erreur de syntaxe
(Fatal erreur, debug attaché, equation ci-dessous)
si quelqu'un peut m'aider???
merci
Stephanie
equation de reproduction
double pente = 95.12;
double ssbmin = 5.9*Math.pow(10,6);
double rssbmin = 5.66*Math.pow(10,8);
// Equation Hockey-Stick : recrutement = pente*ssb si ssb < ssblim, recr(ssblim)
// Parametres pour stock en kg et recrutement en nombre
double recrudszone=0.0;
double ssb = 0;
double recru=0.0;
double ssbdszone = 0.0;
int y = context.getSimulationControl().getStep().getYear();
if (month.getMonthNumber()==0) {
if (y!=0){
//recrutement global
for (PopulationGroup cr : groups){
log.info("N.getValue(cr) : " + N.getValue(cr));
ssb += cr.getMaturityOgive()*N.getValue(cr) * cr.getMeanWeight() *prepro ;
}
log.info("ssb : " + ssb);
//recrudszone = alpha * ssb / (beta + ssb);
if (ssb < ssbmin) {
recru = pente*ssb;
} else {recru = rssbmin;}
log.info("recru : " + recru);
// recrutement par zone
for (Zone zone:zoneRepro){
ssbdszone = 0.0;
for (PopulationGroup cr : groups){
ssbdszone += cr.getMaturityOgive()*N.getValue(cr,zone) * cr.getMeanWeight() *prepro ;
}
recrudszone = recru*ssbdszone/ssb;
result.setValue(zone,recrudszone);
log.info("recrudszone : " + recrudszone);
}
} else {
for (Zone zone:zoneRepro){
recrudszone=0.0;
result.setValue(zone,recrudszone);
}
}
}
return 0;
Isis-fish-users mailing list
Isis-fish-users@list.isis-fish.org
http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users