Convergence

Scripts to perform the refinement on the generated orbits

Julia Wrapper


source

differential_correction

 differential_correction (orbit:numpy.ndarray, μ:float,
                          variable_time:bool=True,
                          time_flight:Optional[float]=None,
                          jacobi_constant:Optional[float]=None,
                          X_end:Optional[numpy.ndarray]=None,
                          tol:float=1e-09, max_iter:int=20,
                          printout:bool=False,
                          DX_0:Optional[numpy.ndarray]=None,
                          X_big_0:Optional[numpy.ndarray]=None,
                          δ:Optional[float]=None)

Performs differential correction on an orbit using Julia implementation.

Type Default Details
orbit ndarray Orbit data with shape [num_timesteps, 7]
μ float Gravitational parameter
variable_time bool True Whether to use variable time nodes
time_flight Optional None Total time of flight
jacobi_constant Optional None Jacobi constant
X_end Optional None Terminal state vector (shape: [6])
tol float 1e-09 Tolerance for convergence
max_iter int 20 Maximum number of iterations
printout bool False Whether to print iteration logs
DX_0 Optional None Initial guess for state vector correction
X_big_0 Optional None Auxiliary initial guess
δ Optional None Step size or perturbation parameter
Returns Tuple

source

create_converged_orbits_df

 create_converged_orbits_df (converged_indices:List[int],
                             orbit_array:numpy.ndarray,
                             converged_orbits:numpy.ndarray,
                             errors:numpy.ndarray,
                             iterations:numpy.ndarray)

Creates a DataFrame containing detailed information about converged orbits.

Type Details
converged_indices List List of orbit indices that have converged
orbit_array ndarray Original array containing all orbit data
converged_orbits ndarray Array containing corrected converged orbits
errors ndarray Array of norm values for each converged orbit
iterations ndarray Array of iteration counts for each converged orbit
Returns DataFrame

source

process_diferential_correction_orbits

 process_diferential_correction_orbits (orbit_array:numpy.ndarray,
                                        μ:float, variable_time:bool=True,
                                        tol:float=1e-09, max_iter:int=20,
                                        printout:bool=False)

Processes a set of orbits by providing the orbit array directly to differential correction.

Type Default Details
orbit_array ndarray Array containing orbit data with shape [num_orbits, num_timesteps, 7]. First element in last dimension is time
μ float Gravitational parameter
variable_time bool True Whether to use variable time nodes for correction
tol float 1e-09 Tolerance for convergence in differential correction
max_iter int 20 Maximum number of iterations for differential correction
printout bool False Whether to print iteration logs
Returns tuple