OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
This class implements a boundary load (force, moment,...) that acts directly on a boundary of some finite element (on side, face, ..). More...
#include <constantedgeload.h>
Public Member Functions | |
ConstantEdgeLoad (int i, Domain *d) | |
virtual void | computeValueAt (FloatArray &answer, TimeStep *tStep, const FloatArray &coords, ValueModeType mode) |
Computes components values of load at given point - global coordinates (coordinates given). More... | |
virtual int | giveApproxOrder () |
virtual IRResultType | initializeFrom (InputRecord *ir) |
Initializes receiver according to object description stored in input record. More... | |
virtual bcGeomType | giveBCGeoType () const |
Returns geometry character of boundary condition. More... | |
virtual const char * | giveClassName () const |
virtual const char * | giveInputRecordName () const |
Public Member Functions inherited from oofem::EdgeLoad | |
EdgeLoad (int i, Domain *d) | |
Constructor. More... | |
Public Member Functions inherited from oofem::BoundaryLoad | |
BoundaryLoad (int i, Domain *d) | |
Constructor. More... | |
virtual CoordSystType | giveCoordSystMode () |
Returns receiver's coordinate system. More... | |
virtual void | giveInputRecord (DynamicInputRecord &input) |
Setups the input record string of receiver. More... | |
virtual bcType | giveType () const |
Returns receiver load type. More... | |
virtual double | giveProperty (int aProperty, TimeStep *tStep, const std::map< std::string, FunctionArgument > &valDict) |
virtual double | giveProperty (int aProperty, TimeStep *tStep) |
Returns the value of a property 'aProperty'. More... | |
virtual double | giveTemperOffset (void) |
Return temperature offset. More... | |
Public Member Functions inherited from oofem::Load | |
Load (int n, Domain *d) | |
Constructor. More... | |
virtual | ~Load () |
Destructor. More... | |
virtual void | computeValues (FloatArray &answer, TimeStep *tStep, const FloatArray &coords, const IntArray &dofids, ValueModeType mode) |
Computes components values for specified dof ids. More... | |
int | isDofExcluded (int index) |
Returns the value of dofExcludeMask corresponding to given index. More... | |
virtual void | scale (double s) |
Scales the receiver according to given value. More... | |
virtual FormulationType | giveFormulationType () |
Specifies is load should take local or global coordinates. More... | |
const FloatArray & | giveComponentArray () const |
void | setComponentArray (FloatArray &arry) |
Public Member Functions inherited from oofem::GeneralBoundaryCondition | |
GeneralBoundaryCondition (int n, Domain *d) | |
Constructor. More... | |
virtual | ~GeneralBoundaryCondition () |
Destructor. More... | |
int | giveSetNumber () |
Gives the set number which boundary condition is applied to. More... | |
virtual int | giveNumberOfInternalDofManagers () |
Gives the number of internal dof managers. More... | |
virtual DofManager * | giveInternalDofManager (int i) |
Gives an internal dof manager from receiver. More... | |
Function * | giveTimeFunction () |
virtual bcValType | giveBCValType () const |
Returns receiver load type. More... | |
virtual bool | isImposed (TimeStep *tStep) |
Returns nonzero if receiver representing BC is imposed at given time, otherwise returns zero. More... | |
virtual const IntArray & | giveDofIDs () const |
Array with default dofs which b.c. More... | |
virtual void | postInitialize () |
Performs post initialization steps. 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... | |
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 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... | |
Private Member Functions | |
virtual void | computeNArray (FloatArray &answer, const FloatArray &coords) const |
Abstract function, for computing approximation matrix of receiver at given point. More... | |
Additional Inherited Members | |
Public Types inherited from oofem::BoundaryLoad | |
enum | BL_CoordSystType { BL_GlobalMode, BL_LocalMode, BL_UpdatedGlobalMode } |
Load coordinate system type. More... | |
Public Types inherited from oofem::Load | |
enum | CoordSystType { CST_Global, CST_Local, CST_UpdatedGlobal } |
Load coordinate system type. More... | |
enum | FormulationType { FT_Entity, FT_Global } |
Type determining the type of formulation (entity local or global one). More... | |
Public Attributes inherited from oofem::BoundaryLoad | |
CoordSystType | CST_UpdatedGlobal |
ScalarFunction | propertyMultExpr |
Expression to multiply all properties. More... | |
Public Attributes inherited from oofem::Load | |
bool | reference |
Protected Member Functions inherited from oofem::BoundaryLoad | |
virtual void | computeComponentArrayAt (FloatArray &answer, TimeStep *tStep, ValueModeType mode) |
Returns array of load "vertex" values evaluated at given time. More... | |
Protected Attributes inherited from oofem::BoundaryLoad | |
bcType | lType |
Load type (its physical meaning). More... | |
CoordSystType | coordSystemType |
Load coordinate system. More... | |
Dictionary | propertyDictionary |
Additional b.c properties. More... | |
Dictionary | propertyTimeFunctDictionary |
Optional time-functions for properties. More... | |
double | temperOffset |
Temperature offset with regards to Kelvin. Default is 273.15. More... | |
Protected Attributes inherited from oofem::Load | |
FloatArray | componentArray |
Components of boundary condition. More... | |
IntArray | dofExcludeMask |
The load is specified for all dofs of object to which is associated. More... | |
Protected Attributes inherited from oofem::GeneralBoundaryCondition | |
int | timeFunction |
Associated load time function. More... | |
bcValType | valType |
Physical meaning of BC value. More... | |
IntArray | dofs |
Dofs that b.c. is applied to (relevant for Dirichlet type b.c.s). More... | |
int | isImposedTimeFunction |
Zero by default - the BC is than always imposed. More... | |
int | set |
Set number for boundary condition to be applied to. More... | |
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... | |
This class implements a boundary load (force, moment,...) that acts directly on a boundary of some finite element (on side, face, ..).
A boundary load is usually attribute of one or more elements.
The boundary load describes its geometry and values (it is assumed, that user will specify all necessary dofs) on element boundary using isoparametric approximation. Elements can request the order of approximation (for setting up the appropriate integration rule order) and the array of values (for each dof) at specific integration point on the boundary.
Elements must take care, on which boundary the load acts on (side number, ...).
For some elements it may be better to obtain "vertex values" of boundary load to compute load vector directly using exact formulae.
This class is not restricted to structural problems. For example, in thermal analysis, a boundary load load would be a heat source.
Definition at line 62 of file constantedgeload.h.
|
inline |
Definition at line 65 of file constantedgeload.h.
|
inlineprivatevirtual |
Abstract function, for computing approximation matrix of receiver at given point.
The product of approximation matrix with "vertex" values array attribute will produce load components in given point.
answer | Approximation vector. |
coords | Global integration point coordinates. |
Implements oofem::BoundaryLoad.
Definition at line 76 of file constantedgeload.h.
References oofem::FloatArray::clear().
|
virtual |
Computes components values of load at given point - global coordinates (coordinates given).
answer | Component values at given point and time. |
tStep | Time step representing time. |
coords | Global (or local) problem coordinates, which are used to evaluate components values. |
mode | Determines response mode. |
Reimplemented from oofem::BoundaryLoad.
Definition at line 51 of file constantedgeload.C.
References oofem::FloatArray::beScaled(), oofem::Load::componentArray, oofem::Function::evaluate(), oofem::GeneralBoundaryCondition::giveTimeFunction(), oofem::GeneralBoundaryCondition::isImposed(), OOFEM_ERROR, and oofem::FloatArray::zero().
|
inlinevirtual |
Implements oofem::BoundaryLoad.
Definition at line 68 of file constantedgeload.h.
|
inlinevirtual |
Returns geometry character of boundary condition.
For available values see cltypes.h file. Derived classes should always overload, default implementation returns UnknownLoadGT value.
Reimplemented from oofem::GeneralBoundaryCondition.
Definition at line 70 of file constantedgeload.h.
References oofem::EdgeLoadBGT.
|
inlinevirtual |
Implements oofem::FEMComponent.
Definition at line 72 of file constantedgeload.h.
|
inlinevirtual |
Implements oofem::FEMComponent.
Definition at line 73 of file constantedgeload.h.
References _IFT_ConstantEdgeLoad_Name.
|
virtual |
Initializes receiver according to object description stored in input record.
Reads number of dofs into nDofs attribute (i.e. the number of dofs, which are on loaded entity), its loadType into loadType attribute and coordinate system type into csType attribute.
Reimplemented from oofem::BoundaryLoad.
Definition at line 45 of file constantedgeload.C.
References oofem::BoundaryLoad::initializeFrom().