The Elk Code
cfshtip.f90
Go to the documentation of this file.
1 
2 ! Copyright (C) 2023 J. K. Dewhurst and S. Sharma.
3 ! This file is distributed under the terms of the GNU General Public License.
4 ! See the file COPYING for license details.
5 
6 subroutine cfshtip(nr,nri,cfmt)
7 use modmain
8 implicit none
9 ! arguments
10 integer, intent(in) :: nr,nri
11 complex(4), intent(inout) :: cfmt(*)
12 ! local variables
13 integer nro,npi,npo,i
14 ! automatic arrays
15 complex(4) f(max(lmmaxi*nri,lmmaxo*(nr-nri)))
16 ! transform the inner part of the muffin-tin function in-place
17 npi=lmmaxi*nri
18 f(1:npi)=cfmt(1:npi)
19 call cgemm('N','N',lmmaxi,nri,lmmaxi,cone,cfshti,lmmaxi,f,lmmaxi,czero,cfmt, &
20  lmmaxi)
21 ! transform the outer part of the muffin-tin function in-place
22 nro=nr-nri
23 npo=lmmaxo*nro
24 i=npi+1
25 f(1:npo)=cfmt(i:npi+npo)
26 call cgemm('N','N',lmmaxo,nro,lmmaxo,cone,cfshto,lmmaxo,f,lmmaxo,czero,cfmt(i),&
27  lmmaxo)
28 end subroutine
29 
complex(4), parameter czero
Definition: modmain.f90:1239
complex(4), dimension(:,:), allocatable cfshti
Definition: modmain.f90:581
complex(4), parameter cone
Definition: modmain.f90:1239
subroutine cfshtip(nr, nri, cfmt)
Definition: cfshtip.f90:7
complex(4), dimension(:,:), allocatable cfshto
Definition: modmain.f90:582