~fluidity-core/fluidity/shallow-water-dev

« back to all changes in this revision

Viewing changes to tests/darcy_p0p1_test_cty_cv_pressBCinlet_2phase_constant_volf_and_abs/darcy_p0p1_test_cty_cv_pressBCinlet_2phase_constant_volf_and_abs_3d.flml

  • Committer: colin.cotter at ac
  • Date: 2012-02-16 17:35:27 UTC
  • mfrom: (3565.1.365 fluidity)
  • Revision ID: colin.cotter@imperial.ac.uk-20120216173527-wpnlu4v9v1kmf4xz
MergeĀ fromĀ trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?xml version='1.0' encoding='utf-8'?>
 
2
<fluidity_options>
 
3
  <simulation_name>
 
4
    <string_value lines="1">darcy_p0p1_test_cty_cv_pressBCinlet_2phase_constant_volf_and_abs_3d</string_value>
 
5
    <comment>a simple short test case for darcy flow using the element type p0p1_test_cty_cv for velocity-pressure
 
6
 
 
7
the darcy velocity is solved with constant phase saturations. A constant absorption for each phase is used.
 
8
 
 
9
the darcy flow equation is
 
10
 
 
11
S* sigma*darcy_vel = - S * grad P
 
12
 
 
13
to get a darcy equation the time, stress and advection terms are not included in a bousinessq formulation (to avoid needing to specify a density). Ideally it would be better to actually have a darcy momentum option to simplify the input.
 
14
 
 
15
the absorption term is included in the pressure correction (being a necessity as it is the only term in the matrix equation)</comment>
 
16
  </simulation_name>
 
17
  <problem_type>
 
18
    <string_value lines="1">fluids</string_value>
 
19
  </problem_type>
 
20
  <geometry>
 
21
    <dimension>
 
22
      <integer_value rank="0">3</integer_value>
 
23
    </dimension>
 
24
    <mesh name="CoordinateMesh">
 
25
      <from_file file_name="cube">
 
26
        <format name="gmsh"/>
 
27
        <stat>
 
28
          <include_in_stat/>
 
29
        </stat>
 
30
      </from_file>
 
31
    </mesh>
 
32
    <mesh name="VelocityMesh">
 
33
      <from_mesh>
 
34
        <mesh name="CoordinateMesh"/>
 
35
        <mesh_shape>
 
36
          <polynomial_degree>
 
37
            <integer_value rank="0">0</integer_value>
 
38
          </polynomial_degree>
 
39
        </mesh_shape>
 
40
        <mesh_continuity>
 
41
          <string_value>discontinuous</string_value>
 
42
        </mesh_continuity>
 
43
        <stat>
 
44
          <exclude_from_stat/>
 
45
        </stat>
 
46
      </from_mesh>
 
47
    </mesh>
 
48
    <mesh name="PressureMesh">
 
49
      <from_mesh>
 
50
        <mesh name="CoordinateMesh"/>
 
51
        <mesh_shape>
 
52
          <polynomial_degree>
 
53
            <integer_value rank="0">1</integer_value>
 
54
          </polynomial_degree>
 
55
        </mesh_shape>
 
56
        <stat>
 
57
          <exclude_from_stat/>
 
58
        </stat>
 
59
      </from_mesh>
 
60
    </mesh>
 
61
    <mesh name="DGP0">
 
62
      <from_mesh>
 
63
        <mesh name="CoordinateMesh"/>
 
64
        <mesh_shape>
 
65
          <polynomial_degree>
 
66
            <integer_value rank="0">0</integer_value>
 
67
          </polynomial_degree>
 
68
        </mesh_shape>
 
69
        <mesh_continuity>
 
70
          <string_value>discontinuous</string_value>
 
71
        </mesh_continuity>
 
72
        <stat>
 
73
          <exclude_from_stat/>
 
74
        </stat>
 
75
      </from_mesh>
 
76
    </mesh>
 
77
    <mesh name="OutputMesh">
 
