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 <[email protected]> wrote:

> Matthew Knepley <[email protected]> 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.

Reply via email to