ParsedMappedFunctions object. More...
#include <parsed_mapped_functions.h>
Public Member Functions | |
ParsedMappedFunctions (const std::string &name="Mapped Functions", const unsigned int &n_components=1, const std::string &component_names="", const std::string &default_id_components="0=ALL", const std::string &default_id_functions="", const std::string &default_constants="") | |
Constructor. More... | |
shared_ptr< dealii::Functions::ParsedFunction< spacedim > > | get_mapped_function (const unsigned int &id) const |
return a shared_ptr to the ParsedFunction corresponding to the given id More... | |
shared_ptr< dealii::Functions::ParsedFunction< spacedim > > | get_mapped_normal_function (const unsigned int &id, const unsigned int &fcv) const |
return a shared_ptr to the ParsedFunction corresponding to the given id the function has spacedim components More... | |
ComponentMask | get_mapped_mask (const unsigned int &id) const |
return the ComponentMask corresponding to the given id More... | |
std::vector< unsigned int > | get_mapped_ids () const |
return the list of the mapped ids More... | |
std::vector< unsigned int > | get_mapped_normal_ids () const |
return the list of the mapped ids for which normal components have been set More... | |
virtual void | declare_parameters (ParameterHandler &prm) |
declare_parameters is inherithed by ParameterAcceptor More... | |
virtual void | parse_parameters_call_back () |
parse_parameters_call_back is inherithed by ParameterAcceptor More... | |
bool | acts_on_id (unsigned int &id) const |
return true if there is a function that acts on the passed id More... | |
void | set_time (const double &t) |
set time equal to t for all the mapped functions More... | |
DeclException2 (ExcIdsMismatch, unsigned int, unsigned int,<< "The number of ids specified in the field "<< "'IDs and component masks' ("<< arg1<< ") "<< "must match the number of ids "<< "set in the field 'IDs and expressions' ("<< arg2<<").") | |
Mismatch between the number of ids set in 'IDs and component masks' and 'IDs and expressions'. More... | |
DeclException1 (ExcIdNotFound, unsigned int,<< "No entry with the id "<< arg1<< " exists.") | |
An entry with this id does not exist in this object. More... | |
DeclException1 (ExcIdNotMatch, unsigned int,<< "No component mask associated to the id "<< arg1<< " are defined.") | |
No component mask are defined on this id. More... | |
DeclException3 (ExcWrongComponent, unsigned int, unsigned int, unsigned int,<< "At id "<< arg1<< ", wrong component number has been used: "<< arg2<< " is not in the range [0, "<< arg3<<").") | |
Wrong number of component mask is defined on this id. More... | |
DeclException3 (ExcWrongVariable, unsigned int, std::string, std::vector< std::string >,<< "At id "<< arg1<< ", wrong variabile name has been used: "<< arg2<< " does not belong to the knwon variables: "<< print(unique(arg3))<<".") | |
Wrong variable name is defined on this id. More... | |
Public Member Functions inherited from ParameterAcceptor | |
ParameterAcceptor (const std::string section_name="") | |
The constructor adds derived classes to the list of acceptors. More... | |
virtual | ~ParameterAcceptor () |
The destructor sets to zero the pointer relative to this index, so that it is safe to destroy the mother class. More... | |
virtual void | parse_parameters (ParameterHandler &prm) |
Parse the parameter file. More... | |
std::string | get_section_name () const |
Return the section name of this class. More... | |
std::vector< std::string > | get_section_path () const |
Travers all registered classes, and figure out what subsections we need to enter. More... | |
template<class T > | |
void | add_parameter (ParameterHandler &prm, T *parameter, const std::string &entry, const std::string &default_value, const Patterns::PatternBase &pattern=Patterns::Anything(), const std::string &documentation=std::string()) |
Add a parameter the given parameter list. More... | |
template<class T > | |
void | add_parameter (T ¶meter, const std::string &entry, const std::string &documentation=std::string(), ParameterHandler &prm=ParameterAcceptor::prm) |
Add a parameter to the global parameter handler ParameterAcceptor::prm. More... | |
void | enter_my_subsection (ParameterHandler &prm) |
Make sure we enter the right subsection of the global parameter file. More... | |
void | leave_my_subsection (ParameterHandler &prm) |
This function undoes what the enter_my_subsection() function did. More... | |
template<> | |
std_cxx11::shared_ptr< Patterns::PatternBase > | to_pattern (const double &) |
double More... | |
template<> | |
std::string | to_string (const double &entry) |
template<> | |
double | to_type (const std::string ¶meter) |
template<> | |
std_cxx11::shared_ptr< Patterns::PatternBase > | to_pattern (const int &) |
int More... | |
template<> | |
std::string | to_string (const int &entry) |
template<> | |
int | to_type (const std::string ¶meter) |
template<> | |
std_cxx11::shared_ptr< Patterns::PatternBase > | to_pattern (const unsigned int &) |
unsigned int More... | |
template<> | |
std::string | to_string (const unsigned int &entry) |
template<> | |
unsigned int | to_type (const std::string ¶meter) |
template<> | |
std_cxx11::shared_ptr< Patterns::PatternBase > | to_pattern (const bool &) |
bool More... | |
template<> | |
std::string | to_string (const bool &entry) |
template<> | |
bool | to_type (const std::string ¶meter) |
Public Member Functions inherited from Subscriptor | |
Subscriptor () | |
Subscriptor (const Subscriptor &) | |
Subscriptor (Subscriptor &&) | |
virtual | ~Subscriptor () |
Subscriptor & | operator= (const Subscriptor &) |
Subscriptor & | operator= (Subscriptor &&) |
void | subscribe (const char *identifier=0) const |
void | unsubscribe (const char *identifier=0) const |
unsigned int | n_subscriptions () const |
void | list_subscribers () const |
void | serialize (Archive &ar, const unsigned int version) |
Protected Member Functions | |
void | split_id_components (const std::string &parsed_idcomponents) |
void | split_id_functions (const std::string &parsed_idfunctions, const std::string &constants) |
void | add_normal_components () |
void | set_normal_functions () |
Protected Attributes | |
std::string | name |
std::string | str_id_components |
std::string | str_id_functions |
std::string | str_component_names |
std::string | str_constants |
std::vector< std::string > | _component_names |
std::vector< std::string > | _normal_components |
std::vector< std::string > | _all_components |
std::vector< unsigned int > | ids |
std::vector< unsigned int > | normal_ids |
std::map< unsigned int, ComponentMask > | id_components |
std::map< unsigned int, shared_ptr< dealii::Functions::ParsedFunction< spacedim > > > | id_functions |
std::map< unsigned int, std::pair< ComponentMask, shared_ptr< dealii::Functions::ParsedFunction< spacedim > > > > | mapped_functions |
std::map< std::string, std::pair< std::vector< unsigned int >, unsigned int > > | mapped_normal_components |
std::vector< std::pair< unsigned int, std::string > > | normal_components |
std::map< unsigned int, std::string > | id_str_functions |
std::map< std::pair< unsigned int, unsigned int >, shared_ptr< dealii::Functions::ParsedFunction< spacedim > > > | _normal_functions |
const unsigned int | n_components |
Protected Attributes inherited from ParameterAcceptor | |
const std::string | section_name |
The subsection name for this class. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from ParameterAcceptor | |
static void | initialize (const std::string filename="", const std::string outfilename="") |
Call declare_all_parameters(), read filename (if it is present as input parameter) and parse_all_parameters() on the static member prm. More... | |
static void | clear () |
Clear class list and global parameter file. More... | |
static void | parse_all_parameters (ParameterHandler &prm=ParameterAcceptor::prm) |
Parse the given ParameterHandler. More... | |
static void | log_info () |
Print information about all stored classes. More... | |
static void | declare_all_parameters (ParameterHandler &prm=ParameterAcceptor::prm) |
Initialize the ParameterHandler with all derived classes parameters.This function enters the subsection returned by get_section_name() for each derived class, and declares all parameters that were added using add_parameter(). More... | |
template<class T > | |
static std_cxx11::shared_ptr< Patterns::PatternBase > | to_pattern (const T &) |
Given a class T, construct its default pattern to be used when declaring parameters. More... | |
template<class T > | |
static T | to_type (const std::string &) |
Given a string, fill the value of the given parameter. More... | |
template<class T > | |
static std::string | to_string (const T &) |
Given a parameter, return a string containing the given parameter. More... | |
Static Public Member Functions inherited from Subscriptor | |
static::ExceptionBase & | ExcInUse (int arg1, char *arg2, std::string &arg3) |
static::ExceptionBase & | ExcNoSubscriber (char *arg1, char *arg2) |
Static Public Attributes inherited from ParameterAcceptor | |
static ParameterHandler | prm |
Static parameter. More... | |
ParsedMappedFunctions object.
It allows you to set a mapped functions, i.e., parsed functions acting on specified id (boundary_id, material_id,etc..) and on specified components.
Dirichlet Boundary conditions, Neumann boundary conditions and forcing terms can be easily handled with this class.
A typical usage of this class is the following
Definition at line 71 of file parsed_mapped_functions.h.
ParsedMappedFunctions< spacedim >::ParsedMappedFunctions | ( | const std::string & | name = "Mapped Functions" , |
const unsigned int & | n_components = 1 , |
||
const std::string & | component_names = "" , |
||
const std::string & | default_id_components = "0=ALL" , |
||
const std::string & | default_id_functions = "" , |
||
const std::string & | default_constants = "" |
||
) |
Constructor.
It takes:
Definition at line 22 of file parsed_mapped_functions.cc.
bool ParsedMappedFunctions< spacedim >::acts_on_id | ( | unsigned int & | id | ) | const |
return true if there is a function that acts on the passed id
Definition at line 306 of file parsed_mapped_functions.cc.
|
protected |
Definition at line 38 of file parsed_mapped_functions.cc.
|
virtual |
declare_parameters is inherithed by ParameterAcceptor
Reimplemented from ParameterAcceptor.
Reimplemented in ParsedDirichletBCs< dim, spacedim >.
Definition at line 257 of file parsed_mapped_functions.cc.
ParsedMappedFunctions< spacedim >::DeclException1 | ( | ExcIdNotFound | , |
unsigned | int, | ||
<< "No entry with the id "<< arg1<< " exists." | |||
) |
An entry with this id does not exist in this object.
ParsedMappedFunctions< spacedim >::DeclException1 | ( | ExcIdNotMatch | , |
unsigned | int, | ||
<< "No component mask associated to the id "<< arg1<< " are defined." | |||
) |
No component mask are defined on this id.
ParsedMappedFunctions< spacedim >::DeclException2 | ( | ExcIdsMismatch | , |
unsigned | int, | ||
unsigned | int, | ||
<< "The number of ids specified in the field "<< "'IDs and component masks' ("<< arg1<< ") "<< "must match the number of ids "<< "set in the field 'IDs and expressions' ("<< arg2<<")." | |||
) |
Mismatch between the number of ids set in 'IDs and component masks' and 'IDs and expressions'.
ParsedMappedFunctions< spacedim >::DeclException3 | ( | ExcWrongComponent | , |
unsigned | int, | ||
unsigned | int, | ||
unsigned | int, | ||
<< "At id "<< arg1<< " | , | ||
wrong component number has been used:"<< arg2<< " is not in the range [ | 0, | ||
"<< arg3<<" | |||
) |
Wrong number of component mask is defined on this id.
ParsedMappedFunctions< spacedim >::DeclException3 | ( | ExcWrongVariable | , |
unsigned | int, | ||
std::string | , | ||
std::vector< std::string > | , | ||
<< "At id "<< arg1<< " | , | ||
wrong variabile name has been used:"<< arg2<< " does not belong to the knwon variables:"<< print(unique(arg3))<<"." | |||
) |
Wrong variable name is defined on this id.
shared_ptr< dealii::Functions::ParsedFunction< spacedim > > ParsedMappedFunctions< spacedim >::get_mapped_function | ( | const unsigned int & | id | ) | const |
return a shared_ptr to the ParsedFunction corresponding to the given id
Definition at line 229 of file parsed_mapped_functions.cc.
std::vector< unsigned int > ParsedMappedFunctions< spacedim >::get_mapped_ids | ( | ) | const |
return the list of the mapped ids
Definition at line 245 of file parsed_mapped_functions.cc.
ComponentMask ParsedMappedFunctions< spacedim >::get_mapped_mask | ( | const unsigned int & | id | ) | const |
return the ComponentMask corresponding to the given id
Definition at line 237 of file parsed_mapped_functions.cc.
shared_ptr< dealii::Functions::ParsedFunction< spacedim > > ParsedMappedFunctions< spacedim >::get_mapped_normal_function | ( | const unsigned int & | id, |
const unsigned int & | fcv | ||
) | const |
return a shared_ptr to the ParsedFunction corresponding to the given id the function has spacedim components
Definition at line 219 of file parsed_mapped_functions.cc.
std::vector< unsigned int > ParsedMappedFunctions< spacedim >::get_mapped_normal_ids | ( | ) | const |
return the list of the mapped ids for which normal components have been set
Definition at line 251 of file parsed_mapped_functions.cc.
|
virtual |
parse_parameters_call_back is inherithed by ParameterAcceptor
Reimplemented from ParameterAcceptor.
Reimplemented in ParsedDirichletBCs< dim, spacedim >.
Definition at line 55 of file parsed_mapped_functions.cc.
|
protected |
Definition at line 320 of file parsed_mapped_functions.cc.
void ParsedMappedFunctions< spacedim >::set_time | ( | const double & | t | ) |
set time equal to t for all the mapped functions
Definition at line 312 of file parsed_mapped_functions.cc.
|
protected |
Definition at line 82 of file parsed_mapped_functions.cc.
|
protected |
Definition at line 146 of file parsed_mapped_functions.cc.
|
protected |
Definition at line 195 of file parsed_mapped_functions.h.
|
protected |
Definition at line 193 of file parsed_mapped_functions.h.
|
protected |
Definition at line 194 of file parsed_mapped_functions.h.
|
protected |
Definition at line 204 of file parsed_mapped_functions.h.
|
protected |
Definition at line 198 of file parsed_mapped_functions.h.
|
protected |
Definition at line 199 of file parsed_mapped_functions.h.
|
protected |
Definition at line 203 of file parsed_mapped_functions.h.
|
protected |
Definition at line 196 of file parsed_mapped_functions.h.
|
protected |
Definition at line 200 of file parsed_mapped_functions.h.
|
protected |
Definition at line 201 of file parsed_mapped_functions.h.
|
protected |
Definition at line 206 of file parsed_mapped_functions.h.
|
protected |
Definition at line 188 of file parsed_mapped_functions.h.
|
protected |
Definition at line 202 of file parsed_mapped_functions.h.
|
protected |
Definition at line 197 of file parsed_mapped_functions.h.
|
protected |
Definition at line 191 of file parsed_mapped_functions.h.
|
protected |
Definition at line 192 of file parsed_mapped_functions.h.
|
protected |
Definition at line 189 of file parsed_mapped_functions.h.
|
protected |
Definition at line 190 of file parsed_mapped_functions.h.