<p>I assume you are using DA. One way is to use a periodic stencil so that the local vector has room for those points. Another is to never put them into an array (you don&#39;t really want them in the global system anyway, and the Jacobian still needs to differentiate through the process by which you decide what to put in those slots).</p>

<p>For something more complicated like immersed boundary methods, you will leave those points in and it might be impractical to differentiate through the computation of values at mirror points. The approximation you use will then affect convergence rate.</p>

<p>Jed</p>
<p><blockquote type="cite">On Aug 10, 2010 9:42 AM, &quot;Li, Zhisong (lizs)&quot; &lt;<a href="mailto:lizs@mail.uc.edu">lizs@mail.uc.edu</a>&gt; wrote:<br><br>




<div>
<div style="direction:ltr;font-family:Tahoma;color:rgb(0, 0, 0);font-size:13px">
<div> Hi, Petsc Team,<br>
<br>
In finite difference computations, we often utilize schemes of five or more points stencil in one direction. To calculate the interior point next to the boundary, we need to assume one point out of the domain by extrapolation (such as a mirror point). As we
 are required to include all interior points and boundary points in the system matrix, does Petsc have any feature to handle these mirror points ? In assembling the matrix for a 3D system of multiple variables and equations, besides setting up the boundary
 conditions, I think this will cost lots of extra effort to specially manage the points next to the boundary, if Petsc doesn&#39;t have any easy way to do this.<br>
<br>
Thank you.<br>
<br>
<br>
Zhisong Li <br>
</div>
</div>
</div>

</blockquote></p>