FEATool Multiphysics  v1.10
Finite Element Analysis Toolbox
Graphical User Interface

This section describes how to use the FEATool Graphical User Interface (GUI). Please note that the GUI may look different depending on your system configuration, FEATool and MATLAB versions.

Main GUI Window

After launching FEATool in MATLAB (by typing featool at the command prompt) the GUI will load. The main GUI window which will open is composed of the main GUI axes, top menu and toolbar, left vertical mode and tool button bars, and also command log and message windows. The functions of these GUI components are explained below.


Main GUI Axes

The main GUI axes is where the geometry, computational grid, and postprocessing results are displayed. The view can be controlled by the Zoom In , Zoom Out , Pan , and Rotate buttons in the top toolbar.


On the top of the GUI toolbar there are menus for file, options, mode, and help operations. The function of these menus are described in detail below

The File menu features the following options

  • New Model... clears the old model data and opens the New Model dialog box.
  • Load Model/GUI Script... allows for opening and loading a previously saved binary model (.fea file) or run a GUI script (.fes file).
  • Save As Model File... allows for saving the current state of a model in binary format (.fea file).
  • Save As GUI Script... allows for saving the commands used in the session as a GUI playback script files (.fes file). Note that GUI script files does not save the grids or solutions, just the the sequence of GUI actions that created them.
  • Save As MATLAB Script... allows for saving the commands used in the session as a MATLAB m-script model file (.m file). Note that m-script models does not save the grids or solutions, just the FEATool function calls that created them.
  • Clear/Reset Script Logs Clears the GUI and MATLAB m-script command logs.
  • Model Examples and Tutorials... Automatically runs the selected tutorial model example.
  • Import > Variables From Main Workspace... opens a dialog box which allows variables to be selected and imported from the MATLAB workspace.
  • Export > Variables To Main Workspace... opens a dialog box which allows variables to be selected and exported to the main workspace.
  • Export > FEA Problem Struct To Main Workspace... exports the FEATool problem struct to the main workspace with the variable name fea.
  • Exit closes and exits the FEATool GUI.

The Options menu allows the axes and grid settings to be modified (these settings are described in the axes/grid settings section below).

The Geometry menu allows for switching to Geometry Mode, creating geometry objects (Create Object), Copy/Transform Objects..., and also accessing the Combine Objects... option which allows specification of a complex formula for geometry object composition. Geometry export and import between CAD STL, Gmsh (geo), and Triangle (poly) formats is also supported.

The Grid menu allows for switching to Grid Mode, Converting Grid Cells between triangular and quadrilateral cells in 2D, and between tetrahedral and hexahedral cells in 3D, and showing Grid Statistics...

Grid Mode also supports import and export of grids through external ASCII format files, these option can also be accessed from the Grid menu

  • Import Grid > FEniCS/Dolfin Format... imports a grid in FEniCS/Dolfin format (.xml file) (calls impexp_dolfin).
  • Import Grid > GiD Format... imports a grid in GiD format (.gid file) (calls impexp_gid).
  • Import Grid > Gmsh Format... imports a grid in Gmsh format (.msh file) (calls impexp_gmsh).
  • Import Grid > GMV Format... imports a grid in General Mesh Viewer (GMV) format (.gmv file) (calls impexp_gmv).
  • Import Grid > Triangle Format... imports a 2D Triangle grid (.node/.ele files) (calls impexp_triangle).
  • Import Grid > VTK Format... imports a ParaView compatible VTK format grid (.vtk file) (calls impexp_vtk).

  • Export Grid > FEniCS/Dolfin Format... exports a grid in FEniCS/Dolfin format (.xml file) (calls impexp_dolfin).
  • Export Grid > GiD Format... exports a grid in GiD format (.gid file) (calls impexp_gid).
  • Export Grid > Gmsh Format... exports a grid in Gmsh format (.msh file) (calls impexp_gmsh).
  • Export Grid > GMV Format... exports a grid in General Mesh Viewer (GMV) format (.gmv file) (calls impexp_gmv).
  • Export Grid > OpenFOAM Format... exports a grid in OpenFOAM format (calls grid2foam).
  • Export Grid > STL Format... exports a STL grid file (.stl file) (calls impexp_stl).
  • Export Grid > Triangle Format... exports a 2D Triangle polygonal geometry description (.poly file) (calls impexp_triangle).
  • Export Grid > VTK Format... exports a ParaView compatible VTK format grid (.vtk file) (calls impexp_vtk).

The Equation and Boundary menus allows for switching to Equation/Boundary Modes and also opening the Equation/Boundary Settings... dialog boxes (see the equation and boundary mode sections). Moreover, the Model Constant and Expressions... option allows for input of modeling variables and expressions that can be used in equations and boundary settings, and postprocessing. Point sources and constraints can also be added here with the corresponding Add Point Sources... and Add Point Constraints... menu options. In 3D the Add Edge Constraints... option is also available to add constraints on boundary edges.

The Solve menu similarly allows for switching to Solve Mode and also opening the Solver Settings... dialog box (these settings are described in the solver settings section). This menu also features an option to Get Initial Solution which computes the expressions defined in the equation settings Initial Condition fields and returns this as the solution.

