JerkKinematics { public static double getFinalVelocity(double initialVelocity, double initialAcceleration, double jerk, double time) { return initialVelocity + initialAcceleration * time + (1/2d) * jerk * Math.pow(time, 2); } private  JerkKinematics(); static double getDisplacement(double initialVelocity, double initialAcceleration, double jerk, double time); static double getTimeToReachDisplacement(double displacement, double initialVelocity, double initialAcceleration, double jerk); static double getFinalVelocity(double initialVelocity, double initialAcceleration, double jerk, double time); static double getTimeToReachVelocity(double initialVelocity, double targetVelocity, double initialAcceleration, double jerk);  }
@Test void getFinalVelocity_whenSuitableValuesGiven_thenGivesCorrectAnswer() { double velocity = JerkKinematics.getFinalVelocity(5, 1, 7, 13); Assertions.assertEquals(609.5, velocity); }