<div dir="ltr"><div><div><div><div><div>Dear Stefano,<br><br></div>I have checked out "master" branch and merged with <span style="background-color:rgb(255,255,255)"><span style="line-height:1.4">your stefano_zampini/pcbddc-primalfixe branch. configured, compiled and all tests are completed successfully. <br>
Then, I tried to compile ex59 with make ex59, it results in unresolved external error. I believe your bddc_feti files are not included in compilation. <br>Since I am not experienced on how to solve issues in Petsc, I need to ask several questions;<br>
<br></span></span></div><span style="background-color:rgb(255,255,255)"><span style="line-height:1.4">1-) Are there any global settings to add additonal directories to compilation (src\ksp\pc\impls\bddc)<br></span></span></div>
<span style="background-color:rgb(255,255,255)"><span style="line-height:1.4">2-) or should I include these files on top of ex59 (AFAIK, including .c files is not a good thing)<br></span></span></div><span style="background-color:rgb(255,255,255)"><span style="line-height:1.4">3-) and finally what is the better way of helping you (creating another branch from yours or what)<br>
<br></span></span></div><span style="background-color:rgb(255,255,255)"><span style="line-height:1.4">Thanks in advance<br></span></span><div><div><div><div><div><div><span style="background-color:rgb(255,255,255)"><span style="line-height:1.4"><br>
<br><br><br></span></span></div></div></div></div></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Sep 3, 2014 at 6:18 PM, Stefano Zampini <span dir="ltr"><<a href="mailto:stefano.zampini@gmail.com" target="_blank">stefano.zampini@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div>FETIDP is in PETSc as a byproduct of the BDDC preconditioner (one is the dual of the other) and it does not have its own classes so far.</div>
<div><br></div><div>That said, you can experiment with FETI-DP only after having setup a BDDC preconditioner with the options and customization you prefer.</div><div>Use <a href="http://www.mcs.anl.gov/petsc/petsc-dev/docs/manualpages/KSP/index.html" target="_blank">http://www.mcs.anl.gov/petsc/petsc-dev/docs/manualpages/KSP/index.html</a> for manual pages.</div>
<div> </div><div>For an 'how to' with FETIDP, please see src/ksp/ksp/examples/tutorials/ex.59.c as Jed told you, specifically look at <span style="background-color:rgb(255,255,255);line-height:1.4">C</span><span style="background-color:rgb(255,255,255)"><span style="line-height:1.4">omputeKSPFETIDP for obtaining the FETIDP matrix F (implemented Matrix-free) and the optimal FETIDP dirichlet preconditioner. Once you have F, y</span></span><span style="line-height:1.4;background-color:rgb(255,255,255)">ou can use PCBDDCMatFETIDPGetRHS and PCBDDCMatFetiDPGetSolution to obtain a right-hand side for the FETIDP system and a physical solution from the solution of the FETIDP system.</span></div>
<div><span style="background-color:rgb(255,255,255)"><span style="line-height:1.4"><br></span></span></div><div><span style="background-color:rgb(255,255,255)"><span style="line-height:1.4">I would recommend </span><span style="line-height:1.4">you to use the development version of the library and either use the </span><span style="line-height:16px">‘</span><span style="line-height:1.4">next</span><span style="line-height:16px">’</span><span style="line-height:1.4"> branch or the </span><span style="line-height:16px">‘</span><span style="line-height:1.4">master' branch after having merged in the branch stefano_zampini/pcbddc-primalfixes. </span></span><span style="line-height:1.4">Note that </span><span style="line-height:16px">‘</span><span style="line-height:1.4">next</span><span style="line-height:16px">’</span><span style="line-height:1.4"> also contains the </span><span style="line-height:16px">new</span><span style="line-height:1.4"> deluxe scaling operator for BDDC which is not available to use with FETI-DP.</span></div>
<div><br></div><div>If you have any other questions which can be useful for other PETSc users, please use the mailing list; otherwise you can contact me personally.</div><span class="HOEnZb"><font color="#888888"><div><br>
</div><div>Stefano</div></font></span><div><div class="h5"><div><div><div><br></div><div><br></div><div>On Sep 3, 2014, at 5:19 PM, Jed Brown <<a href="mailto:jed@jedbrown.org" target="_blank">jed@jedbrown.org</a>> wrote:</div>
<br><blockquote type="cite">Matthew Knepley <<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>> writes:<br><blockquote type="cite"><blockquote type="cite">1- Is it possible to complete a FETI-DP solution with the provided<br>
functions in current PetSc release?<br><br></blockquote><br>There is no FETI-DP in PETSc. <br></blockquote><br>Wrong. There is PCBDDC, which has the same eigenvalues as FETI-DP. You<br>can enable it by configuring --with-pcbddc. This will be turned on by<br>
default soon. It is fairly new, so you should use the branch 'master'<br>instead of the release. It has an option to do FETI-DP instead of BDDC.<br>See src/ksp/ksp/examples/tutorials/ex59.c.<br><br>For either of these methods, you have to assemble a MATIS. If you use<br>
MatSetValuesLocal, most of your assembly code can stay the same.<br><br>Hopefully we can get better examples before the next release. Stefano<br>(the author of PCBDDC, Cc'd) tests mostly with external packages, but we<br>
really need more complete tests within PETSc.<br></blockquote></div><br></div></div></div></div></blockquote></div><br></div>