[cig-commits] commit 2061 by bangerth to /var/svn/dealii/aspect
dealii.demon at gmail.com
dealii.demon at gmail.com
Tue Nov 26 11:11:59 PST 2013
Revision 2061
One more test. Output is currently still wrong.
A trunk/aspect/tests/no_adiabatic_heating_03/
A trunk/aspect/tests/no_adiabatic_heating_03.cc
A trunk/aspect/tests/no_adiabatic_heating_03.prm
http://www.dealii.org/websvn/revision.php?repname=Aspect+Repository&path=%2F&rev=2061&peg=2061
Diff:
Copied: trunk/aspect/tests/no_adiabatic_heating_03.cc (from rev 2058, trunk/aspect/tests/no_adiabatic_heating_02.cc)
===================================================================
--- trunk/aspect/tests/no_adiabatic_heating_03.cc (rev 0)
+++ trunk/aspect/tests/no_adiabatic_heating_03.cc 2013-11-26 19:11:17 UTC (rev 2061)
@@ -0,0 +1,45 @@
+// use the same postprocessing facilities as for the
+// 'compressibility_iterated_stokes' testcase
+#include "compressibility_iterated_stokes.cc"
+
+namespace aspect
+{
+ namespace MaterialModel
+ {
+ using namespace dealii;
+
+ template <int dim>
+ class NoAdiabaticHeating : public CompressibilityIteratedStokes<dim>
+ {
+ public:
+ virtual double thermal_expansion_coefficient (const double,
+ const double,
+ const std::vector<double> &,
+ const Point<dim> &) const
+ {
+ return 0;
+ }
+
+ virtual double viscosity (const double,
+ const double,
+ const std::vector<double> &,
+ const Point<dim> &) const
+ {
+ return 10;
+ }
+ };
+
+ }
+}
+
+
+// explicit instantiations
+namespace aspect
+{
+ namespace MaterialModel
+ {
+ ASPECT_REGISTER_MATERIAL_MODEL(NoAdiabaticHeating,
+ "no adiabatic heating",
+ "As described in the .prm file.")
+ }
+}
Copied: trunk/aspect/tests/no_adiabatic_heating_03.prm (from rev 2058, trunk/aspect/tests/no_adiabatic_heating_02.prm)
===================================================================
--- trunk/aspect/tests/no_adiabatic_heating_03.prm (rev 0)
+++ trunk/aspect/tests/no_adiabatic_heating_03.prm 2013-11-26 19:11:17 UTC (rev 2061)
@@ -0,0 +1,130 @@
+# Like 'no_adiabatic_heating_02' but here we actually switch on friction
+# heating and set the viscosity to a non-zero. In this testcase, we have
+# u_z(z) = 1+z/100
+# so in 2d, we have
+# eps(u) - 1/3 (div u) I = [[-1/300,0], [0,2/300]]
+# so the friction heating term is
+# 2*eta*5/9*(1/100)^2
+# Consequently, if we set the thermal diffusivity to zero, then from
+# DT/Dt = 2*eta*5/9*(1/100)^2
+# we get
+# T(t) = 2*eta*5/9*(1/100)^2 * t + T(0)
+# From the velocity, we get
+# z = t*t^2/200
+# so
+# T(z) = 2*eta*5/9*(1/100)^2 * (10*sqrt(100+2z)-100) + T(0)
+# Thus, the maximal temperature at the outlet should be
+# T(1) = 2*eta*5/9*(1/100)^2 * (10*sqrt(102)-100) + T(0)
+# To make all of this work, of course, we need that the density does
+# not depend on the temperature
+#
+# In this testcase, we choose eta=10, so this should lead to
+# T(1) = 0.001105
+
+set Dimension = 2
+
+set CFL number = 1.0
+set End time = 1
+set Output directory = output-no_adiabatic_heating_03
+set Start time = 0
+set Adiabatic surface temperature = 0
+set Surface pressure = 0
+set Use years in output instead of seconds = false # default: true
+
+set Nonlinear solver scheme = iterated Stokes
+set Max nonlinear iterations = 5
+
+set Additional shared libraries = ./libno_adiabatic_heating_03.so
+
+
+subsection Boundary temperature model
+ set Model name = box
+end
+
+
+
+subsection Gravity model
+ set Model name = vertical
+end
+
+
+subsection Geometry model
+ set Model name = box
+
+ subsection Box
+ set X extent = 1
+ set Y extent = 1
+ set Z extent = 1
+ end
+end
+
+
+# temperature field doesn't matter. set it to zero
+subsection Initial conditions
+ set Model name = function
+ subsection Function
+ set Function expression = 0
+ end
+end
+
+
+# no gravity. the pressure will equal just the dynamic component
+subsection Gravity model
+ set Model name = vertical
+ subsection Vertical
+ set Magnitude = 10.0
+ end
+end
+
+
+subsection Material model
+ set Model name = no adiabatic heating
+
+ subsection Simple model
+ set Reference density = 1 # default: 3300
+ set Reference specific heat = 1250
+ set Reference temperature = 0 # default: 293
+ set Thermal conductivity = 1e-6 # default: 4.7
+ set Thermal expansion coefficient = 0
+ set Viscosity = 1 # default: 5e24
+ end
+end
+
+
+subsection Mesh refinement
+ set Initial adaptive refinement = 0
+ set Initial global refinement = 4
+end
+
+
+subsection Model settings
+ set Fixed temperature boundary indicators = 2
+ set Tangential velocity boundary indicators = 0, 1
+ set Zero velocity boundary indicators =
+ set Prescribed velocity boundary indicators = 2: function
+ set Include shear heating = true
+ set Include adiabatic heating = false
+end
+
+subsection Boundary temperature model
+ set Model name = box
+ subsection Box
+ set Bottom temperature = 0
+ end
+end
+
+
+subsection Boundary velocity model
+ subsection Function
+ set Variable names = x,y
+ set Function expression = 0;1
+ end
+end
+
+subsection Postprocess
+ set List of postprocessors = temperature statistics, velocity statistics, visualization
+
+ subsection Visualization
+ set Time between graphical output = 0.1
+ end
+end
More information about the CIG-COMMITS
mailing list