d_bpack_solve_mul Module Reference

Functions/Subroutines

subroutine d_bpack_eigen (bmat_A, option_A, ptree_A, stats_A, bmat_B, option_B, ptree_B, stats_B, bmat_sh, option_sh, ptree_sh, stats_sh, Nunk, Nunk_loc, nev, tol, CMmode, SI, shift, which, nconv, eigval, eigvec)
 **** eigen solver using ARPACK More...
 
subroutine d_bpack_convert2dense (bmat, option, stats, msh, ker, ptree)
 
subroutine d_bpack_eigen_dense (bmat, option, stats, msh, ker, ptree, eigval, eigvec)
 
subroutine d_bpack_solution (bmat, x, b, Ns_loc, num_vectors, option, ptree, stats)
 
subroutine d_bpack_md_solution (Ndim, bmat, x, b, Ns_loc, num_vectors, option, ptree, stats, msh)
 
subroutine d_bpack_ztfqmr_usermatvec_noprecon (ntotal, nn_loc, b, x, err, iter, r0_initial, blackbox_MVP, ptree, option, stats, ker)
 
subroutine d_bpack_md_ztfqmr_usermatvec_noprecon (Ndim, ntotal, nn_loc_MD, b, x, err, iter, r0_initial, blackbox_MVP, ptree, option, stats, ker)
 
subroutine d_bpack_ztfqmr (precond, ntotal, nn_loc, b, x, err, iter, r0_initial, bmat, ptree, option, stats)
 
subroutine d_bpack_md_ztfqmr (Ndim, precond, ntotal, nn_loc_md, b, x, err, iter, r0_initial, bmat, ptree, option, stats, msh)
 
subroutine d_bpack_applyprecon (precond, nn_loc, x, y, ptree, bmat, option, stats)
 
subroutine d_bpack_test_solve_error (bmat, N_unk_loc, option, ptree, stats)
 
subroutine d_bpack_inv_mult (trans, Ns, num_vectors, Vin, Vout, bmat, ptree, option, stats)
 
subroutine d_test_bpack_mult (Ns, bmat, ptree, option, stats)
 
subroutine d_bpack_mult (trans, Ns, num_vectors, Vin, Vout, bmat, ptree, option, stats)
 
subroutine d_bpack_md_mult (Ndim, trans, Ns, num_vectors, Vin, Vout, bmat, ptree, option, stats, msh)
 
subroutine d_hodlr_inv_mult (trans, Ns, num_vectors, Vin, Vout, ho_bf1, ptree, option, stats)
 
subroutine d_hss_inv_mult (trans, Ns, num_vectors, Vin, Vout, hss_bf1, ptree, option, stats)
 
subroutine d_hodlr_mult (trans, Ns, num_vectors, level_start, level_end, Vin, Vout, ho_bf1, ptree, option, stats)
 
subroutine d_hmat_redistribute1dto2d_vector (Vin, Ns, num_vectors, vector2D, h_mat, ptree, nproc, stats, mode)
 ***** redistribute the vector fed to d_Hmat from 1D to 2D layouts More...
 
subroutine d_hmat_redistribute2dto1d_vector (Vin, Ns, num_vectors, vector2D, h_mat, ptree, nproc, stats, mode)
 ***** redistribute the vector fed to d_Hmat from 2D to 1D layouts More...
 
subroutine d_hss_mult (trans, Ns, num_vectors, Vin, Vout, hss_bf1, ptree, option, stats)
 
subroutine d_hss_md_mult (Ndim, trans, Ns, num_vectors, Vin, Vout, hss_bf_md1, ptree, option, stats, msh)
 
subroutine d_hmat_inv_mult (trans, Ns, num_vectors, Vin, Vout, h_mat, ptree, option, stats)
 
subroutine d_hmat_mult (trans, Ns, num_vectors, level_start, level_end, Vin, Vout, h_mat, ptree, option, stats, use_blockcopy)
 
subroutine d_hmat_lsolve_toplevel (h_mat, trans, xloc, nloc, nvec, ptree, stats)
 
