OOFEM 3.0
Loading...
Searching...
No Matches
oofem::LinearEdgeLoad Class Reference

#include <linearedgeload.h>

Inheritance diagram for oofem::LinearEdgeLoad:
Collaboration diagram for oofem::LinearEdgeLoad:

Public Member Functions

 LinearEdgeLoad (int i, Domain *d)
virtual ~LinearEdgeLoad ()
int giveApproxOrder () override
void initializeFrom (InputRecord &ir) override
void giveInputRecord (DynamicInputRecord &input) override
bcGeomType giveBCGeoType () const override
FormulationType giveFormulationType () override
const char * giveClassName () const override
const char * giveInputRecordName () const override
Public Member Functions inherited from oofem::EdgeLoad
 EdgeLoad (int i, Domain *d)
Public Member Functions inherited from oofem::BoundaryLoad
 BoundaryLoad (int i, Domain *d)
void computeValueAt (FloatArray &answer, TimeStep *tStep, const FloatArray &coords, ValueModeType mode) override
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
void initializeFrom (InputRecord &ir) override
void giveInputRecord (DynamicInputRecord &input) override
const FloatArraygiveComponentArray () 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 DofManagergiveInternalDofManager (int i)
 Gives an internal dof manager from receiver.
FunctiongiveTimeFunction ()
int getIsImposedTimeFunctionNumber () const
void setIsImposedTimeFunctionNumber (int funcIndx)
virtual bcValType giveBCValType () const
virtual bool isImposed (TimeStep *tStep)
virtual const IntArraygiveDofIDs () const
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 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 InterfacegiveInterface (InterfaceType t)
std::string errorInfo (const char *func) const
 Returns string for prepending output (used by error reporting macros).

Protected Member Functions

void computeNArray (FloatArray &answer, const FloatArray &coords) const override
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

FloatArray startCoords
 Coordinates of start and end point.
FloatArray endCoords
FormulationType formulation
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.
Domaindomain
 Link to domain object, useful for communicating with other FEM components.

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

Detailed Description

This class implements a linear boundary load (force, moment,...) that acts on straight segment. 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, ...).

Note
{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 linearedgeload.h.

Constructor & Destructor Documentation

◆ LinearEdgeLoad()

oofem::LinearEdgeLoad::LinearEdgeLoad ( int i,
Domain * d )
inline

Definition at line 76 of file linearedgeload.h.

References oofem::EdgeLoad::EdgeLoad().

Referenced by oofem::InteractionLoad::InteractionLoad().

◆ ~LinearEdgeLoad()

virtual oofem::LinearEdgeLoad::~LinearEdgeLoad ( )
inlinevirtual

Definition at line 77 of file linearedgeload.h.

Member Function Documentation

◆ computeNArray()

void oofem::LinearEdgeLoad::computeNArray ( FloatArray & answer,
const FloatArray & coords ) const
overrideprotectedvirtual

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.

Parameters
answerApproximation vector.
coordsGlobal integration point coordinates.

Implements oofem::BoundaryLoad.

Definition at line 77 of file linearedgeload.C.

References oofem::FloatArray::at(), oofem::distance(), endCoords, formulation, oofem::Load::FT_Global, oofem::FloatArray::giveSize(), length(), OOFEM_WARNING, oofem::FloatArray::resize(), startCoords, oofem::FloatArray::subtract(), and oofem::FloatArray::zero().

◆ giveApproxOrder()

int oofem::LinearEdgeLoad::giveApproxOrder ( )
inlineoverridevirtual
Returns
Approximation order of load geometry.

Implements oofem::BoundaryLoad.

Definition at line 79 of file linearedgeload.h.

◆ giveBCGeoType()

bcGeomType oofem::LinearEdgeLoad::giveBCGeoType ( ) const
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 82 of file linearedgeload.h.

References oofem::EdgeLoadBGT.

◆ giveClassName()

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

Implements oofem::FEMComponent.

Definition at line 85 of file linearedgeload.h.

◆ giveFormulationType()

FormulationType oofem::LinearEdgeLoad::giveFormulationType ( )
inlineoverridevirtual

Specifies is load should take local or global coordinates.

Reimplemented from oofem::Load.

Definition at line 83 of file linearedgeload.h.

References formulation.

◆ giveInputRecord()

void oofem::LinearEdgeLoad::giveInputRecord ( DynamicInputRecord & input)
overridevirtual

Setups the input record string of receiver.

Parameters
inputDynamic input record to be filled by receiver.

Reimplemented from oofem::BoundaryLoad.

Definition at line 65 of file linearedgeload.C.

References _IFT_LinearEdgeLoad_endcoord, _IFT_LinearEdgeLoad_formulation, _IFT_LinearEdgeLoad_startcoord, endCoords, formulation, oofem::Load::FT_Global, oofem::DynamicInputRecord::setField(), and startCoords.

◆ giveInputRecordName()

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

Implements oofem::FEMComponent.

Definition at line 86 of file linearedgeload.h.

References _IFT_LinearEdgeLoad_Name.

◆ initializeFrom()

void oofem::LinearEdgeLoad::initializeFrom ( InputRecord & ir)
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 45 of file linearedgeload.C.

References _IFT_LinearEdgeLoad_endcoord, _IFT_LinearEdgeLoad_formulation, _IFT_LinearEdgeLoad_startcoord, endCoords, formulation, oofem::Load::FT_Entity, oofem::Load::FT_Global, IR_GIVE_FIELD, IR_GIVE_OPTIONAL_FIELD, and startCoords.

Member Data Documentation

◆ endCoords

FloatArray oofem::LinearEdgeLoad::endCoords
protected

Definition at line 72 of file linearedgeload.h.

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

◆ formulation

FormulationType oofem::LinearEdgeLoad::formulation
protected

◆ startCoords

FloatArray oofem::LinearEdgeLoad::startCoords
protected

Coordinates of start and end point.

Definition at line 72 of file linearedgeload.h.

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


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