File: /nfs/home/0/users/jenkins/mfix.git/model/cartesian_grid/cartesian_grid_init_namelist.f

1     !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvC
2     !                                                                         C
3     !     Module name: CARTESIAN_GRID_INIT_NAMELIST                           C
4     !     Purpose: initialize the cartesian_grid-namelist                     C
5     !                                                                         C
6     !                                                                         C
7     !     Author: Jeff Dietiker                              Date: 26-Aug-08  C
8     !     Reviewer:                                          Date:            C
9     !     Comments:                                                           C
10     !                                                                         C
11     !                                                                         C
12     !  Keyword Documentation Format:                                          C
13     !<keyword category="category name" required="true/false"                  C
14     !                                    legacy="true/false">                 C
15     !  <description></description>                                            C
16     !  <arg index="" id="" max="" min=""/>                                    C
17     !  <dependent keyword="" value="DEFINED"/>                                C
18     !  <conflict keyword="" value="DEFINED"/>                                 C
19     !  <valid value="" note="" alias=""/>                                     C
20     !  <range min="" max="" />                                                C
21     !  MFIX_KEYWORD=INIT_VALUE                                                C
22     !</keyword>                                                               C
23     !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^C
24     !
25           SUBROUTINE CARTESIAN_GRID_INIT_NAMELIST
26     
27           USE param1
28           USE quadric
29           USE cutcell
30           USE polygon
31           USE vtk
32           USE progress_bar
33           USE dashboard
34           Use stl
35           USE rxns, only: nRR
36     
37           IMPLICIT NONE
38     !-----------------------------------------------
39     !     G l o b a l   P a r a m e t e r s
40     !-----------------------------------------------
41     !-----------------------------------------------
42     !     L o c a l   P a r a m e t e r s
43     !-----------------------------------------------
44     !-----------------------------------------------
45     !     L o c a l   V a r i a b l e s
46     !-----------------------------------------------
47     !
48     !-----------------------------------------------
49     !
50     !
51           INCLUDE 'cartesian_grid_namelist.inc'
52     
53     !<keyword category="cartesian grid" required="false">
54     !  <description>Activate Cartesian grid cut cell technique.</description>
55     !  <dependent keyword="COORDINATES" value="CARTESIAN"/>
56     !  <conflict keyword="COORDINATES" value="CYLINDRICAL"/>
57     !  <valid value=".false." note="Do not use Cartesian grid cut cell technique."/>
58     !  <valid value=".true." note="Use Cartesian grid cut cell
59     !  technique. one of the following methods must be used to define the
60     !  geometry:"/>
61           CARTESIAN_GRID = .FALSE.
62     !</keyword>
63     
64     !<keyword category="Cartesian grid" required="false">
65     !  <description>Number of quadric surfaces defining the boundaries (<=100).</description>
66     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
67     !  <range min="0" max="100" />
68           N_QUADRIC = 0
69     !</keyword>
70     
71     !<keyword category="Cartesian grid" required="false">
72     !  <description>Use STL file to describe geometry.</description>
73     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
74     !  <valid value=".false." note="Do not use STL file."/>
75     !  <valid value=".true." note="Read triangulated geometry (for 3d geometry only) from geometry.stl."/>
76           USE_STL = .FALSE.
77     !</keyword>
78     
79     !<keyword category="Cartesian grid" required="false">
80     !  <description>Use .msh file to describe geometry.</description>
81     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
82     !  <valid value=".false." note="Do not use .msh file."/>
83     !  <valid value=".true." note="Read geometry (for 3d geometry only) from geometry.msh."/>
84           USE_MSH = .FALSE.
85     !</keyword>
86     
87     !<keyword category="Cartesian grid" required="false">
88     !  <description>Use polygons to describe geometry.</description>
89     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
90     !  <valid value=".false." note="Do not use polygons."/>
91     !  <valid value=".true." note="Read polygon data (for 2d geometry only) from poly.dat."/>
92           USE_POLYGON = .FALSE.
93     !</keyword>
94     
95     !<keyword category="Cartesian grid" required="false">
96     !  <description>Number of user-defined functions (currently limited to
97     !  0 or 1). If set to 1, the geometry is defined in the user
98     !  subroutine eval_usr_fct.f.</description>
99     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
100     !  <valid value="0" note="Do not use user-defined function" alias=""/>
101     !  <valid value="1" note="Use one user-defined function" alias=""/>
102     !  <range min="0" max="1" />
103           N_USR_DEF = 0
104     !</keyword>
105     
106     !<keyword category="Cartesian grid" required="false">
107     !  <description>Form of the quadric surface equation.</description>
108     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
109     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
110     !  <valid value="normal" note="Use normal form, as defined in equation 
111     !    (1). The LAMDBA\'s and D must be defined"/>
112     !  <valid value="plane" note="Plane. Needs to define N_X,N_Y,N_Z
113     !    (unit normal vector pointing away from fluid cells)."/>
114     !  <valid value="x_cyl_int" note="Cylinder aligned with x-axis, 
115     !    internal flow. Needs to define RADIUS(QID)."/>
116     !  <valid value="x_cyl_ext" note="Cylinder aligned with x-axis, 
117     !    external flow. Needs to define RADIUS(QID)."/>
118     !  <valid value="y_cyl_int" note="Cylinder aligned with y-axis, 
119     !    internal flow. Needs to define RADIUS(QID)."/>
120     !  <valid value="y_cyl_ext" note="Cylinder aligned with y-axis, 
121     !    external flow. Needs to define RADIUS(QID)."/>
122     !  <valid value="z_cyl_int" note="Cylinder aligned with z-axis,
123     !    internal flow. Needs to define RADIUS(QID)."/>
124     !  <valid value="z_cyl_ext" note="Cylinder aligned with z-axis, 
125     !    external flow. Needs to define RADIUS(QID)."/>
126     !  <valid value="x_cone" note="Cone aligned with x-axis, internal flow.
127     !    Needs to define HALF_ANGLE(QID)."/>
128     !  <valid value="y_cone" note="Cone aligned with y-axis, internal flow.
129     !    Needs to define HALF_ANGLE(QID)."/>
130     !  <valid value="z_cone" note="Cone aligned with z-axis, internal flow.
131     !    Needs to define HALF_ANGLE(QID)."/>
132     !  <valid value="sphere_int" note="Sphere, internal flow.
133     !    Needs to define RADIUS(QID)."/>
134     !  <valid value="sphere_ext" note="Sphere, external flow.
135     !    Needs to define RADIUS(QID)."/>
136     !  <valid value="C2C" note="Cylinder-to-cylinder conical junction,
137     !    internal flow. Needs to be defined between two cylinders."/>
138     !  <valid value="Torus_int" note="Torus, internal flow. Needs to
139     !    define TORUS_R1(QID) and TORUS_R2(QID).A torus is not a quadric
140     !    surface but is defined as a basic shape."/>
141     !  <valid value="Torus_ext" note="Torus, external flow. Needs to define
142     !    TORUS_R1(QID) and TORUS_R2(QID)."/>
143     !  <valid value="Y_UCOIL_EXT" note="Pair of parallel cylinders (y-direction),
144     !     capped at both ends by half a torus, to create a U-shaped coil. Needs
145     !     UCOIL_R1, UCOIL_R2, UCOIL_Y1, UCOIL_Y2."/>
146     !  <valid value="Y_UCOIL_EXT" note="Pair of parallel cylinders (y-direction),
147     !     capped at both ends by a cylinder at 90 degree angle
148     !     to create a U-shaped coil. Needs
149     !     UCOIL_R1, UCOIL_R2, UCOIL_Y1, UCOIL_Y2."/>
150     !  <valid value="XY_BEND_INT" note="Bend between 
151     !     two cylinders in the XY plane, Needs
152     !     BEND_R1,BEND_R2,BEND_THETA1,BEND_THETA2."/>
153     !  <valid value="Y_C2C_INT" note="connects two vertical cylinders by a 
154     !     conical section. Needs C2C_R1,C2C_R2,C2C_Y1,C2C_Y2."/>
155     !  <valid value="REACTOR1" note="Reactor, made of two vertical cylinders,
156     !     connected by a conical section.Each cylinder is rounded and closed 
157     !     by a conical cap. Needs REACTOR1_R1,REACTOR1_R2,REACTOR1_Y1,REACTOR1_Y2,
158     !     REACTOR1_YR1,REACTOR1_YR2,REACTOR1_RR1,REACTOR1_RR2,      
159     !     REACTOR1_THETA1,REACTOR1_THETA2."/>
160           quadric_form = 'NORMAL'
161     !</keyword>
162     
163     !<keyword category="Cartesian grid" required="false">
164     !  <description>
165     !    Scaling factor, applied to all quadric geometry parameters. Must
166     !    be a positive number.
167     !  </description>
168     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
169     !  <range min="0.0" max="" />
170           quadric_scale = ONE
171     !</keyword>
172     
173     !<keyword category="Cartesian grid" required="false">
174     !  <description> 
175     !    Coefficient LAMBDA_X in equation (1) ('NORMAL' form) or
176     !    x-component of normal vector defining plane in equation (5)
177     !    ('DEGENERATE' form).
178     !  </description>
179     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
180     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
181           lambda_x = ZERO
182     !</keyword>
183     
184     !<keyword category="Cartesian grid" required="false">
185     !  <description>
186     !    Coefficient LAMBDA_Y in equation (1) ('NORMAL' form) or
187     !    y-component of normal vector defining plane in equation (5)
188     !    ('DEGENERATE' form).
189     !  </description>
190     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
191     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
192           lambda_y = ZERO
193     !</keyword>
194     
195     !<keyword category="Cartesian grid" required="false">
196     !  <description>
197     !    Coefficient LAMBDA_Z in equation (1) ('NORMAL' form) or
198     !    z-component of normal vector defining plane in equation (5)
199     !    ('DEGENERATE' form).
200     !  </description>
201     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
202     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
203           lambda_z = ZERO
204     !</keyword>
205     
206     !<keyword category="Cartesian grid" required="false">
207     !  <description>Coefficient D in equation (1).</description>
208     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
209     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
210           dquadric = ZERO
211     !</keyword>
212     
213     !<keyword category="Cartesian grid" required="false">
214     !  <description>
215     !    Rotation angle with respect to x-axis (degrees).
216     !  </description>
217     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
218     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
219           theta_x = ZERO
220     !</keyword>
221     
222     !<keyword category="Cartesian grid" required="false">
223     !  <description>
224     !    Rotation angle with respect to y-axis (degrees).
225     !  </description>
226     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
227     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
228           theta_y = ZERO
229     !</keyword>
230     
231     !<keyword category="Cartesian grid" required="false">
232     !  <description>
233     !    Rotation angle with respect to z-axis (degrees).
234     !  </description>
235     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
236     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
237           theta_z = ZERO
238     !</keyword>
239     
240     !<keyword category="Cartesian grid" required="false">
241     !  <description>
242     !    Cylinder radius (used when QUADRIC_FORM = *_CYL_***)
243     !  </description>
244     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
245     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
246           Radius = ZERO
247     !</keyword>
248     
249     !<keyword category="Cartesian grid" required="false">
250     !  <description>
251     !    Cone half angle, expressed in degrees (used when 
252     !    QUADRIC_FORM = *_CONE)
253     !  </description>
254     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
255     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
256           Half_angle = ZERO
257     !</keyword>
258     
259     !<keyword category="Cartesian grid" required="false">
260     !  <description>
261     !    Torus Radius 1 (used when QUADRIC_FORM = TORUS_*), 
262     !    R1>R2 for a ring.
263     !  </description>
264     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
265     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
266           Torus_R1 = ZERO
267     !</keyword>
268     
269     !<keyword category="Cartesian grid" required="false">
270     !  <description>
271     !    Torus Radius 2 (used when QUADRIC_FORM = TORUS_*), 
272     !    R1>R2 for a ring.
273     !  </description>
274     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
275     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
276           Torus_R2 = ZERO
277     !</keyword>
278     
279     !<keyword category="Cartesian grid" required="false">
280     !  <description>
281     !    U-shaped coil Radius 1 (used when QUADRIC_FORM = UCOIL*),
282     !    UCOIL_R1>UCOIL_R2.
283     !  </description>
284     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
285     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
286           UCOIL_R1 = ZERO
287     !</keyword>
288     
289     !<keyword category="Cartesian grid" required="false">
290     !  <description>
291     !    U-shaped coil Radius 2 (used when QUADRIC_FORM = UCOIL*),
292     !    UCOIL_R1>UCOIL_R2.
293     !  </description>
294     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
295     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
296           UCOIL_R2 = ZERO
297     !</keyword>
298     
299     !<keyword category="Cartesian grid" required="false">
300     !  <description>
301     !    U-shaped coil ymax (used when QUADRIC_FORM = UCOIL*),
302     !    UCOIL_Y2>UCOIL_Y1.
303     !  </description>
304     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
305     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
306           UCOIL_Y1 = -UNDEFINED
307     !</keyword>
308     
309     !<keyword category="Cartesian grid" required="false">
310     !  <description>
311     !    U-shaped coil ymin (used when QUADRIC_FORM = UCOIL*),
312     !    UCOIL_Y2>UCOIL_Y1.
313     !  </description>
314     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
315     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
316           UCOIL_Y2 = UNDEFINED
317     !</keyword>
318     
319     !<keyword category="Cartesian grid" required="false">
320     !  <description>
321     !    Bend Radius 1 (used when QUADRIC_FORM = BEND*),
322     !    BEND_R1>BEND_R2.
323     !  </description>
324     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
325     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
326           BEND_R1 = ZERO
327     !</keyword>
328     
329     !<keyword category="Cartesian grid" required="false">
330     !  <description>Bend Radius 2 (used when QUADRIC_FORM = BEND*),
331     !    BEND_R1>BEND_R2.
332     !  </description>
333     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
334     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
335           BEND_R2 = ZERO
336     !</keyword>
337     
338     !<keyword category="Cartesian grid" required="false">
339     !  <description>
340     !    Bend start angle, in degrees (used when QUADRIC_FORM = BEND*).
341     !  </description>
342     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
343     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
344           BEND_THETA1 = ZERO
345     !</keyword>
346     
347     !<keyword category="Cartesian grid" required="false">
348     !  <description>
349     !    Bend end angle, in degrees (used when QUADRIC_FORM = BEND*).
350     !  </description>
351     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
352     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
353           BEND_THETA2 = ZERO
354     !</keyword>
355     
356     !<keyword category="Cartesian grid" required="false">
357     !  <description>
358     !    Cylinder-cone_cylinder Radius 1 (used when QUADRIC_FORM = C2C*).
359     !  </description>
360     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
361     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
362           C2C_R1 = ZERO
363     !</keyword>
364     
365     !<keyword category="Cartesian grid" required="false">
366     !  <description>
367     !    Cylinder-cone_cylinder Radius 2 (used when QUADRIC_FORM = C2C*).
368     !  </description>
369     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
370     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
371           C2C_R2 = ZERO
372     !</keyword>
373     
374     !<keyword category="Cartesian grid" required="false">
375     !  <description>
376     !    Cylinder-cone_cylinder Y1 (used when QUADRIC_FORM = C2C*).
377     !    If Y1=Y2, then R1=R2.
378     !  </description>
379     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
380     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
381           C2C_Y1 = -UNDEFINED
382     !</keyword>
383     
384     !<keyword category="Cartesian grid" required="false">
385     !  <description>
386     !    Cylinder-cone_cylinder Y2 (used when QUADRIC_FORM = C2C*).
387     !    If Y1=Y2, then R1=R2.
388     !  </description>
389     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
390     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
391           C2C_Y2 = UNDEFINED
392     !</keyword>
393     
394     !<keyword category="Cartesian grid" required="false">
395     !  <description>Reactor 1, lower cylinder radius.</description>
396     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
397     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
398           REACTOR1_R1 = UNDEFINED
399     !</keyword>
400     
401     !<keyword category="Cartesian grid" required="false">
402     !  <description>Reactor 1, upper cylinder radius.</description>
403     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
404     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
405           REACTOR1_R2 = UNDEFINED
406     !</keyword>
407     
408     !<keyword category="Cartesian grid" required="false">
409     !  <description>
410     !    Reactor 1, lower conical transition between cylinders.
411     !  </description>
412     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
413     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
414           REACTOR1_Y1 = UNDEFINED
415     !</keyword>
416     
417     !<keyword category="Cartesian grid" required="false">
418     !  <description>
419     !    Reactor 1, upper conical transition between cylinders.
420     !  </description>
421     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
422     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
423           REACTOR1_Y2 = UNDEFINED
424     !</keyword>
425     
426     !<keyword category="Cartesian grid" required="false">
427     !  <description>Reactor 1, lower rounding below cylinder.</description>
428     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
429     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
430           REACTOR1_YR1 = UNDEFINED
431     !</keyword>
432     
433     !<keyword category="Cartesian grid" required="false">
434     !  <description>Reactor 1, upper rounding above cylinder.</description>
435     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
436     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
437           REACTOR1_YR2 = UNDEFINED
438     !</keyword>
439     
440     !<keyword category="Cartesian grid" required="false">
441     !  <description>Reactor 1, lower rounding radius.</description>
442     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
443     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
444           REACTOR1_RR1 = UNDEFINED
445     !</keyword>
446     
447     !<keyword category="Cartesian grid" required="false">
448     !  <description>Reactor 1, upper rounding radius.</description>
449     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
450     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
451           REACTOR1_RR2 = UNDEFINED
452     !</keyword>
453     
454     
455     !<keyword category="Cartesian grid" required="false">
456     !  <description>Reactor 1, lower rounding angle (degrees).</description>
457     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
458     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
459           REACTOR1_THETA1 = UNDEFINED
460     !</keyword>
461     
462     !<keyword category="Cartesian grid" required="false">
463     !  <description>Reactor 1, upper rounding angle (degrees).</description>
464     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
465     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
466           REACTOR1_THETA2 = UNDEFINED
467     !</keyword>
468     
469     
470     !<keyword category="Cartesian grid" required="false">
471     !  <description>
472     !    X-component of normal vector defining the plane (used when 
473     !    QUADRIC_FORM = PLANE).
474     !  </description>
475     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
476     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
477           n_x = ZERO
478     !</keyword>
479     
480     !<keyword category="Cartesian grid" required="false">
481     !  <description>
482     !    Y-component of normal vector defining the plane (used when
483     !    QUADRIC_FORM = PLANE).
484     !  </description>
485     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
486     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
487           n_y = ZERO
488     !</keyword>
489     
490     !<keyword category="Cartesian grid" required="false">
491     !  <description>
492     !    Z-component of normal vector defining the plane (used when
493     !    QUADRIC_FORM = PLANE).
494     !  </description>
495     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
496     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
497           n_z = ZERO
498     !</keyword>
499     
500     !<keyword category="Cartesian grid" required="false">
501     !  <description>Translation in x-direction.</description>
502     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
503     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
504           t_x = ZERO
505     !</keyword>
506     
507     !<keyword category="Cartesian grid" required="false">
508     !  <description>Translation in y-direction.</description>
509     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
510     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
511           t_y = ZERO
512     !</keyword>
513     
514     !<keyword category="Cartesian grid" required="false">
515     !  <description>Translation in z-direction.</description>
516     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
517     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
518           t_z = ZERO
519     !</keyword>
520     
521     !<keyword category="Cartesian grid" required="false">
522     !  <description>Lower x-limit where the quadric is defined.</description>
523     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
524     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
525           clip_xmin = - LARGE_NUMBER
526     !</keyword>
527     
528     !<keyword category="Cartesian grid" required="false">
529     !  <description>Upper x-limit where the quadric is defined.</description>
530     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
531     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
532           clip_xmax =   LARGE_NUMBER
533     !</keyword>
534     
535     !<keyword category="Cartesian grid" required="false">
536     !  <description>Lower y-limit where the quadric is defined.</description>
537     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
538     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
539           clip_ymin = - LARGE_NUMBER
540     !</keyword>
541     
542     !<keyword category="Cartesian grid" required="false">
543     !  <description>Upper y-limit where the quadric is defined.</description>
544     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
545     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
546           clip_ymax =   LARGE_NUMBER
547     !</keyword>
548     
549     !<keyword category="Cartesian grid" required="false">
550     !  <description>Lower z-limit where the quadric is defined.</description>
551     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
552     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
553           clip_zmin = - LARGE_NUMBER
554     !</keyword>
555     
556     !<keyword category="Cartesian grid" required="false">
557     !  <description>Upper z-limit where the quadric is defined.</description>
558     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
559     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
560           clip_zmax =   LARGE_NUMBER
561     !</keyword>
562     
563     !<keyword category="Cartesian grid" required="false">
564     !  <description>Lower x-limit where the quadric is defined in a piecewise group.</description>
565     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
566     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
567           piece_xmin = - LARGE_NUMBER
568     !</keyword>
569     
570     !<keyword category="Cartesian grid" required="false">
571     !  <description>Upper z-limit where the quadric is defined in a piecewise group.</description>
572     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
573     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
574           piece_xmax =   LARGE_NUMBER
575     !</keyword>
576     
577     !<keyword category="Cartesian grid" required="false">
578     !  <description>Lower y-limit where the quadric is defined in a piecewise group.</description>
579     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
580     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
581           piece_ymin = - LARGE_NUMBER
582     !</keyword>
583     
584     !<keyword category="Cartesian grid" required="false">
585     !  <description>Upper y-limit where the quadric is defined in a piecewise group.</description>
586     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
587     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
588           piece_ymax =   LARGE_NUMBER
589     !</keyword>
590     
591     !<keyword category="Cartesian grid" required="false">
592     !  <description>Lower z-limit where the quadric is defined in a piecewise group.</description>
593     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
594     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
595           piece_zmin = - LARGE_NUMBER
596     !</keyword>
597     
598     !<keyword category="Cartesian grid" required="false">
599     !  <description>Upper z-limit where the quadric is defined in a piecewise group.</description>
600     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
601     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
602           piece_zmax =   LARGE_NUMBER
603     !</keyword>
604     
605     
606     !<keyword category="Cartesian grid" required="false">
607     !  <description>
608     !    Flag defining the type of cells that are outside of the zone 
609     !    defined by [CLIP_XMIN; CLIP_XMAX], [CLIP_YMIN; CLIP_YMAX],
610     !    [CLIP_ZMIN; CLIP_ZMAX].
611     !  </description>
612     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
613     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
614     !  <valid value=".false." note="Remove cells from computational domain."/>
615     !  <valid value=".true." note="Treat cells as fluid cells."/>
616           FLUID_IN_CLIPPED_REGION = .TRUE.
617     !</keyword>
618     
619     !<keyword category="Cartesian grid" required="false">
620     !  <description>Boundary condition flag.</description>
621     !  <arg index="1" id="Quadric ID" min="1" max="DIM_QUADRIC"/>
622     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
623           BC_ID_Q = UNDEFINED_I
624     !</keyword>
625     
626     !<keyword category="Cartesian grid" required="false">
627     !  <description>Number of group(s) of quadrics (<=50).</description>
628     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
629           N_GROUP = 1
630     !</keyword>
631     
632     !<keyword category="Cartesian grid" required="false">
633     !  <description>Number of quadrics in the group.</description>
634     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
635           GROUP_SIZE(1) = 1
636     !</keyword>
637           GROUP_SIZE(2:DIM_GROUP) = 0
638     
639     !<keyword category="Cartesian grid" required="false">
640     !  <description>Quadric ID assigned to a group.</description>
641     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
642           GROUP_Q = 0
643     !</keyword>
644     
645           GROUP_Q(1,1) = 1
646     !<keyword category="Cartesian grid" required="false">
647     !  <description>Relation among quadrics of a same group.</description>
648     !  <valid value="or" note="A point belongs to the computational domain
649     !    if at least one of f(x,y,z) among all quadrics is negative."/>
650     !  <valid value="and" note="A point belongs to the computational domain
651     !    if all of f(x,y,z) among all quadrics are negative."/>
652     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
653           GROUP_RELATION = 'OR'
654     !</keyword>
655     
656     !<keyword category="Cartesian grid" required="false">
657     
658     !  <description>
659     !    Relation between current group and combination of all previous groups.
660     !  </description>
661     !  <valid value="or" note="A point belongs to the computational domain
662     !    if f-value for the current group or f-value for the combination of
663     !    previous groups is negative."/>
664     !  <valid value="and" note="A point belongs to the computational
665     !    domain if f-value for the current group and f-value for the
666     !    combination of previous groups is negative."/>
667     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
668           RELATION_WITH_PREVIOUS = 'OR'
669     !</keyword>
670     
671     !<keyword category="Cartesian grid" required="false">
672     !  <description>Tolerance used to snap an intersection point onto an
673     !  existing cell corner (expressed as a fraction of edge length,
674     !  between 0.0 and 0.5). For stretched grids, three values can be
675     !  entered in the x, y and z directions.</description>
676     !  <range min="0.0" max="0.5" />
677     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
678           TOL_SNAP(1)    = 0.00D0  ! 0% of original edge length
679     !</keyword>
680           TOL_SNAP(2)    = UNDEFINED
681           TOL_SNAP(3)    = UNDEFINED
682     
683     !<keyword category="Cartesian grid" required="false">
684     !  <description>Tolerance used to limit acceptable values of normal
685     !  distance to the wall (expressed as a fraction of cell diagonal,
686     !  between 0.0 and 1.0).</description>
687     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
688           TOL_DELH       = 0.00D0  ! 0% of original Diagonal
689     !</keyword>
690     
691     !<keyword category="Cartesian grid" required="false">
692     !  <description>Tolerance used to detect small cells (expressed as a
693     !  fraction of cell volume, between 0.0 and 1.0).</description>
694     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
695           TOL_SMALL_CELL = 0.01D0  ! 1% of original cell volume
696     !</keyword>
697     
698     !<keyword category="Cartesian grid" required="false">
699     !  <description>Tolerance used to remove duplicate nodes (expressed as
700     !  a fraction of cell diagonal, between 0.0 and 1.0).</description>
701           TOL_MERGE      = 1.0D-12 ! fraction of original cell diagonal
702     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
703     !</keyword>
704     
705     !<keyword category="Cartesian grid" required="false">
706     !  <description>Tolerance used to detect small faces (expressed as a
707     !  fraction of original face area, between 0.0 and 1.0).</description>
708     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
709           TOL_SMALL_AREA = 0.01D0  ! 1% of original face area
710     !</keyword>
711     
712     !<keyword category="Cartesian grid" required="false">
713     !  <description>Maximum acceptable value of interpolation correction factor.</description>
714     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
715           ALPHA_MAX      = ONE
716     !</keyword>
717     
718     !<keyword category="Cartesian grid" required="false">
719     !  <description>Tolerance used to find intersection of quadric surfaces or user-defined function with background grid.</description>
720     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
721           TOL_F     = 1.0D-9
722     !</keyword>
723     
724     !<keyword category="Cartesian grid" required="false">
725     !  <description>Tolerance used to find intersection of polygon with background grid.</description>
726     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
727           TOL_POLY  = 1.0D-9
728     !</keyword>
729     
730     !<keyword category="Cartesian grid" required="false">
731     !  <description>Maximum number of iterations used to find intersection points.</description>
732     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
733           ITERMAX_INT = 10000
734     !</keyword>
735     
736     !<keyword category="Cartesian grid" required="false">
737     !  <description>Tolerance used to find intersection of STL triangles with background grid.</description>
738     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
739           TOL_STL = 1.0D-6        ! Settings for STL file
740     !</keyword>
741     
742     !<keyword category="Cartesian grid" required="false">
743     !  <description>Smallest angle accepted for valid STL triangles (in
744     !  degrees). Triangles having an angle smaller that this value will be
745     !  ignored.</description>
746     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
747           STL_SMALL_ANGLE = 5.0   ! Degrees
748     !</keyword>
749     
750     !<keyword category="Cartesian grid" required="false">
751     !  <description>
752     !    Dot product tolerance when determining if a point lies in a facet.
753     !  </description>
754     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
755           TOL_STL_DP = 1.0D-3        ! Settings for STL file
756     !</keyword>
757     
758     !<keyword category="Cartesian grid" required="false">
759     !  <description>Maximum number of STL facets per cell.</description>
760     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
761           DIM_FACETS_PER_CELL  = 10        !
762     !</keyword>
763     
764     !<keyword category="Cartesian grid" required="false">
765     !  <description>
766     !    Maximum number of STL facets per cell for des data arrays.
767     !  </description>
768     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
769           MAX_FACETS_PER_CELL_DES  = 24
770     !</keyword>
771     
772     
773     !<keyword category="Cartesian grid" required="false">
774     !  <description>Defines value of F_STL outside of the STL geometry. a
775     !  value of 1.0 means the domain outside of the STL geometry is
776     !  excluded from computation, i.e., an internal flow is
777     !  computed.</description>
778     !  <valid value="-1.0" note="model an external flow"/>
779     !  <valid value="1.0" note="model an internal flow"/>
780     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
781           OUT_STL_VALUE = 1.0
782     !</keyword>
783     
784     !<keyword category="Cartesian grid" required="false">
785     !  <description>Boundary condition flag for the STL geometry</description>
786     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
787           STL_BC_ID = UNDEFINED_I
788     !</keyword>
789     
790     !<keyword category="Cartesian grid" required="false">
791     !  <description>
792     !    Translation in x-direction, applied to the STL geometry.
793     !  </description>
794     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
795           TX_STL = ZERO
796     !</keyword>
797     
798     !<keyword category="Cartesian grid" required="false">
799     !  <description>
800     !    Translation in y-direction, applied to the STL geometry.
801     !  </description>
802     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
803           TY_STL = ZERO
804     !</keyword>
805     
806     !<keyword category="Cartesian grid" required="false">
807     !  <description>
808     !    Translation in z-direction, applied to the STL geometry.
809     !  </description>
810     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
811           TZ_STL = ZERO
812     !</keyword>
813     
814     !<keyword category="Cartesian grid" required="false">
815     !  <description>
816     !    Scaling factor, applied to the STL geometry. Note that translation
817     !    occurs after scaling.
818     !  </description>
819     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
820           SCALE_STL = ONE
821     !</keyword>
822     
823     !<keyword category="Cartesian grid" required="false">
824     !  <description>
825     !    Tolerance used to find intersection of .msh file with background grid.
826     !  </description>
827     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
828           TOL_MSH = 1.0D-6        ! Settings for MSH file
829     !</keyword>
830     
831     !<keyword category="Cartesian grid" required="false">
832     !  <description>Defines value of f outside of the .msh geometry. a
833     !  value of 1.0 means the domain outside of the .msh geometry is
834     !  excluded from computation, i.e., an internal flow is
835     !  computed.</description>
836     !  <valid value="-1.0" note="model an external flow"/>
837     !  <valid value="1.0" note="model an internal flow"/>
838     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
839           OUT_MSH_VALUE = 1.0
840     !</keyword>
841     
842     !<keyword category="Cartesian grid" required="false">
843     !  <description>Translation in x-direction, applied to the .msh geometry.</description>
844     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
845           TX_MSH = ZERO
846     !</keyword>
847     
848     !<keyword category="Cartesian grid" required="false">
849     !  <description>Translation in y-direction, applied to the .msh geometry.</description>
850     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
851           TY_MSH = ZERO
852     !</keyword>
853     
854     !<keyword category="Cartesian grid" required="false">
855     !  <description>Translation in z-direction, applied to the .msh geometry.</description>
856     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
857           TZ_MSH = ZERO
858     !</keyword>
859     
860     !<keyword category="Cartesian grid" required="false">
861     !  <description>Scaling factor, applied to the .msh geometry. Note that translation occurs after scaling.</description>
862     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
863           SCALE_MSH = ONE
864     !</keyword>
865     
866     !<keyword category="Cartesian grid" required="false">
867     !  <description>
868     !    Ray propagation order used to determine whether any point is 
869     !    located inside or outside of the STL surface.
870     !  </description>
871     !  <valid value="ijk" note="Propagation occurs in the 
872     !    I, followed by J, and K directions"/>
873     !  <valid value="jki" note="Propagation occurs in the 
874     !    J, followed by K, and I directions"/>
875     !  <valid value="kij" note="Propagation occurs in the 
876     !    K, followed by I, and J directions"/>
877     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
878           CAD_PROPAGATE_ORDER = '   '
879     !</keyword>
880     
881     !<keyword category="Cartesian grid" required="false">
882     !  <description>Ray direction when propagating CAD value</description>
883     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
884           RAY_DIR = 'X-'
885     !</keyword>
886     
887     !<keyword category="Cartesian grid" required="false">
888     !  <description>
889     !    Flag to detect and treat corner cells the same way as
890     !    in the original MFIX version (i.e. without cut cells).
891     !  </description>
892     !  <valid value=".true." note="Some cut cells may be treated as corner cells."/>
893     !  <valid value=".false." note="Do not treat cut cells as corner cells."/>
894     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
895           SET_CORNER_CELLS = .FALSE.
896     !</keyword>
897     
898     !<keyword category="Cartesian grid" required="false">
899     !  <description>
900     !    Factor used to allocate cut cell arrays (expressed as a fraction
901     !    of DIMENSION_3G).
902     !  </description>
903     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
904           FAC_DIM_MAX_CUT_CELL = 0.25
905     !</keyword>
906     
907     !<keyword category="Output Control" required="false">
908     !  <description>Write VTK files at regular intervals.</description>
909     !  <valid value=".false." note="Do not write VTK files. if there are
910     !  cut cells, they will not be displayed from the usual .res file"/>
911     !  <valid value=".true." note="Valid only if Cartesian_grid = .true."/>
912     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
913           WRITE_VTK_FILES = .FALSE.
914     !</keyword>
915     
916     !<keyword category="Output Control" required="false">
917     !  <description>Use time-dependent VTK file names</description>
918     !  <valid value=".false." note="The VTK file overwrites the previous
919     !    file (recommended for steady-state computation)."/>
920     !  <valid value=".true." note="A sequential integer is appended to the
921     !    VTK filenames as they are written to create a series of files
922     !    (recommended for transient computation)."/>
923     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
924           TIME_DEPENDENT_FILENAME = .TRUE.
925     !</keyword>
926     
927     !<keyword category="Output Control" required="false">
928     !  <description>
929     !    Interval (expressed in seconds of simulation time) at which VTK 
930     !    files are written.
931     !  </description>
932     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
933           VTK_DT     = UNDEFINED
934     !</keyword>
935     
936     !<keyword category="Output Control" required="false">
937     !  <description>List of variables written in the VTK files.</description>
938     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
939     !  <valid value="1" note="Void fraction (EP_g)"/>
940     !  <valid value="2" note="Gas pressure, solids pressure (P_g, P_star)"/>
941     !  <valid value="3" note="Gas velocity (U_g, V_g, W_g)"/>
942     !  <valid value="4" note="Solids velocity (U_s, V_s, W_s)"/>
943     !  <valid value="5" note="Solids density (ROP_s)"/>
944     !  <valid value="6" note="Gas and solids temperature (T_g, T_s)"/>
945     !  <valid value="7" note="Gas and solids mass fractions (X_g, X_s)"/>
946     !  <valid value="8" note="Granular temperature (Theta_m)"/>
947     !  <valid value="9" note="Scalar"/>
948     !  <valid value="10" note="Reaction rates"/>
949     !  <valid value="11" note="K and Epsilon"/>
950     !  <valid value="12" note="Vorticity magnitude and lambda_2"/>
951     !  <valid value="100" note="Grid Partition"/>
952     !  <valid value="101" note="Boundary Condition ID"/>
953     !  <valid value="102" note="Distance to wall"/>
954     !  <valid value="103" note="DEM facet count"/>
955     !  <valid value="104" note="DEM Neighboring facets"/>
956     !  <valid value="999" note="Cell IJK index"/>
957     !  <valid value="1000" note="Cut face normal vector"/>
958           VTK_VAR(1) = UNDEFINED_I
959     !</keyword>
960           VTK_VAR(2:20) = UNDEFINED_I
961     
962     !<keyword category="Output Control" required="false">
963     !  <description>Write void fraction in VTK file.</description>
964     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
965           VTK_EP_g = .FALSE.
966     !</keyword>
967     
968     
969     !<keyword category="Output Control" required="false">
970     !  <description>Write gas pressure in VTK file.</description>
971     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
972           VTK_P_g = .FALSE.
973     !</keyword>
974     
975     !<keyword category="Output Control" required="false">
976     !  <description>Write solids pressure in VTK file.</description>
977     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
978           VTK_P_star = .FALSE.
979     !</keyword>
980     
981     !<keyword category="Output Control" required="false">
982     !  <description>Write gas velocity vector in VTK file.</description>
983     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
984           VTK_VEL_g = .FALSE.
985     !</keyword>
986     
987     !<keyword category="Output Control" required="false">
988     !  <description>Write x-component of gas velocity vector in VTK file.</description>
989     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
990           VTK_U_g = .FALSE.
991     !</keyword>
992     
993     !<keyword category="Output Control" required="false">
994     !  <description>Write y-component of gas velocity vector in VTK file.</description>
995     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
996           VTK_V_g = .FALSE.
997     !</keyword>
998     
999     !<keyword category="Output Control" required="false">
1000     !  <description>Write z-component of gas velocity vector in VTK file.</description>
1001     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1002           VTK_W_g = .FALSE.
1003     !</keyword>
1004     
1005     !<keyword category="Output Control" required="false">
1006     !  <description>Write solids velocity vector in VTK file.</description>
1007     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1008           VTK_VEL_S = .FALSE.
1009     !</keyword>
1010     
1011     !<keyword category="Output Control" required="false">
1012     !  <description>Write x-component of solids velocity vector in VTK file.</description>
1013     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1014           VTK_U_s = .FALSE.
1015     !</keyword>
1016     
1017     !<keyword category="Output Control" required="false">
1018     !  <description>Write y-component of solids velocity vector in VTK file.</description>
1019     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1020           VTK_V_s = .FALSE.
1021     !</keyword>
1022     
1023     !<keyword category="Output Control" required="false">
1024     !  <description>Write z-component of solids velocity vector in VTK file.</description>
1025     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1026           VTK_W_s = .FALSE.
1027     !</keyword>
1028     
1029     !<keyword category="Output Control" required="false">
1030     !  <description>Write solids bulk density in VTK file.</description>
1031     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1032           VTK_ROP_s = .FALSE.
1033     !</keyword>
1034     
1035     !<keyword category="Output Control" required="false">
1036     !  <description>Write gas temperature in VTK file.</description>
1037     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1038           VTK_T_g = .FALSE.
1039     !</keyword>
1040     
1041     !<keyword category="Output Control" required="false">
1042     !  <description>Write solids temperature in VTK file.</description>
1043     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1044           VTK_T_s = .FALSE.
1045     !</keyword>
1046     
1047     !<keyword category="Output Control" required="false">
1048     !  <description>Write gas phase species in VTK file.</description>
1049     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1050           VTK_X_g = .FALSE.
1051     !</keyword>
1052     
1053     !<keyword category="Output Control" required="false">
1054     !  <description>Write solids phase species in VTK file.</description>
1055     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1056           VTK_X_s = .FALSE.
1057     !</keyword>
1058     
1059     !<keyword category="Output Control" required="false">
1060     !  <description>Write granular temperature in VTK file.</description>
1061     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1062           VTK_Theta_m = .FALSE.
1063     !</keyword>
1064     
1065     !<keyword category="Output Control" required="false">
1066     !  <description>Write scalar in VTK file.</description>
1067     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1068           VTK_Scalar =.FALSE.
1069     !</keyword>
1070     
1071     !<keyword category="Output Control" required="false">
1072     !  <description>Write reaction rates in VTK file.</description>
1073     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1074           VTK_RRate = .FALSE.
1075     !</keyword>
1076     
1077     !<keyword category="Output Control" required="false">
1078     !  <description>Write turbulent kinetic energy in VTK file.</description>
1079     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1080           VTK_K_Turb_G = .FALSE.
1081     !</keyword>
1082     
1083     !<keyword category="Output Control" required="false">
1084     !  <description>Write turbulent dissipation rate in VTK file.</description>
1085     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1086           VTK_E_Turb_G = .FALSE.
1087     !</keyword>
1088     
1089     !<keyword category="Output Control" required="false">
1090     !  <description>Write vorticity magnitude in VTK file.</description>
1091     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1092           VTK_VORTICITY = .FALSE.
1093     !</keyword>
1094     
1095     !<keyword category="Output Control" required="false">
1096     !  <description>Write lambda_2 in VTK file.</description>
1097     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1098           VTK_LAMBDA_2  = .FALSE.
1099     !</keyword>
1100     
1101     !<keyword category="Output Control" required="false">
1102     !  <description>Write void grid partition in VTK file.</description>
1103     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1104           VTK_PARTITION = .FALSE.
1105     !</keyword>
1106     
1107     !<keyword category="Output Control" required="false">
1108     !  <description>Write boundary condition ID in VTK file.</description>
1109     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1110           VTK_BC_ID = .FALSE.
1111     !</keyword>
1112     
1113     !<keyword category="Output Control" required="false">
1114     !  <description>Write wall distance in VTK file.</description>
1115     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1116           VTK_DWALL = .FALSE.
1117     !</keyword>
1118     
1119     !<keyword category="Output Control" required="false">
1120     !  <description>Write STL facet count for DES in VTK file.</description>
1121     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1122           VTK_FACET_COUNT_DES = .FALSE.
1123     !</keyword>
1124     
1125     !<keyword category="Output Control" required="false">
1126     !  <description>Write neighboring facets in VTK file.</description>
1127     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1128           VTK_NB_FACET_DES = .FALSE.
1129     !</keyword>
1130     
1131     !<keyword category="Output Control" required="false">
1132     !  <description>Write cell IJK index in VTK file.</description>
1133     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1134           VTK_IJK = .FALSE.
1135     !</keyword>
1136     
1137     !<keyword category="Output Control" required="false">
1138     !  <description>Write cut face normal vector in VTK file.</description>
1139     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1140           VTK_NORMAL = .FALSE.
1141     !</keyword>
1142     
1143     !<keyword category="Output Control" required="false">
1144     !  <description>Write debug variable in VTK file.</description>
1145     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1146           VTK_DEBUG = .FALSE.
1147     !</keyword>
1148     
1149     !<keyword category="Output Control" required="false">
1150     !  <description>Type of data to write in the VTK file.</description>
1151     !  <valid value="C" note="Cell data (VTU file)."/>
1152     !  <valid value="P" note="Particle data (VTP file)."/>
1153     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1154           VTK_DATA = 'C'
1155     !</keyword>
1156     
1157     !<keyword category="Output Control" required="false">
1158     !  <description>Tolerance to detect particle in a VTK region.</description>
1159     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1160           VTK_SLICE_TOL = ZERO
1161     !</keyword>
1162     
1163     !<keyword category="Output Control" required="false">
1164     !  <description>Particle selection mode in a VTK region.</description>
1165     !  <valid value="C" note="Select particles with centers inside
1166     !    the VTK region."/>
1167     !  <valid value="P" note="Select particles that are entirely inside
1168     !    the VTK region."/>
1169     !  <valid value="I" note="Select particles that are inside or
1170     !    intersect the edges of the VTK region."/>
1171     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1172           VTK_SELECT_MODE = 'C'
1173     !</keyword>
1174     
1175     !<keyword category="Output Control" required="false">
1176     !  <description>Write particle radius in VTK file.</description>
1177     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1178           VTK_PART_DIAMETER= .FALSE.
1179     !</keyword>
1180     
1181     
1182     !<keyword category="Output Control" required="false">
1183     !  <description>Write particle velocity in VTK file.</description>
1184     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1185           VTK_PART_VEL= .FALSE.
1186     !</keyword>
1187     
1188     !<keyword category="Output Control" required="false">
1189     !  <description>Write particle angular velocity in VTK file.</description>
1190     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1191           VTK_PART_ANGULAR_VEL= .FALSE.
1192     !</keyword>
1193     
1194     !<keyword category="Output Control" required="false">
1195     !  <description>Write particle angular velocity in VTK file.</description>
1196     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1197           VTK_PART_ORIENTATION= .FALSE.
1198     !</keyword>
1199     
1200     !<keyword category="Output Control" required="false">
1201     !  <description>Write particle user-defined variable in VTK file.</description>
1202     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1203           VTK_PART_USR_VAR= .FALSE.
1204     !</keyword>
1205     
1206     !<keyword category="Output Control" required="false">
1207     !  <description>Write particle temperature in VTK file.</description>
1208     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1209           VTK_PART_TEMP= .FALSE.
1210     !</keyword>
1211     
1212     !<keyword category="Output Control" required="false">
1213     !  <description>Write particle species mass fraction in VTK file.</description>
1214     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1215           VTK_PART_X_s= .FALSE.
1216     !</keyword>
1217     
1218     !<keyword category="Output Control" required="false">
1219     !  <description>Write particle cohesion in VTK file.</description>
1220     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1221           VTK_PART_COHESION= .FALSE.
1222     !</keyword>
1223     
1224     
1225     !<keyword category="Output Control" required="false">
1226     !  <description>Starting Index appended to VTU files</description>
1227     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1228           FRAME = -1
1229     !</keyword>
1230     
1231     !<keyword category="Output Control" required="false">
1232     !  <description>Directory where vtk files are stored (default is run directory)</description>
1233     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1234           VTU_DIR = '.'
1235     !</keyword>
1236     
1237     !<keyword category="Output Control" required="false">
1238     !  <description>West location of VTK region.</description>
1239     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1240              VTK_X_W = -UNDEFINED
1241     !</keyword>
1242     
1243     !<keyword category="Output Control" required="false">
1244     !  <description>East location of VTK region.</description>
1245     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1246              VTK_X_E = UNDEFINED
1247     !</keyword>
1248     
1249     !<keyword category="Output Control" required="false">
1250     !  <description>South location of VTK region.</description>
1251     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1252              VTK_Y_S = -UNDEFINED
1253     !</keyword>
1254     
1255     !<keyword category="Output Control" required="false">
1256     !  <description>North location of VTK region.</description>
1257     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1258              VTK_Y_N = UNDEFINED
1259     !</keyword>
1260     
1261     !<keyword category="Output Control" required="false">
1262     !  <description>Bottom location of VTK region.</description>
1263     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1264              VTK_Z_B = -UNDEFINED
1265     !</keyword>
1266     
1267     !<keyword category="Output Control" required="false">
1268     !  <description>West location of VTK region.</description>
1269     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1270              VTK_Z_T = UNDEFINED
1271     !</keyword>
1272     
1273     
1274     !<keyword category="Cartesian grid" required="false">
1275     !  <description>
1276     !    Option for pressure gradient computation in cut cells.
1277     !  </description>
1278     !  <valid value="1" note="Use maximum of (east/west), (north/south),
1279     !    and (top/bottom) pairs of velocity cells."/>
1280     !  <valid value="2" note="Use both (east/west), (north/south), and
1281     !    (top/bottom) areas of velocity cells."/>
1282     !  <valid value="0" note="Use east, north and top areas of pressure cell (same as standard cells)."/>
1283     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1284           PG_OPTION = 0
1285     !</keyword>
1286     
1287     !<keyword category="Cartesian grid" required="false">
1288     !  <description>Run code in safe mode.</description>
1289     !  <valid value="1" note="Performs initial preprocessing but use all
1290     !    original MFIX subroutines during flow solution (using only cell
1291     !    volumes and areas of cut cells)."/>
1292     !  <valid value="0" note="Runs the code with modified subroutines for
1293     !    cut cell treatment."/>
1294     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1295           CG_SAFE_MODE = 0
1296     !</keyword>
1297     
1298     !<keyword category="Cartesian grid" required="false">
1299     !  <description>
1300     !    Prints any warning message encountered during pre-processing 
1301     !    on the screen.
1302     !  </description>
1303     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1304           PRINT_WARNINGS = .FALSE.
1305     !</keyword>
1306     
1307     !<keyword category="Cartesian grid" required="false">
1308     !  <description>
1309     !    Under-relaxation factor used in cut cells (only CG_UR_FAC(2) is used).
1310     !  </description>
1311     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1312           CG_UR_FAC = 1.0
1313     !</keyword>
1314     
1315     !<keyword category="Cartesian grid" required="false">
1316     !  <description>
1317     !    Print a progress bar during each major step of pre-processing stage.
1318     !  </description>
1319     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1320           PRINT_PROGRESS_BAR = .FALSE.
1321     !</keyword>
1322     
1323     !<keyword category="Cartesian grid" required="false">
1324     !  <description>
1325     !    Width of the progress bar (complete status), expressed in number
1326     !    of characters (between 10 and 80).
1327     !  </description>
1328     !  <range min="10" max="80" />
1329     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1330           BAR_WIDTH = 50
1331     !</keyword>
1332     
1333     !<keyword category="Cartesian grid" required="false">
1334     !  <description>Character used to create the progress bar.</description>
1335     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1336           BAR_CHAR  = '='
1337     !</keyword>
1338     
1339     !<keyword category="Cartesian grid" required="false">
1340     !  <description>
1341     !    Update frequency of progress bar, expressed in percent of total
1342     !    length (between 1.0 and 100.0).
1343     !  </description>
1344     !  <range min="1.0" max="100.0" />
1345     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1346           BAR_RESOLUTION = 5.0
1347     !</keyword>
1348     
1349     !<keyword category="Cartesian grid" required="false">
1350     !  <description>
1351     !    Writes the file dashboard.txt at regular intervals. The file shows
1352     !    a summary of the simulation progress.
1353     !  </description>
1354           WRITE_DASHBOARD = .FALSE.
1355     !</keyword>
1356     
1357     !<keyword category="Cartesian grid" required="false">
1358     !  <description>
1359     !    Frequency, expressed in terms of iterations, at which the dashboard
1360     !    is updated.
1361     !  </description>
1362           F_DASHBOARD = 1
1363     !</keyword>
1364     
1365     !<keyword category="Geometry and Discretization" required="false">
1366     !  <description>Location of control points in x-direction.</description>
1367           CPX = ZERO
1368     !</keyword>
1369     
1370     !<keyword category="Geometry and Discretization" required="false">
1371     !  <description>Number of cells within a segment (x-direction).</description>
1372           NCX      = 0
1373     !</keyword>
1374     
1375     !<keyword category="Geometry and Discretization" required="false">
1376     !  <description>
1377     !    Expansion ratio (last DX/first DX) in a segment (x-direction).
1378     !  </description>
1379           ERX      = ONE
1380     !</keyword>
1381     
1382     !<keyword category="Geometry and Discretization" required="false">
1383     !  <description>Value of first DX in a segment (x-direction). A negative
1384     !      value will copy DX from previous segment (if available).
1385     !  </description>
1386           FIRST_DX = ZERO
1387     !</keyword>
1388     
1389     !<keyword category="Geometry and Discretization" required="false">
1390     !  <description>Value of last DX in a segment (x-direction). A
1391     !  negative value will copy DX from next segment (if
1392     !  available).</description>
1393           LAST_DX  = ZERO
1394     !</keyword>
1395     
1396     
1397     !<keyword category="Geometry and Discretization" required="false">
1398     !  <description>Location of control points in y-direction.</description>
1399           CPY = ZERO
1400     !</keyword>
1401     
1402     !<keyword category="Geometry and Discretization" required="false">
1403     !  <description>
1404     !    Number of cells within a segment (y-direction).
1405     !  </description>
1406           NCY = 0
1407     !</keyword>
1408     
1409     !<keyword category="Geometry and Discretization" required="false">
1410     !  <description>
1411     !    Expansion ratio (last DY/first DY) in a segment (y-direction).
1412     !  </description>
1413           ERY = ONE
1414     !</keyword>
1415     
1416     !<keyword category="Geometry and Discretization" required="false">
1417     !  <description>
1418     !    Value of first DY in a segment (y-direction). A negative value will
1419     !    copy DY from previous segment (if available).
1420     !  </description>
1421           FIRST_DY = ZERO
1422     !</keyword>
1423     
1424     !<keyword category="Geometry and Discretization" required="false">
1425     !  <description>
1426     !    Value of last DY in a segment (y-direction). A negative value will
1427     !    copy DY from next segment (if available).
1428     !  </description>
1429           LAST_DY  = ZERO
1430     !</keyword>
1431     
1432     !<keyword category="Geometry and Discretization" required="false">
1433     !  <description>Location of control points in z-direction.</description>
1434           CPZ = ZERO
1435     !</keyword>
1436     
1437     !<keyword category="Geometry and Discretization" required="false">
1438     !  <description>
1439     !    Number of cells within a segment (z-direction).
1440     !  </description>
1441           NCZ = 0
1442     !</keyword>
1443     
1444     !<keyword category="Geometry and Discretization" required="false">
1445     !  <description>
1446     !    Expansion ratio (last DZ/first DZ) in a segment (z-direction).
1447     !  </description>
1448           ERZ      = ONE
1449     !</keyword>
1450     
1451     !<keyword category="Geometry and Discretization" required="false">
1452     !  <description>
1453     !    Value of first DZ in a segment (z-direction). A negative value will
1454     !    copy DZ from previous segment (if available).
1455     !  </description>
1456           FIRST_DZ = ZERO
1457     !</keyword>
1458     
1459     !<keyword category="Geometry and Discretization" required="false">
1460     !  <description>
1461     !    Value of last DZ in a segment (z-direction). A negative value will
1462     !    copy DZ from next segment (if available).
1463     !  </description>
1464           LAST_DZ  = ZERO
1465     !</keyword>
1466     
1467     !<keyword category="Cartesian grid" required="false">
1468     !  <description>
1469     !    Turns on the re-indexing of cells. When true, inactive (dead) 
1470     !    cells are removed from computational domain.
1471     !  </description>
1472     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1473           RE_INDEXING = .FALSE.
1474     !</keyword>
1475     
1476     !<keyword category="Cartesian grid" required="false">
1477     !  <description>
1478     !    Attempts to adjust grid partition. Each processor will be assigned
1479     !    its own size to minimize load imbalance.
1480     !  </description>
1481     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1482           ADJUST_PROC_DOMAIN_SIZE = .FALSE.
1483     !</keyword>
1484     
1485     !<keyword category="Cartesian grid" required="false">
1486     !  <description>
1487     !    Attempts to adjust grid partition. Each processor will
1488     !    be assigned its own size to minimize load imbalance.
1489     !  </description>
1490     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1491           REPORT_BEST_DOMAIN_SIZE = .FALSE.
1492     !</keyword>
1493     
1494     !<keyword category="Cartesian grid" required="false">
1495     !  <description>
1496     !    Temporary setting used in serial run to report best domain size
1497     !    for parallel run.
1498     !  </description>
1499     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1500           NODESI_REPORT = 1
1501     !</keyword>
1502     
1503     !<keyword category="Cartesian grid" required="false">
1504     !  <description>
1505     !    Temporary setting used in serial run to report best domain size
1506     !    for parallel run.
1507     !  </description>
1508     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1509           NODESJ_REPORT = 1
1510     !</keyword>
1511     
1512     !<keyword category="Cartesian grid" required="false">
1513     !  <description>
1514     !    Temporary setting used in serial run to report best domain size
1515     !    for parallel run.
1516     !  </description>
1517     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1518           NODESK_REPORT = 1
1519     !</keyword>
1520     
1521     !<keyword category="Cartesian grid" required="false">
1522     !  <description>
1523     !    Attempts to minimize the size of the send/receive layers.
1524     !  </description>
1525     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1526           MINIMIZE_SEND_RECV = .TRUE.
1527     !</keyword>
1528     
1529     !<keyword category="Cartesian grid" required="false">
1530     !  <description>Brute force calculation of wall distance.</description>
1531     !  <dependent keyword="CARTESIAN_GRID" value=".TRUE."/>
1532           DWALL_BRUTE_FORCE = .FALSE.
1533     !</keyword>
1534           RETURN
1535           END SUBROUTINE CARTESIAN_GRID_INIT_NAMELIST
1536