Package cnuphys.swim

Class DefaultSwimStopper

java.lang.Object
cnuphys.swim.DefaultSwimStopper
All Implemented Interfaces:
IStopper

public class DefaultSwimStopper extends Object implements IStopper
  • Field Details

    • _finalPathLength

      protected double _finalPathLength
  • Constructor Details

    • DefaultSwimStopper

      public DefaultSwimStopper(double maxR)
      A default swim stopper that will stop if either a max pathlength is exceeded or if a radial coordinate is exceeded
      Parameters:
      maxR - the max radial coordinate in meters. Give a negative
  • Method Details

    • stopIntegration

      public boolean stopIntegration(double t, double[] y)
      Description copied from interface: IStopper
      Given the current state of the integration, should we stop? This allows the integration to stop, for example, if some distance from the origin has been exceeded or if the independent variable passes some threshold. It won't be precise, because the check may not happen on every step, but it should be close.
      Specified by:
      stopIntegration in interface IStopper
      Parameters:
      t - the current value of the independent variable (typically pathlength)
      y - the current state vector (typically [x, y, z, vx, vy, vz])
      Returns:
      true if we should stop now.
    • getFinalT

      public double getFinalT()
      Get the final path length in meters
      Specified by:
      getFinalT in interface IStopper
      Returns:
      the final path length in meters
    • setFinalT

      public void setFinalT(double finalPathLength)
      Set the final path length in meters
      Specified by:
      setFinalT in interface IStopper
      Parameters:
      finalPathLength - the final path length in meters