35 bool enforceCornerPeriodicity =
false;
43 iPos [ 0 ] -
mCenterCoord [ 0 ], iPos [ 1 ] - mCenterCoord [ 1 ]
50 oDuplicatable =
false;
53 if ( iPos.
distance(cornerPos) < iNodeDistTol ) {
61 if ( iPos.
distance(cornerPos) < iNodeDistTol ) {
69 if ( iPos.
distance(cornerPos) < iNodeDistTol ) {
77 if ( iPos.
distance(cornerPos) < iNodeDistTol ) {
virtual void checkIfCorner(bool &oIsCorner, bool &oDuplicatable, const FloatArray &iPos, const double &iNodeDistTol) const
bool mMeshIsPeriodic
true -> the traction lives only on gammaPlus, so that we get strong periodicity as a special case...
FloatArray mCenterCoord
Center coordinate .
virtual ~PrescribedGradientBCWeakDirichlet()
REGISTER_BoundaryCondition(BoundaryCondition)
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
FloatArray mUC
Upper corner of domain (assuming a rectangular RVE)
virtual void giveBoundaryCoordVector(FloatArray &oX, const FloatArray &iPos) const
double distance(const FloatArray &x) const
Computes the distance between position represented by receiver and position given as parameter...
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
PrescribedGradientBCWeakDirichlet(int n, Domain *d)
void createTractionMesh(bool iEnforceCornerPeriodicity, int iNumSides)
Imposes a prescribed gradient weakly on the boundary with an independent traction discretization...
Class representing vector of real numbers.
IRResultType
Type defining the return values of InputRecord reading operations.
virtual void postInitialize()
Performs post initialization steps.
FloatArray mLC
Lower corner of domain (assuming a rectangular RVE)
the oofem namespace is to define a context or scope in which all oofem names are defined.