ASPECT
box.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2011 - 2019 by the authors of the ASPECT code.
3 
4  This file is part of ASPECT.
5 
6  ASPECT is free software; you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation; either version 2, or (at your option)
9  any later version.
10 
11  ASPECT is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with ASPECT; see the file LICENSE. If not see
18  <http://www.gnu.org/licenses/>.
19 */
20 
21 
22 #ifndef _aspect_initial_temperature_box_h
23 #define _aspect_initial_temperature_box_h
24 
27 
28 namespace aspect
29 {
30  namespace InitialTemperature
31  {
38  template <int dim>
39  class PerturbedBox : public Interface<dim>, public SimulatorAccess<dim>
40  {
41  public:
45  double initial_temperature (const Point<dim> &position) const override;
46  };
47 
54  template <int dim>
55  class PolarBox : public Interface<dim>, public SimulatorAccess<dim>
56  {
57  public:
61  double initial_temperature (const Point<dim> &position) const override;
62  };
63 
69  template <int dim>
70  class MandelBox : public Interface<dim>, public SimulatorAccess<dim>
71  {
72  public:
76  double initial_temperature (const Point<dim> &position) const override;
77  };
78 
85  template <int dim>
86  class InclusionShapeBox : public Interface<dim>, public SimulatorAccess<dim>
87  {
88  public:
92  double initial_temperature(const Point<dim> &position) const override;
93 
97  static
98  void
99  declare_parameters (ParameterHandler &prm);
100 
104  void
105  parse_parameters (ParameterHandler &prm) override;
106 
107  private:
108  std::string inclusion_shape;
109  std::string inclusion_gradient;
110  double radius;
113  double center_x;
114  double center_y;
115  double center_z;
116  };
117  }
118 }
119 
120 #endif
virtual void parse_parameters(ParameterHandler &prm)
double initial_temperature(const Point< dim > &position) const override
Definition: compat.h:59
static void declare_parameters(ParameterHandler &prm)