1
<?xml version='1.0' encoding='utf-8'?>
4
<string_value lines="1">MMS_B_unstructured</string_value>
7
<string_value lines="1">fluids</string_value>
11
<integer_value rank="0">2</integer_value>
13
<mesh name="CoordinateMesh">
15
<mesh name="InputMesh"/>
21
<mesh name="VelocityMesh">
23
<mesh name="InputMesh"/>
26
<integer_value rank="0">1</integer_value>
34
<mesh name="PressureMesh">
36
<mesh name="InputMesh"/>
42
<mesh name="InputMesh">
43
<from_file file_name="MMS_B_unstructured">
44
<format name="triangle"/>
50
<mesh name="ErrorMesh">
52
<mesh name="CoordinateMesh"/>
55
<integer_value rank="0">4</integer_value>
59
<string_value>continuous</string_value>
68
<integer_value rank="0">8</integer_value>
74
<string_value>vtk</string_value>
78
<real_value rank="0">1</real_value>
81
<output_mesh name="VelocityMesh"/>
86
<real_value rank="0">0.0</real_value>
89
<real_value rank="0">0.1</real_value>
92
<real_value rank="0">1</real_value>
94
<nonlinear_iterations>
95
<integer_value rank="0">2</integer_value>
96
</nonlinear_iterations>
98
<material_phase name="NS">
99
<vector_field name="Velocity" rank="1">
101
<mesh name="VelocityMesh"/>
102
<value name="WholeMesh">
104
<string_value lines="20" type="code" language="python">def val(X,t):
105
import helmholtz_tools as g
106
return g.velocity(X)</string_value>
114
<exclude_from_detectors/>
118
<scalar_field name="Tracer" rank="0">
120
<mesh name="VelocityMesh"/>
121
<equation name="AdvectionDiffusion"/>
122
<spatial_discretisation>
123
<continuous_galerkin>
129
</continuous_galerkin>
130
<conservative_advection>
131
<real_value rank="0">0.</real_value>
132
</conservative_advection>
133
</spatial_discretisation>
134
<temporal_discretisation>
136
<real_value rank="0">0.5</real_value>
138
</temporal_discretisation>
140
<iterative_method name="gmres">
142
<integer_value rank="0">30</integer_value>
145
<preconditioner name="sor"/>
147
<real_value rank="0">1.e-7</real_value>
150
<integer_value rank="0">1000</integer_value>
152
<never_ignore_solver_failures/>
157
<initial_condition name="WholeMesh">
159
<string_value lines="20" type="code" language="python">def val(X,t):
160
import helmholtz_tools as g
161
return g.gaussian(X)</string_value>
164
<boundary_conditions name="sides">
166
<integer_value shape="4" rank="1">7 8 9 10</integer_value>
168
<type name="dirichlet">
170
<string_value lines="20" type="code" language="python">def val(X,t):
171
import helmholtz_tools as g
172
return g.gaussian(X)</string_value>
175
</boundary_conditions>
179
<include_in_convergence/>
182
<include_in_detectors/>
185
<include_in_steady_state/>
187
<consistent_interpolation/>
190
<scalar_field name="TracerProjection" rank="0">
192
<algorithm source_field_type="scalar" material_phase_support="single" name="scalar_galerkin_projection" source_field_name="Tracer">
194
<iterative_method name="cg"/>
195
<preconditioner name="sor"/>
197
<real_value rank="0">1.e-10</real_value>
200
<integer_value rank="0">1000</integer_value>
202
<never_ignore_solver_failures/>
208
<mesh name="ErrorMesh"/>
212
<include_in_convergence/>
215
<include_in_detectors/>
218
<include_in_steady_state/>
222
<scalar_field name="IsoFilteredTracer" rank="0">
224
<algorithm source_field_type="component" material_phase_support="single" name="helmholtz_smoothed_scalar" source_field_name="Tracer">
225
<smoothing_scale_factor>
226
<real_value rank="0">2.0</real_value>
227
</smoothing_scale_factor>
229
<iterative_method name="cg"/>
230
<preconditioner name="sor"/>
232
<real_value rank="0">1.e-7</real_value>
235
<integer_value rank="0">1000</integer_value>
237
<never_ignore_solver_failures/>
243
<mesh name="VelocityMesh"/>
247
<include_in_convergence/>
250
<include_in_detectors/>
253
<include_in_steady_state/>
257
<scalar_field name="IsoFilteredTracerProjection" rank="0">
259
<algorithm source_field_type="scalar" material_phase_support="single" name="scalar_galerkin_projection" source_field_name="IsoFilteredTracer">
261
<iterative_method name="cg"/>
262
<preconditioner name="sor"/>
264
<real_value rank="0">1.e-10</real_value>
267
<integer_value rank="0">1000</integer_value>
269
<never_ignore_solver_failures/>
275
<mesh name="ErrorMesh"/>
279
<include_in_convergence/>
282
<include_in_detectors/>
285
<include_in_steady_state/>
289
<scalar_field name="IsoFilterDifference" rank="0">
291
<algorithm source_field_2_type="scalar" name="scalar_difference" source_field_1_name="TracerProjection" source_field_2_name="IsoFilteredTracerProjection" material_phase_support="single" source_field_1_type="scalar"/>
292
<mesh name="ErrorMesh"/>
296
<include_in_convergence/>
299
<include_in_detectors/>
302
<include_in_steady_state/>
306
<scalar_field name="AnisoFilteredTracer" rank="0">
308
<algorithm source_field_type="scalar" material_phase_support="single" name="helmholtz_anisotropic_smoothed_scalar" source_field_name="Tracer">
309
<smoothing_scale_factor>
310
<real_value rank="0">2.0</real_value>
311
</smoothing_scale_factor>
313
<iterative_method name="cg"/>
314
<preconditioner name="sor"/>
316
<real_value rank="0">1.e-7</real_value>
319
<integer_value rank="0">1000</integer_value>
321
<never_ignore_solver_failures/>
327
<mesh name="VelocityMesh"/>
331
<include_in_convergence/>
334
<include_in_detectors/>
337
<include_in_steady_state/>
341
<scalar_field name="AnisoFilteredTracerProjection" rank="0">
343
<algorithm source_field_type="scalar" material_phase_support="single" name="scalar_galerkin_projection" source_field_name="AnisoFilteredTracer">
345
<iterative_method name="cg"/>
346
<preconditioner name="sor"/>
348
<real_value rank="0">1.e-10</real_value>
351
<integer_value rank="0">1000</integer_value>
353
<never_ignore_solver_failures/>
359
<mesh name="ErrorMesh"/>
363
<include_in_convergence/>
366
<include_in_detectors/>
369
<include_in_steady_state/>
373
<scalar_field name="AnisoFilterDifference" rank="0">
375
<algorithm source_field_2_type="scalar" name="scalar_difference" source_field_1_name="TracerProjection" source_field_2_name="AnisoFilteredTracerProjection" material_phase_support="single" source_field_1_type="scalar"/>
376
<mesh name="ErrorMesh"/>
380
<include_in_convergence/>
383
<include_in_detectors/>
386
<include_in_steady_state/>
390
<scalar_field name="MLFilteredTracer" rank="0">
392
<algorithm source_field_type="scalar" material_phase_support="single" name="lumped_mass_smoothed_scalar" source_field_name="Tracer"/>
393
<mesh name="VelocityMesh"/>
397
<include_in_convergence/>
400
<include_in_detectors/>
403
<include_in_steady_state/>
407
<scalar_field name="MLFilteredTracerProjection" rank="0">
409
<algorithm source_field_type="scalar" material_phase_support="single" name="scalar_galerkin_projection" source_field_name="MLFilteredTracer">
411
<iterative_method name="cg"/>
412
<preconditioner name="sor"/>
414
<real_value rank="0">1.e-10</real_value>
417
<integer_value rank="0">1000</integer_value>
419
<never_ignore_solver_failures/>
425
<mesh name="ErrorMesh"/>
429
<include_in_convergence/>
432
<include_in_detectors/>
435
<include_in_steady_state/>
439
<scalar_field name="MLFilterDifference" rank="0">
441
<algorithm source_field_2_type="scalar" name="scalar_difference" source_field_1_name="TracerProjection" source_field_2_name="MLFilteredTracerProjection" material_phase_support="single" source_field_1_type="scalar"/>
442
<mesh name="ErrorMesh"/>
446
<include_in_convergence/>
449
<include_in_detectors/>
452
<include_in_steady_state/>
456
<vector_field name="GradTracer" rank="1">
458
<algorithm source_field_type="scalar" material_phase_support="single" name="grad" source_field_name="Tracer"/>
459
<mesh name="VelocityMesh"/>
465
<include_in_convergence/>
468
<include_in_detectors/>
471
<include_in_steady_state/>
475
<vector_field name="IsoFilteredGradTracer" rank="1">
477
<algorithm source_field_type="vector" material_phase_support="single" name="helmholtz_smoothed_vector" source_field_name="GradTracer">
478
<smoothing_scale_factor>
479
<real_value rank="0">2.0</real_value>
480
</smoothing_scale_factor>
482
<iterative_method name="cg"/>
483
<preconditioner name="sor"/>
485
<real_value rank="0">1.e-7</real_value>
488
<integer_value rank="0">1000</integer_value>
490
<never_ignore_solver_failures/>
496
<mesh name="VelocityMesh"/>
502
<include_in_convergence/>
505
<include_in_detectors/>
508
<include_in_steady_state/>
512
<vector_field name="GradIsoFilteredTracer" rank="1">
514
<algorithm source_field_type="scalar" material_phase_support="single" name="grad" source_field_name="IsoFilteredTracer"/>
515
<mesh name="VelocityMesh"/>
521
<include_in_convergence/>
524
<include_in_detectors/>
527
<include_in_steady_state/>
531
<vector_field name="IsoCommError" rank="1">
533
<algorithm source_field_2_type="vector" name="vector_difference" source_field_1_name="IsoFilteredGradTracer" source_field_2_name="GradIsoFilteredTracer" material_phase_support="single" source_field_1_type="vector">
534
<absolute_difference/>
536
<mesh name="ErrorMesh"/>
542
<include_in_convergence/>
545
<include_in_detectors/>
548
<include_in_steady_state/>
552
<vector_field name="AnisoFilteredGradTracer" rank="1">
554
<algorithm source_field_type="vector" material_phase_support="single" name="helmholtz_anisotropic_smoothed_vector" source_field_name="GradTracer">
555
<smoothing_scale_factor>
556
<real_value rank="0">2.0</real_value>
557
</smoothing_scale_factor>
559
<iterative_method name="cg"/>
560
<preconditioner name="sor"/>
562
<real_value rank="0">1.e-7</real_value>
565
<integer_value rank="0">1000</integer_value>
567
<never_ignore_solver_failures/>
573
<mesh name="VelocityMesh"/>
579
<include_in_convergence/>
582
<include_in_detectors/>
585
<include_in_steady_state/>
589
<vector_field name="GradAnisoFilteredTracer" rank="1">
591
<algorithm source_field_type="scalar" material_phase_support="single" name="grad" source_field_name="AnisoFilteredTracer"/>
592
<mesh name="VelocityMesh"/>
598
<include_in_convergence/>
601
<include_in_detectors/>
604
<include_in_steady_state/>
608
<vector_field name="AnisoCommError" rank="1">
610
<algorithm source_field_2_type="vector" name="vector_difference" source_field_1_name="AnisoFilteredGradTracer" source_field_2_name="GradAnisoFilteredTracer" material_phase_support="single" source_field_1_type="vector">
611
<absolute_difference/>
613
<mesh name="ErrorMesh"/>
619
<include_in_convergence/>
622
<include_in_detectors/>
625
<include_in_steady_state/>
629
<vector_field name="MLFilteredGradTracer" rank="1">
631
<algorithm source_field_type="vector" material_phase_support="single" name="lumped_mass_smoothed_vector" source_field_name="GradTracer"/>
632
<mesh name="VelocityMesh"/>
638
<include_in_convergence/>
641
<include_in_detectors/>
644
<include_in_steady_state/>
648
<vector_field name="GradMLFilteredTracer" rank="1">
650
<algorithm source_field_type="scalar" material_phase_support="single" name="grad" source_field_name="MLFilteredTracer"/>
651
<mesh name="VelocityMesh"/>
657
<include_in_convergence/>
660
<include_in_detectors/>
663
<include_in_steady_state/>
667
<vector_field name="MLCommError" rank="1">
669
<algorithm source_field_2_type="vector" name="vector_difference" source_field_1_name="MLFilteredGradTracer" source_field_2_name="GradMLFilteredTracer" material_phase_support="single" source_field_1_type="vector">
670
<absolute_difference/>
672
<mesh name="ErrorMesh"/>
678
<include_in_convergence/>
681
<include_in_detectors/>
684
<include_in_steady_state/>