Convergence
Scripts to perform the refinement on the generated orbits
Julia Wrapper
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 |
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 |
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 |