5 merge requests!263Apply 1 suggestion(s) to 1 file(s),!261Reintruduced automatic flight condition selection,!245Apply 1 suggestion(s) to 1 file(s),!233Initial open source version,!1ecological_assessment: adds first version of documentation
This page provides an overview of the structure and functionalities of the standard strategy.
The architecture is (based on the parts of a Life Cycle Assessment (LCA)) structured into various submodules (see @subpage submodules). The methods of the submodules are located in subfolders called "emissionCalculation" or "impactCalculation," respectively.
- The folder **emissionCalculation** contains all methods to determine emissions.
- In one folder, you'll find the method for mission calculation. By changing the setting in the configuration file, you can choose different methods for emission calculation. Both kerosene and hydrogen-burning turbines can be calculated. The results will be saved in the _ecological\_assessment\_results.xml_.
- The other folder provides functions for life cycle emission calculation. The implemented method is based on Schaefer (2017) \cite Sch17 and determines the emissions for development, production, operation, and end-of-life phases.
- Additionally, you'll find the **ecoDatabase**, a class that offers a variety of constants to calculate the emissions in all aircraft life phases.
- The folder **impactCalculation** contains different methods to calculate the consequences of the emissions.
- The air quality index is determined according to Schaefer (2017) \cite Sch17.
- The climate impact is determined according to Dallara (2011) \cite Dal11.
For a first overview, examining the folder structure (file list) could be beneficial. For more detailed insights, exploring the collaboration diagrams or the source code is recommended. In the following, information about the coordination of the module subparts and their behavior is provided.
The corresponding class `StandardStrategy`, derived from the class `Strategy`, coordinates all calculations based on the methods chosen by the user. It contains all classes of the submodules, as well as functions for generating the plots and the output files. It handles _shared_ptr_ for collecting the HTML report body information of all submodules and the `ecological_assessment_results.xml` data exchanged between the submodules. It includes the functions `initialize`, `run`, `update`, `report`, and `save` (inherited from the `Module` class in **moduleBasics**).
-**initialize()**: The methods for the submodules are read from the config file, and the report and `ecological_assessment_results` are initialized.
-**run()**: Depending on the chosen methods, the run function of the methods is executed. Important: The emissions of the flown mission will always be calculated, as they are needed for all other methods.
-**update()**: Depending on the chosen methods, the acXML will be updated.
-**report()**: Depending on the chosen methods, the plots will be generated, and the HTML as well as TeX reports will be written.
-**save()**: The `ecological_assessment_results.xml` will be saved and closed.