FEniCS is a free finite element software which has an extensive list of features for automated, efficient solution of differential equations, including automated solution of variational problems, automated error control and adaptivity, a comprehensive library of finite elements, high performance linear algebra and many more. The workshop will contain many tutorials on the use of FEniCS for solving PDE problems. The FEniCS website is the best place to start, where you can download extensive documentation, a complete book which is free to download, a shorter manual and of course the software itself.
The first chapter of the FEniCS book is an excellent introduction to what you can do with FEniCS. It is recommended to start here and try out the examples included in the book. It is also available as an online tutorial where you can download the tutorial programs also.
The easiest way to use FEniCS is through python. UFL is a form language used to express finite element variational formulations in FEniCS. The UFL manual can be very handy to lookup the syntax of the form language.
For help regarding FEniCS, there is a very active discussion forum where you can ask your questions.
Installation under ubuntu
It is very easy to install FEniCS on ubuntu. Follow the instructions here. To get the latest version of the software, use the method given under the section Ubuntu PPA.
FEniCS can generate meshes for simple geometries. To generate meshes for complicated domains which can be used in FEniCS, you can use the GMSH meshing software. Another meshing tool is NETGENwhich is however restricted to generating 3-d meshes only.
FEniCS has in built ability to visualize finite element solutions. But if you want to do more complicated visualizations, you can save the solution in the VTK format which can then be visualized using Paraview. VTK files can also be visualized using Mayavi or Visit.
On ubuntu, you can install netgen and mayavi using the following command
sudo apt-get install netgen netgen-doc mayavi2
or through the synaptic package manager.
Sample test program
In order to test your FEniCS installation, download a sample program which solves Laplace equation on a unit square from here. You can run this on the command line using
You should be able to see the mesh and result displayed on screen.
FEniCS Course Material