1
<?xml version="1.0" encoding="UTF-8" ?>
4
<name>sediment_reentrainment_one_sediment</name>
5
<owner userid="jhill1"/>
6
<tags>flml sediment</tags>
7
<problem_definition length="medium" nprocs="1">
8
<command_line>fluidity sediment_reentrainment_one_sediment.flml</command_line>
9
<!-- Check that the sediment re-entrainment rate is correct -->
12
<variable name="solvers_converged" language="python">
14
files = os.listdir("./")
15
solvers_converged = not "matrixdump" in files and not "matrixdump.info" in files
17
<variable name="sediment_flux_200" language="python">
18
from fluidity_tools import stat_parser
19
s = stat_parser("Sediment_Reentrainment.stat")
20
sediment_flux_200 = s["Fluid"]["SedimentFluxSingle"]["integral"][199]
22
<variable name="sediment_flux_final" language="python">
23
from fluidity_tools import stat_parser
24
s = stat_parser("Sediment_Reentrainment.stat")
25
sediment_flux_final = s["Fluid"]["SedimentFluxSingle"]["integral"][-1]
27
<variable name="sediment_flux_near_end" language="python">
28
from fluidity_tools import stat_parser
29
s = stat_parser("Sediment_Reentrainment.stat")
30
sediment_flux_near_end = s["Fluid"]["SedimentFluxSingle"]["integral"][-3]
32
<variable name="sediment_concentration_initial" language="python">
33
from fluidity_tools import stat_parser
34
s = stat_parser("Sediment_Reentrainment.stat")
35
sediment_concentration_initial = s["Fluid"]["Single"]["integral"][0]
37
<variable name="sediment_concentration_final" language="python">
38
from fluidity_tools import stat_parser
39
s = stat_parser("Sediment_Reentrainment.stat")
40
sediment_concentration_final = s["Fluid"]["Single"]["integral"][-1]
45
<test name="Solvers converged" language="python">
46
assert(solvers_converged)
48
<!-- initial concentration = 0.1, sinking velocity = 0.1, therefore after 200 seconds
49
we should have 2m of sediment, which should be an integral of 200m over the 10m channel
51
<test name="Sediment is deposited" language="python">
52
assert(199. < sediment_flux_200 < 201.)
54
<!-- has it all gone? -->
55
<test name="Sediment vanishes" language="python">
56
assert(0 < sediment_flux_final < 0.05)
58
<!-- just to check it wasn't swept away too quickly, three timesteps before the end should be
59
> than final and be about 2m over all channel -->
60
<test name="Sediment vanishes at correct rate" language="python">
61
assert(1.75 < sediment_flux_near_end < 2.25)
63
<!-- Did we lose any sediment? Hope not! -->
64
<test name="Sediment is conserved" language="python">
65
assert(0 < abs(sediment_concentration_final - sediment_concentration_initial) < 1.0)