public StartTimeOptimizer(RendezvousAutopilot ren,
                                      double startUT, double transfer, double dT)

                : base(ren, ren.VSL.Physics.UT + ren.CorrectionOffset, startUT + transfer, -1, false, dT)
            {
                this.startUT = startUT;
            }
 public TransferOptimizer(RendezvousAutopilot ren,
                          double maxEndUT, double startUT, double transfer, double dT)
     : base(ren, ren.VSL.Physics.UT + ren.CorrectionOffset, maxEndUT, maxEndUT, false, dT)
 {
     this.startUT   = startUT;
     this.transferT = transfer;
 }
 protected bool GetREN()
 {
     if (TCA == null && !GetTCA())
     {
         return(false);
     }
     REN = TCA.GetModule <RendezvousAutopilot>();
     return(REN != null);
 }
 public CDOS_Optimizer2D(RendezvousAutopilot ren,
                         double minStartUT, double maxStartUT,
                         double maxEndUT, bool softMaxStart,
                         double startUT, double startTransfer, double dT)
     : base(ren, minStartUT, maxStartUT, maxEndUT, softMaxStart, dT)
 {
     P0 = P = new Point(Math.Max(startUT, minStartUT + 1), startTransfer, this);
     set_dir(new Vector2d(0, 1));
 }
 protected RendezvousTrajectoryOptimizer(RendezvousAutopilot ren,
                                         double minStartUT, double maxStartUT,
                                         double maxEndUT, bool softMaxStart, double dT)
 {
     this.minStartUT   = minStartUT;
     this.maxStartUT   = maxStartUT;
     this.maxEndUT     = maxEndUT;
     this.softMaxStart = softMaxStart;
     this.dT           = dT;
     this.ren          = ren;
 }