Base class to host all common parameters and attributes of Physics actions to solve the diffusion equation for multiple species. More...
#include <MultiSpeciesDiffusionPhysicsBase.h>
Public Types | |
typedef DataFileName | DataFileParameterType |
Public Member Functions | |
MultiSpeciesDiffusionPhysicsBase (const InputParameters ¶meters) | |
void | addComponent (const ActionComponent &component) override |
virtual InputParameters | getAdditionalRMParams () const |
virtual void | act () override final |
virtual void | actOnAdditionalTasks () |
void | addBlocks (const std::vector< SubdomainName > &blocks) |
void | addBlocksById (const std::vector< SubdomainID > &block_ids) |
const std::vector< SubdomainName > & | blocks () const |
bool | checkBlockRestrictionIdentical (const std::string &object_name, const std::vector< SubdomainName > &blocks, const bool error_if_not_identical=true) const |
const T * | getCoupledPhysics (const PhysicsName &phys_name, const bool allow_fail=false) const |
const std::vector< T *> | getCoupledPhysics (const bool allow_fail=false) const |
unsigned int | dimension () const |
const ActionComponent & | getActionComponent (const ComponentName &comp_name) const |
void | checkComponentType (const ActionComponent &component) const |
const std::vector< VariableName > & | solverVariableNames () const |
const std::vector< VariableName > & | auxVariableNames () const |
void | timedAct () |
MooseObjectName | uniqueActionName () const |
const std::string & | specificTaskName () const |
const std::set< std::string > & | getAllTasks () const |
void | appendTask (const std::string &task) |
MooseApp & | getMooseApp () const |
const std::string & | type () const |
virtual const std::string & | name () const |
std::string | typeAndName () const |
std::string | errorPrefix (const std::string &error_type) const |
void | callMooseError (std::string msg, const bool with_prefix) const |
MooseObjectParameterName | uniqueParameterName (const std::string ¶meter_name) const |
const InputParameters & | parameters () const |
MooseObjectName | uniqueName () const |
const T & | getParam (const std::string &name) const |
std::vector< std::pair< T1, T2 > > | getParam (const std::string ¶m1, const std::string ¶m2) const |
const T * | queryParam (const std::string &name) const |
const T & | getRenamedParam (const std::string &old_name, const std::string &new_name) const |
T | getCheckedPointerParam (const std::string &name, const std::string &error_string="") const |
bool | isParamValid (const std::string &name) const |
bool | isParamSetByUser (const std::string &nm) const |
void | paramError (const std::string ¶m, Args... args) const |
void | paramWarning (const std::string ¶m, Args... args) const |
void | paramInfo (const std::string ¶m, Args... args) const |
void | connectControllableParams (const std::string ¶meter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const |
void | mooseError (Args &&... args) const |
void | mooseErrorNonPrefixed (Args &&... args) const |
void | mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const |
void | mooseWarning (Args &&... args) const |
void | mooseWarningNonPrefixed (Args &&... args) const |
void | mooseDeprecated (Args &&... args) const |
void | mooseInfo (Args &&... args) const |
std::string | getDataFileName (const std::string ¶m) const |
std::string | getDataFileNameByName (const std::string &relative_path) const |
std::string | getDataFilePath (const std::string &relative_path) const |
PerfGraph & | perfGraph () |
void | assertParamDefined (const std::string &libmesh_dbg_var(param)) const |
const Parallel::Communicator & | comm () const |
processor_id_type | n_processors () const |
processor_id_type | processor_id () const |
Static Public Member Functions | |
static InputParameters | validParams () |
Public Attributes | |
const ConsoleStream | _console |
Static Public Attributes | |
static constexpr auto | SYSTEM |
static constexpr auto | NAME |
Protected Member Functions | |
void | assertParamDefined (const std::string ¶m) const |
bool | isTransient () const |
Factory & | getFactory () |
Factory & | getFactory () const |
virtual FEProblemBase & | getProblem () |
virtual const FEProblemBase & | getProblem () const |
void | prepareCopyVariablesFromMesh () const |
void | copyVariablesFromMesh (const std::vector< VariableName > &variables_to_copy, bool are_nonlinear=true) |
std::string | prefix () const |
void | saveSolverVariableName (const VariableName &var_name) |
void | saveAuxVariableName (const VariableName &var_name) |
bool | variableExists (const VariableName &var_name, bool error_if_aux) const |
bool | solverVariableExists (const VariableName &var_name) const |
const SolverSystemName & | getSolverSystem (unsigned int variable_index) const |
const SolverSystemName & | getSolverSystem (const VariableName &variable_name) const |
void | addRequiredPhysicsTask (const std::string &task) |
void | assignBlocks (InputParameters ¶ms, const std::vector< SubdomainName > &blocks) const |
bool | allMeshBlocks (const std::vector< SubdomainName > &blocks) const |
bool | allMeshBlocks (const std::set< SubdomainName > &blocks) const |
std::set< SubdomainID > | getSubdomainIDs (const std::set< SubdomainName > &blocks) const |
std::vector< std::string > | getSubdomainNamesAndIDs (const std::set< SubdomainID > &blocks) const |
void | addPetscPairsToPetscOptions (const std::vector< std::pair< MooseEnumItem, std::string >> &petsc_pair_options) |
bool | isVariableFV (const VariableName &var_name) const |
bool | isVariableScalar (const VariableName &var_name) const |
bool | shouldCreateVariable (const VariableName &var_name, const std::vector< SubdomainName > &blocks, const bool error_if_aux) |
bool | shouldCreateIC (const VariableName &var_name, const std::vector< SubdomainName > &blocks, const bool ic_is_default_ic, const bool error_if_already_defined) const |
bool | shouldCreateTimeDerivative (const VariableName &var_name, const std::vector< SubdomainName > &blocks, const bool error_if_already_defined) const |
void | reportPotentiallyMissedParameters (const std::vector< std::string > ¶m_names, const std::string &object_type) const |
bool | addRelationshipManagers (Moose::RelationshipManagerType when_type, const InputParameters &moose_object_pars) |
void | associateWithParameter (const std::string ¶m_name, InputParameters ¶ms) const |
void | associateWithParameter (const InputParameters &from_params, const std::string ¶m_name, InputParameters ¶ms) const |
const T & | getMeshProperty (const std::string &data_name, const std::string &prefix) |
const T & | getMeshProperty (const std::string &data_name) |
bool | hasMeshProperty (const std::string &data_name, const std::string &prefix) const |
bool | hasMeshProperty (const std::string &data_name, const std::string &prefix) const |
bool | hasMeshProperty (const std::string &data_name) const |
bool | hasMeshProperty (const std::string &data_name) const |
std::string | meshPropertyName (const std::string &data_name) const |
PerfID | registerTimedSection (const std::string §ion_name, const unsigned int level) const |
PerfID | registerTimedSection (const std::string §ion_name, const unsigned int level, const std::string &live_message, const bool print_dots=true) const |
std::string | timedSectionName (const std::string §ion_name) const |
void | checkParamsBothSetOrNotSet (const std::string ¶m1, const std::string ¶m2) const |
void | checkSecondParamSetOnlyIfFirstOneTrue (const std::string ¶m1, const std::string ¶m2) const |
void | checkSecondParamSetOnlyIfFirstOneSet (const std::string ¶m1, const std::string ¶m2) const |
void | checkSecondParamNotSetIfFirstOneSet (const std::string ¶m1, const std::string ¶m2) const |
void | checkVectorParamsSameLength (const std::string ¶m1, const std::string ¶m2) const |
void | checkVectorParamAndMultiMooseEnumLength (const std::string ¶m1, const std::string ¶m2) const |
void | checkTwoDVectorParamsSameLength (const std::string ¶m1, const std::string ¶m2) const |
void | checkVectorParamsNoOverlap (const std::vector< std::string > ¶m_vecs) const |
void | checkTwoDVectorParamsNoRespectiveOverlap (const std::vector< std::string > ¶m_vecs) const |
void | checkTwoDVectorParamInnerSameLengthAsOneDVector (const std::string ¶m1, const std::string ¶m2) const |
void | checkTwoDVectorParamMultiMooseEnumSameLength (const std::string ¶m1, const std::string ¶m2, const bool error_for_param2) const |
void | checkVectorParamNotEmpty (const std::string ¶m1) const |
void | checkVectorParamsSameLengthIfSet (const std::string ¶m1, const std::string ¶m2, const bool ignore_empty_default_param2=false) const |
void | checkVectorParamLengthSameAsCombinedOthers (const std::string ¶m1, const std::string ¶m2, const std::string ¶m3) const |
void | checkBlockwiseConsistency (const std::string &block_param_name, const std::vector< std::string > ¶meter_names) const |
bool | parameterConsistent (const InputParameters &other_param, const std::string ¶m_name) const |
void | warnInconsistent (const InputParameters ¶meters, const std::string ¶m_name) const |
void | errorDependentParameter (const std::string ¶m1, const std::string &value_not_set, const std::vector< std::string > &dependent_params) const |
void | errorInconsistentDependentParameter (const std::string ¶m1, const std::string &value_set, const std::vector< std::string > &dependent_params) const |
Static Protected Member Functions | |
static std::string | meshPropertyName (const std::string &data_name, const std::string &prefix) |
Protected Attributes | |
const std::vector< VariableName > & | _species_names |
Name of the diffused variables. More... | |
const unsigned int | _num_species |
Number of species. More... | |
const std::vector< std::vector< BoundaryName > > & | _neumann_boundaries |
Boundaries on which a Neumann boundary condition is applied. Outer indexing is variables. More... | |
const std::vector< std::vector< BoundaryName > > & | _dirichlet_boundaries |
Boundaries on which a Dirichlet boundary condition is applied. Outer indexing is variables. More... | |
const bool | _use_ad |
Whether to use automatic differentiation or not. More... | |
std::vector< SolverSystemName > | _system_names |
std::vector< unsigned int > | _system_numbers |
const bool | _verbose |
const MooseEnum & | _preconditioning |
std::vector< SubdomainName > | _blocks |
std::string | _registered_identifier |
std::string | _specific_task_name |
std::set< std::string > | _all_tasks |
ActionWarehouse & | _awh |
const std::string & | _current_task |
std::shared_ptr< MooseMesh > & | _mesh |
std::shared_ptr< MooseMesh > & | _displaced_mesh |
std::shared_ptr< FEProblemBase > & | _problem |
PerfID | _act_timer |
MooseApp & | _app |
const std::string | _type |
const std::string | _name |
const InputParameters & | _pars |
Factory & | _factory |
ActionFactory & | _action_factory |
MooseApp & | _pg_moose_app |
const std::string | _prefix |
const Parallel::Communicator & | _communicator |
Private Member Functions | |
virtual void | addPreconditioning () override |
Add default preconditioning options. More... | |
virtual void | addPostprocessors () override |
Add postprocessing of the fluxes. More... | |
virtual void | addInitialConditions () override |
Add initial conditions for each diffused variable. More... | |
Base class to host all common parameters and attributes of Physics actions to solve the diffusion equation for multiple species.
Definition at line 26 of file MultiSpeciesDiffusionPhysicsBase.h.
MultiSpeciesDiffusionPhysicsBase::MultiSpeciesDiffusionPhysicsBase | ( | const InputParameters & | parameters | ) |
Definition at line 76 of file MultiSpeciesDiffusionPhysicsBase.C.
|
overridevirtual |
Reimplemented from PhysicsBase.
Definition at line 158 of file MultiSpeciesDiffusionPhysicsBase.C.
|
overrideprivatevirtual |
Add initial conditions for each diffused variable.
Reimplemented from PhysicsBase.
Definition at line 165 of file MultiSpeciesDiffusionPhysicsBase.C.
|
overrideprivatevirtual |
Add postprocessing of the fluxes.
Reimplemented from PhysicsBase.
Definition at line 124 of file MultiSpeciesDiffusionPhysicsBase.C.
|
overrideprivatevirtual |
Add default preconditioning options.
Reimplemented from PhysicsBase.
Definition at line 109 of file MultiSpeciesDiffusionPhysicsBase.C.
|
static |
Definition at line 18 of file MultiSpeciesDiffusionPhysicsBase.C.
Referenced by MultiSpeciesDiffusionCG::validParams().
|
protected |
Boundaries on which a Dirichlet boundary condition is applied. Outer indexing is variables.
Definition at line 43 of file MultiSpeciesDiffusionPhysicsBase.h.
Referenced by MultiSpeciesDiffusionCG::addFEBCs().
|
protected |
Boundaries on which a Neumann boundary condition is applied. Outer indexing is variables.
Definition at line 41 of file MultiSpeciesDiffusionPhysicsBase.h.
Referenced by MultiSpeciesDiffusionCG::addFEBCs().
|
protected |
Number of species.
Definition at line 39 of file MultiSpeciesDiffusionPhysicsBase.h.
|
protected |
Name of the diffused variables.
Definition at line 37 of file MultiSpeciesDiffusionPhysicsBase.h.
Referenced by MultiSpeciesDiffusionCG::addFEBCs(), MultiSpeciesDiffusionCG::addFEKernels(), addInitialConditions(), addPostprocessors(), MultiSpeciesDiffusionCG::addSolverVariables(), and MultiSpeciesDiffusionPhysicsBase().
|
protected |
Whether to use automatic differentiation or not.
Definition at line 46 of file MultiSpeciesDiffusionPhysicsBase.h.
Referenced by MultiSpeciesDiffusionCG::addFEBCs(), MultiSpeciesDiffusionCG::addFEKernels(), and addPostprocessors().