Open ChristopherRabotin opened 1 year ago
As of the writing of this issue, an advanced draft of the to_finite_burn() method is available on the 128-finite-burn-targeting branch. However, it has been observed that small variations in the input can cause the algorithm to fail. Additionally, the current implementation only supports thruster orientations that are either constant or linear, and does not optimize the duration of the burn. Therefore, further development and testing is needed to improve the reliability and functionality of this feature.
The test cases for this feature also need to be expanded upon to thoroughly evaluate its performance.
Converted from https://gitlab.com/nyx-space/nyx/-/issues/128 by ChatGPT
High level description
The purpose of this new feature is to enable users of the astrodynamics toolkit to take a set of maneuvers generated from an instantaneous maneuver finder, such as the Lambert algorithm, and find the finite burn equivalent with a configured spacecraft.
Requirements
The purpose of this section is to fill out the Requirements of the QA process.
Requirements answer the question: what does the system need to do? It does not answer the question of how does the system do this?
Test plans
To test that this feature is working correctly, we can use the following test plans:
Design
Algorithm demonstration
This should use the algorithm from AAS-12-236 by Jacob Williams et al. in the section "Impulsive to Finite Burn Conversion."
API definition
The new to_finite_burn() method will be added to the existing Maneuver structure. It will take the following argument:
High level architecture
The
to_finite_burn()
method will be implemented as part of the existing astrodynamics toolkit. It will use theSpacecraft
structure and theManeuver
structure as inputs, and will return the finite burn equivalent of the maneuvers.Detailed design