add some timeStep debug to BasicLandingStepper

This commit is contained in:
JoePfeiffer 2022-10-23 10:04:18 -06:00
parent 0cc805b185
commit 194a802ea0

View File

@ -79,6 +79,7 @@ public class BasicLandingStepper extends AbstractSimulationStepper {
} }
// but don't let it get *too* small // but don't let it get *too* small
timeStep = Math.max(timeStep, MIN_TIME_STEP); timeStep = Math.max(timeStep, MIN_TIME_STEP);
log.debug("timeStep is " + timeStep);
// Perform Euler integration // Perform Euler integration
Coordinate newPosition = status.getRocketPosition().add(status.getRocketVelocity().multiply(timeStep)). Coordinate newPosition = status.getRocketPosition().add(status.getRocketVelocity().multiply(timeStep)).
@ -94,6 +95,7 @@ public class BasicLandingStepper extends AbstractSimulationStepper {
// The new timestep is the solution of // The new timestep is the solution of
// 1/2 at^2 + vt + z0 = 0 // 1/2 at^2 + vt + z0 = 0
timeStep = (-v - Math.sqrt(v*v - 2*a*z0))/a; timeStep = (-v - Math.sqrt(v*v - 2*a*z0))/a;
log.debug("ground hit changes timeStep to " + timeStep);
newPosition = status.getRocketPosition().add(status.getRocketVelocity().multiply(timeStep)). newPosition = status.getRocketPosition().add(status.getRocketVelocity().multiply(timeStep)).
add(linearAcceleration.multiply(MathUtil.pow2(timeStep) / 2)); add(linearAcceleration.multiply(MathUtil.pow2(timeStep) / 2));
@ -114,7 +116,6 @@ public class BasicLandingStepper extends AbstractSimulationStepper {
w = status.getSimulationConditions().getGeodeticComputation().addCoordinate(w, status.getRocketPosition()); w = status.getSimulationConditions().getGeodeticComputation().addCoordinate(w, status.getRocketPosition());
status.setRocketWorldPosition(w); status.setRocketWorldPosition(w);
// Store data // Store data
FlightDataBranch data = status.getFlightData(); FlightDataBranch data = status.getFlightData();
boolean extra = status.getSimulationConditions().isCalculateExtras(); boolean extra = status.getSimulationConditions().isCalculateExtras();