Demonstration of implicit time stepping with Petsc along with OpenCL to perform residual evaluation