Computational Partial Differential Equations by Hans P. Langtangen