OOFEM 3.0
Loading...
Searching...
No Matches
oofem::PrescribedGradientBCWeak Class Referenceabstract

#include <prescribedgradientbcweak.h>

Inheritance diagram for oofem::PrescribedGradientBCWeak:
Collaboration diagram for oofem::PrescribedGradientBCWeak:

Public Member Functions

 PrescribedGradientBCWeak (int n, Domain *d)
virtual ~PrescribedGradientBCWeak ()
void clear ()
double domainSize () override
int giveNumberOfInternalDofManagers () override
 Gives the number of internal dof managers.
DofManagergiveInternalDofManager (int i) override
 Gives an internal dof manager from receiver.
bcType giveType () const override
void initializeFrom (InputRecord &ir) override
void giveInputRecord (DynamicInputRecord &input) override
void postInitialize () override
 Performs post initialization steps. Called after all components are created and initialized.
void computeField (FloatArray &sigma, TimeStep *tStep) override
void computeTangent (FloatMatrix &E, TimeStep *tStep) override
void assembleVector (FloatArray &answer, TimeStep *tStep, CharType type, ValueModeType mode, const UnknownNumberingScheme &s, FloatArray *eNorm=nullptr, void *lock=nullptr) override
void computeExtForceElContrib (FloatArray &oContrib, TracSegArray &iEl, int iDim, TimeStep *tStep)
void computeIntForceGPContrib (FloatArray &oContrib_disp, IntArray &oDisp_loc_array, FloatArray &oContrib_trac, IntArray &oTrac_loc_array, TracSegArray &iEl, GaussPoint &iGP, int iDim, TimeStep *tStep, const FloatArray &iBndCoord, const double &iScaleFac, ValueModeType mode, CharType type, const UnknownNumberingScheme &s)
void assemble (SparseMtrx &answer, TimeStep *tStep, CharType type, const UnknownNumberingScheme &r_s, const UnknownNumberingScheme &c_s, double scale=1.0, void *lock=nullptr) override
virtual void assembleExtraDisplock (SparseMtrx &answer, TimeStep *tStep, CharType type, const UnknownNumberingScheme &r_s, const UnknownNumberingScheme &c_s)
virtual void assembleGPContrib (SparseMtrx &answer, TimeStep *tStep, CharType type, const UnknownNumberingScheme &r_s, const UnknownNumberingScheme &c_s, TracSegArray &iEl, GaussPoint &iGP, double k, void *lock=nullptr)
void giveLocationArrays (std ::vector< IntArray > &rows, std ::vector< IntArray > &cols, CharType type, const UnknownNumberingScheme &r_s, const UnknownNumberingScheme &c_s) override
virtual void giveTractionLocationArray (IntArray &rows, const UnknownNumberingScheme &s)
virtual void giveDisplacementLocationArray (IntArray &rows, const UnknownNumberingScheme &s)
void compute_x_times_N_1 (FloatMatrix &o_x_times_N)
void compute_x_times_N_2 (FloatMatrix &o_x_times_N)
const char * giveClassName () const override
const char * giveInputRecordName () const override
size_t giveNumberOfTractionElements () const
void giveTractionElCoord (size_t iElInd, FloatArray &oStartCoord, FloatArray &oEndCoord) const
void giveTractionElNormal (size_t iElInd, FloatArray &oNormal, FloatArray &oTangent) const
void giveTractionElArcPos (size_t iElInd, double &oXiStart, double &oXiEnd) const
void giveBoundaries (IntArray &oBoundaries)
void giveTraction (size_t iElInd, FloatArray &oStartTraction, FloatArray &oEndTraction, ValueModeType mode, TimeStep *tStep)
void computeDomainBoundingBox (Domain &iDomain, FloatArray &oLC, FloatArray &oUC)
const IntArraygiveTracDofIDs () const
const IntArraygiveDispLockDofIDs () const
const IntArraygiveRegularDispDofIDs () const
void setPeriodicityNormal (const FloatArray &iPeriodicityNormal)
void setDomainSize (double iDomainSize)
void setLowerCorner (FloatArray iLC)
void setUpperCorner (FloatArray iUC)
void setMirrorFunction (int iMirrorFunction)
void recomputeTractionMesh ()
void giveMirroredPointOnGammaMinus (FloatArray &oPosMinus, const FloatArray &iPosPlus) const
void giveMirroredPointOnGammaPlus (FloatArray &oPosPlus, const FloatArray &iPosMinus) const
Public Member Functions inherited from oofem::ActiveBoundaryCondition
 ActiveBoundaryCondition (int n, Domain *d)
