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.0;
double recru=0.0;
double ssbdszone = 0.0;

int y = context.getSimulationControl().getStep().getYear();


if (month.getMonthNumber()==0) {
		if (y!=0){
		  //recrutement global
		    //SSB glogale
			for (PopulationGroup cr : groups){
			 		ssb += cr.getMaturityOgive()*N.getValue(cr) * cr.getMeanWeight() *prepro ;
			}
			if (ssb < ssbmin) {
			 recru = pente*ssb;
			 } else  {recru = rssbmin;} 
		 // recrutement par zone : Recru global *ssb(zone)/ssb
			for (Zone zone:zoneRepro){
			   // SSB(Zone)
			    ssbdszone = 0.O;
			    for (PopulationGroup cr : groups){
			 		ssbdszone += cr.getMaturityOgive()*N.getValue(cr,zone) * cr.getMeanWeight() *prepro ;
			    }
				recrudszone = recru*ssbdszone/ssb;
				result.setValue(zone,recrudszone);
			}
		} else  {
		     for (Zone zone:zoneRepro){
			    recrudszone=0.0;
				result.setValue(zone,recrudszone);
			 }	
		}
}
return 0;
