[petsc-dev] [petsc-users] FETI-DP

Thomas Witkowski thomas.witkowski at tu-dresden.de
Wed May 4 08:36:37 CDT 2011


Jed Brown wrote:
> On Wed, Apr 20, 2011 at 17:15, Thomas Witkowski 
> <thomas.witkowski at tu-dresden.de 
> <mailto:thomas.witkowski at tu-dresden.de>> wrote:
>
>         They really can't because sometimes the Lagrange multiplier
>         itself will be stored on a different process. Also, this
>         representation has lots of empty rows where as storing B,
>         every row has entries (usually 2 entries).
>
>     Why could it happen to define a Lagrange multiplier, that
>     "connects" to subdomains, i.e. two processes, on a third process?
>
>
> Usually you would not choose this, but the Lagrange multiplier 
> connects two subdomains and is owned by only one process. The other 
> needs some communication to get its influence.
So, I have finished the implementation of the FETI-DP method (plus the 
Dirichlet preconditioner) for my FEM toolbox. It works really great, 
though I have implemented it till now for 2D only and have considered 
PDEs with at most constant null space. Thank you for your help.

For all of you who want to make it the same way and use the publications 
of Oliver Rheinbach, here a small note to avoid a small pitfall: In all 
of his publications the reduced FETI-DP system is written as

F \lambda = d

with

d = B_B inv(K_BB) f_B + B_B inv(K_BB) trans(K_PiB) inv(S_PiPi) (f_Pi - 
K_PiB inv(K_BB) f_B)

the first plus is wrong, must be a minus, so it is correctly

d = B_B inv(K_BB) f_B - B_B inv(K_BB) trans(K_PiB) inv(S_PiPi) (f_Pi - 
K_PiB inv(K_BB) f_B)

This very small mistake seems to root back to his Ph.D. thesis (see p. 
33, where the inverse of the matrix is written correctly, but definition 
of d is incorrect).

Thomas



More information about the petsc-dev mailing list