ASPECT
Namespaces | Classes | Macros | Functions
Describing prescribed velocity fields
Collaboration diagram for Describing prescribed velocity fields:

Namespaces

 aspect::PrescribedStokesSolution
 

Classes

class  aspect::PrescribedStokesSolution::AsciiData< dim >
 
class  aspect::PrescribedStokesSolution::Circle< dim >
 
class  aspect::PrescribedStokesSolution::Function< dim >
 
class  aspect::PrescribedStokesSolution::Interface< dim >
 

Macros

#define ASPECT_REGISTER_PRESCRIBED_STOKES_SOLUTION(classname, name, description)
 

Functions

template<int dim>
void aspect::PrescribedStokesSolution::register_prescribed_stokes_solution_model (const std::string &name, const std::string &description, void(*declare_parameters_function)(ParameterHandler &), std::unique_ptr< Interface< dim >>(*factory_function)())
 
template<int dim>
std::unique_ptr< Interface< dim > > aspect::PrescribedStokesSolution::create_prescribed_stokes_solution (ParameterHandler &prm)
 
template<int dim>
void aspect::PrescribedStokesSolution::declare_parameters (ParameterHandler &prm)
 

Detailed Description

A group for all things that have to do with prescribing a velocity field for simulations that only compute advected temperature and compositional fields, but do not compute a Stokes solution.

Macro Definition Documentation

§ ASPECT_REGISTER_PRESCRIBED_STOKES_SOLUTION

#define ASPECT_REGISTER_PRESCRIBED_STOKES_SOLUTION (   classname,
  name,
  description 
)
Value:
template class classname<2>; \
template class classname<3>; \
namespace ASPECT_REGISTER_PRESCRIBED_STOKES_SOLUTION_ ## classname \
{ \
aspect::internal::Plugins::RegisterHelper<aspect::PrescribedStokesSolution::Interface<2>,classname<2>> \
dummy_ ## classname ## _2d (&aspect::PrescribedStokesSolution::register_prescribed_stokes_solution_model<2>, \
name, description); \
aspect::internal::Plugins::RegisterHelper<aspect::PrescribedStokesSolution::Interface<3>,classname<3>> \
dummy_ ## classname ## _3d (&aspect::PrescribedStokesSolution::register_prescribed_stokes_solution_model<3>, \
name, description); \
}

Given a class name, a name, and a description for the parameter file for a prescribed Stokes solution model, register it with the functions that can declare their parameters and create these objects.

Definition at line 143 of file interface.h.

Function Documentation

§ register_prescribed_stokes_solution_model()

template<int dim>
void aspect::PrescribedStokesSolution::register_prescribed_stokes_solution_model ( const std::string &  name,
const std::string &  description,
void(*)(ParameterHandler &)  declare_parameters_function,
std::unique_ptr< Interface< dim >>(*)()  factory_function 
)

Register initial prescribed Stokes solution model so that it can be selected from the parameter file.

Parameters
nameA string that identifies the prescribed Stokes solution model
descriptionA text description of what this model does and that will be listed in the documentation of the parameter file.
declare_parameters_functionA pointer to a function that can be used to declare the parameters that this prescribed Stokes solution model wants to read from input files.
factory_functionA pointer to a function that can create an object of this prescribed Stokes solution model.

§ create_prescribed_stokes_solution()

template<int dim>
std::unique_ptr<Interface<dim> > aspect::PrescribedStokesSolution::create_prescribed_stokes_solution ( 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 model object returned is not yet initialized and has not read its runtime parameters yet.

§ declare_parameters()

template<int dim>
void aspect::PrescribedStokesSolution::declare_parameters ( ParameterHandler &  prm)

Declare the runtime parameters of the registered prescribed Stokes solution models.