Finite Element Embedded Library in C++

Feel++ is a C++ library for partial differential equation solves using generalized Galerkin methods such as the finite element method, the h/p finite element method, the spectral element method or the reduced basis method.

Placeholder

Versatile

A large range of numerical methods to solve partial differential equations Tell me more…

Powerful

Support for high performance computing up to thousands of cores. Tell me more…

Placeholder
Placeholder

Expressive

A language for variational formulations embedded into C++ for maximal mathematical expressivity Tell me more…

Finite Element Embedded Library in C++

Feel++ is a C++ library for partial differential equation solves using generalized Galerkin methods such as the finite element method, the h/p finite element method, the spectral element method or the reduced basis method.


Versatile

A large range of numerical methods to solve partial differential equations Tell me more…

Placeholder

Powerful

Support for high performance computing up to thousands of cores. Tell me more…

Placeholder

Expressive

A language for variational formulations embedded into C++ for maximal mathematical expressivity Tell me more…

Placeholder
0
Three Full Time Engineers

0
Phd Students

0
Toolboxes

0
Consortium

Features

Domain Specific Embedded Language in C++
for the Finite Element Method


Feel++ embeds in C++ mathematical concepts through a DSEL enabling expressive


  • Supports 1D to 3D as well as curves and surfaces including high order.
  • Supports mesh partitioning and fast i/o for large scale meshes
  • Supports mesh extraction and efficient operations between related meshes
  • Supports function spaces with a large range of finite elements.
  • Supports seamless interpolation between meshes
  • Supports cartesian product of spaces, views on subspaces and subelements
  • Supports bilinear and linear forms concepts.
  • Supports forms on cartesian product spaces
  • Supports block forms on different spaces
  • Supports high order meshes and approximations.
  • Supports various formats: ensight, vtk, xdmf, gmsh
  • Supports post-processing quantities such as average values

Galerkin Methods

Continuous Galerkin


Reduced Basis


Hybrid Methods


Levelset Methods


Hybrid Discontinuous Galerkin


Fictitious Domain Methods


A large range of numerical methods to support of large range of applications in fluid mechanics, solid mechanics, heat transfert, blood rheology, eye modeling and simulation and electro-magnetism.

Scalable

Feel++ uses MPI for parallel computing. Regarding algebraic solutions Feel++ uses PETSc as the main backend for large scale computations



Toolboxes

Monophysics Toolboxes

Computational Fluid Dynamics

Placeholder

Heat Transfer

Placeholder

Computational Solid Mechanics

Placeholder

Multiphysics Toolboxes

Fluid Structure Interaction

FSI

Aerothermics

Placeholder

ThermoElectric

ThermoMechanics (Soon)

Maxwell (Soon)

 
Computational Fluid DynamicsComputational Solid MechanicsFluid Structure InteractionHeat Transfer

A wide range of Applications


Feel++ comes with toolboxes providing a multiphysics simulation environment: CFD, CSM, FSI, Heat Transfer, Thermo-Electric


Certified Real-Time Simulations with
Feel++ 4FastSim


Download

We provide, with Docker, images of the Feel++ libraries, basic applications and toolboxes

feelpp-libs


Feel++ Libraries and development environment is available from Docker Hub. It includes a mesh partitioner that generates partitioned mesh that can be read e.g. on a supercomputer in an efficient way.

docker pull feelpp/feelpp-libs

feelpp-base


The feelpp-base image contains the Feel++ libraries and environment as well as some basic application such as solving the Laplacian in 2D or 3D or Stokes in 2D with some testcases .

docker pull feelpp/feelpp-base

feelpp-toolboxes


The feelpp-toolboxes image contains the Feel++ libraries and environement, the basic applications and the toolboxes in Computational Fluid Dynamics/CFD, Computational Solid Mechanics/CSM, Fluid Structure Interaction/FSI, Heat Transfer/HT and Thermo-Electric/TE .

docker pull feelpp/feelpp-toolboxes