|
OOFEM 3.0
|
#include <hydratinghemomat.h>
Public Member Functions | |
| HydratingHeMoMaterial (int n, Domain *d) | |
| void | setMixture (MixtureType mix) |
| bool | hasInternalSource () const override |
| void | computeInternalSourceVector (FloatArray &val, GaussPoint *gp, TimeStep *tStep, ValueModeType mode) const override |
| void | updateInternalState (const FloatArray &state, GaussPoint *gp, TimeStep *tStep) override |
| double | giveCharacteristicValue (MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override |
| void | saveIPContext (DataStream &stream, ContextMode mode, GaussPoint *gp) override |
| void | restoreIPContext (DataStream &stream, ContextMode mode, GaussPoint *gp) override |
| const char * | giveInputRecordName () const override |
| const char * | giveClassName () const override |
| void | initializeFrom (InputRecord &ir) override |
| 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::HeMoTKMaterial | |
| HeMoTKMaterial (int n, Domain *d) | |
| 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 override |
| FloatMatrixF< 3, 3 > | computeTangent3D (MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override |
| bool | isCharacteristicMtrxSymmetric (MatResponseMode rMode) const override |
| double | give (int aProperty, GaussPoint *gp) const override |
| bool | hasMaterialModeCapability (MaterialMode mode) const override |
| double | sorption_isotherm (double phi) const |
| double | inverse_sorption_isotherm (double w) const |
| double | give_dphi_dw (double w) const |
| 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 |
| virtual FloatArrayF< 3 > | computeFlux3D (const FloatArrayF< 3 > &grad, double field, GaussPoint *gp, 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 |
| 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 |
| 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 void | giveCharacteristicVector (FloatArray &answer, FloatArray &flux, MatResponseMode type, GaussPoint *gp, TimeStep *tStep) const |
| Returns characteristic vector of the receiver. | |
| 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 | hasCastingTimeSupport () const |
| virtual int | setIPValue (const FloatArray &value, GaussPoint *gp, InternalStateType type) |
| void | initializeFrom (InputRecord &ir) override |
| void | giveInputRecord (DynamicInputRecord &input) override |
| void | printYourself () override |
| Prints receiver state on stdout. Useful for debugging. | |
| 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). | |
| Public Member Functions inherited from oofem::HydrationModelInterface | |
| HydrationModel * | giveHydrationModel () |
| Returns the associated hydration model. | |
| void | saveContext (DataStream &stream, ContextMode mode) |
| void | restoreContext (DataStream &stream, ContextMode mode) |
| double | giveHydrationDegree (GaussPoint *gp, TimeStep *tStep, ValueModeType mode) const |
| Public Member Functions inherited from oofem::Interface | |
| Interface () | |
| Constructor. | |
| virtual | ~Interface () |
Protected Attributes | |
| bool | hydration = false |
| bool | hydrationHeat = false |
| bool | hydrationLHS = false |
| bool | teplotaOut = false |
| Protected Attributes inherited from oofem::HeMoTKMaterial | |
| double | a_0 = 0. |
| Constant (obtained from experiments) [Bazant and Najjar, 1972]. | |
| double | nn = 0. |
| Constant-exponent (obtained from experiments) [Bazant and Najjar, 1972]. | |
| double | phi_c = 0. |
| Constant-relative humidity (obtained from experiments) [Bazant and Najjar, 1972]. | |
| double | delta_wet = 0. |
| Constant-water vapor permeability (obtained from experiments) [Bazant and Najjar, 1972]. | |
| double | w_h = 0. |
| Constant water content (obtained from experiments) [Pedersen, 1990]. | |
| double | n = 0. |
| Constant-exponent (obtained from experiments) [Pedersen, 1990]. | |
| double | a = 0. |
| Constant (obtained from experiments) [Pedersen, 1990]. | |
| double | latent = 0. |
| Latent heat of evaporation. | |
| double | c = 0. |
| Thermal capacity. | |
| double | rho = 0. |
| Volume density. | |
| double | chi_eff = 0. |
| Effective thermal conductivity. | |
| double | por = 0. |
| Porosity. | |
| double | rho_gws = 0. |
| Saturation volume density. | |
| 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. | |
| Protected Attributes inherited from oofem::HydrationModelInterface | |
| std ::unique_ptr< HydrationModel > | hydrationModel |
| Reference to the associated hydrationModel instance. | |
| double | castAt = 0. |
| Material cast time - start of hydration. | |
| double | constantHydrationDegree = 0. |
| Constant hydration degree for analysis without hydration model. | |
Additional Inherited Members | |
| Protected Member Functions inherited from oofem::HeMoTKMaterial | |
| double | computeCapacityCoeff (MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const |
| double | giveHumidity (GaussPoint *gp, ValueModeType mode) const override |
| double | get_latent (double w, double t) const |
| double | get_ceff (double w, double t) const |
| double | get_chi (double w, double t) const |
| double | perm_wt (double w, double t) const |
| double | perm_ww (double w, double t) const |
| double | give_delta_gw (double phi) const |
| double | give_dpgw_dt (double t, double phi) const |
| double | get_b (double w, double t) const |
| double | get_sat (double w, double t) const |
| double | give_p_gws (double t) const |
Heat and moisture transport material with hydration.
Definition at line 54 of file hydratinghemomat.h.
|
inline |
Definition at line 60 of file hydratinghemomat.h.
References oofem::HeMoTKMaterial::HeMoTKMaterial(), and oofem::HeMoTKMaterial::n.
|
overridevirtual |
Computes the internal source vector of receiver.
| val | Contains response. |
| gp | Integration point. |
| tStep | Solution step. |
| mode | Determines response mode. |
!! better via HydrationModelInterface
!! mode is VM_Total for nltransientstatic
Reimplemented from oofem::TransportMaterial.
Definition at line 120 of file hydratinghemomat.C.
References hydrationHeat, and oofem::HydrationModelInterface::hydrationModel.
Referenced by updateInternalState().
|
overridevirtual |
Creates new copy of associated status and inserts it into given integration point.
| gp | Integration point where newly created status will be stored. |
Reimplemented from oofem::HeMoTKMaterial.
Definition at line 262 of file hydratinghemomat.C.
|
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). |
!! better via HydrationModelInterface
Reimplemented from oofem::HeMoTKMaterial.
Definition at line 196 of file hydratinghemomat.C.
References oofem::HydrationModelInterface::castAt, oofem::HeMoTKMaterial::give_dphi_dw(), oofem::Material::giveStatus(), oofem::TimeStep::giveTargetTime(), oofem::HeMoTransportMaterialStatus::giveTempTemperature(), oofem::TimeStep::giveTimeIncrement(), hydrationLHS, oofem::HydrationModelInterface::hydrationModel, oofem::HeMoTKMaterial::inverse_sorption_isotherm(), OOFEM_ERROR, and PRECAST_CAPACITY_COEFF.
|
inlineoverridevirtual |
Reimplemented from oofem::HeMoTKMaterial.
Definition at line 78 of file hydratinghemomat.h.
|
inlineoverridevirtual |
Reimplemented from oofem::HeMoTKMaterial.
Definition at line 77 of file hydratinghemomat.h.
References _IFT_HydratingHeMoMaterial_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::HeMoTKMaterial.
Definition at line 245 of file hydratinghemomat.C.
References oofem::FloatArray::at(), oofem::HydrationModelInterface::giveHydrationDegree(), and oofem::FloatArray::resize().
|
overridevirtual |
Returns nonzero if receiver generates internal source of state variable(s), zero otherwise.
Reimplemented from oofem::TransportMaterial.
Definition at line 114 of file hydratinghemomat.C.
References hydrationHeat.
|
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::HeMoTKMaterial.
Definition at line 48 of file hydratinghemomat.C.
References _IFT_HydratingHeMoMaterial_hydration, _IFT_HydratingHeMoMaterial_mix, _IFT_HydratingHeMoMaterial_noHeat, _IFT_HydratingHeMoMaterial_noLHS, oofem::FEMComponent::giveNumber(), oofem::InputRecord::hasField(), hydration, hydrationHeat, hydrationLHS, IR_GIVE_OPTIONAL_FIELD, oofem::mtLafarge, setMixture(), and teplotaOut.
|
overridevirtual |
Reads integration point state to output stream.
| stream | Output stream. |
| mode | Determines amount of info required in stream (state, definition, ...). |
| gp | integration point. |
| throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::Material.
Definition at line 236 of file hydratinghemomat.C.
|
overridevirtual |
Stores integration point state to output stream.
| stream | Output stream. |
| mode | Determines amount of info required in stream (state, definition, ...). |
| gp | integration point. |
| throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::Material.
Definition at line 227 of file hydratinghemomat.C.
| void oofem::HydratingHeMoMaterial::setMixture | ( | MixtureType | mix | ) |
Definition at line 103 of file hydratinghemomat.C.
References hydration, oofem::HydrationModelInterface::hydrationModel, and OOFEM_ERROR.
Referenced by initializeFrom().
|
overridevirtual |
Updates internal state of material according to new state vector.
| state | New state vector. |
| gp | Integration point. |
| tStep | Solution step. |
!! might be cleaner to choose wc / h in hydration model, but it must be defined which one is passed anyway; so relative humidity was chosen !! also, the humidity vector might be evaluated by a function (ensure 2 elements and set humidity)
Reimplemented from oofem::TransportMaterial.
Definition at line 144 of file hydratinghemomat.C.
References oofem::FloatArray::at(), computeInternalSourceVector(), oofem::HeMoTKMaterial::give(), oofem::GaussPoint::giveElement(), oofem::HydrationModelInterface::giveHydrationDegree(), oofem::FEMComponent::giveNumber(), oofem::GaussPoint::giveNumber(), oofem::TimeStep::giveNumber(), oofem::FloatArray::giveSize(), oofem::TimeStep::giveSolutionStateCounter(), oofem::Material::giveStatus(), oofem::TimeStep::giveTargetTime(), oofem::TimeStep::giveTimeIncrement(), hydration, oofem::HeMoTKMaterial::inverse_sorption_isotherm(), oofem::FloatArray::isEmpty(), oofem::FloatArray::resize(), teplotaOut, oofem::FloatArray::times(), and oofem::FloatArray::zero().
|
protected |
Definition at line 57 of file hydratinghemomat.h.
Referenced by initializeFrom(), setMixture(), and updateInternalState().
|
protected |
Definition at line 57 of file hydratinghemomat.h.
Referenced by computeInternalSourceVector(), hasInternalSource(), and initializeFrom().
|
protected |
Definition at line 57 of file hydratinghemomat.h.
Referenced by giveCharacteristicValue(), and initializeFrom().
|
protected |
Definition at line 57 of file hydratinghemomat.h.
Referenced by initializeFrom(), and updateInternalState().