File: N:\mfix\model\output_mod.f

1     !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv!
2     !                                                                      !
3     !  Module: output                                                      !
4     !  Author: M. Syamlal                                 Date: dd-mmm-yy  !
5     !                                                                      !
6     !  Purpose: Contain data for output control.                           !
7     !                                                                      !
8     !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^!
9           MODULE output
10     
11           use param, only: DIMENSION_USR
12           use param1, only: N_SPX
13     
14     ! Interval at which restart (.RES) file data is updated.
15           DOUBLE PRECISION :: RES_DT
16     ! Interval to create a backup copy of the RES file.
17           DOUBLE PRECISION :: RES_BACKUP_DT
18     ! Number of RES file copies to retain.
19           INTEGER :: RES_BACKUPS
20     ! Interval at which REAL restart (.SPx) files data are updated.
21           DOUBLE PRECISION :: SPX_DT(N_SPX)
22     ! Interval at which standard output (.OUT) file data is updated.
23           DOUBLE PRECISION :: OUT_DT
24     ! Interval at which user-defined output files are updated.
25           DOUBLE PRECISION :: USR_DT (DIMENSION_USR)
26     ! Interval to check and report the mass balance
27           DOUBLE PRECISION :: REPORT_MASS_BALANCE_DT
28     ! Interval in number of time steps at which LOG file is written
29           INTEGER :: NLOG
30     ! Flag to display messages and residuals on the screen
31           LOGICAL :: FULL_LOG
32     ! Flag to enable all ranks to write private LOG files.
33           LOGICAL :: ENABLE_DMP_LOG
34     ! Flag to print the index layout for  ijk<=>i,j,k  debugging tasks
35           LOGICAL :: DBGPRN_LAYOUT
36     ! Generate log files when negative gas density is detected.
37           LOGICAL :: REPORT_NEG_DENSITY
38     ! Generate log files when negative specific heat is detected.
39           LOGICAL :: REPORT_NEG_SPECIFICHEAT
40     
41     
42     ! Time at which special output is to be written
43           DOUBLE PRECISION :: USR_TIME(DIMENSION_USR)
44     ! Time at which restart file is to be written
45           DOUBLE PRECISION :: RES_TIME
46     ! Time at which restart backup file is to be written
47           DOUBLE PRECISION :: RES_BACKUP_TIME
48     ! Time at which REAL restart file is to be written
49           DOUBLE PRECISION :: SPX_TIME(N_SPX)
50     ! Time at which standard output is to be written
51           DOUBLE PRECISION :: OUT_TIME
52     
53     ! The approximate amount (in MB) of space needed to write
54     ! one time step of data into the indexed SPX file.
55           DOUBLE PRECISION :: DISK(N_SPX) = 0.0d0
56     ! The approximated total disk space (in MB)
57           DOUBLE PRECISION :: DISK_TOT = 0.0d0
58     ! One megabite (MB)
59           DOUBLE PRECISION, PARAMETER :: ONEMEG = 1048576
60     
61     ! The following have no direct usage in the code. They are generic
62     ! hooks wereby a user can specify some information. It may be useful
63     ! to have the USR_I/J/K variables calculated in a check routine
64     ! the same way that coordinates for BCs, ICs, PSs, are calculated.
65     !--------------------------------------------------------------------//
66     ! X coordinate of the west face of user output region
67           DOUBLE PRECISION :: USR_X_w (DIMENSION_USR)
68     ! X coordinate of the east face of user output region
69           DOUBLE PRECISION :: USR_X_e (DIMENSION_USR)
70     ! Y coordinate of the south face of user output region
71           DOUBLE PRECISION :: USR_Y_s (DIMENSION_USR)
72     ! Y coordinate of the north face of user output region
73           DOUBLE PRECISION :: USR_Y_n (DIMENSION_USR)
74     ! Z coordinate of the bottom face of user output region
75           DOUBLE PRECISION :: USR_Z_b (DIMENSION_USR)
76     ! Z coordinate of the top face of user output region
77           DOUBLE PRECISION :: USR_Z_t (DIMENSION_USR)
78     ! I index of the west face of user output region
79           INTEGER :: USR_I_w (DIMENSION_USR)
80     ! I index of the east face of user output region
81           INTEGER :: USR_I_e (DIMENSION_USR)
82     ! J index of the south face of user output region
83           INTEGER :: USR_J_s (DIMENSION_USR)
84     ! J index of the north face of user output region
85           INTEGER :: USR_J_n (DIMENSION_USR)
86     ! K index of the bottom face of user output region
87           INTEGER :: USR_K_b (DIMENSION_USR)
88     ! K index of the top face of user output region
89           INTEGER :: USR_K_t (DIMENSION_USR)
90     ! Type of user-defined output: BINARY or ASCII.
91           CHARACTER(LEN=6) :: USR_TYPE (DIMENSION_USR)
92     ! Variables to be written in the user-defined output file.
93           CHARACTER(LEN=60) :: USR_VAR (DIMENSION_USR)
94     ! Format for writing user-defined (ASCII) output file.
95           CHARACTER(LEN=60) :: USR_FORMAT (DIMENSION_USR)
96     ! Extension for the user-defined output file.
97           CHARACTER(LEN=16) :: USR_EXT (DIMENSION_USR)
98     
99     
100           END MODULE output
101