The Elk Code
 
Loading...
Searching...
No Matches
putgwsefm.f90
Go to the documentation of this file.
1
2! Copyright (C) 2017 A. Davydov, A. Sanna, J. K. Dewhurst, S. Sharma and
3! E. K. U. Gross. This file is distributed under the terms of the GNU General
4! Public License. See the file COPYING for license details.
5
6subroutine putgwsefm(ik,se)
7use modmain
8use modgw
10implicit none
11! arguments
12integer, intent(in) :: ik
13complex(8), intent(in) :: se(nstsv,nstsv,0:nwfm)
14! local variables
15integer recl
16!$OMP CRITICAL(u280)
17! write to RAM disk if required
18if (ramdisk) then
19 call putrd('GWSEFM.OUT',ik,v1=vkl(1:3,ik),n1=nstsv,n2=nwfm, &
20 nzv=nstsv*nstsv*(nwfm+1),zva=se)
21end if
22! write to disk if required
23if (wrtdsk) then
24! find the record length
25 inquire(iolength=recl) vkl(1:3,ik),nstsv,nwfm,se
26 open(280,file='GWSEFM.OUT',form='UNFORMATTED',access='DIRECT',recl=recl)
27 write(280,rec=ik) vkl(1:3,ik),nstsv,nwfm,se
28 close(280)
29end if
30!$OMP END CRITICAL(u280)
31end subroutine
32
Definition modgw.f90:6
real(8), dimension(:,:), allocatable vkl
Definition modmain.f90:471
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 putgwsefm(ik, se)
Definition putgwsefm.f90:7