protected DeorbitOptimizerBase(DeorbitAutopilot module, float dtol) : base(module, dtol) { m = module; inclination = 0f; targetAlt = m.TargetAltitude; }
public EccentricityOptimizer(DeorbitAutopilot module) { m = module; comparer = new LTComparer(maneuver); if (m.Body.atmosphere) { comparer.AddConditions(overheat); } comparer.AddConditions(steepness, fuel); }
public EccentricityOptimizer(DeorbitAutopilot module) { m = module; comparer = new LTComparer(maneuver, dR); if (m.Body.atmosphere) { var maxDynP = C.MaxDynPressure * m.VSL.Torque.MaxPossible.AngularDragResistance; comparer.AddConditions(overheat, steepness); comparer.AddCondition(x => x.MaxDynamicPressure < maxDynP, (x, y) => x.MaxDynamicPressure < y.MaxDynamicPressure); } else { comparer.AddCondition(steepness); } comparer.AddCondition(fuel); }
public DeorbitTrajectoryCorrector(DeorbitAutopilot module, float dtol) : base(module, dtol) { prograde_dV = 0; }
public DeorbitTrajectoryOptimizer(DeorbitAutopilot module, float dtol) : base(module, dtol) { Ecc = m.initialEcc; dEcc = Math.Max(Ecc / C.EccSteps, 0.05); }