Beispiel #1
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="initCondition">Initial condition of integration</param>
 /// <param name="method">Method of integration</param>
 public Integrator(float initCondition, IntegratorMethods method)
 {
     Method           = method;
     MinStep          = 0.001f;
     max              = 1000.0f;
     min              = -1000.0f;
     isLimited        = false;
     initialCondition = initCondition;
     integralValue    = initialCondition;
     MaxSubsteps      = 300;
     for (int i = 0; i < previousValues.Length; i++)
     {
         previousValues[i] = initCondition;
     }
     oldTime = 0.0f;
     Error   = 0.001f;
 }
Beispiel #2
0
 public Integrator(Integrator copy)
 {
     Method           = copy.Method;
     MinStep          = copy.MinStep;
     max              = copy.max;
     min              = copy.min;
     isLimited        = copy.isLimited;
     integralValue    = copy.integralValue;
     initialCondition = copy.initialCondition;
     MaxSubsteps      = copy.MaxSubsteps;
     for (int i = 0; i < previousValues.Length; i++)
     {
         previousValues[i] = initialCondition;
     }
     oldTime = 0.0f;
     Error   = copy.Error;
 }
Beispiel #3
0
 public Integrator()
 {
     Method           = IntegratorMethods.EulerBackward;
     MinStep          = 0.001f;
     max              = 1000.0f;
     min              = -1000.0f;
     isLimited        = false;
     integralValue    = 0.0f;
     initialCondition = 0.0f;
     MaxSubsteps      = 300;
     for (int i = 0; i < previousValues.Length; i++)
     {
         previousValues[i] = 0.0f;
     }
     oldTime = 0.0f;
     Error   = 0.001f;
 }