virtual ~ActiveBoundaryCondition ()
 Destructor.
virtual void addElementSide (int elem, int side)
virtual bool requiresActiveDofs ()
virtual bool isPrimaryDof (ActiveDof *dof)
virtual double giveBcValue (Dof *dof, ValueModeType mode, TimeStep *tStep)
virtual bool hasBc (Dof *dof, TimeStep *tStep)
virtual int giveNumberOfMasterDofs (ActiveDof *dof)
virtual DofgiveMasterDof (ActiveDof *dof, int mdof)
virtual void computeDofTransformation (ActiveDof *dof, FloatArray &masterContribs)
virtual double giveUnknown (PrimaryField &field, ValueModeType mode, TimeStep *tStep, ActiveDof *dof)
virtual double giveUnknown (ValueModeType mode, TimeStep *tStep, ActiveDof *dof)
Public Member Functions inherited from oofem::GeneralBoundaryCondition
 GeneralBoundaryCondition (int n, Domain *d)
virtual ~GeneralBoundaryCondition ()
 Destructor.
int giveSetNumber () const
FunctiongiveTimeFunction ()
int getIsImposedTimeFunctionNumber () const
void setIsImposedTimeFunctionNumber (int funcIndx)
virtual bcValType giveBCValType () const
virtual bool isImposed (TimeStep *tStep)
virtual const IntArraygiveDofIDs () const
virtual bcGeomType giveBCGeoType () const
virtual void scale (double s)
virtual double giveProperty (int aProperty, TimeStep *tStep) const
void saveContext (DataStream &stream, ContextMode mode) override
void restoreContext (DataStream &stream, ContextMode mode) override
virtual void updateYourself (TimeStep *tStep)
Public Member Functions inherited from oofem::FEMComponent
 FEMComponent (int n, Domain *d)
virtual ~FEMComponent ()=default
 Virtual destructor.
DomaingiveDomain () const
virtual void setDomain (Domain *d)
int giveNumber () const
void setNumber (int num)
virtual void updateLocalNumbering (EntityRenumberingFunctor &f)
virtual void initializeFrom (InputRecord &ir, int priority)
virtual void initializeFinish ()
virtual int checkConsistency ()
virtual void printOutputAt (FILE *file, TimeStep *tStep)
virtual void printYourself ()
 Prints receiver state on stdout. Useful for debugging.
virtual InterfacegiveInterface (InterfaceType t)
std::string errorInfo (const char *func) const
 Returns string for prepending output (used by error reporting macros).
Public Member Functions inherited from oofem::PrescribedGradientHomogenization
 PrescribedGradientHomogenization ()
virtual ~PrescribedGradientHomogenization ()
void setPrescribedGradient (const FloatMatrix &t)
void setPrescribedGradientVoigt (const FloatArray &t)
void giveGradientVoigt (FloatArray &oGradient) const
void setCenterCoordinate (FloatArray &x)
FloatArraygiveCenterCoordinate ()
 Returns the center coordinate.

Protected Member Functions

