[petsc-users] Implementing Schur complement approach (domain decomposition)

Thomas Witkowski thomas.witkowski at tu-dresden.de
Wed Jan 26 06:51:07 CST 2011


I want to solve the equation in my FEM code (that makes already use of 
PETSc) with a Schur complement approach (iterative substructuring). 
Although I have some basic knowledge about PETSc, I have no good idea 
how to start with it. To concretize my question, I want to solve a 
system of the form

[A_II          A_IB]    *  [u_I]   =  [f_I]
[A_IB^T    A_BB]      [u_B]      [f_B]

A_II is a block diagonal matrix with each block consisting of all 
interior node of one partition. A_BB is the block consisting of all 
bounday nodes. A_IB is the connection between the interior and the 
bounday node. The same for the unknown vector u und the right hand side 
vector f. My first idea is not to assemble to matrices A_II, A_IB and 
A_BB in a global way, but just local and to define their action using a 
MatShell for each of these matrices. Okay, but what's about the global 
index of the whole system. Till now I have a continuous global index of 
the nodes on each partition, what is required by PETSC, if I'm right. 
But for using a Schur complement approach I need to split the index in 
the interior and the boundary nodes. Who to circumvent this (first of 
my) problem?

Thank you for any advise,

Thomas


More information about the petsc-users mailing list