PRISMS-PF Manual v3.0-pre
Loading...
Searching...
No Matches
variableAttributeLoader Class Reference

Class to manage the variable attributes that the user specifies. More...

#include <variableAttributeLoader.h>

Inheritance diagram for variableAttributeLoader:
customAttributeLoader

Public Member Functions

 variableAttributeLoader ()=default
 Constructor.
 
virtual ~variableAttributeLoader ()=default
 Destructor.
 
void init_variable_attributes ()
 Initialize the variable attributes from the two user-facing methods loadVariableAttributes() and loadPostProcessorVariableAttributes(). This must be called after the default constructor for derived classes.
 
AttributesList get_var_attributes () const
 getter function for variable attributes list (copy).
 
AttributesList get_pp_attributes () const
 getter function for postprocessing attributes list (copy).
 

Protected Member Functions

virtual void loadVariableAttributes ()
 User-facing method where the variable attributes are set.
 
virtual void loadPostProcessorVariableAttributes ()
 User-facing method where the postprocessing variable attributes are set.
 
void set_variable_name (const unsigned int &index, const std::string &name) const
 Set the name of the variable at index to name.
 
void set_variable_type (const unsigned int &index, const fieldType &var_type) const
 Set the field type of the variable at index to var_type where var_type can be SCALAR or VECTOR.
 
void set_variable_equation_type (const unsigned int &index, const PDEType &var_eq_type) const
 Set the PDE type of the variable at index to var_eq_type where var_eq_typecan be EXPLICIT_TIME_DEPENDENT, IMPLICIT_TIME_DEPENDENT, TIME_INDEPENDENT, AUXILIARY.
 
void set_dependencies_value_term_RHS (const unsigned int &index, const std::string &dependencies)
 Add dependencies for the value term of the RHS equation of the variable at index.
 
void set_dependencies_gradient_term_RHS (const unsigned int &index, const std::string &dependencies)
 Add dependencies for the gradient term of the RHS equation of the variable at index.
 
void set_dependencies_value_term_LHS (const unsigned int &index, const std::string &dependencies) const
 Add dependencies for the value term of the LHS equation of the variable at index.
 
void set_dependencies_gradient_term_LHS (const unsigned int &index, const std::string &dependencies) const
 Add dependencies for the gradient term of the LHS equation of the variable at index.
 
template<typename Iterable >
void insert_dependencies_value_term_RHS (const unsigned int &index, const Iterable &dependencies)
 Insert dependencies for the value term of the RHS equation of the variable at index.
 
template<typename Iterable >
void insert_dependencies_gradient_term_RHS (const unsigned int &index, const Iterable &dependencies)
 Insert dependencies for the gradient term of the RHS equation of the variable at index.
 
template<typename Iterable >
void insert_dependencies_value_term_LHS (const unsigned int &index, const Iterable &dependencies) const
 Insert dependencies for the value term of the LHS equation of the variable at index.
 
template<typename Iterable >
void insert_dependencies_gradient_term_LHS (const unsigned int &index, const Iterable &dependencies) const
 Insert dependencies for the gradient term of the LHS equation of the variable at index.
 
void set_need_value_nucleation (const unsigned int &index, const bool &flag) const
 Flag whether the variable at index is needed to calculate the nucleation probability.
 
void set_allowed_to_nucleate (const unsigned int &index, const bool &flag) const
 Flag whether the variable at index is can have a nucleation event.
 
void set_output_integral (const unsigned int &index, const bool &flag) const
 (Postprocess only) Flag whether the postprocessing variable at index should have its domain integral calculated and output.
 

Detailed Description

Class to manage the variable attributes that the user specifies.

Member Function Documentation

◆ insert_dependencies_gradient_term_LHS()

template<typename Iterable >
void variableAttributeLoader::insert_dependencies_gradient_term_LHS ( const unsigned int &  index,
const Iterable &  dependencies 
) const
protected

Insert dependencies for the gradient term of the LHS equation of the variable at index.

Parameters
indexIndex of variable
dependenciesContainer containing list of dependency strings for variable at index Hint: {"variable", "grad(variable)", "hess(variable)"}

◆ insert_dependencies_gradient_term_RHS()

template<typename Iterable >
void variableAttributeLoader::insert_dependencies_gradient_term_RHS ( const unsigned int &  index,
const Iterable &  dependencies 
)
protected

Insert dependencies for the gradient term of the RHS equation of the variable at index.

Parameters
indexIndex of variable
dependenciesContainer containing list of dependency strings for variable at index Hint: {"variable", "grad(variable)", "hess(variable)"}

◆ insert_dependencies_value_term_LHS()

template<typename Iterable >
void variableAttributeLoader::insert_dependencies_value_term_LHS ( const unsigned int &  index,
const Iterable &  dependencies 
) const
protected

