|
OOFEM 3.0
|
#include <slavenode.h>
Public Member Functions | |
| SlaveNode (int n, Domain *aDomain) | |
| virtual | ~SlaveNode (void) |
| Destructor. | |
| void | initializeFrom (InputRecord &ir, int priority) override |
| void | postInitialize () override |
| Performs post initialization steps. Called after all components are created and initialized. | |
| bool | isDofTypeCompatible (dofType type) const override |
| Returns true if dof of given type is allowed to be associated to receiver. | |
| void | updateLocalNumbering (EntityRenumberingFunctor &f) override |
| const char * | giveClassName () const override |
| const char * | giveInputRecordName () const override |
| Public Member Functions inherited from oofem::Node | |
| Node (int n, Domain *aDomain) | |
| void | setCoordinates (FloatArray coords) |
| virtual double | giveUpdatedCoordinate (int ic, TimeStep *tStep, double scale=1.) |
| virtual void | giveUpdatedCoordinates (FloatArray &answer, TimeStep *tStep, double scale=1.) |
| bool | hasLocalCS () |
| Returns nonzero if node has prescribed local coordinate system. | |
| FloatMatrix * | giveLocalCoordinateTriplet () |
| bool | hasSameLCS (Node *remote) |
| bool | computeL2GTransformation (FloatMatrix &answer, const IntArray &dofIDArry) override |
| bool | requiresTransformation () override |
| void | computeLoadVector (FloatArray &answer, Load *load, CharType type, TimeStep *tStep, ValueModeType mode) override |
| void | updateYourself (TimeStep *tStep) override |
| void | initializeFrom (InputRecord &ir) override |
| void | initializeFinish () override |
| Performs post initialization steps. | |
| void | giveInputRecord (DynamicInputRecord &input) override |
| void | printYourself () override |
| Prints receiver state on stdout. Useful for debugging. | |
| int | checkConsistency () override |
| virtual int | giveQcNodeType () |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| void | drawYourself (oofegGraphicContext &gc, TimeStep *tStep) override |
| Public Member Functions inherited from oofem::DofManager | |
| std::vector< Dof * >::iterator | begin () |
| std::vector< Dof * >::iterator | end () |
| std::vector< Dof * >::const_iterator | begin () const |
| std::vector< Dof * >::const_iterator | end () const |
| DofManager (int n, Domain *aDomain) | |
| virtual | ~DofManager () |
| Destructor. | |
| Dof * | giveDofWithID (int dofID) const |
| int | giveNumberOfDofs () const |
| void | askNewEquationNumbers (TimeStep *tStep) |
| Renumbers all contained DOFs. | |
| int | giveNumberOfPrimaryMasterDofs (const IntArray &dofIDArray) const |
| void | giveLocationArray (const IntArray &dofIDArry, IntArray &locationArray, const UnknownNumberingScheme &s) const |
| void | giveMasterDofIDArray (const IntArray &dofIDArry, IntArray &masterDofIDs) const |
| void | giveCompleteLocationArray (IntArray &locationArray, const UnknownNumberingScheme &s) const |
| void | giveCompleteMasterDofIDArray (IntArray &dofIDArray) const |
| std::vector< Dof * >::const_iterator | findDofWithDofId (DofIDItem dofID) const |
| void | giveUnknownVector (FloatArray &answer, const IntArray &dofMask, ValueModeType mode, TimeStep *tStep, bool padding=false) |
| void | giveUnknownVector (FloatArray &answer, const IntArray &dofMask, PrimaryField &field, ValueModeType mode, TimeStep *tStep, bool padding=false) |
| void | giveCompleteUnknownVector (FloatArray &answer, ValueModeType mode, TimeStep *tStep) |
| void | giveUnknownVectorOfType (FloatArray &answer, UnknownType ut, ValueModeType mode, TimeStep *tStep) |
| virtual void | givePrescribedUnknownVector (FloatArray &answer, const IntArray &dofMask, ValueModeType mode, TimeStep *tStep) |
| bool | computeM2GTransformation (FloatMatrix &answer, const IntArray &dofIDArry) |
| virtual bool | computeM2LTransformation (FloatMatrix &answer, const IntArray &dofIDArry) |
| IntArray * | giveLoadArray () |
| void | setLoadArray (IntArray &load) |
| double | giveCoordinate (int i) const |
| const FloatArray & | giveCoordinates () const |
| void | setCoordinates (const FloatArray &coords) |
| Set coordinates. | |
| const IntArray * | giveForcedDofIDs () |
| std ::map< int, int > * | giveDofTypeMap () |
| std ::map< int, int > * | giveMasterMap () |
| std ::map< int, int > * | giveBcMap () |
| std ::map< int, int > * | giveIcMap () |
| void | printOutputAt (FILE *file, TimeStep *tStep) override |
| bool | isBoundary () |
| void | setBoundaryFlag (bool isBoundary) |
| virtual bool | hasAnySlaveDofs () |
| virtual bool | giveMasterDofMans (IntArray &masters) |
| void | setNumberOfDofs (int _ndofs) |
| void | appendDof (Dof *dof) |
| void | removeDof (DofIDItem id) |
| bool | hasDofID (DofIDItem id) const |
| int | giveGlobalNumber () const |
| int | giveLabel () const |
| void | setGlobalNumber (int newNumber) |
| dofManagerParallelMode | giveParallelMode () const |
| void | setParallelMode (dofManagerParallelMode _mode) |
| const IntArray * | givePartitionList () |
| void | setPartitionList (const IntArray *_p) |
| void | removePartitionFromList (int _part) |
| Removes given partition from receiver list. | |
| void | mergePartitionList (IntArray &_p) |
| Merges receiver partition list with given lists. | |
| int | givePartitionsConnectivitySize () |
| bool | isLocal () |
| Returns true if receiver is locally maintained. | |
| bool | isShared () |
| Returns true if receiver is shared. | |
| bool | isNull () |
| Returns true if receiver is shared. | |
| Public Member Functions inherited from oofem::FEMComponent | |
| FEMComponent (int n, Domain *d) | |
| virtual | ~FEMComponent ()=default |
| Virtual destructor. | |
| Domain * | giveDomain () const |
| virtual void | setDomain (Domain *d) |
| int | giveNumber () const |
| void | setNumber (int num) |
| virtual Interface * | giveInterface (InterfaceType t) |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). | |
Protected Attributes | |
| IntArray | masterDofManagers |
| Master nodes for all dofs. | |
| FloatArray | masterWeights |
| Common dof weights for each master node. | |
| Protected Attributes inherited from oofem::Node | |
| std::unique_ptr< FloatMatrix > | localCoordinateSystem |
| Protected Attributes inherited from oofem::DofManager | |
| FloatArray | coordinates |
| Array storing nodal coordinates. | |
| std::vector< Dof * > | dofArray |
| Array of DOFs. | |
| IntArray | loadArray |
| List of applied loads. | |
| bool | isBoundaryFlag |
| bool | hasSlaveDofs |
| Flag indicating whether receiver has slave DOFs. | |
| int | globalNumber |
| dofManagerParallelMode | parallel_mode |
| IntArray | partitions |
| IntArray | dofidmask |
| List of additional dof ids to include. | |
| std ::map< int, int > | dofTypemap |
| Map from DofIDItem to dofType. | |
| std ::map< int, int > | dofMastermap |
| Map from DofIDItem to master node. | |
| std ::map< int, int > | dofBCmap |
| Map from DofIDItem to bc (to be removed). | |
| std ::map< int, int > | dofICmap |
| Map from DofIDItem to ic (to be removed). | |
| IntArray | mBC |
| Protected Attributes inherited from oofem::FEMComponent | |
| int | number |
| Component number. | |
| Domain * | domain |
| Link to domain object, useful for communicating with other FEM components. | |
Static Protected Attributes | |
| static ParamKey | IPK_SlaveNode_masterDofManagers |
| static ParamKey | IPK_SlaveNode_weights |
| Static Protected Attributes inherited from oofem::Node | |
| static ParamKey | IPK_Node_lcs |
| static ParamKey | IPK_Node_coords |
Additional Inherited Members | |
| Static Public Attributes inherited from oofem::DofManager | |
| static ParamKey | IPK_DofManager_dofidmask |
| static ParamKey | IPK_DofManager_load |
| static ParamKey | IPK_DofManager_bc |
| static ParamKey | IPK_DofManager_ic |
| static ParamKey | IPK_DofManager_mastermask |
| static ParamKey | IPK_DofManager_doftypemask |
| static ParamKey | IPK_DofManager_boundaryflag |
| static ParamKey | IPK_DofManager_globnum |
| static ParamKey | IPK_DofManager_partitions |
| static ParamKey | IPK_DofManager_sharedflag |
| static ParamKey | IPK_DofManager_remoteflag |
| static ParamKey | IPK_DofManager_nullflag |
Class implementing slave node connected to other nodes (masters) using predetermined weights. Hanging node possess no degrees of freedom - all values are interpolated from corresponding master dofs.
The contributions of hanging node are localized directly to master related equations. The node can not have its own boundary or initial conditions, they are determined completely from master dof conditions except for dofs of master type.
Definition at line 57 of file slavenode.h.
|
inline |
Constructor. Creates a hanging node with number n, belonging to aDomain.
Definition at line 74 of file slavenode.h.
References oofem::Node::Node().
|
inlinevirtual |
Destructor.
Definition at line 76 of file slavenode.h.
|
inlineoverridevirtual |
Reimplemented from oofem::Node.
Definition at line 83 of file slavenode.h.
|
inlineoverridevirtual |
Reimplemented from oofem::Node.
Definition at line 84 of file slavenode.h.
References _IFT_SlaveNode_Name.
|
overridevirtual |
Reimplemented from oofem::Node.
Definition at line 51 of file slavenode.C.
References oofem::FEMComponent::giveDomain(), IPK_SlaveNode_masterDofManagers, IPK_SlaveNode_weights, masterDofManagers, masterWeights, oofem::FEMComponent::number, and PM_UPDATE_PARAMETER.
|
inlineoverridevirtual |
Returns true if dof of given type is allowed to be associated to receiver.
Reimplemented from oofem::Node.
Definition at line 80 of file slavenode.h.
|
overridevirtual |
Performs post initialization steps. Called after all components are created and initialized.
Reimplemented from oofem::DofManager.
Definition at line 62 of file slavenode.C.
References oofem::ComponentInputException::ctDofManager, oofem::FEMComponent::giveDomain(), oofem::SlaveDof::initialize(), IPK_SlaveNode_masterDofManagers, IPK_SlaveNode_weights, masterDofManagers, masterWeights, oofem::FEMComponent::number, and PM_ELEMENT_ERROR_IFNOTSET.
|
overridevirtual |
Local renumbering support. For some tasks (parallel load balancing, for example) it is necessary to renumber the entities. The various FEM components (such as nodes or elements) typically contain links to other entities in terms of their local numbers, etc. This service allows to update these relations to reflect updated numbering. The renumbering function is passed, which is supposed to return an updated number of specified entity type based on old number.
Reimplemented from oofem::DofManager.
Definition at line 88 of file slavenode.C.
References oofem::ERS_DofManager, and masterDofManagers.
|
staticprotected |
Definition at line 65 of file slavenode.h.
Referenced by initializeFrom(), and postInitialize().
|
staticprotected |
Definition at line 66 of file slavenode.h.
Referenced by initializeFrom(), and postInitialize().
|
protected |
Master nodes for all dofs.
Definition at line 61 of file slavenode.h.
Referenced by initializeFrom(), postInitialize(), and updateLocalNumbering().
|
protected |
Common dof weights for each master node.
Definition at line 63 of file slavenode.h.
Referenced by initializeFrom(), and postInitialize().