presented at event 2nd annual meeting of the Canadian Society for Computational Science and Engineering Conference