Ejemplo n.º 1
0
 protected DeorbitOptimizerBase(DeorbitAutopilot module, float dtol)
     : base(module, dtol)
 {
     m           = module;
     inclination = 0f;
     targetAlt   = m.TargetAltitude;
 }
Ejemplo n.º 2
0
 public EccentricityOptimizer(DeorbitAutopilot module)
 {
     m        = module;
     comparer = new LTComparer(maneuver);
     if (m.Body.atmosphere)
     {
         comparer.AddConditions(overheat);
     }
     comparer.AddConditions(steepness, fuel);
 }
Ejemplo n.º 3
0
 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);
 }
Ejemplo n.º 4
0
 public DeorbitTrajectoryCorrector(DeorbitAutopilot module, float dtol)
     : base(module, dtol)
 {
     prograde_dV = 0;
 }
Ejemplo n.º 5
0
 public DeorbitTrajectoryOptimizer(DeorbitAutopilot module, float dtol)
     : base(module, dtol)
 {
     Ecc  = m.initialEcc;
     dEcc = Math.Max(Ecc / C.EccSteps, 0.05);
 }