commit f871c45570b9fed5286449dda9745b076a3c9fda
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Mon May 20 16:24:40 2019 +0100

    Improvements to comments and function names in Dynamics

diff --git a/src/main/java/org/distorted/library/type/Dynamic.java b/src/main/java/org/distorted/library/type/Dynamic.java
index 54cff02..627b105 100644
--- a/src/main/java/org/distorted/library/type/Dynamic.java
+++ b/src/main/java/org/distorted/library/type/Dynamic.java
@@ -33,21 +33,23 @@ import java.util.Vector;
 
 // The way Interpolation between more than 2 Points is done:
 // 
-// Def: let w[i] = (w[i](x), w[i](y), w[i](z)) be the direction and speed we have to be flying at Point P[i]
+// Def: let V[i] = (V[i](x), V[i](y), V[i](z)) be the direction and speed (i.e. velocity) we have to
+// be flying at Point P[i]
 //
-// time it takes to fly though one segment v[i] --> v[i+1] : 0.0 --> 1.0
-// w[i] should be parallel to v[i+1] - v[i-1]   (cyclic notation)
-// |w[i]| proportional to | P[i]-P[i+1] |
+// Time it takes to fly though one segment P[i] --> P[i+1] : 0.0 --> 1.0
+//
+// We arbitrarily decide that V[i] should be equal to (|curr|*prev + |prev|*curr) / min(|prev|,|curr|)
+// where prev = P[i]-P[i-1] and curr = P[i+1]-P[i]
 //
 // Given that the flight route (X(t), Y(t), Z(t)) from P(i) to P(i+1)  (0<=t<=1) has to satisfy
-// X(0) = P[i  ](x), Y(0)=P[i  ](y), Z(0)=P[i  ](z), X'(0) = w[i  ](x), Y'(0) = w[i  ](y), Z'(0) = w[i  ](z)
-// X(1) = P[i+1](x), Y(1)=P[i+1](y), Z(1)=P[i+1](z), X'(1) = w[i+1](x), Y'(1) = w[i+1](y), Z'(1) = w[i+1](z)
+// X(0) = P[i  ](x), Y(0)=P[i  ](y), Z(0)=P[i  ](z), X'(0) = V[i  ](x), Y'(0) = V[i  ](y), Z'(0) = V[i  ](z)
+// X(1) = P[i+1](x), Y(1)=P[i+1](y), Z(1)=P[i+1](z), X'(1) = V[i+1](x), Y'(1) = V[i+1](y), Z'(1) = V[i+1](z)
 //
 // we have the solution:  X(t) = at^3 + bt^2 + ct + d where
-// a =  2*P[i](x) +   w[i](x) - 2*P[i+1](x) + w[i+1](x)
-// b = -3*P[i](x) - 2*w[i](x) + 3*P[i+1](x) - w[i+1](x)
-// c = w[i](x)
-// d = P[i](x)
+// a =  2*P[i](x) +   V[i](x) - 2*P[i+1](x) + V[i+1](x)
+// b = -3*P[i](x) - 2*V[i](x) + 3*P[i+1](x) - V[i+1](x)
+// c =                V[i](x)
+// d =    P[i](x)
 //
 // and similarly Y(t) and Z(t).
 
diff --git a/src/main/java/org/distorted/library/type/Dynamic1D.java b/src/main/java/org/distorted/library/type/Dynamic1D.java
index 2b16f68..96cc89c 100644
--- a/src/main/java/org/distorted/library/type/Dynamic1D.java
+++ b/src/main/java/org/distorted/library/type/Dynamic1D.java
@@ -35,7 +35,7 @@ public class Dynamic1D extends Dynamic implements Data1D
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 // no array bounds checking!
   
