# HG changeset patch # User Nicolas Saunier # Date 1342545934 14400 # Node ID bd8ab323c198982c944c9af1c2d5568ad08fa744 # Parent 5027c174ab90327d542011fef0ff7da932bf58b6 corrected issue with predictPosiont static method diff -r 5027c174ab90 -r bd8ab323c198 python/extrapolation.py --- a/python/extrapolation.py Tue Jul 17 00:15:42 2012 -0400 +++ b/python/extrapolation.py Tue Jul 17 13:25:34 2012 -0400 @@ -26,7 +26,7 @@ def predictPosition(self, nTimeSteps): if not nTimeSteps in self.predictedPositions.keys(): - self.predictedPositions[nTimeSteps] = moving.Point.predictPosition(nTimeSteps, self.initialPosition, self.initialVelocity, self.initialAcceleration) + self.predictedPositions[nTimeSteps] = moving.predictPosition(nTimeSteps, self.initialPosition, self.initialVelocity, self.initialAcceleration) return self.predictedPositions[nTimeSteps] # Default values: to remove because we cannot tweak that from a script where the value may be different diff -r 5027c174ab90 -r bd8ab323c198 python/moving.py --- a/python/moving.py Tue Jul 17 00:15:42 2012 -0400 +++ b/python/moving.py Tue Jul 17 13:25:34 2012 -0400 @@ -191,7 +191,6 @@ p1=p2 return (counter%2 == 1); - @staticmethod def dot(p1, p2): 'Scalar product' @@ -211,10 +210,11 @@ from matplotlib.pyplot import scatter scatter([p.x for p in points],[p.y for p in points], c=color) - @staticmethod - def predictPosition(nTimeSteps, initialPosition, initialVelocity, initialAcceleration = Point(0,0)): - '''Predicts the position in nTimeSteps at constant speed/acceleration''' - return initalPosition+velocity.multiply(nTimeSteps) + initialAcceleration.multiply(nTimeSteps**2) + +def predictPosition(nTimeSteps, initialPosition, initialVelocity, initialAcceleration = Point(0,0)): + '''Predicts the position in nTimeSteps at constant speed/acceleration''' + return initalPosition+velocity.multiply(nTimeSteps) + initialAcceleration.multiply(nTimeSteps**2) + class FlowVector: '''Class to represent 4-D flow vectors, @@ -516,7 +516,7 @@ def predictPosition(self, instant, nTimeSteps, externalAcceleration = Point(0,0)): '''Predicts the position of object at instant+deltaT, at constant speed''' - return Point.predictPosition(nTimeSteps, self.getPositionAtInstant(instant), self.getVelocityAtInstant(instant), externalAcceleration) + return predictPosition(nTimeSteps, self.getPositionAtInstant(instant), self.getVelocityAtInstant(instant), externalAcceleration) @staticmethod def collisionCourseDotProduct(movingObject1, movingObject2, instant):