27 use,
intrinsic :: iso_fortran_env
48 use,
intrinsic :: iso_fortran_env
49 use,
intrinsic :: iso_c_binding, only: c_ptr
51 real(real64),
contiguous,
intent(in) :: x(:)
52 real(real64),
contiguous,
intent(out) :: y(:)
53 type(c_ptr),
intent(in) :: userdata(:)
56 use,
intrinsic :: iso_fortran_env
57 use,
intrinsic :: iso_c_binding, only: c_ptr
59 complex(real64),
contiguous,
intent(in) :: x(:)
60 complex(real64),
contiguous,
intent(out) :: y(:)
61 type(c_ptr),
intent(in) :: userdata(:)
66 real(real64) :: ddotp_i
67 real(real64),
intent(in) :: x(:)
68 real(real64),
intent(in) :: y(:)
73 real(real64),
intent(in) :: x(:)
74 real(real64) :: dnrm_i
79 complex(real64),
intent(in) :: x(:)
80 complex(real64),
intent(in) :: y(:)
81 complex(real64) :: zdotp_i
86 complex(real64),
intent(in) :: x(:)
87 real(real64) :: znrm_i
117#include "complex.F90"
118#include "solvers_inc.F90"
122#include "solvers_inc.F90"
This module contains interfaces for BLAS routines You should not use these routines directly....
This module is intended to contain "only mathematical" functions and procedures.
subroutine zsym_conjugate_gradients(np, x, b, op, dotp, iter, residue, threshold, userdata)
The two following subroutines, sym_conjugate_gradients, and bi_conjugate_gradients,...
subroutine dbi_conjugate_gradients(np, x, b, op, opt, dotp, iter, residue, threshold, userdata)
complex(real64) function, dimension(size(b, 1), size(b, 2)), public zidrs(b, s, preconditioner, matrixvector, ddotprod, zdotprod, tolerance, maximum_iterations, variant, flag, relres, iterations, x0, U0, omega, resvec, H)
This is the "Induced Dimension Reduction", IDR(s) (for s=4). IDR(s) is a robust and efficient short r...
real(real64) function, dimension(size(b, 1), size(b, 2)), public didrs(b, s, preconditioner, matrixvector, ddotprod, zdotprod, tolerance, maximum_iterations, variant, flag, relres, iterations, x0, U0, omega, resvec, H)
This is the "Induced Dimension Reduction", IDR(s) (for s=4). IDR(s) is a robust and efficient short r...
subroutine, public dqmr_sym_gen_dotu(np, x, b, op, dotu, nrm2, prec, iter, userdata, residue, threshold, showprogress, converged, use_initial_guess)
for complex symmetric matrices W Chen and B Poirier, J Comput Phys 219, 198-209 (2006)
subroutine, public zqmr_sym_gen_dotu(np, x, b, op, dotu, nrm2, prec, iter, userdata, residue, threshold, showprogress, converged, use_initial_guess)
for complex symmetric matrices W Chen and B Poirier, J Comput Phys 219, 198-209 (2006)
subroutine, public zqmr_gen_dotu(np, x, b, op, opt, dotu, nrm2, prec, prect, iter, userdata, residue, threshold, showprogress, converged)
for general complex matrices taken from 'An Implementation of the QMR Method based on Coupled Two-Ter...
subroutine, public dqmr_gen_dotu(np, x, b, op, opt, dotu, nrm2, prec, prect, iter, userdata, residue, threshold, showprogress, converged)
for general complex matrices taken from 'An Implementation of the QMR Method based on Coupled Two-Ter...
subroutine dsym_conjugate_gradients(np, x, b, op, dotp, iter, residue, threshold, userdata)
The two following subroutines, sym_conjugate_gradients, and bi_conjugate_gradients,...
subroutine zbi_conjugate_gradients(np, x, b, op, opt, dotp, iter, residue, threshold, userdata)