User guide - use of thrust
DominicDirkx opened this issue · comments
The pages from the old website (http://tudat.tudelft.nl/tutorials/tudatFeatures/accelerationSetup/thrustModels.html) on the use of thrust need to be thoroughly updated and moved to the new website, with a change to Python, of course. Luckily, quite a lot of info from the old website is now/will go into the API, making this page a lot cleaner. Points that need to be highlighted:
- Two approaches: full definition of thrust through a single function/separate definition of thrust magnitude and direction
- Distinction between inertial thrust direction (related to vehicle orientation) and body-fixed thrust direction (related to engine placement/thrust vector control)
- Interaction of thrust with environment
- Use of combined aerodynamic guidance and thrust
This guide is now underways (my top priority now that students start working with thrust as part of P&O).
The first version of the orientation and magnitude guide is done.
I am currently pushing this to the feature/thrust-guide branch.
Here is what is next for this guide:
- How to associate mass rate with thrust.
- Explain how to use a custom thrust direction and still define aerodynamic angles with aerodynamic guidance.
- Explain how to use thrust direction from existing body orientation from aerodynamic guidance.
- (Maybe, later?) Explain how to use thrust direction with rotational dynamics.
Great to see this taking shape :) What should also be addressed, and possibly refactored in the code, is how to define the body-fixed thrust direction. At the moment this is usually in a constant default direction, but this can be modified (although not in a particularly obvious or logical way....). When combining thrust and aerodynamics, and also for influence of thrust on rotation, this becomes important
Perfect. I planned on discussing how the body_fixed_thrust_direction
argument can be used to define an angle of the thrust w.r.t. the vehicle orientation.
When you say that this is, for now, a constant direction, but could be modified, do you suggest for instance to extend this feature to accept a function that would return the direction (as a function of time)? This would indeed be quite interesting, and I will then open an issue to implement (or expose?) this.
Edit: I see that, for the custom_thrust_magnitude()
function, the body_fixed_thrust_direction
is actually already implemented to be a function. So it would then more be a matter of properly discussing this.
Edit: I see that, for the custom_thrust_magnitude() function, the body_fixed_thrust_direction is actually already implemented to be a function. So it would then more be a matter of properly discussing this.
Indeed, but I am not sure if it is only a matter of discussing this, or if we should modify the underlying code make the handling of this more flexible and consistent. Actually, my vote would go for the second option, mentioning that (for now) body-fixed thrust is assumed to be in body-fixed x-direction, but that a generalization is in the works.
We could open a Slack discussion, and possibly a small Zoom meeting with those interested, in the near future
@DominicDirkx I created a pull request (here) to incorporate what I already made for the thrust guide to tudat-space, which I think can be of use to P&O students dealing with the Lunar Ascent problem.
I think that the remaining part of this guide is less time-critical, and I will then add it later on.
@FilippoOggionni I also added you as a reviewer to this pull request. Please feel free to add your input if you have time.