Open enricostragiotti opened 2 weeks ago
I add here a sample of what would the configuration file looks like:
# Input and output files
input_file: ./problem_inputs.xml
output_file: ./problem_outputs.xml
# Definition of problem driver assuming the OpenMDAO convention "import openmdao.api as om"
driver: om.ScipyOptimizeDriver(tol=1e-2, optimizer='COBYLA')
model:
nonlinear_solver: om.NonlinearBlockGS(maxiter=100, atol=1e-2)
linear_solver: om.DirectSolver()
geometry:
# An OpenMDAO component is identified by its "id"
id: fastoad.geometry.legacy
# ....
performance:
id: fastoad.performances.mission
propulsion_id: fastoad.wrapper.propulsion.rubber_engine
mission_file_path: ::sizing_mission
out_file: ./flight_points.csv
adjust_fuel: true
is_sizing: true
design_of_experiments:
- name: exploration_1
# Multiple DOEs can be defined in the same configuration file. The name will
# be used to generate the subfolders of the calculations
variables:
# Description of the variables and the bounds used to create the DOE
- name: data:geometry:wing:aspect_ratio
lower: 9.0
upper: 18.0
- name: data:geometry:wing:MAC:at25percent:x
# The bounds can be absolute or relative to a given value or to the value
# of the MDA (requires model definition in the configuration file)
lower_perc: 20.0
upper_perc: 20.0
ref_value: evaluate
- name: data:geometry:wing:sweep_25
# We can mix percentage and absolute bounds
lower_perc: 20.0
upper: 26.0
ref_value: 25.0
- name: exploration_2
variables:
- name: tuning:propulsion:rubber_engine:SFC:k_cr
lower: 0.8
upper: 1.0
- name: tuning:propulsion:rubber_engine:SFC:k_sl
bounds_binding_to: tuning:propulsion:rubber_engine:SFC:k_cr
# Variable can be bind together and share the same value in the DOE
sampling:
# Overwrite here the common settings (written later in the file)
algorithm: FullFactorial
n_samples: 20
# Common settings (for all the DOEs in the file)
sampling:
algorithm: NestedLHS
n_samples: 150
seed_val: 12
options:
- nlevel=2
computing:
max_CPUs: 8
output_folder: ./DOE
A few things that would be nice to have:
Design of Experiments (DOE) is a valuable tool in aeronautical engineering, enabling rapid exploration of an aircraft's design space. DOE allows engineers to compare design choices, assess the impact of new technologies, and evaluate sensitivity to various parameters. For these reasons, I believe it would be highly beneficial for FAST-OAD to support native DOE execution, both from configuration files and command-line interfaces, similarly to the current capabilities for MDA and MDO.
Main Features:
Nice-to-Have Features:
Future Developments:
Expected User Inputs: