TABLE OF CONTENTS
- m_abi_linalg/abi_d2zcopy_2d
- m_abi_linalg/abi_dcopy
- m_abi_linalg/abi_dcopy_0d_1d
- m_abi_linalg/abi_dcopy_1d
- m_abi_linalg/abi_dcopy_1d_0d
- m_abi_linalg/abi_dcopy_2d
- m_abi_linalg/abi_xcopy
- m_abi_linalg/abi_z2dcopy_2d
- m_abi_linalg/abi_zcopy
- m_abi_linalg/abi_zcopy_1d
m_abi_linalg/abi_d2zcopy_2d [ Functions ]
[ Top ] [ m_abi_linalg ] [ Functions ]
NAME
abi_d2zcopy_2d
FUNCTION
INPUTS
SOURCE
233 subroutine abi_d2zcopy_2d(size,tsrc,incsrc,tdest,incdest,x_cplx) 234 235 !Arguments------------------------------------- 236 integer, intent(in) :: size 237 integer, intent(in) :: incsrc 238 integer, intent(in) :: incdest 239 real(dp), DEV_CONTARRD intent(in) :: tsrc(:,:) 240 complex(dpc), DEV_CONTARRD intent(inout) :: tdest(:,:) 241 !only in lobpcgwf 242 integer, intent(in),optional :: x_cplx 243 244 !Local variables------------------------------- 245 integer :: cplx_ 246 247 #ifdef DEV_LINALG_TIMING 248 real(dp) :: tsec(2) 249 call timab(TIMAB_XCOPY,1,tsec) 250 #endif 251 252 cplx_=1 ; if(PRESENT(x_cplx)) cplx_ = x_cplx 253 if(cplx_ == 2) then 254 call zcopy(size,tsrc,incsrc,tdest,incdest) 255 else 256 call dcopy(size,tsrc,incsrc,tdest,incdest) 257 end if 258 259 #ifdef DEV_LINALG_TIMING 260 call timab(TIMAB_XCOPY,2,tsec) 261 #endif 262 263 end subroutine abi_d2zcopy_2d
m_abi_linalg/abi_dcopy [ Functions ]
[ Top ] [ m_abi_linalg ] [ Functions ]
NAME
abi_dcopy
FUNCTION
INPUTS
SOURCE
88 subroutine abi_dcopy(size,tsrc,incsrc,tdest,incdest,x_cplx) 89 90 !Arguments------------------------------------- 91 integer, intent(in) :: size 92 integer, intent(in) :: incsrc 93 integer, intent(in) :: incdest 94 real(dp),intent(in) :: tsrc 95 real(dp),intent(inout) :: tdest 96 integer, intent(in), optional :: x_cplx 97 98 !Local variables------------------------------- 99 integer :: cplx_ 100 101 #ifdef DEV_LINALG_TIMING 102 real(dp) :: tsec(2) 103 call timab(TIMAB_XCOPY,1,tsec) 104 #endif 105 106 cplx_=1 ; if(PRESENT(x_cplx)) cplx_ = x_cplx 107 if(cplx_ == 2) then 108 call zcopy(size,tsrc,incsrc,tdest,incdest) 109 else 110 call dcopy(size,tsrc,incsrc,tdest,incdest) 111 end if 112 113 #ifdef DEV_LINALG_TIMING 114 call timab(TIMAB_XCOPY,2,tsec) 115 #endif 116 117 end subroutine abi_dcopy
m_abi_linalg/abi_dcopy_0d_1d [ Functions ]
[ Top ] [ m_abi_linalg ] [ Functions ]
NAME
abi_dcopy_0d_1d
FUNCTION
INPUTS
SOURCE
183 subroutine abi_dcopy_0d_1d(size,tsrc,incsrc,tdest,incdest,x_cplx) 184 185 !Arguments------------------------------------- 186 integer, intent(in) :: size 187 integer, intent(in) :: incsrc 188 integer, intent(in) :: incdest 189 real(dp),intent(in) :: tsrc 190 real(dp), intent(inout) :: tdest(*) 191 integer,intent(in), optional :: x_cplx !only lobpcgwf 192 193 call abi_dcopy(size,tsrc,incsrc,tdest(1),incdest,x_cplx) 194 195 end subroutine abi_dcopy_0d_1d
m_abi_linalg/abi_dcopy_1d [ Functions ]
[ Top ] [ m_abi_linalg ] [ Functions ]
NAME
abi_dcopy_1d
FUNCTION
INPUTS
SOURCE
130 subroutine abi_dcopy_1d(size,tsrc,incsrc,tdest,incdest,x_cplx) 131 132 !Arguments------------------------------------- 133 integer, intent(in) :: size 134 integer, intent(in) :: incsrc 135 integer, intent(in) :: incdest 136 real(dp), intent(in) :: tsrc(*) 137 real(dp), intent(inout) :: tdest(*) 138 !Only for lobpcgwf 139 integer, intent(in), optional :: x_cplx 140 141 call abi_dcopy(size,tsrc(1),incsrc,tdest(1),incdest,x_cplx) 142 143 end subroutine abi_dcopy_1d
m_abi_linalg/abi_dcopy_1d_0d [ Functions ]
[ Top ] [ m_abi_linalg ] [ Functions ]
NAME
abi_dcopy_1d_0d
FUNCTION
INPUTS
SOURCE
208 subroutine abi_dcopy_1d_0d(size,tsrc,incsrc,tdest,incdest,x_cplx) 209 210 !Arguments------------------------------------- 211 integer, intent(in) :: size 212 integer, intent(in) :: incsrc 213 integer, intent(in) :: incdest 214 real(dp),intent(in) :: tsrc(*) 215 real(dp),intent(inout) :: tdest 216 integer,intent(in), optional :: x_cplx !only lobpcgwf 217 218 call abi_dcopy(size,tsrc(1),incsrc,tdest,incdest,x_cplx) 219 220 end subroutine abi_dcopy_1d_0d
m_abi_linalg/abi_dcopy_2d [ Functions ]
[ Top ] [ m_abi_linalg ] [ Functions ]
NAME
abi_dcopy_2d
FUNCTION
INPUTS
SOURCE
156 subroutine abi_dcopy_2d(size,tsrc,incsrc,tdest,incdest,x_cplx) 157 158 !Arguments------------------------------------- 159 integer, intent(in) :: size 160 integer, intent(in) :: incsrc 161 integer, intent(in) :: incdest 162 real(dp), DEV_CONTARRD intent(in) :: tsrc(:,:) 163 real(dp), DEV_CONTARRD intent(inout) :: tdest(:,:) 164 !Only for lobpcgwf 165 integer, intent(in), optional :: x_cplx 166 167 ! write(*,*) "dcopy2D size=",size 168 call abi_dcopy(size,tsrc(1,1),incsrc,tdest(1,1),incdest,x_cplx) 169 170 end subroutine abi_dcopy_2d
m_abi_linalg/abi_xcopy [ Functions ]
[ Top ] [ m_abi_linalg ] [ Functions ]
NAME
abi_xcopy
FUNCTION
abi_xcopy is the generic function for vector copy It performs the data copy: dst(1:n:incdst) = src(1:n:incsrc)
COPYRIGHT
Copyright (C) 2001-2024 ABINIT group (LNguyen,FDahm (CS)) This file is distributed under the terms of the GNU General Public License, see ~ABINIT/Infos/copyright or http://www.gnu.org/copyleft/gpl.txt .
SOURCE
m_abi_linalg/abi_z2dcopy_2d [ Functions ]
[ Top ] [ m_abi_linalg ] [ Functions ]
NAME
abi_z2dcopy_2d
FUNCTION
INPUTS
SOURCE
276 subroutine abi_z2dcopy_2d(size,tsrc,incsrc,tdest,incdest,x_cplx) 277 278 !Arguments------------------------------------- 279 integer, intent(in) :: size 280 integer, intent(in) :: incsrc 281 integer, intent(in) :: incdest 282 complex(dpc), DEV_CONTARRD intent(in) :: tsrc(:,:) 283 real(dp), DEV_CONTARRD intent(inout) :: tdest(:,:) 284 !only in lobpcgwf 285 integer,intent(in), optional :: x_cplx 286 287 !Local variables------------------------------- 288 integer :: cplx_ 289 #ifdef DEV_LINALG_TIMING 290 real(dp) :: tsec(2) 291 call timab(TIMAB_XCOPY,1,tsec) 292 #endif 293 294 cplx_=1 ; if(PRESENT(x_cplx)) cplx_ = x_cplx 295 if(cplx_ == 2) then 296 call zcopy(size,tsrc,incsrc,tdest,incdest) 297 else 298 call dcopy(size,tsrc,incsrc,tdest,incdest) 299 end if 300 301 #ifdef DEV_LINALG_TIMING 302 call timab(TIMAB_XCOPY,2,tsec) 303 #endif 304 305 end subroutine abi_z2dcopy_2d
m_abi_linalg/abi_zcopy [ Functions ]
[ Top ] [ m_abi_linalg ] [ Functions ]
NAME
abi_zcopy
FUNCTION
INPUTS
SOURCE
30 subroutine abi_zcopy(size,tsrc,incsrc,tdest,incdest) 31 32 !Arguments------------------------------------- 33 integer, intent(in) :: size 34 integer, intent(in) :: incsrc 35 integer, intent(in) :: incdest 36 complex(dpc),intent(in) :: tsrc 37 complex(dpc),intent(inout) :: tdest 38 39 !Local variables------------------------------- 40 #ifdef DEV_LINALG_TIMING 41 real(dp) :: tsec(2) 42 call timab(TIMAB_XCOPY,1,tsec) 43 #endif 44 45 call zcopy(size,tsrc,incsrc,tdest,incdest) 46 47 #ifdef DEV_LINALG_TIMING 48 call timab(TIMAB_XCOPY,2,tsec) 49 #endif 50 51 end subroutine abi_zcopy
m_abi_linalg/abi_zcopy_1d [ Functions ]
[ Top ] [ m_abi_linalg ] [ Functions ]
NAME
abi_zcopy_1d
FUNCTION
INPUTS
SOURCE
64 subroutine abi_zcopy_1d(size,tsrc,incsrc,tdest,incdest) 65 66 !Arguments------------------------------------- 67 integer, intent(in) :: size 68 integer, intent(in) :: incsrc 69 integer, intent(in) :: incdest 70 complex(dpc), intent(in) :: tsrc(*) 71 complex(dpc), intent(inout) :: tdest(*) 72 73 call abi_zcopy(size,tsrc(1),incsrc,tdest(1),incdest) 74 75 end subroutine abi_zcopy_1d