FEATool Multiphysics
FEATool Multiphysics is a fully integrated simulation toolbox and complete platform for modeling and simulation of continuum mechanics and coupled systems of Partial Differential Equations (PDE).
Key features include an easy to use Graphical User Interface (GUI) with integrated modeling, pre and post-processing tools, as well as built-in Finite Element Analysis (FEA) solver with interfaces to external solvers such as OpenFOAM, SU2, and FEniCS.
Modeling Interface
FEATool Multiphysics supports modeling with both an easy to use GUI, as well as being fully programmable and customizable. Simulation models can be saved in binary format, and also exported to fully equivalent MATLAB m-file script models. In this way users can fully customize, extend, and automate their multiphysics simulations including incorporating all of MATLAB's functionality and toolboxes.
FEATool also features convenient built-in equation and expression parsing supporting complex expressions with variables, derivatives, and even external custom user-defined MATLAB functions. No additional programming required to implement non-linear and custom equation coefficients and boundary conditions.
The intuitive GUI allows you to start modeling right away without spending time learning a complex solver or programming syntax. Non-linear expressions and coefficients can be defined and entered just as written on paper.
Geometry Preprocessing
FEATool Multiphysics includes a built-in CAD geometry engine and extensive set of modeling tools, supporting geometry object primitives and Constructive Solid Geometry (CSG) operations for 2D and 3D geometries.
Geometries with multiple independent subdomains are also supported, for which separate equations and coefficients can be defined. For more complex geometries 3D and 2D planar STEP, IGES, STL, and OBJ CAD file import is supported.
Grid Generation
Automatic grid and mesh generation is supported for simplex line segment, triangular and tetrahedral grid cells. Structured grids of quadrilateral and hexahedral cells are also supported and can either be imported or generated manually for regular geometry shapes.
Built-in one-click interfaces for the external grid generators Gmsh, Gridgen2D, and Triangle is also available, as well as grid import and export in the following formats
- Dolfin/FEniCS (XML)
- GiD
- OpenFOAM
- SU2
- ParaView (VTK/VTP)
- STL/Wavefront OBJ
- Triangle
Postprocessing
Built-in postprocessing and visualization options include
- Surface plot
- Contour and iso-surface plot
- Slice plot
- Arrow plot
- Deformation plot
- Streamline plot
- Height plot
- Point/line expression evaluation
- Min/max value computation
- Subdomain/boundary integration
- JPG, PNG image and AVI, MP4 movie export
Simulation data can also be seamlessly exported in ParaView (VTK/VTP), and CSV formats for further postprocessing, as well as one-click export to fully interactive ParaView Glance and plotly web plots.
File Formats
Simulation models can be saved and exported in the following file formats
- Binary file format (.fea) The binary file format is the most convenient format as it saves all modeling data including grid and solutions.
- Finite Element GUI Script file format (.fes) The FES script file format is equivalent to a log of all actions taken in the GUI and can be played back step-by-step to exactly reconstruct the model. The GUI playback format is ideal for making instructional modeling and simulation tutorials for educational purposes.
- MATLAB m-file script format (.m) M-File script export saves the equivalent MATLAB function commands to perform the simulation, and is editable, callable, and embeddable as normal m-files.
Tutorials and Examples
FEATool includes more than 50 automated built-in tutorial models with step-by-step instructions (available by selecting Model Examples and Tutorials from the File menu in the FEATool GUI), and also over 100 m-file script examples for simulation, test, and verification.
Physics Modes
The following pre-defined physics modes and equations are available, which all can be combined to define complex multiphysics models- Heat and Mass Transfer
- Structural Mechanics
- Fluid Dynamics
- Fluid-Structure Interaction
- Electromagnetics
- Classic PDE
In addition, the Custom Equation physics mode allows for completely user defined equations with the FEATool PDE syntax.
Solvers
FEATool Multiphysics solves coupled continuum mechanics and partial differential equations (PDE) using a fully coupled monolithic approach. In contrast to typical segregated and splitting approaches found in other solvers, this method leads to better non-linear convergence properties and an overall more robust and stable solution approach. The following built-in multiphysics analysis types are available
Non-linear problems are linearized and solved either with the Newton method, or fixed-point/Picard iterations, while time-dependent problems employ the backward Euler, Crank-Nicolson, and fractional-step-theta time discretization schemes.
A wide selection of fast sparse linear solvers is also available
- Umfpack/Suitesparse (direct)
- MUMPS (direct)
- AMG (iterative, algebraic multigrid)
- GMRES ILU(k) preconditioning (iterative)
- BiCGStab ILU(k) preconditioning (iterative)
Built-in external solver interfaces are available for the OpenFOAM, SU2 and FEniCS solvers allowing independent comparison and verification of simulations with up to four different simulation codes at once.
The easy to use FEATool-OpenFOAM GUI and CFD solver interface takes the work out of setting up and defining OpenFOAM mesh and case files.
Variable flow profiles, laminar and turbulent boundary and initial conditions, and conversion of 2D and axisymmetric grids to 3D are all handled automatically. FEATool allows users to automate defining OpenFOAM CFD mesh and case files without additional work which then can be run directly in the FEATool GUI, or exported and processed separately.
Similar to OpenFOAM, the SU2 CFD solver and built-in interface is included with the FEATool distribution, and allows users to easily set up and perform advanced flow simulations. The FEATool-SU2 CFD solver interface supports stationary and time-dependent laminar and turbulent incompressible flow regimes, as well as inviscid compressible (Euler) flows.
The built-in FEATool-FEniCS solver interface and one-click solver integration directly translates the FEATool PDE and FEM syntax to FEniCS syntax, with mesh and Python simulation script files.
FEATool is the only software tool that automates the process of setting up and running FEniCS multiphysics models, all within a convenient and easy to use GUI. As with all FEATool functions, the FEniCS, SU2, and OpenFOAM solvers can be embedded into m-file MATLAB scripts and run independently.
FEM Discretization
The following finite element basis functions and discretizations are available in 1D, 2D, and 3D
- Piecewise constant (P0/Q0)
- Linear conforming Lagrange (P1/Q1)
- Higher order Lagrange (P2/Q2-P5/Q5)
- Non-conforming (P-1,P~1,Q~1)
- Hermite elements H3
- Bubble and vector elements
Furthermore, the FEATool finite element library features open source code, and allows for custom shape functions to be implemented.
Artificial and Numerical Stabilization
Artificial stabilization is required for many types of convection dominated flows and is available in the form of
- Isotropic artificial diffusion
- Streamline diffusion (SUPG)
- Pressure stabilization (PSPG)
- FEM-TVD upwinding
FEATool Multiphysics is currently the only publicly available FEA and multiphysics simulation software to feature monotonicity preserving high resolution FEM-TVD upwinding where by, in contrast to standard methods, unphysical over and under-shoots can be avoided.