[petsc-users] FETI-DP implementation and call sequence

Barry Smith bsmith at mcs.anl.gov
Thu Sep 4 07:07:55 CDT 2014


   If you are referring to https://bitbucket.org/petsc/petsc-dev please ignore it; that it is an outdated item that should have been removed a long time ago. Sorry for the confusion.

   You should start with the git repository https://bitbucket.org/petsc/petsc that should have all the branches you need.

  Barry


On Sep 4, 2014, at 6:42 AM, Alp Kalpalp <alpkalpalp at gmail.com> wrote:

> Hi,
> 
> Although I am experienced on C++ development on windows by using SVN, I need to learn too much things to use this algorithm I think.(petsc, debugging in linux, git, hg etc.) 
> So, sorry for the rookie questions in advance.
> 
> You suggested me to use development version ----> petsc-dev (I believe I will compile and use it similar to petsc version of it), however it seems it has no branch named as "master", "next" or "stefano_zampini/pcbddc-primalfixes"
> 
> These branches exist in "petsc" repo. Is it possible to merge petsc-dev and "stefano_zampini/pcbddc-primalfixes"
> petsc-dev is hg, petsc is git !
> 
> or am I get it totaly wrong! I am confused.
> 
> Could someone explain me the development hierarchy in petsc? what is petsc-dev and why it has no branches? 
> 
> 
> On Wed, Sep 3, 2014 at 6:18 PM, Stefano Zampini <stefano.zampini at gmail.com> wrote:
> 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.
> 
> That said, you can experiment with FETI-DP only after having setup a BDDC preconditioner with the options and customization you prefer.
> Use http://www.mcs.anl.gov/petsc/petsc-dev/docs/manualpages/KSP/index.html for manual pages.
>  
> For an 'how to' with FETIDP, please see src/ksp/ksp/examples/tutorials/ex.59.c as Jed told you, specifically look at ComputeKSPFETIDP for obtaining the FETIDP matrix F (implemented Matrix-free) and the optimal FETIDP dirichlet preconditioner. Once you have F, you 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.
> 
> I would recommend you to use the development version of the library and either use the ‘next’ branch or the ‘master' branch after having merged in the branch stefano_zampini/pcbddc-primalfixes. Note that ‘next’ also contains the new deluxe scaling operator for BDDC which is not available to use with FETI-DP.
> 
> 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.
> 
> Stefano
> 
> 
> On Sep 3, 2014, at 5:19 PM, Jed Brown <jed at jedbrown.org> wrote:
> 
>> Matthew Knepley <knepley at gmail.com> writes:
>>>> 1- Is it possible to complete a FETI-DP solution with the provided
>>>> functions in current PetSc release?
>>>> 
>>> 
>>> There is no FETI-DP in PETSc. 
>> 
>> Wrong.  There is PCBDDC, which has the same eigenvalues as FETI-DP.  You
>> can enable it by configuring --with-pcbddc.  This will be turned on by
>> default soon.  It is fairly new, so you should use the branch 'master'
>> instead of the release.  It has an option to do FETI-DP instead of BDDC.
>> See src/ksp/ksp/examples/tutorials/ex59.c.
>> 
>> For either of these methods, you have to assemble a MATIS.  If you use
>> MatSetValuesLocal, most of your assembly code can stay the same.
>> 
>> Hopefully we can get better examples before the next release.  Stefano
>> (the author of PCBDDC, Cc'd) tests mostly with external packages, but we
>> really need more complete tests within PETSc.
> 
> 



More information about the petsc-users mailing list