[chronojump] propulsivePhase on inclinated planes now allows anglePush & angleWeight



commit e3158a50a64328e777266f983139d3e463d1d7d0
Author: Xavier de Blas <xaviblas gmail com>
Date:   Mon Sep 29 12:15:05 2014 +0200

    propulsivePhase on inclinated planes now allows anglePush & angleWeight

 encoder/graph.R |   18 +++++++++++-------
 1 files changed, 11 insertions(+), 7 deletions(-)
---
diff --git a/encoder/graph.R b/encoder/graph.R
index 4622a6a..3b0e308 100644
--- a/encoder/graph.R
+++ b/encoder/graph.R
@@ -539,7 +539,8 @@ findECPhases <- function(displacement,speed) {
 }
 
 findPropulsiveEnd <- function(accel, concentric, maxSpeedTInConcentric,
-                            encoderConfigurationName, anglePush, massBody, massExtra, 
exercisePercentBodyWeight) {
+                            encoderConfigurationName, anglePush, angleWeight, 
+                            massBody, massExtra, exercisePercentBodyWeight) {
 
        propulsiveEndsAt <- -g
 
@@ -547,10 +548,10 @@ findPropulsiveEnd <- function(accel, concentric, maxSpeedTInConcentric,
                #propulsive phase ends at: -g*sin(alfa)
                propulsiveEndsAt <- -g * sin(anglePush * pi / 180)
        } else if(encoderConfigurationName == "LINEARONPLANEWEIGHTDIFFANGLE") {
-               #propulsive phase ends at: (massExtra + massBody * sin(alfa)) * -g / (massExtra + massBody)
-               
                massBodyUsed <- getMassBodyByExercise(massBody, exercisePercentBodyWeight)
-               propulsiveEndsAt <- (massExtra + massBodyUsed * sin (anglePush * pi / 180)) * -g / (massExtra 
+ massBodyUsed)
+               
+               #propulsive phase ends at: [massBodyUsed*sin(anglePush) + massExtra*sin(angleWeight)] / 
(massBodyUsed + massExtra)
+               propulsiveEndsAt <- (massBodyUsed * sin(anglePush * pi / 180) + massExtra * sin(angleWeight * 
pi / 180)) / (massBodyUsed + massExtra)
        }
 
        if(length(which(accel[concentric] <= propulsiveEndsAt)) > 0) {
@@ -627,7 +628,8 @@ print(c(" smoothing:",smoothing))
                        maxSpeedTInConcentric = maxSpeedT
                        
                        propulsiveEnd = findPropulsiveEnd(accel$y,concentric,maxSpeedTInConcentric,
-                                                         encoderConfigurationName, anglePush, massBody, 
massExtra, exercisePercentBodyWeight)
+                                                         encoderConfigurationName, anglePush, angleWeight, 
+                                                         massBody, massExtra, exercisePercentBodyWeight)
                } else if(eccon=="ec") {
                        phases=findECPhases(displacement,speed$y)
                        eccentric = phases$eccentric
@@ -643,7 +645,8 @@ print(c(" smoothing:",smoothing))
 
                                propulsiveEnd = length(eccentric) + length(isometric) + 
                                                findPropulsiveEnd(accel$y,concentric,maxSpeedTInConcentric, 
-                                                                 encoderConfigurationName, anglePush, 
massBody, massExtra, exercisePercentBodyWeight)
+                                                                 encoderConfigurationName, anglePush, 
angleWeight, 
+                                                                 massBody, massExtra, 
exercisePercentBodyWeight)
                                #print(c("lengths: ", length(eccentric), length(isometric), 
findPropulsiveEnd(accel$y,concentric), propulsiveEnd))
                        }
                } else if(eccon=="e") {
@@ -974,7 +977,8 @@ paint <- function(displacement, eccon, xmin, xmax, yrange, knRanges, superpose,
 
        if(isPropulsive) {
                propulsiveEnd = findPropulsiveEnd(accel$y, concentric, maxSpeedTInConcentric,
-                                                 encoderConfigurationName, anglePush, massBody, massExtra, 
exercisePercentBodyWeight)
+                                                 encoderConfigurationName, anglePush, angleWeight, 
+                                                 massBody, massExtra, exercisePercentBodyWeight)
                if(eccon != "c")
                        propulsiveEnd = length(eccentric) + length(isometric) + propulsiveEnd
        }


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