25#ifndef DUMUX_ELEMENTDATA2P2C_HH
26#define DUMUX_ELEMENTDATA2P2C_HH
42template<
class TypeTag>
48 using FluidState =
typename GET_PROP_TYPE(TypeTag, FluidState);
50 using Indices =
typename GET_PROP_TYPE(TypeTag, ModelTraits)::Indices;
54 wPhaseIdx = Indices::wPhaseIdx, nPhaseIdx = Indices::nPhaseIdx,
55 wCompIdx = Indices::wPhaseIdx, nCompIdx = Indices::nPhaseIdx,
56 contiWEqIdx = Indices::contiWEqIdx
73 Scalar
dv_[numComponents];
87 for (
int i = 0; i < numPhases;i++)
136 [[deprecated(
"cellData.setPressure is deprecated and will be removed after release 3.1. Use cellData.manipulateFluidState() and set pressure in fluid state directly")]]
269 Scalar&
dv(
int compIdx)
275 const Scalar&
dv(
int compIdx)
const
298 [[deprecated(
"cellData.setSaturation is deprecated and will be removed after release 3.1. Use cellData.manipulateFluidState() and set saturation in fluid state directly")]]
312 [[deprecated(
"cellData.setViscosity is deprecated and will be removed after release 3.1. Use cellData.manipulateFluidState() and set viscosity in fluid state directly")]]
340 return fluidState_->massFraction(phaseIdx, compIdx);
346 return fluidState_->moleFraction(phaseIdx, compIdx);
#define GET_PROP_VALUE(TypeTag, PropTagName)
Definition: propertysystemmacros.hh:282
#define GET_PROP_TYPE(TypeTag, PropTagName)
Definition: propertysystemmacros.hh:283
make the local view function available whenever we use the grid geometry
Definition: adapt.hh:29
Property tag NumComponents
Number of components in the system.
Definition: porousmediumflow/sequential/properties.hh:70
Property tag NumPhases
Number of phases in the system.
Definition: porousmediumflow/sequential/properties.hh:69
std::string porosity() noexcept
I/O name of porosity.
Definition: name.hh:139
Storage container for discretized data of the constitutive relations for one element.
Definition: 2p2c/sequential/celldata.hh:44
Scalar volumeError_
Definition: 2p2c/sequential/celldata.hh:70
int globalIdx_
Definition: 2p2c/sequential/celldata.hh:77
void volumeDerivativesAvailable(bool value)
Specifies if volume derivatives are computed and available.
Definition: 2p2c/sequential/celldata.hh:390
FluidState & manipulateFluidState()
Allows manipulation of the cells fluid state Fluidstate is stored as a pointer, initialized as a null...
Definition: 2p2c/sequential/celldata.hh:373
FluxData fluxData_
Definition: 2p2c/sequential/celldata.hh:81
void setTotalConcentration(int compIdx, Scalar value)
Sets the total mass concentration of a component .
Definition: 2p2c/sequential/celldata.hh:167
bool hasVolumeDerivatives() const
Indicates if volume derivatives are computed and available.
Definition: 2p2c/sequential/celldata.hh:384
void setViscosity(int phaseIdx, Scalar value)
DOC ME!
Definition: 2p2c/sequential/celldata.hh:313
void setUpwindCell(int indexInInside, int phaseIdx, bool value)
Specifies if current cell is the upwind cell for a given interface.
Definition: 2p2c/sequential/celldata.hh:420
Scalar mobility_[numPhases]
Definition: 2p2c/sequential/celldata.hh:67
void setPressure(int phaseIdx, Scalar value)
Modify the phase pressure.
Definition: 2p2c/sequential/celldata.hh:137
const Scalar viscosity(int phaseIdx) const
DOC ME!
Definition: 2p2c/sequential/celldata.hh:318
Scalar & volumeError()
Return the volume error [-]. This quantity stands for the deviation of real fluid volume to available...
Definition: 2p2c/sequential/celldata.hh:221
void confirmVolumeDerivatives()
Specifies that volume derivatives are computed and available.
Definition: 2p2c/sequential/celldata.hh:387
const Scalar temperature(int phaseIdx) const
DOC ME!
Definition: 2p2c/sequential/celldata.hh:350
const Scalar & volumeError() const
Return the volume error [-].
Definition: 2p2c/sequential/celldata.hh:227
bool & wasRefined()
Indicates if current cell was refined at this time step.
Definition: 2p2c/sequential/celldata.hh:399
CellData2P2C()
Constructor for a local CellData object.
Definition: 2p2c/sequential/celldata.hh:85
Scalar dv_[numComponents]
Definition: 2p2c/sequential/celldata.hh:73
bool volumeDerivativesAvailable_
Definition: 2p2c/sequential/celldata.hh:74
const Scalar saturation(int phaseIdx) const
DOC ME!
Definition: 2p2c/sequential/celldata.hh:306
const Scalar massConcentration(int compIdx) const
Returns the total mass concentration of a component .
Definition: 2p2c/sequential/celldata.hh:156
int & globalIdx()
stores this cell datas index, only for debugging purposes!!
Definition: 2p2c/sequential/celldata.hh:381
Scalar perimeter_
Definition: 2p2c/sequential/celldata.hh:78
void setMassConcentration(int compIdx, Scalar value)
Sets the total mass concentration of a component .
Definition: 2p2c/sequential/celldata.hh:173
Scalar pressure(int phaseIdx)
Acess to the phase pressure.
Definition: 2p2c/sequential/celldata.hh:117
Scalar dv_dp_
Definition: 2p2c/sequential/celldata.hh:72
void reset()
Resets the cell data after a timestep was completed: No volume derivatives yet available.
Definition: 2p2c/sequential/celldata.hh:393
std::shared_ptr< FluidState > fluidState_
Definition: 2p2c/sequential/celldata.hh:80
const Scalar density(int phaseIdx) const
DOC ME!
Definition: 2p2c/sequential/celldata.hh:332
const Scalar totalConcentration(int compIdx) const
Returns the total mass concentration of a component .
Definition: 2p2c/sequential/celldata.hh:150
Scalar errorCorrection_
Definition: 2p2c/sequential/celldata.hh:71
void setMobility(int phaseIdx, Scalar value)
Set phase mobilities.
Definition: 2p2c/sequential/celldata.hh:210
const Scalar & dv(int compIdx) const
Return the derivative of spec. volume w.r.t. change of mass For details, see description of FVPressur...
Definition: 2p2c/sequential/celldata.hh:275
const FluidState & fluidState() const
Returns a reference to the cells fluid state.
Definition: 2p2c/sequential/celldata.hh:363
void calculateMassConcentration(Scalar porosity)
Calculate the total mass concentration of a component for a given porosity (within the initializatio...
Definition: 2p2c/sequential/celldata.hh:182
const Scalar & errorCorrection() const
Return the error Correction.
Definition: 2p2c/sequential/celldata.hh:244
const Scalar phaseMassFraction(int phaseIdx) const
DOC ME!
Definition: 2p2c/sequential/celldata.hh:356
Scalar & dv_dp()
Return the derivative of specific volume w.r.t. pressure For details, see description of FVPressureCo...
Definition: 2p2c/sequential/celldata.hh:253
Scalar & errorCorrection()
Return the error Correction This quantifies the damped error that actually entered the pressure equat...
Definition: 2p2c/sequential/celldata.hh:238
const bool & isUpwindCell(int indexInInside, int phaseIdx) const
Indicates if current cell is the upwind cell for a given interface.
Definition: 2p2c/sequential/celldata.hh:410
FluxData & fluxData()
Acess to flux data, representing information living on the intersections.
Definition: 2p2c/sequential/celldata.hh:101
Scalar & dv(int compIdx)
Return the derivative of spec. volume w.r.t. change of mass For details, see description of FVPressur...
Definition: 2p2c/sequential/celldata.hh:269
const Scalar moleFraction(int phaseIdx, int compIdx) const
DOC ME!
Definition: 2p2c/sequential/celldata.hh:344
const Scalar & mobility(int phaseIdx) const
Return phase mobilities.
Definition: 2p2c/sequential/celldata.hh:200
const Scalar & dv_dp() const
Return the derivative of specific volume w.r.t. pressure.
Definition: 2p2c/sequential/celldata.hh:259
Scalar massConcentration_[numComponents]
Definition: 2p2c/sequential/celldata.hh:65
Scalar & perimeter()
Return cell perimeter (as weithing function) The cell perimeter is used in combination with the face ...
Definition: 2p2c/sequential/celldata.hh:285
const Scalar massFraction(int phaseIdx, int compIdx) const
DOC ME!
Definition: 2p2c/sequential/celldata.hh:338
const Scalar & perimeter() const
Return cell perimeter (as weithing function)
Definition: 2p2c/sequential/celldata.hh:290
void setSaturation(int phaseIdx, Scalar value)
DOC ME!
Definition: 2p2c/sequential/celldata.hh:299
const Scalar pressure(int phaseIdx) const
Acess to the phase pressure.
Definition: 2p2c/sequential/celldata.hh:126
const FluxData & fluxData() const
Constant acess to flux data, representing information living on the intersections.
Definition: 2p2c/sequential/celldata.hh:106
bool wasRefined_
Definition: 2p2c/sequential/celldata.hh:75
const bool & wasRefined() const
Indicates if current cell was refined at this time step.
Definition: 2p2c/sequential/celldata.hh:402
const Scalar capillaryPressure() const
Returns the capillary pressure .
Definition: 2p2c/sequential/celldata.hh:326
Class including the variables and data of discretized data of the constitutive relations.
Definition: 2p2c/sequential/fluxdata.hh:43
void setUpwindCell(int indexInInside, int equationIdx, bool value)
Sets the upwind information.
Definition: 2p2c/sequential/fluxdata.hh:170
const bool & isUpwindCell(int indexInInside, int equationIdx) const
Functions returning upwind information.
Definition: 2p2c/sequential/fluxdata.hh:159
Class including the variables and data of discretized data of the constitutive relations.