- Femera is an open-source finite element Mini-App, developed under LaRC's High Performance Computing Incubator (HPCI), that updates the element-by-element (EBE) matrix-free method for modern HPC architectures, The purpose of a Mini-App is to isolate the most intensive part of a code for release.
- OS: Windows License/options:. Free version limited to 20 beams, 100 plates and 100 solid elements. Base Package: $4500 and $500-$1300 each for options like nonlinear and moving loads.
- Finite Element Model
- Open Source Finite Element Software
- Finite Element Analysis Software For Mac Os X
A Finite Element Analysis Program
Elmer includes physical models of fluid dynamics, structural mechanics, electromagnetics, heat transfer and acoustics, for example. These are described by partial differential equations which Elmer solves by the Finite Element Method (FEM). These pages are intended to give basic information on the Elmer software.
FEAP -- Version 8.6
The distribution of FEAP version 8.6 is now available. Beyond general updating andthe repair of bugs, severalenhancements have been incorporated in the new version.In part these include:
- New commands
- FORMat -- allows input of data with fieldwidth up to 25
- MBOUndary -- allow set of boundary condition based on material set
- LBOUndary -- allow set of boundary condition based on element no.
- CAPTion -- output name of caption variables
- MIDNode -- sets values of mid-nodes of quadratic Taylor/Hood elms.
- NONdim -- sets form of displacement outputs for scaled variables
- PATH -- outputs values of 2-d solutions on specified line.
- HCHEck -- header check for possible coding errors.
- UCHEck -- header check for possible coding errors.
- MIDNode -- sets values of mid-nodes of quadratic Taylor/Hood elms.
- EQUAtion -- plots equation values near nodes
- NONDim -- sets form of displacement plots for scaled variables
- HWIPe -- wipes screen for parts of HFRAme plots
- VWIPe -- wipes screen for parts of VFRAme plots
- New elements
- fld2d1u.f -- New 2-d uniform finite deformation element stabilized
- fld2d3.f -- New 2-d enhanced strain formulation
- fld2d9.f -- New 2-d fully incompressible finite formulation
- sld2d9.f -- New 2-d fully incompressible small formulation
- fld3d3.f -- New 3-d enhanced strain formulation
- fld3d9.f -- New 3-d fully incompressible finite formulation
- sld3du.f -- New 3-d uniform small deformation element stabilized
- sld3d1u.f -- New 3-d uniform small deformation element stabilized
- sld3d9.f -- New 3-d fully incompressible small formulation
- ebarnd.f -- New 2st P-K traction boundary element for RVE's
- fbarnd.f -- New 1st P-K traction boundary element for RVE's
- convec2d.f-- Recode for quadratic interpolations
- intfnd.f -- New option for use in developing interface elements.
- fluid2d.f -- New 2-d Fluid elements (7 types, plus streamline plot)
- fluid3d.f -- New 3-d Fluid elements (4 types)
- Program enhancements
- Use local least squares method to project element variables to nodes.
- Update parfeap to permit the use of LINK commands
- Update parfeap to be compatible with PETSc version 3.13.2
- Rename variables to avoid conflict with intrinsic functions (except ior)
- Add convergence type to log file (e.g., ER = Energy and Residual)
- Add traction boundary option to RVE solution.
- Modify element array for store of nodal, element, global values.
- Add 'help' option to user elements: 'UMAC' HELP (UMAC is command name)
- Improve options for using element variables as Lagrange multipliers.
- Add option to reorder solid tangent arrays for different Voigt ordering.
- Add output for individual dof convergence
- Add FORWard transient algorithm for 1st order ODE explicit solution.
- Add utmati* and utmatl* for thermal user material models.
- Add set of 'ecapt(*)' for plot of element variables.
- New fluids module
- New VEM module
- Eliminate 32-bit pointer option for simpler build
- Streamlined windows build to two window option for simpler build
- A number of bug fixes.
FEAP is a general purpose finite element analysis program whichis designed for research and educational use. Source code of the fullprogram is available for compilation using Windows (Intelcompiler), LINUX or UNIX operating systems, and Mac OS X based Applesystems (GNU and Intel compilers).
- Contact [email protected] for further information anddistribution costs.
The FEAP program includes options for defining one, two, and threedimensional meshes, defining a wide range of linear and nonlinearsolution algorithms, graphics options for displaying meshes and contouringsolution values, an element library for linear and nonlinear solids,thermal elements, two and three dimensional frame (rod/beam) elements, plateand shell elements, torsion elements, winkler foundation elements, acoustic elements,coupled problem elements, and multiple rigid body options with joint interactions.Constitutive models include linear and finite elasticity, viscoelasticitywith damage, and elasto-plasticity.
The system may also be used in conjunction with mesh generationprograms that have an option to output nodal coordinates and elementconnection arrays. In this case it may be necessary to write user functions toinput the data generated from the mesh generation program.
Any problems related to difficulties in achieving astandard installation of the programshould be addressed to: [email protected]
A small version of the system, called FEAPpv, is available free of anycharge. See projects.ce.berkeley.edu/feap/feappv for additional information.This program is the companion to the books: 'The Finite Element Method, 7thedition, Volumes 1 and 2 (but not Vol 3)', authored by O.C. Zienkiewicz andR.L. Taylor and published by Elsevier, Oxford, 2013.
MANUALS FOR FEAP Ver 8.6
PDF files for current FEAP manuals may be obtained by downloadingthe following:
- FEAP Installation Manual: v8.6 - - - (June 2020)
- FEAP User Manual: v8.6 - - - - - - -(June 2020)
- FEAP Example Manual: v8.6 - - - - (June 2020)
- FEAP Programmer Manual: v8.6 - - (June 2020)
- FEAP Contact Manual: v8.6 - - - - -(June 2020)
- FEAP Parallel Manual: v8.6 - - - - - (June 2020)
- FEAP FE^2 Manual: v8.6 - - - - - (June 2020)
- FEAP IsoGeometric Manual: v8.6 - - - - - (June 2020)
- FEAP Fluids Manual: v8.6 - - - - - (June 2020)
- FEAP Theory Manual: v8.6 - - - - -(June 2020)
N.B. PDF files require Acrobat Reader to print.
A user forum for FEAP users has been created at http://feap.berkeley.edu.This is a site to post questions, get answers, and interact with other users. We encourageusers to help other users.
A new WIKI has been created for FEAP.It is just in its beginning stage but already contains some useful information for new andpotential users. Please have a look and provide feedback and content.
INPUT/OUTPUT FILES FOR FEAP Ver 8.5 TEST PROBLEMS
The file below contains a few simple test problems and the output theyproduce using FEAP ver 8.5. The file is in 'zip' form.
- Test problems for FEAP v8.5 (zip file) - - - -(May 2017)
ADDITIONAL ELEMENTS FOR FEAP Ver 7.3 to 8.6
User elements may be added to the FEAP system to extend solutioncapabilities (See FEAP Programmer Manual). The elements given beloware examples of elements whichare useful in educational applications to demonstrate the behaviorof finite element solutions of classical applications
- Rectangular thin plate element(elmt05.f: Bogner-Fox-Schmit rectangle)
- Rectangular thin plate element(elmt06.f: DKQ rectangle)
- Triangular thin plate element(elmt07.f: DKT triangle)
- Elastic St. Venant torsion element(elmt11.f: Warping and stress function solutions)
- Plastic St. Venant torsion element(elmt12.f: Warping function solution with Mises plasticity and isotropichardening)
MATLAB INTERFACE (for older versions of FEAP)
The MATLAB interface is a standard part of versions 8.1 and later.
The MATLAB program permits easy solutions using many different algorithms.An interface for FEAP is provided by the user solution command routine'umacr3.f' below. This routine permits the output to files of the non-zerovalues contained in the residual, tangent, mass, or damping matrices.The routine is fully operational with the 7.5 release of FEAP andexcept for the unsymmetric mass and damping options with release 7.4. Theuse is quite simple. In the solution command sequence:
- TANG,-1 ! Form unfactored tangent
OUTPut TANG ! Output to file 'tang' nonzero terms in tangent.
A simple MATLAB program to use the tangent is
- load tang
A = spconvert(tang)
Download file from:
A direct link with MATLAB is also available. This permits FEAP to berun from MATLAB and allows for solution options available in MATLAB tobe used in the analysis process. The interface is available fromDavid Bindel at the web site listed below.
LINEAR EQUATION SOLVER INTERFACES
The SGI Origin machines have multiprocessor capability and solutionof finite element problems using FEAP can be made much more efficientusing special solution packages. The routine given below providesan interface to the SGI parallel sparse solver (users must alreadyhave the solution package from SGI for this interface to function).
An interface is available for the general sparse solver SuperLU.General information at:(http://www.cs.berkeley.edu/~demmel/SuperLU.html) Source program at (http://crd.lbl.gov/~xiaoye)
Download the source and create an archive containing the SuperLU routinesfor double precision real computations and, if necessary, the BLASroutines. (N.B. The SuperLU solver has been tested only in a Linuxand MAC OSX environment).
Next, download the following feap interface routines (zipped). Compile andlink with the main FEAP archive and those for SuperLU created as describedabove. Use solution command 'splu' to activate the SuperLU solver.Subsequent commands 'tang' or 'utan' will then use SuperLU.
An interface is available for the general sparse solver UMFPACK.General information and source may be obtained from:(http://faculty.cse.tamu.edu/davis/research.html)
Download the source and create an archive containing the UMFPACK archive.The interface may be obtained from:(N.B. this interface pre-dates SuiteSparse)
An interface is available for the sparse solver system WSMP(Watson Sparse Matrix Package, IBM Research).General information and licensing requirements may be obtained from:(http://www.research.ibm.com/math/OpResearch/wsmp.html)
Jul 16, 2014 Lifehacker Pack For Mac 2014: Our List Of The Best Mac Apps. Integrates well with other popular productivity apps and calendaring tools, and more. Interesting apps. Fantastical is a favorite with the Mac users on our team, but it’s one of the most expensive options out there and you’ll have to pay separately for the Mac, iPhone, and iPad apps. Pricing: Fantastical is available for Mac, offers a 21-day free trial and after that can be purchased with a one-time payment ($49.99) for each platform (iPhone. Jun 12, 2018 Best Mac Productivity Apps 1. Alfred is a software that will help you do things faster. With Alfred, you can become the Batman of productivity. This application takes getting used to and you will have to set it up to suit your needs. Alfred basically is a search bar like Spotlight search that focuses on using hotkeys and workflows for. Using a list or note taking app is a great way to improve your mac productivity. Apps can help you take and organize your lists and notes. Here are some of the best apps for lists and notes: 13. Evernote allows you to store information you want to remember. Use it to create lists, take notes, scan documents, and even add photos. Best microsoft productivity apps. Jun 11, 2020 2 thoughts on “Best Productivity Apps for Mac” Rage. Jul 25, 2019 at 11:33 pm. From what I’ve seen, the most powerful pdf editor for Mac is PDF Studio 2019. Although the GUI interface will give you flashbacks to Mac OS 9, it has more features than any other editor. One of the most useful is the right click “flatten” function, which.
After receiving the source and license,create an archive containing the WSMP program.The FEAP interface may be obtained from:
An interface is available for the sparse solver system Pardiso.Google Pardiso for information on use. Also available with Intel compilers.
Finite Element Model
Other FEAP Web Sites:
- Sanjay Govindjee Contains examples for user functions as well as a C interface fordeveloping elements, etc.
- DavidBindel A MATLAB interface to FEAP which permits simultaneous access to bothprograms.
Structural Engineering, Mechanics and Materials
Department of Civil and Environmental Engineering
University of California, Berkeley
This is a list of software packages that implement the finite element method for solving partial differential equations.
|Agros2D||Multiplatform open source application for the solution of physical problems based on the Hermes library||University of West Bohemia||3.2||2014-03-03||GNU GPL||Free||Linux, Windows|
|CalculiX||It is an Open Source FEA project. The solver uses a partially compatible ABAQUS file format. The pre/post-processor generates input data for many FEA and CFD applications||Guido Dhondt, Klaus Wittig||2.14||2018-04-27||GNU GPL||Free||Linux, Windows|
|DIANA FEA||General purpose finite element package utilised by civil, structural and geotechnical engineers.||DIANA FEA BV, The Netherlands||10.1||2016-11-14||Paid||Windows, Linux|
|deal.II||Comprehensive set of tools for finite element codes, scaling from laptops to clusters with 10,000+ cores. Written in C++.||Wolfgang Bangerth, Timo Heister, Guido Kanschat, Matthias Maier et al.||9.0||2018-05-12||LGPL||Free||Linux, Unix, Mac OS X, Windows|
|DUNE||Distributed and Unified Numerics Environment, written in C++||DUNE Developer team||2.4.1||2016-02-29||GPL Version 2 with Run-Time Exception||Free||Linux, Unix, Mac OS X|
|Elmer||Open source multiphysical simulation software developed by Finnish Ministry of Education's CSC, written primarily in Fortran (written in Fortran90, C and C++)||CSC||8.2||2016-03-15||GPL||Free||Linux, Mac OS X, Windows|
|FEBio||Finite Elements for Biomechanics||University of Utah (MRL), Columbia University (MBL)||2.7||April, 2018||Custom||Free||Linux, Mac OS X, Windows|
|FEniCS Project||Software package developed by American and European researchers with the goal to enable automated solution of differential equations||FEniCS Team||1.6.0||2015-07-29||LGPL (Core) & GPL/LGPL (Non-Core)||Free||Linux, Unix, Mac OS X, Windows|
|FEATool Multiphysics||MATLAB FEM and PDE multiphysics simulation toolbox||Precise Simulation||1.10||2019-05-17||Free for personal use||Windows, Mac OS X, Linux, Unix|
|FreeFEM||FreeFEM is a free and open-source parallel FEA software for multiphysics simulations. The problems are defined in terms of their variational formulation and can be easily implemented using FreeFEM language. Written in C++.||Sorbonne University and Jacques-Louis Lions Laboratory||4.2.1||2019-06-06||LGPL||Free||Linux, MacOS, Windows, Solaris|
|GOMA||GOMA is an open-source, parallel, and scalable multiphysics software package for modeling and simulation of real-life physical processes, with a basis in computational fluid dynamics for problems with evolving geometry.||Sandia National Laboratories, University of New Mexico||6.1||Aug 28, 2015||GPL Version 2||Free||Linux|
|GetFEM++||A generic finite element library written in C++ with interfaces for Python, Matlab and Scilab. It focuses on modeling of contact mechanics and discontinuities (e.g. cracks).||Yves Renard, Julien Pommier||5.0||2015-07||LGPL||Free||Unix, Mac OS X, Windows|
|Hermes Project||Modular C/C++ library for rapid development of space- and space-time adaptive hp-FEM solvers||hp-FEM group||3.0||2014-03-01||LGPL||Free||Linux, Unix, Mac OS X, Windows|
|Mathematica||General purpose computation software.||Wolfram Research||12.1.1 (June 17, 2020; 25 days ago) [±]||Regularly||Proprietary||Linux, Mac OS X, Windows, Raspbian, Online service.|
|MATLAB Partial Differential Equation Toolbox||MATLAB Toolbox for solving structural, thermal, electromagnetics, and other general PDEs||MathWorks||3.3 (R2019b)||2019-09-11||Linux, Mac OS X, Windows|
|MFEM||MFEM is a free, lightweight, scalable C++ library for finite element methods that features arbitrary high-order finite element meshes and spaces, support for a wide variety of discretizations, and emphasis on usability, generality, and high-performance computing efficiency.||MFEM team||4.1||2020-03-10||BSD||Free||Linux, Unix, Mac OS X, Windows|
|MoFEM JosePH||Mesh Oriented hp-FE code, written in C++||University of Glasgow||0.6.8||2017-11-16||LGPL||Free||Unix, Mac OS X|
|MOOSE||Object Oriented FE framework, written in C++||Idaho National Laboratory||regularly||LGPL||Free||Unix, Mac OS X|
|OOFEM||Object Oriented Finite EleMent solver, written in C++||Bořek Patzák||2.4||2016-02-15||GPL Version 2||Free||Unix, Windows|
|OpenSees||Open System for Earthquake Engineering Simulation||Non Commercial||Free||Unix, Linux, Windows|
|SESAM (FEM)||Software suite for structural and hydrodynamic analysis of ships and offshore structures||DNV GL||regularly||Proprietary, SaaS||Windows, Web browser|
|Range Software||Multiphysics Finite Element Analysis Software||Tomáš Šoltys||3.0||2018-04-30||GPL||Free||Linux, Windows|
|Z88/Z88Aurora||Freeware finite element package; The present version Z88Aurora V4 offers, in addition to static strength analysis modules such as non-linear strength calculations (large displacements), simulations with non-linear materials, natural frequency, static thermal analysis and a contact module.||Frank Rieg||Z88 V15, Z88Aurora V4||2017-07-17, 2017-04-24||GNU GPL, Custom||Free||Linux, Windows, Mac OS X|
|Abaqus||Advanced Franco-USA software from SIMULIA, owned by Dassault Systemes||Abaqus Inc.||2019||2019-12||Linux, Windows|
|CONSELF||CAE simulation from your browser||CONSELF SRL||2.9||2015-10||SaaS||Freemium||Web browser|
|FreeCAD||Parametric 3D modeler with a FEM workbench allowing it to use external solvers like CalculiX, Z88, Elmer, and OpenFoam||FreeCAD Team||0.18||12 March 2019||LGPL 2||Free||Linux, Windows, Mac OS X|
|ADINA||Finite element software for structural, fluid, heat transfer, electromagnetic, and multiphysics problems, including fluid-structure interaction and thermo-mechanical coupling||Adina R&D|
|Advance Design||BIM software for FEM structural analysis, including international design eurocodes||GRAITEC||2014||2013-09|
|Autodesk Simulation||Finite Element software of Autodesk||Autodesk||Windows|
|ANSYS||US-based and -developed full CAE software package||Ansys Inc.||19.2||2018-09-18||Free student version available, up to 32,000 nodes/elements||Windows, Linux|
|COMSOL Multiphysics||COMSOL Multiphysics Finite Element Analysis Software (formerly FEMLAB)||COMSOL Inc.||5.5||2019-11-14||Linux, Mac OS X, Windows, Web browser|
|CosmosWorks||Part of SolidWorks||Dassault Systèmes SolidWorks Corp.||Windows|
|Quickfield||EM, Heat Transfer and Stress Analysis ||Tera Analysis Ltd||6.4 ||2020-04-17||Free Student Edition available||Windows|
|LS-DYNA||Best known for explicit dynamics / crash analysis||LSTC - Livermore Software Technology Corporation||R8.0||2015-03||Linux, Windows|
|Nastran||Originally developed for NASA, now available commercially from several software companies||MSC NASTRAN, Siemens PLM NX Nastran||2014||2014||Linux, Mac OS X, Windows|
|RFEM||3D finite element analysis software||Dlubal Software||5.06||2016-02||Free student license available||Windows|
|SimScale||German 100% web-based CAE platform||SimScale GmbH||14||2013-07||SaaS||Free community version available||Web browser|
|VisualFEA||Finite element software for structural, geotechnical, heat transfer and seepage analysis||Intuition Software||5.11||2016-01||Proprietary software||Free educational version available||Mac OS X, Windows|
|JCMsuite||Finite element software for the analysis of electromagnetic waves, elasticity and heat conduction||JCMwave GmbH||3.6.1||2017-01-27||Linux, Windows|
|JMAG||2D and 3D finite element analysis software for electromagnetic field, thermal, structural||JSOL||18.1||2019-06||Education pack available||Linux, Windows, Web browser|
|StressCheck||Finite element analysis software based on p-FEM with a focus on solid mechanics applications||ESRD, Inc.||10.4||2018-04||Student version available (limited to 15k DOF)||Windows|
|SDC Verifier||An extension for Ansys Mechanical, Femap and Simcenter with out of the box predefined standards on fatigue, stiffener and plate buckling, beam member checks, joint checks and weld. Such as AISC 360-10, API 2A RP, ISO 19902, Norsok N004, DIN15018, Eurocode 3, FEM 1.001, ABS 2004, ABS 2014, DNV RP-C201 2010, DNV CN30/1995, FKM etc.||SDC Verifier||5.3.1||2020-03||Student version available||Windows|
This table is contributed by a FEA-compare project, which provides an alternative view of this table with the first row and Feature column being fixed for ease of table exploration.
|Feature||COMSOL Multiphysics||MFEM||GetFEM++||deal.II||Range Software||Elmer||MOOSE||FEniCS Project||FEATool Multiphysics|
|license:||Proprietary||BSD||LGPL||LGPL||GPL||GNU (L)GPL||LGPL||GNU GPLLGPL||Proprietary|
|GUI:||Yes||No||No||No||Yes||Yes, partial functionality||Yes||Postprocessing only||Matlab and Octave GUI|
|Documentation:||User guides, reference manuals, API documentation, application libraries with solved examples, online tutorials||examples, miniapps, Doxygen, online documentation||User doc, tutorials, demos, developer's guide||tutorials, video lectures, Doxygen||user manual, tutorials||ElmerSolver Manual, Elmer Models Manual, ElmerGUI Tutorials, etc. LaTeX documentation available in PDFs||Doxygen, Markdown, example codes, test inputs||Tutorial, demos, book||Online FEATool documentation, tutorials, and model examples|
|mesh elements:||Intervals (1D); triangles, quadrilaterals (2D and 3D boundaries); tetrahedra, pyramids, prisms, hexahedra (3d)||segments, triangles, quadrilaterals, tetrahedra, hexahedra, prisms||intervals, triangles, tetrahedra, quads, hexes, prisms, some 4D elements, easily extensible.||intervals (1d), quads (2d), and hexes (3d) only||points(0d), segments (1d), triangles, quadrilaterals (2d), tetrahedra, hexahedra (3d)||intervals (1d), triangles, quadrilaterals (2d), tetrahedra, pyramids, wedges, hexahedra (3d)||Tria, Quad, Tetra, Prism, etc.||intervals, triangles, tetrahedra (quads, hexes - work in progress)||intervals, triangles, tetrahedra, quads, hexes|
|mesh high-order mapping:||Any? Second-order is the default for most cases.||arbitrary-order meshes and NURBS meshes||any order||Yes, for Lagrange elements||(Any - work in progress)|
|mesh generation:||Built-in||meshing miniapps and target-matrix mesh optimization||Experimental in any dimension + predefined shapes + Extrusion.||external+predefined shapes||Yes (TetGen)||Limited own meshing capabilities with ElmerGrid and netgen/tetgen APIs. Internal extrusion and mesh multiplication on parallel level.||Built-in||Yes, Constructive Solid Geometry (CSG) supported via mshr (CGAL and Tetgen used as backends)||Integrated DistMesh, Gmsh, and Triangle GUI and CLI interfaces|
|mesh adaptive-refinement:||Yes, full adaptive mesh refinement (h-refinement); no p-refinement but several higher-order elements are included. Mesh adaptation on the whole or parts of the geometry, for stationary, eigenvalue, and time-dependent simulations and by rebuilding the entire mesh or refining chosen mesh elements.||conforming and non-conforming adaptive refinement for tensor product and simplex meshes||Only h||h, p, and hp for CG and DG||h-refinement for selected equations||h, p, mached hp, singular hp||Only h|
|mesh inputoutput:||STL, PLY, NASTRAN, 3MF, VRML (import only), native format||VTK, Gmsh, CUBIT, NETGEN, TrueGrid, and MFEM format||gmsh, GiD, Ansys||rbm, stl||ExodusII, Nemesis, Abaqus, Ensight, Gmsh, GMV, OFF, TecPlot TetGen, etc.||XDMF (and FEniCS XML)||FeatFlow, FEniCS XML, GiD, Gmsh, GMV, Triangle|
|mesh check:||Avoids inverted and degenerated elements; various mesh quality measures||?||limited features (double nodes, degenerated elements, intersected elements)||intersections (collision testing)|
|CAD files support:||STEP, IGES, others.||No||IGES, STEP (with OpenCascade wrapper)||Yes (stl)||Limited support via OpenCASCADE in ElmerGUI|
|mesh operation:||Merge, copy, refine; convert; boundary layers; extrude, revolve, sweep, loft for 3D geometies||Extrude, rotate, translation, refine||Extrude, rotate, translation, refine||Merge, join, extrude, modular mesh modifier system||Merge, join, extrude, and revolve operations|
|automatic mesh partitioning:||METIS and space-filling curve partitioning||Yes (METIS)||yes, shared (METIS/Parmetis) and distributed (p4est)||No||partitioning with ElmerGrid using Metis or geometric division, internal partitioning in ElmerSolver using Zoltan||Metis, Parmetis, Hilbert (shared and distributed meshes)||Yes (ParMETIS and SCOTCH)|
|MPI:||Yes||Yes||Yes||Yes (up to 147k processes)||No||Yes||Yes||Yes|
|threads:||Supports multithreading||Using OpenMP, RAJA, or OCCA backends||Threading Build Blocks||Yes||threadsafe, some modules threaded and vectorized.||Yes|
|OpenMP:||Yes||Yes||Yes||Yes (vectorization only)||Yes||Yes, partially||Yes|
|OpenCL:||No||Through OCCA backends||No||No||No||No|
|CUDA:||No||Yes||No||since 9.1, see step-64 for matrix-free GPU+MPI example||No||Preliminary API for sparse linear algebra|
|Dimension:||0D, 1D, 2D, 3D (can coexist)||1D/2D/3D||Any, possibility to mix and couple problem of different dimension||1/2/3D||0D/1D/2D/3D (dimensions may coexist)||1D/2D/3D (dimensions may coexist)||1/2/3D||1/2/3D||1/2/3D|
|FE:||Lagrange (order 1-7), Hermite (order 3-7), discontinuous Lagrange (order 0-7), bubble, Gauss point, serendipity, Nedelec||Arbitrary-order Lagrange elements (continuous and discontinuous), Bernstein basis, Nedelec and Raviart-Thomas elements, support for NURBS spaces (IGA)||Continuous and discontinuous Lagrange, Hermite, Argyris, Morley, Nedelec, Raviart-Thomas, composite elements (HCT, FVS), Hierarchical elements, Xfem, easily extensible.||Lagrange elements of any order, continuous and discontinuous; Nedelec and Raviart-Thomas elements of any order; BDM and Bernstein; elements composed of other elements.||Lagrange elements||Lagrange elements, p-elements up to 10th order, Hcurl conforming elements (linear and quadratic) for||Lagrange, Hierarchic, Discontinuous Monomials, Nedelec||Lagrange, BDM, RT, Nedelic, Crouzeix-Raviart, all simplex elements in the Periodic Table (femtable.org), any||Lagrange (1st-5th order), Crouzeix-Raviart, Hermite|
|Quadrature:||Gauss-Legendre, Gauss-Lobatto, and uniform quadrature rules.||Gauss-Legendre, Gauss-Lobatto, midpoint, trapezoidal, Simpson, Milne and Weddle (closed Newton-Cotes for 4 and 7 order polinomials), Gauss quadrature with logarithmic or 1/R weighting function, Telles quadrature of arbitrary order.||Gauss-Legendre (1D and tensor product rules in 2D and 3D) tabulated up to 44th-order to high precision, best available rules for triangles and tetrahedra to very high order, best available monomial rules for quadrilaterals and hexahedra.|
|Transient problems:||Yes, BDF, Runge-Kutta (RK34, Cash-Karp 5, Dormand-Prince 5), and generalized alpha time stepping||Runge-Kutta, SSP, SDIRK, Adams-Bashforth, Adams-Moulton, Symplectic Integration Algorithm, Newmark method, Generalized-alpha method||Any user implemented and/or from a set of predifined. Explicit methods: forward Euler, 3rd and 4th order Runge-Kutta. Implicit methods: backward Euler, implicit Midpoint, Crank-Nicolson, SDIRK. Embedded explicit methods: Heun-Euler, Bogacki-Shampine, Dopri, Fehlberg, Cash-Karp.||Yes||implicit-euler explicit-euler crank-nicolson bdf2 explicit-midpoint dirk explicit-tvd-rk-2 newmark-beta||BE, CN, and Fractional-Step-Theta schemes|
|Predifined equations:||Incompressible Navier-Stokes, heat transfer, convection-diffusion-reaction, linear elasticity, electromagnetics, pressure acoustics, Darcy’s law, and support for custom PDE equations||Miniapps and examples for Laplace, elasticity, Maxwell, Darcy, advection, Euler, Helmholtz, and others||Laplace?||Yes (Incompressible Navier-Stokes, Heat transfer (convection-conduction-radiation), Stress analysis, Soft body dynamics, Modal analysis, Electrostatics, Magnetostatics )||Around 50 predefined solvers||Phase Field, Solid Mechanics, Navier-Stokes, Porous Flow, Level Set, Chemical Reactions, Heat Conduction, support for custom PDEs||Incompressible Navier-Stokes, Heat transfer, convection-diffusion-reaction, linear elasticity, electromagnetics, Darcy's, Brinkman equations, and support for custom PDE equations|
|Visualization:||Built-in||In situ visualization with GLVis. Export to VisIt and ParaView.||External or with the Scilab/Matlab/Python interface. Possibility to perform complex slices.||External (export to *.vtk and many others)||GUI (built-in)||ElmerGUI comes VTK based visualization tool (but Paraview is recommended)||Yes, VTK-based GUI, Python visualizatuion library||Buil-in simple plotting + External||Built-in with optional Plotly and GMV export|
|Output format:||Text and unstructured VTK-file for data.BMP,PNG, GIF, TIFF, JPEG, glTF, Windows clipboard, Microsoft PowerPoint (for images). GIF, Flash, AVI, WebM (for animatios). Touchstone data (for networks).||VisIt, ParaView (VTU), GLVis format||vtk, gmsh, OpenDX.||*.dx *.ucd *.gnuplot *.povray *.eps *.gmv *.tecplot *.tecplot_binary *.vtk *.vtu *.svg *.hdf5||Several output formats (VTU, gmsh,..)||ExodusII, Xdr, etc.||VTK(.pvd, .vtu) and XDMF/HDF5||GMV and Plotly|
|Boundary elements solver:||Yes||No||Yes||Existing but without multipole acceleration (not usable for large problems)||No|
|Use multiple meshes:||Yes including different dimensions and taking account of any transformation.||Yes, autorefined from same initial mesh for each variable of a coupled problem||Continuity of non-conforming interfaces ensured by mortar finite elements||Yes, including non-matching meshes|
|Used libs:||MUMPS, PARDISO, SPOOLES; ARPACK, BLAS, BLIS, Intel MKL, LAPACK||Built-in and integrated with hypre. Optional integrations with PETSc, Ginkgo, SuperLU, Suite Sparse, libCEED, and more||SuperLU, MUMPS, Built-in.||Built-in + Trilinos, PETSc, and SLEPc||No||Built-in, Hypre, Trilinos, umfpack, MUMPS, Pardiso, etc. (optional)||PETSc, Trilinos, LASPack, SLEPc||PETSc, Trilinos/TPetra, Eigen.||Matlab/Octave built-in (Umfpack), supports integration with the FEniCS and FeatFlow solvers|
|Iterative matrix solvers:||GMRES, FGMRES, BiCGStab, conjugate gradients, TFQMR, or any precoditioner. Algebraic and geometric multigrid. Domain decomponsition (Schwarz, Schur)||Krylov methods (CG, MINRES, GMRES, BiCGStab)||All Krylov||All Krylov (CG, Minres, GMRES, BiCGStab, QMRS)||GMRES, CG||Built-in Krylov solvers, Krylov and multigrid solvers from external libraries||LASPack serial, PETSc parallel||Matlab/Octave built-in|
|Preconditioners:||Direct preconditioner, Krylov, SOR, SSOR, SORU, SOR line, SOR gauge, SOR vector, Jacobi, incomplete and hierarchical LU, SAI, SCGS, Vanka, AMS||Algebraic, Geometric, and p-multigrid. Block ILU preconditioning. Support for hypre's AMS and ADS preconditioners for H(curl) and H(div).||Basic ones (ILU, ILUT)||Many, including algebraic multigrid (via Hypre and ML) and geometric multigrid||ILU, Jacobi||Built-in preconditioners (ILU, diagonal, vanka, block) and||LASPack serial, PETSc parallel, algebraic multigrid (via Hypre)||Matlab/Octave built-in|
|matrix-free save memory:||Yes||No||Yes||No|
|Native language:||Primarily C++ and Java||C++||C++||C++||C++||Fortran (2008 standard)||C++||C++||Matlab / Octave|
|Bindings to language:||Full API for Java and Matlab (the latter via add-on product)||PyMFEM||Python, Scilab or Matlab||No||No||Python|
|Predefined equations:||Yes, many predefined physics and multiphysics interfaces in COMSOL Multiphysics and its add-ons.||A large number of Bilinear and Linear forms||Model bricks: Laplace, linear and nonlinear elasticity, Helmholtz, plasticity, Mindlin and K.L. plates, boundary conditions including contact with friction.|
|Coupled nonlinear problems:||Yes||Yes||Yes|
|Binary:||Windows, Linux, macOS||Yes, via OpenHPC. Also available as part of Spack, xSDK, E4S, FASTMath, RADIUSS and CEED.||Linux (Debian/Ubuntu)||Linux, Windows (work in progress), Mac||Windows, Linux (launchpad: Debian/Ubuntu), Mac (homebrew) (all with MPI)||Linux (DebianUbuntu), Mac||Windows, Linux, Mac|
|fullname:||Elmer finite element software|
|Testing:||Comprehensive unit and regression tests. Continuous integration through Travis CI||3500+ tests||More than 700 consistency tests ensuring backward compatibility||4300+ tests, Testing as a service for derived applications|
|scripting:||Full API for Java and, through add-on product, Matlab||Runtime parsed mathematical expression in input files||Fully scriptable in as m-file Matlab scripts and the GUI supports exporting models in script format|
|automatic differentiation:||Yes||Forward-mode for Jacobian computation, symbolic differentiation capabilities|
|multiphysics:||Yes, full custom and predefined multiphysics couplings between all kinds of physics||Arbitrary multiphysics couplings are supported||Arbitrary multiphysics couplings are supported||Arbitrary multiphysics couplings are supported|
|Optimization Solvers:||With the Optimization Module add-on: Coorinate search, Nelder-Mead, Monte Carlo, BOBYQA, COBYLA, SNOPT, MMA, Levenberg-Marquardt||Integration with HiOp. Built-in SLBQP optimizer||Support for TAO- and nlopt-based constrained optimization solvers incorporating gradient and Hessian information.|
|Symbolic derivation of the tangent system for nonlinear problems:||Yes|
|Support for fictitious domain methods:||Yes|
Open Source Finite Element Software
- ^'FEniCS Project'. Retrieved 2017-06-21.
- ^'FEATool Multiphysics - Product Information'. Retrieved 2018-06-12.
- ^'FreeFem++'. freefem.org. Retrieved 2018-11-30.
- ^'Sorbonne Université Lettres, Médecine, Sciences'. www.sorbonne-universite.fr. Retrieved 2018-11-30.
- ^Curie, UPMC - Université Pierre et Marie. 'Jacques-Louis Lions Laboratory (LJLL) - UMR 7598 - SCIENCE'. sciences.sorbonne-universite.fr. Retrieved 2018-11-30.
- ^Mathematica Documentation
- ^'Mathematica Quick Revision History'. Retrieved 2019-04-16.
- ^'Student Products - Free Simulation Software'. Ansys.com. Retrieved 2017-05-28.
- ^'NX Nastran: Siemens PLM Software'. Plm.automation.siemens.com. Retrieved 2017-05-28.
- ^'Free Student License Dlubal Software'. Dlubal.com. Retrieved 2017-05-28.
- ^'Plans & Pricing - SimScale Simulation Platform'. Simscale.com. Retrieved 2017-05-28.
- ^'Browsing VisualFEA (Finite Element Analysis) by Title'. Ecommons.cornell.edu. 2016-03-01. Retrieved 2017-05-28.
- ^GitHub For ease of maintaince of this table, please, first consider to contribute changes directly to the project instead of editing the table below, however, direct wiki edits are also valid and will be backported