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