[petsc-users] Iterative solution for schur complement

Umut Tabak u.tabak at tudelft.nl
Wed Aug 14 15:56:50 CDT 2013


On 08/14/2013 10:37 PM, Jed Brown wrote:
> Umut Tabak <u.tabak at tudelft.nl> writes:
>
>> Dear all,
>>
>> I am looking at a system where I am trying to investigate this
>> ill-conditioned problem with some iterative tricks or not. Namely, the
>> system that I try to solve is
>>
>> (B - C^T A^{-1}C) x2 = b2
>>
>> which results from block symmetric representation
>>
>> A  C
>> C^T B
> What physics do you have here?
Hi Jed,

'A' results from the discretization of structural field equations which 
is also ill-conditioned. More specifically, it is (Ks-a*Ms) where Ks and 
Ms are stiffness and mass matrices of the structural domain.
However, 'B' results from the discretization of the Helmholtz operator 
for the fluid domain. It is also similarly represented as (Kf-a*Mf) as 
above.
>
> Both CG and MINRES require an SPD preconditioner.  It sounds like B is a
> poor approximation to the Schur complement S = B - C^T A^{-1} C.
> Depending on your application area, there are a few classes of
> preconditioners that you might consider.  These include the
> least-squares commutator, physics-based approximate commutator,
> SIMPLE(R), and DD and multigrid methods applied directly to the
> indefinite problem.
Unfortunaltely, yes, even if I have the complete factor for B and even 
if C is a pretty sparse matrix, this is not a good preconditioner 
eventually, that is clear to me as well.

Before leaving these ideas, I am trying to convince myselft that this 
idea is not useful and cannot be improved further. But, as a poor 
engineer ;), I had the feeling that since the fluid part only includes 
one variable which is the pressure and the domain is homogeneous, I 
would expect some better ways to exist in order to solve this problem.

Since the domain is homogeneous, at least the fluid domain, and it is  
modelled with a scalar variable, I was thinking that scaling should not 
be a problem.

But, there is another important point, due to the modelling approach 
used Kf is a singular matrix with one zero eigenvalue(and this is always 
the case for a specific type of boundary condition which is the hard 
wall condition) and Mf is pretty well conditioned as a standalone 
matrix. The source of the problem is writing representing B as (Kf-a*Mf) 
or as (Kf/a-Mf) in the original block diagonal representation.

Can you figure out something more after these explanations? What would 
you suggest as a first try and, maybe, a couple of more?
Thanks,
Umut


More information about the petsc-users mailing list