COOLFluiD  Release kernel
COOLFluiD is a Collaborative Simulation Environment (CSE) focused on complex MultiPhysics simulations.
Public Member Functions | Static Public Member Functions | Protected Attributes | Private Member Functions | List of all members
PDE Class Reference

PDE component. More...

#include <PDE.hpp>

Inherits Component.

Public Member Functions

 PDE (const std::string &name)
 Contructor. More...
 
virtual ~PDE ()
 Virtual destructor. More...
 
Uint nb_eqs () const
 Number of equations describing this PDE. More...
 
Uint nb_dim () const
 Number of dimensions describing this PDE. More...
 
virtual std::string solution_variables () const
 
const Handle< mesh::Dictionary > & fields ()
 Handle to the fields. More...
 
const Handle< mesh::Field > & solution ()
 Handle to the configured solution. More...
 
const Handle< mesh::Field > & rhs ()
 Handle to the configured rhs. More...
 
const Handle< mesh::Field > & wave_speed ()
 Handle to the configured wave_speed. More...
 
const Handle< mesh::Dictionary > & bdry_fields ()
 Handle to the boundary fields. More...
 
const Handle< mesh::Field > & bdry_solution ()
 Handle to the configured solution. More...
 
const Handle< mesh::Field > & bdry_solution_gradient ()
 Handle to the configured solution. More...
 
const Handle< solver::Timetime ()
 Handle to the time component. More...
 
const Handle< solver::ComputeRHS > & rhs_computer ()
 Handle to the ODE right-hand-side computer. More...
 
const Handle< common::ActionDirector > & bc ()
 Action that executes all contained boundary conditions. More...
 
Handle< solver::Timeadd_time ()
 Create a time component, making this unsteady in time. More...
 
Handle< solver::TermComputeradd_term (const std::string &term_name, const std::string &term_computer)
 Create a term, configure it, and create a term-computer. More...
 
Handle< solver::BCadd_bc (const std::string &bc_name, const std::string &bc_type, const std::vector< Handle< Component > > &regions)
 Create a boundary condition, configure it, and create a bc-computer. More...
 
virtual void configure (const Handle< common::Component > &component)
 
virtual void create_fields ()
 create necessary fields when fields is configured More...
 
virtual void create_bdry_fields ()
 create necessary bdry_fields when bdry_fields is configured More...
 
void signal_add_term (common::SignalArgs &args)
 
void signature_add_term (common::SignalArgs &args)
 
void signal_add_bc (common::SignalArgs &args)
 
void signature_add_bc (common::SignalArgs &args)
 
- Public Member Functions inherited from Component
 Component (const std::string &name)
 
virtual ~Component ()
 Virtual destructor. More...
 
const std::string & name () const
 Access the name of the component. More...
 
void rename (const std::string &name)
 Rename the component. More...
 
URI uri () const
 Construct the full path. More...
 
void complete_path (URI &path) const
 
Handle< Componentaccess_component (const URI &path) const
 
Handle< Componentaccess_component_checked (const URI &path)
 
Handle< Component const > access_component_checked (const URI &path) const
 
Handle< Componenthandle ()
 Get a handle to the component. More...
 
Handle< Component const > handle () const
 
template<typename ComponentT >
Handle< ComponentT > handle ()
 
template<typename ComponentT >
Handle< ComponentT const > handle () const
 
Handle< Componentparent () const
 
Handle< Component const > root () const
 
Handle< Componentroot ()
 
Handle< Componentget_child (const std::string &name)
 
Handle< Component const > get_child (const std::string &name) const
 
Handle< Componentget_child_checked (const std::string &name)
 
Handle< Component const > get_child_checked (const std::string &name) const
 
Handle< Componentcreate_component (const std::string &name, const std::string &builder)
 Build a (sub)component of this component using the extended type_name of the component. More...
 
template<typename T >
Handle< T > create_component (const std::string &name)
 Create a (sub)component of this component automatically cast to the specified type. More...
 
template<typename T >
Handle< T > create_static_component (const std::string &name)
 Create a static "always there" subcomponent. More...
 
Componentadd_component (const boost::shared_ptr< Component > &subcomp)
 Add the passed component as a subcomponent. More...
 
void add_link (Component &linked_component)
 
