The FEniCS project comprises a number of tools facilitating the computation of finite element based discretisations of partial differential equations. It does not limit the user to a subset of physics and engineering problems.
This generalisation is a blessing and a curse: the user has full control over the underlying numerical method, at the cost of no “black box” solution. The user must have a good foundation in the mathematics of numerical and variational methods.
You can find a number of documented and undocumented examples in the DOLFIN demos.
Thank you, I understand that this can be very flexible and of course challenging at the same time. But it should also be a useful learning experience.
I will try to find some relevant examples. If any users have tried something similar in the past I would be very glad to see some examples (for example using Maxwell equations to solve some kind of nanophotonics problem).