Reference articles on history, science, culture and more
Encyclopedia

FEATool Multiphysics

Image credit is listed at the end of this article.

FEATool Multiphysics ("Finite Element Analysis Toolbox for Multiphysics") is a physics, finite element analysis (FEA), and partial differential equation (PDE) simulation toolbox. FEATool Multiphysics features the ability to model fully coupled heat transfer, fluid dynamics, chemical engineering, structural mechanics, fluid-structure interaction (FSI), electromagnetics, as well as user-defined and custom PDE problems in 1D, 2D (axisymmetry), or 3D, all within a graphical user interface (GUI) or optionally as script files. FEATool has been employed and used in academic research, teaching, and industrial engineering simulation contexts.

01Features

FEATool Multiphysics is a fully integrated physics and PDE simulation environment where the modeling process is subdivided into six steps; preprocessing (CAD and geometry modeling), mesh and grid generation, physics and PDE specification, boundary condition specification, solution, and postprocessing and visualization.

1. Geometry Mode 2. Grid Mode 3. Multiphysics Mode
4. Boundary Mode 5. Solve Mode 6. Post Mode

Solver interfaces

FEATool has a multi-simulation/solver feature whereby integrated interfaces (UI) to popular open-source solvers are available. This enables several solvers to be used from one GUI and CLI without requiring detailed knowledge of each solver. The CFD solver interfaces allows fluid dynamics problems to be solved with the finite volume CFD solvers OpenFOAM and SU2 without leaving the FEATool interface.

Similar to the OpenFOAM and SU2 solver interfaces, FEATool also features a fully integrated interface to the FEniCS general FEM and multiphysics solver. Using the FEATool-FEniCS interface, as both codes feature PDE definition languages, multiphysics problems can automatically be translated and converted to FEniCS Python definition files, after which the FEniCS solver is called, and the resulting solution re-imported.

Fully scriptable CLI interface

GUI operation is recorded as equivalent function calls, and therefore, in addition to binary formats, FEATool simulation models can be saved and exported as fully scriptable and editable MATLAB compatible m-script files. The short MATLAB script below illustrates how a complete flow around a cylinder computational fluid dynamics (CFD) benchmark problem can be defined and solved with the FEATool m-script functions (including geometry, grid generation, problem definition, solving, and postprocessing all in a few lines of code). Specifically, custom partial differential equations (PDE) and expressions can simply be entered and evaluated as string expressions as-is, without need for further compilation or writing custom functions.

% Geometry and mesh generation. fea.sdim = { 'x' 'y' }; fea.geom.objects = { gobj_rectangle( 0, 2.2, 0, 0.41, 'R1' ), ... gobj_circle( [0.2 0.2], 0.05, 'C1' ) }; fea = geom_apply_formula( fea, 'R1-C1' ); fea.grid = gridgen( fea, 'hmax', 0.02 ); % Problem definition (incompressible Navier-Stokes equations multiphysics mode). fea = addphys( fea, @navierstokes ); % Prescribe fluid viscosity (density is default 1). fea.phys.ns.eqn.coef{2,end} = { 0.001 }; % Boundary conditions (Non-specified boundaries are % per default prescribed no-slip zero velocity walls). % Inflow (bc type 2) at boundary 4. fea.phys.ns.bdr.sel(4) = 2; % Outflow (bc type 3, zero pressure) at boundary 2. fea.phys.ns.bdr.sel(2) = 3; % Parabolic inflow profile x-velocity expression. fea.phys.ns.bdr.coef{2,end}{1,4} = '4*0.3*y*(0.41-y)/0.41^2'; % Check, parse, and solve problem. fea = parsephys( fea ); fea = parseprob( fea ); fea.sol.u = solvestat( fea ); % Alternatively solve with OpenFOAM or SU2 % fea.sol.u = openfoam( fea ); % fea.sol.u = su2( fea ); % Postprocessing and visualization. postplot( fea, 'surfexpr', 'sqrt(u^2+v^2)', ... 'arrowexpr', {'u' 'v'} ) p_cyl_front = evalexpr( 'p', [0.15; 0.2], fea ); p_cyl_back = evalexpr( 'p', [0.25; 0.2], fea ); delta_p_computed = p_cyl_front - p_cyl_back delta_p_reference = 0.117520

External mesh generator interfaces

Similar to the external solver interfaces, FEATool features built-in support for the Gmsh and Triangle mesh generators. If requested instead of the built-in mesh generation algorithm, FEATool will convert and export appropriate Gridgen2D, Gmsh, or Triangle input data files, call the mesh generators through external system calls, and re-import the resulting grids into FEATool.

Other features

  • Stand-alone operation (without MATLAB) or can be used as a MATLAB toolbox.
  • Fully cross platform MATLAB interoperability including other toolboxes.
  • Extensive FEM basis function library (linear and high order conforming P1-P5, non-conforming, bubble, and vector FEM discretizations).
  • Allows structured and un-structured line interval, triangles, quadrilaterals, tetrahedral, and hexahedral mesh elements.
  • Allows for custom user defined PDE equations.
  • 28 pre-defined equations and multiphysics modes in 1D, 2D Cartesian and cylindrical coordinates, as well as full 3D.
  • Mesh and geometry import, export, and conversion between OpenFOAM, SU2, Dolfin/FEniCS XML, GiD, Gmsh, GMV, Triangle (PSLG), and plain ASCII grid formats.
  • Online postprocessing and image export with ParaView Glance, Plotly, and social sharing of results.
Geometry generation and CAD import
Geometry generation and CAD import
Automatic mesh and grid generation
Automatic mesh and grid generation
Subdomain, equation, and coefficient specification
Subdomain, equation, and coefficient specification
Boundary condition specification
Boundary condition specification
Solution of PDE systems
Solution of PDE systems
Postprocessing and visualization of results
Postprocessing and visualization of results
Watch videos about FEATool MultiphysicsExplainers and documentaries on YouTube (opens in a new tab)

Sources and credits

This article is adapted from the Wikipedia article FEATool Multiphysics, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.

Images, from Wikimedia Commons:

Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.