subroutine d_hmat_usolve_toplevel (h_mat, trans, xloc, nloc, nvec, ptree, stats)
 

Function/Subroutine Documentation

◆ d_bpack_applyprecon()

subroutine d_bpack_solve_mul::d_bpack_applyprecon ( integer  precond,
integer  nn_loc,
real(kind=8), dimension(1:nn_loc)  x,
real(kind=8), dimension(1:nn_loc)  y,
type(d_proctree)  ptree,
type(d_bmatrix)  bmat,
type(d_hoption)  option,
type(d_hstat)  stats 
)
Here is the call graph for this function:

◆ d_bpack_convert2dense()

subroutine d_bpack_solve_mul::d_bpack_convert2dense ( type(d_bmatrix)  bmat,
type(d_hoption)  option,
type(d_hstat)  stats,
type(d_mesh)  msh,
type(d_kernelquant)  ker,
type(d_proctree)  ptree 
)
Here is the call graph for this function:

◆ d_bpack_eigen()

subroutine d_bpack_solve_mul::d_bpack_eigen ( type(d_bmatrix)  bmat_A,
type(d_hoption)  option_A,
type(d_proctree)  ptree_A,
type(d_hstat)  stats_A,
type(d_bmatrix)  bmat_B,
type(d_hoption)  option_B,
type(d_proctree)  ptree_B,
type(d_hstat)  stats_B,
type(d_bmatrix)  bmat_sh,
type(d_hoption)  option_sh,
type(d_proctree)  ptree_sh,
type(d_hstat)  stats_sh,
integer  Nunk,
integer  Nunk_loc,
integer  nev,
real(kind=8)  tol,
integer  CMmode,
integer  SI,
complex(kind=8)  shift,
character(len=2)  which,
integer  nconv,
complex(kind=8), dimension(nev)  eigval,
complex(kind=8), dimension(nunk_loc, nev)  eigvec 
)

**** eigen solver using ARPACK

◆ d_bpack_eigen_dense()

subroutine d_bpack_solve_mul::d_bpack_eigen_dense ( type(d_bmatrix)  bmat,
type(d_hoption)  option,
type(d_hstat)  stats,
type(d_mesh)  msh,
type(d_kernelquant)  ker,
type(d_proctree)  ptree,
complex(kind=8), dimension(:)  eigval,
real(kind=8), dimension(:, :)  eigvec 
)

◆ d_bpack_inv_mult()

subroutine d_bpack_solve_mul::d_bpack_inv_mult ( character  trans,
integer  Ns,
integer  num_vectors,
real(kind=8), dimension(ns, num_vectors)  Vin,
real(kind=8), dimension(ns, num_vectors)  Vout,
type(d_bmatrix)  bmat,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats 
)
Here is the call graph for this function:

◆ d_bpack_md_mult()

subroutine d_bpack_solve_mul::d_bpack_md_mult ( integer  Ndim,
character  trans,
integer, dimension(ndim)  Ns,
integer  num_vectors,
real(kind=8), dimension(product(ns), num_vectors)  Vin,
real(kind=8), dimension(product(ns), num_vectors)  Vout,
type(d_bmatrix)  bmat,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats,
type(d_mesh), dimension(ndim)  msh 
)
Here is the call graph for this function:

◆ d_bpack_md_solution()

subroutine d_bpack_solve_mul::d_bpack_md_solution ( integer  Ndim,
type(d_bmatrix)  bmat,
real(kind=8), dimension(product(ns_loc), num_vectors)  x,
real(kind=8), dimension(product(ns_loc), num_vectors)  b,
integer, dimension(ndim)  Ns_loc,
integer  num_vectors,
type(d_hoption)  option,
type(d_proctree)  ptree,
type(d_hstat)  stats,
type(d_mesh), dimension(ndim)  msh 
)
Here is the call graph for this function:

◆ d_bpack_md_ztfqmr()

