first try with PETSc code for operator