Feel++ 0.111.0-preview.14
Finite Element Embedded Library in C++
Feel::FeelModels::ModelPhysicHeat< Dim > Class Template Reference

Heat Physic Model. More...

+ Inheritance diagram for Feel::FeelModels::ModelPhysicHeat< Dim >:
+ Collaboration diagram for Feel::FeelModels::ModelPhysicHeat< Dim >:

Classes

struct  Convection
 
struct  HeatSource
 

Public Member Functions

Convection const & convection () const
 
bool hasConvectionEnabled () const
 
std::vector< HeatSource > heatSources () const
 
 ModelPhysicHeat (ModelPhysicHeat &&)=default
 
 ModelPhysicHeat (ModelPhysicHeat const &)=default
 
 ModelPhysicHeat (ModelPhysics< Dim > const &mphysics, std::string const &modeling, std::string const &type, std::string const &name, ModelModel const &model=ModelModel{})
 
void setParameterValues (std::map< std::string, double > const &mp) override
 set parameter values in expression More...
 
void setupConvection (nl::json &jarg)
 
tabulate_informations_ptr_t tabulateInformations (nl::json const &jsonInfo, TabulateInformationProperties const &tabInfoProp) const override
 
template<typename MaterialsPropertiesType , typename MeshType >
void updateForUse (std::shared_ptr< MaterialsPropertiesType > const &matProp, std::shared_ptr< MeshType > mesh)
 
void updateInformationObject (nl::json &p) const override
 
- Public Member Functions inherited from Feel::FeelModels::ModelPhysic< Dim >
void addMaterialNames (std::set< std::string > const &matNames)
 add material names
 
void addMaterialPropertyDescription (std::string const &propName, std::string const &symbol, std::initializer_list< material_property_shape_dim_type > const &shapes)
 
std::string addParameter (std::string const &pname, double val)
 add a constant (double) parameter called \pname and return the symbol associated
 
std::string addParameter (std::string const &pname, nl::json const &jarg)
 
std::string addParameter (std::string const &pname, nl::json const &jarg, WorldComm const &worldComm, std::string const &directoryLibExpr)
 add a parameter called \pname describe by a json entry \jarg and return the symbol associated
 
std::string addParameter (std::string const &pname, std::string const &expr)
 
std::string addParameter (std::string const &pname, std::string const &expr, WorldComm const &worldComm, std::string const &directoryLibExpr)
 add a parameter called \pname describe by an expression \expr and return the symbol associated
 
void addSubphysic (std::shared_ptr< ModelPhysic< nDim > > const &sp, bool force=false)
 add a subphysic model
 
bool hasParameter (std::string const &pname) const
 return true if parameter \pname is present, false otherwise
 
template<int M, int N>
bool hasParameterExpr (std::string const &pname) const
 return true if parameter \pname of shape MxN is present, false otherwise
 
bool hasSubphysic (physic_id_type const &pId) const
 
physic_id_type id () const
 
std::set< std::string > const & materialNames () const
 return material names used by this physic
 
std::map< std::string, material_property_description_type > const & materialPropertyDescription () const
 return the material properties description (.i.e. coefficients of pdes)
 
std::string const & modeling () const
 
 ModelPhysic (ModelPhysic &&)=default
 
 ModelPhysic (ModelPhysic const &)=default
 
 ModelPhysic (std::string const &modeling, std::string const &type, std::string const &name, ModelBase const &mparent, ModelModel const &model=ModelModel{})
 
std::string const & name () const
 
template<int M, int N, typename SymbolsExprType = symbols_expression_empty_t>
auto parameterExpr (std::string const &pname, SymbolsExprType const &se=symbols_expression_empty_t{}) const
 return the expression of the parameter \pname
 
void physicsShared (std::set< std::string > &res) const
 
void setMaterialNames (std::set< std::string > const &matNames)
 set material names
 
virtual void setParameterValues (std::map< std::string, double > const &mp)
 set parameter values in expression More...
 
std::shared_ptr< ModelPhysic< nDim > > subphysicFromType (std::string const &type) const
 return a subphysic from the type of physic (the first one found, and return null shared ptr if not found)
 
std::map< physic_id_type, std::shared_ptr< ModelPhysic< nDim > > > const & subphysics () const
 return the map of subphysics
 
std::vector< std::shared_ptr< ModelPhysic< nDim > > > subphysicsFromType (std::string const &type) const
 return all subphysic from the type of physic
 
std::string symbolFromParameter (std::string const &pname) const
 return the full symbol from parameter name
 
auto symbolsExpr () const
 