void createTractionMesh (bool iEnforceCornerPeriodicity, int iNumSides)
void splitSegments (std ::vector< TracSegArray > &ioElArray)
bool damageExceedsTolerance (Element *el)
void assembleTangentGPContributionNew (FloatMatrix &oTangent, TracSegArray &iEl, GaussPoint &iGP, const double &iScaleFactor, const FloatArray &iBndCoord)
bool pointIsOnGammaPlus (const FloatArray &iPos) const
virtual void giveBoundaryCoordVector (FloatArray &oX, const FloatArray &iPos) const =0
virtual void checkIfCorner (bool &oIsCorner, bool &oDuplicatable, const FloatArray &iPos, const double &iNodeDistTol) const =0
virtual bool boundaryPointIsOnActiveBoundary (const FloatArray &iPos) const =0
int giveSideIndex (const FloatArray &iPos) const
void findHoleCoord (std::vector< FloatArray > &oHoleCoordUnsorted, std::vector< FloatArray > &oAllCoordUnsorted)
void findCrackBndIntersecCoord (std::vector< FloatArray > &oHoleCoordUnsorted)
void findPeriodicityCoord (std::vector< FloatArray > &oHoleCoordUnsorted)
void removeClosePoints (std::vector< FloatArray > &ioCoords, const double &iAbsTol)
void removeSegOverHoles (TracSegArray &ioTSeg, const double &iAbsTol)
Protected Member Functions inherited from oofem::PrescribedGradientHomogenization
virtual double domainSize (Domain *d, int set)

Protected Attributes

const IntArray mTractionDofIDs
const IntArray mDispLockDofIDs
const IntArray mRegularDispDofIDs
int mTractionInterpOrder
 Order of interpolation for traction (0->piecewise constant, 1->piecewise linear).
int mNumTractionNodesAtIntersections
int mTractionNodeSpacing
bool mMeshIsPeriodic
bool mDuplicateCornerNodes
double mTangDistPadding
double mTracDofScaling
FloatArray mLC
 Lower corner of domain (assuming a rectangular RVE).
FloatArray mUC
 Upper corner of domain (assuming a rectangular RVE).
std::unique_ptr< NodempDisplacementLock
 Lock displacements in one node if periodic.
int mLockNodeInd
double mDispLockScaling
int mSpringNodeInd1
int mSpringNodeInd2
int mSpringNodeInd3
double mSpringPenaltyStiffness
std ::vector< TracSegArraympTracElNew
 Elements for the independent traction discretization.
FloatArray mPeriodicityNormal
double mDomainSize
int mMirrorFunction
Protected Attributes inherited from oofem::GeneralBoundaryCondition
int timeFunction
 Associated load time function.
bcValType valType
 Physical meaning of BC value.
IntArray dofs
 Dofs that b.c. is applied to (relevant for Dirichlet type b.c.s).
int isImposedTimeFunction
int set
 Set number for boundary condition to be applied to.
Protected Attributes inherited from oofem::FEMComponent
int number
 Component number.
Domaindomain
 Link to domain object, useful for communicating with other FEM components.
Protected Attributes inherited from oofem::PrescribedGradientHomogenization
FloatMatrix mGradient
 Prescribed gradient \( d_{ij} \).
FloatArray mCenterCoord
 Center coordinate \( \bar{x}_i \).

Detailed Description

Imposes a prescribed gradient weakly on the boundary with an independent traction discretization.

Author
Erik Svenning
Date
April 17, 2014

Definition at line 110 of file prescribedgradientbcweak.h.

Constructor & Destructor Documentation

◆ PrescribedGradientBCWeak()

◆ ~PrescribedGradientBCWeak()

oofem::PrescribedGradientBCWeak::~PrescribedGradientBCWeak ( )
virtual

Definition at line 117 of file prescribedgradientbcweak.C.

References clear().

Member Function Documentation

◆ assemble()

void oofem::PrescribedGradientBCWeak::assemble ( SparseMtrx & answer,
TimeStep * tStep,
CharType type,
const UnknownNumberingScheme & r_s,
const UnknownNumberingScheme & c_s,
double scale = 1.0,
void * lock = nullptr )
overridevirtual

Assembles B.C. contributions to specified matrix.

Parameters
[in,out]answerMatrix to assemble to.
tStepActive time step.
tStepActive time step.
typeType of matrix to assemble.
r_sRow numbering scheme.
c_sColumn numbering scheme.
scaleScaling factor.
omp_lockoptional OMP lock to ensure correct update of answer

