-
Notifications
You must be signed in to change notification settings - Fork 39
/
WriteFlowField.F90
49 lines (43 loc) · 1.87 KB
/
WriteFlowField.F90
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! !
! FILE: WriteFlowField.F90 !
! CONTAINS: subroutine WriteFlowField !
! !
! PURPOSE: Write down the full flow snapshot for !
! restarting the simulation at a later date !
! !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
subroutine WriteFlowField
use param
use local_arrays, only: vz,vy,vx,temp
implicit none
character*30 :: filnam1,dsetname
filnam1 = trim('continua_temp.h5')
call HdfWriteRealHalo3D(filnam1,temp)
filnam1 = trim('continua_vx.h5')
call HdfWriteRealHalo3D(filnam1,vx)
filnam1 = trim('continua_vy.h5')
call HdfWriteRealHalo3D(filnam1,vy)
filnam1 = trim('continua_vz.h5')
call HdfWriteRealHalo3D(filnam1,vz)
if (ismaster) then !EP only write once
filnam1 = trim('continua_master.h5')
call HdfCreateBlankFile(filnam1)
dsetname = trim('nx')
call HdfSerialWriteIntScalar(dsetname,filnam1,nx)
dsetname = trim('ny')
call HdfSerialWriteIntScalar(dsetname,filnam1,ny)
dsetname = trim('nz')
call HdfSerialWriteIntScalar(dsetname,filnam1,nz)
dsetname = trim('ylen')
call HdfSerialWriteRealScalar(dsetname,filnam1,ylen)
dsetname = trim('zlen')
call HdfSerialWriteRealScalar(dsetname,filnam1,zlen)
dsetname = trim('time')
call HdfSerialWriteRealScalar(dsetname,filnam1,time)
dsetname = trim('istr3')
call HdfSerialWriteIntScalar(dsetname,filnam1,istr3)
dsetname = trim('str3')
call HdfSerialWriteRealScalar(dsetname,filnam1,str3)
endif
end subroutine WriteFlowField