On Thu, Jul 14, 2011 at 5:31 PM, Kevin Green <span dir="ltr"><<a href="mailto:Kevin.Green@uoit.ca">Kevin.Green@uoit.ca</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
________________________________________<br>
From: <a href="mailto:petsc-users-bounces@mcs.anl.gov">petsc-users-bounces@mcs.anl.gov</a> [<a href="mailto:petsc-users-bounces@mcs.anl.gov">petsc-users-bounces@mcs.anl.gov</a>] On Behalf Of Jed Brown [<a href="mailto:jedbrown@mcs.anl.gov">jedbrown@mcs.anl.gov</a>]<br>
Sent: Monday, July 11, 2011 7:38 PM<br>
To: PETSc users list<br>
Subject: Re: [petsc-users] Field dependent stencil in DAs<br>
<br>
On Mon, Jul 11, 2011 at 18:28, Kevin Green <<a href="mailto:Kevin.Green@uoit.ca">Kevin.Green@uoit.ca</a><mailto:<a href="mailto:Kevin.Green@uoit.ca">Kevin.Green@uoit.ca</a>>> wrote:<br>
Essentially, I'm (currently) looking to numerically solve a system of 5 time dependent equations, but only 1 of the fields is involved with spatial derivatives. Now, I've found a couple of ways to do this, either by introducing a Field struct cf. ${PETSC_DIR}/src/snes/examples/tutorials/ex19.c, or by changing one of the various ts examples to use DAVecGetArrayDOF(...). Would there be any performance difference between introducing a Field struct compared to DAVecGetArrayDOF(...)? Intuitively, I would think not...but I suppose I should ask since I'm here anyway.<br>
<br>
I like using field structs because then I get to use names instead of numbers for my fields and because there is one less level of pointer indirection.<br>
<br>
<br>
Now the real reason I came: Is there some sort of mask that can be applied to the DAs that would turn off the communication of ghost points for some degrees of freedom? I assume that the communication structures are set up so that only a single message needs to be passed between communicating processes on update, but this still results in passing 5X the data that I have to. Any comment on this would be much appreciated.<br>
<br>
DMDASetBlockFills()<br>
<br>
<br>
Thank you Jed, this is exactly what I was looking for. In the most recent version, it appears to be named as just DASetBlockFills().<br>
</blockquote></div><br>Its DMDASetBlockFills() in petsc-dev, and DASetBlockFills() in petsc 3.1<div><br></div><div> Matt<br clear="all"><br>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener<br>
</div>