oqp_linalg.F90 Source File


This file depends on

sourcefile~~oqp_linalg.f90~~EfferentGraph sourcefile~oqp_linalg.f90 oqp_linalg.F90 sourcefile~blas_wrap.f90 blas_wrap.F90 sourcefile~oqp_linalg.f90->sourcefile~blas_wrap.f90 sourcefile~lapack_wrap.f90 lapack_wrap.F90 sourcefile~oqp_linalg.f90->sourcefile~lapack_wrap.f90 sourcefile~mathlib_types.f90 mathlib_types.F90 sourcefile~blas_wrap.f90->sourcefile~mathlib_types.f90 sourcefile~messages.f90 messages.F90 sourcefile~blas_wrap.f90->sourcefile~messages.f90 sourcefile~precision.f90 precision.F90 sourcefile~blas_wrap.f90->sourcefile~precision.f90 sourcefile~lapack_wrap.f90->sourcefile~mathlib_types.f90 sourcefile~lapack_wrap.f90->sourcefile~messages.f90 sourcefile~lapack_wrap.f90->sourcefile~precision.f90 sourcefile~messages.f90->sourcefile~precision.f90 sourcefile~constants_io.f90 constants_io.F90 sourcefile~messages.f90->sourcefile~constants_io.f90

Files dependent on this one

