<div><div>What kind of boundary condition is this?</div><div>It is both Dirichlet and Neumann B.C. It uses trilinear interpolation to impose the correct boundary condition on the node based on the exact location of the interface. </div>
<div><br></div><div>In any case, you can create an independent DA of the same size as your original, but with a box stencil of width 3.  Then DAGetISLocalToGlobalMapping (generalized to DMGetLocalToGlobalMapping in petsc-dev) will give you access to those global indices.  You will likely have to adjust preallocation for these extra entries (unless, somehow strangely, interpolation actually uses no more points, just from different places).</div>
</div><div><br></div>That sounds like a good suggestion. I may do this as it seems to be the reasonable and easy way to go. <div>But regarding the memory allocation, </div><div>for all the regular nodes, for each row, that would be only 7 nonzeroes (STAR stencil). But for the special nodes (close to the boundaries), they need 9 nonzeros per row and that would not necessary follow the STAR stencil. </div>
<div>For example, for the node at (i,j,k) it might (depending on the normal direction of the solid surface) add the nonzeros at </div><div>(i,j,k)</div><div>(i+1,j+1,k)</div><div>(i+1,j+2,k)</div><div>(i+2,j+1,k)</div><div>
(i+2,j+2,k)</div><div><div>(i+1,j+1,k+1)</div><div>(i+1,j+2,k+1)</div><div>(i+2,j+1,k+1)</div><div>(i+2,j+2,k+1)</div></div><div><br></div><div>Do you think that would add a lot of extra memory allocation? </div><div>Thanks and have a good weekend, </div>
<div>Mohamad</div><div><br></div><div><br><div class="gmail_quote">On Fri, Dec 10, 2010 at 5:22 PM, Jed Brown <span dir="ltr">&lt;<a href="mailto:jed@59a2.org">jed@59a2.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im"><div class="gmail_quote">On Sat, Dec 11, 2010 at 02:14, Mohamad M. Nasr-Azadani <span dir="ltr">&lt;<a href="mailto:mmnasr@gmail.com" target="_blank">mmnasr@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Those nodes, do not follow Poisson equation anymore and they just obey some interpolation equations which might need nodes in the BOX stencil of width=3. </blockquote></div><br></div><div>What kind of boundary condition is this?</div>

<div><br></div><div>In any case, you can create an independent DA of the same size as your original, but with a box stencil of width 3.  Then DAGetISLocalToGlobalMapping (generalized to DMGetLocalToGlobalMapping in petsc-dev) will give you access to those global indices.  You will likely have to adjust preallocation for these extra entries (unless, somehow strangely, interpolation actually uses no more points, just from different places).</div>

</blockquote></div><br></div>