Q:

Solving Advection (Convection) - Diffusion - Reaction Partial Differential Equation in Python

I am looking for library written in Python which will enable me to solve the coupled nonlinear equations which looks like:

I need the library which will enable me to couple this solver to other models. For instance, I would like to impose different boundary conditions and change them in time (at any time step) as well as access to vector of solution at each time step and have possibility to change it (for instance, to implement non-local transport). 
Other "wishes":

fast
To have possibility of parallel solving.
and if possible easy to use.

Thank you in advance!

A:

I suggest taking a look at FiPy:
http://www.ctcms.nist.gov/fipy/
It uses the finite-volume method, is written in Python,
has certainly been used to solve the class of problems you describe, and was
designed with flexibility in mind. 
The documentation seems relatively good to me
and the authors are responsive to requests for help via a mailing list. 