Insert dependencies for the value term of the LHS equation of the variable at index.

Parameters
indexIndex of variable
dependenciesContainer containing list of dependency strings for variable at index Hint: {"variable", "grad(variable)", "hess(variable)"}

◆ insert_dependencies_value_term_RHS()

template<typename Iterable >
void variableAttributeLoader::insert_dependencies_value_term_RHS ( const unsigned int &  index,
const Iterable &  dependencies 
)
protected

Insert dependencies for the value term of the RHS equation of the variable at index.

Parameters
indexIndex of variable
dependenciesContainer containing list of dependency strings for variable at index Hint: {"variable", "grad(variable)", "hess(variable)"}

◆ loadPostProcessorVariableAttributes()

void variableAttributeLoader::loadPostProcessorVariableAttributes ( )
protectedvirtual

User-facing method where the postprocessing variable attributes are set.

Reimplemented in customAttributeLoader.

◆ loadVariableAttributes()

void variableAttributeLoader::loadVariableAttributes ( )
protectedvirtual

User-facing method where the variable attributes are set.

Reimplemented in customAttributeLoader.

◆ set_allowed_to_nucleate()

void variableAttributeLoader::set_allowed_to_nucleate ( const unsigned int &  index,
const bool &  flag 
) const
protected

Flag whether the variable at index is can have a nucleation event.

Parameters
indexIndex of variable
flagtrue: variable can nucleate, false: variable can not nucleate.

◆ set_dependencies_gradient_term_LHS()

void variableAttributeLoader::set_dependencies_gradient_term_LHS ( const unsigned int &  index,
const std::string &  dependencies 
) const
protected

Add dependencies for the gradient term of the LHS equation of the variable at index.

Parameters
indexIndex of variable
dependenciesString containing comma-separated list of dependencies for variable at index Hint: "variable, grad(variable), hess(variable)"

◆ set_dependencies_gradient_term_RHS()

void variableAttributeLoader::set_dependencies_gradient_term_RHS ( const unsigned int &  index,
const std::string &  dependencies 
)
protected

Add dependencies for the gradient term of the RHS equation of the variable at index.

Parameters
indexIndex of variable
dependenciesString containing comma-separated list of dependencies for variable at index Hint: "variable, grad(variable), hess(variable)"

◆ set_dependencies_value_term_LHS()

void variableAttributeLoader::set_dependencies_value_term_LHS ( const unsigned int &  index,
const std::string &  dependencies 
) const
protected

Add dependencies for the value term of the LHS equation of the variable at index.

Parameters
indexIndex of variable
dependenciesString containing comma-separated list of dependencies for variable at index Hint: "variable, grad(variable), hess(variable)"

◆ set_dependencies_value_term_RHS()

void variableAttributeLoader::set_dependencies_value_term_RHS ( const unsigned int &  index,
const std::string &  dependencies 
)
protected

Add dependencies for the value term of the RHS equation of the variable at index.

Parameters
indexIndex of variable
dependenciesString containing comma-separated list of dependencies for variable at index Hint: "variable, grad(variable), hess(variable)"

◆ set_need_value_nucleation()

void variableAttributeLoader::set_need_value_nucleation ( const unsigned int &  index,
const bool &  flag 
) const
protected

Flag whether the variable at index is needed to calculate the nucleation probability.

Parameters
indexIndex of variable
flagtrue: variable is needed, false: variable is not needed.

◆ set_output_integral()

void variableAttributeLoader::set_output_integral ( const unsigned int &  index,
const bool &  flag 
) const
protected

(Postprocess only) Flag whether the postprocessing variable at index should have its domain integral calculated and output.

Parameters
indexIndex of variable
flagtrue: calculate and output the integral of the field over the domain, false: do nothing

◆ set_variable_equation_type()

void variableAttributeLoader::set_variable_equation_type ( const unsigned int &  index,
const PDEType &  var_eq_type 
) const
protected

Set the PDE type of the variable at index to var_eq_type where var_eq_typecan be EXPLICIT_TIME_DEPENDENT, IMPLICIT_TIME_DEPENDENT, TIME_INDEPENDENT, AUXILIARY.

Parameters
indexIndex of variable
var_eq_typePDE type of variable at index.

◆ set_variable_name()

void variableAttributeLoader::set_variable_name ( const unsigned int &  index,
const std::string &  name 
) const
protected

Set the name of the variable at index to name.

Parameters
indexIndex of variable
nameName of variable at index

◆ set_variable_type()

void variableAttributeLoader::set_variable_type ( const unsigned int &  index,
const fieldType &  var_type 
) const
protected

Set the field type of the variable at index to var_type where var_type can be SCALAR or VECTOR.

Parameters
indexIndex of variable
var_typeField type of variable at index (SCALAR or VECTOR).

The documentation for this class was generated from the following files: