|
OOFEM 3.0
|
#include <lattice3d_mt.h>
Public Member Functions | |
| Lattice3d_mt (int, Domain *, ElementMode em=HeatTransferEM) | |
| void | computeInternalSourceRhsVectorAt (FloatArray &answer, TimeStep *, ValueModeType mode) override |
| double | computeVolumeAround (GaussPoint *) override |
| int | computeGlobalCoordinates (FloatArray &answer, const FloatArray &lcoords) override |
| bool | computeLocalCoordinates (FloatArray &answer, const FloatArray &gcoords) override |
| void | computeConductivityMatrix (FloatMatrix &answer, MatResponseMode rmode, TimeStep *tStep) override |
| void | computeGeometryProperties () |
| void | computeCrossSectionProperties () |
| void | computeSpecialCrossSectionProperties () |
| void | computeCapacityMatrix (FloatMatrix &answer, TimeStep *tStep) override |
| const char * | giveInputRecordName () const override |
| const char * | giveClassName () const override |
| Element_Geometry_Type | giveGeometryType () const override |
| int | computeNumberOfDofs () override |
| void | giveDofManDofIDMask (int inode, IntArray &) const override |
| void | initializeFrom (InputRecord &ir, int priority) override |
| void | postInitialize () override |
| Performs post initialization steps. | |
| void | updateInternalState (TimeStep *tStep) override |
| double | giveLength () override |
| double | giveArea () override |
| int | giveCouplingFlag () override |
| void | giveCouplingNumbers (IntArray &numbers) override |
| void | giveCrackWidths (FloatArray &widths) override |
| void | giveCrackLengths (FloatArray &lengths) override |
| void | giveCrossSectionCoordinates (FloatArray &coords) override |
| int | giveNumberOfCrossSectionNodes () override |
| void | computeFlow (FloatArray &answer, GaussPoint *gp, TimeStep *tStep) override |
| void | drawYourself (oofegGraphicContext &gc, TimeStep *tStep) override |
| void | drawRawGeometry (oofegGraphicContext &, TimeStep *tStep) override |
| void | drawRawCrossSections (oofegGraphicContext &gc, TimeStep *tStep) |
| Public Member Functions inherited from oofem::LatticeTransportElement | |
| LatticeTransportElement (int, Domain *, ElementMode) | |
| virtual double | giveRadius () |
| virtual double | givePressure () |
| virtual double | giveOldPressure () |
| virtual double | giveMass () |
| virtual void | giveGpCoordinates (FloatArray &coords) |
| virtual double | computeLatticeVolumeAroundIt () |
| Public Member Functions inherited from oofem::TransportElement | |
| TransportElement (int n, Domain *d, ElementMode em=HeatTransferEM) | |
| void | giveCharacteristicMatrix (FloatMatrix &answer, CharType type, TimeStep *tStep) override |
| void | giveCharacteristicVector (FloatArray &answer, CharType type, ValueModeType mode, TimeStep *tStep) override |
| void | giveDofManDofIDMask (int inode, IntArray &answer) const override |
| virtual void | computeInternalForcesVector (FloatArray &answer, TimeStep *tStep) |
| virtual void | computeExternalForcesVector (FloatArray &answer, TimeStep *tStep, ValueModeType mode) |
| virtual void | computeInertiaForcesVector (FloatArray &answer, TimeStep *tStep) |
| virtual void | computeLumpedCapacityVector (FloatArray &answer, TimeStep *tStep) |
| void | computeLoadVector (FloatArray &answer, BodyLoad *load, CharType type, ValueModeType mode, TimeStep *tStep) override |
| void | computeBoundarySurfaceLoadVector (FloatArray &answer, BoundaryLoad *load, int boundary, CharType type, ValueModeType mode, TimeStep *tStep, bool global=true) override |
| void | computeTangentFromSurfaceLoad (FloatMatrix &answer, BoundaryLoad *load, int boundary, MatResponseMode rmode, TimeStep *tStep) override |
| void | computeTangentFromEdgeLoad (FloatMatrix &answer, BoundaryLoad *load, int boundary, MatResponseMode rmode, TimeStep *tStep) override |
| void | computeBoundaryEdgeLoadVector (FloatArray &answer, BoundaryLoad *load, int edge, CharType type, ValueModeType mode, TimeStep *tStep, bool global=true) override |
| void | computeField (ValueModeType mode, TimeStep *tStep, const FloatArray &lcoords, FloatArray &answer) override |
| TransportCrossSection * | giveTransportCrossSection () |
| Material * | giveMaterial () override |
| void | initializeFrom (InputRecord &ir, int priority) override |
| void | postInitialize () override |
| Performs post initialization steps. | |
| const char * | giveClassName () const override |
| virtual double | giveThicknessAt (const FloatArray &gcoords) |
| virtual void | computeBCVectorAt (FloatArray &answer, TimeStep *tStep, ValueModeType mode) |
| virtual void | computeBCMtrxAt (FloatMatrix &answer, TimeStep *tStep, ValueModeType mode) |
| virtual void | computeIntSourceLHSMatrix (FloatMatrix &answer, TimeStep *tStep) |
| virtual void | computeIntSourceLHSSubMatrix (FloatMatrix &answer, MatResponseMode rmode, int iri, TimeStep *tStep) |
| virtual double | computeVof (TimeStep *tStep) |
| void | updateInternalState (TimeStep *tStep) override |
| int | checkConsistency () override |
| virtual int | EIPrimaryFieldI_evaluateFieldVectorAt (FloatArray &answer, PrimaryField &pf, const FloatArray &coords, IntArray &dofId, ValueModeType mode, TimeStep *tStep) override |
| int | giveInternalStateAtNode (FloatArray &answer, InternalStateType type, InternalStateMode mode, int node, TimeStep *tStep) override |
| virtual void | computeConstitutiveMatrixAt (FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) |
| Public Member Functions inherited from oofem::Element | |
| Element (int n, Domain *aDomain) | |
| Element (const Element &src)=delete | |
| Element & | operator= (const Element &src)=delete |
| virtual | ~Element () |
| Virtual destructor. | |
| void | giveLocationArray (IntArray &locationArray, const UnknownNumberingScheme &s, IntArray *dofIds=NULL) const |
| void | giveLocationArray (IntArray &locationArray, const IntArray &dofIDMask, const UnknownNumberingScheme &s, IntArray *dofIds=NULL) const |
| virtual void | giveBoundaryLocationArray (IntArray &locationArray, const IntArray &bNodes, const UnknownNumberingScheme &s, IntArray *dofIds=NULL) |
| virtual void | giveBoundaryLocationArray (IntArray &locationArray, const IntArray &bNodes, const IntArray &dofIDMask, const UnknownNumberingScheme &s, IntArray *dofIds=NULL) |
| virtual int | giveNumberOfDofs () |
| virtual int | giveNumberOfInternalDofManagers () const |
| virtual DofManager * | giveInternalDofManager (int i) const |
| virtual void | setInternalDofManager (int num, std::unique_ptr< DofManager > dm) |
| virtual double | giveCharacteristicValue (CharType type, TimeStep *tStep) |
| const IntArray & | giveBodyLoadList () const |
| const IntArray & | giveBoundaryLoadList () const |
| void | computeVectorOf (ValueModeType u, TimeStep *tStep, FloatArray &answer) |
| void | computeVectorOf (const IntArray &dofIDMask, ValueModeType u, TimeStep *tStep, FloatArray &answer, bool padding=false) |
| void | computeBoundaryVectorOf (const IntArray &bNodes, const IntArray &dofIDMask, ValueModeType u, TimeStep *tStep, FloatArray &answer, bool padding=false) |
| void | computeVectorOf (PrimaryField &field, const IntArray &dofIDMask, ValueModeType u, TimeStep *tStep, FloatArray &answer, bool padding=false) |
| void | computeVectorOfPrescribed (ValueModeType u, TimeStep *tStep, FloatArray &answer) |
| void | computeVectorOfPrescribed (const IntArray &dofIDMask, ValueModeType type, TimeStep *tStep, FloatArray &answer) |
| virtual int | computeNumberOfGlobalDofs () |
| int | computeNumberOfPrimaryMasterDofs () |
| virtual bool | computeGtoLRotationMatrix (FloatMatrix &answer) |
| virtual bool | giveRotationMatrix (FloatMatrix &answer) |
| virtual bool | computeDofTransformationMatrix (FloatMatrix &answer, const IntArray &nodes, bool includeInternal) |
| virtual void | giveInternalDofManDofIDMask (int inode, IntArray &answer) const |
| virtual void | giveElementDofIDMask (IntArray &answer) const |
| virtual double | computeVolumeAreaOrLength () |
| Computes the volume, area or length of the element depending on its spatial dimension. | |
| double | computeMeanSize () |
| virtual double | computeVolume () |
| virtual double | computeArea () |
| virtual double | computeLength () |
| virtual IntArray | giveBoundaryEdgeNodes (int boundary, bool includeHierarchical=false) const |
| virtual IntArray | giveBoundarySurfaceNodes (int boundary, bool includeHierarchical=false) const |
| virtual IntArray | giveBoundaryNodes (int boundary) const |
| virtual std::unique_ptr< IntegrationRule > | giveBoundaryEdgeIntegrationRule (int order, int boundary) |
| virtual std::unique_ptr< IntegrationRule > | giveBoundarySurfaceIntegrationRule (int order, int boundary) |
| int | giveDofManagerNumber (int i) const |
| const IntArray & | giveDofManArray () const |
| void | addDofManager (DofManager *dMan) |
| DofManager * | giveDofManager (int i) const |
| Node * | giveNode (int i) const |
| virtual ElementSide * | giveSide (int i) const |
| virtual FEInterpolation * | giveInterpolation () const |
| virtual FEInterpolation * | giveInterpolation (DofIDItem id) const |
| virtual const FEInterpolation * | getGeometryInterpolation () const |
| int | giveMaterialNumber () const |
| CrossSection * | giveCrossSection () |
| int | getActivityTimeFunctionNumber () |
| void | setActivityTimeFunctionNumber (int funcIndx) |
| void | setMaterial (int matIndx) |
| virtual void | setCrossSection (int csIndx) |
| virtual int | giveNumberOfDofManagers () const |
| void | setNumberOfDofManagers (int i) |
| Sets number of element dof managers. | |
| virtual int | giveNumberOfNodes () const |
| void | setDofManagers (const IntArray &dmans) |
| void | setDofManager (int id, int dm) |
| void | setBodyLoads (const IntArray &bodyLoads) |
| void | setIntegrationRules (std ::vector< std ::unique_ptr< IntegrationRule > > irlist) |
| virtual integrationDomain | giveIntegrationDomain () const |
| virtual MaterialMode | giveMaterialMode () |
| virtual int | giveIntegrationRuleLocalCodeNumbers (IntArray &answer, IntegrationRule &ie) |
| int | giveRegionNumber () |
| virtual void | updateYourself (TimeStep *tStep) |
| virtual void | initializeYourself (TimeStep *timeStepWhenICApply) |
| virtual bool | isActivated (TimeStep *tStep) |
| virtual bool | isCast (TimeStep *tStep) |
| virtual void | initForNewStep () |
| virtual Element_Geometry_Type | giveEdgeGeometryType (int id) const |
| Returns the receiver edge geometry type. | |
| virtual Element_Geometry_Type | giveSurfaceGeometryType (int id) const |
| Returns the receiver surface geometry type. | |
| virtual int | giveSpatialDimension () |
| virtual int | giveNumberOfBoundarySides () |
| Returns number of boundaries (entities of element_dimension-1: points, edges, surfaces). | |
| virtual int | giveNumberOfEdges () const |
| virtual int | giveNumberOfSurfaces () const |
| virtual int | giveDefaultIntegrationRule () const |
| virtual IntegrationRule * | giveDefaultIntegrationRulePtr () |
| int | giveNumberOfIntegrationRules () |
| virtual IntegrationRule * | giveIntegrationRule (int i) |
| std::vector< std ::unique_ptr< IntegrationRule > > & | giveIntegrationRulesArray () |
| virtual int | testElementExtension (ElementExtension ext) |
| virtual int | giveIPValue (FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) |
| int | giveGlobalIPValue (FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) |
| virtual double | giveLengthInDir (const FloatArray &normalToCrackPlane) |
| virtual double | giveCharacteristicLength (const FloatArray &normalToCrackPlane) |
| double | giveCharacteristicLengthForPlaneElements (const FloatArray &normalToCrackPlane) |
| double | giveCharacteristicLengthForAxisymmElements (const FloatArray &normalToCrackPlane) |
| virtual double | giveCharacteristicSize (GaussPoint *gp, FloatArray &normalToCrackPlane, ElementCharSizeMethod method) |
| virtual double | giveParentElSize () const |
| virtual void | updateBeforeNonlocalAverage (TimeStep *tStep) |
| virtual int | giveLocalCoordinateSystem (FloatMatrix &answer) |
| virtual void | giveLocalCoordinateSystemVector (InternalStateType isttype, FloatArray &answer) |
| virtual void | computeMidPlaneNormal (FloatArray &answer, const GaussPoint *gp) |
| virtual int | adaptiveMap (Domain *oldd, TimeStep *tStep) |
| virtual int | mapStateVariables (Domain &iOldDom, const TimeStep &iTStep) |
| virtual int | adaptiveUpdate (TimeStep *tStep) |
| virtual int | adaptiveFinish (TimeStep *tStep) |
| void | updateLocalNumbering (EntityRenumberingFunctor &f) override |
| template<class T> | |
| void | ipEvaluator (T *src, void(T ::*f)(GaussPoint *gp)) |
| Integration point evaluator, loops over receiver IP's and calls given function (passed as f parameter) on them. The IP is parameter to function f. | |
| template<class T, class S> | |
| void | ipEvaluator (T *src, void(T ::*f)(GaussPoint *, S &), S &_val) |
| Integration point evaluator, loops over receiver IP's and calls given function (passed as f parameter) on them. The IP is parameter to function f as well as additional array. | |
| virtual void | drawAnnotation (oofegGraphicContext &gc, TimeStep *tStep) |
| virtual void | drawDeformedGeometry (oofegGraphicContext &gc, TimeStep *tStep, UnknownType) |
| virtual void | drawScalar (oofegGraphicContext &gc, TimeStep *tStep) |
| virtual void | drawSpecial (oofegGraphicContext &gc, TimeStep *tStep) |
| virtual void | giveLocalIntVarMaxMin (oofegGraphicContext &gc, TimeStep *tStep, double &emin, double &emax) |
| virtual int | giveInternalStateAtSide (FloatArray &answer, InternalStateType type, InternalStateMode mode, int side, TimeStep *tStep) |
| virtual void | showSparseMtrxStructure (CharType mtrx, oofegGraphicContext &gc, TimeStep *tStep) |
| Shows sparse structure. | |
| virtual void | showExtendedSparseMtrxStructure (CharType mtrx, oofegGraphicContext &gc, TimeStep *tStep) |
| Shows extended sparse structure (for example, due to nonlocal interactions for tangent stiffness). | |
| int | giveLabel () const |
| int | giveGlobalNumber () const |
| void | setGlobalNumber (int num) |
| elementParallelMode | giveParallelMode () const |
| void | setParallelMode (elementParallelMode _mode) |
| Sets parallel mode of element. | |
| virtual elementParallelMode | giveKnotSpanParallelMode (int) const |
| int | packUnknowns (DataStream &buff, TimeStep *tStep) |
| int | unpackAndUpdateUnknowns (DataStream &buff, TimeStep *tStep) |
| int | estimatePackSize (DataStream &buff) |
| const IntArray * | givePartitionList () const |
| void | setPartitionList (IntArray &pl) |
| virtual double | predictRelativeComputationalCost () |
| virtual double | giveRelativeSelfComputationalCost () |
| virtual double | predictRelativeRedistributionCost () |
| IntArray * | giveBodyLoadArray () |
| Returns array containing load numbers of loads acting on element. | |
| IntArray * | giveBoundaryLoadArray () |
| Returns array containing load numbers of boundary loads acting on element. | |
| void | initializeFinish () override |
| void | giveInputRecord (DynamicInputRecord &input) override |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| void | printOutputAt (FILE *file, TimeStep *tStep) override |
| virtual const IntArray | giveLocation () |
| virtual void | recalculateCoordinates (int nodeNumber, FloatArray &coords) |
| void | setSharedEdgeID (int iedge, int globalID) |
| void | setSharedSurfaceID (int isurf, int globalID) |
| const IntArray * | giveSharedEdgeIDs () const |
| const IntArray * | giveSharedSurfaceIDs () const |
| 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 | initializeFrom (InputRecord &ir) |
| 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). | |
| Public Member Functions inherited from oofem::EIPrimaryFieldInterface | |
| EIPrimaryFieldInterface () | |
| Public Member Functions inherited from oofem::Interface | |
| Interface () | |
| Constructor. | |
| virtual | ~Interface () |
Protected Member Functions | |
| void | computeGaussPoints () override |
| void | computeGradientMatrixAt (FloatMatrix &answer, const FloatArray &lcoords) override |
| void | computeBmatrixAt (FloatMatrix &answer, const FloatArray &lcoords) override |
| void | computeNmatrixAt (FloatMatrix &n, const FloatArray &) override |
| double | computeEdgeVolumeAround (GaussPoint *gp, int iEdge) override |
| void | computeNSubMatrixAt (FloatMatrix &n, const FloatArray &) |
| int | giveApproxOrder (int unknownIndx) override |
| Protected Member Functions inherited from oofem::TransportElement | |
| virtual void | computeCapacitySubMatrix (FloatMatrix &answer, MatResponseMode rmode, int iri, TimeStep *tStep) |
| virtual void | computeConductivitySubMatrix (FloatMatrix &answer, int iri, MatResponseMode rmode, TimeStep *tStep) |
| void | computeBCSubVectorAt (FloatArray &answer, TimeStep *tStep, ValueModeType mode, int indx) |
| void | computeBCSubMtrxAt (FloatMatrix &answer, TimeStep *tStep, ValueModeType mode, int indx) |
| void | computeBodyBCSubVectorAt (FloatArray &answer, Load *load, TimeStep *tStep, ValueModeType mode, int indx) |
| void | computeEdgeBCSubVectorAt (FloatArray &answer, Load *load, int iEdge, TimeStep *tStep, ValueModeType mode, int indx) |
| void | computeSurfaceBCSubVectorAt (FloatArray &answer, Load *load, int iSurf, TimeStep *tStep, ValueModeType mode, int indx) |
| virtual void | computeNAt (FloatArray &answer, const FloatArray &lcoord) |
| virtual void | computeInternalSourceRhsSubVectorAt (FloatArray &answer, TimeStep *, ValueModeType mode, int indx) |
| virtual void | computeEgdeNAt (FloatArray &answer, int iEdge, const FloatArray &lcoord) |
| virtual void | giveEdgeDofMapping (IntArray &mask, int iEdge) |
| virtual void | computeSurfaceNAt (FloatArray &answer, int iSurf, const FloatArray &lcoord) |
| virtual double | computeSurfaceVolumeAround (GaussPoint *gp, int iSurf) |
| virtual void | giveSurfaceDofMapping (IntArray &mask, int iSurf) |
| void | assembleLocalContribution (FloatMatrix &answer, FloatMatrix &src, int ndofs, int rdof, int cdof) |
| void | assembleLocalContribution (FloatArray &answer, FloatArray &src, int ndofs, int rdof) |
Protected Attributes | |
| double | minLength = 0. |
| double | length = 0. |
| double | I1 = 0. |
| double | I2 = 0. |
| double | Ip = 0. |
| FloatArray | polygonCoords |
| int | numberOfPolygonVertices |
| FloatMatrix | localCoordinateSystem |
| double | eccS = 0. |
| double | eccT = 0. |
| double | area = 0. |
| FloatArray | midPoint |
| FloatArray | centroid |
| FloatArray | globalCentroid |
| int | geometryFlag = 0 |
| FloatArray | normal |
| int | couplingFlag = 0 |
| IntArray | couplingNumbers |
| FloatArray | crackWidths |
| FloatArray | crackLengths |
| double | dimension = 0. |
| Protected Attributes inherited from oofem::TransportElement | |
| ElementMode | emode |
| int | vofFunction = 0 |
| Fuction determining the relative volume of reference material in element. | |
| Protected Attributes inherited from oofem::Element | |
| int | numberOfDofMans |
| Number of dofmanagers. | |
| IntArray | dofManArray |
| Array containing dofmanager numbers. | |
| int | material |
| Number of associated material. | |
| int | crossSection |
| Number of associated cross section. | |
| IntArray | bodyLoadArray |
| IntArray | boundaryLoadArray |
| std::vector< std ::unique_ptr< IntegrationRule > > | integrationRulesArray |
| FloatMatrix | elemLocalCS |
| Transformation material matrix, used in orthotropic and anisotropic materials, global->local transformation. | |
| int | activityTimeFunction |
| Element activity time function. If defined, nonzero value indicates active receiver, zero value inactive element. | |
| int | globalNumber |
| int | numberOfGaussPoints |
| elementParallelMode | parallel_mode |
| Determines the parallel mode of the element. | |
| IntArray | partitions |
| IntArray | globalEdgeIDs |
| IntArray | globalSurfaceIDs |
| Protected Attributes inherited from oofem::FEMComponent | |
| int | number |
| Component number. | |
| Domain * | domain |
| Link to domain object, useful for communicating with other FEM components. | |
Static Protected Attributes | |
| static ParamKey | IPK_Lattice3d_mt_polycoords |
| static ParamKey | IPK_Lattice3d_mt_crackwidths |
| static ParamKey | IPK_Lattice3d_mt_couplingflag |
| static ParamKey | IPK_Lattice3d_mt_couplingnumber |
| static ParamKey | IPK_Lattice3d_mt_dim |
| static ParamKey | IPK_Lattice3d_mt_area |
| static ParamKey | IPK_Lattice3d_mt_ranarea |
| static ParamKey | IPK_Lattice3d_mt_mlength |
| Static Protected Attributes inherited from oofem::TransportElement | |
| static const double | stefanBoltzmann = 5.67e-8 |
| Stefan–Boltzmann constant W/m2/K4. | |
| static ParamKey | IPK_TransportElement_vof_function |
Additional Inherited Members | |
| Public Types inherited from oofem::TransportElement | |
| enum | ElementMode { HeatTransferEM , HeatMass1TransferEM , Mass1TransferEM } |
| Static Public Attributes inherited from oofem::Element | |
| static ParamKey | IPK_Element_mat |
| static ParamKey | IPK_Element_crosssect |
| static ParamKey | IPK_Element_nodes |
| static ParamKey | IPK_Element_bodyload |
| static ParamKey | IPK_Element_boundaryload |
| static ParamKey | IPK_Element_lcs |
| static ParamKey | IPK_Element_partitions |
| static ParamKey | IPK_Element_remote |
| static ParamKey | IPK_Element_activityTimeFunction |
| static ParamKey | IPK_Element_nip |
This class implements a 3-dimensional lattice mass transport element
Definition at line 61 of file lattice3d_mt.h.
| oofem::Lattice3d_mt::Lattice3d_mt | ( | int | n, |
| Domain * | aDomain, | ||
| ElementMode | em = HeatTransferEM ) |
Definition at line 71 of file lattice3d_mt.C.
References couplingFlag, dimension, oofem::LatticeTransportElement::LatticeTransportElement(), minLength, oofem::Element::numberOfDofMans, and oofem::Element::numberOfGaussPoints.
|
inlineoverrideprotectedvirtual |
Reimplemented from oofem::TransportElement.
Definition at line 150 of file lattice3d_mt.h.
References computeGradientMatrixAt().
|
overridevirtual |
Computes the capacity matrix of the receiver
Reimplemented from oofem::TransportElement.
Definition at line 633 of file lattice3d_mt.C.
References oofem::FloatMatrix::at(), computeVolumeAround(), dimension, oofem::Element::giveCharacteristicValue(), oofem::TransportElement::giveMaterial(), oofem::Element::integrationRulesArray, oofem::FloatMatrix::resize(), oofem::FloatMatrix::times(), and oofem::FloatMatrix::zero().
|
overridevirtual |
Computes the conductivity matrix of the receiver
Reimplemented from oofem::TransportElement.
Definition at line 611 of file lattice3d_mt.C.
References oofem::FloatMatrix::at(), computeVolumeAround(), oofem::Element::giveCharacteristicValue(), giveLength(), oofem::TransportElement::giveMaterial(), oofem::Element::integrationRulesArray, length, oofem::FloatMatrix::resize(), oofem::FloatMatrix::times(), and oofem::FloatMatrix::zero().
| void oofem::Lattice3d_mt::computeCrossSectionProperties | ( | ) |
Definition at line 369 of file lattice3d_mt.C.
References area, oofem::FloatArray::at(), oofem::FloatMatrix::at(), oofem::FloatArray::beProductOf(), oofem::FloatMatrix::beTranspositionOf(), oofem::FloatArray::beVectorProductOf(), centroid, crackLengths, eccS, eccT, globalCentroid, I1, I2, Ip, localCoordinateSystem, midPoint, minLength, normal, oofem::FloatArray::normalize(), numberOfPolygonVertices, polygonCoords, oofem::sum(), and oofem::FloatMatrix::zero().
Referenced by computeGeometryProperties().
|
inlineoverrideprotectedvirtual |
Computes the length around a integration point on a edge.
Reimplemented from oofem::TransportElement.
Definition at line 154 of file lattice3d_mt.h.
|
overridevirtual |
Computes a flow vector in an integration point.
| answer | Flow vector. |
| gp | Integration point. |
| tStep | Time step. |
Reimplemented from oofem::TransportElement.
Definition at line 205 of file lattice3d_mt.C.
References oofem::FloatArray::at(), oofem::Element::computeVectorOf(), computeVolumeAround(), oofem::Element::giveCharacteristicValue(), oofem::Element::giveElementDofIDMask(), giveLength(), oofem::TransportElement::giveMaterial(), oofem::Element::isActivated(), length, oofem::FloatArray::resize(), and oofem::FloatArray::zero().
|
overrideprotectedvirtual |
Initializes the array of integration rules member variable. Element can have multiple integration rules for different tasks. For example structural element family class uses this feature to implement transparent support for reduced and selective integration of some strain components. Must be defined by terminator classes.
Reimplemented from oofem::Element.
Definition at line 166 of file lattice3d_mt.C.
References oofem::Element::integrationRulesArray.
Referenced by postInitialize().
| void oofem::Lattice3d_mt::computeGeometryProperties | ( | ) |
Definition at line 239 of file lattice3d_mt.C.
References oofem::FloatArray::at(), computeCrossSectionProperties(), computeSpecialCrossSectionProperties(), geometryFlag, oofem::DofManager::giveCoordinate(), oofem::Element::giveNode(), length(), length, midPoint, minLength, and normal.
Referenced by computeGlobalCoordinates(), computeInternalSourceRhsVectorAt(), giveArea(), giveCrackLengths(), and giveLength().
|
overridevirtual |
Computes the global coordinates from given element's local coordinates.
| answer | Requested global coordinates. |
| lcoords | Local coordinates. |
Reimplemented from oofem::Element.
Definition at line 713 of file lattice3d_mt.C.
References computeGeometryProperties(), geometryFlag, midPoint, and oofem::FloatArray::resize().
|
overrideprotectedvirtual |
Computes the gradient matrix corresponding to one unknown.
Reimplemented from oofem::TransportElement.
Definition at line 133 of file lattice3d_mt.C.
References oofem::FloatMatrix::at(), giveLength(), oofem::FloatMatrix::resize(), oofem::FloatMatrix::times(), and oofem::FloatMatrix::zero().
Referenced by computeBmatrixAt().
|
overridevirtual |
Computes the contribution to balance equation(s) due to internal sources
Reimplemented from oofem::TransportElement.
Definition at line 650 of file lattice3d_mt.C.
References oofem::FloatArray::add(), oofem::FloatArray::at(), oofem::Element::bodyLoadArray, computeGeometryProperties(), oofem::Load::computeValueAt(), computeVolumeAround(), oofem::FEMComponent::domain, geometryFlag, oofem::GeneralBoundaryCondition::giveBCGeoType(), oofem::Element::giveBodyLoadArray(), oofem::Element::giveCharacteristicValue(), giveLength(), oofem::TransportElement::giveMaterial(), oofem::FloatArray::giveSize(), oofem::GravityPressureBGT, oofem::Element::integrationRulesArray, oofem::FloatArray::isEmpty(), length, normal, oofem::FloatArray::resize(), and oofem::FloatArray::times().
|
overridevirtual |
Computes the element local coordinates from given global coordinates. Should compute local coordinates even if point is outside element (for mapping purposes in adaptivity)
| answer | Local coordinates. |
| gcoords | Global coordinates. |
Reimplemented from oofem::Element.
Definition at line 726 of file lattice3d_mt.C.
References oofem::FloatArray::at(), and oofem::FloatArray::resize().
|
overrideprotectedvirtual |
Computes the interpolation matrix corresponding to all unknowns. In the default implementation the same approximation order is assumed, but it can be extended.
Reimplemented from oofem::TransportElement.
Definition at line 111 of file lattice3d_mt.C.
References computeNSubMatrixAt().
Referenced by updateInternalState().
|
protected |
Definition at line 118 of file lattice3d_mt.C.
References oofem::FloatArray::at(), oofem::FloatMatrix::at(), oofem::FloatMatrix::resize(), and oofem::FloatMatrix::zero().
Referenced by computeNmatrixAt().
|
inlineoverridevirtual |
Computes or simply returns total number of element's local DOFs. Must be defined by particular element.
Reimplemented from oofem::Element.
Definition at line 117 of file lattice3d_mt.h.
| void oofem::Lattice3d_mt::computeSpecialCrossSectionProperties | ( | ) |
Definition at line 291 of file lattice3d_mt.C.
References area, oofem::FloatArray::at(), crackLengths, length, minLength, numberOfPolygonVertices, and polygonCoords.
Referenced by computeGeometryProperties().
|
overridevirtual |
Returns volume related to given integration point. Used typically in subroutines, that perform integration over element volume. Should be implemented by particular elements.
| gp | Integration point for which volume is computed. |
Reimplemented from oofem::Element.
Definition at line 232 of file lattice3d_mt.C.
References giveArea(), and giveLength().
Referenced by computeCapacityMatrix(), computeConductivityMatrix(), computeFlow(), and computeInternalSourceRhsVectorAt().
| void oofem::Lattice3d_mt::drawRawCrossSections | ( | oofegGraphicContext & | gc, |
| TimeStep * | tStep ) |
Definition at line 778 of file lattice3d_mt.C.
References gc, numberOfPolygonVertices, OOFEG_RAW_CROSSSECTION_LAYER, OOFEG_RAW_GEOMETRY_WIDTH, and polygonCoords.
Referenced by drawYourself().
|
overridevirtual |
Reimplemented from oofem::Element.
Definition at line 751 of file lattice3d_mt.C.
References gc, oofem::Element::giveNode(), OOFEG_RAW_GEOMETRY_LAYER, and OOFEG_RAW_GEOMETRY_WIDTH.
Referenced by drawYourself().
|
overridevirtual |
Reimplemented from oofem::Element.
Definition at line 738 of file lattice3d_mt.C.
References drawRawCrossSections(), drawRawGeometry(), gc, oofem::OGC_rawGeometry, and OOFEM_ERROR.
|
inlineoverrideprotectedvirtual |
Reimplemented from oofem::TransportElement.
Definition at line 158 of file lattice3d_mt.h.
|
overridevirtual |
Returns the cross-sectional area of the lattice element.
Implements oofem::LatticeTransportElement.
Definition at line 101 of file lattice3d_mt.C.
References area, computeGeometryProperties(), and geometryFlag.
Referenced by computeVolumeAround().
|
inlineoverridevirtual |
Reimplemented from oofem::Element.
Definition at line 113 of file lattice3d_mt.h.
|
inlineoverridevirtual |
Returns the coupling flag
Reimplemented from oofem::LatticeTransportElement.
Definition at line 125 of file lattice3d_mt.h.
|
inlineoverridevirtual |
Returns the coupling numbers
Reimplemented from oofem::LatticeTransportElement.
Definition at line 126 of file lattice3d_mt.h.
|
overridevirtual |
Returns the crack lengths
Reimplemented from oofem::LatticeTransportElement.
Definition at line 90 of file lattice3d_mt.C.
References computeGeometryProperties(), crackLengths, and geometryFlag.
|
inlineoverridevirtual |
Returns the crack widths
Reimplemented from oofem::LatticeTransportElement.
Definition at line 127 of file lattice3d_mt.h.
References crackWidths.
|
inlineoverridevirtual |
This function gives the cross-section coordinates.
Reimplemented from oofem::LatticeTransportElement.
Definition at line 130 of file lattice3d_mt.h.
References polygonCoords.
|
overridevirtual |
Returns dofmanager dof mask for node. This mask defines the dofs which are used by element in node. Mask influences the code number ordering for particular node. Code numbers are ordered according to node order and dofs belonging to particular node are ordered according to this mask. If element requests dofs using node mask which are not in node then error is generated. This masking allows node to be shared by different elements with different dofs in same node. Elements local code numbers are extracted from node using this mask. Must be defined by particular element.
| inode | Mask is computed for local dofmanager with inode number. |
| answer | Mask for node. |
Reimplemented from oofem::Element.
Definition at line 174 of file lattice3d_mt.C.
|
inlineoverridevirtual |
Returns the element geometry type. This information is assumed to be of general interest, but it is required only for some specialized tasks.
Implements oofem::Element.
Definition at line 115 of file lattice3d_mt.h.
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 112 of file lattice3d_mt.h.
References _IFT_Lattice3d_mt_Name.
|
overridevirtual |
Returns the element length
Implements oofem::LatticeTransportElement.
Definition at line 81 of file lattice3d_mt.C.
References computeGeometryProperties(), geometryFlag, and length.
Referenced by computeConductivityMatrix(), computeFlow(), computeGradientMatrixAt(), computeInternalSourceRhsVectorAt(), and computeVolumeAround().
|
inlineoverridevirtual |
Returns the number of crossSection nodes
Reimplemented from oofem::LatticeTransportElement.
Definition at line 131 of file lattice3d_mt.h.
References numberOfPolygonVertices.
|
overridevirtual |
Reimplemented from oofem::Element.
Definition at line 180 of file lattice3d_mt.C.
References area, couplingFlag, couplingNumbers, crackWidths, dimension, oofem::FEMComponent::giveDomain(), IPK_Lattice3d_mt_area, IPK_Lattice3d_mt_couplingflag, IPK_Lattice3d_mt_couplingnumber, IPK_Lattice3d_mt_crackwidths, IPK_Lattice3d_mt_dim, IPK_Lattice3d_mt_mlength, IPK_Lattice3d_mt_polycoords, minLength, oofem::FEMComponent::number, PM_UPDATE_PARAMETER, and polygonCoords.
|
overridevirtual |
Performs post initialization steps.
Reimplemented from oofem::Element.
Definition at line 194 of file lattice3d_mt.C.
References computeGaussPoints(), crackWidths, oofem::Element::numberOfGaussPoints, numberOfPolygonVertices, and polygonCoords.
|
overridevirtual |
Updates element state after equilibrium in time step has been reached. Default implementation updates all integration rules defined by integrationRulesArray member variable. Doing this, all integration points and their material statuses are updated also. All temporary history variables, which now describe equilibrium state are copied into equilibrium ones. The existing internal state is used for update.
| tStep | Time step for newly reached state. |
Reimplemented from oofem::Element.
Definition at line 147 of file lattice3d_mt.C.
References oofem::FloatArray::beProductOf(), computeNmatrixAt(), oofem::Element::computeVectorOf(), oofem::TransportElement::giveMaterial(), oofem::Element::integrationRulesArray, and oofem::TransportMaterial::updateInternalState().
|
protected |
Definition at line 71 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties(), computeSpecialCrossSectionProperties(), giveArea(), and initializeFrom().
|
protected |
Definition at line 72 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties().
|
protected |
Definition at line 76 of file lattice3d_mt.h.
Referenced by initializeFrom(), and Lattice3d_mt().
|
protected |
Definition at line 77 of file lattice3d_mt.h.
Referenced by initializeFrom().
|
protected |
Definition at line 79 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties(), computeSpecialCrossSectionProperties(), and giveCrackLengths().
|
protected |
Definition at line 78 of file lattice3d_mt.h.
Referenced by giveCrackWidths(), initializeFrom(), and postInitialize().
|
protected |
Definition at line 81 of file lattice3d_mt.h.
Referenced by computeCapacityMatrix(), initializeFrom(), and Lattice3d_mt().
|
protected |
Definition at line 71 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties().
|
protected |
Definition at line 71 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties().
|
protected |
Definition at line 73 of file lattice3d_mt.h.
Referenced by computeGeometryProperties(), computeGlobalCoordinates(), computeInternalSourceRhsVectorAt(), giveArea(), giveCrackLengths(), and giveLength().
|
protected |
Definition at line 72 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties().
|
protected |
Definition at line 67 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties().
|
protected |
Definition at line 67 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties().
|
protected |
Definition at line 67 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties().
|
staticprotected |
Definition at line 88 of file lattice3d_mt.h.
Referenced by initializeFrom().
|
staticprotected |
Definition at line 85 of file lattice3d_mt.h.
Referenced by initializeFrom().
|
staticprotected |
Definition at line 86 of file lattice3d_mt.h.
Referenced by initializeFrom().
|
staticprotected |
Definition at line 84 of file lattice3d_mt.h.
Referenced by initializeFrom().
|
staticprotected |
Definition at line 87 of file lattice3d_mt.h.
Referenced by initializeFrom().
|
staticprotected |
Definition at line 90 of file lattice3d_mt.h.
Referenced by initializeFrom().
|
staticprotected |
Definition at line 83 of file lattice3d_mt.h.
Referenced by initializeFrom().
|
staticprotected |
Definition at line 89 of file lattice3d_mt.h.
|
protected |
Definition at line 66 of file lattice3d_mt.h.
Referenced by computeConductivityMatrix(), computeFlow(), computeGeometryProperties(), computeInternalSourceRhsVectorAt(), computeSpecialCrossSectionProperties(), and giveLength().
|
protected |
Definition at line 70 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties().
|
protected |
Definition at line 72 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties(), computeGeometryProperties(), and computeGlobalCoordinates().
|
protected |
Definition at line 65 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties(), computeGeometryProperties(), computeSpecialCrossSectionProperties(), initializeFrom(), and Lattice3d_mt().
|
protected |
Definition at line 74 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties(), computeGeometryProperties(), and computeInternalSourceRhsVectorAt().
|
protected |
Definition at line 69 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties(), computeSpecialCrossSectionProperties(), drawRawCrossSections(), giveNumberOfCrossSectionNodes(), and postInitialize().
|
protected |
Definition at line 68 of file lattice3d_mt.h.
Referenced by computeCrossSectionProperties(), computeSpecialCrossSectionProperties(), drawRawCrossSections(), giveCrossSectionCoordinates(), initializeFrom(), and postInitialize().