boost::shared_ptr< Componentremove_component (const std::string &name)
 Remove a (sub)component of this component. More...
 
boost::shared_ptr< Componentremove_component (Component &subcomp)
 Remove a (sub)component of this component. More...
 
void clear ()
 Remove all sub-components of this component, except for the static ones. More...
 
void move_to (Component &to_parent)
 
std::string tree (bool basic_mode=false, Uint depth=0, Uint recursion_level=0) const
 
std::string info (const std::string &what=std::string("cospt")) const
 
size_t count_children () const
 
virtual std::string derived_type_name () const =0
 
PropertyListproperties ()
 
const PropertyListproperties () const
 
OptionListoptions ()
 
const OptionListoptions () const
 
void reset_options ()
 Reset all options to their default value. More...
 
void configure_option_recursively (const std::string &optname, const boost::any &val)
 
Componentmark_basic ()
 marks this component as basic. More...
 
template<typename ComponentT >
void put_components (std::vector< boost::shared_ptr< ComponentT > > &vec, const bool recurse)
 
template<typename ComponentT >
void put_components (std::vector< boost::shared_ptr< ComponentT const > > &vec, const bool recurse) const
 
template<>
void put_components (std::vector< boost::shared_ptr< Component > > &vec, const bool recurse)
 
template<>
void put_components (std::vector< boost::shared_ptr< Component const > > &vec, const bool recurse) const
 
Component::iterator begin ()
 The begin iterator for a range containing Components. More...
 
Component::iterator end ()
 The end iterator for a range containing Components. More...
 
Component::const_iterator begin () const
 The begin iterator for a range containing Components (const version) More...
 
Component::const_iterator end () const
 The end iterator for a range containing Components (const version) More...
 
Component::iterator recursive_begin ()
 The begin iterator for a recursive range containing Components. More...
 
Component::iterator recursive_end ()
 The end iterator for a recursive range containing Components. More...
 
Component::const_iterator recursive_begin () const
 The begin iterator for a recursive range containing Components (const version) More...
 
Component::const_iterator recursive_end () const
 The end iterator for a recursive range containing Components (const version) More...
 
template<typename T >
Handle< T > create_component (const std::string &name, const std::string &builder)
 Create a component using the reduced builder name. More...
 
void signal_configure (SignalArgs &args)
 configures all the options on this class More...
 
void signal_create_component (SignalArgs &args)
 creates a component from this component More...
 
void signal_delete_component (SignalArgs &args)
 delete this component More...
 
void signal_move_component (SignalArgs &args)
 moves a component from this component to another More...
 
void signal_list_tree (SignalArgs &args) const
 lists the sub components and puts them on the xml_tree More...
 
void signal_list_tree_recursive (SignalArgs &args) const
 prints tree recursively More...
 
void signal_list_properties (SignalArgs &args) const
 lists the properties of this component More...
 
void signal_list_options (SignalArgs &args) const
 lists the properties of this component More...
 
void signal_list_options_recursive (SignalArgs &args) const
 prints all options recursive More...
 
void signal_list_signals (SignalArgs &args) const
 lists the signals of this component More...
 
void signal_list_signals_recursive (SignalArgs &args) const
 prints all signals recursive More...
 
void signal_print_info (SignalArgs &args) const
 gets info on this component More...
 
void signal_print_tree (SignalArgs &args) const
 signal to print the tree More...
 
void signature_print_tree (SignalArgs &args) const
 signature to signal_print_tree More...
 
void signal_rename_component (SignalArgs &args)
 renames this component More...
 
void signal_save_tree (SignalArgs &args)
 dumps the tree to a file More...
 
void signal_list_content (SignalArgs &args)
 gives information about this component such as options, signals, ... More...
 
void signal_signature (SignalArgs &args)
 Gives a signal signature, if any. More...
 
void signature_create_component (SignalArgs &args)
 
void signature_rename_component (SignalArgs &args)
 
void signature_move_component (SignalArgs &args)
 
void signal_store_timings (SignalArgs &args)
 Signal to store the timings (if enabled) into properties, i.e. for readout from python or the GUI. More...
 
void signal_clear (SignalArgs &args)
 Signal to remove all sub-components. More...
 
void signal_reset_options (SignalArgs &args)
 Signal to set all options to their default value. More...
 
void signal_add_tag (SignalArgs &args)
 Signal to add a tag. More...
 
void signature_add_tag (SignalArgs &args)
 
- Public Member Functions inherited from SignalHandler
 ~SignalHandler ()
 
const storage_tsignal_list () const
 
SignalPtr signal (const SignalID &sname)
 
SignalCPtr signal (const SignalID &sname) const
 
SignalRet call_signal (const SignalID &sname, SignalArgs &sinput)
 Calls the signal by providing its name and input. More...
 
SignalRet call_signal (const SignalID &sname, std::vector< std::string > &sinput)
 Calls the signal by providing its name and input. More...
 
bool signal_exists (const SignalID &sname) const
 Checks if a signal exists or not. More...
 
Signalregist_signal (const SignalID &sname)
 Regist signal. More...
 
void unregist_signal (const SignalID &sname)
 Unregist signal. More...
 
- Public Member Functions inherited from ConnectionManager
 ~ConnectionManager ()
 destructor closes all connections More...
 
Connectionconnection (const std::string &name)
 
Connectionmanage_connection (const std::string &name)
 manages a connection (creates if necessary) More...
 
- Public Member Functions inherited from TaggedObject
 TaggedObject ()
 Constructor. More...
 
bool has_tag (const std::string &tag) const
 
void add_tag (const std::string &tag)
 
std::vector< std::string > get_tags () const
 
void remove_tag (const std::string &tag)
 

Static Public Member Functions

static std::string type_name ()
 Get the class name. More...
 
- Static Public Member Functions inherited from Component
static std::string type_name ()
 Get the class name. More...
 

Protected Attributes

Uint m_nb_dim
 
Uint m_nb_eqs
 
Handle< solver::ComputeRHSm_rhs_computer
 
Handle< common::ActionDirectorm_bc
 
Handle< solver::Timem_time
 
Handle< mesh::Dictionarym_fields
 
Handle< mesh::Fieldm_solution
 
Handle< mesh::Fieldm_rhs
 
Handle< mesh::Fieldm_wave_speed
 
Handle< mesh::Dictionarym_bdry_fields
 
Handle< mesh::Fieldm_bdry_solution
 
Handle< mesh::Fieldm_bdry_solution_gradient
 

Private Member Functions

void create_fields_trigger ()
 
void create_bdry_fields_trigger ()
 

Additional Inherited Members

- Public Types inherited from Component
typedef ComponentIterator< Componentiterator
 type of the iterator to Component More...
 
typedef ComponentIterator< Component const > const_iterator
 type of the iterator to constant Component More...
 
- Public Types inherited from SignalHandler
typedef std::vector< SignalPtrstorage_t
 storage type for signals More...
 
- Public Attributes inherited from SignalHandler
storage_t m_signals
 storage of the signals More...
 
- Protected Member Functions inherited from Component
Componentadd_static_component (const boost::shared_ptr< Component > &subcomp)
 Add a static (sub)component of this component. More...
 
void raise_tree_updated_event ()
 raise event that the path has changed More...
 

Detailed Description

PDE component.

Author
Willem Deconinck This component is a base component for implementing different PDE. A PDE component works with one fieldsionary, and knows how to compute the right-hand-side of the equations it represents. PDE is made of terms, term-computers, and configuration options

Definition at line 53 of file PDE.hpp.

Constructor & Destructor Documentation

PDE ( const std::string &  name)

Contructor.

Parameters
nameof the component

Definition at line 36 of file PDE.cpp.

~PDE ( )
virtual

Virtual destructor.

Definition at line 84 of file PDE.cpp.

Member Function Documentation

Handle< solver::BC > add_bc ( const std::string &  bc_name,
const std::string &  bc_type,
const std::vector< Handle< Component > > &  regions 
)

Create a boundary condition, configure it, and create a bc-computer.

Definition at line 245 of file PDE.cpp.

Handle< solver::TermComputer > add_term ( const std::string &  term_name,
const std::string &  term_computer 
)

Create a term, configure it, and create a term-computer.

Definition at line 234 of file PDE.cpp.

Handle< solver::Time > add_time ( )

Create a time component, making this unsteady in time.