subroutine d_bpack_solve_mul::d_bpack_md_ztfqmr ( integer  Ndim,
integer  precond,
integer, intent(in)  ntotal,
integer, dimension(ndim)  nn_loc_md,
real(kind=8), dimension(1:product(nn_loc_md))  b,
real(kind=8), dimension(1:product(nn_loc_md))  x,
real(kind=8)  err,
integer  iter,
real(kind=8), dimension(:)  r0_initial,
type(d_bmatrix)  bmat,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats,
type(d_mesh), dimension(ndim)  msh 
)
Here is the call graph for this function:

◆ d_bpack_md_ztfqmr_usermatvec_noprecon()

subroutine d_bpack_solve_mul::d_bpack_md_ztfqmr_usermatvec_noprecon ( integer  Ndim,
integer, intent(in)  ntotal,
integer, dimension(ndim)  nn_loc_MD,
real(kind=8), dimension(1:product(nn_loc_md),1)  b,
real(kind=8), dimension(1:product(nn_loc_md),1)  x,
real(kind=8)  err,
integer  iter,
real(kind=8), dimension(product(nn_loc_md),1)  r0_initial,
procedure(d_hmatvec_md)  blackbox_MVP,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats,
type(d_kernelquant)  ker 
)
Here is the call graph for this function:

◆ d_bpack_mult()

subroutine d_bpack_solve_mul::d_bpack_mult ( character  trans,
integer  Ns,
integer  num_vectors,
real(kind=8), dimension(ns, num_vectors)  Vin,
real(kind=8), dimension(ns, num_vectors)  Vout,
type(d_bmatrix)  bmat,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats 
)
Here is the call graph for this function:

◆ d_bpack_solution()

subroutine d_bpack_solve_mul::d_bpack_solution ( type(d_bmatrix)  bmat,
real(kind=8), dimension(ns_loc, num_vectors)  x,
real(kind=8), dimension(ns_loc, num_vectors)  b,
integer  Ns_loc,
integer  num_vectors,
type(d_hoption)  option,
type(d_proctree)  ptree,
type(d_hstat)  stats 
)
Here is the call graph for this function:

◆ d_bpack_test_solve_error()

subroutine d_bpack_solve_mul::d_bpack_test_solve_error ( type(d_bmatrix)  bmat,
integer  N_unk_loc,
type(d_hoption)  option,
type(d_proctree)  ptree,
type(d_hstat)  stats 
)
Here is the call graph for this function:

◆ d_bpack_ztfqmr()

subroutine d_bpack_solve_mul::d_bpack_ztfqmr ( integer  precond,
integer, intent(in)  ntotal,
integer  nn_loc,
real(kind=8), dimension(1:nn_loc)  b,
real(kind=8), dimension(1:nn_loc)  x,
real(kind=8)  err,
integer  iter,
real(kind=8), dimension(:)  r0_initial,
type(d_bmatrix)  bmat,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats 
)
Here is the call graph for this function:

◆ d_bpack_ztfqmr_usermatvec_noprecon()

subroutine d_bpack_solve_mul::d_bpack_ztfqmr_usermatvec_noprecon ( integer, intent(in)  ntotal,
integer  nn_loc,
real(kind=8), dimension(1:nn_loc,1)  b,
real(kind=8), dimension(1:nn_loc,1)  x,
real(kind=8)  err,
integer  iter,
real(kind=8), dimension(:,:)  r0_initial,
procedure(d_hmatvec)  blackbox_MVP,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats,
type(d_kernelquant)  ker 
)
Here is the call graph for this function:

◆ d_hmat_inv_mult()

subroutine d_bpack_solve_mul::d_hmat_inv_mult ( character  trans,
integer  Ns,
integer  num_vectors,
real(kind=8), dimension(ns, num_vectors)  Vin,
real(kind=8), dimension(ns, num_vectors)  Vout,
type(d_hmat)  h_mat,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats 
)
Here is the call graph for this function:

◆ d_hmat_lsolve_toplevel()

subroutine d_bpack_solve_mul::d_hmat_lsolve_toplevel ( type(d_hmat)  h_mat,
character  trans,
real(kind=8), dimension(:, :)  xloc,
integer  nloc,
integer  nvec,
type(d_proctree)  ptree,
type(d_hstat)  stats 
)

◆ d_hmat_mult()

