having just updated both petsc and petsc4py on my laptop (pulled latest revision of mapdes/firedrake branch in both cases, and I use the origin/multigrid-extrusion branch of firedrake), I get the error message below when I try to project an expression onto a DG function:
This issue only came up with the PETSc update I did, never seen it before.
Thanks a lot,
Eike
Error message:
Number of cells on finest grid = 5120 dx = 364.458 km, dt = 2429.717 s Traceback (most recent call last): File "driver.py", line 485, in <module> main(parameter_filename) File "driver.py", line 288, in main r_p.project(expression) File "/Users/eikemueller/PostDocBath/EllipticSolvers/firedrake/firedrake/function.py", line 135, in project return projection.project(b, self, *args, **kwargs) File "/Users/eikemueller/PostDocBath/EllipticSolvers/firedrake/firedrake/projection.py", line 94, in project form_compiler_parameters=form_compiler_parameters) File "/Users/eikemueller/PostDocBath/EllipticSolvers/firedrake/firedrake/solving.py", line 119, in solve _solve_varproblem(*args, **kwargs) File "/Users/eikemueller/PostDocBath/EllipticSolvers/firedrake/firedrake/solving.py", line 143, in _solve_varproblem solver.solve() File "<string>", line 2, in solve File "/Users/eikemueller/PostDocBath/EllipticSolvers/PyOP2/pyop2/profiling.py", line 197, in wrapper return f(*args, **kwargs) File "/Users/eikemueller/PostDocBath/EllipticSolvers/firedrake/firedrake/variational_solver.py", line 292, in solve self.snes.solve(None, v) File "SNES.pyx", line 516, in petsc4py.PETSc.SNES.solve (src/petsc4py.PETSc.c:153742) File "petscsnes.pxi", line 251, in petsc4py.PETSc.SNES_Function (src/petsc4py.PETSc.c:30058) File "/Users/eikemueller/PostDocBath/EllipticSolvers/firedrake/firedrake/variational_solver.py", line 138, in form_function v.array[:] = X_.array[:] File "Vec.pyx", line 815, in petsc4py.PETSc.Vec.array.__get__ (src/petsc4py.PETSc.c:91905) File "arraynpy.pxi", line 67, in petsc4py.PETSc.asarray (src/petsc4py.PETSc.c:7333) File "petscvec.pxi", line 469, in petsc4py.PETSc._Vec_buffer.__getreadbuffer__ (src/petsc4py.PETSc.c:19630) File "petscvec.pxi", line 459, in petsc4py.PETSc._Vec_buffer.getbuffer (src/petsc4py.PETSc.c:19460) petsc4py.PETSc.Error: error code 73 [0] SNESSolve() line 3832 in /Users/eikemueller/PostDocBath/EllipticSolvers/petsc/src/snes/interface/snes.c [0] SNESSolve_KSPONLY() line 24 in /Users/eikemueller/PostDocBath/EllipticSolvers/petsc/src/snes/impls/ksponly/ksponly.c [0] SNESComputeFunction() line 2035 in /Users/eikemueller/PostDocBath/EllipticSolvers/petsc/src/snes/interface/snes.c [0] VecGetArray() line 1646 in /Users/eikemueller/PostDocBath/EllipticSolvers/petsc/src/vec/vec/interface/rvector.c [0] Object is in wrong state [0] Vec is locked read only, argument # 1
--
Dr Eike Hermann Mueller Research Associate (PostDoc)
Department of Mathematical Sciences University of Bath Bath BA2 7AY, United Kingdom