<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Thanks a lot for the reply.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">From my understanding and specifically for my problem I would have to use the AMGSetDofFunc as follows:<br></div></div><div><br></div><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">nsyseq = 3;</div></div><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><span style="font-size:12.8px">for (i=0; i<nsyseq; i++)</span></div><div style="font-size:12.8px"><font face="arial, helvetica, sans-serif"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;display:inline"> </div>for (k=0; k<<div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;display:inline">N</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;display:inline"></div>; k++)<div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;display:inline"> // N: number of nodes</div></font></div><div style="font-size:12.8px"><font face="arial, helvetica, sans-serif"> {</font></div><div style="font-size:12.8px"><font face="arial, helvetica, sans-serif"> <div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;display:inline"> </div>eqnIndex[i*<div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;display:inline">N</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;display:inline"></div>+k] = i;</font></div><div style="font-size:12.8px"><font face="arial, helvetica, sans-serif"> }</font></div><div style="font-size:12.8px"><span style="font-family:arial,helvetica,sans-serif;font-size:12.8px">HYPRE_BoomerAMGSetDofFunc(</span><wbr style="font-family:arial,helvetica,sans-serif;font-size:12.8px"><span style="font-family:arial,helvetica,sans-serif;font-size:12.8px">preconditioner, eqnIndex);</span><span style="font-family:arial,helvetica,sans-serif;font-size:small"></span></div><br></div><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">For a system of 3 PDEs (e.g. linear elasticity in 3D) the default behaviour of the nodal coarsening in BoomerAMG, considers an array that is filled with</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">eqnIndex = 0 1 2 0 1 2 0 1 2....0 1 2</div></div><div><br></div><div> > HYPRE_BoomerAMGSetDofFunc</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
I could not find an indication of that this is suppose to be setting; it is mentioned in the users manual but I don't know what it means. It looks like it takes an integer array but I don't even know how long that array is.<br>
<br>
If you figure out what it means and can add support for it we'll take it as a pull request.</blockquote><div><br></div><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">OK Barry, I will try to specify the block size of the matrix.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">But I'm not sure if the block size would be 3 or N (number of nodes).</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">This is my ordering of the displacements: [ux1, ux2, ..., uxN, uy1, uy2,...uyN, uz1, uz2, ..., uzN]</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">> HYPRE_BoomerAMGSetNumFunctions<br><br> Set the block size of the matrix; this information is then transferred automatically to hypre. Note that you can set a block size even for AIJ matrices.<br></blockquote><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Best regards,</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Bernardo</div></div></div></div></div>