virtual tabulate_informations_ptr_t tabulateInformations (nl::json const &jsonInfo, TabulateInformationProperties const &tabInfoProp) const
 
std::map< std::string, double > toParameterValues () const
 
std::string const & type () const
 
void updateInformationObject (nl::json &p) const override
 
void updateParameterValues (std::map< std::string, double > &mp)
 
- Public Member Functions inherited from Feel::JournalWatcher
 JournalWatcher (std::string const &category="", std::string const &name="", bool connect=JournalManager::journalAutoMode())
 Constructors. More...
 
 JournalWatcher (std::string const &category, bool useDefaultName, bool connect=JournalManager::journalAutoMode())
 
 JournalWatcher (function_update_information_type const &func, std::string const &category="", std::string const &name="", bool useDefaultNameIfEmpty=true, bool connect=JournalManager::journalAutoMode())
 
 JournalWatcher (JournalWatcher const &jw)
 Copy constructor.
 
virtual ~JournalWatcher ()
 Default destructor. The (inherited) object is always disconnected from the journal during the destruction.
 
bool journalIsConnected () const
 GettersCheck if the object is connected to the journal. More...
 
std::string const & journalWatcherInstanceName () const
 Return the full instance name for this watched object. The name is composed with the base name and a suffix index corresponding to the nth call. More...
 
nl::json::json_pointer journalSection () const
 Return the section into the journal as json_pointer.
 
nl::json const & informationObject () const
 Return the information into property tree.
 
void journalConnect ()
 Setters. More...
 
void journalDisconnect ()
 Disconnect the derived object from the simulation info manager. The disconnection is safe.
 
void setInformationObject (nl::json const &informationObject)
 set information object
 
void putInformationObject (nl::json const &informationObject)
 put information object
 
void addInformationObject (nl::json const &informationObject)
 add information object
 
void journalFinalize ()
 finalize journal publication
 

Additional Inherited Members

- Public Types inherited from Feel::FeelModels::ModelPhysic< Dim >
using material_property_description_type = MaterialPropertyDescription
 
using material_property_shape_dim_type = typename material_property_description_type::shape_dim_type
 
using physic_id_type = std::pair< std::string, std::string >
 
- Public Types inherited from Feel::JournalWatcher
using function_update_information_type = std::function< void(nl::json &)>
 
using notify_type = nl::json
 
- Static Public Member Functions inherited from Feel::FeelModels::ModelPhysic< Dim >
static std::shared_ptr< ModelPhysic< Dim > > New (ModelPhysics< Dim > const &mphysics, std::string const &modeling, std::string const &type, std::string const &name, ModelModel const &model=ModelModel{})
 
- Static Public Attributes inherited from Feel::FeelModels::ModelPhysic< Dim >
static const uint16_type nDim = Dim
 
- Protected Member Functions inherited from Feel::FeelModels::ModelPhysic< Dim >
ModelExpression const & parameterModelExpr (std::string const &pname) const
 
void updateTabulateInformationsBasic (nl::json const &jsonInfo, tabulate_informations_sections_ptr_t &tabInfo, TabulateInformationProperties const &tabInfoProp) const
 
void updateTabulateInformationsParameters (nl::json const &jsonInfo, tabulate_informations_sections_ptr_t &tabInfo, TabulateInformationProperties const &tabInfoProp) const
 
void updateTabulateInformationsSubphysics (nl::json const &jsonInfo, tabulate_informations_sections_ptr_t &tabInfo, TabulateInformationProperties const &tabInfoProp) const
 
- Protected Member Functions inherited from Feel::JournalWatcher
void applyUpdateInformationObject ()
 Protected Methods.
 

Detailed Description

template<uint16_type Dim>
class Feel::FeelModels::ModelPhysicHeat< Dim >

Heat Physic Model.

Template Parameters
Dimreal dimension

Member Function Documentation

◆ setParameterValues()

template<uint16_type Dim>
void Feel::FeelModels::ModelPhysicHeat< Dim >::setParameterValues ( std::map< std::string, double > const &  mp)
overridevirtual

set parameter values in expression

Reimplemented from Feel::FeelModels::ModelPhysic< Dim >.

◆ tabulateInformations()

template<uint16_type Dim>
tabulate_informations_ptr_t Feel::FeelModels::ModelPhysicHeat< Dim >::tabulateInformations ( nl::json const &  jsonInfo,
TabulateInformationProperties const &  tabInfoProp 
) const
overridevirtual

◆ updateInformationObject()

template<uint16_type Dim>
void Feel::FeelModels::ModelPhysicHeat< Dim >::updateInformationObject ( nl::json &  p) const
overridevirtual