Running-FELiCS#
The typical monolithic FELiCS workflow consists of:
Preparing the required input files
Running the
FELiCScommandPost-processing the generated output files
Input files#
The main input files for FELiCS are:
a configuration file (
.json)a mesh file (
.msh)a boundary conditions file (
.json)a mean flow file (
.felorMeanFlow.h5)
Additional input files may be required depending on the simulation setup.
The different input files are described in the following sections:
File |
Description |
|---|---|
Main simulation settings and solver parameters |
|
Computational mesh in Gmsh format |
|
Mean flow solution used by FELiCS |
|
Boundary condition definitions |
|
Optional mixture properties for reacting flows |
FELiCS Commands#
After completing the steps in the installation guide, the FELiCS program can be called directly from the command line, for instance with:
FELiCS -f <your_config_file.json>
For an overview of the arguments for the FELiCS command, use:
FELiCS -h
This command will display the following options:
Argument |
Description |
|---|---|
|
Show the help message and exit |
|
(Mandatory) Specifies the path to a FELiCS config file (in |
|
(Optional) Activate debug mode for extended verbose output |
|
(Optional) Activate test mode which produces no verbose output |
|
(Optional) Activate cpu and memory profiling (saves csv’s and png’s in log file directory) |
|
(Optional) Activate cpu and memory profiling (saves csv’s and png’s in log file directory) as well as debug mode for extended verbose output |
Caution
The CPU and memory profiler only work on Linux.
Here are some examples of how to use the FELiCS command:
Command |
Description |
|---|---|
|
Shows help message |
|
Start with config file |
|
Start in debug mode |
|
Start in test mode |
|
Start with active profilers |
|
Start with active profilers and debug mode |
Output files#
After running an analysis, FELiCS generates several output files containing:
computed solutions (
.h5),interpolated mean-flow fields (
.h5),computational meshes (
.h5),solution spectra (
.csv),and execution logs (
.log),cpu and memory profiler data if profilers are enabled (
.csv),plots showing cpu and memory profiler results if profilers are enabled (
.png).
For visualization purposes, FELiCS also automatically generates associated .xmf metadata files compatible with ParaView.
The generated files depend on the selected analysis type and export options.
The different output files are described in the following sections:
File |
Description |
|---|---|
Modal, resolvent, or input/output solutions exported by FELiCS |
|
Mean-flow fields exported onto the FELiCS mesh |
|
Exported FEM meshes used by FELiCS |
|
Eigenvalue or gain spectra exported as CSV files |
|
Solver logs and execution information |
Summary#
The diagram below summarizes the main inputs and outputs of FELiCS. It also provides links to the corresponding documentation pages and tutorials.
flowchart LR
subgraph Input["Input Data"]
A[Mean or Base<br>Flow Data<br> <a href="../Tutorials/cylinder_wake.html">see Tutorial 1</a>]
click A "../Tutorials/cylinder_wake.html" _blank
style Input fill:#f1faee,stroke:#457b9d,stroke-width:2px
style A fill:#cdb4db,stroke:#333,stroke-width:1px
end
subgraph PrepFiles["FELiCS input files"]
B1[settings.json<br><a href="input_files/param_files.html">see details</a>]
B2[.fel file<br><a href="input_files/mean_files.html">see details</a>]
B3[.msh file<br><a href="../Tutorials/cylinder_wake.html">see Tutorial 1</a>]
B4[boundaries.json<br><a href="input_files/bc_files.html">see details</a><br><a href="../Tutorials/modal_analysis.html">see Tutorial 2</a>]
B5[mixture.json<br><a href="input_files/mix_files.html">see details</a>]
style PrepFiles fill:#f1faee,stroke:#457b9d,stroke-width:2px
style B1 fill:#ffafcc,stroke:#333,stroke-width:1px
style B2 fill:#ffafcc,stroke:#333,stroke-width:1px
style B3 fill:#ffafcc,stroke:#333,stroke-width:1px
style B4 fill:#ffafcc,stroke:#333,stroke-width:1px
style B5 fill:#ffafcc,stroke:#333,stroke-width:1px
end
C[FELiCS<br><a href="#felics-commands">see details</a>]
style C fill:#e76f51
subgraph Output["Output"]
D1[Modal Analysis<br><a href="../Tutorials/modal_analysis.html">see Tutorial 2</a>]
D2[Resolvent Analysis<br><a href="../Tutorials/Resolvent_Analysis.html">see Tutorial 3</a>]
D3[Input-Output<br>Analysis<br><a href="../Tutorials/input_output_analysis.html">see Tutorial 4</a>]
style Output fill:#f1faee,stroke:#457b9d,stroke-width:2px
style D1 fill:#a8dadc,stroke:#333,stroke-width:1px
style D2 fill:#a8dadc,stroke:#333,stroke-width:1px
style D3 fill:#a8dadc,stroke:#333,stroke-width:1px
end
A ==> B2
B1 ==> C
B2 & B3 & B4 & B5 -. path .-> B1
C ==> D1
C ==> D2
C ==> D3
linkStyle default stroke:#8e8d8f,stroke-width:2px