sourcefile~~oqp_linalg.f90~~AfferentGraph sourcefile~oqp_linalg.f90 oqp_linalg.F90 sourcefile~dft_gridint.f90 dft_gridint.F90 sourcefile~dft_gridint.f90->sourcefile~oqp_linalg.f90 sourcefile~dft_gridint_energy.f90 dft_gridint_energy.F90 sourcefile~dft_gridint_energy.f90->sourcefile~oqp_linalg.f90 sourcefile~dft_gridint_energy.f90->sourcefile~dft_gridint.f90 sourcefile~dft_gridint_fxc.f90 dft_gridint_fxc.F90 sourcefile~dft_gridint_fxc.f90->sourcefile~oqp_linalg.f90 sourcefile~dft_gridint_fxc.f90->sourcefile~dft_gridint.f90 sourcefile~mathlib.f90 mathlib.F90 sourcefile~dft_gridint_fxc.f90->sourcefile~mathlib.f90 sourcefile~dft_gridint_gxc.f90 dft_gridint_gxc.F90 sourcefile~dft_gridint_gxc.f90->sourcefile~oqp_linalg.f90 sourcefile~dft_gridint_gxc.f90->sourcefile~dft_gridint.f90 sourcefile~dft_gridint_gxc.f90->sourcefile~dft_gridint_fxc.f90 sourcefile~dft_gridint_gxc.f90->sourcefile~mathlib.f90 sourcefile~eigen.f90 eigen.F90 sourcefile~eigen.f90->sourcefile~oqp_linalg.f90 sourcefile~guess.f90 guess.F90 sourcefile~guess.f90->sourcefile~oqp_linalg.f90 sourcefile~guess.f90->sourcefile~eigen.f90 sourcefile~guess.f90->sourcefile~mathlib.f90 sourcefile~huckel.f90 huckel.F90 sourcefile~huckel.f90->sourcefile~oqp_linalg.f90 sourcefile~huckel.f90->sourcefile~eigen.f90 sourcefile~huckel.f90->sourcefile~guess.f90 sourcefile~huckel.f90->sourcefile~mathlib.f90 sourcefile~mathlib.f90->sourcefile~oqp_linalg.f90 sourcefile~mathlib.f90->sourcefile~eigen.f90 sourcefile~population_analysis.f90 population_analysis.F90 sourcefile~population_analysis.f90->sourcefile~oqp_linalg.f90 sourcefile~population_analysis.f90->sourcefile~eigen.f90 sourcefile~population_analysis.f90->sourcefile~mathlib.f90 sourcefile~resp.f90 resp.F90 sourcefile~resp.f90->sourcefile~oqp_linalg.f90 sourcefile~resp.f90->sourcefile~mathlib.f90 sourcefile~scf.f90 scf.F90 sourcefile~scf.f90->sourcefile~oqp_linalg.f90 sourcefile~scf.f90->sourcefile~guess.f90 sourcefile~scf.f90->sourcefile~mathlib.f90 sourcefile~scf_converger.f90 scf_converger.F90 sourcefile~scf.f90->sourcefile~scf_converger.f90 sourcefile~dft.f90 dft.F90 sourcefile~scf.f90->sourcefile~dft.f90 sourcefile~scf_converger.f90->sourcefile~oqp_linalg.f90 sourcefile~scf_converger.f90->sourcefile~mathlib.f90 sourcefile~tdhf_lib.f90 tdhf_lib.F90 sourcefile~tdhf_lib.f90->sourcefile~oqp_linalg.f90 sourcefile~tdhf_lib.f90->sourcefile~eigen.f90 sourcefile~tdhf_lib.f90->sourcefile~mathlib.f90 sourcefile~tdhf_mrsf_energy.f90 tdhf_mrsf_energy.F90 sourcefile~tdhf_mrsf_energy.f90->sourcefile~oqp_linalg.f90 sourcefile~tdhf_mrsf_energy.f90->sourcefile~mathlib.f90 sourcefile~tdhf_mrsf_energy.f90->sourcefile~tdhf_lib.f90 sourcefile~tdhf_mrsf_lib.f90 tdhf_mrsf_lib.F90 sourcefile~tdhf_mrsf_energy.f90->sourcefile~tdhf_mrsf_lib.f90 sourcefile~tdhf_sf_lib.f90 tdhf_sf_lib.F90 sourcefile~tdhf_mrsf_energy.f90->sourcefile~tdhf_sf_lib.f90 sourcefile~tdhf_mrsf_lib.f90->sourcefile~oqp_linalg.f90 sourcefile~tdhf_sf_energy.f90 tdhf_sf_energy.F90 sourcefile~tdhf_sf_energy.f90->sourcefile~oqp_linalg.f90 sourcefile~tdhf_sf_energy.f90->sourcefile~mathlib.f90 sourcefile~tdhf_sf_energy.f90->sourcefile~tdhf_lib.f90 sourcefile~tdhf_sf_energy.f90->sourcefile~tdhf_sf_lib.f90 sourcefile~tdhf_sf_lib.f90->sourcefile~oqp_linalg.f90 sourcefile~tdhf_sf_lib.f90->sourcefile~mathlib.f90 sourcefile~tdhf_sf_lib.f90->sourcefile~tdhf_lib.f90 sourcefile~tdhf_z_vector.f90 tdhf_z_vector.F90 sourcefile~tdhf_z_vector.f90->sourcefile~oqp_linalg.f90 sourcefile~tdhf_z_vector.f90->sourcefile~dft_gridint_fxc.f90 sourcefile~tdhf_z_vector.f90->sourcefile~dft_gridint_gxc.f90 sourcefile~tdhf_z_vector.f90->sourcefile~mathlib.f90 sourcefile~tdhf_z_vector.f90->sourcefile~tdhf_lib.f90 sourcefile~tdhf_z_vector.f90->sourcefile~tdhf_sf_lib.f90 sourcefile~tdhf_z_vector.f90->sourcefile~dft.f90 sourcefile~dft.f90->sourcefile~dft_gridint_energy.f90 sourcefile~dft.f90->sourcefile~mathlib.f90 sourcefile~dft_gridint_grad.f90 dft_gridint_grad.F90 sourcefile~dft.f90->sourcefile~dft_gridint_grad.f90 sourcefile~dft_gridint_grad.f90->sourcefile~dft_gridint.f90 sourcefile~dft_gridint_tdxc_grad.f90 dft_gridint_tdxc_grad.F90 sourcefile~dft_gridint_tdxc_grad.f90->sourcefile~dft_gridint.f90 sourcefile~electric_moments.f90 electric_moments.F90 sourcefile~electric_moments.f90->sourcefile~mathlib.f90 sourcefile~get_states_overlap.f90 get_states_overlap.F90 sourcefile~get_states_overlap.f90->sourcefile~tdhf_mrsf_lib.f90 sourcefile~grd1.f90 grd1.F90 sourcefile~grd1.f90->sourcefile~mathlib.f90 sourcefile~guess_hcore.f90 guess_hcore.F90 sourcefile~guess_hcore.f90->sourcefile~guess.f90 sourcefile~guess_hcore.f90->sourcefile~mathlib.f90 sourcefile~guess_huckel.f90 guess_huckel.F90 sourcefile~guess_huckel.f90->sourcefile~guess.f90 sourcefile~guess_huckel.f90->sourcefile~huckel.f90 sourcefile~guess_huckel.f90->sourcefile~mathlib.f90 sourcefile~guess_json.f90 guess_json.F90 sourcefile~guess_json.f90->sourcefile~guess.f90 sourcefile~hf_energy.f90 hf_energy.f90 sourcefile~hf_energy.f90->sourcefile~scf.f90 sourcefile~hf_energy.f90->sourcefile~dft.f90 sourcefile~hf_gradient.f90 hf_gradient.F90 sourcefile~hf_gradient.f90->sourcefile~mathlib.f90 sourcefile~hf_gradient.f90->sourcefile~dft.f90 sourcefile~hf_gradient.f90->sourcefile~grd1.f90 sourcefile~tdhf_energy.f90 tdhf_energy.F90 sourcefile~tdhf_energy.f90->sourcefile~dft_gridint_fxc.f90 sourcefile~tdhf_energy.f90->sourcefile~mathlib.f90 sourcefile~tdhf_energy.f90->sourcefile~tdhf_lib.f90 sourcefile~tdhf_energy.f90->sourcefile~dft.f90 sourcefile~tdhf_gradient.f90 tdhf_gradient.F90 sourcefile~tdhf_gradient.f90->sourcefile~mathlib.f90 sourcefile~tdhf_gradient.f90->sourcefile~tdhf_lib.f90 sourcefile~tdhf_gradient.f90->sourcefile~dft.f90 sourcefile~tdhf_gradient.f90->sourcefile~dft_gridint_tdxc_grad.f90 sourcefile~tdhf_gradient.f90->sourcefile~grd1.f90

Source Code

#ifndef OQP_BLAS_INT
#define OQP_BLAS_INT 4
#endif
module oqp_linalg
#if OQP_BLAS_INT == 4
  use blas_wrap, only: caxpy      =>  oqp_caxpy_i64
  use blas_wrap, only: ccopy      =>  oqp_ccopy_i64
  use blas_wrap, only: cdotc      =>  oqp_cdotc_i64
  use blas_wrap, only: cdotu      =>  oqp_cdotu_i64
  use blas_wrap, only: cgbmv      =>  oqp_cgbmv_i64
  use blas_wrap, only: cgemm      =>  oqp_cgemm_i64
  use blas_wrap, only: cgemv      =>  oqp_cgemv_i64
  use blas_wrap, only: cgerc      =>  oqp_cgerc_i64
  use blas_wrap, only: cgeru      =>  oqp_cgeru_i64
  use blas_wrap, only: chbmv      =>  oqp_chbmv_i64
  use blas_wrap, only: chemm      =>  oqp_chemm_i64
  use blas_wrap, only: chemv      =>  oqp_chemv_i64
  use blas_wrap, only: cher       =>  oqp_cher_i64
  use blas_wrap, only: cher2      =>  oqp_cher2_i64
  use blas_wrap, only: cher2k     =>  oqp_cher2k_i64
  use blas_wrap, only: cherk      =>  oqp_cherk_i64
  use blas_wrap, only: chpmv      =>  oqp_chpmv_i64
  use blas_wrap, only: chpr       =>  oqp_chpr_i64
  use blas_wrap, only: chpr2      =>  oqp_chpr2_i64
  use blas_wrap, only: cscal      =>  oqp_cscal_i64
  use blas_wrap, only: csrot      =>  oqp_csrot_i64
  use blas_wrap, only: csscal     =>  oqp_csscal_i64
  use blas_wrap, only: cswap      =>  oqp_cswap_i64
  use blas_wrap, only: csymm      =>  oqp_csymm_i64
  use blas_wrap, only: csyr2k     =>  oqp_csyr2k_i64
  use blas_wrap, only: csyrk      =>  oqp_csyrk_i64
  use blas_wrap, only: ctbmv      =>  oqp_ctbmv_i64
  use blas_wrap, only: ctbsv      =>  oqp_ctbsv_i64
  use blas_wrap, only: ctpmv      =>  oqp_ctpmv_i64
  use blas_wrap, only: ctpsv      =>  oqp_ctpsv_i64
  use blas_wrap, only: ctrmm      =>  oqp_ctrmm_i64
  use blas_wrap, only: ctrmv      =>  oqp_ctrmv_i64
  use blas_wrap, only: ctrsm      =>  oqp_ctrsm_i64
  use blas_wrap, only: ctrsv      =>  oqp_ctrsv_i64
  use blas_wrap, only: dasum      =>  oqp_dasum_i64
  use blas_wrap, only: daxpy      =>  oqp_daxpy_i64
  use blas_wrap, only: dcopy      =>  oqp_dcopy_i64
  use blas_wrap, only: ddot       =>  oqp_ddot_i64
  use blas_wrap, only: dgbmv      =>  oqp_dgbmv_i64
  use blas_wrap, only: dgemm      =>  oqp_dgemm_i64
  use blas_wrap, only: dgemv      =>  oqp_dgemv_i64
  use blas_wrap, only: dger       =>  oqp_dger_i64
  use blas_wrap, only: drot       =>  oqp_drot_i64
  use blas_wrap, only: drotm      =>  oqp_drotm_i64
  use blas_wrap, only: dsbmv      =>  oqp_dsbmv_i64
  use blas_wrap, only: dscal      =>  oqp_dscal_i64
  use blas_wrap, only: dsdot      =>  oqp_dsdot_i64
  use blas_wrap, only: dspmv      =>  oqp_dspmv_i64
  use blas_wrap, only: dspr       =>  oqp_dspr_i64
  use blas_wrap, only: dspr2      =>  oqp_dspr2_i64
  use blas_wrap, only: dswap      =>  oqp_dswap_i64
  use blas_wrap, only: dsymm      =>  oqp_dsymm_i64
  use blas_wrap, only: dsymv      =>  oqp_dsymv_i64
  use blas_wrap, only: dsyr       =>  oqp_dsyr_i64
  use blas_wrap, only: dsyr2      =>  oqp_dsyr2_i64
  use blas_wrap, only: dsyr2k     =>  oqp_dsyr2k_i64
  use blas_wrap, only: dsyrk      =>  oqp_dsyrk_i64
  use blas_wrap, only: dtbmv      =>  oqp_dtbmv_i64
  use blas_wrap, only: dtbsv      =>  oqp_dtbsv_i64
  use blas_wrap, only: dtpmv      =>  oqp_dtpmv_i64
  use blas_wrap, only: dtpsv      =>  oqp_dtpsv_i64
  use blas_wrap, only: dtrmm      =>  oqp_dtrmm_i64
  use blas_wrap, only: dtrmv      =>  oqp_dtrmv_i64
  use blas_wrap, only: dtrsm      =>  oqp_dtrsm_i64
  use blas_wrap, only: dtrsv      =>  oqp_dtrsv_i64
  use blas_wrap, only: dzasum     =>  oqp_dzasum_i64
  use blas_wrap, only: icamax     =>  oqp_icamax_i64
  use blas_wrap, only: idamax     =>  oqp_idamax_i64
  use blas_wrap, only: isamax     =>  oqp_isamax_i64
  use blas_wrap, only: izamax     =>  oqp_izamax_i64
  use blas_wrap, only: sasum      =>  oqp_sasum_i64
  use blas_wrap, only: saxpy      =>  oqp_saxpy_i64
  use blas_wrap, only: scasum     =>  oqp_scasum_i64
  use blas_wrap, only: scopy      =>  oqp_scopy_i64
  use blas_wrap, only: sdot       =>  oqp_sdot_i64
  use blas_wrap, only: sdsdot     =>  oqp_sdsdot_i64
  use blas_wrap, only: sgbmv      =>  oqp_sgbmv_i64
  use blas_wrap, only: sgemm      =>  oqp_sgemm_i64
  use blas_wrap, only: sgemv      =>  oqp_sgemv_i64
  use blas_wrap, only: sger       =>  oqp_sger_i64
  use blas_wrap, only: srot       =>  oqp_srot_i64
  use blas_wrap, only: srotm      =>  oqp_srotm_i64
  use blas_wrap, only: ssbmv      =>  oqp_ssbmv_i64
  use blas_wrap, only: sscal      =>  oqp_sscal_i64
  use blas_wrap, only: sspmv      =>  oqp_sspmv_i64
  use blas_wrap, only: sspr       =>  oqp_sspr_i64
  use blas_wrap, only: sspr2      =>  oqp_sspr2_i64
  use blas_wrap, only: sswap      =>  oqp_sswap_i64
  use blas_wrap, only: ssymm      =>  oqp_ssymm_i64
  use blas_wrap, only: ssymv      =>  oqp_ssymv_i64
  use blas_wrap, only: ssyr       =>  oqp_ssyr_i64
  use blas_wrap, only: ssyr2      =>  oqp_ssyr2_i64
  use blas_wrap, only: ssyr2k     =>  oqp_ssyr2k_i64
  use blas_wrap, only: ssyrk      =>  oqp_ssyrk_i64
  use blas_wrap, only: stbmv      =>  oqp_stbmv_i64
  use blas_wrap, only: stbsv      =>  oqp_stbsv_i64
  use blas_wrap, only: stpmv      =>  oqp_stpmv_i64
  use blas_wrap, only: stpsv      =>  oqp_stpsv_i64
  use blas_wrap, only: strmm      =>  oqp_strmm_i64
  use blas_wrap, only: strmv      =>  oqp_strmv_i64
  use blas_wrap, only: strsm      =>  oqp_strsm_i64
  use blas_wrap, only: strsv      =>  oqp_strsv_i64
  use blas_wrap, only: xerbla     =>  oqp_xerbla_i64
