diff --git a/data/Info.txt b/data/Info.txt index 842a68b7701cc76b5765d2ea7c92b9f656f5b83b..458c1cfb80428a9f3f27920f746351ef6ba664d4 100644 --- a/data/Info.txt +++ b/data/Info.txt @@ -1,4 +1,7 @@ + -d -simDuration 8760 -observers data/input/observersCharts.xml -groups data/input/fishLight.xml -env data/input/grid.xml + + Entrées - Marnage diff --git a/data/input/fishLight.xml b/data/input/fishLight.xml index 55a7a24fa11b73ad3239ce3d42aacc658d130797..b92d2841f8ea8eea2341ed83ae5416aa82bd07c4 100644 --- a/data/input/fishLight.xml +++ b/data/input/fishLight.xml @@ -7,42 +7,29 @@ <processes> <processesAtBegin> - <pikelake.environment.FichierMarnage> - + <pikelake.environment.FichierMarnage> </pikelake.environment.FichierMarnage> - <pikelake.environment.HoraireLeverCoucher> - - </pikelake.environment.HoraireLeverCoucher> - - - <!-- pikelake.environment.Time> - - </pikelake.environment.Time--> - - + <pikelake.environment.HoraireLeverCoucher> + </pikelake.environment.HoraireLeverCoucher> + <pikelake.environment.AreaMovement> - <choixDist>2</choixDist> <!-- 0 => distMin; 1 => distMoy; 2 => distMax --> + <choixDist>1</choixDist> <!-- 0 => distMin; 1 => distMoy; 2 => distMax --> </pikelake.environment.AreaMovement> - <pikelake.pikes.PikesPopulateProcess> - <initialNumberOfPikes>10</initialNumberOfPikes> + <initialNumberOfPikes>0</initialNumberOfPikes> </pikelake.pikes.PikesPopulateProcess> - </processesAtBegin> <processesEachStep> <pikelake.environment.Time> - </pikelake.environment.Time> - <pikelake.Marnage> - </pikelake.Marnage> <!--pikelake.Grid> diff --git a/src/main/java/pikelake/Grid.java b/src/main/java/pikelake/Grid.java index 5c2a60bd4115eb7cdbb18fd30dd00b2e98d50d26..e8fe09c53ddd739773e0f17fc6d35449c0e095a8 100644 --- a/src/main/java/pikelake/Grid.java +++ b/src/main/java/pikelake/Grid.java @@ -89,34 +89,6 @@ public class Grid extends Grid2D<Cell, Individual> { scanner.close(); } - - /* public static String calculMarnage () { - - String temp[] = null; - String file = "data/input/CoteCorrige_01012012_30042014.txt"; - try { - Scanner scanner = new Scanner(new File(file)); - // On boucle sur chaque ligne detectée - String line = scanner.nextLine(); - while (scanner.hasNextLine()) { - - line = scanner.nextLine(); - temp = line.split("[/:\t ]+"); - //System.out.println (Integer.parseInt(temp[0]) + " - " + Integer.parseInt(temp[1]) + " - " + temp[2] + " - " + temp[3] + " - " + temp[4] + " - " + temp[5] + " - " + temp[6]); - - if (Time.jourMois == Integer.parseInt(temp[0])) - if (Time.mois == Integer.parseInt(temp[1])-1) - if (Time.heure == Integer.parseInt(temp[3])) - break; - } - scanner.close(); - } catch (FileNotFoundException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - return temp[6].substring(0, temp[6].length()-1).replace(".", "_"); - } */ - public void setCell (int indexCell, double hsiCell) { grid[indexCell] = new Cell(indexCell, hsiCell); } diff --git a/src/main/java/pikelake/Marnage.java b/src/main/java/pikelake/Marnage.java index 56bcccd31e847f7bf57471778ce411d504932bbb..4b6abaa857ed13b9f4c67ca5eaa062e82801a7bf 100644 --- a/src/main/java/pikelake/Marnage.java +++ b/src/main/java/pikelake/Marnage.java @@ -14,6 +14,7 @@ import pikelake.pikes.PikesGroup; public class Marnage extends AquaNismsGroupProcess<Pike,PikesGroup> { public static String marnageOld = null, marnageNew = null; + public int cpt = 0; @Override public void doProcess(PikesGroup object) { @@ -22,8 +23,11 @@ public class Marnage extends AquaNismsGroupProcess<Pike,PikesGroup> { marnageNew = FichierMarnage.calculMarnage(); - if (!marnageNew.equals(marnageOld)) + if (!marnageNew.equals(marnageOld)) { + cpt++; majCote(grid); + //System.out.println(cpt + " Marnage : " + marnageNew); + } } public void majCote (Grid grid) { diff --git a/src/main/java/pikelake/environment/FichierMarnage.java b/src/main/java/pikelake/environment/FichierMarnage.java index 42c8ccb94f2656fb18cf340a5cb2d5c813036961..a5ba1b8489b84d8e2d77508847152379dd41afb8 100644 --- a/src/main/java/pikelake/environment/FichierMarnage.java +++ b/src/main/java/pikelake/environment/FichierMarnage.java @@ -37,9 +37,8 @@ public class FichierMarnage extends AquaNismsGroupProcess<Pike,PikesGroup> { } } - public static String calculMarnage () { - + String[] donnee = null; for (String liste : dateMarnage) { donnee = liste.split(" "); diff --git a/src/main/java/pikelake/environment/Time.java b/src/main/java/pikelake/environment/Time.java index 4bcd8581a6ed0eca6ac5024661f441682eef9ae5..5e59d4cbf5bd8d5db3a967b67c503eb415eed4af 100644 --- a/src/main/java/pikelake/environment/Time.java +++ b/src/main/java/pikelake/environment/Time.java @@ -11,10 +11,12 @@ public class Time extends AquaNismsGroupProcess<Pike,PikesGroup> { public static enum Mois {JANVIER, FEVRIER, MARS, AVRIL, MAI, JUIN, JUILLET, AOUT, SEPTEMBRE, OCTOBRE, NOVEMBRE, DECEMBRE}; public static int mois = 0, jour = 0, jourMois = 1, saison = 0, annee = 2012, phaseJour = 0, heure = 0; + @Override public void doProcess (PikesGroup group) { long nbrIter = group.getPilot().getCurrentTime(); + // Pas de temps Horaire heure = (int) nbrIter % 24; jour = (int) Math.ceil((nbrIter+1) / 24.); @@ -28,14 +30,11 @@ public class Time extends AquaNismsGroupProcess<Pike,PikesGroup> { // RAZ jourMois if ((mois == 0 | mois == 2 | mois == 4 | mois == 6 | mois == 7 | mois == 9 | mois == 11) & jourMois == 32) jourMois = 1; else if ((mois == 3 | mois == 5 | mois == 8 | mois == 10) & jourMois == 31) jourMois = 1; - else if (mois == 1 & jourMois == 29) jourMois = 1; + else if (mois == 1 & jourMois == 29) jourMois = 1; - // Calcul du mois - calculMois(); calculSaison(); calculPhaseJour(); - //System.out.println(annee + " " + Season.values()[saison] + " " + Mois.values()[mois] + " " + jour + " " + jourMois + " " + heure + " " + PhaseJour.values()[phaseJour]); } diff --git a/src/main/java/pikelake/pikes/PikesPopulateProcess.java b/src/main/java/pikelake/pikes/PikesPopulateProcess.java index 454b35ea24c83f5dce0c60265009680d314f9a14..0c4765de7118beeff8c1ed5e10f32af10eabaccd 100644 --- a/src/main/java/pikelake/pikes/PikesPopulateProcess.java +++ b/src/main/java/pikelake/pikes/PikesPopulateProcess.java @@ -31,10 +31,10 @@ public class PikesPopulateProcess extends AquaNismsGroupProcess<Pike,PikesGroup> do { indexCell = (int) Math.round(uniformGen.nextDouble()); } while (cells[indexCell].getHabitatQuality() < 0); + + //System.out.println(indexCell); Pike newPike = new Pike(group.getPilot(), cells[indexCell], ageAtCreation, weightAtCreation); group.addAquaNism(newPike); - } - - + } } }