22 #ifndef _aspect_geometry_model_two_merged_boxes_h 23 #define _aspect_geometry_model_two_merged_boxes_h 30 namespace GeometryModel
47 void create_coarse_mesh (parallel::distributed::Triangulation<dim> &coarse_grid)
const override;
53 Point<dim> get_extents ()
const;
59 Point<dim> get_origin ()
const;
67 double length_scale ()
const override;
82 double depth(
const Point<dim> &position)
const override;
88 double height_above_reference_surface(
const Point<dim> &position)
const override;
93 Point<dim> representative_point(
const double depth)
const override;
98 double maximal_depth()
const override;
111 std::set<types::boundary_id>
112 get_used_boundary_indicators ()
const override;
128 std::map<std::string,types::boundary_id>
129 get_symbolic_boundary_names_map ()
const override;
135 std::set<std::pair<std::pair<types::boundary_id, types::boundary_id>,
unsigned int>>
136 get_periodic_boundary_pairs ()
const override;
145 adjust_positions_for_periodicity (Point<dim> &position,
146 const ArrayView<Point<dim>> &connected_positions = {},
147 const ArrayView<Tensor<1, dim>> &connected_velocities = {})
const override;
155 has_curved_elements()
const override;
163 point_is_in_domain(
const Point<dim> &point)
const override;
176 std::array<double,dim> cartesian_to_natural_coordinates(
const Point<dim> &position)
const override;
183 Point<dim> natural_to_cartesian_coordinates(
const std::array<double,dim> &position)
const override;
196 parse_parameters (ParameterHandler &prm)
override;
237 bool periodic[dim+dim-1];
259 set_boundary_indicators (parallel::distributed::Triangulation<dim> &triangulation)
const;
Point< dim > upper_box_origin
std::array< unsigned int, dim > upper_repetitions
void declare_parameters(ParameterHandler &prm)
std::array< unsigned int, dim > lower_repetitions
Point< dim > upper_extents
Point< dim > lower_box_origin
Point< dim > lower_extents