NASA-AMMOS / aerie

A software framework for modeling spacecraft.
https://nasa-ammos.github.io/aerie-docs/
MIT License
68 stars 19 forks source link

update incremental-sim branch with develop #1497

Open srschaffJPL opened 2 months ago

srschaffJPL commented 2 months ago

Checked for duplicates

Yes - I've already checked

Alternatives considered

No - I haven't considered

Related problems

the incremental-sim branch is based on a much earlier version of develop, and continues to get further behind. this makes it hard to correspond with the latest bug fixes of other issues already in develop but missing in the branch.

Describe the feature request

we should update the incremental-sim branch so that it is based on the latest develop. this is also a great opportunity to go through all the diffs for the incremental-sim branch and learn about all the changes

Brad provided these hints about managing the changes: ... (to be copied from slack)

srschaffJPL commented 1 month ago

collected notes from merging process go-backs marked with (***) for mandatory vs (*) for optional nice to do and (x, xxx) already done

mergenotes.txt (updated 2024-08-13)

srschaffJPL commented 1 month ago

in progress branch here: https://github.com/NASA-AMMOS/aerie/tree/incremental-sim-merge-2160

pushed latest 2024-08-13; still 13 compile issues to resolve

srschaffJPL commented 1 month ago

briefed @bradNASA on current status in case he has time to address any bullets in mergenotes or bite off any testing while I am out

bradNASA commented 1 month ago

@adrienmaillard @mattdailis @srschaffJPL , incremental sim caches a SimulationFacade for each plan seen by a scheduling worker. Should it use CheckpointSimulationFacades? Or, should we create a separate facade class for incremental sim. If so, should we just use the old SimulationFacade code for that or rewrite it to look more like CheckpointSimulationFacade?

adrienmaillard commented 1 month ago

The "old" SimulationFacade was adapted to how the scheduler was working before checkpoint sim was introduced. With checkpoint sim, SimulationFacade has been rewritten. I think you can add a specific implementation of that interface for incremental sim. I realize there are no comments in that interface file, we can discuss what each method means. The simulation facade object is managed by the scheduler and I doubt you would have to change anything on the scheduler's side besides spawning the incremental simulation facade instead of the checkpoint sim facade.