Author: chatellier Date: 2009-08-25 12:15:50 +0000 (Tue, 25 Aug 2009) New Revision: 169 Removed: trunk/rules/RecrutementLangoustine.java Log: Suppression de RecrutementLangoustine (non g?\195?\169n?\195?\169rique) Deleted: trunk/rules/RecrutementLangoustine.java =================================================================== --- trunk/rules/RecrutementLangoustine.java 2009-08-25 12:15:22 UTC (rev 168) +++ trunk/rules/RecrutementLangoustine.java 2009-08-25 12:15:50 UTC (rev 169) @@ -1,184 +0,0 @@ -package rules; - -import static org.codelutin.i18n.I18n._; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import scripts.ResultName; - -import java.io.Writer; - -import org.codelutin.math.matrix.*; -import org.codelutin.topia.TopiaContext; -import org.codelutin.util.StringUtil; - -import fr.ifremer.isisfish.IsisFishDAOHelper; -import fr.ifremer.isisfish.simulator.PopulationMonitor; -import fr.ifremer.isisfish.simulator.SimulationContext; -import fr.ifremer.isisfish.types.Date; -import fr.ifremer.isisfish.types.Month; -import fr.ifremer.isisfish.entities.*; -import fr.ifremer.isisfish.rule.AbstractRule; -import fr.ifremer.isisfish.datastore.SimulationStorage; -import fr.ifremer.isisfish.datastore.ResultStorage; - -import fr.ifremer.isisfish.util.Doc; // pour pouvoir afficher une aide contextuelle (BUG#1605) - -/** - * RecrutementLangoustine.java - * - * Created: 22 mars 2007 - * - * @author stephanie MAHEVAS <smahevas@ifremer.fr> - * @version $Revision: 1.1 $ - * - * Last update: $Date: 2007-03-22 17:33:56 $ - * by : $Author: bpoussin $ - */ -public class RecrutementLangoustine extends AbstractRule { - - /** to use log facility, just put in your code: log.info("..."); */ - static private Log log = LogFactory.getLog(RecrutementLangoustine.class); - - @Doc(value="do the doc of param recrut1998") - public double param_recrut1998 =0; - @Doc(value="do the doc of param recrut1999") - public double param_recrut1999 =0; - @Doc(value="do the doc of param recrut2000") - public double param_recrut2000 =0; - @Doc(value="do the doc of param recrut2001") - public double param_recrut2001 =0; - @Doc(value="do the doc of param recrut2002") - public double param_recrut2002 =0; - @Doc(value="do the doc of param recrut2003") - public double param_recrut2003 =0; - @Doc(value="do the doc of param recrut2004") - public double param_recrut2004 =0; - @Doc(value="do the doc of param recrut2005") - public double param_recrut2005 =0; - - public double [] recru = null; - - public String [] necessaryResult = { - // put here all necessary result for this rule - // example: - // ResultName.MATRIX_BIOMASS, - // ResultName.MATRIX_NET_VALUE_OF_LANDINGS_PER_STRATEGY_MET, - }; - - public String[] getNecessaryResult() { - return this.necessaryResult; - } - - /** - * Permet d'afficher a l'utilisateur une aide sur la regle. - * @return L'aide ou la description de la regle - */ - public String getDescription() throws Exception { - // TODO - return _("TODO description rule"); - } - - /** - * Appelé au démarrage de la simulation, cette méthode permet d'initialiser - * des valeurs - * @param simulation La simulation pour lequel on utilise cette regle - */ - public void init(SimulationContext context) throws Exception { - // remarque on pourrait aussi avoir un seul parametre de regle - // par exemple param_recru_depuis_1998 = "0;0;0;0;0;0;0;0"; - // on ferait alors - // recru = StringUtil.toArrayDouble(param_recru_depuis_1998.split(";")); - - recru = new double[]{ - param_recrut1998, - param_recrut1999, - param_recrut2000, - param_recrut2001, - param_recrut2002, - param_recrut2003, - param_recrut2004, - param_recrut2005, - }; - } - /** - * La condition qui doit etre vrai pour faire les actions - * @param simulation La simulation pour lequel on utilise cette regle - * @return vrai si on souhaite que les actions soit faites - */ - public boolean condition(SimulationContext context, Date date, Metier metier) throws Exception { - boolean result = false; - if (date.getMonth().equals(Month.SEPTEMBER) || - date.getMonth().equals(Month.OCTOBER) - || date.getMonth().equals(Month.NOVEMBER) - ||date.getMonth().equals(Month.DECEMBER)) { - result = true; - } - return result; -/* -writeln("recrutement CIEM"); -var mois = p.date.getMois().getNumMois(); -//si le recrutement a lieu en octobre -if( mois==8 ||mois==9 || mois==10 || mois==11){ -//??&& p.oprfaite==false{ -var result = true; -} - return result ; -*/ - - } - - /** - * Si la condition est vrai alors cette action est executée avant -le pas - * de temps de la simulation. - * @param simulation La simulation pour lequel on utilise cette regle - */ - public void preAction(SimulationContext context, Date date, Metier metier) throws Exception { - TopiaContext db = context.getDB(); - - PopulationDAO popDao = IsisFishDAOHelper.getPopulationDAO(db); - Population pop = popDao.findByName("nephrops"); - PopulationGroup group0 = pop.getPopulationGroup().get(0); - - ZoneDAO zoneDao = IsisFishDAOHelper.getZoneDAO(db); - Zone zone1 = zoneDao.findByName("zone L21E7"); - Zone zone2 = zoneDao.findByName("zone L21E8"); - Zone zone3 = zoneDao.findByName("zone L22E6"); - Zone zone4 = zoneDao.findByName("zone L22E7"); - Zone zone5 = zoneDao.findByName("zone L23E5"); - Zone zone6 = zoneDao.findByName("zone L23E6"); - Zone zone7 = zoneDao.findByName("zone L23E7"); - Zone zone8 = zoneDao.findByName("zone L24E5"); - Zone zone9 = zoneDao.findByName("zone L24E6"); - - int year = date.getYear(); - MatrixND matN = context.getPopulationMonitor().getN(pop); - - double coefR =4/(Math.exp(-0.6/12))*(1+ Math.exp(-0.3/12)+ Math.exp(-0.6/12)+ Math.exp(-0.9/12)); - - double R = recru[year] * coefR / 9.0; - - matN.setValue(group0, zone1, R); - matN.setValue(group0, zone2, R); - matN.setValue(group0, zone3, R); - matN.setValue(group0, zone4, R); - matN.setValue(group0, zone5, R); - matN.setValue(group0, zone6, R); - matN.setValue(group0, zone7, R); - matN.setValue(group0, zone8, R); - matN.setValue(group0, zone9, R); - - } - - /** - * Si la condition est vrai alors cette action est executée apres le pas - * de temps de la simulation. - * @param simulation La simulation pour lequel on utilise cette regle - */ - public void postAction(SimulationContext context, Date date, Metier metier) throws Exception { - // TODO - } - -} \ No newline at end of file