subroutine d_bpack_solve_mul::d_hmat_mult ( character  trans,
integer  Ns,
integer  num_vectors,
integer  level_start,
integer  level_end,
real(kind=8), dimension(ns, num_vectors)  Vin,
real(kind=8), dimension(ns, num_vectors)  Vout,
type(d_hmat)  h_mat,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats,
integer  use_blockcopy 
)
Here is the call graph for this function:

◆ d_hmat_redistribute1dto2d_vector()

subroutine d_bpack_solve_mul::d_hmat_redistribute1dto2d_vector ( real(kind=8), dimension(ns, num_vectors)  Vin,
integer  Ns,
integer  num_vectors,
type(d_vectorsblock), dimension(:)  vector2D,
type(d_hmat)  h_mat,
type(d_proctree)  ptree,
integer  nproc,
type(d_hstat)  stats,
character  mode 
)

***** redistribute the vector fed to d_Hmat from 1D to 2D layouts

◆ d_hmat_redistribute2dto1d_vector()

subroutine d_bpack_solve_mul::d_hmat_redistribute2dto1d_vector ( real(kind=8), dimension(ns, num_vectors)  Vin,
integer  Ns,
integer  num_vectors,
type(d_vectorsblock), dimension(:)  vector2D,
type(d_hmat)  h_mat,
type(d_proctree)  ptree,
integer  nproc,
type(d_hstat)  stats,
character  mode 
)

***** redistribute the vector fed to d_Hmat from 2D to 1D layouts

◆ d_hmat_usolve_toplevel()

subroutine d_bpack_solve_mul::d_hmat_usolve_toplevel ( type(d_hmat)  h_mat,
character  trans,
real(kind=8), dimension(:, :)  xloc,
integer  nloc,
integer  nvec,
type(d_proctree)  ptree,
type(d_hstat)  stats 
)

◆ d_hodlr_inv_mult()

subroutine d_bpack_solve_mul::d_hodlr_inv_mult ( character  trans,
integer  Ns,
integer  num_vectors,
real(kind=8), dimension(ns, num_vectors)  Vin,
real(kind=8), dimension(ns, num_vectors)  Vout,
type(d_hobf)  ho_bf1,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats 
)

◆ d_hodlr_mult()

subroutine d_bpack_solve_mul::d_hodlr_mult ( character  trans,
integer  Ns,
integer  num_vectors,
integer  level_start,
integer  level_end,
real(kind=8), dimension(ns, num_vectors)  Vin,
real(kind=8), dimension(ns, num_vectors)  Vout,
type(d_hobf)  ho_bf1,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats 
)

◆ d_hss_inv_mult()

subroutine d_bpack_solve_mul::d_hss_inv_mult ( character  trans,
integer  Ns,
integer  num_vectors,
real(kind=8), dimension(ns, num_vectors)  Vin,
real(kind=8), dimension(ns, num_vectors)  Vout,
type(d_hssbf)  hss_bf1,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats 
)

◆ d_hss_md_mult()

subroutine d_bpack_solve_mul::d_hss_md_mult ( integer  Ndim,
character  trans,
integer, dimension(ndim)  Ns,
integer  num_vectors,
real(kind=8), dimension(product(ns), num_vectors)  Vin,
real(kind=8), dimension(product(ns), num_vectors)  Vout,
type(d_hssbf_md)  hss_bf_md1,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats,
type(d_mesh), dimension(ndim)  msh 
)

◆ d_hss_mult()

subroutine d_bpack_solve_mul::d_hss_mult ( character  trans,
integer  Ns,
integer  num_vectors,
real(kind=8), dimension(ns, num_vectors)  Vin,
real(kind=8), dimension(ns, num_vectors)  Vout,
type(d_hssbf)  hss_bf1,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats 
)

◆ d_test_bpack_mult()

subroutine d_bpack_solve_mul::d_test_bpack_mult ( integer  Ns,
type(d_bmatrix)  bmat,
type(d_proctree)  ptree,
type(d_hoption)  option,
type(d_hstat)  stats 
)
Here is the call graph for this function: