35 #ifndef transportelement_h 36 #define transportelement_h 44 class TransportCrossSection;
285 #endif // transportelement_h
InternalStateType
Type representing the physical meaning of element or constitutive model internal variable.
virtual void computeTangentFromSurfaceLoad(FloatMatrix &answer, SurfaceLoad *load, int boundary, MatResponseMode rmode, TimeStep *tStep)
Computes the tangent contribution of the given load at the given boundary.
int giveInternalStateAtNode(FloatArray &answer, InternalStateType type, InternalStateMode mode, int node, TimeStep *tStep)
Returns internal state variable (like stress,strain) at node of element in Reduced form...
void assembleLocalContribution(FloatMatrix &answer, FloatMatrix &src, int ndofs, int rdof, int cdof)
Assembles the given source matrix of size (ndofs, ndofs) into target matrix answer.
virtual void computeBCVectorAt(FloatArray &answer, TimeStep *tStep, ValueModeType mode)
Computes the RHS contribution to balance equation(s) due to boundary conditions.
virtual void computeCapacityMatrix(FloatMatrix &answer, TimeStep *tStep)
Computes the capacity matrix of the receiver.
Abstract class representing field of primary variables (those, which are unknown and are typically as...
virtual int checkConsistency()
Performs consistency check.
ValueModeType
Type representing the mode of UnknownType or CharType, or similar types.
Class implementing element body load, acting over whole element volume (e.g., the dead weight)...
virtual void giveCharacteristicMatrix(FloatMatrix &answer, CharType type, TimeStep *tStep)
Computes characteristic matrix of receiver of requested type in given time step.
virtual void computeInternalSourceRhsVectorAt(FloatArray &answer, TimeStep *tStep, ValueModeType mode)
Computes the contribution to balance equation(s) due to internal sources.
virtual void computeExternalForcesVector(FloatArray &answer, TimeStep *tStep, ValueModeType mode)
virtual int giveApproxOrder(int unknownIndx)
Abstract base class for all finite elements.
virtual void computeBmatrixAt(FloatMatrix &answer, const FloatArray &lcoords)
virtual void computeIntSourceLHSMatrix(FloatMatrix &answer, TimeStep *tStep)
Computes the LHS contribution to balance equation(s) due to material internal source.
virtual void computeNAt(FloatArray &answer, const FloatArray &lcoord)
Computes the basis functions.
Class implementing an array of integers.
MatResponseMode
Describes the character of characteristic material matrix.
virtual void computeTangentFromEdgeLoad(FloatMatrix &answer, EdgeLoad *load, int boundary, MatResponseMode rmode, TimeStep *tStep)
Computes the tangent contribution of the given load at the given boundary.
virtual void computeConductivityMatrix(FloatMatrix &answer, MatResponseMode rMode, TimeStep *tStep)
Computes the conductivity matrix of the receiver.
virtual void computeNmatrixAt(FloatMatrix &answer, const FloatArray &lcoords)
Computes the interpolation matrix corresponding to all unknowns.
virtual void computeGradientMatrixAt(FloatMatrix &answer, const FloatArray &lcoords)
Computes the gradient matrix corresponding to one unknown.
virtual void computeSurfaceNAt(FloatArray &answer, int iSurf, const FloatArray &lcoord)
virtual void computeInertiaForcesVector(FloatArray &answer, TimeStep *tStep)
Abstract base class representing integration rule.
virtual void computeCapacitySubMatrix(FloatMatrix &answer, MatResponseMode rmode, int iri, TimeStep *tStep)
Computes the matrix .
void computeBodyBCSubVectorAt(FloatArray &answer, Load *load, TimeStep *tStep, ValueModeType mode, int indx)
virtual void computeInternalForcesVector(FloatArray &answer, TimeStep *tStep)
void computeSurfaceBCSubVectorAt(FloatArray &answer, Load *load, int iSurf, TimeStep *tStep, ValueModeType mode, int indx)
Computes the part of RHS due to applied BCs on particular surface.
virtual double computeEdgeVolumeAround(GaussPoint *gp, int iEdge)=0
Computes the length around a integration point on a edge.
virtual void computeInternalSourceRhsSubVectorAt(FloatArray &answer, TimeStep *, ValueModeType mode, int indx)
Computes the contribution to balance equation(s) due to internal sources.
Abstract base class representing a boundary load (force, momentum, ...) that acts directly on a bound...
virtual void giveSurfaceDofMapping(IntArray &mask, int iSurf)
This abstract class represent a general base element class for transport problems.
virtual void computeFlow(FloatArray &answer, GaussPoint *gp, TimeStep *tStep)
Computes a flow vector in an integration point.
virtual int EIPrimaryFieldI_evaluateFieldVectorAt(FloatArray &answer, PrimaryField &pf, const FloatArray &coords, IntArray &dofId, ValueModeType mode, TimeStep *tStep)
Evaluates the value of field at given point of interest (should be located inside receiver's volume) ...
Abstract base class representing an edge load (force, momentum, ...) that acts directly on a edge bou...
virtual void computeField(ValueModeType mode, TimeStep *tStep, const FloatArray &lcoords, FloatArray &answer)
Computes the unknown vector interpolated at the specified local coordinates.
Abstract base class for all material models.
virtual void computeLumpedCapacityVector(FloatArray &answer, TimeStep *tStep)
void computeBCSubVectorAt(FloatArray &answer, TimeStep *tStep, ValueModeType mode, int indx)
Computes the part of RHS due to applied BCs.
Class representing vector of real numbers.
virtual double computeSurfaceVolumeAround(GaussPoint *gp, int iSurf)
Abstract base class representing a surface load (force, momentum, ...) that acts directly on a surfac...
Implementation of matrix containing floating point numbers.
virtual void computeLoadVector(FloatArray &answer, BodyLoad *load, CharType type, ValueModeType mode, TimeStep *tStep)
Computes the contribution of the given body load (volumetric).
virtual void computeConductivitySubMatrix(FloatMatrix &answer, int iri, MatResponseMode rmode, TimeStep *tStep)
Computes the matrix .
virtual double giveThicknessAt(const FloatArray &gcoords)
Gives the thickness at some global coordinate.
virtual void computeIntSourceLHSSubMatrix(FloatMatrix &answer, MatResponseMode rmode, int iri, TimeStep *tStep)
Computes the part of internal source LHS contribution corresponding to unknown identified by rmode pa...
virtual void computeConstitutiveMatrixAt(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep)
Computes constitutive matrix of receiver.
static const double stefanBoltzmann
Stefan–Boltzmann constant W/m2/K4.
virtual void computeBCMtrxAt(FloatMatrix &answer, TimeStep *tStep, ValueModeType mode)
Computes the LHS contribution to balance equation(s) due to boundary conditions.
void computeEdgeBCSubVectorAt(FloatArray &answer, Load *load, int iEdge, TimeStep *tStep, ValueModeType mode, int indx)
Computes the part of RHS due to applied BCs on particular edge.
virtual IntegrationRule * GetSurfaceIntegrationRule(int approxOrder)
Load is base abstract class for all loads.
virtual void giveEdgeDofMapping(IntArray &mask, int iEdge)
Gives the node indexes for given edge.
TransportCrossSection * giveTransportCrossSection()
the oofem namespace is to define a context or scope in which all oofem names are defined.
virtual void giveCharacteristicVector(FloatArray &answer, CharType type, ValueModeType mode, TimeStep *tStep)
Computes characteristic vector of receiver of requested type in given time step.
virtual void computeBoundarySurfaceLoadVector(FloatArray &answer, BoundaryLoad *load, int boundary, CharType type, ValueModeType mode, TimeStep *tStep, bool global=true)
Computes the contribution of the given load at the given boundary surface in global coordinate system...
TransportElement(int n, Domain *d, ElementMode em=HeatTransferEM)
virtual Material * giveMaterial()
virtual void updateInternalState(TimeStep *tStep)
Updates element state after equilibrium in time step has been reached.
Class representing integration point in finite element program.
Class representing solution step.
virtual void computeBoundaryEdgeLoadVector(FloatArray &answer, BoundaryLoad *load, int edge, CharType type, ValueModeType mode, TimeStep *tStep, bool global=true)
Computes the contribution of the given load at the given boundary edge.
InternalStateMode
Determines the mode of internal variable.
virtual void giveDofManDofIDMask(int inode, IntArray &answer) const
Returns dofmanager dof mask for node.
void computeBCSubMtrxAt(FloatMatrix &answer, TimeStep *tStep, ValueModeType mode, int indx)
Computes the part of LHS due to applied BCs.
virtual ~TransportElement()
virtual void computeEgdeNAt(FloatArray &answer, int iEdge, const FloatArray &lcoord)
Computes the basis functions at the edge for one unknown.