diff --git a/src/main/java/no/nibio/vips/model/oatfloweringmodel/OatFloweringModel.java b/src/main/java/no/nibio/vips/model/oatfloweringmodel/OatFloweringModel.java
index 55fb4ca7c8845d461a5fe3137bfb4134ade3d673..2948f9b3209f84e452cd090d9aaf941cecb6074e 100755
--- a/src/main/java/no/nibio/vips/model/oatfloweringmodel/OatFloweringModel.java
+++ b/src/main/java/no/nibio/vips/model/oatfloweringmodel/OatFloweringModel.java
@@ -68,6 +68,7 @@ public class OatFloweringModel extends I18nImpl implements Model{
         Double dayDegreeSum = 0.0;
         List<Result> results = new ArrayList<>();
         boolean z60Set = false, z625Set = false, z69Set = false;
+        //int counter = 1;
         for(WeatherObservation obs:this.TM)
         {
             if(obs.getTimeMeasured().compareTo(dateOfSowing) >= 0
@@ -75,22 +76,27 @@ public class OatFloweringModel extends I18nImpl implements Model{
             {
                 dayDegreeSum += obs.getValue();
             }
-            //System.out.println(obs.getTimeMeasured() +": " + dayDegreeSum);
-            if(dayDegreeSum >= 768 && ! z60Set)
+            
+            Double GS = this.getGS(dayDegreeSum);
+
+            //System.out.println(obs.getTimeMeasured() +" [" + counter + "]: " + dayDegreeSum + "/" + GS);
+            //counter++;
+            if(GS >= 60.0 && ! z60Set)
             {
                 Result result = this.initResult(obs);
                 result.setValue(this.getModelId().toString(), "ZREACHED", "60");
+                result.setValue(this.getModelId().toString(), "GS", GS.toString());
                 results.add(result);
                 z60Set = true;
             }
-            if(dayDegreeSum >= 808 && ! z625Set)
+            if(GS >= 62.5  && ! z625Set)
             {
                 Result result = this.initResult(obs);
                 result.setValue(this.getModelId().toString(), "ZREACHED", "62.5");
                 results.add(result);
                 z625Set = true;
             }
-            if(dayDegreeSum >= 922 && ! z69Set)
+            if(GS >= 69.0 && ! z69Set)
             {
                 Result result = this.initResult(obs);
                 result.setValue(this.getModelId().toString(), "ZREACHED", "69");
@@ -102,6 +108,17 @@ public class OatFloweringModel extends I18nImpl implements Model{
         return results;
     }
     
+    /**
+     * Calculating Growth stage from day degrees
+     * 
+     * @param dayDegrees
+     * @return 
+     */
+    public Double getGS(Double dayDegrees)    
+    {
+        return 99 * Math.exp(-4.056118159304253 * Math.exp(-0.002380012709504 * dayDegrees));
+    }
+    
     private Result initResult(WeatherObservation obs)
     {
         Calendar cal = Calendar.getInstance();
diff --git a/src/test/java/OatFloweringModelTest.java b/src/test/java/OatFloweringModelTest.java
index 1d54841bb47872429165cf07fd75879fa93ecfbc..0b5092640f558a4ee93da649e8ee10a6ce0ad8c6 100755
--- a/src/test/java/OatFloweringModelTest.java
+++ b/src/test/java/OatFloweringModelTest.java
@@ -87,6 +87,20 @@ public class OatFloweringModelTest {
         
     }
     
+    @Test
+    public void testGetGS()
+    {
+        System.out.println("testGetGS");
+        OatFloweringModel instance = new OatFloweringModel();
+        Double dayDegrees = 2.1;
+        Double expRes = 1.749313981451895;
+        assertEquals(expRes, instance.getGS(dayDegrees));
+        
+        dayDegrees = 69.8;
+        expRes = 3.1893887633938527;
+        assertEquals(expRes, instance.getGS(dayDegrees));
+    }
+    
     @Test
     public void testGetResult()
     {
@@ -99,13 +113,15 @@ public class OatFloweringModelTest {
             List<Result> results = instance.getResult();
             String weekResult = results.get(0).getValue(instance.getModelId().toString(),"WEEK_IN_YEAR");
             String zReached = results.get(0).getValue(instance.getModelId().toString(),"ZREACHED");
-            assertEquals(weekResult, "25");
-            assertEquals(zReached, "60");
+            
             /*for(Result result:results)
             {
-                System.out.println("Result: [" + result.getResultValidTime() + "]" + result.getAllValues());
+                System.out.println("Result: [" + result.getValidTimeStart() + "]" + result.getAllValues());
             }*/
             
+            assertEquals("27", weekResult);
+            assertEquals("60", zReached);
+            
         }
         catch(ConfigValidationException | ModelExcecutionException ex)
         {
@@ -130,21 +146,21 @@ public class OatFloweringModelTest {
             if(all.isArray())
             {
                 for(JsonNode node : all){
-                    System.out.println(node.toString());
+                    //System.out.println(node.toString());
                     Date timeMeasured = (Date)mapper.convertValue(node.get("timeMeasured").asText(), new TypeReference<Date>(){});
                     if(firstDate == null || firstDate.compareTo(timeMeasured) > 0)
                     {
                         firstDate = timeMeasured;
                     }
                     
-                    System.out.println(node.get("elementMeasurementTypeId"));
+                    //System.out.println(node.get("elementMeasurementTypeId"));
                     WeatherObservation observation = new WeatherObservation();
                     observation.setTimeMeasured(timeMeasured);
                     observation.setLogIntervalId(Integer.valueOf(node.get("logIntervalId").asText()));
                     observation.setElementMeasurementTypeId(node.get("elementMeasurementTypeId").asText());
                     observation.setValue(Double.valueOf(node.get("value").asText()));
                     observations.add(observation);
-                    System.out.println("logIntevalId=" + observation.getLogIntervalId());
+                    //System.out.println("logIntevalId=" + observation.getLogIntervalId());
                 }
 
             }
@@ -154,7 +170,7 @@ public class OatFloweringModelTest {
             }
             config.setConfigParameter("observations", observations);
             config.setConfigParameter("dateOfSowing", firstDate);
-            System.out.println("dateOfSowing = " + firstDate);
+            //System.out.println("dateOfSowing = " + firstDate);
             
             return config;
         } catch (IOException ex) {