Element user object that performs SIMP optimization using a bisection algorithm using a volume constraint. More...
#include <DensityUpdate.h>
Classes | |
struct | ElementData |
Public Types | |
typedef DataFileName | DataFileParameterType |
Public Member Functions | |
DensityUpdate (const InputParameters ¶meters) | |
virtual void | initialize () override |
virtual void | timestepSetup () override |
virtual void | execute () override |
virtual void | finalize () override |
virtual void | threadJoin (const UserObject &) override |
SubProblem & | getSubProblem () const |
bool | shouldDuplicateInitialExecution () const |
virtual Real | spatialValue (const Point &) const |
virtual const std::vector< Point > | spatialPoints () const |
void | gatherSum (T &value) |
void | gatherMax (T &value) |
void | gatherMin (T &value) |
void | gatherProxyValueMax (T1 &proxy, T2 &value) |
void | gatherProxyValueMin (T1 &proxy, T2 &value) |
void | setPrimaryThreadCopy (UserObject *primary) |
UserObject * | primaryThreadCopy () |
std::set< UserObjectName > | getDependObjects () const |
virtual bool | needThreadedCopy () const |
const std::set< std::string > & | getRequestedItems () override |
const std::set< std::string > & | getSuppliedItems () override |
unsigned int | systemNumber () const |
virtual bool | enabled () const |
std::shared_ptr< MooseObject > | getSharedPtr () |
std::shared_ptr< const MooseObject > | getSharedPtr () const |
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 & | 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 |
virtual void | initialSetup () |
virtual void | jacobianSetup () |
virtual void | residualSetup () |
virtual void | subdomainSetup () |
virtual void | customSetup (const ExecFlagType &) |
const ExecFlagEnum & | getExecuteOnEnum () const |
UserObjectName | getUserObjectName (const std::string ¶m_name) const |
const T & | getUserObject (const std::string ¶m_name, bool is_dependency=true) const |
const T & | getUserObjectByName (const UserObjectName &object_name, bool is_dependency=true) const |
const UserObject & | getUserObjectBase (const std::string ¶m_name, bool is_dependency=true) const |
const UserObject & | getUserObjectBaseByName (const UserObjectName &object_name, bool is_dependency=true) const |
const std::vector< SubdomainName > & | blocks () const |
unsigned int | numBlocks () const |
virtual const std::set< SubdomainID > & | blockIDs () const |
unsigned int | blocksMaxDimension () const |
bool | hasBlocks (const SubdomainName &name) const |
bool | hasBlocks (const std::vector< SubdomainName > &names) const |
bool | hasBlocks (SubdomainID id) const |
bool | hasBlocks (const std::vector< SubdomainID > &ids) const |
bool | hasBlocks (const std::set< SubdomainID > &ids) const |
bool | isBlockSubset (const std::set< SubdomainID > &ids) const |
bool | isBlockSubset (const std::vector< SubdomainID > &ids) const |
bool | hasBlockMaterialProperty (const std::string &prop_name) |
const std::set< SubdomainID > & | meshBlockIDs () const |
virtual bool | blockRestricted () const |
virtual void | checkVariable (const MooseVariableFieldBase &variable) const |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialProperty (const std::string &name, MaterialData &material_data, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialProperty (const std::string &name, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialProperty (const std::string &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialProperty (const std::string &name, MaterialData &material_data, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialProperty (const std::string &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialProperty (const std::string &name, const unsigned int state=0) |
const ADMaterialProperty< T > & | getADMaterialProperty (const std::string &name, MaterialData &material_data) |
const ADMaterialProperty< T > & | getADMaterialProperty (const std::string &name) |
const ADMaterialProperty< T > & | getADMaterialProperty (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOld (const std::string &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOld (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOld (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOlder (const std::string &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOlder (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOlder (const std::string &name) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data, const unsigned int state) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const MaterialPropertyName &name) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const MaterialPropertyName &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const MaterialPropertyName &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const MaterialPropertyName &name) |
std::pair< const MaterialProperty< T > *, std::set< SubdomainID > > | getBlockMaterialProperty (const MaterialPropertyName &name) |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialProperty (const std::string &name) |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialProperty () |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialPropertyByName (const std::string &prop_name) |
const MaterialProperty< T > & | getZeroMaterialProperty (Ts... args) |
std::set< SubdomainID > | getMaterialPropertyBlocks (const std::string &name) |
std::vector< SubdomainName > | getMaterialPropertyBlockNames (const std::string &name) |
std::set< BoundaryID > | getMaterialPropertyBoundaryIDs (const std::string &name) |
std::vector< BoundaryName > | getMaterialPropertyBoundaryNames (const std::string &name) |
void | checkBlockAndBoundaryCompatibility (std::shared_ptr< MaterialBase > discrete) |
std::unordered_map< SubdomainID, std::vector< MaterialBase *> > | buildRequiredMaterials (bool allow_stateful=true) |
void | statefulPropertiesAllowed (bool) |
bool | getMaterialPropertyCalled () const |
const std::unordered_set< unsigned int > & | getMatPropDependencies () const |
virtual void | resolveOptionalProperties () |
const GenericMaterialProperty< T, is_ad > & | getPossiblyConstantGenericMaterialPropertyByName (const MaterialPropertyName &prop_name, MaterialData &material_data, const unsigned int state) |
virtual const VariableValue & | coupledValueByName (const std::string &var_name) |
virtual const ArrayVariableValue & | coupledArrayValueByName (const std::string &var_name) |
const std::unordered_map< std::string, std::vector< MooseVariableFieldBase *> > & | getCoupledVars () const |
const std::vector< MooseVariableFieldBase *> & | getCoupledMooseVars () const |
const std::vector< MooseVariable *> & | getCoupledStandardMooseVars () const |
const std::vector< VectorMooseVariable *> & | getCoupledVectorMooseVars () const |
const std::vector< ArrayMooseVariable *> & | getCoupledArrayMooseVars () const |
void | addFEVariableCoupleableVectorTag (TagID tag) |
void | addFEVariableCoupleableMatrixTag (TagID tag) |
std::set< TagID > & | getFEVariableCoupleableVectorTags () |
const std::set< TagID > & | getFEVariableCoupleableVectorTags () const |
std::set< TagID > & | getFEVariableCoupleableMatrixTags () |
const std::set< TagID > & | getFEVariableCoupleableMatrixTags () const |
auto & | getWritableCoupledVariables () const |
bool | hasWritableCoupledVariables () const |
const ADVariableValue * | getADDefaultValue (const std::string &var_name) const |
const ADVectorVariableValue * | getADDefaultVectorValue (const std::string &var_name) const |
const ADVariableGradient & | getADDefaultGradient () const |
const ADVectorVariableGradient & | getADDefaultVectorGradient () const |
const ADVariableSecond & | getADDefaultSecond () const |
const ADVectorVariableCurl & | getADDefaultCurl () const |
const std::vector< MooseVariableScalar *> & | getCoupledMooseScalarVars () |
const std::set< TagID > & | getScalarVariableCoupleableVectorTags () const |
const std::set< TagID > & | getScalarVariableCoupleableMatrixTags () const |
const std::set< MooseVariableFieldBase *> & | getMooseVariableDependencies () const |
std::set< MooseVariableFieldBase *> | checkAllVariables (const DofObjectType &dof_object, const std::set< MooseVariableFieldBase * > &vars_to_omit={}) |
std::set< MooseVariableFieldBase *> | checkVariables (const DofObjectType &dof_object, const std::set< MooseVariableFieldBase * > &vars_to_check) |
bool | isImplicit () |
Moose::StateArg | determineState () const |
void | setRandomResetFrequency (ExecFlagType exec_flag) |
unsigned long | getRandomLong () const |
Real | getRandomReal () const |
unsigned int | getSeed (std::size_t id) |
unsigned int | getMasterSeed () const |
bool | isNodal () const |
ExecFlagType | getResetOnTime () const |
void | setRandomDataPointer (RandomData *random_data) |
virtual unsigned int | getElementIDIndex (const std::string &id_parameter_name, unsigned int comp=0) const |
virtual unsigned int | getElementIDIndexByName (const std::string &id_name) const |
virtual const dof_id_type & | getElementID (const std::string &id_parameter_name, unsigned int comp=0) const |
dof_id_type | getElementID (const Elem *elem, unsigned int elem_id_index) const |
virtual const dof_id_type & | getElementIDNeighbor (const std::string &id_parameter_name, unsigned int comp=0) const |
virtual const dof_id_type & | getElementIDByName (const std::string &id_name) const |
virtual const dof_id_type & | getElementIDNeighborByName (const std::string &id_name) const |
bool | hasElementID (const std::string &id_name) const |
dof_id_type | maxElementID (unsigned int elem_id_index) const |
dof_id_type | minElementID (unsigned int elem_id_index) const |
bool | areElemIDsIdentical (const std::string &id_name1, const std::string &id_name2) const |
std::unordered_map< dof_id_type, std::set< dof_id_type > > | getElemIDMapping (const std::string &id_name1, const std::string &id_name2) const |
std::set< dof_id_type > | getAllElemIDs (unsigned int elem_id_index) const |
std::set< dof_id_type > | getElemIDsOnBlocks (unsigned int elem_id_index, const std::set< SubdomainID > &blks) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
const GenericOptionalMaterialProperty< T, is_ad > & | getGenericOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const GenericOptionalMaterialProperty< T, is_ad > & | getGenericOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const OptionalMaterialProperty< T > & | getOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const OptionalMaterialProperty< T > & | getOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const OptionalADMaterialProperty< T > & | getOptionalADMaterialProperty (const std::string &name) |
const OptionalADMaterialProperty< T > & | getOptionalADMaterialProperty (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOld (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOld (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOlder (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOlder (const std::string &name) |
MaterialBase & | getMaterial (const std::string &name) |
MaterialBase & | getMaterial (const std::string &name) |
MaterialBase & | getMaterialByName (const std::string &name, bool no_warn=false) |
MaterialBase & | getMaterialByName (const std::string &name, bool no_warn=false) |
bool | hasMaterialProperty (const std::string &name) |
bool | hasMaterialProperty (const std::string &name) |
bool | hasMaterialPropertyByName (const std::string &name) |
bool | hasMaterialPropertyByName (const std::string &name) |
bool | hasADMaterialProperty (const std::string &name) |
bool | hasADMaterialProperty (const std::string &name) |
bool | hasADMaterialPropertyByName (const std::string &name) |
bool | hasADMaterialPropertyByName (const std::string &name) |
bool | hasGenericMaterialProperty (const std::string &name) |
bool | hasGenericMaterialProperty (const std::string &name) |
bool | hasGenericMaterialPropertyByName (const std::string &name) |
bool | hasGenericMaterialPropertyByName (const std::string &name) |
const Function & | getFunction (const std::string &name) const |
const Function & | getFunctionByName (const FunctionName &name) const |
bool | hasFunction (const std::string ¶m_name) const |
bool | hasFunctionByName (const FunctionName &name) const |
bool | isDefaultPostprocessorValue (const std::string ¶m_name, const unsigned int index=0) const |
bool | hasPostprocessor (const std::string ¶m_name, const unsigned int index=0) const |
bool | hasPostprocessorByName (const PostprocessorName &name) const |
std::size_t | coupledPostprocessors (const std::string ¶m_name) const |
const PostprocessorName & | getPostprocessorName (const std::string ¶m_name, const unsigned int index=0) const |
const VectorPostprocessorValue & | getVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name, bool needs_broadcast) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name, bool needs_broadcast) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
bool | hasVectorPostprocessor (const std::string ¶m_name, const std::string &vector_name) const |
bool | hasVectorPostprocessor (const std::string ¶m_name) const |
bool | hasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
bool | hasVectorPostprocessorByName (const VectorPostprocessorName &name) const |
const VectorPostprocessorName & | getVectorPostprocessorName (const std::string ¶m_name) const |
T & | getSampler (const std::string &name) |
Sampler & | getSampler (const std::string &name) |
T & | getSamplerByName (const SamplerName &name) |
Sampler & | getSamplerByName (const SamplerName &name) |
virtual void | meshChanged () |
PerfGraph & | perfGraph () |
const PostprocessorValue & | getPostprocessorValue (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValue (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOld (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOld (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOlder (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOlder (const std::string ¶m_name, const unsigned int index=0) const |
virtual const PostprocessorValue & | getPostprocessorValueByName (const PostprocessorName &name) const |
virtual const PostprocessorValue & | getPostprocessorValueByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOldByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOldByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOlderByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOlderByName (const PostprocessorName &name) const |
bool | isVectorPostprocessorDistributed (const std::string ¶m_name) const |
bool | isVectorPostprocessorDistributed (const std::string ¶m_name) const |
bool | isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const |
bool | isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const |
const Distribution & | getDistribution (const std::string &name) const |
const T & | getDistribution (const std::string &name) const |
const Distribution & | getDistribution (const std::string &name) const |
const T & | getDistribution (const std::string &name) const |
const Distribution & | getDistributionByName (const DistributionName &name) const |
const T & | getDistributionByName (const std::string &name) const |
const Distribution & | getDistributionByName (const DistributionName &name) const |
const T & | getDistributionByName (const std::string &name) 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 () |
static void | sort (typename std::vector< T > &vector) |
static void | sortDFS (typename std::vector< T > &vector) |
static void | cyclicDependencyError (CyclicDependencyException< T2 > &e, const std::string &header) |
Public Attributes | |
const ConsoleStream | _console |
Static Public Attributes | |
static constexpr PropertyValue::id_type | default_property_id |
static constexpr PropertyValue::id_type | zero_property_id |
static constexpr auto | SYSTEM |
static constexpr auto | NAME |
Protected Member Functions | |
virtual void | addPostprocessorDependencyHelper (const PostprocessorName &name) const override |
virtual void | addVectorPostprocessorDependencyHelper (const VectorPostprocessorName &name) const override |
virtual void | addUserObjectDependencyHelper (const UserObject &uo) const override |
void | addReporterDependencyHelper (const ReporterName &reporter_name) override |
const ReporterName & | getReporterName (const std::string ¶m_name) const |
T & | declareRestartableData (const std::string &data_name, Args &&... args) |
ManagedValue< T > | declareManagedRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args) |
const T & | getRestartableData (const std::string &data_name) const |
T & | declareRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args) |
T & | declareRecoverableData (const std::string &data_name, Args &&... args) |
T & | declareRestartableDataWithObjectName (const std::string &data_name, const std::string &object_name, Args &&... args) |
T & | declareRestartableDataWithObjectNameWithContext (const std::string &data_name, const std::string &object_name, void *context, Args &&... args) |
std::string | restartableName (const std::string &data_name) 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 |
virtual bool | hasBlockMaterialPropertyHelper (const std::string &prop_name) |
void | initializeBlockRestrictable (const MooseObject *moose_object) |
Moose::CoordinateSystemType | getBlockCoordSystem () |
virtual void | checkMaterialProperty (const std::string &name, const unsigned int state) |
void | markMatPropRequested (const std::string &) |
MaterialPropertyName | getMaterialPropertyName (const std::string &name) const |
void | checkExecutionStage () |
virtual void | coupledCallback (const std::string &, bool) const |
virtual bool | isCoupled (const std::string &var_name, unsigned int i=0) const |
virtual bool | isCoupledConstant (const std::string &var_name) const |
unsigned int | coupledComponents (const std::string &var_name) const |
VariableName | coupledName (const std::string &var_name, unsigned int comp=0) const |
std::vector< VariableName > | coupledNames (const std::string &var_name) const |
virtual unsigned int | coupled (const std::string &var_name, unsigned int comp=0) const |
std::vector< unsigned int > | coupledIndices (const std::string &var_name) const |
virtual const VariableValue & | coupledValue (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledValues (const std::string &var_name) const |
std::vector< const VectorVariableValue *> | coupledVectorValues (const std::string &var_name) const |
const GenericVariableValue< is_ad > & | coupledGenericValue (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< false > & | coupledGenericValue (const std::string &var_name, unsigned int comp) const |
const GenericVariableValue< true > & | coupledGenericValue (const std::string &var_name, unsigned int comp) const |
std::vector< const GenericVariableValue< is_ad > *> | coupledGenericValues (const std::string &var_name) const |
std::vector< const GenericVariableValue< false > *> | coupledGenericValues (const std::string &var_name) const |
std::vector< const GenericVariableValue< true > *> | coupledGenericValues (const std::string &var_name) const |
const GenericVariableValue< is_ad > & | coupledGenericDofValue (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< false > & | coupledGenericDofValue (const std::string &var_name, unsigned int comp) const |
const GenericVariableValue< true > & | coupledGenericDofValue (const std::string &var_name, unsigned int comp) const |
const GenericVariableValue< is_ad > & | coupledGenericDot (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< false > & | coupledGenericDot (const std::string &var_name, unsigned int comp) const |
const GenericVariableValue< true > & | coupledGenericDot (const std::string &var_name, unsigned int comp) const |
const GenericVariableValue< is_ad > & | coupledGenericDotDot (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< false > & | coupledGenericDotDot (const std::string &var_name, unsigned int comp) const |
const GenericVariableValue< true > & | coupledGenericDotDot (const std::string &var_name, unsigned int comp) const |
virtual const VariableValue & | coupledValueLower (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adCoupledValue (const std::string &var_name, unsigned int comp=0) const |
std::vector< const ADVariableValue *> | adCoupledValues (const std::string &var_name) const |
const ADVariableValue & | adCoupledLowerValue (const std::string &var_name, unsigned int comp=0) const |
const ADVectorVariableValue & | adCoupledVectorValue (const std::string &var_name, unsigned int comp=0) const |
std::vector< const ADVectorVariableValue *> | adCoupledVectorValues (const std::string &var_name) const |
virtual const VariableValue & | coupledVectorTagValue (const std::string &var_names, TagID tag, unsigned int index=0) const |
virtual const VariableValue & | coupledVectorTagValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
std::vector< const VariableValue *> | coupledVectorTagValues (const std::string &var_names, TagID tag) const |
std::vector< const VariableValue *> | coupledVectorTagValues (const std::string &var_names, const std::string &tag_name) const |
virtual const ArrayVariableValue & | coupledVectorTagArrayValue (const std::string &var_names, TagID tag, unsigned int index=0) const |
virtual const ArrayVariableValue & | coupledVectorTagArrayValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
std::vector< const ArrayVariableValue *> | coupledVectorTagArrayValues (const std::string &var_names, TagID tag) const |
std::vector< const ArrayVariableValue *> | coupledVectorTagArrayValues (const std::string &var_names, const std::string &tag_name) const |
virtual const VariableGradient & | coupledVectorTagGradient (const std::string &var_names, TagID tag, unsigned int index=0) const |
virtual const VariableGradient & | coupledVectorTagGradient (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
std::vector< const VariableGradient *> | coupledVectorTagGradients (const std::string &var_names, TagID tag) const |
std::vector< const VariableGradient *> | coupledVectorTagGradients (const std::string &var_names, const std::string &tag_name) const |
virtual const ArrayVariableGradient & | coupledVectorTagArrayGradient (const std::string &var_names, TagID tag, unsigned int index=0) const |
virtual const ArrayVariableGradient & | coupledVectorTagArrayGradient (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
std::vector< const ArrayVariableGradient *> | coupledVectorTagArrayGradients (const std::string &var_names, TagID tag) const |
std::vector< const ArrayVariableGradient *> | coupledVectorTagArrayGradients (const std::string &var_names, const std::string &tag_name) const |
virtual const VariableValue & | coupledVectorTagDofValue (const std::string &var_name, TagID tag, unsigned int index=0) const |
virtual const VariableValue & | coupledVectorTagDofValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
const ArrayVariableValue & | coupledVectorTagArrayDofValue (const std::string &var_name, const std::string &tag_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledVectorTagDofValues (const std::string &var_names, TagID tag) const |
std::vector< const VariableValue *> | coupledVectorTagDofValues (const std::string &var_names, const std::string &tag_name) const |
virtual const VariableValue & | coupledMatrixTagValue (const std::string &var_names, TagID tag, unsigned int index=0) const |
virtual const VariableValue & | coupledMatrixTagValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
std::vector< const VariableValue *> | coupledMatrixTagValues (const std::string &var_names, TagID tag) const |
std::vector< const VariableValue *> | coupledMatrixTagValues (const std::string &var_names, const std::string &tag_name) const |
virtual const VectorVariableValue & | coupledVectorValue (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayValue (const std::string &var_name, unsigned int comp=0) const |
std::vector< const ArrayVariableValue *> | coupledArrayValues (const std::string &var_name) const |
MooseWritableVariable & | writableVariable (const std::string &var_name, unsigned int comp=0) |
virtual VariableValue & | writableCoupledValue (const std::string &var_name, unsigned int comp=0) |
void | checkWritableVar (MooseWritableVariable *var) |
virtual const VariableValue & | coupledValueOld (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledValuesOld (const std::string &var_name) const |
virtual const VariableValue & | coupledValueOlder (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledValuesOlder (const std::string &var_name) const |
virtual const VariableValue & | coupledValuePreviousNL (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorValueOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorValueOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayValueOld (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayValueOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableGradient & | coupledGradient (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableGradient *> | coupledGradients (const std::string &var_name) const |
const ADVariableGradient & | adCoupledGradient (const std::string &var_name, unsigned int comp=0) const |
const ADVariableGradient & | adCoupledGradientDot (const std::string &var_name, unsigned int comp=0) const |
std::vector< const ADVariableGradient *> | adCoupledGradients (const std::string &var_name) const |
const GenericVariableGradient< is_ad > & | coupledGenericGradient (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableGradient< false > & | coupledGenericGradient (const std::string &var_name, unsigned int comp) const |
const GenericVariableGradient< true > & | coupledGenericGradient (const std::string &var_name, unsigned int comp) const |
std::vector< const GenericVariableGradient< is_ad > *> | coupledGenericGradients (const std::string &var_name) const |
std::vector< const GenericVariableGradient< false > *> | coupledGenericGradients (const std::string &var_name) const |
std::vector< const GenericVariableGradient< true > *> | coupledGenericGradients (const std::string &var_name) const |
const ADVectorVariableGradient & | adCoupledVectorGradient (const std::string &var_name, unsigned int comp=0) const |
const ADVariableSecond & | adCoupledSecond (const std::string &var_name, unsigned int comp=0) const |
const ADVectorVariableSecond & | adCoupledVectorSecond (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableGradient & | coupledGradientOld (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableGradient *> | coupledGradientsOld (const std::string &var_name) const |
virtual const VariableGradient & | coupledGradientOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableGradient & | coupledGradientPreviousNL (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableGradient & | coupledGradientDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableGradient & | coupledGradientDotDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableGradient & | coupledVectorGradient (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableGradient & | coupledVectorGradientOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableGradient & | coupledVectorGradientOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableGradient & | coupledArrayGradient (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableGradient & | coupledArrayGradientOld (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableGradient & | coupledArrayGradientOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableGradient & | coupledArrayGradientDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableCurl & | coupledCurl (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableCurl & | coupledCurlOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableCurl & | coupledCurlOlder (const std::string &var_name, unsigned int comp=0) const |
const ADVectorVariableCurl & | adCoupledCurl (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableDivergence & | coupledDiv (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableDivergence & | coupledDivOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableDivergence & | coupledDivOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableSecond & | coupledSecond (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableSecond & | coupledSecondOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableSecond & | coupledSecondOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableSecond & | coupledSecondPreviousNL (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDot (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledDots (const std::string &var_name) const |
virtual const VariableValue & | coupledDotDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDotDotOld (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adCoupledDot (const std::string &var_name, unsigned int comp=0) const |
std::vector< const ADVariableValue *> | adCoupledDots (const std::string &var_name) const |
const ADVariableValue & | adCoupledDotDot (const std::string &var_name, unsigned int comp=0) const |
const ADVectorVariableValue & | adCoupledVectorDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorDotDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorDotDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledVectorDotDu (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledVectorDotDotDu (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayDot (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayDotDot (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayDotDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDotDu (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDotDotDu (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledArrayDotDu (const std::string &var_name, unsigned int comp=0) const |
const T & | coupledNodalValue (const std::string &var_name, unsigned int comp=0) const |
const Moose::ADType< T >::type & | adCoupledNodalValue (const std::string &var_name, unsigned int comp=0) const |
const T & | coupledNodalValueOld (const std::string &var_name, unsigned int comp=0) const |
const T & | coupledNodalValueOlder (const std::string &var_name, unsigned int comp=0) const |
const T & | coupledNodalValuePreviousNL (const std::string &var_name, unsigned int comp=0) const |
const T & | coupledNodalDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledNodalDotDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledNodalDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledNodalDotDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDofValues (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledAllDofValues (const std::string &var_name) const |
virtual const VariableValue & | coupledDofValuesOld (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledAllDofValuesOld (const std::string &var_name) const |
virtual const VariableValue & | coupledDofValuesOlder (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledAllDofValuesOlder (const std::string &var_name) const |
virtual const ArrayVariableValue & | coupledArrayDofValues (const std::string &var_name, unsigned int comp=0) const |
virtual const ADVariableValue & | adCoupledDofValues (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adZeroValue () const |
const ADVariableGradient & | adZeroGradient () const |
const ADVariableSecond & | adZeroSecond () const |
const GenericVariableValue< is_ad > & | genericZeroValue () |
const GenericVariableValue< false > & | genericZeroValue () |
const GenericVariableValue< true > & | genericZeroValue () |
const GenericVariableGradient< is_ad > & | genericZeroGradient () |
const GenericVariableGradient< false > & | genericZeroGradient () |
const GenericVariableGradient< true > & | genericZeroGradient () |
const GenericVariableSecond< is_ad > & | genericZeroSecond () |
const GenericVariableSecond< false > & | genericZeroSecond () |
const GenericVariableSecond< true > & | genericZeroSecond () |
bool | checkVar (const std::string &var_name, unsigned int comp=0, unsigned int comp_bound=0) const |
const MooseVariableFieldBase * | getFEVar (const std::string &var_name, unsigned int comp) const |
const MooseVariableFieldBase * | getFieldVar (const std::string &var_name, unsigned int comp) const |
MooseVariableFieldBase * | getFieldVar (const std::string &var_name, unsigned int comp) |
const T * | getVarHelper (const std::string &var_name, unsigned int comp) const |
T * | getVarHelper (const std::string &var_name, unsigned int comp) |
MooseVariable * | getVar (const std::string &var_name, unsigned int comp) |
const MooseVariable * | getVar (const std::string &var_name, unsigned int comp) const |
VectorMooseVariable * | getVectorVar (const std::string &var_name, unsigned int comp) |
const VectorMooseVariable * | getVectorVar (const std::string &var_name, unsigned int comp) const |
ArrayMooseVariable * | getArrayVar (const std::string &var_name, unsigned int comp) |
const ArrayMooseVariable * | getArrayVar (const std::string &var_name, unsigned int comp) const |
void | validateExecutionerType (const std::string &name, const std::string &fn_name) const |
std::vector< T > | coupledVectorHelper (const std::string &var_name, const Func &func) const |
bool | isCoupledScalar (const std::string &var_name, unsigned int i=0) const |
unsigned int | coupledScalarComponents (const std::string &var_name) const |
unsigned int | coupledScalar (const std::string &var_name, unsigned int comp=0) const |
libMesh::Order | coupledScalarOrder (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarValue (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adCoupledScalarValue (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< is_ad > & | coupledGenericScalarValue (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< false > & | coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const |
const GenericVariableValue< true > & | coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const |
const VariableValue & | coupledVectorTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const |
const VariableValue & | coupledMatrixTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const |
const VariableValue & | coupledScalarValueOld (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarValueOlder (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDot (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adCoupledScalarDot (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDot (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotOld (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDotOld (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDu (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDotDu (const std::string &var_name, unsigned int comp=0) const |
const MooseVariableScalar * | getScalarVar (const std::string &var_name, unsigned int comp) const |
void | addMooseVariableDependency (MooseVariableFieldBase *var) |
void | addMooseVariableDependency (const std::vector< MooseVariableFieldBase * > &vars) |
const T & | getReporterValue (const std::string ¶m_name, const std::size_t time_index=0) |
const T & | getReporterValue (const std::string ¶m_name, ReporterMode mode, const std::size_t time_index=0) |
const T & | getReporterValue (const std::string ¶m_name, const std::size_t time_index=0) |
const T & | getReporterValue (const std::string ¶m_name, ReporterMode mode, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0) |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
const GenericMaterialProperty< T, is_ad > * | defaultGenericMaterialProperty (const std::string &name) |
const GenericMaterialProperty< T, is_ad > * | defaultGenericMaterialProperty (const std::string &name) |
const MaterialProperty< T > * | defaultMaterialProperty (const std::string &name) |
const MaterialProperty< T > * | defaultMaterialProperty (const std::string &name) |
const ADMaterialProperty< T > * | defaultADMaterialProperty (const std::string &name) |
const ADMaterialProperty< T > * | defaultADMaterialProperty (const std::string &name) |
Static Protected Member Functions | |
static std::string | meshPropertyName (const std::string &data_name, const std::string &prefix) |
Static Protected Attributes | |
static const std::string | _interpolated_old |
static const std::string | _interpolated_older |
Private Member Functions | |
void | gatherElementData () |
Gathers element date necessary to perform the bisection algorithm for optimization. More... | |
void | performOptimCritLoop () |
Performs the optimality criterion loop (bisection) More... | |
Real | computeUpdatedDensity (Real current_density, Real dc, Real lmid) |
Private Attributes | |
Real | _total_allowable_volume |
Total volume allowed for volume contraint. More... | |
std::map< dof_id_type, ElementData > | _elem_data_map |
Data structure to hold old density, sensitivity, volume, current density. More... | |
const Real | _lower_bound |
Lower bound for bisection algorithm. More... | |
const Real | _upper_bound |
Upper bound for bisection algorithm. More... | |
Element user object that performs SIMP optimization using a bisection algorithm using a volume constraint.
Definition at line 19 of file DensityUpdate.h.
DensityUpdate::DensityUpdate | ( | const InputParameters & | parameters | ) |
Definition at line 31 of file DensityUpdate.C.
Definition at line 137 of file DensityUpdate.C.
Referenced by performOptimCritLoop().
|
overridevirtual |
Implements ElementUserObject.
Definition at line 53 of file DensityUpdate.C.
|
inlineoverridevirtual |
|
private |
Gathers element date necessary to perform the bisection algorithm for optimization.
Definition at line 71 of file DensityUpdate.C.
Referenced by timestepSetup().
|
inlineoverridevirtual |
|
private |
Performs the optimality criterion loop (bisection)
Definition at line 95 of file DensityUpdate.C.
Referenced by timestepSetup().
|
inlineoverridevirtual |
|
overridevirtual |
Reimplemented from ElementUserObject.
Definition at line 46 of file DensityUpdate.C.
|
static |
Definition at line 16 of file DensityUpdate.C.
|
protected |
The filtered density sensitivity variable.
Definition at line 42 of file DensityUpdate.h.
Referenced by gatherElementData().
|
protected |
The elasticity compliance sensitivity name.
Definition at line 38 of file DensityUpdate.h.
|
protected |
The pseudo-density variable.
Definition at line 40 of file DensityUpdate.h.
Referenced by DensityUpdate(), execute(), and gatherElementData().
|
protected |
The name of the pseudo-density variable.
Definition at line 36 of file DensityUpdate.h.
|
private |
Data structure to hold old density, sensitivity, volume, current density.
Definition at line 76 of file DensityUpdate.h.
Referenced by execute(), gatherElementData(), and performOptimCritLoop().
|
private |
Lower bound for bisection algorithm.
Definition at line 79 of file DensityUpdate.h.
Referenced by performOptimCritLoop().
|
protected |
|
private |
Total volume allowed for volume contraint.
Definition at line 73 of file DensityUpdate.h.
Referenced by gatherElementData(), and performOptimCritLoop().
|
private |
Upper bound for bisection algorithm.
Definition at line 81 of file DensityUpdate.h.
Referenced by performOptimCritLoop().
|
protected |
The volume fraction to be enforced.
Definition at line 44 of file DensityUpdate.h.
Referenced by gatherElementData().