A module for the definition of terms that appear as heating or cooling terms on the right hand side of the temperature equation. This includes, in particular, terms such as shear and adiabatic heating, phase changes, and radiogenic sources.
§ ASPECT_REGISTER_HEATING_MODEL
#define ASPECT_REGISTER_HEATING_MODEL |
( |
|
classname, |
|
|
|
name, |
|
|
|
description |
|
) |
| |
Value:template class classname<2>; \
template class classname<3>; \
namespace ASPECT_REGISTER_HEATING_MODEL_ ## classname \
{ \
aspect::internal::Plugins::RegisterHelper<aspect::HeatingModel::Interface<2>,classname<2>> \
name, description); \
aspect::internal::Plugins::RegisterHelper<aspect::HeatingModel::Interface<3>,classname<3>> \
name, description); \
}
Given a class name, a name, and a description for the parameter file for a heating model, register it with the aspect::HeatingModel::Manager class.
Definition at line 382 of file interface.h.
§ register_heating_model()
template<int dim>
static void aspect::HeatingModel::Manager< dim >::register_heating_model |
( |
const std::string & |
name, |
|
|
const std::string & |
description, |
|
|
void(*)(ParameterHandler &) |
declare_parameters_function, |
|
|
std::unique_ptr< Interface< dim >>(*)() |
factory_function |
|
) |
| |
|
static |
A function that is used to register heating model objects in such a way that the Manager can deal with all of them without having to know them by name. This allows the files in which individual plugins are implemented to register these plugins, rather than also having to modify the Manager class by adding the new heating plugin class.
- Parameters
-
name | A string that identifies the heating 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 heating model wants to read from input files. |
factory_function | A pointer to a function that can create an object of this heating model. |