[petsc-users] Accessing Vector's ghost values
Bojan Niceno
bojan.niceno at psi.ch
Thu Feb 23 12:28:10 CST 2012
On 2/23/2012 7:24 PM, Matthew Knepley wrote:
> On Thu, Feb 23, 2012 at 12:05 PM, Bojan Niceno <bojan.niceno at psi.ch
> <mailto:bojan.niceno at psi.ch>> wrote:
>
> Dear Matthew,
>
>
> thank you for your response. When I use VecCreateGhost, I get the
> following:
>
>
> It appears that you passed a bad communicator. Did you not initialize
> a 'comm' variable?
I pass PETSC_COMM_WORLD to VecCreateGhost.
I don't know what you mean by 'comm' variable :-( I called all the
routines to initialize PETSc.
Cheers,
Bojan
>
> Matt
>
> [0]PETSC ERROR:
> ------------------------------------------------------------------------
> [0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation
> Violation, probably memory access out of range
> [0]PETSC ERROR: Try option -start_in_debugger or
> -on_error_attach_debugger
> [0]PETSC ERROR: or see
> http://www.mcs.anl.gov/petsc/petsc-as/documentation/faq.html#valgrind[0]PETSC
> ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS X
> to find memory corruption errors
> [0]PETSC ERROR: likely location of problem given in stack below
> [0]PETSC ERROR: --------------------- Stack Frames
> ------------------------------------
> [0]PETSC ERROR: Note: The EXACT line numbers in the stack are not
> available,
> [0]PETSC ERROR: INSTEAD the line number of the start of the
> function
> [0]PETSC ERROR: is given.
> [0]PETSC ERROR: [0] PetscCommDuplicate line 140 src/sys/objects/tagm.c
> [0]PETSC ERROR: [0] PetscHeaderCreate_Private line 30
> src/sys/objects/inherit.c
> [0]PETSC ERROR: [0] VecCreate line 32
> src/vec/vec/interface/veccreate.c
> [0]PETSC ERROR: [0] VecCreateGhostWithArray line 567
> src/vec/vec/impls/mpi/pbvec.c
> [0]PETSC ERROR: [0] VecCreateGhost line 647
> src/vec/vec/impls/mpi/pbvec.c
> [0]PETSC ERROR: --------------------- Error Message
> ------------------------------------
> [0]PETSC ERROR: Signal received!
> [0]PETSC ERROR:
> ------------------------------------------------------------------------
> [0]PETSC ERROR: Petsc Release Version 3.2.0, Patch 6, Wed Jan 11
> 09:28:45 CST 2012
> [0]PETSC ERROR: See docs/changes/index.html for recent updates.
> [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
> [0]PETSC ERROR: See docs/index.html for manual pages.
> [0]PETSC ERROR:
> ------------------------------------------------------------------------
> [0]PETSC ERROR: ./PSI-Flow on a arch-linu named lccfd06 by niceno
> Thu Feb 23 19:02:45 2012
> [0]PETSC ERROR: Libraries linked from
> /homecfd/niceno/PETSc-3.2-p6/arch-linux2-c-debug/lib
> [0]PETSC ERROR: Configure run at Fri Feb 10 10:24:13 2012
> [0]PETSC ERROR: Configure options
> [0]PETSC ERROR:
> ------------------------------------------------------------------------
> [0]PETSC ERROR: User provided function() line 0 in unknown
> directory unknown file
>
> I don't understand what could be causing it. I took very good
> care to match the global numbers of ghost cells when calling
> VecCreateGhost
>
>
> Kind regards,
>
>
> Bojan
>
>
> On 2/23/2012 5:53 PM, Matthew Knepley wrote:
>> On Thu, Feb 23, 2012 at 10:46 AM, Bojan Niceno
>> <bojan.niceno at psi.ch <mailto:bojan.niceno at psi.ch>> wrote:
>>
>> Hi all,
>>
>> I've never used a mailing list before, so I hope this message
>> will reach PETSc users and experts and someone might be
>> willing to help me. I am also novice in PETSc.
>>
>> I have developed an unstructured finite volume solver on top
>> of PETSc libraries. In sequential, it works like a charm.
>> For the parallel version, I do domain decomposition
>> externally with Metis, and work out local and global
>> numberings, as well as communication patterns between
>> processor. (The latter don't seem to be needed for PETSc,
>> though.) When I run my program in parallel, it also works,
>> but I miss values in vectors' ghost points.
>>
>> I create vectors with command: VecCreate(PETSC_COMM_WORLD, &x);
>>
>> Is it possible to get the ghost values if a vector is created
>> like this?
>>
>>
>> I do not understand this question. By definition, "ghost values"
>> are those not stored in the global vector.
>>
>> I have tried to use VecCreateGhost, but for some reason which
>> is beyond my comprehension, PETSc goes berserk when it
>> reaches the command: VecCreateGhost(PETSC_COMM_WORLD, n,
>> PETSC_DECIDE, nghost, ifrom, &x)
>>
>>
>> I think you can understand that "berserk" tells me absolutely
>> nothing. Error message? Stack trace? Did you try to run an
>> example which uses VecGhost?
>>
>> Thanks,
>>
>> Matt
>>
>> Can anyone help me? Either how to reach ghost values for
>> vector created by VecCreate, or how to use VecCreateGhost
>> properly?
>>
>>
>> Kind regards,
>>
>> Bojan
>>
>>
>>
>>
>> --
>> What most experimenters take for granted before they begin their
>> experiments is infinitely more interesting than any results to
>> which their experiments lead.
>> -- Norbert Wiener
>
>
> --
>
>
>
>
> --
> What most experimenters take for granted before they begin their
> experiments is infinitely more interesting than any results to which
> their experiments lead.
> -- Norbert Wiener
--
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120223/cfc35dd2/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 6515 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120223/cfc35dd2/attachment.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Signature.png
Type: image/png
Size: 6515 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120223/cfc35dd2/attachment-0001.png>
More information about the petsc-users
mailing list