-
-
Notifications
You must be signed in to change notification settings - Fork 167
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ENH: Flight Class Overhaul #276
Comments
As discussed before, we need urgently remove the simulation from init method and create a Additionaly... I'd like to proppose something: Instead of simulate the flight trajectory, allow the user to set flight attributes from a raw data, which could be provided by avionics logs or even other simulators. For instance, user could input a .csv file containing:
The code could, then, calculate the missing attributes when possible. In this case, calculate the vx, vy and vz based on the provided data. This would be really helpful to create flight comparisons of different sources. |
I like the idea of having a processor of raw flight data, be it measured or
simulated.
However, I belive the Flight class should focus on simulation only. We
could create another class to process raw data.
As it stands, the Flight class already contains more then 4000 lines of
code, which is quite hard to manage. Adding more functionality to it could
make it even harder.
…On Wed, Nov 16, 2022, 12:55 AM Guilherme Fernandes Alves < ***@***.***> wrote:
As discussed before, we need urgently remove the simulation from *init*
method and create a Flight.simulate(self, eom="6-dof",...) method. Let
the user to set which set of equations of motion he/she wants to use.
Additionaly... I'd like to proppose something: Instead of simulate the
flight trajectory, allow the user to set flight attributes from a raw data,
which could be provided by avionics logs or even other simulators. For
instance, user could input a .csv file containing:
Time (s), x (m), y (m), z (m), e0 (m), e1 (m), e2 (m), e3 (m), latitude (º), longitude (º), dragCoefficient, AngleOfAttack (º)
The code could, then, calculate the missing attributes when possible. In
this case, calculate the vx, vy and vz based on the provided data.
This would be really helpful to create flight comparisons of different
sources.
—
Reply to this email directly, view it on GitHub
<#276 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAELYQ2QRXTPUFFQS6FTCZ3WIRLMBANCNFSM6AAAAAARXXEY5Y>
.
You are receiving this because you were assigned.Message ID:
***@***.***>
|
This kind of "appends" section is a real sign of bad architecture. This is terrible and was only done to speed up the simulation loop. The simulation loop is always run twice! the first time is faster, the second (using post_process = True) is way slower but is important to get some flight attributes. We should be fixing it soon! Here are some ideas (needs to be tested):
|
PR #581 contributes quite a lot to this issue. |
While the Environment class, the Motor class and the Rocket class have been refactored significantly since the first implementation, the Flight class has mainly stayed the same. Now, it is clear that it is outdated when compared with the rest of the code.
This issue proposes the implementation of the following new features to the flight class:
FlightTrajectorySolution
object, rather than keeping the solution in the Flight class.Proposed Usage Example
Requirements
Proposed Architecture
Proposed Milestone
Considering the roadmap to v1.0.0 and the work on sensors and controllers only for v2.0.0, it seems like this feature will be necessary only on v2.0.0.
The text was updated successfully, but these errors were encountered: