~reducedmodelling/fluidity/ROM_Non-intrusive-ann

« back to all changes in this revision

Viewing changes to tests/harmonic_analysis_small/harmonic_analysis_simple.flml

  • Committer: sf1409
  • Date: 2010-04-21 19:42:27 UTC
  • Revision ID: svn-v4:5bf5533e-7014-46e3-b1bb-cce4b9d03719:trunk:1062
testcase for harmonic analysis

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">harmonic_analysis_simple</string_value>
 
5
    <comment>Sloshing mesh with analytical solution
 
6
Shows how numerical scheme predicts frequencey and damping rate</comment>
 
7
  </simulation_name>
 
8
  <problem_type>
 
9
    <string_value lines="1">fluids</string_value>
 
10
  </problem_type>
 
11
  <geometry>
 
12
    <dimension replaces="NDIM">
 
13
      <integer_value rank="0">3</integer_value>
 
14
    </dimension>
 
15
    <mesh name="CoordinateMesh">
 
16
      <from_file file_name="mesh2">
 
17
        <format name="triangle"/>
 
18
        <stat>
 
19
          <include_in_stat/>
 
20
        </stat>
 
21
      </from_file>
 
22
    </mesh>
 
23
    <mesh name="VelocityMesh">
 
24
      <from_mesh>
 
25
        <mesh name="CoordinateMesh"/>
 
26
        <stat>
 
27
          <exclude_from_stat/>
 
28
        </stat>
 
29
      </from_mesh>
 
30
    </mesh>
 
31
    <mesh name="PressureMesh">
 
32
      <from_mesh>
 
33
        <mesh name="CoordinateMesh"/>
 
34
        <stat>
 
35
          <exclude_from_stat/>
 
36
        </stat>
 
37
      </from_mesh>
 
38
    </mesh>
 
39
    <quadrature>
 
40
      <degree replaces="NGI">
 
41
        <integer_value rank="0">3</integer_value>
 
42
      </degree>
 
43
      <surface_degree replaces="SNGI">
 
44
        <integer_value rank="0">3</integer_value>
 
45
      </surface_degree>
 
46
    </quadrature>
 
47
    <ocean_boundaries>
 
48
      <top_surface_ids>
 
49
        <integer_value shape="1" rank="1">29</integer_value>
 
50
      </top_surface_ids>
 
51
      <bottom_surface_ids>
 
52
        <integer_value shape="1" rank="1">30</integer_value>
 
53
      </bottom_surface_ids>
 
54
      <scalar_field name="DistanceToTop" rank="0">
 
55
        <diagnostic>
 
56
          <algorithm name="Internal" material_phase_support="multiple"/>
 
57
          <mesh name="CoordinateMesh"/>
 
58
          <output/>
 
59
          <stat/>
 
60
          <convergence>
 
61
            <include_in_convergence/>
 
62
          </convergence>
 
63
          <detectors>
 
64
            <include_in_detectors/>
 
65
          </detectors>
 
66
          <steady_state>
 
67
            <include_in_steady_state/>
 
68
          </steady_state>
 
69
        </diagnostic>
 
70
      </scalar_field>
 
71
      <scalar_field name="DistanceToBottom" rank="0">
 
72
        <diagnostic>
 
73
          <algorithm name="Internal" material_phase_support="multiple"/>
 
74
          <mesh name="CoordinateMesh"/>
 
75
          <output/>
 
76
          <stat/>
 
77
          <convergence>
 
78
            <include_in_convergence/>
 
79
          </convergence>
 
80
          <detectors>
 
81
            <include_in_detectors/>
 
82
          </detectors>
 
83
          <steady_state>
 
84
            <include_in_steady_state/>
 
85
          </steady_state>
 
86
        </diagnostic>
 
87
      </scalar_field>
 
88
    </ocean_boundaries>
 
89
  </geometry>
 
90
  <io>
 
91
    <dump_format>
 
92
      <string_value>vtk</string_value>
 
93
    </dump_format>
 
94
    <dump_period replaces="TIMDUM">
 
95
      <real_value rank="0">20</real_value>
 
96
    </dump_period>
 
97
    <output_mesh name="VelocityMesh"/>
 
98
    <stat/>
 
99
  </io>
 
100
  <timestepping>
 
101
    <current_time replaces="ACCTIM">
 
102
      <real_value rank="0">0.0</real_value>
 
103
    </current_time>
 
104
    <timestep replaces="DT">
 
105
      <real_value rank="0">1</real_value>
 
106
    </timestep>
 
107
    <finish_time replaces="LTIME">
 
108
      <real_value rank="0">20</real_value>
 
109
    </finish_time>
 
110
  </timestepping>
 
111
  <physical_parameters>
 
112
    <gravity>
 
113
      <magnitude>
 
114
        <real_value rank="0">1.0</real_value>
 
115
      </magnitude>
 
116
      <vector_field name="GravityDirection" rank="1">
 
117
        <prescribed>
 
118
          <mesh name="CoordinateMesh"/>
 
119
          <value name="WholeMesh">
 
120
            <constant>
 
121
              <real_value shape="3" dim1="dim" rank="1">0 0 -1</real_value>
 
122
            </constant>
 
123
          </value>
 
124
          <output/>
 
125
          <stat>
 
126
            <include_in_stat/>
 
127
          </stat>
 
128
          <detectors>
 
129
            <exclude_from_detectors/>
 
130
          </detectors>
 
131
        </prescribed>
 
132
      </vector_field>
 
133
    </gravity>
 
134
  </physical_parameters>
 
135
  <material_phase name="water">
 
136
    <equation_of_state>
 
137
      <fluids>
 
138
        <linear replaces="EQNSTA=0 or 1">
 
139
          <reference_density replaces="DENINI">
 
140
            <real_value rank="0">1.0</real_value>
 
141
          </reference_density>
 
142
          <subtract_out_hydrostatic_level replaces="BHOUT"/>
 
143
        </linear>
 
144
      </fluids>
 
145
    </equation_of_state>
 
146
    <scalar_field name="Pressure" rank="0">
 
147
      <prognostic>
 
148
        <mesh name="PressureMesh"/>
 
149
        <spatial_discretisation>
 
150
          <continuous_galerkin>
 
151
            <remove_stabilisation_term replaces="NOFILT"/>
 
152
            <integrate_continuity_by_parts replaces="PREOPT"/>
 
153
          </continuous_galerkin>
 
154
        </spatial_discretisation>
 
155
        <scheme>
 
156
          <poisson_pressure_solution replaces="POISON">
 
157
            <string_value lines="1">every timestep</string_value>
 
158
          </poisson_pressure_solution>
 
159
          <use_projection_method replaces="PROJEC"/>
 
160
        </scheme>
 
161
        <solver>
 
162
          <iterative_method name="cg"/>
 
163
          <preconditioner name="sor"/>
 
164
          <relative_error>
 
165
            <real_value rank="0">1.0e-7</real_value>
 
166
          </relative_error>
 
167
          <max_iterations>
 
168
            <integer_value rank="0">1000</integer_value>
 
169
          </max_iterations>
 
170
          <never_ignore_solver_failures/>
 
171
          <diagnostics>
 
172
            <monitors/>
 
173
          </diagnostics>
 
174
        </solver>
 
175
        <boundary_conditions name="FreeSurfaceBC">
 
176
          <surface_ids>
 
177
            <integer_value shape="1" rank="1">29</integer_value>
 
178
          </surface_ids>
 
179
          <type name="dirichlet">
 
180
            <python>
 
181
              <string_value lines="20" type="python">def val(X, t):
 
182
   from math import cos
 
183
#   z= 0.1+0.05*cos(2*3.1415926536*(t/9-0.11111))+0.01*cos(2*3.1415926536*(t/4-0.25))
 
184
#   z= 0.05*(0.1+0.1*cos(2*3.1415926536*(t/9-0.11111)))
 
185
   z= 0.1+0.05*cos(2*3.1415926536*t/9+3.1415926536)+0.01*cos(2*3.1415926536*t/4)
 
186
   return z</string_value>
 
187
            </python>
 
188
          </type>
 
189
        </boundary_conditions>
 
190
        <output/>
 
191
        <stat/>
 
192
        <convergence>
 
193
          <include_in_convergence/>
 
194
        </convergence>
 
195
        <detectors>
 
196
          <exclude_from_detectors/>
 
197
        </detectors>
 
198
        <steady_state>
 
199
          <include_in_steady_state/>
 
