OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
Implementation of symmetry nonlocal barrier. More...
#include <symmetrybarrier.h>
Public Member Functions | |
SymmetryBarrier (int n, Domain *d) | |
Constructor. More... | |
virtual | ~SymmetryBarrier () |
Destructor. More... | |
virtual void | applyConstraint (const FloatArray &c1, const FloatArray &c2, double &weight, bool &shieldFlag, NonlocalMaterialExtensionInterface *nei) |
Abstract method modifying the integration weight between master (c1) and source (c2) point. More... | |
virtual double | calculateMinimumDistanceFromBoundary (const FloatArray &coords) |
Abstract method calculating the minimum distance of the Gauss Point from the nonlocal boundaries. More... | |
virtual IRResultType | initializeFrom (InputRecord *ir) |
Initializes receiver according to object description stored in input record. More... | |
virtual const char * | giveInputRecordName () const |
virtual const char * | giveClassName () const |
Public Member Functions inherited from oofem::NonlocalBarrier | |
NonlocalBarrier (int n, Domain *aDomain) | |
Constructor. More... | |
virtual | ~NonlocalBarrier () |
Destructor. More... | |
Public Member Functions inherited from oofem::FEMComponent | |
FEMComponent (int n, Domain *d) | |
Regular constructor, creates component with given number and belonging to given domain. More... | |
virtual | ~FEMComponent () |
Virtual destructor. More... | |
Domain * | giveDomain () const |
virtual void | setDomain (Domain *d) |
Sets associated Domain. More... | |
int | giveNumber () const |
void | setNumber (int num) |
Sets number of receiver. More... | |
virtual void | updateLocalNumbering (EntityRenumberingFunctor &f) |
Local renumbering support. More... | |
virtual void | giveInputRecord (DynamicInputRecord &input) |
Setups the input record string of receiver. More... | |
virtual contextIOResultType | saveContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
Stores receiver state to output stream. More... | |
virtual contextIOResultType | restoreContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
Restores the receiver state previously written in stream. More... | |
virtual int | checkConsistency () |
Allows programmer to test some internal data, before computation begins. More... | |
virtual void | printOutputAt (FILE *file, TimeStep *tStep) |
Prints output of receiver to stream, for given time step. More... | |
virtual void | printYourself () |
Prints receiver state on stdout. Useful for debugging. More... | |
virtual Interface * | giveInterface (InterfaceType t) |
Interface requesting service. More... | |
std::string | errorInfo (const char *func) const |
Returns string for prepending output (used by error reporting macros). More... | |
Protected Attributes | |
FloatArray | origin |
FloatArray | normals |
IntArray | mask |
FloatMatrix | lcs |
Protected Attributes inherited from oofem::FEMComponent | |
int | number |
Component number. More... | |
Domain * | domain |
Link to domain object, useful for communicating with other FEM components. More... | |
Implementation of symmetry nonlocal barrier.
It allows to specify up to three planes (orthogonal ones) of symmetry It then modifies the integration weights of source points to take into account symmetry of the averaged field.
Definition at line 58 of file symmetrybarrier.h.
oofem::SymmetryBarrier::SymmetryBarrier | ( | int | n, |
Domain * | d | ||
) |
Constructor.
Creates an element with number n belonging to domain aDomain.
n | Element's number |
d | Pointer to the domain to which element belongs. |
|
virtual |
Destructor.
Definition at line 50 of file symmetrybarrier.C.
|
virtual |
Abstract method modifying the integration weight between master (c1) and source (c2) point.
c1 | Coordinates of master point. | |
c2 | Coordinates of source point. | |
weight | Original integration weight; on output modified weight. | |
[out] | shieldFlag | Set to true if shielding is activated. |
nei | The element with the non local material extension. |
Implements oofem::NonlocalBarrier.
Definition at line 55 of file symmetrybarrier.C.
References oofem::IntArray::at(), oofem::FloatArray::at(), oofem::FloatMatrix::at(), oofem::NonlocalMaterialExtensionInterface::computeWeightFunction(), oofem::FloatArray::giveSize(), lcs, mask, and origin.
|
inlinevirtual |
Abstract method calculating the minimum distance of the Gauss Point from the nonlocal boundaries.
coords | Coordinates of the Gauss Point |
maxPossibleDistance | Distance from the boundary beyond which the nonlocal radius(as it is interpreted in each weight function) becomes equal to the user-defined |
Implements oofem::NonlocalBarrier.
Definition at line 78 of file symmetrybarrier.h.
References initializeFrom().
|
inlinevirtual |
Implements oofem::FEMComponent.
Definition at line 82 of file symmetrybarrier.h.
|
inlinevirtual |
Implements oofem::FEMComponent.
Definition at line 81 of file symmetrybarrier.h.
References _IFT_SymmetryBarrier_Name.
|
virtual |
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.
ir | Input record to initialize from. |
Reimplemented from oofem::FEMComponent.
Definition at line 124 of file symmetrybarrier.C.
References _IFT_SymmetryBarrier_activemask, _IFT_SymmetryBarrier_normals, _IFT_SymmetryBarrier_origin, oofem::FloatArray::at(), oofem::FloatMatrix::at(), oofem::FEMComponent::giveNumber(), oofem::IntArray::giveSize(), oofem::FloatArray::giveSize(), IR_GIVE_FIELD, oofem::IRRT_BAD_FORMAT, oofem::IRRT_OK, lcs, mask, normals, OOFEM_ERROR, OOFEM_WARNING, origin, and oofem::FloatMatrix::resize().
Referenced by calculateMinimumDistanceFromBoundary().
|
protected |
Definition at line 64 of file symmetrybarrier.h.
Referenced by applyConstraint(), and initializeFrom().
|
protected |
Definition at line 63 of file symmetrybarrier.h.
Referenced by applyConstraint(), and initializeFrom().
|
protected |
Definition at line 62 of file symmetrybarrier.h.
Referenced by initializeFrom().
|
protected |
Definition at line 61 of file symmetrybarrier.h.
Referenced by applyConstraint(), and initializeFrom().