Reimplemented from oofem::ActiveBoundaryCondition.

Definition at line 410 of file prescribedgradientbcweak.C.

References oofem::SparseMtrx::assemble(), assembleGPContrib(), oofem::FloatMatrix::beUnitMatrix(), oofem::FEMComponent::domain, giveDispLockDofIDs(), oofem::DofManager::giveLocationArray(), giveRegularDispDofIDs(), oofem::IntArray::giveSize(), mDispLockScaling, mLockNodeInd, mpDisplacementLock, mpTracElNew, mSpringNodeInd1, mSpringPenaltyStiffness, oofem::GeneralBoundaryCondition::scale(), oofem::FloatMatrix::times(), and oofem::FloatMatrix::zero().

◆ assembleExtraDisplock()

◆ assembleGPContrib()

◆ assembleTangentGPContributionNew()

◆ assembleVector()

void oofem::PrescribedGradientBCWeak::assembleVector ( FloatArray & answer,
TimeStep * tStep,
CharType type,
ValueModeType mode,
const UnknownNumberingScheme & s,
FloatArray * eNorms = nullptr,
void * lock = nullptr )
overridevirtual

Assembles B.C. contributions to specified vector.

Parameters
[in,out]answerVector to assemble to.
tStepActive time step.
typeType of matrix to assemble.
modeMode of value.
sNumbering scheme.
eNormsNorms for each dofid.
omp_lockoptional OMP lock to ensure correct update of answer
Returns
Equivalent of the sum of the element norm (squared) of assembled vector.

Reimplemented from oofem::ActiveBoundaryCondition.

Definition at line 230 of file prescribedgradientbcweak.C.

References oofem::FloatArray::assemble(), oofem::FloatArray::clear(), oofem::IntArray::clear(), computeExtForceElContrib(), computeIntForceGPContrib(), oofem::FEMComponent::domain, giveDispLockDofIDs(), giveMirroredPointOnGammaMinus(), giveRegularDispDofIDs(), mDispLockScaling, mLockNodeInd, mpDisplacementLock, mpTracElNew, and oofem::FloatArray::times().

◆ boundaryPointIsOnActiveBoundary()

virtual bool oofem::PrescribedGradientBCWeak::boundaryPointIsOnActiveBoundary ( const FloatArray & iPos) const
protectedpure virtual

◆ checkIfCorner()

virtual void oofem::PrescribedGradientBCWeak::checkIfCorner ( bool & oIsCorner,
bool & oDuplicatable,
const FloatArray & iPos,
const double & iNodeDistTol ) const
protectedpure virtual

◆ clear()

void oofem::PrescribedGradientBCWeak::clear ( )

◆ compute_x_times_N_1()

◆ compute_x_times_N_2()

◆ computeDomainBoundingBox()

void oofem::PrescribedGradientBCWeak::computeDomainBoundingBox ( Domain & iDomain,
FloatArray & oLC,
FloatArray & oUC )

◆ computeExtForceElContrib()

◆ computeField()

void oofem::PrescribedGradientBCWeak::computeField ( FloatArray & sigma,
TimeStep * tStep )
overridevirtual

◆ computeIntForceGPContrib()

◆ computeTangent()

◆ createTractionMesh()

◆ damageExceedsTolerance()

bool oofem::PrescribedGradientBCWeak::damageExceedsTolerance ( Element * el)
protected

◆ domainSize()

double oofem::PrescribedGradientBCWeak::domainSize ( )
inlineoverridevirtual

◆ findCrackBndIntersecCoord()

◆ findHoleCoord()

◆ findPeriodicityCoord()

void oofem::PrescribedGradientBCWeak::findPeriodicityCoord ( std::vector< FloatArray > & oHoleCoordUnsorted)
protected

◆ giveBoundaries()

void oofem::PrescribedGradientBCWeak::giveBoundaries ( IntArray & oBoundaries)

◆ giveBoundaryCoordVector()

virtual void oofem::PrescribedGradientBCWeak::giveBoundaryCoordVector ( FloatArray & oX,
const FloatArray & iPos ) const
protectedpure virtual

