You can do this with FEniCS, but it needs to be programmed (by you). FEniCS is a library for programming solvers for PDEs so you need to figure out which method you are going to use, implement it, and then come back with specific questions on the implementation. Good luck with your project!