[chronojump] Added propulsiveEnd calc at realtime



commit 065b8137564091fb033a55f66827656a0ea68349
Author: Xavier de Blas <xaviblas gmail com>
Date:   Fri Nov 1 19:36:25 2013 +0100

    Added propulsiveEnd calc at realtime

 src/gui/encoder.cs |   16 +++++++++++++++-
 1 files changed, 15 insertions(+), 1 deletions(-)
---
diff --git a/src/gui/encoder.cs b/src/gui/encoder.cs
index a4ff6b6..5c3f37b 100644
--- a/src/gui/encoder.cs
+++ b/src/gui/encoder.cs
@@ -3834,7 +3834,21 @@ Log.WriteLine(str);
                        rengine.Evaluate("range <- 
abs(curveToRreduced.cumsum[length(curveToRreduced)]-curveToRreduced.cumsum[1])");
 
                        //propulsive stuff
-                       //TODO: implement this
+                       int propulsiveEnd = curveToRreduced.Length;
+                       rengine.Evaluate("g <- -9.81");
+                       if(encoderPropulsive) {
+                               //check if propulsive phase ends
+                               rengine.Evaluate("propulsiveStuffAtRight <- length(which(accel$y <= -g))"); 
+                               int propulsiveStuffAtRight = 
rengine.GetSymbol("propulsiveStuffAtRight").AsInteger().First();
+                               if(propulsiveStuffAtRight > 0) {
+                                       rengine.Evaluate("propulsiveEnd <- min(which(accel$y <= -g))");
+                                       propulsiveEnd = 
rengine.GetSymbol("propulsiveEnd").AsInteger().First();
+
+                                       rengine.Evaluate("curveToRreduced <- 
curveToRreduced[1:propulsiveEnd]");
+                                       rengine.Evaluate("speed$y <- speed$y[1:propulsiveEnd]");
+                                       rengine.Evaluate("accel$y <- accel$y[1:propulsiveEnd]");
+                               }
+                       }
                        //end of propulsive stuff
 
                        double height = rengine.GetSymbol("range").AsNumeric().First();


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]