◆ giveClassName()

const char * oofem::PrescribedGradientBCWeak::giveClassName ( ) const
inlineoverridevirtual
Returns
Class name of the receiver.

Implements oofem::FEMComponent.

Reimplemented in oofem::PrescribedGradientBCWeakDirichlet, and oofem::PrescribedGradientBCWeakPeriodic.

Definition at line 170 of file prescribedgradientbcweak.h.

◆ giveDisplacementLocationArray()

void oofem::PrescribedGradientBCWeak::giveDisplacementLocationArray ( IntArray & rows,
const UnknownNumberingScheme & s )
virtual

Definition at line 713 of file prescribedgradientbcweak.C.

◆ giveDispLockDofIDs()

const IntArray & oofem::PrescribedGradientBCWeak::giveDispLockDofIDs ( ) const
inline

◆ giveInputRecord()

◆ giveInputRecordName()

const char * oofem::PrescribedGradientBCWeak::giveInputRecordName ( ) const
inlineoverridevirtual
Returns
Input record name of the receiver.

Implements oofem::FEMComponent.

Reimplemented in oofem::PrescribedGradientBCWeakDirichlet, and oofem::PrescribedGradientBCWeakPeriodic.

Definition at line 171 of file prescribedgradientbcweak.h.

References _IFT_PrescribedGradientBCWeak_Name.

◆ giveInternalDofManager()

DofManager * oofem::PrescribedGradientBCWeak::giveInternalDofManager ( int i)
overridevirtual

Gives an internal dof manager from receiver.

Reimplemented from oofem::GeneralBoundaryCondition.

Definition at line 143 of file prescribedgradientbcweak.C.

References mpTracElNew, and OOFEM_ERROR.

◆ giveLocationArrays()

void oofem::PrescribedGradientBCWeak::giveLocationArrays ( std ::vector< IntArray > & rows,
std ::vector< IntArray > & cols,
CharType type,
const UnknownNumberingScheme & r_s,
const UnknownNumberingScheme & c_s )
overridevirtual

Gives a list of location arrays that will be assembled. This should only be used to construct zero structure in sparse matrices. The rows and columns location arrays returned in tuples (stored in vector), allowing to efficiently assemble and allocate off-diagonal blocks. The nonzero entries are assembled and allocated for entries at (rows[i], cols[i]) positions.

Parameters
rowsList of location arrays for r_s.
colsList of location arrays for c_s.
typeType of matrix to assemble.
r_sRow numbering scheme.
c_sColumn numbering scheme.

Reimplemented from oofem::ActiveBoundaryCondition.

Definition at line 665 of file prescribedgradientbcweak.C.

◆ giveMirroredPointOnGammaMinus()

◆ giveMirroredPointOnGammaPlus()

void oofem::PrescribedGradientBCWeak::giveMirroredPointOnGammaPlus ( FloatArray & oPosPlus,
const FloatArray & iPosMinus ) const

◆ giveNumberOfInternalDofManagers()

int oofem::PrescribedGradientBCWeak::giveNumberOfInternalDofManagers ( )
overridevirtual

Gives the number of internal dof managers.

Reimplemented from oofem::GeneralBoundaryCondition.

Definition at line 131 of file prescribedgradientbcweak.C.

References mpDisplacementLock, and mpTracElNew.

◆ giveNumberOfTractionElements()

size_t oofem::PrescribedGradientBCWeak::giveNumberOfTractionElements ( ) const
inline

◆ giveRegularDispDofIDs()

const IntArray & oofem::PrescribedGradientBCWeak::giveRegularDispDofIDs ( ) const
inline

◆ giveSideIndex()

int oofem::PrescribedGradientBCWeak::giveSideIndex ( const FloatArray & iPos) const
protected

Definition at line 1802 of file prescribedgradientbcweak.C.

References mLC, mUC, and OOFEM_ERROR.

Referenced by giveTractionElArcPos().

◆ giveTracDofIDs()

const IntArray & oofem::PrescribedGradientBCWeak::giveTracDofIDs ( ) const
inline

