diff --git a/tests/composition_cg_dg_fem.prm b/tests/composition_cg_dg_fem.prm new file mode 100644 index 00000000000..c74771ce989 --- /dev/null +++ b/tests/composition_cg_dg_fem.prm @@ -0,0 +1,95 @@ +# A test to check discontinuous composition discretization. +# Based on composition-passive.prm + + +set Dimension = 2 +set Start time = 0 +set End time = 1 +set Use years in output instead of seconds = false + +subsection Geometry model + set Model name = box + + subsection Box + set X extent = 2 + set Y extent = 1 + end +end + +subsection Boundary temperature model + set Fixed temperature boundary indicators = bottom, top + set List of model names = box + + subsection Box + set Bottom temperature = 1 + set Top temperature = 0 + end +end + +subsection Boundary velocity model + set Tangential velocity boundary indicators = left, right, bottom + set Prescribed velocity boundary indicators = top: function + + subsection Function + set Variable names = x,z,t + set Function constants = pi=3.1415926 + set Function expression = if(x>1+sin(0.5*pi*t), 1, -1); 0 + end +end + +subsection Gravity model + set Model name = vertical +end + +subsection Initial temperature model + set Model name = function + + subsection Function + set Variable names = x,z + set Function expression = (1-z) + end +end + +subsection Material model + set Model name = simple + + subsection Simple model + set Thermal conductivity = 1e-6 + set Thermal expansion coefficient = 1e-4 + set Viscosity = 1 + end +end + +subsection Mesh refinement + set Initial adaptive refinement = 1 + set Initial global refinement = 2 + set Time steps between mesh refinement = 2 +end + +subsection Discretization + set Use discontinuous temperature discretization = false + set Use discontinuous composition discretization = true +end + +subsection Postprocess + set List of postprocessors = temperature statistics, composition statistics +end + +# This is the new part: We declare that there will +# be two compositional fields that will be +# advected along. Their initial conditions are given by +# a function that is one for the lowermost 0.2 height +# units of the domain and zero otherwise in the first case, +# and one in the top most 0.2 height units in the latter. +subsection Compositional fields + set Number of fields = 2 +end + +subsection Initial composition model + set Model name = function + + subsection Function + set Variable names = x,y + set Function expression = if(y<0.2, 1, 0) ; if(y>0.8, 1, 0) + end +end diff --git a/tests/composition_cg_dg_fem/screen-output b/tests/composition_cg_dg_fem/screen-output new file mode 100644 index 00000000000..18de230b3bb --- /dev/null +++ b/tests/composition_cg_dg_fem/screen-output @@ -0,0 +1,231 @@ +----------------------------------------------------------------------------- +----------------------------------------------------------------------------- +----------------------------------------------------------------------------- + +----------------------------------------------------------------------------- +----------------------------------------------------------------------------- +Number of active cells: 16 (on 3 levels) +Number of degrees of freedom: 556 (162+25+81+144+144) + +*** Timestep 0: t=0 seconds, dt=0 seconds + Solving temperature system... 0 iterations. + Solving C_1 system ... 0 iterations. + Solving C_2 system ... 0 iterations. + Solving Stokes system... 10+0 iterations. + +Number of active cells: 40 (on 4 levels) +Number of degrees of freedom: 1,354 (386+55+193+360+360) + +*** Timestep 0: t=0 seconds, dt=0 seconds + Solving temperature system... 0 iterations. + Solving C_1 system ... 0 iterations. + Solving C_2 system ... 0 iterations. + Solving Stokes system... 13+0 iterations. + + Postprocessing: + Temperature min/avg/max: 0 K, 0.5 K, 1 K + Compositions min/max/mass: 0/1/0.4167 // 0/1/0.4583 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00000 + +*** Timestep 1: t=0.0625 seconds, dt=0.0625 seconds + Solving temperature system... 10 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 8+0 iterations. + + Postprocessing: + Temperature min/avg/max: 0 K, 0.5 K, 1 K + Compositions min/max/mass: -0.1081/1.021/0.4167 // -0.1713/1.094/0.4583 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00001 + +*** Timestep 2: t=0.125 seconds, dt=0.0625 seconds + Solving temperature system... 11 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 3 iterations. + Solving Stokes system... 13+0 iterations. + + Postprocessing: + Temperature min/avg/max: 0 K, 0.5 K, 1 K + Compositions min/max/mass: -0.1914/1.043/0.4167 // -0.2378/1.145/0.4583 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00002 + +Number of active cells: 64 (on 4 levels) +Number of degrees of freedom: 2,100 (578+81+289+576+576) + +*** Timestep 3: t=0.1875 seconds, dt=0.0625 seconds + Solving temperature system... 12 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 12+0 iterations. + + Postprocessing: + Temperature min/avg/max: 0 K, 0.5 K, 1 K + Compositions min/max/mass: -0.1976/1.126/0.4167 // -0.2236/1.156/0.4582 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00003 + +*** Timestep 4: t=0.25 seconds, dt=0.0625 seconds + Solving temperature system... 12 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 12+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.004362 K, 0.5 K, 1 K + Compositions min/max/mass: -0.1982/1.126/0.4167 // -0.2808/1.208/0.4582 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00004 + +Skipping mesh refinement, because the mesh did not change. + +*** Timestep 5: t=0.3125 seconds, dt=0.0625 seconds + Solving temperature system... 12 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 12+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.007754 K, 0.5 K, 1 K + Compositions min/max/mass: -0.1702/1.125/0.4167 // -0.1546/1.225/0.4582 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00005 + +*** Timestep 6: t=0.375 seconds, dt=0.0625 seconds + Solving temperature system... 11 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 11+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.01149 K, 0.5 K, 1 K + Compositions min/max/mass: -0.1629/1.125/0.4167 // -0.1426/1.273/0.4581 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00006 + +Skipping mesh refinement, because the mesh did not change. + +*** Timestep 7: t=0.4375 seconds, dt=0.0625 seconds + Solving temperature system... 12 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 12+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.01532 K, 0.4999 K, 1 K + Compositions min/max/mass: -0.1349/1.125/0.4167 // -0.133/1.387/0.4583 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00007 + +*** Timestep 8: t=0.5 seconds, dt=0.0625 seconds + Solving temperature system... 12 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 12+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.0157 K, 0.4999 K, 1 K + Compositions min/max/mass: -0.119/1.125/0.4167 // -0.1188/1.327/0.4584 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00008 + +Skipping mesh refinement, because the mesh did not change. + +*** Timestep 9: t=0.5625 seconds, dt=0.0625 seconds + Solving temperature system... 11 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 11+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.01422 K, 0.4998 K, 1 K + Compositions min/max/mass: -0.1125/1.125/0.4167 // -0.1069/1.316/0.4584 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00009 + +*** Timestep 10: t=0.625 seconds, dt=0.0625 seconds + Solving temperature system... 12 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 11+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.01272 K, 0.4997 K, 1 K + Compositions min/max/mass: -0.1223/1.125/0.4167 // -0.1024/1.368/0.4584 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00010 + +Skipping mesh refinement, because the mesh did not change. + +*** Timestep 11: t=0.6875 seconds, dt=0.0625 seconds + Solving temperature system... 11 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 12+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.01329 K, 0.4996 K, 1 K + Compositions min/max/mass: -0.1302/1.125/0.4167 // -0.1094/1.377/0.4585 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00011 + +*** Timestep 12: t=0.75 seconds, dt=0.0625 seconds + Solving temperature system... 13 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 12+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.0123 K, 0.4996 K, 1 K + Compositions min/max/mass: -0.1197/1.124/0.4167 // -0.1212/1.235/0.4584 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00012 + +Skipping mesh refinement, because the mesh did not change. + +*** Timestep 13: t=0.8125 seconds, dt=0.0625 seconds + Solving temperature system... 11 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 6+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.009901 K, 0.4996 K, 1 K + Compositions min/max/mass: -0.09665/1.125/0.4167 // -0.1655/1.325/0.4584 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00013 + +*** Timestep 14: t=0.875 seconds, dt=0.0625 seconds + Solving temperature system... 11 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 5+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.007248 K, 0.4996 K, 1 K + Compositions min/max/mass: -0.09368/1.125/0.4167 // -0.2084/1.374/0.4584 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00014 + +Skipping mesh refinement, because the mesh did not change. + +*** Timestep 15: t=0.9375 seconds, dt=0.0625 seconds + Solving temperature system... 11 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 5+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.006538 K, 0.4996 K, 1 K + Compositions min/max/mass: -0.1627/1.125/0.4167 // -0.2078/1.378/0.4584 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00015 + +*** Timestep 16: t=1 seconds, dt=0.0625 seconds + Solving temperature system... 12 iterations. + Solving C_1 system ... 3 iterations. + Solving C_2 system ... 4 iterations. + Solving Stokes system... 5+0 iterations. + + Postprocessing: + Temperature min/avg/max: -0.006603 K, 0.4996 K, 1 K + Compositions min/max/mass: -0.2114/1.149/0.4167 // -0.1736/1.403/0.4583 + Writing graphical output: output-composition_cg_dg_fem/solution/solution-00016 + +Skipping mesh refinement, because the mesh did not change. + +Termination requested by criterion: end time + + ++----------------------------------------------+------------+------------+ ++----------------------------------+-----------+------------+------------+ ++----------------------------------+-----------+------------+------------+ + +----------------------------------------------------------------------------- +----------------------------------------------------------------------------- diff --git a/tests/composition_cg_dg_fem/statistics b/tests/composition_cg_dg_fem/statistics new file mode 100644 index 00000000000..24272764b59 --- /dev/null +++ b/tests/composition_cg_dg_fem/statistics @@ -0,0 +1,41 @@ +# 1: Time step number +# 2: Time (seconds) +# 3: Time step size (seconds) +# 4: Number of mesh cells +# 5: Number of Stokes degrees of freedom +# 6: Number of temperature degrees of freedom +# 7: Number of degrees of freedom for all compositions +# 8: Iterations for temperature solver +# 9: Iterations for composition solver 1 +# 10: Iterations for composition solver 2 +# 11: Iterations for Stokes solver +# 12: Velocity iterations in Stokes preconditioner +# 13: Schur complement iterations in Stokes preconditioner +# 14: Minimal temperature (K) +# 15: Average temperature (K) +# 16: Maximal temperature (K) +# 17: Average nondimensional temperature (K) +# 18: Minimal value for composition C_1 +# 19: Maximal value for composition C_1 +# 20: Global mass for composition C_1 +# 21: Minimal value for composition C_2 +# 22: Maximal value for composition C_2 +# 23: Global mass for composition C_2 +# 24: Visualization file name + 0 0.000000000000e+00 0.000000000000e+00 40 441 193 720 0 0 0 12 14 14 0.00000000e+00 5.00000000e-01 1.00000000e+00 5.00000000e-01 0.00000000e+00 1.00000000e+00 4.16666667e-01 0.00000000e+00 1.00000000e+00 4.58333333e-01 output-composition_cg_dg_fem/solution/solution-00000 + 1 6.250000000000e-02 6.250000000000e-02 40 441 193 720 10 3 4 7 9 9 0.00000000e+00 5.00021358e-01 1.00000000e+00 5.00021358e-01 -1.08142271e-01 1.02099034e+00 4.16676104e-01 -1.71280633e-01 1.09354449e+00 4.58311092e-01 output-composition_cg_dg_fem/solution/solution-00001 + 2 1.250000000000e-01 6.250000000000e-02 40 441 193 720 11 3 3 12 14 14 0.00000000e+00 5.00023331e-01 1.00000000e+00 5.00023331e-01 -1.91381311e-01 1.04313257e+00 4.16691480e-01 -2.37763832e-01 1.14505701e+00 4.58258286e-01 output-composition_cg_dg_fem/solution/solution-00002 + 3 1.875000000000e-01 6.250000000000e-02 64 659 289 1152 12 3 4 11 13 13 0.00000000e+00 5.00015279e-01 1.00000000e+00 5.00015279e-01 -1.97577121e-01 1.12631282e+00 4.16716449e-01 -2.23609710e-01 1.15610652e+00 4.58175837e-01 output-composition_cg_dg_fem/solution/solution-00003 + 4 2.500000000000e-01 6.250000000000e-02 64 659 289 1152 12 3 4 11 13 13 -4.36194964e-03 4.99974296e-01 1.00000000e+00 5.04336246e-01 -1.98196717e-01 1.12603887e+00 4.16700097e-01 -2.80773528e-01 1.20801513e+00 4.58213995e-01 output-composition_cg_dg_fem/solution/solution-00004 + 5 3.125000000000e-01 6.250000000000e-02 64 659 289 1152 12 3 4 11 13 13 -7.75404717e-03 4.99973164e-01 1.00000000e+00 5.07727212e-01 -1.70176772e-01 1.12528924e+00 4.16694933e-01 -1.54558871e-01 1.22531610e+00 4.58185033e-01 output-composition_cg_dg_fem/solution/solution-00005 + 6 3.750000000000e-01 6.250000000000e-02 64 659 289 1152 11 3 4 10 12 12 -1.14918131e-02 4.99952303e-01 1.00000000e+00 5.11444116e-01 -1.62924178e-01 1.12481952e+00 4.16693908e-01 -1.42631464e-01 1.27321987e+00 4.58074333e-01 output-composition_cg_dg_fem/solution/solution-00006 + 7 4.375000000000e-01 6.250000000000e-02 64 659 289 1152 12 3 4 11 13 13 -1.53184334e-02 4.99886877e-01 1.00000000e+00 5.15205310e-01 -1.34869926e-01 1.12500770e+00 4.16693633e-01 -1.32954847e-01 1.38661113e+00 4.58253997e-01 output-composition_cg_dg_fem/solution/solution-00007 + 8 5.000000000000e-01 6.250000000000e-02 64 659 289 1152 12 3 4 11 13 13 -1.57000867e-02 4.99858770e-01 1.00000000e+00 5.15558856e-01 -1.19022547e-01 1.12485992e+00 4.16692755e-01 -1.18825666e-01 1.32674648e+00 4.58366480e-01 output-composition_cg_dg_fem/solution/solution-00008 + 9 5.625000000000e-01 6.250000000000e-02 64 659 289 1152 11 3 4 10 12 12 -1.42223940e-02 4.99805947e-01 1.00000000e+00 5.14028341e-01 -1.12529822e-01 1.12461501e+00 4.16692325e-01 -1.06936797e-01 1.31571693e+00 4.58390706e-01 output-composition_cg_dg_fem/solution/solution-00009 +10 6.250000000000e-01 6.250000000000e-02 64 659 289 1152 12 3 4 10 12 12 -1.27182304e-02 4.99705542e-01 1.00000000e+00 5.12423772e-01 -1.22341396e-01 1.12477645e+00 4.16691691e-01 -1.02350498e-01 1.36763042e+00 4.58428416e-01 output-composition_cg_dg_fem/solution/solution-00010 +11 6.875000000000e-01 6.250000000000e-02 64 659 289 1152 11 3 4 11 13 13 -1.32874660e-02 4.99605244e-01 1.00000000e+00 5.12892710e-01 -1.30213764e-01 1.12466407e+00 4.16691406e-01 -1.09420185e-01 1.37724151e+00 4.58459576e-01 output-composition_cg_dg_fem/solution/solution-00011 +12 7.500000000000e-01 6.250000000000e-02 64 659 289 1152 13 3 4 11 13 13 -1.23038710e-02 4.99596773e-01 1.00000000e+00 5.11900644e-01 -1.19692682e-01 1.12447346e+00 4.16690576e-01 -1.21223587e-01 1.23481427e+00 4.58431683e-01 output-composition_cg_dg_fem/solution/solution-00012 +13 8.125000000000e-01 6.250000000000e-02 64 659 289 1152 11 3 4 5 7 7 -9.90118076e-03 4.99585050e-01 1.00000000e+00 5.09486231e-01 -9.66547895e-02 1.12487312e+00 4.16690023e-01 -1.65548388e-01 1.32487524e+00 4.58408161e-01 output-composition_cg_dg_fem/solution/solution-00013 +14 8.750000000000e-01 6.250000000000e-02 64 659 289 1152 11 3 4 4 6 6 -7.24766466e-03 4.99575434e-01 1.00000000e+00 5.06823098e-01 -9.36832177e-02 1.12509844e+00 4.16689591e-01 -2.08412603e-01 1.37385469e+00 4.58382435e-01 output-composition_cg_dg_fem/solution/solution-00014 +15 9.375000000000e-01 6.250000000000e-02 64 659 289 1152 11 3 4 4 6 6 -6.53794342e-03 4.99565727e-01 1.00000000e+00 5.06103670e-01 -1.62670326e-01 1.12504051e+00 4.16689228e-01 -2.07782755e-01 1.37803488e+00 4.58355410e-01 output-composition_cg_dg_fem/solution/solution-00015 +16 1.000000000000e+00 6.250000000000e-02 64 659 289 1152 12 3 4 4 6 6 -6.60290612e-03 4.99553058e-01 1.00000000e+00 5.06155964e-01 -2.11393866e-01 1.14894448e+00 4.16688918e-01 -1.73563489e-01 1.40290320e+00 4.58329614e-01 output-composition_cg_dg_fem/solution/solution-00016