Skip to content
Snippets Groups Projects
Commit 3d877663 authored by Duc Bui Tien's avatar Duc Bui Tien
Browse files

Merge remote-tracking branch 'r1remote/master' into UnicadoUI

parents e63188f1 bb2928b1
Branches
Tags
2 merge requests!2UnicadoGuiBackend,!1New UnicadoGUI Branch
Showing
with 2835 additions and 0 deletions
/newProject/
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.venv" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
<component name="PackageRequirementsSettings">
<option name="removeUnused" value="true" />
</component>
</module>
\ No newline at end of file
<component name="InspectionProjectProfileManager">
<settings>
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Black">
<option name="sdkName" value="Python 3.12 (fastApiUnicado)" />
</component>
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.12 (fastApiUnicado)" project-jdk-type="Python SDK" />
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/fastApiUnicado.iml" filepath="$PROJECT_DIR$/.idea/fastApiUnicado.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>
\ No newline at end of file
This diff is collapsed.
import os
import configparser
#small script to write a config.ini with available modules
def create_config():
config = configparser.ConfigParser()
directory = os.fsencode('xml_configs')
available_modules = []
for file in os.listdir(directory):
filename = os.fsdecode(file)
if filename.endswith("default.xml"):
available_modules.append(filename.split('_')[0])
config['available_Modules']={'modules':','.join(available_modules)}
with open('xml_configs/config.ini', 'w') as configfile:
config.write(configfile)
if __name__ == '__main__':
create_config()
config = configparser.ConfigParser()
config.read('xml_configs/config.ini')
print(config['available_Modules']['modules'].split(','))
main.py 0 → 100644
import configparser
import json
from fastapi import FastAPI
from fastapi.responses import FileResponse
from fastapi.middleware.cors import CORSMiddleware
from pydantic import BaseModel
import xmltodict
from fastapi.encoders import jsonable_encoder
#FastAPI Backend for UNICADO Gui
app = FastAPI()
origins = [
"http://localhost",
"http://localhost:5173",
]
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
#Models for requests
class Modules(BaseModel):
groups: list = []
class Conf(BaseModel):
module_configuration_file: dict = {}
#Endpoints
@app.get("/start/{module}")
async def start_module(module: str):
#dummy-function
#waiting for working unicado
return {"message": f"running {module} without problems"}
#endpoint which returns a list of available modules
@app.get("/modules/selection")
async def get_avail_modules():
dict = {}
config = configparser.ConfigParser()
config.read('xml_configs/config.ini')
dict['availableModules']=config['available_Modules']['modules'].split(',')
return dict
#TO-DO: following endpoints are for the case of a single project, need to add solution for more projects
#endpoint which returns the last saved project
@app.get("/modules")
async def get_modules():
with open("tmp/modules", "r") as fp:
modules = json.load(fp)
return modules
#endpoint to save the current project on the server
@app.put("/modules/update")
async def update_modules(item:Modules):
print(jsonable_encoder(item))
with open("tmp/modules", "w") as fp:
json.dump(jsonable_encoder(item), fp)
return item
#endpoint to get the settings of selected module
@app.get("/modules/{module}/config")
async def get_module_config(module: str):
with open("xml_configs/"+module+"_conf.xml", encoding='utf-8') as fd:
config = json.dumps(xmltodict.parse(fd.read()))
return config
#endpoint to save the setting of selected module
@app.put("/modules/config/update")
async def update_module_config(config: Conf):
dict = {"module_configuration_file": config.module_configuration_file}
xml = xmltodict.unparse(dict, pretty=True)
with open("xml_configs/" + config.module_configuration_file["@name"], "w", encoding='utf-8') as fd:
fd.write(xml)
return
#endpoint reset settings of selected module to default
@app.get("/modules/{module}/config/reset")
async def reset_module_config(module:str):
with open("xml_configs/"+module+"_conf_default.xml", encoding='utf-8') as fd:
dict = xmltodict.parse(fd.read())
xml = xmltodict.unparse(dict, pretty=True)
with open("xml_configs/"+module+"_conf.xml", "w", encoding='utf-8') as fd:
fd.write(xml)
return
#dummy endpoints
@app.get("/graph/")
async def get_plotData():
#dummy-Function
#TO-DO: working Implemantion
plotData = {}
return plotData
@app.get("/log/{file}")
async def get_csv(file: str):
return FileResponse(f"output_files/logFiles/{file}")
@app.get("/report/{file}")
async def get_report(file: str):
return FileResponse(f"output_files/reportHTML/{file}")
xmltodict~=0.13.0
fastapi~=0.109.2
pydantic~=1.10.14
\ No newline at end of file
# Test your FastAPI endpoints
GET http://127.0.0.1:8000/
Accept: application/json
###
GET http://127.0.0.1:8000/start/convergenceLoop
Accept: application/json
###
GET http://127.0.0.1:8000/modules
Accept: application/json
###
GET http://127.0.0.1:8000/modules/initialSizing/config
Accept: application/json
###
GET http://127.0.0.1:8000//graph/convergenceLoop_plot.csv
Accept: application/json
###
GET http://127.0.0.1:8000//log/convergenceLoop.log
Accept: application/json
###
GET http://127.0.0.1:8000//report/convergenceLoop_report.html
Accept: application/json
###
GET http://127.0.0.1:8000//graph/
Accept: application/json
###
\ No newline at end of file
{"groups": [{"name": "models from modularization branches", "loop": "true", "loopsize": 1, "modules": ["initialSizing", "wingDesign", "createMissionXML", "systemsDesign", "calculatePolar", "calculatePerformance", "missionAnalysis", "weightAndBalanceAnalysis", "propulsionDesign"]}]}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<ConfigFile Name="calculatePerformance_conf.xml">
<ControlSettings Desc="general control settings">
<IOFileName>CSR-02.xml</IOFileName>
<IODir>../projects/CSR/CSR-02/</IODir>
<OwnToolLevel>2</OwnToolLevel>
<ConsoleOutputOn Desc="0: Off, 1: only out/err/warn, 2: 1 + info, 3: 2 + debug">1</ConsoleOutputOn>
<LogfileOutputOn Desc="0: Off, 1: only out/err/warn, 2: 1 + info, 3: 2 + debug">1</LogfileOutputOn>
<PlotOutputOn CopyPlottingFiles="1" DeletePlottingFilesFromToolFolder="1">1</PlotOutputOn>
<ReportOutputOn>1</ReportOutputOn>
<TexReportOn>0</TexReportOn>
<WriteInfoFiles>1</WriteInfoFiles>
<GnuplotScript>calculatePerformance_plot.plt</GnuplotScript>
<LogFile>calculatePerformance.log</LogFile>
<InkscapePath>DEFAULT</InkscapePath>
<GnuplotPath>DEFAULT</GnuplotPath>
<ProgramSpecific Desc="program-specific control settings">
<SaveCSVFilesToProjectFolder Desc="CSV files will be stored in the folder csvFilesForPlots" Default="1">1</SaveCSVFilesToProjectFolder>
<DeleteFiles>0</DeleteFiles>
</ProgramSpecific>
</ControlSettings>
<control_settings description="General control settings for this tool">
<aircraft_exchange_file_name description="Specify the name of the exchange file">
<value>CSR-02.xml</value>
</aircraft_exchange_file_name>
<aircraft_exchange_file_directory description="Specify the direction in which the aircraft exchange file can be found">
<value>../projects/CSR/CSR-02/</value>
</aircraft_exchange_file_directory>
<own_tool_level description="Specify the tool level of this tool">
<value>3</value>
</own_tool_level>
<console_output description="Selector to specify the console output ('mode_0': Off, 'mode_1': only out/err/warn, 'mode_2': 1 + info, 'mode_3': 2 + debug)">
<value>mode_1</value>
</console_output>
<log_file_output description="Selector to specify the log file output ('mode_0': Off, 'mode_1': only out/err/warn, 'mode_2': 1 + info, 'mode_3': 2 + debug)">
<value>mode_1</value>
</log_file_output>
<plot_output description="Specify the way plotting shall be handled">
<enable description="Switch to enable plotting ('true': On, 'false': Off)">
<value>true</value>
</enable>
<copy_plotting_files description="Switch if plotting files shall be copied ('true': On, 'false': Off)">
<value>true</value>
</copy_plotting_files>
<delete_plotting_files_from_tool_folder description="Switch if plotting files shall be deleted from folder ('true': On, 'false': Off)">
<value>true</value>
</delete_plotting_files_from_tool_folder>
</plot_output>
<report_output description="Switch to generate an HTML report ('true': On, 'false': Off)">
<value>true</value>
</report_output>
<tex_report description="Switch to generate a Tex report ('true': On, 'false': Off)">
<value>true</value>
</tex_report>
<write_info_files description="Switch to generate info files ('true': On, 'false': Off)">
<value>false</value>
</write_info_files>
<gnuplot_script description="Specify the name of the plot file">
<value>TOOLNAME_plot.plt</value>
</gnuplot_script>
<log_file description="Specify the name of the log file">
<value>TOOLNAME.log</value>
</log_file>
<inkscape_path description="Path to the inkscape application ('DEFAULT': Use inkscape from the UNICADO repo structure)">
<value>DEFAULT</value>
</inkscape_path>
<gnuplot_path description="Path to the gnuplot application ('DEFAULT': Use gnuplot from the UNICADO repo structure)">
<value>DEFAULT</value>
</gnuplot_path>
</control_settings>
<ProgramSettings Desc="program settings">
<ModuleStrategy Desc="Select the strategy level option tool execution" Default="calculatePerformance" >calculatePerformance</ModuleStrategy>
<MuduleFidelityLevel>low</MuduleFidelityLevel>
<PerformanceChecks Desc="Settings that affect different functionalities!">
<PayloadRangeDiagram Desc="Payload Range Diagram Calculation">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</PayloadRangeDiagram>
<EnginePerformance Desc="Engine power estimation">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</EnginePerformance>
<FlightEnvelopePerformance Desc="Estimation of flight range limits" OverwriteInitialValues="0">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</FlightEnvelopePerformance>
<ClimbPerformance Desc="Climb Performance (so far only for plots)" Default="1">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</ClimbPerformance>
<TOPerformance Desc="Estimation of the starting distance" CalculateBLFLPerformance="1">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</TOPerformance>
<LandingPerformance Desc="Landing distance estimation" >
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</LandingPerformance>
<VnDiagram Desc="Switch for calculation of V-n diagram 1: On, 0: Off">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</VnDiagram>
</PerformanceChecks>
<ConstantsForPerformanceChecks>
<enginePerformance>
<Ratings>
<nrRatings>4</nrRatings>
<Rating ID="1">Cruise</Rating>
<Rating ID="2">Climb</Rating>
<Rating ID="3">MaxCont</Rating>
<Rating ID="4">TO</Rating>
</Ratings>
</enginePerformance>
<fieldPerformance>
<runwaySlope Desc="Slope / climb of the runway" Unit="deg" Default="0">0</runwaySlope>
<headWind Desc="headwind speed" Unit="m/s" Default="0">0.0</headWind>
</fieldPerformance>
<VnDiagram>
<maxNClean Desc="Maximum load factor in clean configuration (fixed for CS-25 2.5)" Unit="-" Default="2.5">2.5</maxNClean>
<minNClean Desc="Minimum load factor in clean configuration (fixed -1.0 for CS-25)" Unit="-" Default="-1.0">-1.0</minNClean>
<maxNFlaps Desc="Maximum load factor with flaps (fixed for CS-25 2.0)" Unit="-" Default="2.0">2.0</maxNFlaps>
<minNFlaps Desc="Minimum load factor with flaps (fixed at CS-25 0.0)" Unit="-" Default="0.0">0.0</minNFlaps>
</VnDiagram>
</ConstantsForPerformanceChecks>
<Modes Desc="other settings that influence different modes!">
<FuelPlanning Desc="Fuel estimation switch: 1:On, 0:Off" Unit="-" Default="0">0</FuelPlanning>
<UseStudyMissionForAnalysis Desc="1: use missionStudy.xml, 0: use missionDesign.xml" Default="0">0</UseStudyMissionForAnalysis>
<MTOM_Design Desc="Redetermination of the MTOM: 1:Yes (e.g. DesignLoop), 0:No (e.g. only analysis)" Default="0">0</MTOM_Design>
</Modes>
<Mission Desc="Specification of the mission">
<optimizeMissionProfile Desc="Switch to optimize the mission profile" Unit="-" Default="0">0</optimizeMissionProfile>
</Mission>
<fuelPlanning>
<Standard>
<ContingencyFuel Desc="Relative percentage of Contigency Fuel in total Trip Fuel" Unit="-" Default="0.05">0.03</ContingencyFuel>
</Standard>
</fuelPlanning>
</ProgramSettings>
</ConfigFile>
<?xml version="1.0" encoding="utf-8" ?>
<ConfigFile Name="calculatePerformance_conf.xml">
<ControlSettings Desc="general control settings">
<IOFileName>CSR-02.xml</IOFileName>
<IODir>../projects/CSR/CSR-02/</IODir>
<OwnToolLevel>2</OwnToolLevel>
<ConsoleOutputOn Desc="0: Off, 1: only out/err/warn, 2: 1 + info, 3: 2 + debug">1</ConsoleOutputOn>
<LogfileOutputOn Desc="0: Off, 1: only out/err/warn, 2: 1 + info, 3: 2 + debug">1</LogfileOutputOn>
<PlotOutputOn CopyPlottingFiles="1" DeletePlottingFilesFromToolFolder="1">1</PlotOutputOn>
<ReportOutputOn>1</ReportOutputOn>
<TexReportOn>0</TexReportOn>
<WriteInfoFiles>1</WriteInfoFiles>
<GnuplotScript>calculatePerformance_plot.plt</GnuplotScript>
<LogFile>calculatePerformance.log</LogFile>
<InkscapePath>DEFAULT</InkscapePath>
<GnuplotPath>DEFAULT</GnuplotPath>
<ProgramSpecific Desc="program-specific control settings">
<SaveCSVFilesToProjectFolder Desc="CSV files will be stored in the folder csvFilesForPlots" Default="1">1</SaveCSVFilesToProjectFolder>
<DeleteFiles>0</DeleteFiles>
</ProgramSpecific>
</ControlSettings>
<control_settings description="General control settings for this tool">
<aircraft_exchange_file_name description="Specify the name of the exchange file">
<value>CSR-02.xml</value>
</aircraft_exchange_file_name>
<aircraft_exchange_file_directory description="Specify the direction in which the aircraft exchange file can be found">
<value>../projects/CSR/CSR-02/</value>
</aircraft_exchange_file_directory>
<own_tool_level description="Specify the tool level of this tool">
<value>3</value>
</own_tool_level>
<console_output description="Selector to specify the console output ('mode_0': Off, 'mode_1': only out/err/warn, 'mode_2': 1 + info, 'mode_3': 2 + debug)">
<value>mode_1</value>
</console_output>
<log_file_output description="Selector to specify the log file output ('mode_0': Off, 'mode_1': only out/err/warn, 'mode_2': 1 + info, 'mode_3': 2 + debug)">
<value>mode_1</value>
</log_file_output>
<plot_output description="Specify the way plotting shall be handled">
<enable description="Switch to enable plotting ('true': On, 'false': Off)">
<value>true</value>
</enable>
<copy_plotting_files description="Switch if plotting files shall be copied ('true': On, 'false': Off)">
<value>true</value>
</copy_plotting_files>
<delete_plotting_files_from_tool_folder description="Switch if plotting files shall be deleted from folder ('true': On, 'false': Off)">
<value>true</value>
</delete_plotting_files_from_tool_folder>
</plot_output>
<report_output description="Switch to generate an HTML report ('true': On, 'false': Off)">
<value>true</value>
</report_output>
<tex_report description="Switch to generate a Tex report ('true': On, 'false': Off)">
<value>true</value>
</tex_report>
<write_info_files description="Switch to generate info files ('true': On, 'false': Off)">
<value>false</value>
</write_info_files>
<gnuplot_script description="Specify the name of the plot file">
<value>TOOLNAME_plot.plt</value>
</gnuplot_script>
<log_file description="Specify the name of the log file">
<value>TOOLNAME.log</value>
</log_file>
<inkscape_path description="Path to the inkscape application ('DEFAULT': Use inkscape from the UNICADO repo structure)">
<value>DEFAULT</value>
</inkscape_path>
<gnuplot_path description="Path to the gnuplot application ('DEFAULT': Use gnuplot from the UNICADO repo structure)">
<value>DEFAULT</value>
</gnuplot_path>
</control_settings>
<ProgramSettings Desc="program settings">
<ModuleStrategy Desc="Select the strategy level option tool execution" Default="calculatePerformance" >calculatePerformance</ModuleStrategy>
<MuduleFidelityLevel>low</MuduleFidelityLevel>
<PerformanceChecks Desc="Settings that affect different functionalities!">
<PayloadRangeDiagram Desc="Payload Range Diagram Calculation">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</PayloadRangeDiagram>
<EnginePerformance Desc="Engine power estimation">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</EnginePerformance>
<FlightEnvelopePerformance Desc="Estimation of flight range limits" OverwriteInitialValues="0">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</FlightEnvelopePerformance>
<ClimbPerformance Desc="Climb Performance (so far only for plots)" Default="1">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</ClimbPerformance>
<TOPerformance Desc="Estimation of the starting distance" CalculateBLFLPerformance="1">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</TOPerformance>
<LandingPerformance Desc="Landing distance estimation" >
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</LandingPerformance>
<VnDiagram Desc="Switch for calculation of V-n diagram 1: On, 0: Off">
<switch Desc="On-Off-Switch for this method: 1:On, 0:Off" Unit="-" Default="1">1</switch>
<fidelityLevel Desc="Fidelity level of calculation">low</fidelityLevel>
</VnDiagram>
</PerformanceChecks>
<ConstantsForPerformanceChecks>
<enginePerformance>
<Ratings>
<nrRatings>4</nrRatings>
<Rating ID="1">Cruise</Rating>
<Rating ID="2">Climb</Rating>
<Rating ID="3">MaxCont</Rating>
<Rating ID="4">TO</Rating>
</Ratings>
</enginePerformance>
<fieldPerformance>
<runwaySlope Desc="Slope / climb of the runway" Unit="deg" Default="0">0</runwaySlope>
<headWind Desc="headwind speed" Unit="m/s" Default="0">0.0</headWind>
</fieldPerformance>
<VnDiagram>
<maxNClean Desc="Maximum load factor in clean configuration (fixed for CS-25 2.5)" Unit="-" Default="2.5">2.5</maxNClean>
<minNClean Desc="Minimum load factor in clean configuration (fixed -1.0 for CS-25)" Unit="-" Default="-1.0">-1.0</minNClean>
<maxNFlaps Desc="Maximum load factor with flaps (fixed for CS-25 2.0)" Unit="-" Default="2.0">2.0</maxNFlaps>
<minNFlaps Desc="Minimum load factor with flaps (fixed at CS-25 0.0)" Unit="-" Default="0.0">0.0</minNFlaps>
</VnDiagram>
</ConstantsForPerformanceChecks>
<Modes Desc="other settings that influence different modes!">
<FuelPlanning Desc="Fuel estimation switch: 1:On, 0:Off" Unit="-" Default="0">0</FuelPlanning>
<UseStudyMissionForAnalysis Desc="1: use missionStudy.xml, 0: use missionDesign.xml" Default="0">0</UseStudyMissionForAnalysis>
<MTOM_Design Desc="Redetermination of the MTOM: 1:Yes (e.g. DesignLoop), 0:No (e.g. only analysis)" Default="0">0</MTOM_Design>
</Modes>
<Mission Desc="Specification of the mission">
<optimizeMissionProfile Desc="Switch to optimize the mission profile" Unit="-" Default="0">0</optimizeMissionProfile>
</Mission>
<fuelPlanning>
<Standard>
<ContingencyFuel Desc="Relative percentage of Contigency Fuel in total Trip Fuel" Unit="-" Default="0.05">0.03</ContingencyFuel>
</Standard>
</fuelPlanning>
</ProgramSettings>
</ConfigFile>
This diff is collapsed.
This diff is collapsed.
[available_Modules]
modules = calculatePerformance,calculatePolar,createMissionXML,initialSizing,missionAnalysis,propulsionDesign,systemsDesign,weightAndBalanceAnalysis,wingDesign
<ConfigFile Name="convergenceLoop_conf.xml">
<ControlSettings Desc="general control settings">
<IOFileName>CSR-02.xml</IOFileName>
<IODir>../projects/CSR/CSR-02/</IODir>
<OwnToolLevel>1</OwnToolLevel>
<ConsoleOutputOn Desc="0: Off, 1: only out/err/warn, 2: 1 + info, 3: 2 + debug">1</ConsoleOutputOn>
<LogfileOutputOn Desc="0: Off, 1: only out/err/warn, 2: 1 + info, 3: 2 + debug">1</LogfileOutputOn>
<PlotOutputOn CopyPlottingFiles="1">1</PlotOutputOn>
<ReportOutputOn>1</ReportOutputOn>
<TexReportOn>1</TexReportOn>
<WriteInfoFiles>0</WriteInfoFiles>
<GnuplotScript>convergenceLoop_plot.plt</GnuplotScript>
<LogFile>convergenceLoop.log</LogFile>
<InkscapePath>DEFAULT</InkscapePath>
<GnuplotPath>DEFAULT</GnuplotPath>
<ProgramSpecific Desc="program-specific control settings">
<UseControlSettingsForSubPrograms Default="1" Desc="1: Using General Control Settings for All Subprograms">1</UseControlSettingsForSubPrograms>
<ResetConfigsAtExit Default="1" Desc="1: Resetting Config files at the End of the Program">1</ResetConfigsAtExit>
<SaveConfigsToProjectFolder Default="1" Desc="1: Configs of the subprograms are stored in the folder IODir/configFiles/">1</SaveConfigsToProjectFolder>
<SaveLogFilesToProjectFolder Default="1" Desc="1: Logfiles of the subprograms are stored in the folder IODir/configFiles/">1</SaveLogFilesToProjectFolder>
<UseConfigsFromProjectFolder Default="0" Desc="1: Configs are taken from project folders (see above)">0</UseConfigsFromProjectFolder>
<CheckSettingsForDesignLogic ChangeIfNotConsistent="1" Default="1" Desc="Settings of subprograms are checked">1</CheckSettingsForDesignLogic>
<DeletePlotsBeforeRun Default="0" Desc="1: Old plots and reports are deleted from folders (especially useful for studies)">0</DeletePlotsBeforeRun>
<ClearOldLogFilesAtStart Default="1" Desc="Clear all Subtool logfiles at start">1</ClearOldLogFilesAtStart>
<CreatePlotForCalculationHistory Default="0" Desc="0: no plot for calculation history created; 1: plot for calculation history created">0</CreatePlotForCalculationHistory>
<SwitchOffPlots Default="1" Desc="1: Switch Off Plots during Design Iteration">1</SwitchOffPlots>
<SaveAcftXmlAfterIteration Default="1" Desc="1: Acft-XML is buffered after each iteration">1</SaveAcftXmlAfterIteration>
<CheckoutProgramsFromRepository CheckoutDepth="1" Default="1" DeleteSrcDirs="0" Desc="1: If program folder does not exist, automatic checkout from Git server." ExitAfterCheckout="1" PrivateOpenSSHkey="DEFAULT" Timeout="30">1</CheckoutProgramsFromRepository>
<DesignCase>
<Mode Default="0" Desc="0: Standard (no checks in subprograms), 1: Clean Sheet Design, 2: Design with existing geometry">1</Mode>
<Calibration>
<CalibrateToTargetValues Default="0" Desc="1: use target values for MTOM and OME (see below)">0</CalibrateToTargetValues>
<TargetMTOM Desc="Given MTOM">77000</TargetMTOM>
<TargetOME Desc="Given OME (can be skipped, if already calibrated)" Skip="0">42100</TargetOME>
<FreeVariableOMECal Default="1" Desc="1: massEstimation (fuselage)" ResetAtStart="1">1</FreeVariableOMECal>
<FreeVariableMTOMCal Default="1" Desc="1: engineSizing (FuelFlow), 2:calculatePolar (DragReduction)" ResetBothVariablesAtStart="0" ResetUsedVariableAtStart="0">1</FreeVariableMTOMCal>
<NumberOfIterations Default="4" Desc="Number of iterations after which each MTOM calibration is performed">4</NumberOfIterations>
<MaxIterationsBeforeExitOMECal Default="20" Desc="Number of iterations before the OME calibration is canceled by exit(1)">20</MaxIterationsBeforeExitOMECal>
<TruncErrorFactor Default="125" Desc="Termination criterion: As factor regarding convergenceCriteria (see below)">125</TruncErrorFactor>
<Damp_MTOM_Calibration_Lever Default="0" Desc="Switch for damping MTOM calibration lever arm" x_rel_max="2">0</Damp_MTOM_Calibration_Lever>
<Damp_OME_Calibration_Lever Default="0" Desc="Switch for damping OME calibration lever arm" x_rel_max="2">0</Damp_OME_Calibration_Lever>
</Calibration>
<PayloadRangeAnalysis Desc="for determination of points on PL-Range diagram (not suitable for input of values)">
<ExitIfMTOMLimitReached AllowedRelOvershoot="0." Default="1" Desc="1: Program abort, if TOM ge MTOM (in Study Mode)">1</ExitIfMTOMLimitReached>
<ExitIfFuelLimitReached AllowedRelOvershoot="0." Default="1" Desc="1: Program abort, if fuel estimated ge MFM">1</ExitIfFuelLimitReached>
<DeltaTOMtoMTOM Desc="MTOM - TOM (study mission)" Unit="kg">15797.9102</DeltaTOMtoMTOM>
<DeltaFueltoMFM Desc="MFM - Mission Fuel (study mission)" Unit="kg">25016.84771</DeltaFueltoMFM>
<LeastSquareDelta Desc="sqrt(pow(deltaFuel,2)+pow(deltaTOM,2))" Unit="kg">29587.44051</LeastSquareDelta>
</PayloadRangeAnalysis>
<RangeTypeSpecificFactors Default="0" Des="Adapt aircraft specific factors in all used modules. Mode 0: No adaptation, Mode 1: based on design range, 2: short-range, 3: mid-range, 4: long-range">0</RangeTypeSpecificFactors>
</DesignCase>
<AutomaticTrim Default="1" Desc="Trim is automated">1</AutomaticTrim>
</ProgramSpecific>
<ATLASupportFiles>
<FileName type="OperatingCompany">operating_company.xml</FileName>
<FileName type="Scenario">scenario.xml</FileName>
</ATLASupportFiles>
</ControlSettings>
<ProgramSettings Desc="program settings">
<convergenceCriteria Default="0.0025" Desc="permitted relative change to achieve convergence" Unit="-">0.0001</convergenceCriteria>
<DampMTOMIteration Default="0" Desc="1: Mean value of the last 2 MTOM values is used to suppress vibrations if necessary.">1</DampMTOMIteration>
<DampOMEIteration Default="0" Desc="1: Mean value of the last 2 OME values is used to suppress vibrations if necessary.">0</DampOMEIteration>
<maxIterationsBeforeExitSizingLoop Default="30" Desc="Number of iterations before the loop is aborted by exit(1)">30</maxIterationsBeforeExitSizingLoop>
<SetupSteps Desc="Programs that are executed once in study mode">
<NumberPrograms Default="2" Desc="Number of programs before iteration">2</NumberPrograms>
<Program Desc="Path and program name" ID="1" maxRuntime_in_minutes="10">
<Name Default="initialSizing.exe" Desc="Name">initialSizing</Name>
<Directory Default="../01_initialSizing/" Desc="Path">../01_initialSizing/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="2" maxRuntime_in_minutes="10">
<Name Default="fuselageDesign.exe" Desc="Name">fuselageDesign</Name>
<Directory Default="../02_fuselageDesign/" Desc="Path">../02_fuselageDesign/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
</SetupSteps>
<SizingLoop Desc="Programs in the Convergence Loop" Iterate="1">
<NumberPrograms Default="10" Desc="Number of programs in the loop">10</NumberPrograms>
<Program Desc="Path and program name" ID="1" maxRuntime_in_minutes="10">
<Name Default="createMissionXML.exe" Desc="Name">createMissionXML</Name>
<Directory Default="../10_createMissionXML/" Desc="Pfad">../10_createMissionXML/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="7" maxRuntime_in_minutes="10">
<Name Default="wingDesign.exe" Desc="Name">wingDesign</Name>
<Directory Default="../11_wingDesign/" Desc="Pfad">../11_wingDesign/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="4" maxRuntime_in_minutes="10">
<Name Default="empenageSizing.exe" Desc="Name">empennageSizing</Name>
<Directory Default="../12_empennageSizing/" Desc="Path">../12_empennageSizing/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="3" maxRuntime_in_minutes="10">
<Name Default="engineSizing.exe" Desc="Name">engineSizing</Name>
<Directory Default="../13_engineSizing/" Desc="Path">../13_engineSizing/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="5" maxRuntime_in_minutes="10">
<Name Default="propulsionIntegration.exe" Desc="Name">propulsionIntegration</Name>
<Directory Default="../14_propulsionIntegration/" Desc="Path">../14_propulsionIntegration/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="2" maxRuntime_in_minutes="10">
<Name Default="landingGearDesign.exe" Desc="Name">landingGearDesign</Name>
<Directory Default="../15_landingGearDesign/" Desc="Path">../15_landingGearDesign/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="6" maxRuntime_in_minutes="10">
<Name Default="calculatePolar.exe" Desc="Name">calculatePolar</Name>
<Directory Default="../21_calculatePolar/" Desc="Path">../21_calculatePolar/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="8" maxRuntime_in_minutes="10">
<Name Default="massEstimation.exe" Desc="Name">massEstimation</Name>
<Directory Default="../22_massEstimation/" Desc="Path">../22_massEstimation/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="9" maxRuntime_in_minutes="10">
<Name Default="systemsDesign.exe" Desc="Name">systemsDesign</Name>
<Directory Default="../23_systemsDesign/" Desc="Path">../23_systemsDesign/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="10" maxRuntime_in_minutes="10">
<Name Default="missionAnalysis.exe" Desc="Name">missionAnalysis</Name>
<Directory Default="../31_missionAnalysis/" Desc="Path">../31_missionAnalysis/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
</SizingLoop>
<StudyMission Desc="Analyse for StudyMission" Iterate="1" TruncError="0.001">
<NumberPrograms Default="3" Desc="Number of programs for StudyMission">3</NumberPrograms>
<Program Desc="Path and program name" ID="1" maxRuntime_in_minutes="10">
<Name Default="createMissionXML.exe" Desc="Name">createMissionXML</Name>
<Directory Default="../10_createMissionXML/" Desc="Path">../10_createMissionXML/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="2" maxRuntime_in_minutes="10">
<Name Default="systemsDesign.exe" Desc="Name">systemsDesign</Name>
<Directory Default="../23_systemsDesign/" Desc="Path">../23_systemsDesign/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="3" maxRuntime_in_minutes="10">
<Name Default="missionAnalysis.exe" Desc="Name">missionAnalysis</Name>
<Directory Default="../31_missionAnalysis/" Desc="Path">../31_missionAnalysis/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
</StudyMission>
<PostprocessingSteps Desc="Programs that are executed once in study mode">
<NumberPrograms Default="2" Desc="Number of programs in postprocessing">8</NumberPrograms>
<Program Desc="Path and program name" ID="1" maxRuntime_in_minutes="10" type="std">
<Name Default="calculatePerformance.exe" Desc="Name">calculatePerformance</Name>
<Directory Default="../51_calculatePerformance/" Desc="Path">../51_calculatePerformance/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rAIRCRAFTDESIGN:master</Source>
</Program>
<Program Desc="Path and program name" ID="2" maxRuntime_in_minutes="10" type="std">
<Name Default="calculateCosts.exe" Desc="Name">calculateCosts</Name>
<Directory Default="../52_calculateCosts/" Desc="Path">../52_calculateCosts/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rADDITIONALTOOLS:master</Source>
</Program>
<Program Desc="Path and program name" ID="3" maxRuntime_in_minutes="10" type="std">
<Name Default="estimateDOC.exe" Desc="Name">estimateDOC</Name>
<Directory Default="../53_estimateDOC/" Desc="Path">../53_estimateDOC/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rADDITIONALTOOLS:master</Source>
</Program>
<Program Desc="Path and program name" ID="4" maxRuntime_in_minutes="10" type="std">
<Name Default="calculateCosts.exe" Desc="Name">calculateCosts</Name>
<Directory Default="../52_calculateCosts/" Desc="Path">../52_calculateCosts/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rADDITIONALTOOLS:master</Source>
</Program>
<Program Desc="Path and program name" ID="5" maxRuntime_in_minutes="10" type="std">
<Name Default="calculateEmissions.exe" Desc="Name">calculateEmissions</Name>
<Directory Default="../54_calculateEmissions/" Desc="Path">../54_calculateEmissions/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rADDITIONALTOOLS:master</Source>
</Program>
<Program Desc="Path and program name" ID="6" maxRuntime_in_minutes="10" type="std">
<Name Default="reportGenerator.exe" Desc="Name">reportGenerator</Name>
<Directory Default="../91_reportGenerator/" Desc="Path">../91_reportGenerator/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rADDITIONALSOFTWARE:master</Source>
</Program>
<Program Desc="Path and program name" ID="7" maxRuntime_in_minutes="10" type="std">
<Name Default="cpacsInterface.exe" Desc="Name">cpacsInterface</Name>
<Directory Default="../92_cpacsInterface/" Desc="Path">../92_cpacsInterface/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rADDITIONALSOFTWARE:master</Source>
</Program>
<Program Desc="Path and program name" ID="8" maxRuntime_in_minutes="10" type="std">
<Name Default="designEvaluator.exe" Desc="Name">designEvaluator</Name>
<Directory Default="../93_designEvaluator/" Desc="Path">../93_designEvaluator/</Directory>
<Source Desc="Source of tool. Repository: local - Set path to local tool directoryDefault; server - Set path to git repository:branch" Repository="server">rADDITIONALSOFTWARE:master</Source>
</Program>
</PostprocessingSteps>
</ProgramSettings>
</ConfigFile>
<?xml version="1.0" encoding="utf-8"?>
<module_configuration_file name="createMissionXML_conf.xml">
<control_settings description="General control settings for this tool">
<aircraft_exchange_file_name description="Specify the name of the exchange file">
<value>CSR-02.xml</value>
</aircraft_exchange_file_name>
<aircraft_exchange_file_directory description="Specify the direction in which the aircraft exchange file can be found">
<value>../projects/CSR/CSR-02/</value>
</aircraft_exchange_file_directory>
<own_tool_level description="Specify the tool level of this tool">
<value>3</value>
</own_tool_level>
<console_output description="Selector to specify the console output ('mode_0': Off, 'mode_1': only out/err/warn, 'mode_2': 1 + info, 'mode_3': 2 + debug)">
<value>mode_1</value>
</console_output>
<log_file_output description="Selector to specify the log file output ('mode_0': Off, 'mode_1': only out/err/warn, 'mode_2': 1 + info, 'mode_3': 2 + debug)">
<value>mode_1</value>
</log_file_output>
<plot_output description="Specify the way plotting shall be handled">
<enable description="Switch to enable plotting ('true': On, 'false': Off)">
<value>false</value>
</enable>
<copy_plotting_files description="Switch if plotting files shall be copied ('true': On, 'false': Off)">
<value>true</value>
</copy_plotting_files>
<delete_plotting_files_from_tool_folder description="Switch if plotting files shall be deleted from folder ('true': On, 'false': Off)">
<value>true</value>
</delete_plotting_files_from_tool_folder>
</plot_output>
<report_output description="Switch to generate an HTML report ('true': On, 'false': Off)">
<value>true</value>
</report_output>
<tex_report description="Switch to generate a Tex report ('true': On, 'false': Off)">
<value>true</value>
</tex_report>
<write_info_files description="Switch to generate info files ('true': On, 'false': Off)">
<value>false</value>
</write_info_files>
<gnuplot_script description="Specify the name of the plot file">
<value>create_mission_xml_plot.plt</value>
</gnuplot_script>
<log_file description="Specify the name of the log file">
<value>create_mission_xml.log</value>
</log_file>
<inkscape_path description="Path to the inkscape application ('DEFAULT': Use inkscape from the UNICADO repo structure)">
<value>DEFAULT</value>
</inkscape_path>
<gnuplot_path description="Path to the gnuplot application ('DEFAULT': Use gnuplot from the UNICADO repo structure)">
<value>DEFAULT</value>
</gnuplot_path>
</control_settings>
<program_settings description="Program Settings">
<mission_choice description="Pick a mission (by now only 1 implemented): standard">
<value>standard</value>
</mission_choice>
<maximum_operating_mach_number description="Specify the maximum operating Mach number by its delta to the initial cruise Mach number">
<enable description="Switch to enable the specification via initial cruise Mach number + delta ('true': On, 'false': Off-&gt; read from aircraft exchange file)">
<value>false</value>
</enable>
<delta description="Difference between maximum operating Mach number (MMO) and initial cruise (IC) Mach number: delta = MMO - IC">
<value>0.04</value>
<unit>1</unit>
<lower_boundary>0.0</lower_boundary>
<upper_boundary>1.0</upper_boundary>
</delta>
</maximum_operating_mach_number>
<adapt_climb_speed_schedule description="Second calibrated airspeed (CAS) within climb adapted to crossover altitude">
<enable description="Switch to enable crossover altitude adaption ('true': On, 'false': Off)">
<value>false</value>
</enable>
<crossover_altitude description="Crossover altitude to which the second calibrated airspeed (CAS) shall be adapted">
<value>30000</value>
<unit>ft</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>50000</upper_boundary>
</crossover_altitude>
</adapt_climb_speed_schedule>
<climb_thrust_setting description="Selector to set the thrust rating within climb/acceleration segments to 'mode_0': Takeoff, 'mode_1': Climb, 'mode_2': Maximum continuous, 'mode_3': Cruise">
<value>mode_1</value>
</climb_thrust_setting>
<maximum_rate_of_climb description="Limit the rate of climb (ROC) to a preset value during Climb segments; values less then 0: Use full thrust as limit">
<value>-1</value>
<unit>ft/min</unit>
<lower_boundary>-1</lower_boundary>
<upper_boundary>5000</upper_boundary>
</maximum_rate_of_climb>
<write_requirement_mission description="Switch if a mission file for requirement check mission shall be created ('true': On, 'false': Off)">
<value>true</value>
</write_requirement_mission>
<design_mission>
<write_mission_file description="Switch if a mission file for the design mission shall be created ('true': On, 'false': Off)">
<value>true</value>
</write_mission_file>
<output_file_name description="Specify the name of the created mission file">
<value>mission_design.xml</value>
</output_file_name>
<terminal_operation_time description="Specify the time at the terminal for stopovers">
<value>25</value>
<unit>min</unit>
<lower_boundary>5</lower_boundary>
<upper_boundary>10000</upper_boundary>
</terminal_operation_time>
<takeoff_procedure description="Selector for the takeoff procedure. 'mode_0': standard, 'mode_1': ICAO-A Take-Off Procedure (not implemented yet), 'mode_2': ICAO-A Take-Off Procedure (not implemented yet), 'mode_3': Standard 19 seat commuter">
<value>mode_0</value>
</takeoff_procedure>
<approach_procedure description="Selector for the approach procedure. 'mode_0': standard, 'mode_1': Continuous descent approach (not implemented yet), 'mode_2': steep Continuous descent approach (not implemented yet), 'mode_3': Standard 19 seat commuter">
<value>mode_0</value>
</approach_procedure>
<taxi_time_origin description="Time needed for taxiing at origin.">
<value>9</value>
<unit>min</unit>
<lower_boundary>0.1</lower_boundary>
<upper_boundary>30</upper_boundary>
</taxi_time_origin>
<taxi_time_destination description="Time needed for taxiing at destination.">
<value>5</value>
<unit>min</unit>
<lower_boundary>0.1</lower_boundary>
<upper_boundary>30</upper_boundary>
</taxi_time_destination>
<auto_select_initial_cruise_altitude description="Switch to activate automatic selection of the initial cruise altitude (ICA) ('true': On [ICA design: FL330, ICA study: FL350], 'false': Off)">
<value>false</value>
</auto_select_initial_cruise_altitude>
<auto_select_flight_level description="Specify if and how the flight level selection is automated">
<enable description="Switch to activate automatic selection of the flight level ('true': On, 'false': Off)">
<value>false</value>
</enable>
<no_steps description="Switch to never change from initial cruise altitude (ICA) -&gt; ICA = altitude for whole cruise ('true': On, 'false': Off)">
<value>false</value>
</no_steps>
</auto_select_flight_level>
<round_to_regular_flight_level description="Switch to round to flight levels (FL) within 20 FL (= 2000 ft) intervals; e.g. FL 330 or 350 ('true': On, 'false': Off)">
<value>true</value>
</round_to_regular_flight_level>
<auto_climb_altitude_steps description="Altitude step distance in cruise flight with automatic altitude adjustment">
<value>2000</value>
<unit>ft</unit>
<lower_boundary>500</lower_boundary>
<upper_boundary>50000</upper_boundary>
</auto_climb_altitude_steps>
<auto_rate_of_climb_steps description="Rate of climb steps in cruise with automatic altitude adjustment">
<value>300</value>
<unit>ft/min</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>5000</upper_boundary>
</auto_rate_of_climb_steps>
<alternate_distance description="Distance from destination to alternate aerodrome">
<value>370400.2</value>
<unit>m</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>926000</upper_boundary>
</alternate_distance>
<engine_warmup_time description="Running time of the engines before take-off">
<value>0</value>
<unit>min</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>30</upper_boundary>
</engine_warmup_time>
<electric_taxiing_switch description="mode_0: Propulsion Taxiing; mode_1: Electric Taxiing">
<value>mode_0</value>
</electric_taxiing_switch>
<origin_airport description="ICAO code of origin - leave empty if no specific airport shall be selected">
<value></value>
</origin_airport>
<destination_airport description="ICAO code of destination - leave empty if no specific airport shall be selected">
<value></value>
</destination_airport>
</design_mission>
<study_mission>
<write_mission_file description="Switch if a mission file for the study mission shall be created ('true': On, 'false': Off)">
<value>true</value>
</write_mission_file>
<copy_mach_number description="Switch if the Mach number is copied from the design mission's requirements block ('true': On, 'false': Off; only for parameter studies with Mach number variation)">
<value>false</value>
</copy_mach_number>
<copy_initial_cruise_altitude description="Switch if the initial cruise altitude (ICA) is copied from the design mission's requirements block ('true': On, 'false': Off; only for parameter studies with ICA variation without altitude optimization)">
<value>false</value>
</copy_initial_cruise_altitude>
<output_file_name description="Specify the name of the created mission file">
<value>mission_study.xml</value>
</output_file_name>
<terminal_operation_time description="Specify the time at the terminal for stopovers">
<value>25</value>
<unit>min</unit>
<lower_boundary>5</lower_boundary>
<upper_boundary>inf</upper_boundary>
</terminal_operation_time>
<takeoff_procedure description="Selector for the takeoff procedure. 'mode_0': standard, 'mode_1': Standard 19 seat commuter">
<value>mode_0</value>
</takeoff_procedure>
<approach_procedure description="Selector for the approach procedure. 'mode_0': standard, 'mode_1': Standard 19 seat commuter">
<value>mode_0</value>
</approach_procedure>
<taxi_time_origin description="Time needed for taxiing at origin.">
<value>9</value>
<unit>min</unit>
<lower_boundary>0.1</lower_boundary>
<upper_boundary>30</upper_boundary>
</taxi_time_origin>
<taxi_time_destination description="Time needed for taxiing at destination.">
<value>5</value>
<unit>min</unit>
<lower_boundary>0.1</lower_boundary>
<upper_boundary>30</upper_boundary>
</taxi_time_destination>
<auto_select_initial_cruise_altitude description="Switch to activate automatic selection of the initial cruise altitude (ICA) ('true': On [ICA design: FL330, ICA study: FL350], 'false': Off)">
<value>false</value>
</auto_select_initial_cruise_altitude>
<auto_select_flight_level description="Specify if and how the flight level selection is automated">
<enable description="Switch to activate automatic selection of the flight level ('true': On, 'false': Off)">
<value>false</value>
</enable>
<no_steps description="Switch to never change from initial cruise altitude (ICA) -&gt; ICA = altitude for whole cruise ('true': On, 'false': Off)">
<value>false</value>
</no_steps>
</auto_select_flight_level>
<round_to_regular_flight_level description="Switch to round to flight levels (FL) within 20 FL (= 2000 ft) intervals; e.g. FL 330 or 350 ('true': On, 'false': Off)">
<value>true</value>
</round_to_regular_flight_level>
<auto_climb_altitude_steps description="Altitude step distance in cruise flight with automatic altitude adjustment">
<value>2000</value>
<unit>ft</unit>
<lower_boundary>500</lower_boundary>
<upper_boundary>50000</upper_boundary>
</auto_climb_altitude_steps>
<auto_rate_of_climb_steps description="Rate of climb steps in cruise with automatic altitude adjustment">
<value>300</value>
<unit>ft/min</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>5000</upper_boundary>
</auto_rate_of_climb_steps>
<alternate_distance description="Distance from destination to alternate aerodrome">
<value>370400.2</value>
<unit>m</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>926000</upper_boundary>
</alternate_distance>
<engine_warmup_time description="Running time of the engines before take-off">
<value>0</value>
<unit>min</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>30</upper_boundary>
</engine_warmup_time>
<electric_taxiing_switch description="mode_0: Propulsion Taxiing; mode_1: Electric Taxiing">
<value>mode_0</value>
</electric_taxiing_switch>
<origin_airport description="ICAO code of origin - leave empty if no specific airport shall be selected">
<value></value>
</origin_airport>
<destination_airport description="ICAO code of destination - leave empty if no specific airport shall be selected">
<value></value>
</destination_airport>
</study_mission>
</program_settings>
</module_configuration_file>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<module_configuration_file name="createMissionXML_conf.xml">
<control_settings description="General control settings for this tool">
<aircraft_exchange_file_name description="Specify the name of the exchange file">
<value>CSR-02.xml</value>
</aircraft_exchange_file_name>
<aircraft_exchange_file_directory description="Specify the direction in which the aircraft exchange file can be found">
<value>../projects/CSR/CSR-02/</value>
</aircraft_exchange_file_directory>
<own_tool_level description="Specify the tool level of this tool">
<value>3</value>
</own_tool_level>
<console_output description="Selector to specify the console output ('mode_0': Off, 'mode_1': only out/err/warn, 'mode_2': 1 + info, 'mode_3': 2 + debug)">
<value>mode_1</value>
</console_output>
<log_file_output description="Selector to specify the log file output ('mode_0': Off, 'mode_1': only out/err/warn, 'mode_2': 1 + info, 'mode_3': 2 + debug)">
<value>mode_1</value>
</log_file_output>
<plot_output description="Specify the way plotting shall be handled">
<enable description="Switch to enable plotting ('true': On, 'false': Off)">
<value>false</value>
</enable>
<copy_plotting_files description="Switch if plotting files shall be copied ('true': On, 'false': Off)">
<value>true</value>
</copy_plotting_files>
<delete_plotting_files_from_tool_folder description="Switch if plotting files shall be deleted from folder ('true': On, 'false': Off)">
<value>true</value>
</delete_plotting_files_from_tool_folder>
</plot_output>
<report_output description="Switch to generate an HTML report ('true': On, 'false': Off)">
<value>true</value>
</report_output>
<tex_report description="Switch to generate a Tex report ('true': On, 'false': Off)">
<value>true</value>
</tex_report>
<write_info_files description="Switch to generate info files ('true': On, 'false': Off)">
<value>false</value>
</write_info_files>
<gnuplot_script description="Specify the name of the plot file">
<value>create_mission_xml_plot.plt</value>
</gnuplot_script>
<log_file description="Specify the name of the log file">
<value>create_mission_xml.log</value>
</log_file>
<inkscape_path description="Path to the inkscape application ('DEFAULT': Use inkscape from the UNICADO repo structure)">
<value>DEFAULT</value>
</inkscape_path>
<gnuplot_path description="Path to the gnuplot application ('DEFAULT': Use gnuplot from the UNICADO repo structure)">
<value>DEFAULT</value>
</gnuplot_path>
</control_settings>
<program_settings description="Program Settings">
<mission_choice description="Pick a mission (by now only 1 implemented): standard">
<value>standard</value>
</mission_choice>
<maximum_operating_mach_number description="Specify the maximum operating Mach number by its delta to the initial cruise Mach number">
<enable description="Switch to enable the specification via initial cruise Mach number + delta ('true': On, 'false': Off-> read from aircraft exchange file)">
<value>false</value>
</enable>
<delta description="Difference between maximum operating Mach number (MMO) and initial cruise (IC) Mach number: delta = MMO - IC">
<value>0.04</value>
<unit>1</unit>
<lower_boundary>0.0</lower_boundary>
<upper_boundary>1.0</upper_boundary>
</delta>
</maximum_operating_mach_number>
<adapt_climb_speed_schedule description="Second calibrated airspeed (CAS) within climb adapted to crossover altitude">
<enable description="Switch to enable crossover altitude adaption ('true': On, 'false': Off)">
<value>false</value>
</enable>
<crossover_altitude description="Crossover altitude to which the second calibrated airspeed (CAS) shall be adapted">
<value>30000</value>
<unit>ft</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>50000</upper_boundary>
</crossover_altitude>
</adapt_climb_speed_schedule>
<climb_thrust_setting description="Selector to set the thrust rating within climb/acceleration segments to 'mode_0': Takeoff, 'mode_1': Climb, 'mode_2': Maximum continuous, 'mode_3': Cruise">
<value>mode_1</value>
</climb_thrust_setting>
<maximum_rate_of_climb description="Limit the rate of climb (ROC) to a preset value during Climb segments; values less then 0: Use full thrust as limit">
<value>-1</value>
<unit>ft/min</unit>
<lower_boundary>-1</lower_boundary>
<upper_boundary>5000</upper_boundary>
</maximum_rate_of_climb>
<write_requirement_mission description="Switch if a mission file for requirement check mission shall be created ('true': On, 'false': Off)">
<value>true</value>
</write_requirement_mission>
<design_mission>
<write_mission_file description="Switch if a mission file for the design mission shall be created ('true': On, 'false': Off)">
<value>true</value>
</write_mission_file>
<output_file_name description="Specify the name of the created mission file">
<value>mission_design.xml</value>
</output_file_name>
<terminal_operation_time description="Specify the time at the terminal for stopovers">
<value>25</value>
<unit>min</unit>
<lower_boundary>5</lower_boundary>
<upper_boundary>10000</upper_boundary>
</terminal_operation_time>
<takeoff_procedure description="Selector for the takeoff procedure. 'mode_0': standard, 'mode_1': ICAO-A Take-Off Procedure (not implemented yet), 'mode_2': ICAO-A Take-Off Procedure (not implemented yet), 'mode_3': Standard 19 seat commuter">
<value>mode_0</value>
</takeoff_procedure>
<approach_procedure description="Selector for the approach procedure. 'mode_0': standard, 'mode_1': Continuous descent approach (not implemented yet), 'mode_2': steep Continuous descent approach (not implemented yet), 'mode_3': Standard 19 seat commuter">
<value>mode_0</value>
</approach_procedure>
<taxi_time_origin description="Time needed for taxiing at origin.">
<value>9</value>
<unit>min</unit>
<lower_boundary>0.1</lower_boundary>
<upper_boundary>30</upper_boundary>
</taxi_time_origin>
<taxi_time_destination description="Time needed for taxiing at destination.">
<value>5</value>
<unit>min</unit>
<lower_boundary>0.1</lower_boundary>
<upper_boundary>30</upper_boundary>
</taxi_time_destination>
<auto_select_initial_cruise_altitude description="Switch to activate automatic selection of the initial cruise altitude (ICA) ('true': On [ICA design: FL330, ICA study: FL350], 'false': Off)">
<value>false</value>
</auto_select_initial_cruise_altitude>
<auto_select_flight_level description="Specify if and how the flight level selection is automated">
<enable description="Switch to activate automatic selection of the flight level ('true': On, 'false': Off)">
<value>false</value>
</enable>
<no_steps description="Switch to never change from initial cruise altitude (ICA) -> ICA = altitude for whole cruise ('true': On, 'false': Off)">
<value>false</value>
</no_steps>
</auto_select_flight_level>
<round_to_regular_flight_level description="Switch to round to flight levels (FL) within 20 FL (= 2000 ft) intervals; e.g. FL 330 or 350 ('true': On, 'false': Off)">
<value>true</value>
</round_to_regular_flight_level>
<auto_climb_altitude_steps description="Altitude step distance in cruise flight with automatic altitude adjustment">
<value>2000</value>
<unit>ft</unit>
<lower_boundary>500</lower_boundary>
<upper_boundary>50000</upper_boundary>
</auto_climb_altitude_steps>
<auto_rate_of_climb_steps description="Rate of climb steps in cruise with automatic altitude adjustment">
<value>300</value>
<unit>ft/min</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>5000</upper_boundary>
</auto_rate_of_climb_steps>
<alternate_distance description="Distance from destination to alternate aerodrome">
<value>370400.2</value>
<unit>m</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>926000</upper_boundary>
</alternate_distance>
<engine_warmup_time description="Running time of the engines before take-off">
<value>0</value>
<unit>min</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>30</upper_boundary>
</engine_warmup_time>
<electric_taxiing_switch description="mode_0: Propulsion Taxiing; mode_1: Electric Taxiing">
<value>mode_0</value>
</electric_taxiing_switch>
<origin_airport description="ICAO code of origin - leave empty if no specific airport shall be selected">
<value></value>
</origin_airport>
<destination_airport description="ICAO code of destination - leave empty if no specific airport shall be selected">
<value></value>
</destination_airport>
</design_mission>
<study_mission>
<write_mission_file description="Switch if a mission file for the study mission shall be created ('true': On, 'false': Off)">
<value>true</value>
</write_mission_file>
<copy_mach_number description="Switch if the Mach number is copied from the design mission's requirements block ('true': On, 'false': Off; only for parameter studies with Mach number variation)">
<value>false</value>
</copy_mach_number>
<copy_initial_cruise_altitude description="Switch if the initial cruise altitude (ICA) is copied from the design mission's requirements block ('true': On, 'false': Off; only for parameter studies with ICA variation without altitude optimization)">
<value>false</value>
</copy_initial_cruise_altitude>
<output_file_name description="Specify the name of the created mission file">
<value>mission_study.xml</value>
</output_file_name>
<terminal_operation_time description="Specify the time at the terminal for stopovers">
<value>25</value>
<unit>min</unit>
<lower_boundary>5</lower_boundary>
<upper_boundary>inf</upper_boundary>
</terminal_operation_time>
<takeoff_procedure description="Selector for the takeoff procedure. 'mode_0': standard, 'mode_1': Standard 19 seat commuter">
<value>mode_0</value>
</takeoff_procedure>
<approach_procedure description="Selector for the approach procedure. 'mode_0': standard, 'mode_1': Standard 19 seat commuter">
<value>mode_0</value>
</approach_procedure>
<taxi_time_origin description="Time needed for taxiing at origin.">
<value>9</value>
<unit>min</unit>
<lower_boundary>0.1</lower_boundary>
<upper_boundary>30</upper_boundary>
</taxi_time_origin>
<taxi_time_destination description="Time needed for taxiing at destination.">
<value>5</value>
<unit>min</unit>
<lower_boundary>0.1</lower_boundary>
<upper_boundary>30</upper_boundary>
</taxi_time_destination>
<auto_select_initial_cruise_altitude description="Switch to activate automatic selection of the initial cruise altitude (ICA) ('true': On [ICA design: FL330, ICA study: FL350], 'false': Off)">
<value>false</value>
</auto_select_initial_cruise_altitude>
<auto_select_flight_level description="Specify if and how the flight level selection is automated">
<enable description="Switch to activate automatic selection of the flight level ('true': On, 'false': Off)">
<value>false</value>
</enable>
<no_steps description="Switch to never change from initial cruise altitude (ICA) -> ICA = altitude for whole cruise ('true': On, 'false': Off)">
<value>false</value>
</no_steps>
</auto_select_flight_level>
<round_to_regular_flight_level description="Switch to round to flight levels (FL) within 20 FL (= 2000 ft) intervals; e.g. FL 330 or 350 ('true': On, 'false': Off)">
<value>true</value>
</round_to_regular_flight_level>
<auto_climb_altitude_steps description="Altitude step distance in cruise flight with automatic altitude adjustment">
<value>2000</value>
<unit>ft</unit>
<lower_boundary>500</lower_boundary>
<upper_boundary>50000</upper_boundary>
</auto_climb_altitude_steps>
<auto_rate_of_climb_steps description="Rate of climb steps in cruise with automatic altitude adjustment">
<value>300</value>
<unit>ft/min</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>5000</upper_boundary>
</auto_rate_of_climb_steps>
<alternate_distance description="Distance from destination to alternate aerodrome">
<value>370400.2</value>
<unit>m</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>926000</upper_boundary>
</alternate_distance>
<engine_warmup_time description="Running time of the engines before take-off">
<value>0</value>
<unit>min</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>30</upper_boundary>
</engine_warmup_time>
<electric_taxiing_switch description="mode_0: Propulsion Taxiing; mode_1: Electric Taxiing">
<value>mode_0</value>
</electric_taxiing_switch>
<origin_airport description="ICAO code of origin - leave empty if no specific airport shall be selected">
<value></value>
</origin_airport>
<destination_airport description="ICAO code of destination - leave empty if no specific airport shall be selected">
<value></value>
</destination_airport>
</study_mission>
</program_settings>
</module_configuration_file>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment