<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Mar 20, 2017 at 9:33 PM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="gmail-"><br>
> On Mar 20, 2017, at 6:07 PM, Daralagodu Dattatreya Jois, Sathwik Bharadw <<a href="mailto:sdaralagodudatta@wpi.edu">sdaralagodudatta@wpi.edu</a>> wrote:<br>
><br>
> Hey all,<br>
><br>
</span>>  I am using  AIJ matrix to solve Laplace problem in finite element framework. To apply Neumann boundary conditions I need to obtain values of first and last few columns and subtract it with the corresponding right hand side vector. I understand that MatGetColumnVector andMatGetValues are not collective. Is there any other alternative petsc calls to achieve this in parallel?<br>
<br>
  Hmm, I think you mean non-zero Dirichlet boundary conditions. In that case the recommended approach is calling MatZeroRows() or if you want to preserve symmetry MatZeroRowsColumns(). There are also MatZeroRowsLocal() and MatZeroRowsColumnsLocal() and a few other variants.<br>
<br>
  Barry<br></blockquote><div><br></div><div><br></div><div>If we zero out rows AND columns using  MatZeroRowsColumns to preserve the symmetry, how we connect the non-zero boundary values with the interior solution?  </div><div><br></div><div>Fande, </div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
<br>
><br>
> Thanks,<br>
> Sathwik<br>
<br>
</blockquote></div><br></div></div>