49 #define OOFEM_MAPPING_CHECK_REGIONS 60 #ifdef OOFEM_MAPPING_CHECK_REGIONS 68 for ( inode = 1; inode <= nd_nnodes; inode++ ) {
76 #ifdef OOFEM_MAPPING_CHECK_REGIONS 81 for (
int indx = 1; indx <= nodeConnectivity->
giveSize(); indx++ ) {
89 for (
int ii = 1; ii <= dofidMask.
giveSize(); ii++ ) {
92 if ( it != node->
end() ) {
97 answer.
at( eq ) += unknownValues.
at(ii);
102 OOFEM_ERROR(
"evaluateAt service failed for node %d", inode);
122 double mindist = 0.0, distance;
124 for (
int i = 1; i <= regList.
giveSize(); ++i ) {
126 if ( tmpelem != NULL ) {
128 if ( distance < mindist || i == 1 ) {
131 if ( distance == 0.0 ) {
139 OOFEM_WARNING(
"Couldn't find any element containing point.");
The base class for all spatial localizers.
The representation of EngngModel default unknown numbering.
virtual int giveNumberOfDomainEquations(int di, const UnknownNumberingScheme &num)
Returns number of equations for given domain in active (current time step) time step.
int giveNumberOfDofManagers() const
Returns number of dof managers in domain.
EIPrimaryUnknownMapper()
Constructor.
bool isEmpty() const
Checks if receiver is empty (i.e., zero sized).
double & at(int i)
Coefficient access function.
ValueModeType
Type representing the mode of UnknownType or CharType, or similar types.
ConnectivityTable * giveConnectivityTable()
Returns receiver's associated connectivity table.
bool insertSortedOnce(int value, int allocChunk=0)
Inserts given value into a receiver, which is assumed to be sorted.
virtual int evaluateAt(FloatArray &answer, IntArray &dofMask, ValueModeType mode, Domain *oldd, FloatArray &coords, IntArray ®List, TimeStep *tStep)
Evaluates the vector of primary unknowns, determined by domain, at given point.
virtual FloatArray * giveCoordinates()
EngngModel * giveEngngModel()
Returns engineering model to which receiver is associated.
Abstract base class for all finite elements.
Base class for dof managers.
int giveNumber()
Returns domain number.
Class implementing an array of integers.
int & at(int i)
Coefficient access function.
Element * giveElement(int n)
Service for accessing particular domain fe element.
void clear()
Clears the array (zero size).
DofIDItem
Type representing particular dof type.
SpatialLocalizer * giveSpatialLocalizer()
Returns receiver's associated spatial localizer.
virtual bool isPrimaryDof()
Tests if receiver is primary DOF.
Class representing connectivity table.
virtual void giveElementDofIDMask(IntArray &answer) const
Returns element dof mask for node.
double distance_square(const FloatArray &iP1, const FloatArray &iP2, double &oXi, double &oXiUnbounded) const
void resize(int n)
Checks size of receiver towards requested bounds.
The base class for all primary unknowns mappers.
Class representing vector of real numbers.
const IntArray * giveDofManConnectivityArray(int dofman)
virtual Element * giveElementClosestToPoint(FloatArray &lcoords, FloatArray &closest, const FloatArray &coords, int region=0)=0
Returns the element closest to a given point.
std::vector< Dof * >::const_iterator findDofWithDofId(DofIDItem dofID) const
Finds index of DOF with required physical meaning of receiver.
virtual int mapAndUpdate(FloatArray &answer, ValueModeType mode, Domain *oldd, Domain *newd, TimeStep *tStep)
Maps and updates the vector(s) of primary unknowns from old mesh oldd to new mesh newd...
void zero()
Zeroes all coefficients of receiver.
int giveEquationNumber(const UnknownNumberingScheme &s)
Returns equation number of receiver for given equation numbering scheme.
virtual void computeField(ValueModeType mode, TimeStep *tStep, const FloatArray &lcoords, FloatArray &answer)
Computes the unknown vector interpolated at the specified local coordinates.
Node * giveNode(int n)
Service for accessing particular domain node.
the oofem namespace is to define a context or scope in which all oofem names are defined.
std::vector< Dof * >::iterator end()
Abstract class Dof represents Degree Of Freedom in finite element mesh.
DofManager is local, there are no contribution from other domains to this DofManager.
#define OOFEM_WARNING(...)
Class representing solution step.
DofManager is shared by neighboring partitions, it is necessary to sum contributions from all contrib...
dofManagerParallelMode giveParallelMode() const
Return dofManagerParallelMode of receiver.
void resize(int s)
Resizes receiver towards requested size.