!  use blas_wrap, only: xerbla_array => oqp_xerbla_array_i64
  use blas_wrap, only: zaxpy      =>  oqp_zaxpy_i64
  use blas_wrap, only: zcopy      =>  oqp_zcopy_i64
  use blas_wrap, only: zdotc      =>  oqp_zdotc_i64
  use blas_wrap, only: zdotu      =>  oqp_zdotu_i64
  use blas_wrap, only: zdrot      =>  oqp_zdrot_i64
  use blas_wrap, only: zdscal     =>  oqp_zdscal_i64
  use blas_wrap, only: zgbmv      =>  oqp_zgbmv_i64
  use blas_wrap, only: zgemm      =>  oqp_zgemm_i64
  use blas_wrap, only: zgemv      =>  oqp_zgemv_i64
  use blas_wrap, only: zgerc      =>  oqp_zgerc_i64
  use blas_wrap, only: zgeru      =>  oqp_zgeru_i64
  use blas_wrap, only: zhbmv      =>  oqp_zhbmv_i64
  use blas_wrap, only: zhemm      =>  oqp_zhemm_i64
  use blas_wrap, only: zhemv      =>  oqp_zhemv_i64
  use blas_wrap, only: zher       =>  oqp_zher_i64
  use blas_wrap, only: zher2      =>  oqp_zher2_i64
  use blas_wrap, only: zher2k     =>  oqp_zher2k_i64
  use blas_wrap, only: zherk      =>  oqp_zherk_i64
  use blas_wrap, only: zhpmv      =>  oqp_zhpmv_i64
  use blas_wrap, only: zhpr       =>  oqp_zhpr_i64
  use blas_wrap, only: zhpr2      =>  oqp_zhpr2_i64
  use blas_wrap, only: zscal      =>  oqp_zscal_i64
  use blas_wrap, only: zswap      =>  oqp_zswap_i64
  use blas_wrap, only: zsymm      =>  oqp_zsymm_i64
  use blas_wrap, only: zsyr2k     =>  oqp_zsyr2k_i64
  use blas_wrap, only: zsyrk      =>  oqp_zsyrk_i64
  use blas_wrap, only: ztbmv      =>  oqp_ztbmv_i64
  use blas_wrap, only: ztbsv      =>  oqp_ztbsv_i64
  use blas_wrap, only: ztpmv      =>  oqp_ztpmv_i64
  use blas_wrap, only: ztpsv      =>  oqp_ztpsv_i64
  use blas_wrap, only: ztrmm      =>  oqp_ztrmm_i64
  use blas_wrap, only: ztrmv      =>  oqp_ztrmv_i64
  use blas_wrap, only: ztrsm      =>  oqp_ztrsm_i64
  use blas_wrap, only: ztrsv      =>  oqp_ztrsv_i64
  use blas_wrap, only: dnrm2      =>  oqp_dnrm2_i64
  use blas_wrap, only: dznrm2     =>  oqp_dznrm2_i64
  use blas_wrap, only: scnrm2     =>  oqp_scnrm2_i64
  use blas_wrap, only: snrm2      =>  oqp_snrm2_i64

  use lapack_wrap, only: dgeqrf => oqp_dgeqrf_i64
  use lapack_wrap, only: dgesv  => oqp_dgesv_i64
  use lapack_wrap, only: dsysv  => oqp_dsysv_i64
  use lapack_wrap, only: dgglse => oqp_dgglse_i64
  use lapack_wrap, only: dorgqr => oqp_dorgqr_i64
  use lapack_wrap, only: dormqr => oqp_dormqr_i64
  use lapack_wrap, only: dtpttr => oqp_dtpttr_i64
  use lapack_wrap, only: dtrttp => oqp_dtrttp_i64
#endif

  implicit none

  public


end module