How Feel++ works
Feel++ is not one application, one executable, it is a set of libraries and applications. It provides a framework to deal with each step of the pipeline for solving partial differential equations. Feel++ applications, however, do share commonalities: they follow necessary and optional steps that we describe below in a general manner. More technical details are available in the Developer Manual.
- Start Feel++ environment
 - 
When executing a Feel++ application, a runtime environment is started. It enables
- 
creating a directory where the results of the applications are stored
 - 
command line options and configuration files
 - 
parallel computing: both MPI and multi-threading.
 - 
logging support: log files are generated by the Feel++ library. They contain information about how the applications run.
 - 
{optional) enabling parallel solver frameworks PETSc and SLEPc
 
 - Do some general operations
 - 
The following steps are optional but are very common in Feel++ applications including the Feel++ Toolboxes
- 
Define and partition meshes
 - 
Define function spaces
 - 
Define linear and bilinear forms
 - 
Solve linear or nonlinear algebraic systems
 - 
Export data to scientific visualization data formats
 
 - 
 - Exit Feel++ environment
 - 
When exiting a Feel++ application, the system is properly shutdown:
- 
all files are saved and closed.
 - 
(optional) the parallel solver frameworks are shut down
 - 
the parallel computing framework is shutdown
 
 -