|
OOFEM 3.0
|
#include <cemhydmat.h>
Public Member Functions | |
| CemhydMat (int n, Domain *d) | |
| Constructor. | |
| const char * | giveInputRecordName () const override |
| Returns input record name of the receiver. | |
| const char * | giveClassName () const override |
| bool | hasInternalSource () const override |
| void | computeInternalSourceVector (FloatArray &val, GaussPoint *gp, TimeStep *tStep, ValueModeType mode) const override |
| virtual int | giveCycleNumber (GaussPoint *gp) |
| Returns cycle number at the closest cycle after the target time. | |
| virtual double | giveTimeOfCycle (GaussPoint *gp) |
| Returns time of the CEMHYD3D at the first cycle after the target time. | |
| virtual double | giveDoHActual (GaussPoint *gp) |
| Returns DoH of the closest CEMHYD3D cycle after the target time. | |
| double | giveIsotropicConductivity (GaussPoint *gp, TimeStep *tStep) const override |
| Returns concrete heat conductivity depending on chosen type. | |
| virtual double | giveConcreteCapacity (GaussPoint *gp, TimeStep *tStep) const |
| Returns concrete thermal capacity depending on chosen type. | |
| virtual double | giveConcreteDensity (GaussPoint *gp, TimeStep *tStep) const |
| Returns concrete density depending on chosen type. | |
| double | giveCharacteristicValue (MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override |
| Compute heat thermal capacity per volume. | |
| int | giveIPValue (FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override |
| int | initMaterial (Element *element) override |
| virtual void | clearWeightTemperatureProductVolume (Element *element) |
| Clear temperatures multiplied with volume around GPs - need before temperature averaging. | |
| virtual void | storeWeightTemperatureProductVolume (Element *element, TimeStep *tStep) |
| Store temperatures multiplied with volume around GPs - need before temperature averaging. | |
| virtual void | averageTemperature () |
| Perform averaging on a master CemhydMatStatus. | |
| void | initializeFrom (InputRecord &ir) override |
| MaterialStatus * | CreateStatus (GaussPoint *gp) const override |
| Public Member Functions inherited from oofem::IsotropicHeatTransferMaterial | |
| IsotropicHeatTransferMaterial (int n, Domain *d) | |
| 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 |
| double | giveCharacteristicValue (MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override |
| virtual double | giveMaturityT0 () const |
| int | giveIPValue (FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override |
| const char * | giveInputRecordName () const override |
| const char * | giveClassName () const override |
| void | initializeFrom (InputRecord &ir) override |
| double | giveProperty (int aProperty, GaussPoint *gp, TimeStep *tStep) const |
| double | giveTemperature (GaussPoint *gp) 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 |
| 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 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 | initializeFrom (InputRecord &ir) override |
| 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 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 Attributes | |
| int | conductivityType |
| Use different methods to evaluate material parameters. | |
| int | capacityType |
| int | densityType |
| IntArray | nowarnings |
| Array containing warnings supression for density, conductivity, capacity, high temperature. | |
| FloatArray | scaling |
| Array containing scaling factors for density, conductivity and capacity. | |
| int | reinforcementDegree |
| Degree of reinforcement, if defined, reinforcement effect for conductivity and capacity is accounted for. Isotropic case. | |
| int | eachGP |
| Assign a separate microstructure in each integration point. | |
| std::string | XMLfileName |
| XML input file name for CEMHYD3D. | |
| CemhydMatStatus * | MasterCemhydMatStatus |
Additional Inherited Members | |
| Protected Attributes inherited from oofem::IsotropicHeatTransferMaterial | |
| ScalarFunction | conductivity |
| Conductivity (k in input file). | |
| ScalarFunction | capacity |
| Capacity (c in input file). | |
| ScalarFunction | density |
| Density (td in input file). | |
| double | maturityT0 = 0. |
| Baseline for maturity mathod. | |
| 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. | |
Definition at line 92 of file cemhydmat.h.
| oofem::CemhydMat::CemhydMat | ( | int | n, |
| Domain * | d ) |
Constructor.
Definition at line 96 of file cemhydmat.C.
References oofem::IsotropicHeatTransferMaterial::IsotropicHeatTransferMaterial(), and MasterCemhydMatStatus.
|
virtual |
Perform averaging on a master CemhydMatStatus.
Definition at line 397 of file cemhydmat.C.
References eachGP, and MasterCemhydMatStatus.
Referenced by oofem::NonStationaryTransportProblem::applyIC(), computeInternalSourceVector(), oofem::CemhydMatStatus::updateYourself(), and oofem::NonStationaryTransportProblem::updateYourself().
|
virtual |
Clear temperatures multiplied with volume around GPs - need before temperature averaging.
Definition at line 373 of file cemhydmat.C.
References oofem::Element::giveDefaultIntegrationRulePtr(), oofem::Material::giveStatus(), and oofem::CemhydMatStatus::setAverageTemperatureVolume().
Referenced by oofem::NonStationaryTransportProblem::applyIC(), oofem::CemhydMatStatus::updateYourself(), and oofem::NonStationaryTransportProblem::updateYourself().
|
overridevirtual |
Computes the internal source vector of receiver.
| val | Contains response. |
| gp | Integration point. |
| tStep | Solution step. |
| mode | Determines response mode. |
Reimplemented from oofem::TransportMaterial.
Definition at line 103 of file cemhydmat.C.
References oofem::FloatArray::at(), averageTemperature(), eachGP, oofem::CemhydMatStatus::giveAverageTemperature(), oofem::CemhydMatStatus::GivePower(), oofem::Material::giveStatus(), oofem::TimeStep::giveTargetTime(), oofem::CemhydMatStatus::LastCallTime, MasterCemhydMatStatus, OOFEM_ERROR, oofem::CemhydMatStatus::PartHeat, and oofem::FloatArray::resize().
|
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::Material.
Definition at line 444 of file cemhydmat.C.
References OOFEM_ERROR.
|
overridevirtual |
Compute heat thermal capacity per volume.
Implements oofem::TransportMaterial.
Definition at line 258 of file cemhydmat.C.
References oofem::CemhydMatStatus::E_act, giveConcreteCapacity(), giveConcreteDensity(), oofem::TransportMaterialStatus::giveField(), oofem::Material::giveStatus(), oofem::CemhydMatStatus::icyc, MasterCemhydMatStatus, OOFEM_ERROR, and oofem::CemhydMatStatus::temp_cur.
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 99 of file cemhydmat.h.
|
virtual |
Returns concrete thermal capacity depending on chosen type.
Definition at line 197 of file cemhydmat.C.
References capacityType, oofem::Material::giveStatus(), MasterCemhydMatStatus, nowarnings, OOFEM_ERROR, OOFEM_WARNING, reinforcementDegree, and scaling.
Referenced by giveCharacteristicValue(), giveIPValue(), and oofem::CemhydMatStatus::printOutputAt().
|
virtual |
Returns concrete density depending on chosen type.
Definition at line 228 of file cemhydmat.C.
References densityType, oofem::Material::giveStatus(), MasterCemhydMatStatus, nowarnings, OOFEM_ERROR, OOFEM_WARNING, reinforcementDegree, and scaling.
Referenced by giveCharacteristicValue(), giveIPValue(), and oofem::CemhydMatStatus::printOutputAt().
|
virtual |
Returns cycle number at the closest cycle after the target time.
Definition at line 133 of file cemhydmat.C.
References oofem::CemhydMatStatus::GiveCycNum(), oofem::Material::giveStatus(), and MasterCemhydMatStatus.
Referenced by oofem::CemhydMatStatus::printOutputAt().
|
virtual |
Returns DoH of the closest CEMHYD3D cycle after the target time.
Definition at line 155 of file cemhydmat.C.
References oofem::CemhydMatStatus::GiveDoHActual(), oofem::Material::giveStatus(), and MasterCemhydMatStatus.
Referenced by giveIPValue(), and oofem::CemhydMatStatus::printOutputAt().
|
inlineoverridevirtual |
Returns input record name of the receiver.
Implements oofem::FEMComponent.
Definition at line 98 of file cemhydmat.h.
References _IFT_CemhydMat_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 301 of file cemhydmat.C.
References oofem::FloatArray::at(), oofem::CemhydMatStatus::giveAverageTemperature(), giveConcreteCapacity(), giveConcreteDensity(), giveDoHActual(), giveIsotropicConductivity(), oofem::Material::giveStatus(), oofem::CemhydMatStatus::last_values, MasterCemhydMatStatus, and oofem::FloatArray::resize().
|
overridevirtual |
Returns concrete heat conductivity depending on chosen type.
Reimplemented from oofem::IsotropicHeatTransferMaterial.
Definition at line 166 of file cemhydmat.C.
References conductivityType, oofem::Material::giveStatus(), MasterCemhydMatStatus, nowarnings, OOFEM_ERROR, OOFEM_WARNING, reinforcementDegree, and scaling.
Referenced by giveIPValue(), and oofem::CemhydMatStatus::printOutputAt().
|
virtual |
Returns time of the CEMHYD3D at the first cycle after the target time.
Definition at line 143 of file cemhydmat.C.
References oofem::CemhydMatStatus::GiveCycTime(), oofem::Material::giveStatus(), and MasterCemhydMatStatus.
Referenced by oofem::CemhydMatStatus::printOutputAt().
|
inlineoverridevirtual |
Returns nonzero if receiver generates internal source of state variable(s), zero otherwise.
Reimplemented from oofem::TransportMaterial.
Definition at line 101 of file cemhydmat.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::FEMComponent.
Definition at line 405 of file cemhydmat.C.
References _IFT_CemhydMat_capacitytype, _IFT_CemhydMat_conductivitytype, _IFT_CemhydMat_densitytype, _IFT_CemhydMat_eachgp, _IFT_CemhydMat_inputFileName, _IFT_CemhydMat_nowarnings, _IFT_CemhydMat_reinforcementDegree, _IFT_CemhydMat_scaling, capacityType, oofem::Material::castingTime, conductivityType, densityType, eachGP, IR_GIVE_FIELD, IR_GIVE_OPTIONAL_FIELD, nowarnings, OOFEM_ERROR, reinforcementDegree, scaling, and XMLfileName.
|
overridevirtual |
Optional function to call specific procedures when initializing a material. For example, multiscale simulations need to create master and slave material statuses on specific integration points before the computation.
| element | Pointer to element. |
Reimplemented from oofem::Material.
Definition at line 352 of file cemhydmat.C.
References eachGP, oofem::Element::giveDefaultIntegrationRulePtr(), and MasterCemhydMatStatus.
Referenced by oofem::NonStationaryTransportProblem::applyIC(), and oofem::TransportElement::updateInternalState().
|
virtual |
Store temperatures multiplied with volume around GPs - need before temperature averaging.
Definition at line 383 of file cemhydmat.C.
References oofem::FloatArray::at(), oofem::Element::computeVolumeAround(), eachGP, oofem::Element::giveDefaultIntegrationRulePtr(), oofem::Element::giveIPValue(), and MasterCemhydMatStatus.
Referenced by oofem::NonStationaryTransportProblem::applyIC(), oofem::CemhydMatStatus::updateYourself(), and oofem::NonStationaryTransportProblem::updateYourself().
| int oofem::CemhydMat::capacityType |
Definition at line 130 of file cemhydmat.h.
Referenced by giveConcreteCapacity(), and initializeFrom().
| int oofem::CemhydMat::conductivityType |
Use different methods to evaluate material parameters.
Definition at line 130 of file cemhydmat.h.
Referenced by giveIsotropicConductivity(), and initializeFrom().
| int oofem::CemhydMat::densityType |
Definition at line 130 of file cemhydmat.h.
Referenced by giveConcreteDensity(), and initializeFrom().
| int oofem::CemhydMat::eachGP |
Assign a separate microstructure in each integration point.
Definition at line 138 of file cemhydmat.h.
Referenced by averageTemperature(), computeInternalSourceVector(), oofem::CemhydMatStatus::giveAverageTemperature(), initializeFrom(), initMaterial(), oofem::CemhydMatStatus::printOutputAt(), and storeWeightTemperatureProductVolume().
| CemhydMatStatus* oofem::CemhydMat::MasterCemhydMatStatus |
Pointer to master CemhydMatStatus, which is shared among related integration points (on element, for example). When Cemhyd3D runs seperately in each GP, MasterCemhydMatStatus belongs to the first instance, from which the microstructure is copied to the rest of integration points.
Definition at line 146 of file cemhydmat.h.
Referenced by averageTemperature(), CemhydMat(), computeInternalSourceVector(), oofem::CemhydMatStatus::giveAverageTemperature(), giveCharacteristicValue(), giveConcreteCapacity(), giveConcreteDensity(), giveCycleNumber(), giveDoHActual(), giveIPValue(), giveIsotropicConductivity(), giveTimeOfCycle(), initMaterial(), oofem::CemhydMatStatus::printOutputAt(), and storeWeightTemperatureProductVolume().
| IntArray oofem::CemhydMat::nowarnings |
Array containing warnings supression for density, conductivity, capacity, high temperature.
Definition at line 132 of file cemhydmat.h.
Referenced by giveConcreteCapacity(), giveConcreteDensity(), giveIsotropicConductivity(), oofem::CemhydMatStatus::GivePower(), and initializeFrom().
| int oofem::CemhydMat::reinforcementDegree |
Degree of reinforcement, if defined, reinforcement effect for conductivity and capacity is accounted for. Isotropic case.
Definition at line 136 of file cemhydmat.h.
Referenced by giveConcreteCapacity(), giveConcreteDensity(), giveIsotropicConductivity(), and initializeFrom().
| FloatArray oofem::CemhydMat::scaling |
Array containing scaling factors for density, conductivity and capacity.
Definition at line 134 of file cemhydmat.h.
Referenced by giveConcreteCapacity(), giveConcreteDensity(), giveIsotropicConductivity(), and initializeFrom().
| std::string oofem::CemhydMat::XMLfileName |
XML input file name for CEMHYD3D.
Definition at line 140 of file cemhydmat.h.
Referenced by oofem::CemhydMatStatus::CemhydMatStatus(), and initializeFrom().