Releases: henrystoldt/MAPLEAF
Releases · henrystoldt/MAPLEAF
v0.8.16
v0.8.15
-
Support for stateful rocket components
- For example, could have a fuel tank component that calculates the rate of fuel usage in flight. Changes in states such as these are integrated using the same time integration method as the rest of the flight simulation
- Have a look at MAPLEAF/Rocket/sampleStatefulRocketComponent.py for a minimal implementation of a component that integrates internal state and MAPLEAF/Examples/Simulations/StatefulComponent.mapleaf for an example simulation that uses this toy stateful component
-
A revamped logging system
- Will now properly track log columns across stage separation
- Outputs .csv and text files, all stored in a directory created for each simulation
- Logging is now completely off when SimControl.loggingLevel = 0 (in the simulation definition file), providing about a ~10% speed up compared to having full logging on
- Old
getLogHeader
functions are deprecated and removed - Have a look at MAPLEAF/IO/CythonLog.pyx to see the new log class, and
MAPLEAF/Rocket/rocket.py:Rocket._logState()
for an example of it in use
-
Support for batch optimization
- In MAPLEAF, ‘conventional‘ optimization optimizes for a cost function computed based on the result a single scenario/simulation. In contrast, ‘batch’ optimization optimizes for the average value of a cost function across a set (batch) of simulations/scenarios.
- This is helpful for optimization of control systems based on a diverse set of possible disturbed initial conditions
- See MAPLEAF/Examples/Simulations/CanardsOptimization.mapleaf for an example of a batch optimization definition and MAPLEAF/Examples/BatchSims/CanardOptimizationTest.mapleaf for an example of the corresponding batch simulation definition
- Thank you @dtquinnde for your help with this!
-
Better support for simulations outside the source code directory (relative file paths etc.)