Problem with VecPlaceArray_MPI & VecResetArray
Eric Chamberland
Eric.Chamberland at giref.ulaval.ca
Fri Aug 8 16:03:00 CDT 2008
Hi,
I try to use the VecPlaceArray/VecResetArray functions.
Unfortunately, the call to VecPlaceArray only work the firsdt time I do
it, even if I call VecResetArray before the next call...
the code looks like this:
VecPlaceArray(vec, myvec);
...
VecResetArray(vec);
VecPlaceArray(vec, myvec2); /* PETSCERROR ON THIS LINE*/
The error I get is the following (from src/vec/vec/impls/seq/dvec2.c:975):
if (v->unplacedarray)
SETERRQ(PETSC_ERR_ARG_WRONGSTATE,"VecPlaceArray() was already called on
this vector, without a call to VecResetArray()");
After looking at the code, I found that MPI vectors where defining a
VecPlaceArray_MPI which call VecPlaceArray on the "child" v->localrep
(ref: src/vec/vec/impls/mpi/pbvec.c:79), but I haven't found an
"overload" of VecResetArray that would do the same work. Is that the
problem?
I am using PETSc 2.3.3-p6.
Thanks,
Eric
More information about the petsc-dev
mailing list