AutoFormGeometry:

Path: FormationFlying/Guidance

% Autonomously update geometric goals
 Define new geometric goals for a single satellite, such that any semi-major
 axis difference is eliminated, and the new trajectory maintains a minimum
 separation distance from all other team members trajectories in the team.

 Command ONLY along-track offset, set radial oscillation to 0, and leave 
 out-of-plane motion unchanged.

 For each OTHER member, compute the extreme y-values, and determine the closest y0 
 whose extrema are at least minSepDist from all OTHER extrema

--------------------------------------------------------------------------
   Usage:
   newGoals = AutoFormGeometry( state, memberGoals, minSepDist, maxSepDist, nS, maxIter );
--------------------------------------------------------------------------

   ------
   Inputs
   ------
   state         (.)   Orbital state data structure
   memberGoals   (.)   Geometric goals for all other members in the cluster
   minSepDist    (1)   Minimum allowable separation distance between satellites
   minSepDist    (1)   Maximum allowable separation distance between satellites
   nS            (1)   Number of samples to use in computing 1-period trajectories

   -------
   Outputs
   -------
   newGoals      (.)   Goals data structure defining desired relative motion for team
   
--------------------------------------------------------------------------