-  private void vec(int c)
+  private void computeVelocity(int c)
     {
     int p = c>0 ? c-1: numPoints-1;
     int n = c<numPoints-1 ? c+1: 0;
@@ -105,7 +105,7 @@ public class Dynamic1D extends Dynamic implements Data1D
       {
       int i, n;  
          
-      for(i=0; i<numPoints; i++) vec(i);
+      for(i=0; i<numPoints; i++) computeVelocity(i);
    
       for(i=0; i<numPoints; i++)
         {
diff --git a/src/main/java/org/distorted/library/type/Dynamic2D.java b/src/main/java/org/distorted/library/type/Dynamic2D.java
index 678d0eb..1193923 100644
--- a/src/main/java/org/distorted/library/type/Dynamic2D.java
+++ b/src/main/java/org/distorted/library/type/Dynamic2D.java
@@ -35,7 +35,7 @@ public class Dynamic2D extends Dynamic implements Data2D
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 // no array bounds checking!
   
-  private void vec(int c)
+  private void computeVelocity(int c)
     {
     int p = c>0 ? c-1: numPoints-1;
     int n = c<numPoints-1 ? c+1: 0;
@@ -115,7 +115,7 @@ public class Dynamic2D extends Dynamic implements Data2D
       {
       int i, n;  
          
-      for(i=0; i<numPoints; i++) vec(i);
+      for(i=0; i<numPoints; i++) computeVelocity(i);
    
       for(i=0; i<numPoints; i++)
         {
diff --git a/src/main/java/org/distorted/library/type/Dynamic3D.java b/src/main/java/org/distorted/library/type/Dynamic3D.java
index 5a17bed..993ec42 100644
--- a/src/main/java/org/distorted/library/type/Dynamic3D.java
+++ b/src/main/java/org/distorted/library/type/Dynamic3D.java
@@ -35,7 +35,7 @@ public class Dynamic3D extends Dynamic implements Data3D
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 // no array bounds checking!
   
-  private void vec(int c)
+  private void computeVelocity(int c)
     {
     int p = c>0 ? c-1: numPoints-1;
     int n = c<numPoints-1 ? c+1: 0;
@@ -125,7 +125,7 @@ public class Dynamic3D extends Dynamic implements Data3D
       {
       int i, n;  
          
-      for(i=0; i<numPoints; i++) vec(i);
+      for(i=0; i<numPoints; i++) computeVelocity(i);
    
       for(i=0; i<numPoints; i++)
         {
diff --git a/src/main/java/org/distorted/library/type/Dynamic4D.java b/src/main/java/org/distorted/library/type/Dynamic4D.java
index 2a8b131..922fcf2 100644
--- a/src/main/java/org/distorted/library/type/Dynamic4D.java
+++ b/src/main/java/org/distorted/library/type/Dynamic4D.java
@@ -35,7 +35,7 @@ public class Dynamic4D extends Dynamic implements Data4D
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 // no array bounds checking!
   
-  private void vec(int c)
+  private void computeVelocity(int c)
     {
     int p = c>0 ? c-1: numPoints-1;
     int n = c<numPoints-1 ? c+1: 0;
@@ -135,7 +135,7 @@ public class Dynamic4D extends Dynamic implements Data4D
       {
       int i, n;  
       
-      for(i=0; i<numPoints; i++) vec(i);
+      for(i=0; i<numPoints; i++) computeVelocity(i);
    
       for(i=0; i<numPoints; i++)
         {
diff --git a/src/main/java/org/distorted/library/type/Dynamic5D.java b/src/main/java/org/distorted/library/type/Dynamic5D.java
index c6b8e45..254f259 100644
--- a/src/main/java/org/distorted/library/type/Dynamic5D.java
+++ b/src/main/java/org/distorted/library/type/Dynamic5D.java
@@ -35,7 +35,7 @@ public class Dynamic5D extends Dynamic implements Data5D
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 // no array bounds checking!
   
-  private void vec(int c)
+  private void computeVelocity(int c)
     {
     int p = c>0 ? c-1: numPoints-1;
     int n = c<numPoints-1 ? c+1: 0;
@@ -145,7 +145,7 @@ public class Dynamic5D extends Dynamic implements Data5D
       {
       int i, n;  
       
-      for(i=0; i<numPoints; i++) vec(i);
+      for(i=0; i<numPoints; i++) computeVelocity(i);
    
       for(i=0; i<numPoints; i++)
         {
diff --git a/src/main/java/org/distorted/library/type/DynamicQuat.java b/src/main/java/org/distorted/library/type/DynamicQuat.java
index e4cd2be..07a75a2 100644
--- a/src/main/java/org/distorted/library/type/DynamicQuat.java
+++ b/src/main/java/org/distorted/library/type/DynamicQuat.java
@@ -52,7 +52,7 @@ public class DynamicQuat extends Dynamic implements Data4D
   private Static4D curr, next;
  
 ///////////////////////////////////////////////////////////////////////////////////////////////////
-//Abramowitz / Stegun
+// Abramowitz / Stegun
 
   private static float arcCos(float x)
     {
