|
OOFEM 3.0
|
#include <prescribedmean.h>
Public Member Functions | |
| PrescribedMean (int n, Domain *d) | |
| virtual | ~PrescribedMean () |
| void | initializeFrom (InputRecord &ir) override |
| void | assemble (SparseMtrx &answer, TimeStep *tStep, CharType type, const UnknownNumberingScheme &r_s, const UnknownNumberingScheme &c_s, double scale=1.0, void *lock=nullptr) override |
| void | assembleVector (FloatArray &answer, TimeStep *tStep, CharType type, ValueModeType mode, const UnknownNumberingScheme &s, FloatArray *eNorm=nullptr, void *lock=nullptr) override |
| void | giveInternalForcesVector (FloatArray &answer, TimeStep *tStep, CharType type, ValueModeType mode, const UnknownNumberingScheme &s, FloatArray *eNorm=nullptr, void *lock=nullptr) |
| void | giveExternalForcesVector (FloatArray &answer, TimeStep *tStep, CharType type, ValueModeType mode, const UnknownNumberingScheme &s, void *lock=nullptr) |
| int | giveNumberOfInternalDofManagers () override |
| Gives the number of internal dof managers. | |
| DofManager * | giveInternalDofManager (int i) override |
| Gives an internal dof manager from receiver. | |
| const char * | giveClassName () const override |
| const char * | giveInputRecordName () const override |
| Public Member Functions inherited from oofem::ActiveBoundaryCondition | |
| ActiveBoundaryCondition (int n, Domain *d) | |
| virtual | ~ActiveBoundaryCondition () |
| Destructor. | |
| virtual void | addElementSide (int elem, int side) |
| virtual void | giveLocationArrays (std ::vector< IntArray > &rows, std ::vector< IntArray > &cols, CharType type, const UnknownNumberingScheme &r_s, const UnknownNumberingScheme &c_s) |
| virtual bool | requiresActiveDofs () |
| virtual bool | isPrimaryDof (ActiveDof *dof) |
| virtual double | giveBcValue (Dof *dof, ValueModeType mode, TimeStep *tStep) |
| virtual bool | hasBc (Dof *dof, TimeStep *tStep) |
| virtual int | giveNumberOfMasterDofs (ActiveDof *dof) |
| virtual Dof * | giveMasterDof (ActiveDof *dof, int mdof) |
| virtual void | computeDofTransformation (ActiveDof *dof, FloatArray &masterContribs) |
| virtual double | giveUnknown (PrimaryField &field, ValueModeType mode, TimeStep *tStep, ActiveDof *dof) |
| virtual double | giveUnknown (ValueModeType mode, TimeStep *tStep, ActiveDof *dof) |
| Public Member Functions inherited from oofem::GeneralBoundaryCondition | |
| GeneralBoundaryCondition (int n, Domain *d) | |
| virtual | ~GeneralBoundaryCondition () |
| Destructor. | |
| int | giveSetNumber () const |
| Function * | giveTimeFunction () |
| int | getIsImposedTimeFunctionNumber () const |
| void | setIsImposedTimeFunctionNumber (int funcIndx) |
| virtual bcValType | giveBCValType () const |
| virtual bool | isImposed (TimeStep *tStep) |
| virtual const IntArray & | giveDofIDs () const |
| virtual bcType | giveType () const |
| virtual bcGeomType | giveBCGeoType () const |
| virtual void | scale (double s) |
| virtual double | giveProperty (int aProperty, TimeStep *tStep) const |
| void | giveInputRecord (DynamicInputRecord &input) override |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| 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 | computeDomainSize () |
Private Attributes | |
| std::unique_ptr< Node > | lambdaDman |
| double | c |
| int | dofid |
| bool | elementEdges |
| IntArray | elements |
| IntArray | sides |
| IntArray | lambdaIDs |
Static Private Attributes | |
| static double | domainSize |
Additional Inherited Members | |
| 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. | |
Definition at line 58 of file prescribedmean.h.
|
inline |
Definition at line 78 of file prescribedmean.h.
References oofem::ActiveBoundaryCondition::ActiveBoundaryCondition(), oofem::FEMComponent::domain, and lambdaDman.
|
inlinevirtual |
Definition at line 79 of file prescribedmean.h.
|
overridevirtual |
Assembles B.C. contributions to specified matrix.
| [in,out] | answer | Matrix to assemble to. |
| tStep | Active time step. | |
| tStep | Active time step. | |
| type | Type of matrix to assemble. | |
| r_s | Row numbering scheme. | |
| c_s | Column numbering scheme. | |
| scale | Scaling factor. | |
| omp_lock | optional OMP lock to ensure correct update of answer |
Reimplemented from oofem::ActiveBoundaryCondition.
Definition at line 79 of file prescribedmean.C.
References oofem::SparseMtrx::assemble(), oofem::IntArray::at(), oofem::FloatMatrix::beTranspositionOf(), oofem::FEInterpolation::boundaryEvalN(), oofem::FEInterpolation::boundaryGiveNodes(), oofem::FEInterpolation::boundaryGiveTransformationJacobian(), computeDomainSize(), dofid, domainSize, elementEdges, elements, oofem::FEInterpolation::evalN(), oofem::FloatMatrix::fromArray(), oofem::FEInterpolation::giveBoundaryIntegrationRule(), oofem::Element::giveBoundaryLocationArray(), oofem::FEMComponent::giveDomain(), oofem::Element::giveGeometryType(), oofem::FEInterpolation::giveIntegrationRule(), oofem::Element::giveInterpolation(), oofem::Element::giveLocationArray(), oofem::IntArray::giveSize(), oofem::FEInterpolation::giveTransformationJacobian(), lambdaDman, lambdaIDs, N, oofem::GeneralBoundaryCondition::scale(), and sides.
|
overridevirtual |
Assembles B.C. contributions to specified vector.
| [in,out] | answer | Vector to assemble to. |
| tStep | Active time step. | |
| type | Type of matrix to assemble. | |
| mode | Mode of value. | |
| s | Numbering scheme. | |
| eNorms | Norms for each dofid. | |
| omp_lock | optional OMP lock to ensure correct update of answer |
Reimplemented from oofem::ActiveBoundaryCondition.
Definition at line 150 of file prescribedmean.C.
References giveExternalForcesVector(), and giveInternalForcesVector().
|
private |
Definition at line 273 of file prescribedmean.C.
References oofem::IntArray::at(), oofem::FEInterpolation::boundaryGiveTransformationJacobian(), dofid, domainSize, elementEdges, elements, oofem::FEInterpolation::giveBoundaryIntegrationRule(), oofem::FEMComponent::giveDomain(), oofem::Element::giveGeometryType(), oofem::FEInterpolation::giveIntegrationRule(), oofem::Element::giveInterpolation(), oofem::IntArray::giveSize(), oofem::FEInterpolation::giveTransformationJacobian(), oofem::GeneralBoundaryCondition::set, and sides.
Referenced by assemble(), giveExternalForcesVector(), and giveInternalForcesVector().
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 104 of file prescribedmean.h.
| void oofem::PrescribedMean::giveExternalForcesVector | ( | FloatArray & | answer, |
| TimeStep * | tStep, | ||
| CharType | type, | ||
| ValueModeType | mode, | ||
| const UnknownNumberingScheme & | s, | ||
| void * | lock = nullptr ) |
Definition at line 245 of file prescribedmean.C.
References oofem::FloatArray::assemble(), oofem::FloatArray::at(), c, computeDomainSize(), oofem::GeneralBoundaryCondition::giveTimeFunction(), lambdaDman, lambdaIDs, oofem::FloatArray::resize(), and oofem::FloatArray::times().
Referenced by assembleVector().
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 105 of file prescribedmean.h.
References _IFT_PrescribedMean_Name.
|
inlineoverridevirtual |
Gives an internal dof manager from receiver.
Reimplemented from oofem::GeneralBoundaryCondition.
Definition at line 102 of file prescribedmean.h.
References lambdaDman.
Referenced by oofem::MatlabExportModule::doOutputSpecials().
| void oofem::PrescribedMean::giveInternalForcesVector | ( | FloatArray & | answer, |
| TimeStep * | tStep, | ||
| CharType | type, | ||
| ValueModeType | mode, | ||
| const UnknownNumberingScheme & | s, | ||
| FloatArray * | eNorm = nullptr, | ||
| void * | lock = nullptr ) |
Definition at line 164 of file prescribedmean.C.
References oofem::FloatArray::assemble(), oofem::FloatArray::at(), oofem::IntArray::at(), oofem::FEInterpolation::boundaryEvalN(), oofem::FEInterpolation::boundaryGiveNodes(), oofem::FEInterpolation::boundaryGiveTransformationJacobian(), oofem::Element::computeBoundaryVectorOf(), computeDomainSize(), oofem::Element::computeVectorOf(), dofid, domainSize, elementEdges, elements, oofem::FEInterpolation::evalN(), oofem::FEInterpolation::giveBoundaryIntegrationRule(), oofem::Element::giveBoundaryLocationArray(), oofem::FEMComponent::giveDomain(), oofem::Element::giveGeometryType(), oofem::FEInterpolation::giveIntegrationRule(), oofem::Element::giveInterpolation(), oofem::Element::giveLocationArray(), oofem::IntArray::giveSize(), oofem::FEInterpolation::giveTransformationJacobian(), lambdaDman, lambdaIDs, N, oofem::FloatArray::resize(), sides, and oofem::FloatArray::times().
Referenced by assembleVector().
|
inlineoverridevirtual |
Gives the number of internal dof managers.
Reimplemented from oofem::GeneralBoundaryCondition.
Definition at line 100 of file prescribedmean.h.
|
overridevirtual |
Initializes receiver according to object description stored in input record. This function is called immediately after creating object using constructor. Input record can be imagined as data record in component database belonging to receiver. Receiver may use value-name extracting functions to extract particular field from record. Note that initializeFrom may be called mutiple times.
| ir | Input record to initialize from. |
| priority | Priority of the input record. This is used to determine the order of initialization |
Reimplemented from oofem::ActiveBoundaryCondition.
Definition at line 58 of file prescribedmean.C.
References _IFT_GeneralBoundaryCondition_set, _IFT_PrescribedMean_DofID, _IFT_PrescribedMean_Edge, _IFT_PrescribedMean_Mean, c, dofid, oofem::FEMComponent::domain, domainSize, elementEdges, IR_GIVE_FIELD, IR_GIVE_OPTIONAL_FIELD, lambdaDman, lambdaIDs, and oofem::GeneralBoundaryCondition::set.
|
private |
Definition at line 63 of file prescribedmean.h.
Referenced by giveExternalForcesVector(), and initializeFrom().
|
private |
Definition at line 67 of file prescribedmean.h.
Referenced by assemble(), computeDomainSize(), giveInternalForcesVector(), and initializeFrom().
|
staticprivate |
Definition at line 65 of file prescribedmean.h.
Referenced by assemble(), computeDomainSize(), giveInternalForcesVector(), and initializeFrom().
|
private |
Definition at line 71 of file prescribedmean.h.
Referenced by assemble(), computeDomainSize(), giveInternalForcesVector(), and initializeFrom().
|
private |
Definition at line 73 of file prescribedmean.h.
Referenced by assemble(), computeDomainSize(), and giveInternalForcesVector().
|
private |
Definition at line 61 of file prescribedmean.h.
Referenced by assemble(), giveExternalForcesVector(), giveInternalDofManager(), giveInternalForcesVector(), initializeFrom(), and PrescribedMean().
|
private |
Definition at line 75 of file prescribedmean.h.
Referenced by assemble(), giveExternalForcesVector(), giveInternalForcesVector(), and initializeFrom().
|
private |
Definition at line 74 of file prescribedmean.h.
Referenced by assemble(), computeDomainSize(), and giveInternalForcesVector().