78
      <from_mesh>
 
79
        <mesh name="CoordinateMesh"/>
 
80
        <mesh_continuity>
 
81
          <string_value>discontinuous</string_value>
 
82
        </mesh_continuity>
 
83
        <stat>
 
84
          <exclude_from_stat/>
 
85
        </stat>
 
86
      </from_mesh>
 
87
    </mesh>
 
88
    <quadrature>
 
89
      <degree>
 
90
        <integer_value rank="0">3</integer_value>
 
91
      </degree>
 
92
    </quadrature>
 
93
  </geometry>
 
94
  <io>
 
95
    <dump_format>
 
96
      <string_value>vtk</string_value>
 
97
    </dump_format>
 
98
    <dump_period_in_timesteps>
 
99
      <constant>
 
100
        <integer_value rank="0">0</integer_value>
 
101
      </constant>
 
102
    </dump_period_in_timesteps>
 
103
    <output_mesh name="OutputMesh"/>
 
104
    <stat/>
 
105
  </io>
 
106
  <timestepping>
 
107
    <current_time>
 
108
      <real_value rank="0">0.0</real_value>
 
109
    </current_time>
 
110
    <timestep>
 
111
      <real_value rank="0">0.1</real_value>
 
112
    </timestep>
 
113
    <finish_time>
 
114
      <real_value rank="0">0.5</real_value>
 
115
    </finish_time>
 
116
    <nonlinear_iterations>
 
117
      <integer_value rank="0">2</integer_value>
 
118
    </nonlinear_iterations>
 
119
  </timestepping>
 
120
  <material_phase name="phase1">
 
121
    <scalar_field name="Pressure" rank="0">
 
122
      <prognostic>
 
123
        <mesh name="PressureMesh"/>
 
124
        <spatial_discretisation>
 
125
          <continuous_galerkin>
 
126
            <test_continuity_with_cv_dual/>
 
127
          </continuous_galerkin>
 
128
        </spatial_discretisation>
 
129
        <scheme>
 
130
          <poisson_pressure_solution>
 
131
            <string_value lines="1">never</string_value>
 
132
          </poisson_pressure_solution>
 
133
          <use_projection_method/>
 
134
        </scheme>
 
135
        <solver>
 
136
          <iterative_method name="gmres">
 
137
            <restart>
 
138
              <integer_value rank="0">30</integer_value>
 
139
            </restart>
 
140
          </iterative_method>
 
141
          <preconditioner name="sor"/>
 
142
          <relative_error>
 
143
            <real_value rank="0">1.0e-10</real_value>
 
144
          </relative_error>
 
145
          <max_iterations>
 
146
            <integer_value rank="0">1000</integer_value>
 
147
          </max_iterations>
 
148
          <never_ignore_solver_failures/>
 
149
          <diagnostics>
 
150
            <monitors/>
 
151
          </diagnostics>
 
152
        </solver>
 
153
        <boundary_conditions name="left_inflow">
 
154
          <surface_ids>
 
155
            <integer_value shape="1" rank="1">3</integer_value>
 
156
          </surface_ids>
 
157
          <type name="dirichlet">
 
158
            <constant>
 
159
              <real_value rank="0">2.0e+05</real_value>
 
160
            </constant>
 
161
          </type>
 
162
        </boundary_conditions>
 
163
        <boundary_conditions name="right_outflow">
 
164
          <surface_ids>
 
165
            <integer_value shape="1" rank="1">4</integer_value>
 
166
          </surface_ids>
 
167
          <type name="dirichlet">
 
168
            <constant>
 
169
              <real_value rank="0">0.0</real_value>
 
170
            </constant>
 
171
          </type>
 
172
        </boundary_conditions>
 
173
        <output/>
 
174
        <stat/>
 
175
        <convergence>
 
176
          <include_in_convergence/>
 
177
        </convergence>
 
178
        <detectors>
 
179
          <exclude_from_detectors/>
 
180
        </detectors>
 
181
        <steady_state>
 
182
          <include_in_steady_state/>
 
183
        </steady_state>
 
184
        <no_interpolation/>
 
185
      </prognostic>
 
186
    </scalar_field>
 
187
    <vector_field name="Velocity" rank="1">
 
188
      <prognostic>
 
189
        <mesh name="VelocityMesh"/>
 
190
        <equation name="Boussinesq"/>
 
191
        <spatial_discretisation>
 
192
          <discontinuous_galerkin>
 
193
            <mass_terms>
 
194
              <exclude_mass_terms/>
 
195
            </mass_terms>
 
196
            <viscosity_scheme>
 
197
              <compact_discontinuous_galerkin/>
 
198
            </viscosity_scheme>
 
199
            <advection_scheme>
 
200
              <none/>
 
201
              <integrate_advection_by_parts>
 
202
                <twice/>
 
203
              </integrate_advection_by_parts>
 
204
            </advection_scheme>
 
205
          </discontinuous_galerkin>
 
206
          <conservative_advection>
 
207
            <real_value rank="0">0.0</real_value>
 
208
          </conservative_advection>
 
209
        </spatial_discretisation>
 
210
        <temporal_discretisation>
 
211
          <theta>
 
212
            <real_value rank="0">1.0</real_value>
 
213
          </theta>
 
214
          <relaxation>
 
215
            <real_value rank="0">1.0</real_value>
 
216
          </relaxation>
 
217
        </temporal_discretisation>
 
218
        <solver>
 
219
          <iterative_method name="gmres">
 
220
            <restart>
 
221
              <integer_value rank="0">30</integer_value>
 
222
            </restart>
 
223
          </iterative_method>
 
224
          <preconditioner name="sor"/>
 
225
          <relative_error>
 
226
            <real_value rank="0">1.0e-10</real_value>
 
227
          </relative_error>
 
228
          <max_iterations>
 
229
            <integer_value rank="0">1000</integer_value>
 
230
          </max_iterations>
 
231
          <never_ignore_solver_failures/>
 
232
          <diagnostics>
 
233
            <monitors/>
 
234
          </diagnostics>
 
235
        </solver>
 
236
        <initial_condition name="WholeMesh">
 
237
          <constant>
 
238
            <real_value shape="3" dim1="dim" rank="1">0.0 0.0 0.0</real_value>
 
239
          </constant>
 
240
        </initial_condition>
 
241
        <boundary_conditions name="no_outflow_top_bottom">
 
242
          <surface_ids>
 
243
            <integer_value shape="2" rank="1">1 2</integer_value>
 
244
          </surface_ids>
 
245
          <type name="dirichlet">
 
246
            <align_bc_with_cartesian>
 
247
              <z_component>
 
248
                <constant>
 
249
                  <real_value rank="0">0.0</real_value>
 
250
                </constant>
 
251
              </z_component>
 
252
            </align_bc_with_cartesian>
 
253
          </type>
 
254
        </boundary_conditions>
 
255
        <boundary_conditions name="no_outflow_front_back">
 
256
          <surface_ids>
 
257
            <integer_value shape="2" rank="1">5 6</integer_value>
 
258
          </surface_ids>
 
259
          <type name="dirichlet">
 
260
            <align_bc_with_cartesian>
 
261
              <y_component>
 
262
                <constant>
 
263
                  <real_value rank="0">0.0</real_value>
 
264
                </constant>
 
265
              </y_component>
 
266
            </align_bc_with_cartesian>
 
267
          </type>
 
268
        </boundary_conditions>
 
269
        <vector_field name="Absorption" rank="1">
 
270
          <diagnostic>
 
271
            <mesh name="DGP0"/>
 
272
            <algorithm name="vector_python_diagnostic" material_phase_support="multiple">
 
273
              <string_value lines="20" type="python">from numpy import zeros
 
274
 
 
275
# set the dimension
 
276
dim = 3
 
277
 
 
278
# 1/4
 
279
quarter = 1.0/4.0
 
280
 
 
281
# set the absorption coeff
 
282
abs_coeff = 100.0/0.2
 
283
      
 
284
sat = states["phase1"].scalar_fields["PhaseVolumeFraction"]
 
285
 
 
286
for ele in range(field.element_count):
 
287
   
 
288
   sat_ele  = sat.ele_val(ele)
 
289
   
 
290
   # initialise local list of abs coeff
 
291
   sigma_ele = zeros(dim)
 
292
 
 
293
   # calc the absorption term for each dim
 
294
   for d in range(dim):
 
295
      
 
296
      sigma_ele[d] = abs_coeff * quarter*sum(sat_ele)
 
297
   
 
298
   # set the absorption term
 
299
   field.set(field.ele_nodes(ele),sigma_ele)</string_value>
 
300
            </algorithm>
 
301
            <output/>
 
302
            <stat>
 
303
              <include_in_stat/>
 
304
            </stat>
 
305
            <convergence>
 
306
              <include_in_convergence/>
 
307
            </convergence>
 
308
            <detectors>
 
309
              <include_in_detectors/>
 
310
            </detectors>
 
311
            <steady_state>
 
312
              <include_in_steady_state/>
 
313
            </steady_state>
 
314
          </diagnostic>
 
315
          <include_pressure_correction/>
 
316
        </vector_field>
 
317
        <output/>
 
318
        <stat>
 
319
          <include_in_stat/>
 
320
          <previous_time_step>
 
321
            <exclude_from_stat/>
 
322
          </previous_time_step>
 
323
          <nonlinear_field>
 
324
            <exclude_from_stat/>
 
325
          </nonlinear_field>
 
326
        </stat>
 
327
        <convergence>
 
328
          <include_in_convergence/>
 
329
        </convergence>
 
330
        <detectors>
 
331
          <include_in_detectors/>
 
332
        </detectors>
 
333
        <steady_state>
 
334
          <include_in_steady_state/>
 
335
        </steady_state>
 
336
        <consistent_interpolation/>
 
337
      </prognostic>
 
338
    </vector_field>
 
339
    <scalar_field name="PhaseVolumeFraction" rank="0">
 
340
      <prognostic>
 
341
        <mesh name="PressureMesh"/>
 
342
        <equation name="AdvectionDiffusion"/>
 
343
        <spatial_discretisation>
 
344
          <control_volumes>
 
345
            <face_value name="FiniteElement">
 
346
              <limit_face_value>
 
347
                <limiter name="Sweby"/>
 
348
              </limit_face_value>
 
349
            </face_value>
 
350
            <diffusion_scheme name="ElementGradient"/>
 
351
          </control_volumes>
 
352
          <conservative_advection>
 
353
            <real_value rank="0">1.0</real_value>
 
354
          </conservative_advection>
 
355
        </spatial_discretisation>
 
356
        <temporal_discretisation>
 
357
          <theta>
 
358
            <real_value rank="0">1.0</real_value>
 
359
          </theta>
 
360
          <control_volumes>
 
361
            <number_advection_iterations>
 
362
              <integer_value rank="0">3</integer_value>
 
363
            </number_advection_iterations>
 
364
            <limit_theta/>
 
365
          </control_volumes>
 
366
        </temporal_discretisation>
 
367
        <solver>
 
368
          <iterative_method name="gmres">
 
369
            <restart>
 
370
              <integer_value rank="0">30</integer_value>
 
371
            </restart>
 
372
          </iterative_method>
 
373
          <preconditioner name="sor"/>
 
374
          <relative_error>
 
375
            <real_value rank="0">1.0e-10</real_value>
 
376
          </relative_error>
 
377
          <max_iterations>
 
378
            <integer_value rank="0">10000</integer_value>
 
379
          </max_iterations>
 
380
          <never_ignore_solver_failures/>
 
381
          <diagnostics>
 
382
            <monitors/>
 
383
          </diagnostics>
 
