|
OOFEM 3.0
|
#include <freeconstantsurfaceload.h>
Public Member Functions | |
| FreeConstantSurfaceLoad (int i, Domain *d) | |
| void | computeValueAt (FloatArray &answer, TimeStep *tStep, const FloatArray &coords, ValueModeType mode) override |
| int | giveApproxOrder () override |
| void | updateLoad (const FloatArray &newValue) |
| void | initializeFrom (InputRecord &ir) override |
| void | giveInputRecord (DynamicInputRecord &input) override |
| bcGeomType | giveBCGeoType () const override |
| const char * | giveClassName () const override |
| const char * | giveInputRecordName () const override |
| double | giveLoadOffset () |
| bool | isImposed (TimeStep *tStep) override |
| Public Member Functions inherited from oofem::SurfaceLoad | |
| SurfaceLoad (int i, Domain *d) | |
| Public Member Functions inherited from oofem::BoundaryLoad | |
| BoundaryLoad (int i, Domain *d) | |
| CoordSystType | giveCoordSystMode () override |
| bcType | giveType () const override |
| virtual double | giveProperty (int aProperty, TimeStep *tStep, const std ::map< std ::string, FunctionArgument > &valDict) const |
| double | giveProperty (int aProperty, TimeStep *tStep) const override |
| virtual double | giveTemperOffset (void) |
| Return temperature offset. | |
| Public Member Functions inherited from oofem::Load | |
| Load (int n, Domain *d) | |
| virtual | ~Load () |
| Destructor. | |
| virtual void | computeValueAt (FloatArray &answer, TimeStep *tStep, GaussPoint *gp, ValueModeType mode) |
| virtual void | computeValues (FloatArray &answer, TimeStep *tStep, const FloatArray &coords, const IntArray &dofids, ValueModeType mode) |
| int | isDofExcluded (int index) |
| void | scale (double s) override |
| virtual FormulationType | giveFormulationType () |
| void | initializeFrom (InputRecord &ir) override |
| void | giveInputRecord (DynamicInputRecord &input) override |
| const FloatArray & | giveComponentArray () const |
| void | setComponentArray (FloatArray &arry) |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| Public Member Functions inherited from oofem::GeneralBoundaryCondition | |
| GeneralBoundaryCondition (int n, Domain *d) | |
| virtual | ~GeneralBoundaryCondition () |
| Destructor. | |
| int | giveSetNumber () const |
| virtual int | giveNumberOfInternalDofManagers () |
| Gives the number of internal dof managers. | |
| virtual DofManager * | giveInternalDofManager (int i) |
| Gives an internal dof manager from receiver. | |
| Function * | giveTimeFunction () |
| int | getIsImposedTimeFunctionNumber () const |
| void | setIsImposedTimeFunctionNumber (int funcIndx) |
| virtual bcValType | giveBCValType () const |
| virtual const IntArray & | giveDofIDs () const |
| virtual void | updateYourself (TimeStep *tStep) |
| Public Member Functions inherited from oofem::FEMComponent | |
| FEMComponent (int n, Domain *d) | |
| virtual | ~FEMComponent ()=default |
| Virtual destructor. | |
| Domain * | giveDomain () 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 void | postInitialize () |
| Performs post initialization steps. Called after all components are created and initialized. | |
| virtual int | checkConsistency () |
| virtual void | printOutputAt (FILE *file, TimeStep *tStep) |
| virtual void | printYourself () |
| Prints receiver state on stdout. Useful for debugging. | |
| virtual Interface * | giveInterface (InterfaceType t) |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). | |
Private Member Functions | |
| void | computeNArray (FloatArray &answer, const FloatArray &coords) const override |
Private Attributes | |
| double | loadOffset |
| bool | alreadyDisabled = false |
Additional Inherited Members | |
| Public Types inherited from oofem::BoundaryLoad | |
| enum | BL_CoordSystType { BL_GlobalMode , BL_LocalMode , BL_UpdatedGlobalMode } |
| Public Types inherited from oofem::Load | |
| enum | CoordSystType { CST_Global , CST_Local , CST_UpdatedGlobal } |
| enum | FormulationType { FT_Entity , FT_Global } |
| Public Attributes inherited from oofem::BoundaryLoad | |
| CoordSystType | CST_UpdatedGlobal |
| ScalarFunction | propertyMultExpr |
| Expression to multiply all properties. | |
| Public Attributes inherited from oofem::Load | |
| bool | reference |
| Protected Member Functions inherited from oofem::BoundaryLoad | |
| void | computeComponentArrayAt (FloatArray &answer, TimeStep *tStep, ValueModeType mode) override |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| Protected Attributes inherited from oofem::BoundaryLoad | |
| bcType | lType |
| Load type (its physical meaning). | |
| CoordSystType | coordSystemType |
| Load coordinate system. | |
| Dictionary | propertyDictionary |
| Additional b.c properties. | |
| Dictionary | propertyTimeFunctDictionary |
| Optional time-functions for properties. | |
| double | temperOffset |
| Temperature offset with regards to Kelvin. Default is 273.15. | |
| Protected Attributes inherited from oofem::Load | |
| FloatArray | componentArray |
| Components of boundary condition. | |
| IntArray | dofExcludeMask |
| 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. | |
| Domain * | domain |
| Link to domain object, useful for communicating with other FEM components. | |
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 68 of file freeconstantsurfaceload.h.
| oofem::FreeConstantSurfaceLoad::FreeConstantSurfaceLoad | ( | int | i, |
| Domain * | d ) |
Definition at line 53 of file freeconstantsurfaceload.C.
References loadOffset, and oofem::SurfaceLoad::SurfaceLoad().
|
inlineoverrideprivatevirtual |
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 94 of file freeconstantsurfaceload.h.
References oofem::FloatArray::clear().
|
overridevirtual |
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 94 of file freeconstantsurfaceload.C.
References oofem::FloatArray::beScaled(), oofem::Load::componentArray, oofem::GeneralBoundaryCondition::giveTimeFunction(), and OOFEM_ERROR.
|
inlineoverridevirtual |
Implements oofem::BoundaryLoad.
Definition at line 75 of file freeconstantsurfaceload.h.
|
inlineoverridevirtual |
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 85 of file freeconstantsurfaceload.h.
References oofem::SurfaceLoadBGT.
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 87 of file freeconstantsurfaceload.h.
|
overridevirtual |
Setups the input record string of receiver.
| input | Dynamic input record to be filled by receiver. |
Reimplemented from oofem::BoundaryLoad.
Definition at line 87 of file freeconstantsurfaceload.C.
References _IFT_FreeConstantSurfaceLoad_LoadOffset, loadOffset, and oofem::DynamicInputRecord::setField().
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 88 of file freeconstantsurfaceload.h.
References _IFT_FreeConstantSurfaceLoad_Name.
|
inline |
Definition at line 89 of file freeconstantsurfaceload.h.
References loadOffset.
|
overridevirtual |
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 59 of file freeconstantsurfaceload.C.
References _IFT_BoundaryLoad_cstype, _IFT_BoundaryLoad_loadtype, _IFT_BoundaryLoad_properties, _IFT_BoundaryLoad_propertyMultExpr, _IFT_BoundaryLoad_propertyTimeFunctions, _IFT_BoundaryLoad_temperOffset, _IFT_FreeConstantSurfaceLoad_LoadOffset, oofem::BoundaryLoad::coordSystemType, IR_GIVE_OPTIONAL_FIELD, loadOffset, oofem::BoundaryLoad::lType, oofem::BoundaryLoad::propertyDictionary, oofem::BoundaryLoad::propertyMultExpr, oofem::BoundaryLoad::propertyTimeFunctDictionary, and oofem::BoundaryLoad::temperOffset.
|
overridevirtual |
Returns nonzero if receiver representing BC is imposed at given time, otherwise returns zero.
| tStep | Time step representing time when receiver is tested. |
Reimplemented from oofem::GeneralBoundaryCondition.
Definition at line 104 of file freeconstantsurfaceload.C.
References alreadyDisabled, oofem::IntArray::at(), oofem::FEMComponent::domain, oofem::Element::giveBoundarySurfaceNodes(), oofem::Element::giveDofManagerNumber(), oofem::FEMComponent::giveNumber(), oofem::IntArray::giveSize(), and oofem::GeneralBoundaryCondition::set.
|
inline |
Sets a new load vector.
| newValue | New load. |
Definition at line 81 of file freeconstantsurfaceload.h.
References oofem::Load::componentArray.
|
private |
Definition at line 96 of file freeconstantsurfaceload.h.
Referenced by isImposed().
|
private |
Definition at line 95 of file freeconstantsurfaceload.h.
Referenced by FreeConstantSurfaceLoad(), giveInputRecord(), giveLoadOffset(), and initializeFrom().