|
OOFEM 3.0
|
#include <nonlinearmassmat.h>
Public Member Functions | |
| NonlinearMassTransferMaterial (int n, Domain *d) | |
| void | initializeFrom (InputRecord &ir) override |
| double | giveCharacteristicValue (MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override |
| FloatArrayF< 3 > | computeFlux3D (const FloatArrayF< 3 > &grad, double field, GaussPoint *gp, TimeStep *tStep) const override |
| FloatMatrixF< 3, 3 > | computeTangent3D (MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override |
| int | giveIPValue (FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override |
| const char * | giveInputRecordName () const override |
| const char * | giveClassName () const override |
| Public Member Functions inherited from oofem::TransportMaterial | |
| TransportMaterial (int n, Domain *d) | |
| virtual void | giveFluxVector (FloatArray &answer, GaussPoint *gp, const FloatArray &grad, const FloatArray &field, TimeStep *tStep) const |
| FloatArrayF< 2 > | computeFlux2D (const FloatArrayF< 2 > &grad, double field, GaussPoint *gp, TimeStep *tStep) const |
| FloatArrayF< 1 > | computeFlux1D (const FloatArrayF< 1 > &grad, double field, GaussPoint *gp, TimeStep *tStep) const |
| virtual std::pair< FloatArrayF< 3 >, FloatArrayF< 3 > > | computeHeMoFlux3D (const FloatArrayF< 3 > &grad_t, const FloatArrayF< 3 > &grad_w, double t, double h, GaussPoint *gp, TimeStep *tStep) const |
| std::pair< FloatArrayF< 2 >, FloatArrayF< 2 > > | computeHeMoFlux2D (const FloatArrayF< 2 > &grad_t, const FloatArrayF< 2 > &grad_w, double t, double h, GaussPoint *gp, TimeStep *tStep) const |
| std::pair< FloatArrayF< 1 >, FloatArrayF< 1 > > | computeHeMoFlux1D (const FloatArrayF< 1 > &grad_t, const FloatArrayF< 1 > &grad_w, double t, double h, GaussPoint *gp, TimeStep *tStep) const |
| virtual void | giveCharacteristicMatrix (FloatMatrix &answer, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override |
| FloatMatrixF< 2, 2 > | computeTangent2D (MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const |
| FloatMatrixF< 1, 1 > | computeTangent1D (MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const |
| virtual void | updateInternalState (const FloatArray &state, GaussPoint *gp, TimeStep *tStep) |
| virtual bool | hasInternalSource () const |
| virtual void | computeInternalSourceVector (FloatArray &val, GaussPoint *gp, TimeStep *tStep, ValueModeType mode) const |
| virtual double | giveHumidity (GaussPoint *gp, ValueModeType mode) const |
| int | giveIPValue (FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override |
| std::unique_ptr< MaterialStatus > | CreateStatus (GaussPoint *gp) const override |
| Public Member Functions inherited from oofem::Material | |
| Material (int n, Domain *d) | |
| virtual | ~Material ()=default |
| Destructor. | |
| virtual bool | isCharacteristicMtrxSymmetric (MatResponseMode rMode) const |
| virtual void | giveCharacteristicVector (FloatArray &answer, FloatArray &flux, MatResponseMode type, GaussPoint *gp, TimeStep *tStep) const |
| Returns characteristic vector of the receiver. | |
| virtual double | give (int aProperty, GaussPoint *gp) const |
| virtual bool | hasProperty (int aProperty, GaussPoint *gp) const |
| virtual void | modifyProperty (int aProperty, double value, GaussPoint *gp) |
| double | giveCastingTime () const |
| virtual bool | isActivated (TimeStep *tStep) const |
| virtual bool | hasMaterialModeCapability (MaterialMode mode) const |
| virtual bool | hasCastingTimeSupport () const |
| virtual int | setIPValue (const FloatArray &value, GaussPoint *gp, InternalStateType type) |
| void | giveInputRecord (DynamicInputRecord &input) override |
| void | printYourself () override |
| Prints receiver state on stdout. Useful for debugging. | |
| virtual void | saveIPContext (DataStream &stream, ContextMode mode, GaussPoint *gp) |
| virtual void | restoreIPContext (DataStream &stream, ContextMode mode, GaussPoint *gp) |
| int | checkConsistency () override |
| virtual void | restoreConsistency (GaussPoint *gp) |
| virtual int | initMaterial (Element *element) |
| virtual MaterialStatus * | giveStatus (GaussPoint *gp) const |
| virtual int | packUnknowns (DataStream &buff, TimeStep *tStep, GaussPoint *ip) |
| virtual int | unpackAndUpdateUnknowns (DataStream &buff, TimeStep *tStep, GaussPoint *ip) |
| virtual int | estimatePackSize (DataStream &buff, GaussPoint *ip) |
| virtual double | predictRelativeComputationalCost (GaussPoint *gp) |
| virtual double | predictRelativeRedistributionCost (GaussPoint *gp) |
| virtual void | initTempStatus (GaussPoint *gp) const |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| 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 void | printOutputAt (FILE *file, TimeStep *tStep) |
| virtual Interface * | giveInterface (InterfaceType t) |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). | |
Protected Attributes | |
| double | C = 0. |
| Indicates the level of nonlinearity in the model. | |
| double | alpha = 0. |
| Indicates the level of nonlinearity in the model. | |
| Protected Attributes inherited from oofem::Material | |
| Dictionary | propertyDictionary |
| double | castingTime |
| int | preCastingTimeMat |
| Material existing before casting time - optional parameter, zero by default. | |
| Protected Attributes inherited from oofem::FEMComponent | |
| int | number |
| Component number. | |
| Domain * | domain |
| Link to domain object, useful for communicating with other FEM components. | |
Class for a nonlinear fictitious transport material. The constitutive equation is given as
\[\mathbf{w}=-\left( 1+C \mid \mid \mathbf{\nabla} p \mid\mid^{\alpha}\right) \mathbf{\nabla} p \]
where \( \boldsymbol{w} \) is the seepage velocity, \( \alpha \) and \( C \) are constants and \( p \) is the pressure.
Definition at line 59 of file nonlinearmassmat.h.
|
inline |
Definition at line 68 of file nonlinearmassmat.h.
References oofem::TransportMaterial::TransportMaterial().
|
overridevirtual |
Reimplemented from oofem::TransportMaterial.
Definition at line 63 of file nonlinearmassmat.C.
References alpha, C, oofem::Material::giveStatus(), oofem::norm(), and oofem::TransportMaterialStatus::setTempGradient().
|
overridevirtual |
Implements oofem::TransportMaterial.
Definition at line 77 of file nonlinearmassmat.C.
References alpha, C, oofem::dyad(), oofem::eye(), oofem::Material::giveStatus(), oofem::TransportMaterialStatus::giveTempGradient(), and oofem::norm().
|
overridevirtual |
Computes the characteristic value of receiver in given integration point, respecting its history. The algorithm should use temporary or equilibrium history variables stored in integration point status to compute and return required result.
| mode | Material response mode. |
| gp | Integration point. |
| tStep | Time step (most models are able to respond only when tStep is current time step). |
Implements oofem::TransportMaterial.
Definition at line 55 of file nonlinearmassmat.C.
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 82 of file nonlinearmassmat.h.
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 81 of file nonlinearmassmat.h.
References _IFT_NonlinearMassTransferMaterial_Name.
|
overridevirtual |
Returns the integration point corresponding value in Reduced form.
| answer | Contain corresponding ip value, zero sized if not available. |
| gp | Integration point to which the value refers. |
| type | Determines the type of internal variable. |
| tStep | Determines the time step. |
Reimplemented from oofem::Material.
Definition at line 89 of file nonlinearmassmat.C.
References oofem::Material::giveStatus().
|
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::Material.
Definition at line 46 of file nonlinearmassmat.C.
References _IFT_NonlinearMassTransferMaterial_alpha, _IFT_NonlinearMassTransferMaterial_c, alpha, C, and IR_GIVE_FIELD.
|
protected |
Indicates the level of nonlinearity in the model.
Definition at line 65 of file nonlinearmassmat.h.
Referenced by computeFlux3D(), computeTangent3D(), and initializeFrom().
|
protected |
Indicates the level of nonlinearity in the model.
Definition at line 63 of file nonlinearmassmat.h.
Referenced by computeFlux3D(), computeTangent3D(), and initializeFrom().