[MOAB-dev] DMMOAB (PETSc 3.5.1)

Gerd Heber gheber at hdfgroup.org
Tue Aug 19 10:13:28 CDT 2014


What's the best way to verify that? G.

-----Original Message-----
From: Vijay S. Mahadevan [mailto:vijay.m at gmail.com] 
Sent: Tuesday, August 19, 2014 9:58 AM
To: Gerd Heber
Cc: MOAB dev
Subject: Re: [MOAB-dev] DMMOAB (PETSc 3.5.1)

> DMMoabCreateVector(dm, existing_tag, PETSC_NULL, PETSC_TRUE, 
> PETSC_FALSE, &X)

Yes, this should preserve the values in X vector. There is currently an implementation quirk that underneath the MOAB specific Vec, we check whether the local entities (vertices) are numbered contiguously so that tag_iterate can be used. If that's not the case, it actually creates a native PETSc Vec underneath and manages the memory through that. I am working on a patch to remove this limitation but I'm not sure whether you have hit this issue now.

Can you just verify whether your local vertices in the mesh per processor are contiguously arranged ? i.e.,

P1: (1-10) P2: (11-20) instead of P1: (1-5,11-15), P2: (6-10, 16-20)

I will let you know once this patch is ready (along with a PR to track in PETSc) so that you can try it out.

Vijay

On Tue, Aug 19, 2014 at 9:49 AM, Gerd Heber <gheber at hdfgroup.org> wrote:
> Vijay, here's something that I find confusing, or maybe I'm just doing something wrong.
>
> I call
>
> DMMoabCreateVector(dm, existing_tag, PETSC_NULL, PETSC_TRUE, 
> PETSC_FALSE, &X)
>
> and would expect X to have the values of existing_tag (non-zero). But X's values are all zero.
> Is that the expected behavior?
>
> Thanks, G.
>
>
>
>


More information about the moab-dev mailing list