32
33
34
38
39
40
41#include "implicit_f.inc"
42
43
44
45
46#include "com04_c.inc"
47! nimv
48#include "param_c.inc"
49
50
51
52 TYPE(MONVOL_STRUCT_), DIMENSION(NVOLU), INTENT(IN) :: T_MONVOL
53 TYPE(MONVOL_METADATA_), INTENT(IN) :: T_MONVOL_METADATA
54
55
56
57 INTEGER :: NN, II, JJ, KK, ID
58 CHARACTER(LEN = nchartitle) :: TITLE
59 CHARACTER(LEN = 255) :: VARNAME
60 INTEGER :: NJET, NVENT
61 DOUBLE PRECISION :: FVALUE
62 INTEGER, DIMENSION(NVOLU) :: IDX, IDS
63 LOGICAL :: OK_QA
64
65
66
68 IF (ok_qa) THEN
69 IF (nvolu > 0) THEN
70
71 DO ii = 1, nvolu
72 ids(ii) = t_monvol(ii)%ID
73 idx(ii) = ii
74 ENDDO
76
77 DO ii = 1, nicbag
78 DO jj = 1, nvolu * nvolu
79 WRITE(varname, '(A, I0, A, I0)') 'ICBAG_', ii, '_', jj
80 IF (t_monvol_metadata%ICBAG(ii, jj) /= 0) THEN
81 CALL qaprint(varname(1:len_trim(varname)),
82 . t_monvol_metadata%ICBAG(ii, jj), 0.0_8)
83 ENDIF
84 ENDDO
85 ENDDO
86
87 DO ii = 1, nicbag
88 DO jj = 1, nvolu * nvolu
89 WRITE(varname, '(A, I0, A, I0)') 'RCBAG_', ii, '_', jj
90 IF (t_monvol_metadata%RCBAG(ii, jj) /= zero) THEN
91 fvalue = t_monvol_metadata%RCBAG(ii, jj)
92 CALL qaprint(varname(1:len_trim(varname)),
93 . 0, fvalue)
94 ENDIF
95 ENDDO
96 ENDDO
97 ENDIF
98 DO kk = 1, nvolu
99 nn = idx(kk)
101 title = t_monvol(nn)%TITLE
102 IF (len_trim(title) == 0) THEN
103 title = "MONVOL_FAKE_TITLE"
104 ENDIF
105 CALL qaprint(title(1:len_trim(title)),
id, 0.0_8)
106
107 DO ii = 1, nimv
108 WRITE(varname, '(A, I0)') 'IVOLU_', ii
109 IF (t_monvol(nn)%IVOLU(ii) /= 0) THEN
110 CALL qaprint(varname(1:len_trim(varname)), t_monvol(nn)%IVOLU(ii), 0.0_8)
111 ENDIF
112 ENDDO
113
114 njet = t_monvol(nn)%NJET
115 IF (njet > 0) THEN
116 DO ii = 1, nibjet
117 DO jj = 1, njet
118 WRITE(varname, '(A, I0, A, I0)') 'IBAGJET_', ii, '_', jj
119 IF (t_monvol(nn)%IBAGJET(ii, jj) /= 0) THEN
121 ENDIF
122 ENDDO
123 ENDDO
124 ENDIF
125
126 nvent = t_monvol(nn)%NVENT
127 IF (nvent > 0) THEN
128 DO ii = 1, nibhol
129 DO jj = 1, nvent
130 WRITE(varname, '(A, I0, A, I0)') 'IBAGHOL_', ii, '_', jj
131 IF (t_monvol(nn)%IBAGHOL(ii, jj) /= 0) THEN
132 CALL qaprint(varname(1:len_trim(varname)), t_monvol(nn)%IBAGHOL(ii, jj), 0.0_8)
133 ENDIF
134 ENDDO
135 ENDDO
136 ENDIF
137
138 DO ii = 1, nrvolu
139 WRITE(varname, '(A, I0)') 'RVOLU_', ii
140 IF (t_monvol(nn)%RVOLU(ii) /= zero) THEN
141 fvalue = t_monvol(nn)%RVOLU(ii)
142 CALL qaprint(varname(1:len_trim(varname)), 0, fvalue)
143 ENDIF
144 ENDDO
145! rbagjet
146 IF (njet > 0) THEN
147 DO
148 DO jj = 1, njet
149 WRITE(varname, '(A, I0, A, I0)') 'RBAGJET_', ii, '_', jj
150 IF (t_monvol(nn)%RBAGJET(ii, jj) /= zero) THEN
151 fvalue = t_monvol(nn)%RBAGJET(ii, jj)
152 CALL qaprint(varname(1:len_trim(varname)), 0, fvalue)
153 ENDIF
154 ENDDO
155 ENDDO
156 ENDIF
157
158 IF (nvent > 0) THEN
159 DO ii = 1, nrbhol
160 DO jj = 1, nvent
161 WRITE(varname, '(A, I0, A, I0)') 'RBAGHOL_', ii, '_', jj
162 IF (t_monvol(nn)%RBAGHOL(ii, jj) /= zero) THEN
163 fvalue = t_monvol(nn)%RBAGHOL(ii, jj)
164 CALL qaprint(varname(1:len_trim(varname)), 0, fvalue)
165 ENDIF
166 ENDDO
167 ENDDO
168 ENDIF
169 ENDDO
170 ENDIF
171
172
173
integer, parameter nchartitle
logical function myqakey(value)
@purpose Check if a given value is part of the values set by env variable Useful to make a condition ...
subroutine qaprint(name, idin, value)
@purpose print one entry to QA extract file example of call for real print CALL QAPRINT('MY_LABEL',...
recursive subroutine quicksort_i2(a, idx, first, last)