A module for the definition of properties related to initial topography of the geometry. The goal of this module is to return the elevation at a certain point on the surface and store and manage all information related to this purpose.
§ ASPECT_REGISTER_INITIAL_TOPOGRAPHY_MODEL
#define ASPECT_REGISTER_INITIAL_TOPOGRAPHY_MODEL |
( |
|
classname, |
|
|
|
name, |
|
|
|
description |
|
) |
| |
Value:template class classname<2>; \
template class classname<3>; \
namespace ASPECT_REGISTER_INITIAL_TOPOGRAPHY_MODEL_ ## classname \
{ \
aspect::internal::Plugins::RegisterHelper<aspect::InitialTopographyModel::Interface<2>,classname<2>> \
dummy_ ## classname ## _2d (&aspect::InitialTopographyModel::register_initial_topography_model<2>, \
name, description); \
aspect::internal::Plugins::RegisterHelper<aspect::InitialTopographyModel::Interface<3>,classname<3>> \
dummy_ ## classname ## _3d (&aspect::InitialTopographyModel::register_initial_topography_model<3>, \
name, description); \
}
Given a class name, a name, and a description for the parameter file for a initial topography model, register it with the functions that can declare their parameters and create these objects.
Definition at line 147 of file interface.h.
§ register_initial_topography_model()
template<int dim>
void aspect::InitialTopographyModel::register_initial_topography_model |
( |
const std::string & |
name, |
|
|
const std::string & |
description, |
|
|
void(*)(ParameterHandler &) |
declare_parameters_function, |
|
|
std::unique_ptr< Interface< dim >>(*)() |
factory_function |
|
) |
| |
Register a initial topography model so that it can be selected from the parameter file.
- Parameters
-
name | A string that identifies the initial topography model |
description | A text description of what this model does and that will be listed in the documentation of the parameter file. |
declare_parameters_function | A pointer to a function that can be used to declare the parameters that this initial topography model wants to read from input files. |
factory_function | A pointer to a function that can create an object of this initial topography model. |
§ create_initial_topography_model()
template<int dim>
std::unique_ptr<Interface<dim> > aspect::InitialTopographyModel::create_initial_topography_model |
( |
ParameterHandler & |
prm | ) |
|
A function that given the name of a model returns a pointer to an object that describes it. Ownership of the pointer is transferred to the caller.
The initial topography model will also be asked to read its runtime parameters already.
§ declare_parameters()
template<int dim>
void aspect::InitialTopographyModel::declare_parameters |
( |
ParameterHandler & |
prm | ) |
|
Declare the runtime parameters of the registered initial topography models.