tudat-team / tudat-space

An introduction and guide to tudat-space.
https://tudat-space.readthedocs.io
14 stars 17 forks source link

Clarify what is in the propagated state #59

Closed gaffarelj closed 2 years ago

gaffarelj commented 2 years ago

When multiple bodies have their state and mass propagated (multi-type + multi-body propagation), the propagated state is of the following form: [state1 state2 state3 mass1 mass2 mass3]

The fact that the masses of all the bodies are grouped at the end of the state may be counter-intuitive and should be more explicitly noted at multiple places in the documentation. A good start would be at these pages:

DominicDirkx commented 2 years ago

Good point. In addition to the above, I think it would be good to add a function that prints the order of the state variables, similar to what is done for the dependent variables

gaffarelj commented 2 years ago

I have created a feature/print-state-data branch in both tudat and tudatpy to add a print of that is in the propagated state.

In my test where I propagated the translational and mass state of two lunar CubeSats, this print is for instance as follows:

State vector contains:
Vector entries, Vector contents
[0:6], translational state of body Lunar CubeSat A
[6:12], translational state of body Lunar CubeSat B
[12], body mass state of body Lunar CubeSat A
[13], body mass state of body Lunar CubeSat B

@DominicDirkx I suggested you as the reviewer of the two pull requests that I just made to add this feature to develop. Here for tudat, and here for tudatpy.

gaffarelj commented 2 years ago

This argument also has to be added to the docstrings. I will do so in time, but that will require a new tudat conda package to be build, if we want the API docs to build correctly.

gaffarelj commented 2 years ago

This functionality is now fully integrated into the latest conda packages, and is documented in the API docs.

I leave this issue open since additions to tudat-space still have to be made (see bullet list of this issue).

gaffarelj commented 2 years ago

I've added information on what is in the propagated state for 4 of the listed points (with a07c9d03bcb9f6349b166b8fb6f7372e092be1f6 for tudat-space, and 3168a57 for tudat-multidoc). (Note that tudatpy.readthedocs.io and docs.tudat.space are currently not building properly, this should be fixed soon.)

@FilippoOggionni in the end I don't think that adding this information on the two pages related to the mass (remaining two list points) is necessary. Especially since the propagated state info is now printed just like for the dependent variables. If you agree, can you close this issue?