384
        </solver>
 
385
        <initial_condition name="WholeMesh">
 
386
          <constant>
 
387
            <real_value rank="0">0.2</real_value>
 
388
          </constant>
 
389
        </initial_condition>
 
390
        <boundary_conditions name="left_inflow">
 
391
          <surface_ids>
 
392
            <integer_value shape="1" rank="1">3</integer_value>
 
393
          </surface_ids>
 
394
          <type name="dirichlet">
 
395
            <apply_weakly/>
 
396
            <constant>
 
397
              <real_value rank="0">0.2</real_value>
 
398
            </constant>
 
399
          </type>
 
400
        </boundary_conditions>
 
401
        <boundary_conditions name="no_outflow_top_bottom">
 
402
          <surface_ids>
 
403
            <integer_value shape="2" rank="1">1 2</integer_value>
 
404
          </surface_ids>
 
405
          <type name="zero_flux"/>
 
406
        </boundary_conditions>
 
407
        <boundary_conditions name="no_outflow_front_back">
 
408
          <surface_ids>
 
409
            <integer_value shape="2" rank="1">5 6</integer_value>
 
410
          </surface_ids>
 
411
          <type name="zero_flux"/>
 
412
        </boundary_conditions>
 
413
        <porosity/>
 
414
        <output/>
 
415
        <stat/>
 
416
        <convergence>
 
417
          <include_in_convergence/>
 
418
        </convergence>
 
419
        <detectors>
 
420
          <include_in_detectors/>
 
421
        </detectors>
 
422
        <steady_state>
 
423
          <include_in_steady_state/>
 
424
        </steady_state>
 
425
        <consistent_interpolation/>
 
426
      </prognostic>
 
427
    </scalar_field>
 
428
    <scalar_field name="SumVelocityDivergence" rank="0">
 
429
      <diagnostic>
 
430
        <mesh name="PressureMesh"/>
 
431
        <algorithm name="Internal" material_phase_support="multiple"/>
 
432
        <test_with_cv_dual/>
 
433
        <output/>
 
434
        <stat/>
 
435
        <detectors>
 
436
          <include_in_detectors/>
 
437
        </detectors>
 
438
        <solver>
 
439
          <iterative_method name="cg"/>
 
440
          <preconditioner name="sor"/>
 
441
          <relative_error>
 
442
            <real_value rank="0">1.0e-10</real_value>
 
443
          </relative_error>
 
444
          <max_iterations>
 
445
            <integer_value rank="0">1000</integer_value>
 
446
          </max_iterations>
 
447
          <never_ignore_solver_failures/>
 
448
          <diagnostics>
 
449
            <monitors/>
 
450
          </diagnostics>
 
451
        </solver>
 
452
      </diagnostic>
 
453
    </scalar_field>
 
454
    <scalar_field name="SumPhaseVolumeFraction" rank="0">
 
455
      <diagnostic>
 
456
        <algorithm name="scalar_python_diagnostic" material_phase_support="multiple">
 
457
          <string_value lines="20" type="python">sat_1 = states["phase1"].scalar_fields["PhaseVolumeFraction"]
 
458
sat_2 = states["phase2"].scalar_fields["PhaseVolumeFraction"]
 
459
 
 
460
for n in range(field.node_count):
 
461
 
 
462
   sat_1_n = sat_1.node_val(n)
 
463
   sat_2_n = sat_2.node_val(n)  
 
464
 
 
465
   field.set(n,sat_1_n + sat_2_n)</string_value>
 
466
        </algorithm>
 
467
        <mesh name="PressureMesh"/>
 
468
        <output/>
 
469
        <stat/>
 
470
        <convergence>
 
471
          <include_in_convergence/>
 
472
        </convergence>
 
473
        <detectors>
 
474
          <include_in_detectors/>
 
475
        </detectors>
 
476
        <steady_state>
 
477
          <include_in_steady_state/>
 
478
        </steady_state>
 
479
      </diagnostic>
 
480
    </scalar_field>
 
481
    <scalar_field name="ControlVolumeCFLNumber" rank="0">
 
482
      <diagnostic>
 
483
        <algorithm name="Internal" material_phase_support="multiple"/>
 
484
        <mesh name="PressureMesh"/>
 
485
        <output/>
 
486
        <stat/>
 
487
        <convergence>
 
488
          <include_in_convergence/>
 
489
        </convergence>
 
490
        <detectors>
 
491
          <include_in_detectors/>
 
492
        </detectors>
 
493
        <steady_state>
 
494
          <include_in_steady_state/>
 
495
        </steady_state>
 
496
      </diagnostic>
 
497
    </scalar_field>
 
498
  </material_phase>
 
499
  <material_phase name="phase2">
 
500
    <scalar_field name="Pressure" rank="0">
 
501
      <aliased material_phase_name="phase1" field_name="Pressure"/>
 
502
    </scalar_field>
 
503
    <vector_field name="Velocity" rank="1">
 
504
      <prognostic>
 
505
        <mesh name="VelocityMesh"/>
 
506
        <equation name="Boussinesq"/>
 
507
        <spatial_discretisation>
 
508
          <discontinuous_galerkin>
 
509
            <mass_terms>
 
510
              <exclude_mass_terms/>
 
511
            </mass_terms>
 
512
            <viscosity_scheme>
 
513
              <compact_discontinuous_galerkin/>
 
514
            </viscosity_scheme>
 
515
            <advection_scheme>
 
516
              <none/>
 
517
              <integrate_advection_by_parts>
 
518
                <twice/>
 
519
              </integrate_advection_by_parts>
 
520
            </advection_scheme>
 
521
          </discontinuous_galerkin>
 
522
          <conservative_advection>
 
523
            <real_value rank="0">0.0</real_value>
 
524
          </conservative_advection>
 
525
        </spatial_discretisation>
 
526
        <temporal_discretisation>
 
527
          <theta>
 
528
            <real_value rank="0">1.0</real_value>
 
529
          </theta>
 
530
          <relaxation>
 
531
            <real_value rank="0">1.0</real_value>
 
532
          </relaxation>
 
533
        </temporal_discretisation>
 
534
        <solver>
 
535
          <iterative_method name="gmres">
 
536
            <restart>
 
537
              <integer_value rank="0">30</integer_value>
 
538
            </restart>
 
539
          </iterative_method>
 
540
          <preconditioner name="sor"/>
 
541
          <relative_error>
 
542
            <real_value rank="0">1.0e-10</real_value>
 
543
          </relative_error>
 
544
          <max_iterations>
 
545
            <integer_value rank="0">1000</integer_value>
 
546
          </max_iterations>
 
547
          <never_ignore_solver_failures/>
 
548
          <diagnostics>
 
549
            <monitors/>
 
550
          </diagnostics>
 
551
        </solver>
 
552
        <initial_condition name="WholeMesh">
 
553
          <constant>
 
554
            <real_value shape="3" dim1="dim" rank="1">0.0 0.0 0.0</real_value>
 
555
          </constant>
 
556
        </initial_condition>
 
557
        <boundary_conditions name="no_outflow_top_bottom">
 
558
          <surface_ids>
 
559
            <integer_value shape="2" rank="1">1 2</integer_value>
 
560
          </surface_ids>
 
561
          <type name="dirichlet">
 
562
            <align_bc_with_cartesian>
 
563
              <z_component>
 
564
                <constant>
 
565
                  <real_value rank="0">0.0</real_value>
 
566
                </constant>
 
567
              </z_component>
 
568
            </align_bc_with_cartesian>
 
569
          </type>
 
570
        </boundary_conditions>
 
571
        <boundary_conditions name="no_outflow_front_back">
 
572
          <surface_ids>
 
573
            <integer_value shape="2" rank="1">5 6</integer_value>
 
574
          </surface_ids>
 
