From 584f5834ffd5ed8585d58371a00164b76709a746 Mon Sep 17 00:00:00 2001
From: Tor-Einar Skog <tor-einar.skog@bioforsk.no>
Date: Thu, 7 Jan 2016 10:37:08 +0100
Subject: [PATCH] Bugfixes and debug output suppression

---
 .../RoughageNutritionModel.java                       | 11 ++++++++---
 .../RoughageNutritionModelImpl.java                   | 10 ++++------
 2 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/src/main/java/no/bioforsk/vips/model/roughagenutritionmodel/RoughageNutritionModel.java b/src/main/java/no/bioforsk/vips/model/roughagenutritionmodel/RoughageNutritionModel.java
index 3c70f82..d83a609 100644
--- a/src/main/java/no/bioforsk/vips/model/roughagenutritionmodel/RoughageNutritionModel.java
+++ b/src/main/java/no/bioforsk/vips/model/roughagenutritionmodel/RoughageNutritionModel.java
@@ -300,6 +300,10 @@ public class RoughageNutritionModel implements Model {
         if(config.getConfigParameter("optimizationInfo") != null)
         {
             List<String> optimizationInfo = mapper.convertValue(config.getConfigParameter("optimizationInfo"), new TypeReference<List<String>>(){});
+            /*for(String inf:optimizationInfo)
+            {
+                System.out.println(inf);
+            }*/
             this.optimizationObservations = this.parseOptimizationInfo(optimizationInfo, this.timeZone);
         }
         
@@ -465,14 +469,15 @@ public class RoughageNutritionModel implements Model {
                         format.parse(parts[0]), // Date
                         Double.parseDouble(parts[1]), // Height
                         Double.parseDouble(parts[2]), // MSC
-                        Double.parseDouble(parts[3]), // FEm
                         Double.parseDouble(parts[4]), // NDF
                         Double.parseDouble(parts[5]), // INDF
-                        Double.parseDouble(parts[6]) // Raw protein
+                        Double.parseDouble(parts[6]), // Raw protein
+                        Double.parseDouble(parts[3]) // FEm
                 );
                retVal.add(optObs);
             }
-            catch(ArrayIndexOutOfBoundsException | ParseException ex) {}
+            catch(ArrayIndexOutOfBoundsException | ParseException ex) {
+            }
         }
         return retVal;
     }
diff --git a/src/main/java/no/bioforsk/vips/model/roughagenutritionmodel/RoughageNutritionModelImpl.java b/src/main/java/no/bioforsk/vips/model/roughagenutritionmodel/RoughageNutritionModelImpl.java
index 49d3b00..6a9cf83 100644
--- a/src/main/java/no/bioforsk/vips/model/roughagenutritionmodel/RoughageNutritionModelImpl.java
+++ b/src/main/java/no/bioforsk/vips/model/roughagenutritionmodel/RoughageNutritionModelImpl.java
@@ -885,7 +885,7 @@ public class RoughageNutritionModelImpl implements CostFunction{
         if(this.AIBakgrunnsdataMatrise == null)
         {
             this.beregnAIBakgrunnsdata();
-            System.out.println("Resultatmatrise rett etter getMSC" + this.AIBakgrunnsdataMatrise.toString());
+            //System.out.println("Resultatmatrise rett etter getMSC" + this.AIBakgrunnsdataMatrise.toString());
         }
         //System.out.println("getMSC at" + dato);
         return this.AIBakgrunnsdataMatrise.getParamDoubleValueForDate(dato, AIDataMatrix.MSC_BEREGNET);
@@ -1759,7 +1759,7 @@ public class RoughageNutritionModelImpl implements CostFunction{
 
             @Override
             public synchronized boolean converged(PointCostPair[] pair) {
-                boolean DEBUG = true;
+                boolean DEBUG = false;
                 // Prøver med 10%
                 double differencePercentage = 0.1;
                 double min=0;
@@ -1793,7 +1793,7 @@ public class RoughageNutritionModelImpl implements CostFunction{
         if(DEBUG)
             System.out.println("[GrovforModell/optimerParametre] DEBUG: alfa=" + optimumUtvikling.getPoint()[0]);
 
-        this.alfa = ((Double) optimumUtvikling.getPoint()[0]).doubleValue();
+        this.alfa = ((Double) optimumUtvikling.getPoint()[0]);
         //this.AIbeta = ((Double) optimumUtvikling.getPoint()[1]).doubleValue();
         // Nullstiller AI-matrisen, slik at øvrige beregninger går som planlagt
         this.AIBakgrunnsdataMatrise = null;
@@ -1802,9 +1802,7 @@ public class RoughageNutritionModelImpl implements CostFunction{
         // Sjekker først om vi har observasjoner av avling i peroden før førsteslått og mellom førsteslått og andreslått.
         boolean avlingMaaltFoerFoersteslaatt = false;
         boolean avlingMaaltMellomFoersteOgAndreslaatt = false;
-        for(Iterator<OptimizationObservation> i = this.observasjoner.iterator();i.hasNext();)
-        {
-            OptimizationObservation observasjon = i.next();
+        for (OptimizationObservation observasjon : this.observasjoner) {
             if(observasjon.getDate().before(this.datoFoersteSlaatt) && observasjon.getAvling() > 0)
                 avlingMaaltFoerFoersteslaatt = true;
             if(observasjon.getDate().after(this.datoFoersteSlaatt) && observasjon.getDate().before(this.datoAndreSlaatt) && observasjon.getAvling() > 0)
-- 
GitLab