-
Notifications
You must be signed in to change notification settings - Fork 6
Home
MULTIF is a Python module which makes it possible to define and run all fidelity levels of the nozzle model, from a 1D analysis to more complex CFD simulations.
A single python script (runModel.py
) is called for all fidelity levels, which takes as inputs two files: a configuration file defined by the user and an input file containing a list of design variable values which is the interface with the optimizer. An output file containing the requested responses is then written.
The nozzle model can be run using the following call:
$ python runModel.py -f general.cfg -l 1
where the flag -l
specifies which level of fidelity (0-indexed) among those defined in the .cfg file is to be run. In this case, fidelity level 1 is the 2nd fidelity level defined in the general.cfg config file, corresponding to a 1D non-ideal nozzle aerodynamic analysis, linear thermal analysis and nonlinear structural analysis.
To run MULTI-F in parallel (only aerodynamic analyses are parallelized), specify the -n
and -c
flags. -n
specifies the number of tasks to run concurrently and -c
specifies the number of processors to be used per task. One coupled nozzle analysis is considered to be one task. For example:
$ python runModel.py -f general.cfg -l 5 -n 1 -c 8
where 1 coupled nozzle analysis for fidelity level 5 (corresponding to 2D RANS with a coarse mesh and associated thermostructural analysis) is run on 8 cores. Specifying number of tasks n > 1 is useful when finite difference gradients are used as multiple analyses can be run at the same time. Each task (analysis) will be run with the number of cores specified by the -c
flag.
To run the post-processing functions only after a nozzle analysis has already been performed use the -g 1
flag.