IDRS Interface

public interface IDRS

Called by

interface~~idrs~~CalledByGraph interface~idrs IDRS program~helmholtz_2d helmholtz_2d program~helmholtz_2d->interface~idrs

Module Procedures

private function CIDRS(A, b, M1, s, tolerance, maximum_iterations, variant, flag, relres, iterations, x0, U0, omega, resvec, H)

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

Arguments

Type IntentOptional Attributes Name
type(matrix), intent(in) :: A
complex(kind=realdp), intent(in), allocatable :: b(:,:)
type(preconditioner), intent(in) :: M1
integer, intent(in) :: s
real(kind=realdp), intent(in), optional :: tolerance
integer, intent(in), optional :: maximum_iterations
character(len=8), intent(in), optional :: variant
integer, intent(out), optional :: flag
real(kind=realdp), intent(out), optional :: relres
integer, intent(out), optional :: iterations
complex(kind=realdp), intent(in), optional :: x0(:,:)
complex(kind=realdp), intent(in), optional :: U0(:,:,:)
complex(kind=realdp), intent(in), optional :: omega(:)
real(kind=realdp), intent(out), optional :: resvec(:)
complex(kind=realdp), intent(out), optional :: H(:,:)

Return Value complex(kind=realdp), (size(b,1),size(b,2))

private function RIDRS(A, b, M1, s, tolerance, maximum_iterations, variant, flag, relres, iterations, x0, U0, omega, H, resvec)

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

Arguments

Type IntentOptional Attributes Name
type(matrix), intent(in) :: A
real(kind=realdp), intent(in), allocatable :: b(:,:)
type(preconditioner), intent(in) :: M1
integer, intent(in) :: s
real(kind=realdp), intent(in), optional :: tolerance
integer, intent(in), optional :: maximum_iterations
character(len=8), intent(in), optional :: variant
integer, intent(out), optional :: flag
real(kind=realdp), intent(out), optional :: relres
integer, intent(out), optional :: iterations
real(kind=realdp), intent(in), optional :: x0(:,:)
real(kind=realdp), intent(in), optional :: U0(:,:,:)
real(kind=realdp), intent(in), optional :: omega(:)
real(kind=realdp), intent(out), optional :: H(:,:)
real(kind=realdp), intent(out), optional :: resvec(:)

Return Value real(kind=realdp), (size(b,1),size(b,2))