575
          <type name="dirichlet">
 
576
            <align_bc_with_cartesian>
 
577
              <y_component>
 
578
                <constant>
 
579
                  <real_value rank="0">0.0</real_value>
 
580
                </constant>
 
581
              </y_component>
 
582
            </align_bc_with_cartesian>
 
583
          </type>
 
584
        </boundary_conditions>
 
585
        <vector_field name="Absorption" rank="1">
 
586
          <diagnostic>
 
587
            <mesh name="DGP0"/>
 
588
            <algorithm name="vector_python_diagnostic" material_phase_support="multiple">
 
589
              <string_value lines="20" type="python">from numpy import zeros
 
590
 
 
591
# set the dimension
 
592
dim = 3
 
593
 
 
594
# 1/4
 
595
quarter = 1.0/4.0
 
596
 
 
597
# set the absorption coeff
 
598
abs_coeff = 100.0/0.8
 
599
      
 
600
sat = states["phase2"].scalar_fields["PhaseVolumeFraction"]
 
601
 
 
602
for ele in range(field.element_count):
 
603
   
 
604
   sat_ele  = sat.ele_val(ele)
 
605
   
 
606
   # initialise local list of abs coeff
 
607
   sigma_ele = zeros(dim)
 
608
 
 
609
   # calc the absorption term for each dim
 
610
   for d in range(dim):
 
611
      
 
612
      sigma_ele[d] = abs_coeff * quarter*sum(sat_ele)
 
613
   
 
614
   # set the absorption term
 
615
   field.set(field.ele_nodes(ele),sigma_ele)</string_value>
 
616
            </algorithm>
 
617
            <output/>
 
618
            <stat>
 
619
              <include_in_stat/>
 
620
            </stat>
 
621
            <convergence>
 
622
              <include_in_convergence/>
 
623
            </convergence>
 
624
            <detectors>
 
625
              <include_in_detectors/>
 
626
            </detectors>
 
627
            <steady_state>
 
628
              <include_in_steady_state/>
 
629
            </steady_state>
 
630
          </diagnostic>
 
631
          <include_pressure_correction/>
 
632
        </vector_field>
 
633
        <output/>
 
634
        <stat>
 
635
          <include_in_stat/>
 
636
          <previous_time_step>
 
637
            <exclude_from_stat/>
 
638
          </previous_time_step>
 
639
          <nonlinear_field>
 
640
            <exclude_from_stat/>
 
641
          </nonlinear_field>
 
642
        </stat>
 
643
        <convergence>
 
644
          <include_in_convergence/>
 
645
        </convergence>
 
646
        <detectors>
 
647
          <include_in_detectors/>
 
648
        </detectors>
 
649
        <steady_state>
 
650
          <include_in_steady_state/>
 
651
        </steady_state>
 
652
        <consistent_interpolation/>
 
653
      </prognostic>
 
654
    </vector_field>
 
655
    <scalar_field name="PhaseVolumeFraction" rank="0">
 
656
      <diagnostic>
 
657
        <mesh name="PressureMesh"/>
 
658
        <algorithm name="Internal" material_phase_support="multiple"/>
 
659
        <output/>
 
660
        <stat/>
 
661
        <detectors>
 
662
          <include_in_detectors/>
 
663
        </detectors>
 
664
      </diagnostic>
 
665
    </scalar_field>
 
666
  </material_phase>
 
667
  <porous_media>
 
668
    <scalar_field name="Porosity">
 
669
      <prescribed>
 
670
        <mesh name="DGP0"/>
 
671
        <value name="WholeMesh">
 
672
          <constant>
 
673
            <real_value rank="0">0.2</real_value>
 
674
          </constant>
 
675
        </value>
 
676
        <output/>
 
677
        <stat/>
 
678
        <detectors>
 
679
          <exclude_from_detectors/>
 
680
        </detectors>
 
681
      </prescribed>
 
682
    </scalar_field>
 
683
  </porous_media>
 
684
</fluidity_options>