X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fnet%2Fsf%2Fopenrocket%2Fsimulation%2FRK4SimulationStepper.java;h=8d5e27dbf94264479d1d27bea78074e420a57e0a;hb=8320c04afa30e2aa0150adc870d02abeedb01066;hp=99fd475e9197ccd1c04704b2269b446a2645bbbb;hpb=6460090e9ec07b12234369583032d02d7c5ed3b1;p=debian%2Fopenrocket diff --git a/src/net/sf/openrocket/simulation/RK4SimulationStepper.java b/src/net/sf/openrocket/simulation/RK4SimulationStepper.java index 99fd475e..8d5e27db 100644 --- a/src/net/sf/openrocket/simulation/RK4SimulationStepper.java +++ b/src/net/sf/openrocket/simulation/RK4SimulationStepper.java @@ -21,6 +21,9 @@ public class RK4SimulationStepper extends AbstractSimulationStepper { private static final LogHelper log = Application.getLogger(); + /** Random value with which to XOR the random seed value */ + private static final int SEED_RANDOMIZATION = 0x23E3A01F; + /** * A recommended reasonably accurate time step. @@ -50,8 +53,7 @@ public class RK4SimulationStepper extends AbstractSimulationStepper { private static final double MIN_TIME_STEP = 0.001; - // TODO: HIGH: Randomness source from simulation - private final Random random = new Random(); + private Random random; @@ -59,8 +61,6 @@ public class RK4SimulationStepper extends AbstractSimulationStepper { @Override public RK4SimulationStatus initialize(SimulationStatus original) { - log.info("Performing RK4SimulationStepper initialization"); - RK4SimulationStatus status = new RK4SimulationStatus(); status.copyFrom(original); @@ -72,6 +72,8 @@ public class RK4SimulationStepper extends AbstractSimulationStepper { Math.cos(sim.getLaunchRodAngle()) )); + this.random = new Random(original.getSimulationConditions().getRandomSeed() ^ SEED_RANDOMIZATION); + return status; }