3.4 Preconditioner data structure

Our base library offers support for simple well known preconditioners like Diagonal Scaling or Block Jacobi with incomplete factorization ILU(0).

A preconditioner is held in the psb_prec_type data structure reported in figure 4. The psb_prec_type data type may contain a simple preconditioning matrix with the associated communication descriptor.The internal preconditioner is allocated appropriately with the dynamic type corresponding to the desired preconditioner.


 
  type psb_Tprec_type  
    class(psb_T_base_prec_type), allocatable :: prec  
  end type psb_Tprec_type  


Listing 4: The PSBLAS defined data type that contains a preconditioner.