COOLFluiD
Release kernel
COOLFluiD is a Collaborative Simulation Environment (CSE) focused on complex MultiPhysics simulations.
|
#include <System.hpp>
Inherits Component.
Public Member Functions | |
SOLVE THE SYSTEM | |
void | solve () |
EFFICCIENT ACCESS | |
void | set_values (const BlockAccumulator &values) |
Set a list of values. More... | |
void | add_values (const BlockAccumulator &values) |
Add a list of values. More... | |
void | get_values (BlockAccumulator &values) |
Add a list of values. More... | |
void | dirichlet (const Uint iblockrow, const Uint ieq, const Real value, const bool preserve_symmetry=false) |
void | periodicity (const Uint iblockrow_to, const Uint iblockrow_from) |
void | set_diagonal (const std::vector< Real > &diag) |
Set the diagonal. More... | |
void | add_diagonal (const std::vector< Real > &diag) |
Add to the diagonal. More... | |
void | get_diagonal (std::vector< Real > &diag) |
Get the diagonal. More... | |
void | reset (Real reset_to=0.) |
Reset Matrix. More... | |
MISCELLANEOUS | |
void | print (common::LogStream &stream) |
Print to logstream. More... | |
void | print (std::ostream &stream) |
Print to wherever. More... | |
void | print (const std::string &filename) |
Print to file given by filename. More... | |
Handle< LSS::Matrix > | matrix () |
Accessor to matrix. More... | |
Handle< LSS::Vector > | rhs () |
Accessor to right hand side. More... | |
Handle< LSS::Vector > | solution () |
Accessor to solution. More... | |
Handle< LSS::SolutionStrategy > | solution_strategy () |
Accessor to the solution strategy. More... | |
const bool | is_created () |
Accessor to the state of create. More... | |
const std::string | solvertype () |
Accessor to string option describing the type of the solver. More... | |
void | read_native (const common::URI &filename) |
Read a linear system from file. More... | |
SIGNALS | |
void | signal_print (common::SignalArgs &args) |
Signal to write the system to disk as a tecplot file, for debugging purposes. More... | |
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< Component > | access_component (const URI &path) const |
Handle< Component > | access_component_checked (const URI &path) |
Handle< Component const > | access_component_checked (const URI &path) const |
Handle< Component > | handle () |
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< Component > | parent () const |
Handle< Component const > | root () const |
Handle< Component > | root () |
Handle< Component > | get_child (const std::string &name) |
Handle< Component const > | get_child (const std::string &name) const |
Handle< Component > | get_child_checked (const std::string &name) |
Handle< Component const > | get_child_checked (const std::string &name) const |
Handle< Component > | create_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... | |
Component & | add_component (const boost::shared_ptr< Component > &subcomp) |
Add the passed component as a subcomponent. More... | |
void | add_link (Component &linked_component) |
boost::shared_ptr< Component > | remove_component (const std::string &name) |
Remove a (sub)component of this component. More... | |
boost::shared_ptr< Component > | remove_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 |
PropertyList & | properties () |
const PropertyList & | properties () const |
OptionList & | options () |
const OptionList & | options () const |
void | reset_options () |
Reset all options to their default value. More... | |
void | configure_option_recursively (const std::string &optname, const boost::any &val) |
Component & | mark_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_t & | signal_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... | |
Signal & | regist_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... | |
Connection * | connection (const std::string &name) |
Connection * | manage_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) |
Private Member Functions | |
void | signature_print (common::SignalArgs &args) |
Private Attributes | |
Handle< LSS::Matrix > | m_mat |
shared_ptr to system matrix More... | |
Handle< LSS::Vector > | m_sol |
shared_ptr to solution vectoe More... | |
Handle< LSS::Vector > | m_rhs |
shared_ptr to right hand side vector More... | |
Handle< LSS::SolutionStrategy > | m_solution_strategy |
Strategy for the solution. More... | |
CREATION, DESTRUCTION AND COMPONENT SYSTEM | |
static std::string | type_name () |
name of the type More... | |
System (const std::string &name) | |
Default constructor. More... | |
void | create (cf3::common::PE::CommPattern &cp, Uint neq, std::vector< Uint > &node_connectivity, std::vector< Uint > &starting_indices, const std::vector< Uint > &periodic_links_nodes=std::vector< Uint >(), const std::vector< bool > &periodic_links_active=std::vector< bool >()) |
void | create_blocked (cf3::common::PE::CommPattern &cp, const VariablesDescriptor &vars, std::vector< Uint > &node_connectivity, std::vector< Uint > &starting_indices, const std::vector< Uint > &periodic_links_nodes=std::vector< Uint >(), const std::vector< bool > &periodic_links_active=std::vector< bool >()) |
void | swap (const boost::shared_ptr< LSS::Matrix > &matrix, const boost::shared_ptr< LSS::Vector > &solution, const boost::shared_ptr< LSS::Vector > &rhs) |
void | destroy () |
Deallocate underlying data. More... | |
Additional Inherited Members | |
Public Types inherited from Component | |
typedef ComponentIterator< Component > | iterator |
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< SignalPtr > | storage_t |
storage type for signals More... | |
Static Public Member Functions inherited from Component | |
static std::string | type_name () |
Get the class name. More... | |
Public Attributes inherited from SignalHandler | |
storage_t | m_signals |
storage of the signals More... | |
Protected Member Functions inherited from Component | |
Component & | add_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... | |
Definition at line 59 of file System.hpp.
System | ( | const std::string & | name | ) |
Default constructor.
Definition at line 50 of file System.cpp.
void add_diagonal | ( | const std::vector< Real > & | diag | ) |
Add to the diagonal.
Definition at line 294 of file System.cpp.
void add_values | ( | const BlockAccumulator & | values | ) |
Add a list of values.
Definition at line 220 of file System.cpp.
void create_blocked | ( | cf3::common::PE::CommPattern & | cp, |
const VariablesDescriptor & | vars, | ||
std::vector< Uint > & | node_connectivity, | ||
std::vector< Uint > & | starting_indices, | ||
const std::vector< Uint > & | periodic_links_nodes = std::vector<Uint>() , |
||
const std::vector< bool > & | periodic_links_active = std::vector<bool>() |
||
) |
Create a blocked system, where the unknowns for each physical variable are stored together. Note that this only changes the internal ordering, the interface is not affected.
Definition at line 114 of file System.cpp.
void destroy | ( | ) |
Deallocate underlying data.
Definition at line 183 of file System.cpp.
void dirichlet | ( | const Uint | iblockrow, |
const Uint | ieq, | ||
const Real | value, | ||
const bool | preserve_symmetry = false |
||
) |
Apply dirichlet-type boundary conditions. When preserve_symmetry is true than blockrow*numequations+eq column is is zeroed by moving it to the right hand side (however this usually results in performance penalties).
Definition at line 240 of file System.cpp.
void get_diagonal | ( | std::vector< Real > & | diag | ) |
Get the diagonal.
Definition at line 302 of file System.cpp.
void get_values | ( | LSS::BlockAccumulator & | values | ) |
Add a list of values.
Definition at line 230 of file System.cpp.
const bool is_created | ( | ) |
Accessor to the state of create.
Definition at line 388 of file System.cpp.
|
inline |
Accessor to matrix.
Definition at line 145 of file System.hpp.
Applying periodicity by adding one line to another and dirichlet-style fixing it to Note that prerequisite for this is to work that the matrix sparsity should be compatible (same nonzero pattern for the two block rows). Note that only structural symmetry can be preserved (again, if sparsity input was symmetric).
Definition at line 259 of file System.cpp.
void print | ( | common::LogStream & | stream | ) |
Print to logstream.
Definition at line 320 of file System.cpp.
void print | ( | std::ostream & | stream | ) |
Print to wherever.
Definition at line 332 of file System.cpp.
void print | ( | const std::string & | filename | ) |
Print to file given by filename.
Definition at line 344 of file System.cpp.
void read_native | ( | const common::URI & | filename | ) |
Read a linear system from file.
Definition at line 356 of file System.cpp.
void reset | ( | Real | reset_to = 0. | ) |
Reset Matrix.
Definition at line 310 of file System.cpp.
|
inline |
Accessor to right hand side.
Definition at line 148 of file System.hpp.
void set_diagonal | ( | const std::vector< Real > & | diag | ) |
Set the diagonal.
Definition at line 286 of file System.cpp.
void set_values | ( | const BlockAccumulator & | values | ) |
Set a list of values.
Definition at line 210 of file System.cpp.
void signal_print | ( | common::SignalArgs & | args | ) |
Signal to write the system to disk as a tecplot file, for debugging purposes.
Definition at line 404 of file System.cpp.
|
private |
Definition at line 413 of file System.cpp.
|
inline |
Accessor to solution.
Definition at line 151 of file System.hpp.
|
inline |
Accessor to the solution strategy.
Definition at line 154 of file System.hpp.
void solve | ( | ) |
|
inline |
Accessor to string option describing the type of the solver.
Definition at line 160 of file System.hpp.
void swap | ( | const boost::shared_ptr< LSS::Matrix > & | matrix, |
const boost::shared_ptr< LSS::Vector > & | solution, | ||
const boost::shared_ptr< LSS::Vector > & | rhs | ||
) |
Exchange to existing matrix and vectors
Definition at line 147 of file System.cpp.
|
inlinestatic |
name of the type
Definition at line 66 of file System.hpp.
|
private |
shared_ptr to system matrix
Definition at line 180 of file System.hpp.
|
private |
shared_ptr to right hand side vector
Definition at line 186 of file System.hpp.
|
private |
shared_ptr to solution vectoe
Definition at line 183 of file System.hpp.
|
private |
Strategy for the solution.
Definition at line 189 of file System.hpp.
Send comments to: COOLFluiD Web Admin |