38 #include "../sm/EngineeringModels/qclinearstatic.h"    85         OOFEM_ERROR(
"\"qcNode\" can be used only in \"QClinearStatic\" EngngModel");
   104             for ( 
int i = 1; i <= countOfMasterNodes; i++ ) {
   106                     OOFEM_WARNING(
"Mismatch in parallel mode of qcNode and master");
   155             OOFEM_ERROR(
"Couldn't find closest element (automatically).");
   171     for ( 
Dof *dof : *
this ) {
   177                 OOFEM_ERROR(
"Requested interpolation for dof id %d doesn't exist in element %d.",
   180 #if 0 // This won't work (yet), as it requires some more general FEI classes, or something similar.   181             if ( fei->hasMultiField() ) {
   183                 IntArray masterDofIDs, masterNodesDup, dofids;
   185                 masterContribution.flatten(multiContribution);
   186                 masterDofIDs.
clear();
   191                 sdof->
initialize(masterNodesDup, & masterDofIDs, masterContribution);
   230         OOFEM_ERROR(
"qcNode is used in unsupported Engineering Models");
   254         this->
dofTypemap = 
new std :: map< int, int >();
   259     if ( DofTypeMapSize == 0 ) {
   266         for ( 
int i = 1; i <= DofTypeMapSize; i++ ) {
   281         for ( 
Dof *dof : *
this ) {
   286         for ( 
Dof *dof : *
this ) {
 
The base class for all spatial localizers. 
 
int giveNumberOfColumns() const 
Returns number of columns of receiver. 
 
virtual bool nodeInFullSolvedDomainTest(Node *n)
 
virtual void evalN(FloatArray &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo)=0
Evaluates the array of interpolation functions (shape functions) at given point. 
 
virtual int giveQcNodeType()
 
int giveGlobalNumber() const 
 
Domain * domain
Link to domain object, useful for communicating with other FEM components. 
 
virtual int giveQcApproachNumber()
 
virtual void postInitialize()
Performs post-initialization such like checking if there are any slave dofs etc. 
 
virtual int checkConsistency()
Allows programmer to test some internal data, before computation begins. 
 
EngngModel * giveEngngModel()
Returns engineering model to which receiver is associated. 
 
void printOutputAt(FILE *stream, TimeStep *tStep)
Prints output of receiver to stream, for given time step. 
 
const IntArray & giveDefaultNodeDofIDArry()
Returns default DofID array which defines physical meaning of particular DOFs. 
 
Abstract base class for all finite elements. 
 
virtual int giveMasterElementNumber()
 
virtual void printDofOutputAt(FILE *stream, Dof *iDof, TimeStep *tStep)
DOF printing routine. 
 
virtual void setAsRepnode()
 
#define _IFT_qcNode_masterElement
 
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record. 
 
Class implementing an array of integers. 
 
virtual FEInterpolation * giveInterpolation() const 
 
bool hasSameLCS(Node *remote)
Returns true, if the local coordinate systems of receiver and given node are the same. 
 
virtual int giveNumberOfNodes() const 
Returns number of nodes of receiver. 
 
Class representing a general abstraction for finite element interpolation class. 
 
This class implements linear static engineering problem. 
 
std::map< int, int > * giveDofTypeMap()
Returns map from DofIDItem to dofType. 
 
virtual void setAsHanging()
 
const IntArray & giveDofManArray() const 
 
Element * giveElement(int n)
Service for accessing particular domain fe element. 
 
virtual void postInitializeAsHangingNode()
 
REGISTER_DofManager(ElementSide)
 
void initialize(const IntArray &masterNodes, const IntArray &mstrDofID, const FloatArray &mstrContribution)
 
void clear()
Clears the array (zero size). 
 
int masterRegion
Region of the master element (used for automatic detection). 
 
DofIDItem
Type representing particular dof type. 
 
virtual int checkConsistency()
Allows programmer to test some internal data, before computation begins. 
 
SpatialLocalizer * giveSpatialLocalizer()
Returns receiver's associated spatial localizer. 
 
DofIDItem giveDofID() const 
Returns DofID value of receiver, which determines type of of unknown connected to receiver (e...
 
Wrapper around element definition to provide FEICellGeometry interface. 
 
virtual int global2local(FloatArray &answer, const FloatArray &gcoords, const FEICellGeometry &cellgeo)=0
Evaluates local coordinates from given global ones. 
 
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record. 
 
int qcNodeTypeLabel
Type of qcNode (0 deactive, 1 master, 2 hanging) 
 
FloatArray coordinates
Array storing nodal coordinates. 
 
Class representing vector of real numbers. 
 
virtual int init(bool force=false)
Initialize receiver data structure if not done previously If force is set to true, the initialization is enforced (useful if domain geometry has changed) 
 
dofManagerParallelMode parallel_mode
 
Implementation of matrix containing floating point numbers. 
 
IRResultType
Type defining the return values of InputRecord reading operations. 
 
virtual const char * giveClassName() const 
 
virtual void postInitialize()
Performs post-initialization such like checking if there are any slave dofs etc. 
 
virtual Element * giveElementClosestToPoint(FloatArray &lcoords, FloatArray &closest, const FloatArray &coords, int region=0)=0
Returns the element closest to a given point. 
 
bool initialized
Flag whether node is fully initialized already. 
 
int masterElement
Number of the master element. 
 
void followedBy(const IntArray &b, int allocChunk=0)
Appends array b at the end of receiver. 
 
std::map< int, int > * dofTypemap
Map from DofIDItem to dofType. 
 
qcNode(int n, Domain *aDomain)
Constructor. 
 
virtual bool initializeAsRepnode()
 
Domain * giveDomain() const 
 
Abstract base class representing the "problem" under consideration. 
 
int giveSize() const 
Returns the size of receiver. 
 
the oofem namespace is to define a context or scope in which all oofem names are defined. 
 
Class implementing node in finite element mesh. 
 
#define _IFT_qcNode_masterRegion
 
Abstract class Dof represents Degree Of Freedom in finite element mesh. 
 
Node * giveNode(int i) const 
Returns reference to the i-th node of element. 
 
DofManager is local, there are no contribution from other domains to this DofManager. 
 
#define OOFEM_WARNING(...)
 
Class representing "slave" degree of freedom. 
 
Class representing solution step. 
 
dofManagerParallelMode giveParallelMode() const 
Return dofManagerParallelMode of receiver.