200
        </steady_state>
 
201
        <consistent_interpolation/>
 
202
      </prognostic>
 
203
    </scalar_field>
 
204
    <scalar_field name="Density" rank="0">
 
205
      <prescribed>
 
206
        <mesh name="VelocityMesh"/>
 
207
        <value name="WholeMesh">
 
208
          <constant>
 
209
            <real_value rank="0">1.0</real_value>
 
210
          </constant>
 
211
        </value>
 
212
        <output/>
 
213
        <stat/>
 
214
        <detectors>
 
215
          <exclude_from_detectors/>
 
216
        </detectors>
 
217
      </prescribed>
 
218
    </scalar_field>
 
219
    <vector_field name="Velocity" rank="1">
 
220
      <prognostic>
 
221
        <mesh name="VelocityMesh"/>
 
222
        <equation name="Boussinesq"/>
 
223
        <spatial_discretisation>
 
224
          <continuous_galerkin>
 
225
            <stabilisation>
 
226
              <no_stabilisation/>
 
227
            </stabilisation>
 
228
            <mass_terms>
 
229
              <lump_mass_matrix/>
 
230
            </mass_terms>
 
231
            <advection_terms/>
 
232
            <stress_terms>
 
233
              <tensor_form/>
 
234
            </stress_terms>
 
235
          </continuous_galerkin>
 
236
          <conservative_advection replaces="BETA">
 
237
            <real_value rank="0">0</real_value>
 
238
          </conservative_advection>
 
239
        </spatial_discretisation>
 
240
        <temporal_discretisation>
 
241
          <theta replaces="THETA">
 
242
            <real_value rank="0">0.5</real_value>
 
243
          </theta>
 
244
          <relaxation replaces="ITHETA">
 
245
            <real_value rank="0">0.5</real_value>
 
246
          </relaxation>
 
247
        </temporal_discretisation>
 
248
        <solver>
 
249
          <iterative_method name="gmres">
 
250
            <restart>
 
251
              <integer_value rank="0">100</integer_value>
 
252
            </restart>
 
253
          </iterative_method>
 
254
          <preconditioner name="sor"/>
 
255
          <relative_error>
 
256
            <real_value rank="0">1.0e-7</real_value>
 
257
          </relative_error>
 
258
          <max_iterations>
 
259
            <integer_value rank="0">1000</integer_value>
 
260
          </max_iterations>
 
261
          <ignore_all_solver_failures/>
 
262
          <diagnostics>
 
263
            <monitors/>
 
264
          </diagnostics>
 
265
        </solver>
 
266
        <initial_condition name="WholeMesh">
 
267
          <constant>
 
268
            <real_value shape="3" dim1="dim" rank="1">0.0 0.0 0.0</real_value>
 
269
          </constant>
 
270
        </initial_condition>
 
271
        <boundary_conditions replaces="boundary, TMPER1 TMPER2 TMPERI" name="SidesNoNormalFlow">
 
272
          <surface_ids>
 
273
            <integer_value shape="2" rank="1">32 31</integer_value>
 
274
          </surface_ids>
 
275
          <type name="no_normal_flow"/>
 
276
        </boundary_conditions>
 
277
        <boundary_conditions replaces="boundary, TMPER1 TMPER2 TMPERI" name="TopFreeSurface">
 
278
          <surface_ids>
 
279
            <integer_value shape="1" rank="1">29</integer_value>
 
280
          </surface_ids>
 
281
          <type name="free_surface"/>
 
282
        </boundary_conditions>
 
283
        <boundary_conditions replaces="boundary, TMPER1 TMPER2 TMPERI" name="BottomNoNormalFlow">
 
284
          <surface_ids>
 
285
            <integer_value shape="1" rank="1">30</integer_value>
 
286
          </surface_ids>
 
287
          <type name="no_normal_flow"/>
 
288
        </boundary_conditions>
 
289
        <tensor_field replaces="MUPTXX MUPTYY MUPTZZ MUPTYZ MUPTXZ MUPTXY RMUPXX RMUPYY RMUPZZ RMUPYZ RMUPXZ RMUPXY CONMU ALLMU TWOMU ONEMU" name="Viscosity" rank="2">
 
290
          <prescribed>
 
291
            <value name="WholeMesh">
 
292
              <isotropic>
 
293
                <constant>
 
294
                  <real_value rank="0">0.01</real_value>
 
295
                </constant>
 
296
              </isotropic>
 
297
            </value>
 
298
            <output/>
 
299
          </prescribed>
 
300
        </tensor_field>
 
301
        <output/>
 
302
        <stat>
 
303
          <include_in_stat/>
 
304
          <previous_time_step>
 
305
            <exclude_from_stat/>
 
306
          </previous_time_step>
 
307
          <nonlinear_field>
 
308
            <exclude_from_stat/>
 
309
          </nonlinear_field>
 
310
        </stat>
 
311
        <convergence>
 
312
          <include_in_convergence/>
 
313
        </convergence>
 
314
        <detectors>
 
315
          <include_in_detectors/>
 
316
        </detectors>
 
317
        <steady_state>
 
318
          <include_in_steady_state/>
 
319
        </steady_state>
 
320
        <consistent_interpolation/>
 
321
      </prognostic>
 
322
    </vector_field>
 
323
    <scalar_field name="FreeSurface" rank="0">
 
324
      <diagnostic>
 
325
        <algorithm name="Internal" material_phase_support="multiple"/>
 
326
        <mesh name="PressureMesh"/>
 
327
        <output/>
 
328
        <stat/>
 
329
        <convergence>
 
330
          <include_in_convergence/>
 
331
        </convergence>
 
332
        <detectors>
 
333
          <include_in_detectors/>
 
334
        </detectors>
 
335
        <steady_state>
 
336
          <include_in_steady_state/>
 
337
        </steady_state>
 
338
      </diagnostic>
 
339
    </scalar_field>
 
340
    <scalar_field name="1over9Ampl" rank="0">
 
341
      <diagnostic>
 
342
        <algorithm depends="FreeSurfaceHistory" averageFSLevel="Calculate" material_phase_support="single" name="tidal_harmonics" target="Amplitude">
 
343
          <constituent name="custom">
 
344
            <real_value rank="0">0.111111111111111111111</real_value>
 
345
          </constituent>
 
346
        </algorithm>
 
347
        <mesh name="VelocityMesh"/>
 
348
        <output/>
 
349
        <stat/>
 
350
        <convergence>
 
351
          <include_in_convergence/>
 
352
        </convergence>
 
353
        <detectors>
 
354
          <include_in_detectors/>
 
355
        </detectors>
 
356
        <steady_state>
 
357
          <include_in_steady_state/>
 
358
        </steady_state>
 
359
      </diagnostic>
 
360
    </scalar_field>
 
361
    <scalar_field name="1over9Phase" rank="0">
 
362
      <diagnostic>
 
363
        <algorithm depends="FreeSurfaceHistory" averageFSLevel="Calculate" material_phase_support="single" name="tidal_harmonics" target="Phase">
 
364
          <constituent name="custom">
 
365
            <real_value rank="0">0.111111111111111111111</real_value>
 
366
          </constituent>
 
367
        </algorithm>
 
368
        <mesh name="VelocityMesh"/>
 
369
        <output/>
 
370
        <stat/>
 
371
        <convergence>
 
372
          <include_in_convergence/>
 
373
        </convergence>
 
374
        <detectors>
 
375
          <include_in_detectors/>
 
376
        </detectors>
 
377
        <steady_state>
 
378
          <include_in_steady_state/>
 
379
        </steady_state>
 
380
      </diagnostic>
 
381
    </scalar_field>
 
382
    <scalar_field name="Residual" rank="0">
 
383
      <diagnostic>
 
384
        <algorithm depends="FreeSurfaceHistory" averageFSLevel="Calculate" material_phase_support="single" name="tidal_harmonics" target="Amplitude">
 
385
          <constituent name="Residual"/>
 
386
        </algorithm>
 
387
        <mesh name="VelocityMesh"/>
 
388
        <output/>
 
389
        <stat/>
 
390
        <convergence>
 
391
          <include_in_convergence/>
 
392
        </convergence>
 
393
        <detectors>
 
394
          <include_in_detectors/>
 
395
        </detectors>
 
396
        <steady_state>
 
397
          <include_in_steady_state/>
 
398
        </steady_state>
 
399
      </diagnostic>
 
400
    </scalar_field>
 
401
    <scalar_field name="C0" rank="0">
 
402
      <diagnostic>
 
403
        <algorithm depends="FreeSurfaceHistory" averageFSLevel="Calculate" material_phase_support="single" name="tidal_harmonics" target="Amplitude">
 
404
          <constituent name="C0">
 
405
            <real_value shape="1" rank="0">0.0</real_value>
 
406
          </constituent>
 
407
        </algorithm>
 
408
        <mesh name="VelocityMesh"/>
 
409
        <output/>
 
410
        <stat/>
 
411
        <convergence>
 
412
          <include_in_convergence/>
 
413
        </convergence>
 
414
        <detectors>
 
415
          <include_in_detectors/>
 
416
        </detectors>
 
417
        <steady_state>
 
418
          <include_in_steady_state/>
 
419
        </steady_state>
 
420
      </diagnostic>
 
421
    </scalar_field>
 
422
    <scalar_field name="1over4Ampl" rank="0">
 
423
      <diagnostic>
 
424
        <algorithm depends="FreeSurfaceHistory" averageFSLevel="Calculate" material_phase_support="single" name="tidal_harmonics" target="Amplitude">
 
425
          <constituent name="custom">
 
426
            <real_value rank="0">0.25</real_value>
 
427
          </constituent>
 
428
        </algorithm>
 
429
        <mesh name="VelocityMesh"/>
 
430
        <output/>
 
431
        <stat/>
 
432
        <convergence>
 
433
          <include_in_convergence/>
 
434
        </convergence>
 
435
        <detectors>
 
436
          <include_in_detectors/>
 
437
        </detectors>
 
438
        <steady_state>
 
439
          <include_in_steady_state/>
 
440
        </steady_state>
 
441
      </diagnostic>
 
442
    </scalar_field>
 
443
    <scalar_field name="1over4Phase" rank="0">
 
444
      <diagnostic>
 
445
        <algorithm depends="FreeSurfaceHistory" averageFSLevel="Calculate" material_phase_support="single" name="tidal_harmonics" target="Phase">
 
446
          <constituent name="custom">
 
447
            <real_value rank="0">0.25</real_value>
 
448
          </constituent>
 
449
        </algorithm>
 
450
        <mesh name="VelocityMesh"/>
 
451
        <output/>
 
452
        <stat/>
 
453
        <convergence>
 
454
          <include_in_convergence/>
 
455
        </convergence>
 
456
        <detectors>
 
457
          <include_in_detectors/>
 
458
        </detectors>
 
459
        <steady_state>
 
460
          <include_in_steady_state/>
 
461
        </steady_state>
 
462
      </diagnostic>
 
463
    </scalar_field>
 
464
    <scalar_field name="FreeSurfaceHistory">
 
465
      <diagnostic>
 
466
        <algorithm depends="FreeSurface" name="free_surface_history" material_phase_support="single">
 
467
          <levels>
 
468
            <integer_value rank="0">10</integer_value>
 
469
          </levels>
 
470
          <stride>
 
471
            <integer_value rank="0">1</integer_value>
 
472
          </stride>
 
473
        </algorithm>
 
474
        <mesh name="VelocityMesh"/>
 
475
      </diagnostic>
 
476
    </scalar_field>
 
477
  </material_phase>
 
478
  <mesh_adaptivity>
 
479
    <mesh_movement replaces="MVMESH = TRUE, ZERQG, CMCHAN = TRUE">
 
480
      <free_surface>
 
481
        <move_surface_nodes/>
 
482
      </free_surface>
 
483
      <vector_field name="GridVelocity" rank="1">
 
484
        <diagnostic>
 
485
          <algorithm name="Internal" material_phase_support="multiple"/>
 
486
          <mesh name="CoordinateMesh"/>
 
487
          <output/>
 
488
          <stat>
 
489
            <include_in_stat/>
 
490
          </stat>
 
491
          <convergence>
 
492
            <include_in_convergence/>
 
493
          </convergence>
 
494
          <detectors>
 
495
            <include_in_detectors/>
 
496
          </detectors>
 
497
          <steady_state>
 
498
            <include_in_steady_state/>
 
499
          </steady_state>
 
500
        </diagnostic>
 
501
      </vector_field>
 
502
    </mesh_movement>
 
503
  </mesh_adaptivity>
 
504
</fluidity_options>