ASPECT
Public Member Functions | Private Attributes | List of all members
aspect::internal::BlockSchurPreconditioner< AInvOperator, SInvOperator, BTOperator, VectorType > Class Template Reference
Inheritance diagram for aspect::internal::BlockSchurPreconditioner< AInvOperator, SInvOperator, BTOperator, VectorType >:
Inheritance graph
[legend]

Public Member Functions

 BlockSchurPreconditioner (const AInvOperator &A_inverse_operator, const SInvOperator &S_inverse_operator, const BTOperator &BT_operator)
 Constructor. More...
 
void vmult (VectorType &dst, const VectorType &src) const
 

Private Attributes

const AInvOperator & A_inverse_operator
 
const SInvOperator & S_inverse_operator
 
const BTOperator & BT_operator
 

Detailed Description

template<class AInvOperator, class SInvOperator, class BTOperator, class VectorType>
class aspect::internal::BlockSchurPreconditioner< AInvOperator, SInvOperator, BTOperator, VectorType >

Implement the block Schur preconditioner (A B^T; 0 S)^{-1}.

Definition at line 33 of file block_stokes_preconditioner.h.

Constructor & Destructor Documentation

§ BlockSchurPreconditioner()

template<class AInvOperator , class SInvOperator , class BTOperator , class VectorType >
aspect::internal::BlockSchurPreconditioner< AInvOperator, SInvOperator, BTOperator, VectorType >::BlockSchurPreconditioner ( const AInvOperator &  A_inverse_operator,
const SInvOperator &  S_inverse_operator,
const BTOperator &  BT_operator 
)

Constructor.

Parameters
A_inverse_operatorApproximation of the inverse of the velocity block.
S_inverse_operatorApproximation for the inverse Schur complement.
BToperatorOperator for the B^T block of the Stokes system.

Definition at line 66 of file block_stokes_preconditioner.h.

References aspect::internal::BlockSchurPreconditioner< AInvOperator, SInvOperator, BTOperator, VectorType >::vmult().

Member Function Documentation

§ vmult()

template<class AInvOperator , class SInvOperator , class BTOperator , class VectorType >
void aspect::internal::BlockSchurPreconditioner< AInvOperator, SInvOperator, BTOperator, VectorType >::vmult ( VectorType &  dst,
const VectorType &  src 
) const

Member Data Documentation

§ A_inverse_operator

template<class AInvOperator , class SInvOperator , class BTOperator , class VectorType >
const AInvOperator& aspect::internal::BlockSchurPreconditioner< AInvOperator, SInvOperator, BTOperator, VectorType >::A_inverse_operator
private

References to the various operators this preconditioner works with.

Definition at line 58 of file block_stokes_preconditioner.h.

Referenced by aspect::internal::BlockSchurPreconditioner< AInvOperator, SInvOperator, BTOperator, VectorType >::vmult().

§ S_inverse_operator

template<class AInvOperator , class SInvOperator , class BTOperator , class VectorType >
const SInvOperator& aspect::internal::BlockSchurPreconditioner< AInvOperator, SInvOperator, BTOperator, VectorType >::S_inverse_operator
private

§ BT_operator

template<class AInvOperator , class SInvOperator , class BTOperator , class VectorType >
const BTOperator& aspect::internal::BlockSchurPreconditioner< AInvOperator, SInvOperator, BTOperator, VectorType >::BT_operator
private

The documentation for this class was generated from the following file: