The parallel solution of the 3D heat conduction equation using PETSc results in errors

I think that you are falling into the trap of varf-on, see

For your heat definition you should probably change the sign of the rhs parts:
+int3d(Th)( Cv/dt * Told * Tv )
+int3d(Th)( Joule * Tv )