The Elk Code
zcfmtwr.f90
Go to the documentation of this file.
1 
2 ! Copyright (C) 2021 J. K. Dewhurst, S. Sharma and E. K. U. Gross.
3 ! This file is distributed under the terms of the GNU General Public License.
4 ! See the file COPYING for license details.
5 
6 pure subroutine zcfmtwr(nr,nri,wr,zfmt,cfmt)
7 use modmain
8 implicit none
9 ! arguments
10 integer, intent(in) :: nr,nri
11 real(8), intent(in) :: wr(nr)
12 complex(8), intent(in) :: zfmt(*)
13 complex(4), intent(out) :: cfmt(*)
14 ! local variables
15 integer n,ir,i
16 i=1
17 if (lmaxi == 1) then
18  do ir=1,nri
19  cfmt(i:i+3)=wr(ir)*zfmt(i:i+3)
20  i=i+4
21  end do
22 else
23  n=lmmaxi-1
24  do ir=1,nri
25  cfmt(i:i+n)=wr(ir)*zfmt(i:i+n)
26  i=i+lmmaxi
27  end do
28 end if
29 n=lmmaxo-1
30 do ir=nri+1,nr
31  cfmt(i:i+n)=wr(ir)*zfmt(i:i+n)
32  i=i+lmmaxo
33 end do
34 end subroutine
35 
integer lmmaxo
Definition: modmain.f90:203
integer lmmaxi
Definition: modmain.f90:207
pure subroutine zcfmtwr(nr, nri, wr, zfmt, cfmt)
Definition: zcfmtwr.f90:7
integer lmaxi
Definition: modmain.f90:205