The Post menu allows for switching to Postprocessing Mode, and opening the Postprocessing Settings... dialog box (see the postprocessing settings section below). In addition there are options for evaluating the minima and maxima for general expressions with Min/Max Evaluation..., points and line evaluation Point/Line Evaluation..., and integration of postprocessing expressions over subdomains Subdomain Integration... (calling intsubd) and boundaries Boundary Integration... (calling intbdr). Moreover, the solution and postprocessing data can also be exported to be used with the Export Results... menu option in CSV, Gemeral Mesh Viewer (GMV), and ParaView (VTK/VTP) file formats.

The Help menu can be used to access the FEATool Documentation... suite, FEATool Website..., Report Issues..., and open the the About... information dialog box which shows FEATool version information. Register FEATool... allows entering a FEATool registration token which is sent to the online licensing server to generate license keys.

GUI Toolbar

The top GUI toolbar contains the following shortcut buttons (note that the GUI might show different options and icons depending on the MATLAB version used)

  • New Model starts a new model definition
  • Load Model loads a FEATool model
  • Save Model saves the current FEATool model
  • Zoom In the main view axes
  • Zoom Out the main view axes
  • Pan around the main view axes
  • Rotate the main view axes (only in 3D)

Mode Buttons

To the left of the main view axes is the mode toolbar which consists of six mode buttons which switches between the different modes

  • Switches to geometry mode
  • Switches to grid generation mode
  • Switches to equation/subdomain specification mode (and opens the corresponding dialog box)
  • Switches to boundary settings mode (and opens the corresponding dialog box)
  • Switches to solve mode
  • Switches to postprocessing mode

Mode Tool Buttons

Below these buttons are the mode tool buttons which can change depending on which mode is selected.

Geometry Mode

  • Creates a line geometry object (only in 1D)
  • Creates a square/rectangle
  • Creates a circle/ellipse
  • Creates a polygon
  • Creates a NACA 4-series wing profile
  • Creates a block
  • Creates a sphere
  • Creates a cylinder
  • Join selected geometry objects
  • Subtract geometry objects from first selected
  • Intersection of geometry objects
  • Undo or split composite or transformed geometry object
  • Copy and/or transform (move, scale, and rotate) selected geometry object
  • Delete selected geometry objects
  • Inspect/edit properties of selected geometry object

Grid Mode

In grid mode the overall global maximum grid cell size variable hmax can be changed with the Grid Size edit field and slider in the grid tools toolbar.

  • Initialize an unstructured grid
  • Uniform grid refinement
  • Advanced grid settings and grid generation algorithm selection

Equation Mode

  • Open the constants and expressions dialog box

Solve Mode

  • Solve problem with initial conditions as prescribed in the solver settings
  • Solve problem with last solution as initial value
  • Open solver settings dialog box
  • Solve multiphysics problem FEniCS external solver
  • Solve fluid flow problem with the OpenFOAM external CFD solver

Post Mode

  • Open the postprocessing settings dialog box
  • Open dialog box for exporting and sharing results to LinkedIn, Twitter, and jpeg/png image generation
  • Export results to ParaView VTP/Glance web browser plot
  • Export results to Plotly web browser plot

Command Log Window

Below the main GUI axes is the output terminal window which displays messages, and output from the local FEATool workspace such as information from grid generation and solvers. (Hold Ctrl + left click to save the command log window output.)

Message Window

The message window can display hints and tips that might be useful to your simulation. While running tutorial GUI scripts (.fes files) the modeling steps will be displayed here. (Hold Ctrl + left click to save the message window output.)

New Model Dialog Box

Pressing the New Model button or selecting New Model... from the File menu starts a new model definition and opens the New Model dialog box.


The New Problem dialog box firstly allows for selecting the number of space dimensions to work in. The Select Space Dimensions frame allows one to choose from 1D, 2D, Axi 2D (for axisymmetric cylindrical coordinate systems), and 3D. Depending on which selection is made the default Space Dimension Names (x, y, and z, or alternatively r and z in cylindrical coordinates) will be shown in the corresponding edit field. The space dimension or independent variable names can be changed if desired, and are used in FEATool defining equation, boundary, postprocessing, and other expressions.

The Select Physics drop down box shows a list of pre-defined physics application modes available for the selected space dimension. By choosing one of the physics modes the corresponding physics equation and default Dependent Variable Names will be updated. This will be the first physics mode defining a new model. The dependent variable names can also be changed as long as they do not conflict with each other or other physics modes. Additional physics modes can be added later by using the + tab in the Equation Settings dialog box in Subdomain Mode, as described the Multiphysics section.

To finish the initial selection process and start a new model press OK, or press Cancel to return to the previous model.

Other GUI Operations

Equation, Boundary, Solve, and Postprocessing mode usage and corresponding dialog boxes are described in the following sections.

Axes/Grid Settings Dialog Box

In the Axis/Grid Settings dialog box the Grid on option turns on and off the grid. By having Axis equal checked the x and-axes will have equal proportional lengths. Bounding box indicates how much extra relative space should be shown apart from the geometry. Alternatively, one can manually set the Axis limits. In 3D a slider control allows setting the transparency (opacity) of geometry objects.


Keyboard Shortcuts

The following keyboard shortcuts are available in FEATool

  • Ctrl + n Open the new model dialog box to start a new model.
  • Ctrl + o Load a previously saved model file.
  • Ctrl + s Open Save Model dialog box.
  • Ctrl + a Select all geometry objects in geometry mode, also works in list boxes and edit fields.
  • Ctrl + d Clear selected objects.

Moreover, in 2D Geometry mode one can hold down a Shift key while using the Create circle/ellipse tool to restrict to a circular geometry instead of allowing elliptical ones.