On Fri, Dec 4, 2009 at 12:58 PM, Craig Tanis <span dir="ltr"><<a href="mailto:craig-tanis@utc.edu">craig-tanis@utc.edu</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
First of all, thanks for all the help on my recent questions! Here's a new one:<br>
<br>
I have multiple degrees of freedom per node in an unstructured mesh. I have set up an AO to get the PETSC ordering for these global nodes, and then a LocalToGlobalMapping to map local indices to these AO-renumbered global nodes. This appears to be working correctly.<br>
<br>
I create a Mat of type MATMPIBAIJ, and I use MatSetValuesBlockedLocal to add things to my matrix, as expected. I have some boundary conditions that require certain rows within certain blocks to be zeroed out. Conceptually, I would like to use MatZeroRowsLocal (which appears to operate on individual rows.. not on constituent blocks). The problem is that this call complains that I have not set a LocalToGlobalMapping (since I've only set the block one).<br>
<br>
Is it common (or even possible) to register a LocalToGlobalMapping a LocalToGlobalMappingBlock for a given Mat?<br>
Is there a way to extrapolate one from the other?<br></blockquote><div><br>The easiest thing to do is take your block l2g mapping and produce a row-wise l2g mapping by unrolling the<br>blocks. Set that in the matrix. Then the MatZeroRowsLocal will work.<br>
<br> Matt<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
If there is no way to Zero these rows individually, am I forced to get the block values, zero out the rows manually and then INSERT them back in?<br>
<br>
thanks again,<br>
<font color="#888888">Craig</font></blockquote></div>-- <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>