The Elk Code
 
Loading...
Searching...
No Matches
putepsinv.f90
Go to the documentation of this file.
1
2! Copyright (C) 2018 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
6subroutine putepsinv(iq,epsi)
7use modmain
9implicit none
10! arguments
11integer, intent(in) :: iq
12complex(8), intent(in) :: epsi(ngrf,ngrf,nwrf)
13! local variables
14integer recl
15! determine the record length for EPSINV.OUT
16inquire(iolength=recl) vql(1:3,iq),ngrf,nwrf,epsi
17!$OMP CRITICAL(u245)
18! write to RAM disk if required
19if (ramdisk) then
20 call putrd('EPSINV.OUT',iq,v1=vql(1:3,iq),n1=ngrf,n2=nwrf, &
21 nzv=ngrf*ngrf*nwrf,zva=epsi)
22end if
23! write to disk if required
24if (wrtdsk) then
25 open(245,file='EPSINV.OUT',form='UNFORMATTED',access='DIRECT',recl=recl)
26 write(245,rec=iq) vql(1:3,iq),ngrf,nwrf,epsi
27 close(245)
28end if
29!$OMP END CRITICAL(u245)
30end subroutine
31
real(8), dimension(:,:), allocatable vql
Definition modmain.f90:545
type(file_t), dimension(:), allocatable, private file
subroutine putrd(fname, irec, n1, n2, n3, v1, v2, nrv, rva, nzv, zva)
logical wrtdsk
logical ramdisk
Definition modramdisk.f90:9
subroutine putepsinv(iq, epsi)
Definition putepsinv.f90:7