OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
This class implements a transport material status information. More...
#include <transportmaterial.h>
Public Member Functions | |
TransportMaterialStatus (int n, Domain *d, GaussPoint *g) | |
Constructor - creates new TransportMaterialStatus with number n, belonging to domain d and IntegrationPoint g. More... | |
virtual | ~TransportMaterialStatus () |
Destructor. More... | |
virtual void | printOutputAt (FILE *file, TimeStep *tStep) |
Print receiver's output to given stream. More... | |
virtual void | initTempStatus () |
Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables. More... | |
virtual void | updateYourself (TimeStep *tStep) |
Update equilibrium history variables according to temp-variables. More... | |
virtual contextIOResultType | saveContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
Stores receiver state to output stream. More... | |
virtual contextIOResultType | restoreContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
Restores the receiver state previously written in stream. More... | |
void | letTempStateVectorBe (FloatArray v) |
virtual const char * | giveClassName () const |
void | setTempGradient (FloatArray grad) |
Set gradient. More... | |
void | setTempField (FloatArray newField) |
Set field. More... | |
void | setTempFlux (FloatArray w) |
Set flux. More... | |
const FloatArray & | giveGradient () |
Return last gradient. More... | |
const FloatArray & | giveField () |
Return last field. More... | |
const FloatArray & | giveFlux () |
Returns last flux. More... | |
const FloatArray & | giveTempGradient () |
Return last gradient. More... | |
const FloatArray & | giveTempField () |
Return last field. More... | |
const FloatArray & | giveTempFlux () |
Returns last flux. More... | |
double | giveMaturity () |
Returns maturity. More... | |
Public Member Functions inherited from oofem::MaterialStatus | |
MaterialStatus (int n, Domain *d, GaussPoint *g) | |
Constructor. More... | |
virtual | ~MaterialStatus () |
Destructor. More... | |
virtual bool | giveMaterialProperty (int propID, double &value) |
Returns the value of material model property stored in receiving status. More... | |
virtual void | setMaterialProperty (int propID, double value) |
Allows to set the value of material model property to be stored in receiving status. More... | |
virtual void | setStatusVariable (int varID, double value) |
Allows to set the value of a specific variable, identified by varID. More... | |
virtual void | restoreConsistency () |
Restores consistency of the status, i.e., computes or corrects the values of certain status variables such that the state is admissible. More... | |
virtual IRResultType | initializeFrom (InputRecord *ir) |
Initializes receiver according to object description stored in input record. More... | |
Public Member Functions inherited from oofem::IntegrationPointStatus | |
IntegrationPointStatus (int n, Domain *d, GaussPoint *g) | |
Constructor. More... | |
virtual | ~IntegrationPointStatus () |
Destructor. More... | |
virtual const char * | giveInputRecordName () const |
Public Member Functions inherited from oofem::FEMComponent | |
FEMComponent (int n, Domain *d) | |
Regular constructor, creates component with given number and belonging to given domain. More... | |
virtual | ~FEMComponent () |
Virtual destructor. More... | |
Domain * | giveDomain () const |
virtual void | setDomain (Domain *d) |
Sets associated Domain. More... | |
int | giveNumber () const |
void | setNumber (int num) |
Sets number of receiver. More... | |
virtual void | updateLocalNumbering (EntityRenumberingFunctor &f) |
Local renumbering support. More... | |
virtual void | giveInputRecord (DynamicInputRecord &input) |
Setups the input record string of receiver. More... | |
virtual int | checkConsistency () |
Allows programmer to test some internal data, before computation begins. More... | |
virtual void | printYourself () |
Prints receiver state on stdout. Useful for debugging. More... | |
virtual Interface * | giveInterface (InterfaceType t) |
Interface requesting service. More... | |
std::string | errorInfo (const char *func) const |
Returns string for prepending output (used by error reporting macros). More... | |
Protected Attributes | |
FloatArray | temp_field |
Vector containing the last used field. More... | |
FloatArray | temp_gradient |
Vector containing the last used gradient. More... | |
FloatArray | temp_flux |
Vector containing the last computed flux. More... | |
FloatArray | field |
Vector containing the last equilibrated field. The physical meaning corresponds to temperature, concentration etc. More... | |
FloatArray | gradient |
Vector containing the last equilibrated gradient. It is the spatial gradient of the field. More... | |
FloatArray | flux |
Vector containing the last equilibrated flux. The physical meaning corresponds to energy flux, mass flow, etc. More... | |
double | maturity |
A scalar containing maturity (integration of temperature over time) More... | |
Protected Attributes inherited from oofem::IntegrationPointStatus | |
GaussPoint * | gp |
Associated integration point. More... | |
Protected Attributes inherited from oofem::FEMComponent | |
int | number |
Component number. More... | |
Domain * | domain |
Link to domain object, useful for communicating with other FEM components. More... | |
This class implements a transport material status information.
When needed, new materials should specialized a derived class from this base. It is attribute of a Gauss point.
Definition at line 53 of file transportmaterial.h.
oofem::TransportMaterialStatus::TransportMaterialStatus | ( | int | n, |
Domain * | d, | ||
GaussPoint * | g | ||
) |
Constructor - creates new TransportMaterialStatus with number n, belonging to domain d and IntegrationPoint g.
Definition at line 68 of file transportmaterial.C.
Referenced by oofem::TransportMaterial::CreateStatus().
|
inlinevirtual |
Destructor.
Definition at line 71 of file transportmaterial.h.
References initTempStatus(), printOutputAt(), restoreContext(), saveContext(), and updateYourself().
|
inlinevirtual |
Reimplemented from oofem::IntegrationPointStatus.
Reimplemented in oofem::CemhydMatStatus, oofem::LatticeTransportMaterialStatus, oofem::RVEStokesFlowMaterialStatus, and oofem::HydratingTransportMaterialStatus.
Definition at line 85 of file transportmaterial.h.
References setTempField(), setTempFlux(), and setTempGradient().
|
inline |
Return last field.
Definition at line 97 of file transportmaterial.h.
References field.
Referenced by oofem::CemhydMatStatus::giveAverageTemperature(), oofem::HydratingConcreteMat::giveCharacteristicValue(), oofem::CemhydMat::giveCharacteristicValue(), oofem::HeMoTKMaterial::giveHumidity(), oofem::HeMoKunzelMaterial::giveHumidity(), oofem::TransportMaterial::giveIPValue(), and oofem::HydratingConcreteMatStatus::updateYourself().
|
inline |
Returns last flux.
Definition at line 99 of file transportmaterial.h.
References flux.
Referenced by oofem::NonlinearMassTransferMaterial::giveIPValue(), oofem::RVEStokesFlow::giveIPValue(), and oofem::TransportMaterial::giveIPValue().
|
inline |
Return last gradient.
Definition at line 95 of file transportmaterial.h.
References gradient.
Referenced by oofem::NonlinearMassTransferMaterial::giveIPValue(), oofem::RVEStokesFlow::giveIPValue(), and oofem::TransportMaterial::giveIPValue().
|
inline |
Returns maturity.
Definition at line 108 of file transportmaterial.h.
References maturity.
Referenced by oofem::TransportMaterial::giveIPValue().
|
inline |
Return last field.
Definition at line 104 of file transportmaterial.h.
References temp_field.
Referenced by oofem::HeMoTKMaterial::computeCapacityCoeff(), oofem::HeMoKunzelMaterial::computeCapacityCoeff(), oofem::HydratingConcreteMat::giveCharacteristicValue(), oofem::LatticeTransportMaterial::giveCharacteristicValue(), oofem::HeMoBazNajMaterial::giveFluxVector(), oofem::HeMoTKMaterial::giveHumidity(), oofem::HeMoKunzelMaterial::giveHumidity(), oofem::IsotropicHeatTransferMaterial::giveTemperature(), oofem::HeMoBazNajMaterial::matcond1d(), oofem::HeMoTKMaterial::matcond1d(), oofem::HeMoKunzelMaterial::matcond1d(), oofem::HeMoBazNajMaterial::matcond2d(), oofem::HeMoTKMaterial::matcond2d(), oofem::HeMoKunzelMaterial::matcond2d(), oofem::HeMoBazNajMaterial::matcond3d(), oofem::HeMoTKMaterial::matcond3d(), oofem::HeMoKunzelMaterial::matcond3d(), oofem::HydratingConcreteMatStatus::printOutputAt(), oofem::HydratingConcreteMat::scaleTemperature(), and oofem::HydratingConcreteMatStatus::updateYourself().
|
inline |
|
inline |
Return last gradient.
Definition at line 102 of file transportmaterial.h.
References temp_gradient.
Referenced by oofem::NonlinearMassTransferMaterial::giveCharacteristicMatrix().
|
virtual |
Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables.
Reimplemented from oofem::MaterialStatus.
Reimplemented in oofem::LatticeTransportMaterialStatus, and oofem::RVEStokesFlowMaterialStatus.
Definition at line 109 of file transportmaterial.C.
References field, flux, gradient, oofem::MaterialStatus::initTempStatus(), temp_field, temp_flux, and temp_gradient.
Referenced by oofem::RVEStokesFlowMaterialStatus::initTempStatus(), oofem::LatticeTransportMaterialStatus::initTempStatus(), and ~TransportMaterialStatus().
|
inline |
Definition at line 83 of file transportmaterial.h.
Referenced by oofem::HydratingHeMoMaterial::updateInternalState(), oofem::HydratingIsoHeatMaterial::updateInternalState(), and oofem::TransportMaterial::updateInternalState().
|
virtual |
Print receiver's output to given stream.
Reimplemented from oofem::MaterialStatus.
Reimplemented in oofem::CemhydMatStatus, oofem::HydratingConcreteMatStatus, oofem::LatticeTransportMaterialStatus, and oofem::HydratingTransportMaterialStatus.
Definition at line 72 of file transportmaterial.C.
References oofem::TransportElement::computeFlow(), field, oofem::GaussPoint::giveElement(), oofem::IntegrationPointStatus::gp, and oofem::MaterialStatus::printOutputAt().
Referenced by oofem::HydratingTransportMaterialStatus::printOutputAt(), oofem::HydratingConcreteMatStatus::printOutputAt(), oofem::CemhydMatStatus::printOutputAt(), and ~TransportMaterialStatus().
|
virtual |
Restores the receiver state previously written in stream.
stream | Input stream. |
mode | Determines amount of info available in stream (state, definition, ...). |
obj | Special parameter for sending extra information. |
throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::FEMComponent.
Reimplemented in oofem::RVEStokesFlowMaterialStatus.
Definition at line 150 of file transportmaterial.C.
References oofem::CIO_OK, field, flux, gradient, oofem::FEMComponent::restoreContext(), oofem::FloatArray::restoreYourself(), and THROW_CIOERR.
Referenced by oofem::RVEStokesFlowMaterialStatus::restoreContext(), and ~TransportMaterialStatus().
|
virtual |
Stores receiver state to output stream.
stream | Output stream. |
mode | Determines amount of info required in stream (state, definition, ...). |
obj | Special parameter, used only to send particular integration point to material class version of this method. |
throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::FEMComponent.
Reimplemented in oofem::RVEStokesFlowMaterialStatus.
Definition at line 122 of file transportmaterial.C.
References oofem::CIO_OK, field, flux, gradient, oofem::FEMComponent::saveContext(), oofem::FloatArray::storeYourself(), and THROW_CIOERR.
Referenced by oofem::RVEStokesFlowMaterialStatus::saveContext(), and ~TransportMaterialStatus().
void oofem::TransportMaterialStatus::setTempField | ( | FloatArray | newField | ) |
Set field.
Definition at line 47 of file transportmaterial.C.
References temp_field.
Referenced by giveClassName(), oofem::IsotropicMoistureTransferMaterial::giveFluxVector(), oofem::IsotropicHeatTransferMaterial::giveFluxVector(), oofem::AnisotropicMassTransferMaterial::giveFluxVector(), oofem::NonlinearMassTransferMaterial::giveFluxVector(), oofem::HeMoBazNajMaterial::giveFluxVector(), oofem::HeMoTKMaterial::giveFluxVector(), oofem::HeMoKunzelMaterial::giveFluxVector(), and oofem::LatticeTransportMaterial::giveFluxVector().
void oofem::TransportMaterialStatus::setTempFlux | ( | FloatArray | w | ) |
Set flux.
Definition at line 53 of file transportmaterial.C.
References temp_flux.
Referenced by giveClassName(), oofem::IsotropicMoistureTransferMaterial::giveFluxVector(), oofem::IsotropicHeatTransferMaterial::giveFluxVector(), oofem::AnisotropicMassTransferMaterial::giveFluxVector(), oofem::NonlinearMassTransferMaterial::giveFluxVector(), oofem::HeMoBazNajMaterial::giveFluxVector(), oofem::HeMoTKMaterial::giveFluxVector(), and oofem::HeMoKunzelMaterial::giveFluxVector().
void oofem::TransportMaterialStatus::setTempGradient | ( | FloatArray | grad | ) |
Set gradient.
Definition at line 41 of file transportmaterial.C.
References temp_gradient.
Referenced by giveClassName(), oofem::IsotropicMoistureTransferMaterial::giveFluxVector(), oofem::IsotropicHeatTransferMaterial::giveFluxVector(), oofem::AnisotropicMassTransferMaterial::giveFluxVector(), oofem::NonlinearMassTransferMaterial::giveFluxVector(), oofem::HeMoBazNajMaterial::giveFluxVector(), oofem::HeMoTKMaterial::giveFluxVector(), and oofem::HeMoKunzelMaterial::giveFluxVector().
|
virtual |
Update equilibrium history variables according to temp-variables.
Invoked, after new equilibrium state has been reached.
Reimplemented from oofem::MaterialStatus.
Reimplemented in oofem::CemhydMatStatus, oofem::HydratingConcreteMatStatus, oofem::IsotropicHeatTransferMaterialStatus, oofem::LatticeTransportMaterialStatus, oofem::RVEStokesFlowMaterialStatus, and oofem::HydratingTransportMaterialStatus.
Definition at line 98 of file transportmaterial.C.
References field, flux, gradient, temp_field, temp_flux, temp_gradient, and oofem::MaterialStatus::updateYourself().
Referenced by oofem::HydratingTransportMaterialStatus::updateYourself(), oofem::RVEStokesFlowMaterialStatus::updateYourself(), oofem::LatticeTransportMaterialStatus::updateYourself(), oofem::IsotropicHeatTransferMaterialStatus::updateYourself(), oofem::HydratingConcreteMatStatus::updateYourself(), oofem::CemhydMatStatus::updateYourself(), and ~TransportMaterialStatus().
|
protected |
Vector containing the last equilibrated field. The physical meaning corresponds to temperature, concentration etc.
Definition at line 60 of file transportmaterial.h.
Referenced by giveField(), oofem::LatticeTransportMaterialStatus::givePressure(), initTempStatus(), printOutputAt(), restoreContext(), saveContext(), updateYourself(), oofem::LatticeTransportMaterial::~LatticeTransportMaterial(), oofem::RVEStokesFlow::~RVEStokesFlow(), and oofem::TransportMaterial::~TransportMaterial().
|
protected |
Vector containing the last equilibrated flux. The physical meaning corresponds to energy flux, mass flow, etc.
Definition at line 62 of file transportmaterial.h.
Referenced by giveFlux(), initTempStatus(), restoreContext(), saveContext(), and updateYourself().
|
protected |
Vector containing the last equilibrated gradient. It is the spatial gradient of the field.
Definition at line 61 of file transportmaterial.h.
Referenced by giveGradient(), initTempStatus(), restoreContext(), saveContext(), and updateYourself().
|
protected |
A scalar containing maturity (integration of temperature over time)
Definition at line 65 of file transportmaterial.h.
Referenced by giveMaturity(), and oofem::HydratingConcreteMatStatus::updateYourself().
|
protected |
Vector containing the last used field.
Definition at line 56 of file transportmaterial.h.
Referenced by giveTempField(), initTempStatus(), setTempField(), and updateYourself().
|
protected |
Vector containing the last computed flux.
Definition at line 58 of file transportmaterial.h.
Referenced by giveTempFlux(), initTempStatus(), setTempFlux(), and updateYourself().
|
protected |
Vector containing the last used gradient.
Definition at line 57 of file transportmaterial.h.
Referenced by giveTempGradient(), initTempStatus(), setTempGradient(), and updateYourself().