Revision d0320bb741b636fe546713dbf975fdb5c812c1e2 authored by Timo Heister on 02 May 2013, 00:01:44 UTC, committed by Timo Heister on 02 May 2013, 00:01:44 UTC
git-svn-id: https://svn.aspect.dealii.org/branches/releases/aspect-0.2@1672 244a8438-9d6d-46c2-a098-b74c898f6b90
1 parent e0c912f
Raw File
sol_cx.prm
# Listing of Parameters
# ---------------------

# At the top, state that the program should be run for a two-dimensional 
# simulation
set Dimension = 2


# In computations, the time step $k$ is chosen according to $k = c \min_K
# \frac{h_K}{\|u\|_{\infty,K} p_T}$ where $h_K$ is the diameter of cell $K$,
# and the denominator is the maximal magnitude of the velocity on cell $K$
# times the polynomial degree $p_T$ of the temperature discretization. The
# dimensionless constant $c$ is called the CFL number in this program. For
# time discretizations that have explicit components, $c$ must be less than a
# constant that depends on the details of the time discretization and that is
# no larger than one. On the other hand, for implicit discretizations such as
# the one chosen here, one can choose the time step as large as one wants (in
# particular, one can choose $c>1$) though a CFL number significantly larger
# than one will yield rather diffusive solutions. Units: None.
set CFL number                             = 1.0

# The end time of the simulation. Units: years if the 'Use years in output
# instead of seconds' parameter is set; seconds otherwise.
set End time                               = 0

# The name of the directory into which all output files should be placed. This
# may be an absolute or a relative path.
set Output directory                       = output

# A flag indicating whether the computation should be resumed from a
# previously saved state (if true) or start from scratch (if false).
set Resume computation                     = false

# The start time of the simulation. Units: years if the 'Use years in output
# instead of seconds' parameter is set; seconds otherwise.
set Start time                             = 0

# In order to make the problem in the first time step easier to solve, we need
# a reasonable guess for the temperature and pressure. To obtain it, we use an
# adiabatic pressure and temperature field. This parameter describes what the
# `adiabatic' temperature would be at the surface of the domain (i.e. at depth
# zero). Note that this value need not coincide with the boundary condition
# posed at this point. Rather, the boundary condition may differ significantly
# from the adiabatic value, and then typically induce a thermal boundary
# layer.
# For more information, see the section in the manual that discusses the
# general mathematical model.
set Adiabatic surface temperature          = 0

# The mathematical equations that describe thermal convection only determine
# the pressure up to an arbitrary constant. On the other hand, for comparison
# and for looking up material parameters it is important that the pressure be
# normalized somehow. We do this by enforcing a particular average pressure
# value at the surface of the domain, where the geometry model determines
# where the surface is. This parameter describes what this average surface
# pressure value is supposed to be. By default, it is set to zero, but one may
# want to choose a different value for example for simulating only the volume
# of the mantle below the lithosphere, in which case the surface pressure
# should be the lithostatic pressure at the bottom of the lithosphere.
# For more information, see the section in the manual that discusses the
# general mathematical model.
set Surface pressure                       = 0

# When computing results for mantle convection simulations, it is often
# difficult to judge the order of magnitude of results when they are stated in
# MKS units involving seconds. Rather, some kinds of results such as
# velocities are often stated in terms of meters per year (or, sometimes,
# centimeters per year). On the other hand, for non-dimensional computations,
# one wants results in their natural unit system as used inside the code. If
# this flag is set to 'true' conversion to years happens; if it is 'false', no
# such conversion happens.
set Use years in output instead of seconds = false  # default: true

# Select one of the following solver schemes:
#
# 'IMPES': This is the IMplicit Pressure Explicit Saturation scheme. In a first
# step the variables velocity and pressure are computed from equations without
# time derivatives. In a second step the variable temperature is updated by
# using an explicit time step.
set Nonlinear solver scheme                = IMPES


subsection Boundary temperature model
  # Select one of the following models:
  #
  # `box': A model in which the temperature is chosen constant on the left and
  # right sides of a box.
  #
  # `spherical constant': A model in which the temperature is chosen constant
  # on the inner and outer boundaries of a spherical shell. Parameters are
  # read from subsection 'Sherical constant'.
  set Model name = box

end


subsection Discretization
  # The polynomial degree to use for the velocity variables in the Stokes
  # system. Units: None.
  set Stokes velocity polynomial degree       = 2

  # The polynomial degree to use for the temperature variable. Units: None.
  set Temperature polynomial degree           = 2

  # Whether to use a Stokes discretization that is locally conservative at the
  # expense of a larger number of degrees of freedom (true), or to go with a
  # cheaper discretization that does not locally conserve mass, although it is
  # globally conservative (false).
  set Use locally conservative discretization = false

  subsection Stabilization parameters
    # The exponent $\alpha$ in the entropy viscosity stabilization. Units:
    # None.
    set alpha = 2

    # The $\beta$ factor in the artificial viscosity stabilization. An
    # appropriate value for 2d is 0.052 and 0.078 for 3d. Units: None.
    set beta  = 0.078

    # The $c_R$ factor in the entropy viscosity stabilization. Units: None.
    set cR    = 0.5   # default: 0.11
  end

end


subsection Geometry model
  # Select one of the following models:
  #
  # `box': A box geometry parallel to the coordinate directions. The extent of
  # the box in each coordinate direction is set in the parameter file.
  #
  # `spherical shell': A geometry representing a spherical shell or a pice of
  # it. Inner and outer radii are read from the parameter file in subsection
  # 'Spherical shell'.
  set Model name = box

  subsection Box
    # Extent of the box in x-direction. Units: m.
    set X extent = 1

    # Extent of the box in y-direction. Units: m.
    set Y extent = 1

    # Extent of the box in z-direction. This value is ignored if the
    # simulation is in 2d Units: m.
    set Z extent = 1
  end
end


subsection Gravity model
  # Select one of the following models:
  #
  # `radial constant': A gravity model in which the gravity direction is
  # radially inward and at constant magnitude. The magnitude is read from the
  # parameter file in subsection 'Radial constant'.
  #
  # `radial earth-like': A gravity model in which the gravity direction is
  # radially inward and with a magnitude that matches that of the earth at the
  # core-mantle boundary as well as at the surface and in between is
  # physically correct under the assumption of a constant density.
  #
  # `vertical': A gravity model in which the gravity direction is vertically
  # downward and at constant magnitude.
  set Model name = vertical

end


subsection Initial conditions
  # Select one of the following models:
  #
  # `perturbed box': An initial temperature field in which the temperature is
  # perturbed slightly from an otherwise constant value equal to one. The
  # perturbation is chosen in such a way that the initial temperature is
  # constant to one along the entire boundary.
  #
  # `spherical hexagonal perturbation': An initial temperature field in which
  # the temperature is perturbed following a six-fold pattern in angular
  # direction from an otherwise spherically symmetric state.
  #
  # `spherical gaussian perturbation': An initial temperature field in which
  # the temperature is perturbed by a single Gaussian added to an otherwise
  # spherically symmetric state. Additional parameters are read from the
  # parameter file in subsection 'Spherical gaussian perturbation'.
  set Model name = perturbed box

end


subsection Material model
  # Select one of the following models:
  #
  # `simple': A simple material model that has constant values for all
  # coefficients but the density. This model uses the formulation that assumes
  # an incompressible medium despite the fact that the density follows the law
  # $\rho(T)=\rho_0(1-\beta(T-T_{\text{ref}})$. The value for the components
  # of this formula and additional parameters are read from the parameter file
  # in subsection 'Simple model'.
  #
  # `Steinberger': lookup from the paper of Steinberger/Calderwood
  #
  # `table': A material model that reads tables of pressure and temperature
  # dependent material coefficients from files.
  set Model name = SolCx
end


subsection Mesh refinement
  set Initial adaptive refinement        = 0                       # default: 2
  set Initial global refinement          = 6                       # default: 2

  # The method used to determine which cells to refine and which to coarsen.
  set Strategy                           = thermal energy density
end


subsection Model settings
  set Include adiabatic heating               = false
  set Include shear heating                   = false # default: true

  # H0
  set Radiogenic heating rate                 = 0

  # A comma separated list of integers denoting those boundaries on which the
  # temperature is fixed and described by the boundary temperature object
  # selected in its own section of this input file. All boundary indicators
  # used by the geometry but not explicitly listed here will end up with
  # no-flux (insulating) boundary conditions.
  set Fixed temperature boundary indicators   = 0, 1

  # A comma separated list of integers denoting those boundaries on which the
  # velocity is tangential but prescribed, i.e., where external forces act to
  # prescribe a particular velocity. This is often used to prescribe a
  # velocity that equals that of overlying plates.
  set Prescribed velocity boundary indicators = 

  # A comma separated list of integers denoting those boundaries on which the
  # velocity is tangential and unrestrained, i.e., where no external forces
  # act to prescribe a particular tangential velocity (although there is a
  # force that requires the flow to be tangential).
  set Tangential velocity boundary indicators = 0,1,2,3

  # A comma separated list of integers denoting those boundaries on which the
  # velocity is zero.
  set Zero velocity boundary indicators       = 
end


subsection Postprocess
  # A comma separated list of postprocessor objects that should be run at the
  # end of each time step. Some of these postprocessors will declare their own
  # parameters which may, for example, include that they will actually do
  # something only every so many time steps or years. Alternatively, the text
  # 'all' indicates that all available postprocessors should be run after each
  # time step.
  #
  # The following postprocessors are available:
  #
  # `depth average': A postprocessor that computes depth averaged quantities
  # and writes them out.
  #
  # `heat flux statistics': A postprocessor that computes some statistics
  # about the heat flux across boundaries.
  #
  # `heat flux statistics for the table model': A postprocessor that computes
  # some statistics about the heat flux across boundaries.
  #
  # `velocity statistics for the table model': A postprocessor that computes
  # some statistics about the velocity field.
  #
  # `temperature statistics': A postprocessor that computes some statistics
  # about the temperature field.
  #
  # `velocity statistics': A postprocessor that computes some statistics about
  # the velocity field.
  #
  # `visualization': A postprocessor that takes the solution and writes it
  # into files that can be read by a graphical visualization program.
  # Additional run time parameters are read from the parameter subsection
  # 'Visualization'.
  set List of postprocessors = visualization, DuretzEtAl error

  subsection Depth average
    # The time interval between each generation of graphical output files. A
    # value of zero indicates that output should be generated in each time
    # step. Units: years if the 'Use years in output instead of seconds'
    # parameter is set; seconds otherwise.
    set Time between graphical output = 1e8
  end

  subsection Visualization
    # VTU file output supports grouping files from several CPUs into one file
    # using MPI I/O when writing on a parallel filesystem. Select 0 for no
    # grouping. This will disable parallel file output and instead write one
    # file per processor in a background thread. A value of 1 will generate
    # one big file containing the whole solution.
    set Number of grouped files       = 0

    # The file format to be used for graphical output.
    set Output format                 = vtu

    # The time interval between each generation of graphical output files. A
    # value of zero indicates that output should be generated in each time
    # step. Units: years if the 'Use years in output instead of seconds'
    # parameter is set; seconds otherwise.
    set Time between graphical output = 0   # default: 1e8
  end
end

back to top