Simple Configuration Interface
True freedom in parameter modification
Set the Solver
Manage all parameters for problem specification
For simple control of the entire simulations run we have designed a simple text interface allowing the user to easily specify or change parameters affecting physical parameters such as material properties, boundary conditions, the relationship between individual simulation steps, evaluation and results monitoring, etc.
Main Features
Maths Expresions
The ESPRESO solver uses the mathematical expression toolkit library ExprTk for parsing and evaluation of mathematical expressions. Thanks to that, boundary condition, material parameters, and geometrical definition can be set as a function of dependent variables. Users can also specify dependent variables as tabular data.
Input Arguments
The structure of our configuration file allows to the users to manage every single parameter as an input argument simply, and call these parameters directly from the command line. Consequently, external libraries for optimization and Uncertainty Quantification or libraries based on artificial intelligence for training neural networks can be connected to direct.
ecf Checker
Because the solver configuration contains hundreds of parameters, we have integrated validation techniques to detect correctness of all specified parameters and their mutual integrity. Therefore, editing the configuration files is a very easy variant instead of using a graphical user interface.
Custom Templates
The ECF is a useful choice for creating configuration templates applicable to a broad portfolio of single-style products. Templates ensure simple solution, repeatability, and a fast and efficient path for the design process.
Customer Product Portfolio
Solver Templates
Repeatable massively parallel solution without annoying solver settings
ecf Example
ecf for simple stabilized advection difusion
# ESPRESO Configuration File INPUT GENERATOR; PHYSICS HEAT_TRANSFER_2D; GENERATOR { SHAPE GRID; GRID { UNIFORM_DECOMPOSITION TRUE; LENGTH_X 1; LENGTH_Y 1; LENGTH_Z 1; NODES { LEFT <0 , 0> <0 , 1> <0 , 0>; TOP (0 , 1> <1 , 1> <0 , 0>; } ELEMENT_TYPE SQUARE8; BLOCKS_X 1; BLOCKS_Y 1; BLOCKS_Z 1; CLUSTERS_X [ARG0]; CLUSTERS_Y [ARG1]; CLUSTERS_Z 1; DOMAINS_X [ARG2]; DOMAINS_Y [ARG3]; DOMAINS_Z 1; ELEMENTS_X [ARG4]; ELEMENTS_Y [ARG5]; ELEMENTS_Z 1; } } HEAT_TRANSFER_2D { LOAD_STEPS 1; MATERIALS { MAT_01 { DENS 1; CP 1; THERMAL_CONDUCTIVITY { MODEL ISOTROPIC; KXX 5; } } } MATERIAL_SET { ALL_ELEMENTS MAT_01; } INITIAL_TEMPERATURE { ALL_ELEMENTS 293.15; } THICKNESS { ALL_ELEMENTS 1; } STABILIZATION CAU; LOAD_STEPS_SETTINGS { 1 { DURATION_TIME 0.05; TYPE TRANSIENT; MODE LINEAR; SOLVER FETI; TRANSIENT_SOLVER { METHOD CRANK_NICOLSON; TIME_STEP 0.0005; } FETI { METHOD TOTAL_FETI; PRECONDITIONER DIRICHLET; PRECISION 1E-08; ITERATIVE_SOLVER GMRES; REGULARIZATION ALGEBRAIC; } TEMPERATURE { LEFT 280; TOP 800; } TRANSLATION_MOTIONS { ALL_ELEMENTS { X 500*(Y-0.5); Y -500*(X-0.5); } } } } } OUTPUT { PATH results; FORMAT ENSIGHT; RESULTS_STORE_FREQUENCY EVERY_TIMESTEP; MONITORS_STORE_FREQUENCY EVERY_TIMESTEP; STORE_RESULTS ALL; }