MaterialBase objects are special in that they have additional objects created automatically (see FEProblemBase::addMaterial). More...
#include <MaterialWarehouse.h>
Public Member Functions | |
| MaterialWarehouse (THREAD_ID num_threads=libMesh::n_threads()) | |
| const MooseObjectWarehouse< MaterialBase > & | operator[] (Moose::MaterialDataType data_type) const |
| void | addObjects (std::shared_ptr< MaterialBase > block, std::shared_ptr< MaterialBase > neighbor, std::shared_ptr< MaterialBase > face, THREAD_ID tid=0) |
| A special method unique to this class for adding Block, Neighbor, and Face material objects. | |
| virtual void | addObject (std::shared_ptr< MaterialBase > object, THREAD_ID tid=0, bool recurse=true) override |
| Adds an object to the storage structure. | |
| bool | hasVariableObjects (unsigned int variable_id, THREAD_ID tid=0) const |
| Checks for whether this warehouse has objects for a given variable. | |
| unsigned int | size (THREAD_ID tid=0) const |
| Return how many kernels we store in the current warehouse. | |
| bool | hasObjectsForVariableAndBlocks (const VariableName &var_name, const std::set< SubdomainID > &blocks, std::set< SubdomainID > &blocks_covered, THREAD_ID tid) const |
| Whether there are objects for this variable and the set of blocks passed. | |
| std::set< SubdomainID > | getActiveBlocks (THREAD_ID tid=0) const |
| Return a set of active SubdomainsIDs. | |
| const std::vector< std::shared_ptr< T > > & | getObjectsForVariable (const VariableName &var_name, THREAD_ID tid) const |
| Getter for objects that have the 'variable' set to a particular variable Note that users should check whether there are objects using 'hasObjectsForVariable' before calling this routine, because it will throw if there are no objects for this variable. | |
| void | sort (THREAD_ID tid=0) |
| Sort the objects using the DependencyResolver. | |
| void | subdomainsCovered (std::set< SubdomainID > &subdomains_covered, std::set< std::string > &unique_variables, THREAD_ID tid=0) const |
| Populates a set of covered subdomains and the associated variable names. | |
| THREAD_ID | numThreads () const |
| Return the number of threads. | |
| std::string | activeObjectsToFormattedString (THREAD_ID tid=0, const std::string &prefix="[DBG]") const |
| Output the active content of the warehouse to a string, meant to be output to the console. | |
| virtual void | initialSetup (THREAD_ID tid=0) const override |
| Convenience methods for calling object setup methods that handle the extra neighbor and face objects. | |
| virtual void | timestepSetup (THREAD_ID tid=0) const override |
| virtual void | subdomainSetup (THREAD_ID tid=0) const override |
| virtual void | subdomainSetup (SubdomainID id, THREAD_ID tid=0) const override |
| virtual void | neighborSubdomainSetup (THREAD_ID tid=0) const |
| virtual void | neighborSubdomainSetup (SubdomainID id, THREAD_ID tid=0) const |
| virtual void | jacobianSetup (THREAD_ID tid=0) const override |
| virtual void | residualSetup (THREAD_ID tid=0) const override |
| virtual void | updateActive (THREAD_ID tid=0) override |
| Update the active status of Kernels. | |
| void | sort (THREAD_ID tid=0, bool sort_all_objects=false) |
| By default, this method only sorts block and boundary-wise object storages that are used by the MOOSE threaded element loops. | |
| virtual void | customSetup (const ExecFlagType &exec_type, THREAD_ID tid=0) const |
| bool | hasActiveVariableBlockObjects (unsigned int variable_id, SubdomainID block_id, THREAD_ID tid=0) const |
| Methods for checking/getting variable kernels for a variable and SubdomainID. | |
| const std::vector< std::shared_ptr< MaterialBase > > & | getActiveVariableBlockObjects (unsigned int variable_id, SubdomainID block_id, THREAD_ID tid=0) const |
| const std::vector< std::shared_ptr< T > > & | getObjects (THREAD_ID tid=0) const |
| Retrieve complete vector to the all/block/boundary restricted objects for a given thread. | |
| const std::map< SubdomainID, std::vector< std::shared_ptr< T > > > & | getBlockObjects (THREAD_ID tid=0) const |
| const std::vector< std::shared_ptr< T > > & | getBlockObjects (SubdomainID id, THREAD_ID tid=0) const |
| const std::map< BoundaryID, std::vector< std::shared_ptr< T > > > & | getBoundaryObjects (THREAD_ID tid=0) const |
| const std::vector< std::shared_ptr< T > > & | getBoundaryObjects (BoundaryID id, THREAD_ID tid=0) const |
| const std::vector< std::shared_ptr< T > > & | getActiveObjects (THREAD_ID tid=0) const |
| Retrieve complete vector to the active all/block/boundary restricted objects for a given thread. | |
| const std::map< SubdomainID, std::vector< std::shared_ptr< T > > > & | getActiveBlockObjects (THREAD_ID tid=0) const |
| const std::vector< std::shared_ptr< T > > & | getActiveBlockObjects (SubdomainID id, THREAD_ID tid=0) const |
| const std::map< BoundaryID, std::vector< std::shared_ptr< T > > > & | getActiveBoundaryObjects (THREAD_ID tid=0) const |
| const std::vector< std::shared_ptr< T > > & | getActiveBoundaryObjects (BoundaryID id, THREAD_ID tid=0) const |
| bool | hasObjects (THREAD_ID tid=0) const |
| Convenience functions for determining if objects exist. | |
| bool | hasActiveObjects (THREAD_ID tid=0) const |
| bool | hasObjectsForVariable (const VariableName &var_name, THREAD_ID tid) const |
| bool | hasActiveBlockObjects (THREAD_ID tid=0) const |
| bool | hasActiveBlockObjects (SubdomainID id, THREAD_ID tid=0) const |
| bool | hasActiveBoundaryObjects (THREAD_ID tid=0) const |
| bool | hasActiveBoundaryObjects (BoundaryID id, THREAD_ID tid=0) const |
| bool | hasBoundaryObjects (THREAD_ID tid=0) const |
| bool | hasBoundaryObjects (BoundaryID id, THREAD_ID tid=0) const |
| bool | hasActiveObject (const std::string &name, THREAD_ID tid=0) const |
| Convenience functions for checking/getting specific objects. | |
| std::shared_ptr< T > | getObject (const std::string &name, THREAD_ID tid=0) const |
| std::shared_ptr< T > | getActiveObject (const std::string &name, THREAD_ID tid=0) const |
| void | updateVariableDependency (std::set< MooseVariableFieldBase * > &needed_moose_vars, THREAD_ID tid=0) const |
| Update variable dependency vector. | |
| void | updateBlockVariableDependency (SubdomainID id, std::set< MooseVariableFieldBase * > &needed_moose_vars, THREAD_ID tid=0) const |
| void | updateBoundaryVariableDependency (std::set< MooseVariableFieldBase * > &needed_moose_vars, THREAD_ID tid=0) const |
| void | updateBoundaryVariableDependency (BoundaryID id, std::set< MooseVariableFieldBase * > &needed_moose_vars, THREAD_ID tid=0) const |
| void | updateFEVariableCoupledVectorTagDependency (std::set< TagID > &needed_fe_var_vector_tags, THREAD_ID tid=0) const |
| Update FE variable coupleable vector tag vector for all objects, block-restricted objects, and boundary-restricted objects. | |
| void | updateBlockFEVariableCoupledVectorTagDependency (SubdomainID id, std::set< TagID > &needed_fe_var_vector_tags, THREAD_ID tid=0) const |
| void | updateBoundaryFEVariableCoupledVectorTagDependency (BoundaryID id, std::set< TagID > &needed_fe_var_vector_tags, THREAD_ID tid=0) const |
| void | updateMatPropDependency (std::unordered_set< unsigned int > &needed_mat_props, THREAD_ID tid=0, const bool producer_only=false) const |
| Update material property dependency vector. | |
| void | updateBlockMatPropDependency (SubdomainID id, std::unordered_set< unsigned int > &needed_mat_props, THREAD_ID tid=0, const bool producer_only=false) const |
| void | updateBoundaryMatPropDependency (std::unordered_set< unsigned int > &needed_mat_props, THREAD_ID tid=0, const bool producer_only=false) const |
| void | updateBoundaryMatPropDependency (BoundaryID id, std::unordered_set< unsigned int > &needed_mat_props, THREAD_ID tid=0, const bool producer_only=false) const |
Protected Member Functions | |
| virtual void | updateMatPropDependencyHelper (std::unordered_set< unsigned int > &needed_mat_props, const std::vector< std::shared_ptr< MaterialBase > > &objects, const bool producer_only) const override |
| Helper method for updating material property dependency vector. | |
| virtual void | updateMatPropDependencyHelper (std::unordered_set< unsigned int > &needed_mat_props, const std::vector< std::shared_ptr< T > > &objects, const bool producer_only) const |
| Helper method for updating material property dependency vector. | |
| void | checkThreadID (THREAD_ID tid) const |
| Calls assert on thread id. | |
| bool | hasBoundaryObjectsHelper (const std::vector< std::map< BoundaryID, std::vector< std::shared_ptr< T > > > > &boundary_objects, const THREAD_ID tid=0) const |
| Helper for determining whether we have boundary objects. | |
Static Protected Member Functions | |
| static void | updateActiveHelper (std::vector< std::shared_ptr< T > > &active, const std::vector< std::shared_ptr< T > > &all) |
| Helper method for updating active vectors. | |
| static void | sortHelper (std::vector< std::shared_ptr< T > > &objects) |
| Helper method for sorting vectors of objects. | |
| static void | updateVariableDependencyHelper (std::set< MooseVariableFieldBase * > &needed_moose_vars, const std::vector< std::shared_ptr< T > > &objects) |
| Helper method for updating variable dependency vector. | |
| static void | updateFEVariableCoupledVectorTagDependencyHelper (std::set< TagID > &needed_fe_var_vector_tags, const std::vector< std::shared_ptr< T > > &objects) |
| Helper method for updating FE variable coupleable vector tag vector. | |
Protected Attributes | |
| MooseObjectWarehouse< MaterialBase > | _neighbor_materials |
| Storage for neighbor material objects (Block are stored in the base class) | |
| MooseObjectWarehouse< MaterialBase > | _face_materials |
| Storage for face material objects (Block are stored in the base class) | |
| std::map< unsigned int, MooseObjectWarehouse< MaterialBase > > | _variable_objects |
| Variable based storage. | |
| const THREAD_ID | _num_threads |
| Convenience member storing the number of threads used for storage (1 or libMesh::n_threads) | |
| std::vector< std::vector< std::shared_ptr< T > > > | _all_objects |
| Storage container for the ALL pointers (THREAD_ID on outer vector) | |
| std::vector< std::vector< std::shared_ptr< T > > > | _active_objects |
| All active objects (THREAD_ID on outer vector) | |
| std::vector< std::map< SubdomainID, std::vector< std::shared_ptr< T > > > > | _all_block_objects |
| std::vector< std::map< SubdomainID, std::vector< std::shared_ptr< T > > > > | _active_block_objects |
| Active block restricted objects (THREAD_ID on outer vector) | |
| std::vector< std::map< BoundaryID, std::vector< std::shared_ptr< T > > > > | _all_boundary_objects |
| std::vector< std::map< BoundaryID, std::vector< std::shared_ptr< T > > > > | _active_boundary_objects |
| Active boundary restricted objects (THREAD_ID on outer vector) | |
| std::vector< std::map< VariableName, std::vector< std::shared_ptr< T > > > > | _all_variable_objects |
| All objects with a certain variable selected, as the 'variable' parameter. | |
MaterialBase objects are special in that they have additional objects created automatically (see FEProblemBase::addMaterial).
This class specializes the base class to acount for the additional Neightbor and face objects that may exist.
Definition at line 26 of file MaterialWarehouse.h.
| MaterialWarehouse::MaterialWarehouse | ( | THREAD_ID | num_threads = libMesh::n_threads() | ) |
Definition at line 16 of file MaterialWarehouse.C.
|
inherited |
Output the active content of the warehouse to a string, meant to be output to the console.
| tid | the thread id |
| prefix | a string to prepend to the string |
Definition at line 897 of file MooseObjectWarehouseBase.h.
Referenced by NonlinearThread::printBlockExecutionInformation(), NonlinearThread::printBoundaryExecutionInformation(), ComputeNodalKernelBCJacobiansThread::printGeneralExecutionInformation(), ComputeNodalKernelBcsThread::printGeneralExecutionInformation(), ComputeNodalKernelJacobiansThread::printGeneralExecutionInformation(), and ComputeNodalKernelsThread::printGeneralExecutionInformation().
|
overridevirtualinherited |
Adds an object to the storage structure.
| object | A shared pointer to the object being added |
| tid | The thread ID (default is 0) |
| recurse | Whether or not to build recusive warehouses (typically for Kernels) |
Reimplemented from MooseObjectWarehouseBase< T >.
Definition at line 48 of file MooseObjectWarehouse.h.
| void MaterialWarehouse::addObjects | ( | std::shared_ptr< MaterialBase > | block, |
| std::shared_ptr< MaterialBase > | neighbor, | ||
| std::shared_ptr< MaterialBase > | face, | ||
| THREAD_ID | tid = 0 |
||
| ) |
A special method unique to this class for adding Block, Neighbor, and Face material objects.
Definition at line 22 of file MaterialWarehouse.C.
Referenced by FEProblemBase::addMaterialHelper().
|
inlineprotectedinherited |
Calls assert on thread id.
Definition at line 928 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::addObject(), MooseObjectWarehouseBase< T >::getActiveBlockObjects(), MooseObjectWarehouseBase< T >::getActiveBlockObjects(), MooseObjectWarehouseBase< T >::getActiveBlocks(), MooseObjectWarehouseBase< T >::getActiveBoundaryObjects(), MooseObjectWarehouseBase< T >::getActiveBoundaryObjects(), MooseObjectWarehouseBase< T >::getActiveObject(), MooseObjectWarehouseBase< T >::getActiveObjects(), MooseObjectWarehouseBase< T >::getBlockObjects(), MooseObjectWarehouseBase< T >::getBlockObjects(), MooseObjectWarehouseBase< T >::getBoundaryObjects(), MooseObjectWarehouseBase< T >::getBoundaryObjects(), MooseObjectWarehouseBase< T >::getObject(), MooseObjectWarehouseBase< T >::getObjects(), MooseObjectWarehouseBase< T >::hasActiveBlockObjects(), MooseObjectWarehouseBase< T >::hasActiveBlockObjects(), MooseObjectWarehouseBase< T >::hasActiveBoundaryObjects(), MooseObjectWarehouseBase< T >::hasActiveObject(), MooseObjectWarehouseBase< T >::hasActiveObjects(), MooseObjectWarehouseBase< T >::hasBoundaryObjects(), MooseObjectWarehouseBase< T >::hasBoundaryObjectsHelper(), MooseObjectWarehouseBase< T >::hasObjects(), MooseObjectWarehouseBase< T >::hasObjectsForVariable(), MooseObjectWarehouseBase< T >::hasObjectsForVariableAndBlocks(), ConstraintWarehouse::residualEnd(), MooseObjectWarehouseBase< T >::size(), MooseObjectWarehouseBase< T >::sort(), sort(), and MooseObjectWarehouseBase< T >::updateActive().
|
virtualinherited |
Definition at line 56 of file MooseObjectWarehouse.h.
|
inherited |
Definition at line 476 of file MooseObjectWarehouseBase.h.
|
inlineinherited |
Definition at line 468 of file MooseObjectWarehouseBase.h.
Referenced by MaterialPropertyInterface::buildRequiredMaterials(), Moose::checkArrayMaterialPropertySize(), FEProblemBase::checkProblemIntegrity(), NonlinearThread::computeOnElement(), ComputeFullJacobianThread::computeOnInternalFace(), ComputeResidualAndJacobianThread::computeOnInternalFace(), ComputeResidualThread::computeOnInternalFace(), NonlinearThread::computeOnInternalFace(), ComputeFullJacobianThread::computeOnInternalFace(), FEProblemBase::getFVMatsAndDependencies(), BlockRestrictable::hasBlockMaterialPropertyHelper(), NonlinearSystemBase::needInternalNeighborSideMaterial(), ComputeIndicatorThread::onElement(), ComputeMarkerThread::onElement(), ComputeMaterialsObjectThread::onElement(), ComputeIndicatorThread::onInternalSide(), ComputeNodalKernelJacobiansThread::onNode(), ComputeNodalKernelsThread::onNode(), ComputeFVInitialConditionThread::operator()(), ComputeInitialConditionThread::operator()(), ComputeDiracThread::printBlockExecutionInformation(), ComputeIndicatorThread::printBlockExecutionInformation(), ComputeMarkerThread::printBlockExecutionInformation(), FEProblemBase::reinitMaterials(), Moose::Mortar::setupMortarMaterials(), MooseObjectWarehouseBase< T >::updateBlockFEVariableCoupledVectorTagDependency(), MooseObjectWarehouseBase< T >::updateBlockMatPropDependency(), and MooseObjectWarehouseBase< T >::updateBlockVariableDependency().
|
inherited |
Return a set of active SubdomainsIDs.
Definition at line 648 of file MooseObjectWarehouseBase.h.
Referenced by FEProblemBase::checkProblemIntegrity().
|
inherited |
Definition at line 457 of file MooseObjectWarehouseBase.h.
|
inlineinherited |
Definition at line 449 of file MooseObjectWarehouseBase.h.
Referenced by NonlinearSystemBase::computeJacobianBlocks(), AuxiliarySystem::computeMortarNodalVars(), NonlinearSystemBase::computeNodalBCsJacobian(), NonlinearSystemBase::computeNodalBCsResidual(), NonlinearSystemBase::computeNodalBCsResidualAndJacobian(), NonlinearThread::computeOnBoundary(), ComputeFullJacobianThread::computeOnBoundary(), NonlinearThread::computeOnInterface(), ComputeFullJacobianThread::computeOnInterface(), BoundaryRestrictable::hasBoundaryMaterialPropertyHelper(), NonlinearSystemBase::needBoundaryMaterialOnSide(), NonlinearSystemBase::needInterfaceMaterialOnSide(), ComputeMaterialsObjectThread::onBoundary(), ComputeMaterialsObjectThread::onInterface(), NonlinearThread::onInterfaceWithHRefinementMismatch(), ComputeBoundaryInitialConditionThread::onNode(), ComputeNodalKernelBCJacobiansThread::onNode(), ComputeNodalKernelBcsThread::onNode(), FEProblemBase::reinitMaterialsBoundary(), FEProblemBase::reinitMaterialsInterface(), NonlinearSystemBase::setInitialSolution(), MooseObjectWarehouseBase< T >::updateBoundaryFEVariableCoupledVectorTagDependency(), MooseObjectWarehouseBase< T >::updateBoundaryMatPropDependency(), and MooseObjectWarehouseBase< T >::updateBoundaryVariableDependency().
|
inherited |
Definition at line 629 of file MooseObjectWarehouseBase.h.
Referenced by DerivativeParsedMaterialHelperTempl< is_ad >::assembleDerivatives(), FEProblemBase::getConvergence(), FEProblemBase::getFunction(), FEProblemBase::getKokkosFunction(), FEProblemBase::getMaterial(), FEProblemBase::getMeshDivision(), NonlinearSystemBase::getSplit(), LibtorchControlValuePostprocessor::initialSetup(), and LibtorchArtificialNeuralNetParameters::initialSetup().
|
inlineinherited |
Retrieve complete vector to the active all/block/boundary restricted objects for a given thread.
| tid | The thread id to retrieve objects from |
Definition at line 441 of file MooseObjectWarehouseBase.h.
Referenced by FEProblemBase::backupMultiApps(), NonlinearEigenSystem::checkIntegrity(), NonlinearSystemBase::checkKernelCoverage(), FEProblemBase::checkProblemIntegrity(), NonlinearSystemBase::computeDamping(), NonlinearSystemBase::computeDiracContributions(), FEProblemBase::computeIndicators(), FEProblemBase::computeMarkers(), FEProblemBase::computeMultiAppsDT(), NonlinearSystemBase::computeResidualInternal(), NonlinearSystemBase::computeScalarKernelsJacobians(), AuxiliarySystem::computeScalarVars(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), FEProblemBase::finalizeMultiApps(), FEProblemBase::finishMultiAppStep(), ConstraintWarehouse::getActiveNodalConstraints(), FEProblemBase::getConvergenceObjects(), AuxiliarySystem::getDependObjects(), AuxiliarySystem::getDependObjects(), FEProblemBase::getTransfers(), FEProblemBase::getTransfers(), FEProblemBase::incrementMultiAppTStep(), NonlinearSystemBase::needBoundaryMaterialOnSide(), ComputeDiracThread::onElement(), ComputeElemDampingThread::onElement(), ComputeNodalDampingThread::onNode(), FEProblemBase::partitionConcurrentMultiApps(), FEProblemBase::postExecute(), FEProblemBase::projectInitialConditionOnCustomRange(), FEProblemBase::projectSolution(), FEProblemBase::restoreMultiApps(), and AuxiliarySystem::setScalarVariableCoupleableTags().
|
inherited |
Definition at line 75 of file MooseObjectWarehouse.h.
|
inherited |
Definition at line 430 of file MooseObjectWarehouseBase.h.
|
inlineinherited |
Definition at line 422 of file MooseObjectWarehouseBase.h.
Referenced by MaterialPropertyDebugOutput::printMaterialMap().
|
inherited |
Definition at line 411 of file MooseObjectWarehouseBase.h.
|
inlineinherited |
Definition at line 395 of file MooseObjectWarehouseBase.h.
Referenced by ComputeFullJacobianThread::computeOnBoundary(), and MaterialPropertyDebugOutput::printMaterialMap().
|
inherited |
Definition at line 618 of file MooseObjectWarehouseBase.h.
Referenced by FEProblemBase::getMultiApp().
|
inlineinherited |
Retrieve complete vector to the all/block/boundary restricted objects for a given thread.
| tid | The thread id to retrieve objects from |
Definition at line 387 of file MooseObjectWarehouseBase.h.
Referenced by FEProblemBase::checkNonlocalCoupling(), MooseApp::collectCitations(), MooseApp::errorCheck(), MooseObjectTagWarehouse< T >::getMatrixTagObjectWarehouse(), MooseObjectTagWarehouse< T >::getMatrixTagsObjectWarehouse(), MooseObjectTagWarehouse< T >::getVectorTagObjectWarehouse(), MooseObjectTagWarehouse< T >::getVectorTagsObjectWarehouse(), ConsoleUtils::outputExecutionInformation(), BlockRestrictionDebugOutput::printBlockRestrictionMap(), FEProblemBase::setActiveMaterialProperties(), FEProblemBase::setNonlocalCouplingMatrix(), and MooseApp::setOutputFileBase().
|
inherited |
Getter for objects that have the 'variable' set to a particular variable Note that users should check whether there are objects using 'hasObjectsForVariable' before calling this routine, because it will throw if there are no objects for this variable.
Definition at line 640 of file MooseObjectWarehouseBase.h.
|
inherited |
Definition at line 562 of file MooseObjectWarehouseBase.h.
|
inherited |
Definition at line 551 of file MooseObjectWarehouseBase.h.
Referenced by Moose::checkArrayMaterialPropertySize(), AuxiliarySystem::computeElementalVarsHelper(), NonlinearSystemBase::computeJacobianInternal(), AuxiliarySystem::computeMortarNodalVars(), AuxiliarySystem::computeNodalVarsHelper(), NonlinearThread::computeOnElement(), ComputeFullJacobianThread::computeOnInternalFace(), ComputeJacobianThread::computeOnInternalFace(), ComputeResidualAndJacobianThread::computeOnInternalFace(), ComputeResidualThread::computeOnInternalFace(), ComputeFullJacobianThread::computeOnInternalFace(), NonlinearSystemBase::computeResidualAndJacobianInternal(), NonlinearSystemBase::computeResidualInternal(), BlockRestrictable::hasBlockMaterialPropertyHelper(), NonlinearSystemBase::needInternalNeighborSideMaterial(), ComputeIndicatorThread::onElement(), ComputeMarkerThread::onElement(), ComputeMaterialsObjectThread::onElement(), ProjectMaterialProperties::onElement(), ComputeIndicatorThread::onInternalSide(), ComputeNodalKernelJacobiansThread::onNode(), ComputeNodalKernelsThread::onNode(), ComputeFVInitialConditionThread::operator()(), ComputeInitialConditionThread::operator()(), ComputeJacobianBlocksThread::postInternalSide(), FEProblemBase::prepareMaterials(), ComputeDiracThread::printBlockExecutionInformation(), ComputeIndicatorThread::printBlockExecutionInformation(), ComputeMarkerThread::printBlockExecutionInformation(), NonlinearThread::printBlockExecutionInformation(), FEProblemBase::reinitMaterials(), MooseObjectWarehouseBase< T >::updateBlockFEVariableCoupledVectorTagDependency(), MooseObjectWarehouseBase< T >::updateBlockMatPropDependency(), and MooseObjectWarehouseBase< T >::updateBlockVariableDependency().
|
inherited |
Definition at line 598 of file MooseObjectWarehouseBase.h.
|
inherited |
Definition at line 591 of file MooseObjectWarehouseBase.h.
Referenced by AuxiliarySystem::computeElementalVarsHelper(), NonlinearSystemBase::computeJacobianBlocks(), NonlinearSystemBase::computeJacobianInternal(), AuxiliarySystem::computeMortarNodalVars(), NonlinearSystemBase::computeNodalBCsJacobian(), NonlinearSystemBase::computeNodalBCsResidual(), NonlinearSystemBase::computeNodalBCsResidualAndJacobian(), AuxiliarySystem::computeNodalVarsHelper(), ComputeFullJacobianThread::computeOnBoundary(), ComputeFullJacobianThread::computeOnInterface(), NonlinearSystemBase::computeResidualAndJacobianInternal(), NonlinearSystemBase::computeResidualInternal(), BoundaryRestrictable::hasBoundaryMaterialPropertyHelper(), NonlinearSystemBase::needBoundaryMaterialOnSide(), FEProblemBase::needInterfaceMaterialOnSide(), NonlinearSystemBase::needInterfaceMaterialOnSide(), ComputeMaterialsObjectThread::onBoundary(), NonlinearThread::onBoundary(), NonlinearThread::onExternalSide(), ComputeMaterialsObjectThread::onInterface(), NonlinearThread::onInterface(), ComputeBoundaryInitialConditionThread::onNode(), ComputeNodalKernelBCJacobiansThread::onNode(), ComputeNodalKernelBcsThread::onNode(), NonlinearThread::printBoundaryExecutionInformation(), ComputeNodalKernelBCJacobiansThread::printGeneralExecutionInformation(), FEProblemBase::reinitMaterialsBoundary(), FEProblemBase::reinitMaterialsInterface(), NonlinearSystemBase::setInitialSolution(), MooseObjectWarehouseBase< T >::updateBoundaryFEVariableCoupledVectorTagDependency(), MooseObjectWarehouseBase< T >::updateBoundaryMatPropDependency(), MooseObjectWarehouseBase< T >::updateBoundaryMatPropDependency(), MooseObjectWarehouseBase< T >::updateBoundaryVariableDependency(), and MooseObjectWarehouseBase< T >::updateBoundaryVariableDependency().
|
inherited |
Convenience functions for checking/getting specific objects.
Definition at line 607 of file MooseObjectWarehouseBase.h.
Referenced by FEProblemBase::hasConvergence(), FEProblemBase::hasFunction(), and FEProblemBase::hasMultiApp().
|
inherited |
Definition at line 495 of file MooseObjectWarehouseBase.h.
Referenced by NonlinearEigenSystem::checkIntegrity(), NonlinearSystemBase::checkKernelCoverage(), NonlinearSystemBase::computeDamping(), NonlinearSystemBase::computeDiracContributions(), FEProblemBase::computeIndicators(), FEProblemBase::computeMarkers(), NonlinearSystemBase::computeNodalBCsJacobian(), NonlinearSystemBase::computeNodalBCsResidual(), NonlinearSystemBase::computeNodalBCsResidualAndJacobian(), NonlinearSystemBase::computeResidualAndJacobianInternal(), NonlinearSystemBase::computeResidualInternal(), NonlinearSystemBase::computeScalarKernelsJacobians(), AuxiliarySystem::computeScalarVars(), NonlinearSystemBase::containsTimeKernel(), FEProblemBase::execMultiAppTransfers(), ConstraintWarehouse::hasActiveNodalConstraints(), FEProblemBase::hasMultiApps(), FEProblemBase::hasMultiApps(), ElementSubdomainModifierBase::modify(), NonlinearSystemBase::needBoundaryMaterialOnSide(), ComputeNodalKernelBcsThread::printGeneralExecutionInformation(), ComputeNodalKernelJacobiansThread::printGeneralExecutionInformation(), ComputeNodalKernelsThread::printGeneralExecutionInformation(), FEProblemBase::projectInitialConditionOnCustomRange(), FEProblemBase::projectSolution(), FEProblemBase::timestepSetup(), MooseObjectWarehouseBase< T >::updateFEVariableCoupledVectorTagDependency(), MooseObjectWarehouseBase< T >::updateMatPropDependency(), and MooseObjectWarehouseBase< T >::updateVariableDependency().
|
inherited |
Methods for checking/getting variable kernels for a variable and SubdomainID.
Definition at line 72 of file MooseObjectWarehouse.h.
|
inherited |
Definition at line 403 of file MooseObjectWarehouseBase.h.
|
inherited |
Definition at line 584 of file MooseObjectWarehouseBase.h.
|
protectedinherited |
Helper for determining whether we have boundary objects.
Definition at line 571 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::hasActiveBoundaryObjects(), and MooseObjectWarehouseBase< T >::hasBoundaryObjects().
|
inherited |
Convenience functions for determining if objects exist.
Definition at line 487 of file MooseObjectWarehouseBase.h.
Referenced by NonlinearSystemBase::setInitialSolution().
|
inherited |
Definition at line 503 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::hasObjectsForVariableAndBlocks().
|
inherited |
Whether there are objects for this variable and the set of blocks passed.
| var_name | name of the variable |
| blocks | blocks to consider |
| blocks_covered | subset of blocks for which there is an object |
Definition at line 512 of file MooseObjectWarehouseBase.h.
|
inherited |
Checks for whether this warehouse has objects for a given variable.
Definition at line 66 of file MooseObjectWarehouse.h.
|
overridevirtual |
Convenience methods for calling object setup methods that handle the extra neighbor and face objects.
Reimplemented from MooseObjectWarehouse< MaterialBase >.
Definition at line 49 of file MaterialWarehouse.C.
|
overridevirtual |
Reimplemented from MooseObjectWarehouse< MaterialBase >.
Definition at line 99 of file MaterialWarehouse.C.
Referenced by FEProblemBase::computeJacobianTags().
|
virtual |
Definition at line 85 of file MaterialWarehouse.C.
|
virtual |
Definition at line 72 of file MaterialWarehouse.C.
Referenced by FEProblemBase::neighborSubdomainSetup().
|
inlineinherited |
| const MooseObjectWarehouse< MaterialBase > & MaterialWarehouse::operator[] | ( | Moose::MaterialDataType | data_type | ) | const |
Definition at line 33 of file MaterialWarehouse.C.
|
overridevirtual |
Reimplemented from MooseObjectWarehouse< MaterialBase >.
Definition at line 91 of file MaterialWarehouse.C.
Referenced by FEProblemBase::computeBounds(), FEProblemBase::computeResidualAndJacobian(), and FEProblemBase::computeResidualTags().
|
inherited |
Return how many kernels we store in the current warehouse.
Definition at line 305 of file MooseObjectWarehouseBase.h.
Referenced by NonlinearThread::printBlockExecutionInformation().
|
inherited |
Sort the objects using the DependencyResolver.
Definition at line 688 of file MooseObjectWarehouseBase.h.
Referenced by ScalarInitialConditionWarehouse::initialSetup(), FVInitialConditionWarehouse::initialSetup(), and InitialConditionWarehouse::initialSetup().
| void MaterialWarehouse::sort | ( | THREAD_ID | tid = 0, |
| bool | sort_all_objects = false |
||
| ) |
By default, this method only sorts block and boundary-wise object storages that are used by the MOOSE threaded element loops.
Kokkos, however, computes all elements and faces at once regardless of block and boundary and uses all-object storages. Therefore, the Kokkos material warehouse sets sort_all_objects to true to sort the all-object storages.
Definition at line 115 of file MaterialWarehouse.C.
|
staticprotectedinherited |
Helper method for sorting vectors of objects.
Definition at line 908 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::sort(), and sort().
|
inherited |
Populates a set of covered subdomains and the associated variable names.
Definition at line 879 of file MooseObjectWarehouseBase.h.
Referenced by NonlinearSystemBase::checkKernelCoverage().
|
overridevirtual |
Reimplemented from MooseObjectWarehouse< MaterialBase >.
Definition at line 78 of file MaterialWarehouse.C.
|
overridevirtual |
Reimplemented from MooseObjectWarehouse< MaterialBase >.
Definition at line 65 of file MaterialWarehouse.C.
Referenced by FEProblemBase::subdomainSetup().
|
overridevirtual |
Reimplemented from MooseObjectWarehouse< MaterialBase >.
Definition at line 57 of file MaterialWarehouse.C.
Referenced by FEProblemBase::timestepSetup().
|
overridevirtual |
Update the active status of Kernels.
Reimplemented from MooseObjectWarehouse< MaterialBase >.
Definition at line 107 of file MaterialWarehouse.C.
Referenced by MooseObjectWarehouseBase< T >::sort(), sort(), and FEProblemBase::updateActiveObjects().
|
staticprotectedinherited |
Helper method for updating active vectors.
Definition at line 674 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::updateActive().
|
inherited |
Definition at line 777 of file MooseObjectWarehouseBase.h.
Referenced by ComputeNodalKernelsThread::onNode(), ComputeIndicatorThread::subdomainChanged(), ComputeMaterialsObjectThread::subdomainChanged(), ComputeUserObjectsThread::subdomainChanged(), and NonlinearThread::subdomainChanged().
|
inherited |
Definition at line 824 of file MooseObjectWarehouseBase.h.
Referenced by FEProblemBase::prepareMaterials(), and NonlinearThread::subdomainChanged().
|
inherited |
Definition at line 715 of file MooseObjectWarehouseBase.h.
Referenced by NonlinearThread::subdomainChanged().
|
inherited |
Definition at line 787 of file MooseObjectWarehouseBase.h.
Referenced by ComputeNodalKernelBcsThread::onNode().
|
inherited |
Definition at line 848 of file MooseObjectWarehouseBase.h.
|
inherited |
Definition at line 836 of file MooseObjectWarehouseBase.h.
Referenced by FEProblemBase::prepareMaterials(), and NonlinearThread::subdomainChanged().
|
inherited |
Definition at line 739 of file MooseObjectWarehouseBase.h.
|
inherited |
Definition at line 726 of file MooseObjectWarehouseBase.h.
Referenced by FEProblemBase::prepareMaterials(), and NonlinearThread::subdomainChanged().
|
inherited |
Update FE variable coupleable vector tag vector for all objects, block-restricted objects, and boundary-restricted objects.
Definition at line 767 of file MooseObjectWarehouseBase.h.
|
staticprotectedinherited |
Helper method for updating FE variable coupleable vector tag vector.
Definition at line 797 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::updateBlockFEVariableCoupledVectorTagDependency(), MooseObjectWarehouseBase< T >::updateBoundaryFEVariableCoupledVectorTagDependency(), and MooseObjectWarehouseBase< T >::updateFEVariableCoupledVectorTagDependency().
|
inherited |
Update material property dependency vector.
| producer_only | Only append dependencies of materials producing the needed_mat_props |
Definition at line 813 of file MooseObjectWarehouseBase.h.
Referenced by ComputeDiracThread::subdomainChanged(), ComputeIndicatorThread::subdomainChanged(), and ComputeMarkerThread::subdomainChanged().
|
overrideprotectedvirtual |
Helper method for updating material property dependency vector.
Definition at line 145 of file MaterialWarehouse.C.
Referenced by MooseObjectWarehouseBase< T >::updateBlockMatPropDependency(), MooseObjectWarehouseBase< T >::updateBoundaryMatPropDependency(), MooseObjectWarehouseBase< T >::updateBoundaryMatPropDependency(), and MooseObjectWarehouseBase< T >::updateMatPropDependency().
|
protectedvirtualinherited |
Helper method for updating material property dependency vector.
Definition at line 861 of file MooseObjectWarehouseBase.h.
Referenced by updateMatPropDependencyHelper().
|
inherited |
Update variable dependency vector.
Definition at line 706 of file MooseObjectWarehouseBase.h.
Referenced by FEProblemBase::prepareMaterials(), ComputeDiracThread::subdomainChanged(), ComputeIndicatorThread::subdomainChanged(), ComputeMarkerThread::subdomainChanged(), and ComputeMaterialsObjectThread::subdomainChanged().
|
staticprotectedinherited |
Helper method for updating variable dependency vector.
Definition at line 750 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::updateBlockVariableDependency(), MooseObjectWarehouseBase< T >::updateBoundaryVariableDependency(), MooseObjectWarehouseBase< T >::updateBoundaryVariableDependency(), and MooseObjectWarehouseBase< T >::updateVariableDependency().
|
protectedinherited |
Active block restricted objects (THREAD_ID on outer vector)
Definition at line 228 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::addObject(), MooseObjectWarehouseBase< T >::getActiveBlockObjects(), MooseObjectWarehouseBase< T >::getActiveBlockObjects(), MooseObjectWarehouseBase< T >::getActiveBlocks(), MooseObjectWarehouseBase< T >::hasActiveBlockObjects(), MooseObjectWarehouseBase< T >::hasActiveBlockObjects(), MooseObjectWarehouseBase< T >::subdomainsCovered(), and MooseObjectWarehouseBase< T >::updateActive().
|
protectedinherited |
Active boundary restricted objects (THREAD_ID on outer vector)
Definition at line 234 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::addObject(), MooseObjectWarehouseBase< T >::getActiveBoundaryObjects(), MooseObjectWarehouseBase< T >::getActiveBoundaryObjects(), MooseObjectWarehouseBase< T >::hasActiveBoundaryObjects(), MooseObjectWarehouseBase< T >::hasActiveBoundaryObjects(), MooseObjectWarehouseBase< T >::updateActive(), MooseObjectWarehouseBase< T >::updateBoundaryMatPropDependency(), and MooseObjectWarehouseBase< T >::updateBoundaryVariableDependency().
|
protectedinherited |
All active objects (THREAD_ID on outer vector)
Definition at line 222 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::activeObjectsToFormattedString(), MooseObjectWarehouseBase< T >::addObject(), MooseObjectWarehouseBase< T >::getActiveObject(), MooseObjectWarehouseBase< T >::getActiveObjects(), MooseObjectWarehouseBase< T >::hasActiveObject(), MooseObjectWarehouseBase< T >::hasActiveObjects(), ConstraintWarehouse::residualEnd(), MooseObjectWarehouseBase< T >::subdomainsCovered(), MooseObjectWarehouseBase< T >::updateActive(), MooseObjectWarehouseBase< T >::updateFEVariableCoupledVectorTagDependency(), MooseObjectWarehouseBase< T >::updateMatPropDependency(), and MooseObjectWarehouseBase< T >::updateVariableDependency().
|
protectedinherited |
Definition at line 225 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::addObject(), MooseObjectWarehouseBase< T >::getBlockObjects(), MooseObjectWarehouseBase< T >::getBlockObjects(), MooseObjectWarehouseBase< T >::sort(), sort(), and MooseObjectWarehouseBase< T >::updateActive().
|
protectedinherited |
Definition at line 231 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::addObject(), MooseObjectWarehouseBase< T >::getBoundaryObjects(), MooseObjectWarehouseBase< T >::getBoundaryObjects(), MooseObjectWarehouseBase< T >::hasBoundaryObjects(), MooseObjectWarehouseBase< T >::hasBoundaryObjects(), MooseObjectWarehouseBase< T >::sort(), sort(), and MooseObjectWarehouseBase< T >::updateActive().
|
protectedinherited |
Storage container for the ALL pointers (THREAD_ID on outer vector)
Definition at line 219 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::addObject(), MooseObjectWarehouseBase< T >::getObject(), MooseObjectWarehouseBase< T >::getObjects(), MooseObjectWarehouseBase< T >::hasObjects(), MooseObjectWarehouseBase< T >::size(), MooseObjectWarehouseBase< T >::sort(), sort(), and MooseObjectWarehouseBase< T >::updateActive().
|
protectedinherited |
All objects with a certain variable selected, as the 'variable' parameter.
Definition at line 237 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::addObject(), MooseObjectWarehouseBase< T >::getObjectsForVariable(), MooseObjectWarehouseBase< T >::hasObjectsForVariable(), and MooseObjectWarehouseBase< T >::hasObjectsForVariableAndBlocks().
|
protected |
Storage for face material objects (Block are stored in the base class)
Definition at line 69 of file MaterialWarehouse.h.
Referenced by addObjects(), initialSetup(), jacobianSetup(), operator[](), residualSetup(), sort(), subdomainSetup(), subdomainSetup(), timestepSetup(), and updateActive().
|
protected |
Storage for neighbor material objects (Block are stored in the base class)
Definition at line 66 of file MaterialWarehouse.h.
Referenced by addObjects(), initialSetup(), jacobianSetup(), neighborSubdomainSetup(), neighborSubdomainSetup(), operator[](), residualSetup(), sort(), timestepSetup(), and updateActive().
|
protectedinherited |
Convenience member storing the number of threads used for storage (1 or libMesh::n_threads)
Definition at line 216 of file MooseObjectWarehouseBase.h.
Referenced by MooseObjectWarehouseBase< T >::checkThreadID(), and MooseObjectWarehouseBase< T >::numThreads().
|
protectedinherited |
Variable based storage.
Definition at line 87 of file MooseObjectWarehouse.h.