Divided diffusion terms into seperate methods for ease in debugging.