Definition at line 224 of file PDE.cpp.

const Handle<common::ActionDirector>& bc ( )
inline

Action that executes all contained boundary conditions.

Definition at line 105 of file PDE.hpp.

const Handle<mesh::Dictionary>& bdry_fields ( )
inline

Handle to the boundary fields.

Definition at line 88 of file PDE.hpp.

const Handle<mesh::Field>& bdry_solution ( )
inline

Handle to the configured solution.

Definition at line 91 of file PDE.hpp.

const Handle<mesh::Field>& bdry_solution_gradient ( )
inline

Handle to the configured solution.

Definition at line 94 of file PDE.hpp.

void configure ( const Handle< common::Component > &  component)
virtual

Definition at line 201 of file PDE.cpp.

void create_bdry_fields ( )
virtual

create necessary bdry_fields when bdry_fields is configured

Definition at line 161 of file PDE.cpp.

void create_bdry_fields_trigger ( )
private

Definition at line 102 of file PDE.cpp.

void create_fields ( )
virtual

create necessary fields when fields is configured

Definition at line 107 of file PDE.cpp.

void create_fields_trigger ( )
private

Definition at line 97 of file PDE.cpp.

const Handle<mesh::Dictionary>& fields ( )
inline

Handle to the fields.

Definition at line 76 of file PDE.hpp.

Uint nb_dim ( ) const
inline

Number of dimensions describing this PDE.

Definition at line 71 of file PDE.hpp.

Uint nb_eqs ( ) const
inline

Number of equations describing this PDE.

Definition at line 68 of file PDE.hpp.

const Handle<mesh::Field>& rhs ( )
inline

Handle to the configured rhs.

Definition at line 82 of file PDE.hpp.

const Handle<solver::ComputeRHS>& rhs_computer ( )
inline

Handle to the ODE right-hand-side computer.

dQ/dt = R( Q )

Definition at line 102 of file PDE.hpp.

void signal_add_bc ( common::SignalArgs args)

Definition at line 281 of file PDE.cpp.

void signal_add_term ( common::SignalArgs args)

Definition at line 259 of file PDE.cpp.

void signature_add_bc ( common::SignalArgs args)

Definition at line 295 of file PDE.cpp.

void signature_add_term ( common::SignalArgs args)

Definition at line 272 of file PDE.cpp.

const Handle<mesh::Field>& solution ( )
inline

Handle to the configured solution.

Definition at line 79 of file PDE.hpp.

std::string solution_variables ( ) const
virtual

Definition at line 90 of file PDE.cpp.

const Handle<solver::Time> time ( )
inline

Handle to the time component.

Definition at line 97 of file PDE.hpp.

static std::string type_name ( )
inlinestatic

Get the class name.

Definition at line 65 of file PDE.hpp.

const Handle<mesh::Field>& wave_speed ( )
inline

Handle to the configured wave_speed.

Definition at line 85 of file PDE.hpp.

Member Data Documentation

Handle<common::ActionDirector> m_bc
protected

Definition at line 145 of file PDE.hpp.

Handle<mesh::Dictionary> m_bdry_fields
protected

Definition at line 153 of file PDE.hpp.

Handle<mesh::Field> m_bdry_solution
protected

Definition at line 154 of file PDE.hpp.

Handle<mesh::Field> m_bdry_solution_gradient
protected

Definition at line 155 of file PDE.hpp.

Handle<mesh::Dictionary> m_fields
protected

Definition at line 148 of file PDE.hpp.

Uint m_nb_dim
protected

Definition at line 142 of file PDE.hpp.

Uint m_nb_eqs
protected

Definition at line 143 of file PDE.hpp.

Handle<mesh::Field> m_rhs
protected

Definition at line 150 of file PDE.hpp.

Handle<solver::ComputeRHS> m_rhs_computer
protected

Definition at line 144 of file PDE.hpp.

Handle<mesh::Field> m_solution
protected

Definition at line 149 of file PDE.hpp.

Handle<solver::Time> m_time
protected

Definition at line 146 of file PDE.hpp.

Handle<mesh::Field> m_wave_speed
protected

Definition at line 151 of file PDE.hpp.


The documentation for this class was generated from the following files:
Send comments to:
COOLFluiD Web Admin