|
OOFEM 3.0
|
#include <fe2fluidmaterial.h>
Public Member Functions | |
| FE2FluidMaterialStatus (int n, int rank, GaussPoint *gp, const std ::string &inputfile) | |
| EngngModel * | giveRVE () |
| MixedGradientPressureBC * | giveBC () |
| void | markOldTangents () |
| void | computeTangents (TimeStep *tStep) |
| double | giveVOFFraction () |
| bool | createRVE (int n, int rank, GaussPoint *gp, const std ::string &inputfile) |
| Creates/Initiates the RVE problem. | |
| void | setTimeStep (TimeStep *tStep) |
| Copies time step data to RVE. | |
| FloatMatrix & | giveDeviatoricTangent () |
| FloatArray & | giveDeviatoricPressureTangent () |
| FloatArray & | giveVolumetricDeviatoricTangent () |
| double & | giveVolumetricPressureTangent () |
| double | givePressure () |
| void | letPressureBe (double val) |
| void | printOutputAt (FILE *file, TimeStep *tStep) const override |
| Print receiver's output to given stream. | |
| void | initTempStatus () override |
| void | updateYourself (TimeStep *tStep) override |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| const char * | giveClassName () const override |
| Public Member Functions inherited from oofem::FluidDynamicMaterialStatus | |
| FluidDynamicMaterialStatus (GaussPoint *g) | |
| Constructor - creates new TransportMaterialStatus with number n, belonging to domain d and integration point g. | |
| void | printOutputAt (FILE *file, TimeStep *tStep) const override |
| Print receiver's output to given stream. | |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| const FloatArrayF< 6 > & | giveDeviatoricStressVector () const |
| const FloatArrayF< 6 > & | giveDeviatoricStrainRateVector () const |
| void | letDeviatoricStressVectorBe (const FloatArrayF< 6 > &v) |
| void | letDeviatoricStrainRateVectorBe (const FloatArrayF< 6 > &v) |
| const char * | giveClassName () const override |
| Public Member Functions inherited from oofem::MaterialStatus | |
| MaterialStatus (GaussPoint *g) | |
| void | printOutputAt (FILE *file, TimeStep *tStep) const override |
| Print receiver's output to given stream. | |
| void | updateYourself (TimeStep *) override |
| virtual bool | giveMaterialProperty (int propID, double &value) |
| virtual void | setMaterialProperty (int propID, double value) |
| Public Member Functions inherited from oofem::IntegrationPointStatus | |
| IntegrationPointStatus (GaussPoint *g) | |
| virtual | ~IntegrationPointStatus ()=default |
| Destructor. | |
| virtual void | setStatusVariable (int varID, double value) |
| virtual Interface * | giveInterface (InterfaceType t) |
Protected Attributes | |
| std ::unique_ptr< EngngModel > | rve |
| The subscale flow. | |
| MixedGradientPressureBC * | bc |
| Boundary condition in RVE that performs the computational homogenization. | |
| FloatMatrix | Ed |
| FloatArray | Cd |
| FloatArray | Ep |
| double | Cp |
| double | pressure |
| double | voffraction |
| bool | oldTangents |
| Protected Attributes inherited from oofem::FluidDynamicMaterialStatus | |
| FloatArrayF< 6 > | deviatoricStressVector |
| Stress vector in reduced form. | |
| FloatArrayF< 6 > | deviatoricStrainRateVector |
| Strain vector in reduced form. | |
| Protected Attributes inherited from oofem::IntegrationPointStatus | |
| GaussPoint * | gp |
| Associated integration point. | |
Class representing material status for the subscale fluid, i.e an Representative Volume Element (RVE).
Definition at line 58 of file fe2fluidmaterial.h.
| oofem::FE2FluidMaterialStatus::FE2FluidMaterialStatus | ( | int | n, |
| int | rank, | ||
| GaussPoint * | gp, | ||
| const std ::string & | inputfile ) |
Creates new material status.
| n | Material status number. |
| rank | Parallel rank (ignored if negative). |
| gp | Gauss point that the status belongs to. |
| inputfile | The input file describing the micro problem. |
Definition at line 314 of file fe2fluidmaterial.C.
References createRVE(), oofem::FluidDynamicMaterialStatus::FluidDynamicMaterialStatus(), oofem::IntegrationPointStatus::gp, oldTangents, OOFEM_ERROR, and voffraction.
| void oofem::FE2FluidMaterialStatus::computeTangents | ( | TimeStep * | tStep | ) |
Definition at line 388 of file fe2fluidmaterial.C.
References bc, giveDeviatoricPressureTangent(), giveDeviatoricTangent(), giveVolumetricDeviatoricTangent(), giveVolumetricPressureTangent(), oofem::TimeStep::isTheCurrentTimeStep(), oldTangents, and OOFEM_ERROR.
Referenced by oofem::FE2FluidMaterial::computeTangent3D(), oofem::FE2FluidMaterial::computeTangents3D(), and oofem::FE2FluidMaterial::giveEffectiveViscosity().
| bool oofem::FE2FluidMaterialStatus::createRVE | ( | int | n, |
| int | rank, | ||
| GaussPoint * | gp, | ||
| const std ::string & | inputfile ) |
Creates/Initiates the RVE problem.
Definition at line 325 of file fe2fluidmaterial.C.
References oofem::_processor, bc, oofem::OOFEMTXTDataReader::finish(), oofem::IntegrationPointStatus::gp, oofem::InstanciateProblem(), oofem::microScale, OOFEM_ERROR, and rve.
Referenced by FE2FluidMaterialStatus().
|
inline |
Definition at line 87 of file fe2fluidmaterial.h.
Referenced by oofem::FE2FluidMaterial::computeDeviatoricStress3D().
|
inlineoverridevirtual |
Implements oofem::IntegrationPointStatus.
Definition at line 116 of file fe2fluidmaterial.h.
|
inline |
Definition at line 101 of file fe2fluidmaterial.h.
References Ep.
Referenced by computeTangents(), and oofem::FE2FluidMaterial::computeTangents3D().
|
inline |
Definition at line 100 of file fe2fluidmaterial.h.
References Ed.
Referenced by oofem::FE2FluidMaterial::computeTangent3D(), computeTangents(), oofem::FE2FluidMaterial::computeTangents3D(), and oofem::FE2FluidMaterial::giveEffectiveViscosity().
|
inline |
Definition at line 105 of file fe2fluidmaterial.h.
Referenced by oofem::FE2FluidMaterial::giveIPValue().
|
inline |
Definition at line 86 of file fe2fluidmaterial.h.
Referenced by oofem::FE2FluidMaterial::computeDeviatoricStress3D().
|
inline |
Definition at line 92 of file fe2fluidmaterial.h.
Referenced by oofem::FE2FluidMaterial::giveIPValue().
|
inline |
Definition at line 102 of file fe2fluidmaterial.h.
References Cd.
Referenced by computeTangents(), and oofem::FE2FluidMaterial::computeTangents3D().
|
inline |
Definition at line 103 of file fe2fluidmaterial.h.
References Cp.
Referenced by computeTangents(), oofem::FE2FluidMaterial::computeTangents3D(), and oofem::FE2FluidMaterial::giveIPValue().
|
overridevirtual |
Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables.
Reimplemented from oofem::MaterialStatus.
Definition at line 368 of file fe2fluidmaterial.C.
|
inline |
Definition at line 106 of file fe2fluidmaterial.h.
Referenced by oofem::FE2FluidMaterial::computeDeviatoricStress3D().
| void oofem::FE2FluidMaterialStatus::markOldTangents | ( | ) |
Definition at line 386 of file fe2fluidmaterial.C.
References oldTangents.
Referenced by oofem::FE2FluidMaterial::computeDeviatoricStress3D(), and restoreContext().
|
overridevirtual |
Print receiver's output to given stream.
Reimplemented from oofem::IntegrationPointStatus.
Definition at line 352 of file fe2fluidmaterial.C.
|
overridevirtual |
Restores the receiver state previously written in stream.
| stream | Input stream. |
| mode | Determines amount of info available in stream (state, definition, ...). |
| throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::IntegrationPointStatus.
Definition at line 379 of file fe2fluidmaterial.C.
References markOldTangents(), and rve.
|
overridevirtual |
Stores receiver state to output stream.
| stream | Output stream. |
| mode | Determines amount of info required in stream (state, definition, ...). |
| throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::IntegrationPointStatus.
Definition at line 373 of file fe2fluidmaterial.C.
References rve.
| void oofem::FE2FluidMaterialStatus::setTimeStep | ( | TimeStep * | tStep | ) |
Copies time step data to RVE.
Definition at line 56 of file fe2fluidmaterial.C.
References oofem::TimeStep::giveNumber(), oofem::TimeStep::giveTargetTime(), oofem::TimeStep::giveTimeIncrement(), rve, oofem::TimeStep::setNumber(), oofem::TimeStep::setTime(), and oofem::TimeStep::setTimeIncrement().
Referenced by oofem::FE2FluidMaterial::computeDeviatoricStress3D().
|
overridevirtual |
Update equilibrium history variables according to temp-variables. Invoked, after new equilibrium state has been reached.
Reimplemented from oofem::IntegrationPointStatus.
Definition at line 357 of file fe2fluidmaterial.C.
References bc, rve, and voffraction.
|
protected |
Boundary condition in RVE that performs the computational homogenization.
Definition at line 64 of file fe2fluidmaterial.h.
Referenced by computeTangents(), createRVE(), and updateYourself().
|
protected |
Definition at line 67 of file fe2fluidmaterial.h.
Referenced by giveVolumetricDeviatoricTangent().
|
protected |
Definition at line 69 of file fe2fluidmaterial.h.
Referenced by giveVolumetricPressureTangent().
|
protected |
Definition at line 66 of file fe2fluidmaterial.h.
Referenced by giveDeviatoricTangent().
|
protected |
Definition at line 68 of file fe2fluidmaterial.h.
Referenced by giveDeviatoricPressureTangent().
|
protected |
Definition at line 74 of file fe2fluidmaterial.h.
Referenced by computeTangents(), FE2FluidMaterialStatus(), and markOldTangents().
|
protected |
Definition at line 71 of file fe2fluidmaterial.h.
|
protected |
The subscale flow.
Definition at line 62 of file fe2fluidmaterial.h.
Referenced by createRVE(), restoreContext(), saveContext(), setTimeStep(), and updateYourself().
|
protected |
Definition at line 72 of file fe2fluidmaterial.h.
Referenced by FE2FluidMaterialStatus(), and updateYourself().