◆ giveTraction()

void oofem::PrescribedGradientBCWeak::giveTraction ( size_t iElInd,
FloatArray & oStartTraction,
FloatArray & oEndTraction,
ValueModeType mode,
TimeStep * tStep )

◆ giveTractionElArcPos()

void oofem::PrescribedGradientBCWeak::giveTractionElArcPos ( size_t iElInd,
double & oXiStart,
double & oXiEnd ) const

◆ giveTractionElCoord()

void oofem::PrescribedGradientBCWeak::giveTractionElCoord ( size_t iElInd,
FloatArray & oStartCoord,
FloatArray & oEndCoord ) const
inline

◆ giveTractionElNormal()

void oofem::PrescribedGradientBCWeak::giveTractionElNormal ( size_t iElInd,
FloatArray & oNormal,
FloatArray & oTangent ) const

◆ giveTractionLocationArray()

◆ giveType()

bcType oofem::PrescribedGradientBCWeak::giveType ( ) const
inlineoverridevirtual
Returns
Type of boundary condition. It allows to distinguish BC according its mathematical meaning, ie. like Dirichlet, Neumann, or Newton type.

Reimplemented from oofem::GeneralBoundaryCondition.

Definition at line 123 of file prescribedgradientbcweak.h.

References oofem::UnknownBT.

◆ initializeFrom()

void oofem::PrescribedGradientBCWeak::initializeFrom ( InputRecord & ir)
overridevirtual

Initializes receiver according to object description stored in input record. This function is called immediately after creating object using constructor. Input record can be imagined as data record in component database belonging to receiver. Receiver may use value-name extracting functions to extract particular field from record. Note that initializeFrom may be called mutiple times.

See also
IR_GIVE_FIELD
IR_GIVE_OPTIONAL_FIELD
Parameters
irInput record to initialize from.
priorityPriority of the input record. This is used to determine the order of initialization

Reimplemented from oofem::ActiveBoundaryCondition.

Reimplemented in oofem::PrescribedGradientBCWeakDirichlet, and oofem::PrescribedGradientBCWeakPeriodic.

Definition at line 154 of file prescribedgradientbcweak.C.

References _IFT_PrescribedGradientBCWeak_DuplicateCornerNodes, _IFT_PrescribedGradientBCWeak_MirrorFunction, _IFT_PrescribedGradientBCWeak_NumTractionNodesAtIntersections, _IFT_PrescribedGradientBCWeak_NumTractionNodeSpacing, _IFT_PrescribedGradientBCWeak_PeriodicityNormal, _IFT_PrescribedGradientBCWeak_TangDistPadding, _IFT_PrescribedGradientBCWeak_TracDofScaling, _IFT_PrescribedGradientBCWeak_TractionInterpOrder, IR_GIVE_FIELD, IR_GIVE_OPTIONAL_FIELD, mDuplicateCornerNodes, mMirrorFunction, mNumTractionNodesAtIntersections, mPeriodicityNormal, mTangDistPadding, mTracDofScaling, mTractionInterpOrder, mTractionNodeSpacing, OOFEM_ERROR, and oofem::Vec2().

◆ pointIsOnGammaPlus()

bool oofem::PrescribedGradientBCWeak::pointIsOnGammaPlus ( const FloatArray & iPos) const
protected

◆ postInitialize()

void oofem::PrescribedGradientBCWeak::postInitialize ( )
overridevirtual

Performs post initialization steps. Called after all components are created and initialized.

Reimplemented from oofem::FEMComponent.

Reimplemented in oofem::PrescribedGradientBCWeakDirichlet, and oofem::PrescribedGradientBCWeakPeriodic.

Definition at line 227 of file prescribedgradientbcweak.C.

Referenced by recomputeTractionMesh().

◆ recomputeTractionMesh()

void oofem::PrescribedGradientBCWeak::recomputeTractionMesh ( )

◆ removeClosePoints()

void oofem::PrescribedGradientBCWeak::removeClosePoints ( std::vector< FloatArray > & ioCoords,
const double & iAbsTol )
protected

