23 #ifndef _aspect_prescribed_stokes_solution_interface_h
24 #define _aspect_prescribed_stokes_solution_interface_h
41 namespace PrescribedStokesSolution
89 const std::string &description,
104 std::unique_ptr<Interface<dim>>
141 #define ASPECT_REGISTER_PRESCRIBED_STOKES_SOLUTION(classname,name,description) \
142 template class classname<2>; \
143 template class classname<3>; \
144 namespace ASPECT_REGISTER_PRESCRIBED_STOKES_SOLUTION_ ## classname \
146 aspect::internal::Plugins::RegisterHelper<aspect::PrescribedStokesSolution::Interface<2>,classname<2>> \
147 dummy_ ## classname ## _2d (&aspect::PrescribedStokesSolution::register_prescribed_stokes_solution_model<2>, \
148 name, description); \
149 aspect::internal::Plugins::RegisterHelper<aspect::PrescribedStokesSolution::Interface<3>,classname<3>> \
150 dummy_ ## classname ## _3d (&aspect::PrescribedStokesSolution::register_prescribed_stokes_solution_model<3>, \
151 name, description); \
virtual void stokes_solution(const Point< dim > &p, Vector< double > &value) const =0
std::unique_ptr< Interface< dim > > create_prescribed_stokes_solution(ParameterHandler &prm)
void declare_parameters(ParameterHandler &prm)
void 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)())
void write_plugin_graph(std::ostream &output_stream)