Numerical Solution of Partial Differential Equations: An Introduction