psfun_z_quadrature Derived Type

type, public, extends(psfun_quadrature) :: psfun_z_quadrature


Inherits

type~~psfun_z_quadrature~~InheritsGraph type~psfun_z_quadrature psfun_z_quadrature type~psfun_quadrature psfun_quadrature type~psfun_z_quadrature->type~psfun_quadrature psb_dprec_type psb_dprec_type type~psfun_z_quadrature->psb_dprec_type prec psb_dspmat_type psb_dspmat_type type~psfun_z_quadrature->psb_dspmat_type a psb_desc_type psb_desc_type type~psfun_quadrature->psb_desc_type desc_a

Contents


Components

TypeVisibility AttributesNameInitial
type(psb_dspmat_type), public, pointer:: a

Matrix on which we work

complex(kind=psb_dpk_), public, allocatable, dimension(:):: c

Scaling of the formula

type(psb_desc_type), public :: desc_a

Descriptor for parallel environment

real(kind=psb_dpk_), public :: eta

Global Scaling

type(psb_dprec_type), public, pointer:: prec

Preconditioner for the solution of the associate linear systems

real(kind=psb_dpk_), public :: sign

Sign for

complex(kind=psb_dpk_), public, allocatable, dimension(:):: xi

Poles of the formula


Type-Bound Procedures

procedure, public, pass(quad) :: computepoles => psfun_z_computepoles

  • public subroutine psfun_z_computepoles(quad, quadformula, zfun, N, info, cparams, rparams)

    Compute the poles for a given combination of quadrature rule and quadrature formula

    Arguments

    Type IntentOptional AttributesName
    class(psfun_z_quadrature), intent(inout) :: quad

    Quadrature type

    procedure(zquadrule), intent(in), pointer:: quadformula

    Quadrature formula

    procedure(zquadfun), intent(in), pointer:: zfun

    Function to integrate

    integer(kind=psb_ipk_), intent(in) :: N

    Number of poles

    integer(kind=psb_ipk_), intent(out) :: info

    Flag on the results

    complex(kind=psb_dpk_), intent(in), optional dimension(:):: cparams

    Optional complex parameters

    real(kind=psb_dpk_), intent(in), optional dimension(:):: rparams

    Optional real parameters

procedure, public, pass(quad) :: plot => psfun_z_quadratureplot

  • public subroutine psfun_z_quadratureplot(quad, zfun, info, filename)

    Plots on the complex plane the quadrature poles, and plots the weights of the formula

    Arguments

    Type IntentOptional AttributesName
    class(psfun_z_quadrature), intent(in) :: quad

    Quadrature rule

    procedure(zquadfun), intent(in), pointer:: zfun

    Function to integrate

    integer(kind=psb_ipk_), intent(out) :: info
    character(len=*), intent(in), optional :: filename

generic, public :: set => setmatrix, setpreconditioner

  • public subroutine psfun_z_setmatrix(quad, a)

    Set the matrix for

    Arguments

    Type IntentOptional AttributesName
    class(psfun_z_quadrature), intent(inout) :: quad

    Quadrature type

    type(psb_dspmat_type), target:: a

    Matrix on which we work

  • public subroutine psfun_z_setpreconditioner(quad, prec)

    Set the preconditioner to use for the given quadrature formula

    Arguments

    Type IntentOptional AttributesName
    class(psfun_z_quadrature), intent(inout) :: quad

    Quadrature type

    type(psb_dprec_type), target:: prec

    Preconditioner for the solution of the associate linear systems

procedure, public, pass(quad) :: setmatrix => psfun_z_setmatrix

  • public subroutine psfun_z_setmatrix(quad, a)

    Set the matrix for

    Arguments

    Type IntentOptional AttributesName
    class(psfun_z_quadrature), intent(inout) :: quad

    Quadrature type

    type(psb_dspmat_type), target:: a

    Matrix on which we work

procedure, public, pass(quad) :: setpreconditioner => psfun_z_setpreconditioner

  • public subroutine psfun_z_setpreconditioner(quad, prec)

    Set the preconditioner to use for the given quadrature formula

    Arguments

    Type IntentOptional AttributesName
    class(psfun_z_quadrature), intent(inout) :: quad

    Quadrature type

    type(psb_dprec_type), target:: prec

    Preconditioner for the solution of the associate linear systems