Definition at line 1972 of file prescribedgradientbcweak.C.

References oofem::distance_square().

Referenced by createTractionMesh().

◆ removeSegOverHoles()

void oofem::PrescribedGradientBCWeak::removeSegOverHoles ( TracSegArray & ioTSeg,
const double & iAbsTol )
protected

◆ setDomainSize()

void oofem::PrescribedGradientBCWeak::setDomainSize ( double iDomainSize)
inline

Definition at line 193 of file prescribedgradientbcweak.h.

References mDomainSize.

◆ setLowerCorner()

void oofem::PrescribedGradientBCWeak::setLowerCorner ( FloatArray iLC)
inline

Definition at line 194 of file prescribedgradientbcweak.h.

References mLC.

◆ setMirrorFunction()

void oofem::PrescribedGradientBCWeak::setMirrorFunction ( int iMirrorFunction)
inline

Definition at line 197 of file prescribedgradientbcweak.h.

References mMirrorFunction.

◆ setPeriodicityNormal()

void oofem::PrescribedGradientBCWeak::setPeriodicityNormal ( const FloatArray & iPeriodicityNormal)
inline

◆ setUpperCorner()

void oofem::PrescribedGradientBCWeak::setUpperCorner ( FloatArray iUC)
inline

Definition at line 195 of file prescribedgradientbcweak.h.

References mUC.

◆ splitSegments()

void oofem::PrescribedGradientBCWeak::splitSegments ( std ::vector< TracSegArray > & ioElArray)
protected

Definition at line 1460 of file prescribedgradientbcweak.C.

References oofem::TracSegArray::mInteriorSegments.

Referenced by createTractionMesh().

Member Data Documentation

◆ mDispLockDofIDs

const IntArray oofem::PrescribedGradientBCWeak::mDispLockDofIDs
protected

Definition at line 202 of file prescribedgradientbcweak.h.

Referenced by giveDispLockDofIDs().

◆ mDispLockScaling

double oofem::PrescribedGradientBCWeak::mDispLockScaling
protected

Definition at line 258 of file prescribedgradientbcweak.h.

Referenced by assemble(), and assembleVector().

◆ mDomainSize

double oofem::PrescribedGradientBCWeak::mDomainSize
protected

Definition at line 275 of file prescribedgradientbcweak.h.

Referenced by setDomainSize().

◆ mDuplicateCornerNodes

bool oofem::PrescribedGradientBCWeak::mDuplicateCornerNodes
protected

0 -> Do not duplicate corner traction nodes 1 -> Duplicate corner traction nodes

Definition at line 239 of file prescribedgradientbcweak.h.

Referenced by giveInputRecord(), and initializeFrom().

◆ mLC

◆ mLockNodeInd

int oofem::PrescribedGradientBCWeak::mLockNodeInd
protected

Definition at line 257 of file prescribedgradientbcweak.h.

Referenced by assemble(), assembleVector(), and createTractionMesh().

◆ mMeshIsPeriodic

bool oofem::PrescribedGradientBCWeak::mMeshIsPeriodic
protected

true -> the traction lives only on gammaPlus, so that we get strong periodicity as a special case. false -> the traction lives everywhere on gamma, so that we get Dirichlet as a special case

Definition at line 232 of file prescribedgradientbcweak.h.

Referenced by createTractionMesh(), oofem::PrescribedGradientBCWeakDirichlet::initializeFrom(), and oofem::PrescribedGradientBCWeakPeriodic::initializeFrom().

◆ mMirrorFunction

int oofem::PrescribedGradientBCWeak::mMirrorFunction
protected

Mirror function (i.e. mapping between gamma^+ and gamma^-). 0 -> Standard periodicity, 1 -> Shifted stacking, 2 -> Rotation

Definition at line 281 of file prescribedgradientbcweak.h.

Referenced by findPeriodicityCoord(), giveInputRecord(), giveMirroredPointOnGammaMinus(), giveMirroredPointOnGammaPlus(), initializeFrom(), and setMirrorFunction().

◆ mNumTractionNodesAtIntersections

int oofem::PrescribedGradientBCWeak::mNumTractionNodesAtIntersections
protected

If traction nodes should be inserted where cracks intersect the RVE boundary. 0 -> do not insert node. 1 -> insert node. 2 -> insert duplicated node.

Definition at line 218 of file prescribedgradientbcweak.h.

Referenced by giveInputRecord(), and initializeFrom().

◆ mpDisplacementLock

std::unique_ptr<Node> oofem::PrescribedGradientBCWeak::mpDisplacementLock
protected

Lock displacements in one node if periodic.

Definition at line 256 of file prescribedgradientbcweak.h.

Referenced by assemble(), assembleVector(), clear(), createTractionMesh(), giveNumberOfInternalDofManagers(), and giveTractionLocationArray().

◆ mPeriodicityNormal

FloatArray oofem::PrescribedGradientBCWeak::mPeriodicityNormal
protected

◆ mpTracElNew

std :: vector< TracSegArray > oofem::PrescribedGradientBCWeak::mpTracElNew
protected

◆ mRegularDispDofIDs

const IntArray oofem::PrescribedGradientBCWeak::mRegularDispDofIDs
protected

Definition at line 203 of file prescribedgradientbcweak.h.

Referenced by giveRegularDispDofIDs().

◆ mSpringNodeInd1

int oofem::PrescribedGradientBCWeak::mSpringNodeInd1
protected

Definition at line 260 of file prescribedgradientbcweak.h.

Referenced by assemble(), and createTractionMesh().

◆ mSpringNodeInd2

int oofem::PrescribedGradientBCWeak::mSpringNodeInd2
protected

Definition at line 261 of file prescribedgradientbcweak.h.

Referenced by assembleExtraDisplock(), and createTractionMesh().

◆ mSpringNodeInd3

int oofem::PrescribedGradientBCWeak::mSpringNodeInd3
protected

Definition at line 262 of file prescribedgradientbcweak.h.

Referenced by assembleExtraDisplock(), and createTractionMesh().

◆ mSpringPenaltyStiffness

double oofem::PrescribedGradientBCWeak::mSpringPenaltyStiffness
protected

Definition at line 263 of file prescribedgradientbcweak.h.

Referenced by assemble(), and assembleExtraDisplock().

◆ mTangDistPadding

double oofem::PrescribedGradientBCWeak::mTangDistPadding
protected

Parameter for creation of traction mesh

Definition at line 244 of file prescribedgradientbcweak.h.

Referenced by findCrackBndIntersecCoord(), giveInputRecord(), and initializeFrom().

◆ mTracDofScaling

double oofem::PrescribedGradientBCWeak::mTracDofScaling
protected

◆ mTractionDofIDs

const IntArray oofem::PrescribedGradientBCWeak::mTractionDofIDs
protected

Definition at line 201 of file prescribedgradientbcweak.h.

Referenced by giveTracDofIDs(), and PrescribedGradientBCWeak().

◆ mTractionInterpOrder

int oofem::PrescribedGradientBCWeak::mTractionInterpOrder
protected

Order of interpolation for traction (0->piecewise constant, 1->piecewise linear).

Definition at line 209 of file prescribedgradientbcweak.h.

Referenced by oofem::PrescribedGradientBCWeakPeriodic::checkIfCorner(), giveInputRecord(), and initializeFrom().

◆ mTractionNodeSpacing

int oofem::PrescribedGradientBCWeak::mTractionNodeSpacing
protected

Use every (mTractionNodeSpacing) displacement nodes when constructing the traction element mesh.

Definition at line 224 of file prescribedgradientbcweak.h.

Referenced by createTractionMesh(), giveInputRecord(), and initializeFrom().

◆ mUC


The documentation for this class was generated from the following files:

This page is part of the OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak Bořek Patzák
Project e-mail: oofem@fsv.cvut.cz
Generated at for OOFEM by doxygen 1.15.0 written by Dimitri van Heesch, © 1997-2011