Commit 5648bd4c authored by Katherina Baber's avatar Katherina Baber
Browse files

test box 1p2c: implementation of naming conventions

reviewed by Nicolas


git-svn-id: svn://svn.iws.uni-stuttgart.de/DUMUX/dumux/trunk@8127 2fb0f335-1f38-0410-981e-8018bf24f1b0
parent cfea9d37
This diff is collapsed.
......@@ -58,7 +58,7 @@ struct OnePTwoCIndices
// primary variable indices
static const int pressureIdx = PVOffset + 0; //!< pressure
static const int x1Idx = PVOffset + 1; //!< mole fraction of the second component
static const int massOrMoleFractionIdx = PVOffset + 1; //!< mole fraction of the second component
};
// \}
......
......@@ -109,11 +109,11 @@ public:
* \brief Evaluate the amount of all conservation quantities
* (e.g. phase mass) within a finite volume.
*
* \param result The mass of the component within the sub-control volume
* \param storage The mass of the component within the sub-control volume
* \param scvIdx The index of the considered face of the sub-control volume
* \param usePrevSol Evaluate function with solution of current or previous time step
*/
void computeStorage(PrimaryVariables &result, int scvIdx, bool usePrevSol) const
void computeStorage(PrimaryVariables &storage, const int scvIdx, const bool usePrevSol) const
{
// if flag usePrevSol is set, the solution from the previous
// time step is used, otherwise the current solution is
......@@ -123,23 +123,23 @@ public:
const ElementVolumeVariables &elemVolVars = usePrevSol ? this->prevVolVars_() : this->curVolVars_();
const VolumeVariables &volVars = elemVolVars[scvIdx];
result = 0;
storage = 0;
if(!useMoles)
{
// storage term of continuity equation - massfractions
result[contiEqIdx] +=
storage[contiEqIdx] +=
volVars.fluidState().density(phaseIdx)*volVars.porosity();
//storage term of the transport equation - massfractions
result[transEqIdx] +=
storage[transEqIdx] +=
volVars.fluidState().density(phaseIdx) * volVars.fluidState().massFraction(phaseIdx, comp1Idx) * volVars.porosity();
}
else
{
// storage term of continuity equation- molefractions
//careful: molarDensity changes with moleFrac!
result[contiEqIdx] += volVars.molarDensity()*volVars.porosity();
storage[contiEqIdx] += volVars.molarDensity()*volVars.porosity();
// storage term of the transport equation - molefractions
result[transEqIdx] +=
storage[transEqIdx] +=
volVars.fluidState().molarDensity(phaseIdx)*volVars.fluidState().moleFraction(phaseIdx, comp1Idx) *
volVars.porosity();
}
......@@ -151,17 +151,17 @@ public:
* volume.
*
* \param flux The flux over the SCV (sub-control-volume) face for each component
* \param faceId The index of the considered face of the sub control volume
* \param faceIdx The index of the considered face of the sub control volume
* \param onBoundary A boolean variable to specify whether the flux variables
* are calculated for interior SCV faces or boundary faces, default=false
*/
void computeFlux(PrimaryVariables &flux, int faceId, bool onBoundary=false) const
void computeFlux(PrimaryVariables &flux, const int faceIdx, const bool onBoundary=false) const
{
flux = 0;
FluxVariables fluxVars(this->problem_(),
this->elem_(),
this->fvElemGeom_(),
faceId,
this->element_(),
this->fvGeometry_(),
faceIdx,
this->curVolVars_(),
onBoundary);
......@@ -241,22 +241,22 @@ public:
if(!useMoles)
{
// diffusive flux of the second component - massfraction
tmp = -(fluxVars.moleFracGrad(comp1Idx)*fluxVars.face().normal);
tmp *= fluxVars.porousDiffCoeff() * fluxVars.molarDensityAtIP();
tmp = -(fluxVars.moleFractionGrad(comp1Idx)*fluxVars.face().normal);
tmp *= fluxVars.porousDiffCoeff() * fluxVars.molarDensity();
// convert it to a mass flux and add it
flux[transEqIdx] += tmp * FluidSystem::molarMass(comp1Idx);
}
else
{
// diffusive flux of the second component - molefraction
tmp = -(fluxVars.moleFracGrad(comp1Idx)*fluxVars.face().normal);
tmp *= fluxVars.porousDiffCoeff() * fluxVars.molarDensityAtIP();
tmp = -(fluxVars.moleFractionGrad(comp1Idx)*fluxVars.face().normal);
tmp *= fluxVars.porousDiffCoeff() * fluxVars.molarDensity();
// dispersive flux of second component - molefraction
// Vector normalDisp;
// fluxVars.dispersionTensor().mv(fluxVars.face().normal, normalDisp);
// tmp -= fluxVars.molarDensityAtIP()*
// (normalDisp * fluxVars.moleFracGrad(comp1Idx));
// tmp -= fluxVars.molarDensity()*
// (normalDisp * fluxVars.moleFractionGrad(comp1Idx));
flux[transEqIdx] += tmp;
}
......@@ -264,16 +264,16 @@ public:
/*!
* \brief Calculate the source term of the equation
* \param q The source/sink in the SCV for each component
* \param localVertexIdx The index of the vertex of the sub control volume
* \param source The source/sink in the SCV for each component
* \param scvIdx The index of the vertex of the sub control volume
*
*/
void computeSource(PrimaryVariables &q, int localVertexIdx)
void computeSource(PrimaryVariables &source, const int scvIdx)
{
this->problem_().boxSDSource(q,
this->elem_(),
this->fvElemGeom_(),
localVertexIdx,
this->problem_().boxSDSource(source,
this->element_(),
this->fvGeometry_(),
scvIdx,
this->curVolVars_());
}
......@@ -286,8 +286,8 @@ public:
* \param boundaryFaceIdx The index of the considered boundary face of the sub control volume
*/
void evalOutflowSegment(const IntersectionIterator &isIt,
int scvIdx,
int boundaryFaceIdx)
const int scvIdx,
const int boundaryFaceIdx)
{
const BoundaryTypes &bcTypes = this->bcTypes_(scvIdx);
// deal with outflow boundaries
......
......@@ -94,7 +94,7 @@ class OnePTwoCBoxModel : public BoxModel<TypeTag>
typedef typename GridView::template Codim<dim>::Iterator VertexIterator;
typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar;
typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
typedef Dune::FieldVector<Scalar, dim> DimVector;
public:
/*!
......@@ -124,18 +124,18 @@ public:
unsigned numVertices = this->problem_().gridView().size(dim);
ScalarField &pressure = *writer.allocateManagedBuffer(numVertices);
ScalarField &delp = *writer.allocateManagedBuffer(numVertices);
ScalarField &moleFrac0 = *writer.allocateManagedBuffer(numVertices);
ScalarField &moleFrac1 = *writer.allocateManagedBuffer(numVertices);
ScalarField &massFrac0 = *writer.allocateManagedBuffer(numVertices);
ScalarField &massFrac1 = *writer.allocateManagedBuffer(numVertices);
ScalarField &moleFraction0 = *writer.allocateManagedBuffer(numVertices);
ScalarField &moleFraction1 = *writer.allocateManagedBuffer(numVertices);
ScalarField &massFraction0 = *writer.allocateManagedBuffer(numVertices);
ScalarField &massFraction1 = *writer.allocateManagedBuffer(numVertices);
ScalarField &rho = *writer.allocateManagedBuffer(numVertices);
ScalarField &mu = *writer.allocateManagedBuffer(numVertices);
#ifdef VELOCITY_OUTPUT // check if velocity output is demanded
ScalarField &velocityX = *writer.allocateManagedBuffer(numVertices);
ScalarField &velocityY = *writer.allocateManagedBuffer(numVertices);
ScalarField &velocityZ = *writer.allocateManagedBuffer(numVertices);
//use vertiacl faces for vx and horizontal faces for vy calculation
std::vector<GlobalPosition> boxSurface(numVertices);
//use vertical faces for vx and horizontal faces for vy calculation
std::vector<DimVector> boxSurface(numVertices);
// initialize velocity fields
for (int i = 0; i < numVertices; ++i)
{
......@@ -156,7 +156,7 @@ public:
ScalarField &rank =
*writer.allocateManagedBuffer(numElements);
FVElementGeometry fvElemGeom;
FVElementGeometry fvGeometry;
VolumeVariables volVars;
ElementBoundaryTypes elemBcTypes;
......@@ -167,8 +167,8 @@ public:
int idx = this->problem_().model().elementMapper().map(*elemIt);
rank[idx] = this->gridView_().comm().rank();
fvElemGeom.update(this->gridView_(), *elemIt);
elemBcTypes.update(this->problem_(), *elemIt, fvElemGeom);
fvGeometry.update(this->gridView_(), *elemIt);
elemBcTypes.update(this->problem_(), *elemIt, fvGeometry);
int numVerts = elemIt->template count<dim> ();
for (int i = 0; i < numVerts; ++i)
......@@ -177,16 +177,16 @@ public:
volVars.update(sol[globalIdx],
this->problem_(),
*elemIt,
fvElemGeom,
fvGeometry,
i,
false);
pressure[globalIdx] = volVars.pressure();
delp[globalIdx] = volVars.pressure() - 1e5;
moleFrac0[globalIdx] = volVars.moleFraction(0);
moleFrac1[globalIdx] = volVars.moleFraction(1);
massFrac0[globalIdx] = volVars.massFraction(0);
massFrac1[globalIdx] = volVars.massFraction(1);
moleFraction0[globalIdx] = volVars.moleFraction(0);
moleFraction1[globalIdx] = volVars.moleFraction(1);
massFraction0[globalIdx] = volVars.massFraction(0);
massFraction1[globalIdx] = volVars.massFraction(1);
rho[globalIdx] = volVars.density();
mu[globalIdx] = volVars.viscosity();
};
......@@ -194,29 +194,29 @@ public:
#ifdef VELOCITY_OUTPUT // check if velocity output is demanded
// In the box method, the velocity is evaluated on the FE-Grid. However, to get an
// average apparent velocity at the vertex, all contributing velocities have to be interpolated.
GlobalPosition velocity;
DimVector velocity;
ElementVolumeVariables elemVolVars;
elemVolVars.update(this->problem_(),
*elemIt,
fvElemGeom,
fvGeometry,
false /* isOldSol? */);
// loop over the phases
for (int faceIdx = 0; faceIdx < fvElemGeom.numEdges; faceIdx++)
for (int faceIdx = 0; faceIdx < fvGeometry.numEdges; faceIdx++)
{
velocity = 0.0;
//prepare the flux calculations (set up and prepare geometry, FE gradients)
FluxVariables fluxVars(this->problem_(),
*elemIt,
fvElemGeom,
fvGeometry,
faceIdx,
elemVolVars);
//use vertiacl faces for vx and horizontal faces for vy calculation
GlobalPosition xVector(0), yVector(0);
//use vertical faces for vx and horizontal faces for vy calculation
DimVector xVector(0), yVector(0);
xVector[0] = 1; yVector[1] = 1;
Dune::SeqScalarProduct<GlobalPosition> sp;
Dune::SeqScalarProduct<DimVector> sp;
Scalar xDir = std::abs(sp.dot(fluxVars.face().normal, xVector));
Scalar yDir = std::abs(sp.dot(fluxVars.face().normal, yVector));
......@@ -286,7 +286,7 @@ public:
{
int i = this->problem_().vertexMapper().map(*vIt);
//use vertiacl faces for vx and horizontal faces for vy calculation
//use vertical faces for vx and horizontal faces for vy calculation
velocityX[i] /= boxSurface[i][0];
if (dim >= 2)
{
......@@ -306,18 +306,17 @@ public:
if (dim > 2)
writer.attachVertexData(velocityZ, "Vz");
#endif
char nameMoleFrac0[42], nameMoleFrac1[42];
snprintf(nameMoleFrac0, 42, "x_%s", FluidSystem::componentName(0));
snprintf(nameMoleFrac1, 42, "x_%s", FluidSystem::componentName(1));
writer.attachVertexData(moleFrac0, nameMoleFrac0);
writer.attachVertexData(moleFrac1, nameMoleFrac1);
char nameMassFrac0[42], nameMassFrac1[42];
snprintf(nameMassFrac0, 42, "X_%s", FluidSystem::componentName(0));
snprintf(nameMassFrac1, 42, "X_%s", FluidSystem::componentName(1));
writer.attachVertexData(massFrac0, nameMassFrac0);
writer.attachVertexData(massFrac1, nameMassFrac1);
// writer.attachVertexData(delFrac, "delFrac_TRAIL");
char nameMoleFraction0[42], nameMoleFraction1[42];
snprintf(nameMoleFraction0, 42, "x_%s", FluidSystem::componentName(0));
snprintf(nameMoleFraction1, 42, "x_%s", FluidSystem::componentName(1));
writer.attachVertexData(moleFraction0, nameMoleFraction0);
writer.attachVertexData(moleFraction1, nameMoleFraction1);
char nameMassFraction0[42], nameMassFraction1[42];
snprintf(nameMassFraction0, 42, "X_%s", FluidSystem::componentName(0));
snprintf(nameMassFraction1, 42, "X_%s", FluidSystem::componentName(1));
writer.attachVertexData(massFraction0, nameMassFraction0);
writer.attachVertexData(massFraction1, nameMassFraction1);
writer.attachVertexData(rho, "rho");
writer.attachVertexData(mu, "mu");
writer.attachCellData(rank, "process rank");
......
......@@ -49,7 +49,7 @@ class OnePTwoCBoxProblem : public PorousMediaBoxProblem<TypeTag>
typedef typename GET_PROP_TYPE(TypeTag, TimeManager) TimeManager;
typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView;
typedef typename GET_PROP_TYPE(TypeTag, SpatialParameters) SpatialParameters;
typedef typename GET_PROP_TYPE(TypeTag, SpatialParams) SpatialParams;
public:
/*!
......@@ -62,7 +62,7 @@ public:
DUMUX_DEPRECATED_MSG("use PorousMediaBoxProblem instead")
OnePTwoCBoxProblem(TimeManager &timeManager,
const GridView &gridView,
bool verbose = true)
const bool verbose = true)
: ParentType(timeManager, gridView)
{}
......@@ -71,14 +71,14 @@ public:
*
* \param timeManager The time manager
* \param gridView The grid view
* \param spatialParameters The spatial parameters object
* \param spatialParams The spatial parameters object
* \param verbose Turn verbosity on or off
*/
DUMUX_DEPRECATED_MSG("use PorousMediaBoxProblem instead")
OnePTwoCBoxProblem(TimeManager &timeManager,
const GridView &gridView,
SpatialParameters &spatialParameters,
bool verbose = true)
SpatialParams &spatialParams,
const bool verbose = true)
: ParentType(timeManager, gridView)
{}
......
......@@ -58,7 +58,8 @@ NEW_PROP_TAG(NumPhases); //!< Number of fluid phases in the system
NEW_PROP_TAG(NumComponents); //!< Number of fluid components in the system
NEW_PROP_TAG(OnePTwoCIndices); //!< DEPRECATED Enumerations for the 1p2c models
NEW_PROP_TAG(Indices); //!< Enumerations for the model
NEW_PROP_TAG(SpatialParameters); //!< The type of the spatial parameters
NEW_PROP_TAG(SpatialParams); //!< The type of the spatial parameters
NEW_PROP_TAG(SpatialParameters); //!< DEPRECATED The type of the spatial parameters
NEW_PROP_TAG(FluidSystem); //!< Type of the multi-component relations
NEW_PROP_TAG(UpwindWeight); //!< The default value of the upwind weight
NEW_PROP_TAG(EnableGravity); //!< Returns whether gravity is considered in the problem
......
......@@ -62,15 +62,15 @@ class OnePTwoCVolumeVariables : public BoxVolumeVariables<TypeTag>
comp1Idx = Indices::comp1Idx,
pressureIdx = Indices::pressureIdx,
x1Idx = Indices::x1Idx
massOrMoleFractionIdx = Indices::massOrMoleFractionIdx
};
typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView;
typedef typename GridView::template Codim<0>::Entity Element;
enum { dimWorld = GridView::dimensionworld };
enum { dim = GridView::dimension };
typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar;
typedef Dune::FieldVector<Scalar,dimWorld> Vector;
typedef Dune::FieldVector<Scalar,dim> DimVector;
public:
//! The type returned by the fluidState() method
......@@ -82,25 +82,25 @@ public:
* \param priVars A vector containing the primary variables
* \param problem The considered problem
* \param element The considered element of the grid
* \param elemGeom The finite-volume geometry in the box scheme
* \param fvGeometry The finite-volume geometry in the box scheme
* \param scvIdx The index of the considered sub-control volume
* \param isOldSol Evaluate function with solution of current or previous time step
*/
void update(const PrimaryVariables &priVars,
const Problem &problem,
const Element &element,
const FVElementGeometry &elemGeom,
int scvIdx,
bool isOldSol)
const FVElementGeometry &fvGeometry,
const int scvIdx,
const bool isOldSol)
{
ParentType::update(priVars, problem, element, elemGeom, scvIdx, isOldSol);
ParentType::update(priVars, problem, element, fvGeometry, scvIdx, isOldSol);
//calculate all secondary variables from the primary variables and store results in fluidstate
completeFluidState(priVars, problem, element, elemGeom, scvIdx, fluidState_);
completeFluidState(priVars, problem, element, fvGeometry, scvIdx, fluidState_);
porosity_ = problem.spatialParameters().porosity(element, elemGeom, scvIdx);
tortuosity_ = problem.spatialParameters().tortuosity(element, elemGeom, scvIdx);
dispersivity_ = problem.spatialParameters().dispersivity(element, elemGeom, scvIdx);
porosity_ = problem.spatialParams().porosity(element, fvGeometry, scvIdx);
tortuosity_ = problem.spatialParams().tortuosity(element, fvGeometry, scvIdx);
dispersivity_ = problem.spatialParams().dispersivity(element, fvGeometry, scvIdx);
// Second instance of a parameter cache.
// Could be avoided if diffusion coefficients also
......@@ -120,7 +120,7 @@ public:
Valgrind::CheckDefined(diffCoeff_);
// energy related quantities not contained in the fluid state
asImp_().updateEnergy_(priVars, problem, element, elemGeom, scvIdx, isOldSol);
asImp_().updateEnergy_(priVars, problem, element, fvGeometry, scvIdx, isOldSol);
}
/*!
......@@ -130,16 +130,16 @@ public:
const Problem& problem,
const Element& element,
const FVElementGeometry& elementGeometry,
int scvIdx,
const int scvIdx,
FluidState& fluidState)
{
Scalar t = Implementation::temperature_(primaryVariables, problem, element,
Scalar T = Implementation::temperature_(primaryVariables, problem, element,
elementGeometry, scvIdx);
fluidState.setTemperature(t);
fluidState.setTemperature(T);
fluidState.setPressure(phaseIdx, primaryVariables[pressureIdx]);
Scalar x1 = primaryVariables[x1Idx]; //mole or mass fraction of component 1
Scalar x1 = primaryVariables[massOrMoleFractionIdx]; //mole or mass fraction of component 1
if(!useMoles) //mass-fraction formulation
{
// convert mass to mole fractions
......@@ -228,7 +228,7 @@ public:
/*!
* \brief Returns the dispersivity of the fluid's streamlines.
*/
const Vector &dispersivity() const
const DimVector &dispersivity() const
{ return dispersivity_; }
/*!
......@@ -256,28 +256,28 @@ public:
protected:
static Scalar temperature_(const PrimaryVariables &priVars,
const Problem& problem,
const Element &element,
const FVElementGeometry &elemGeom,
int scvIdx)
const Problem& problem,
const Element &element,
const FVElementGeometry &fvGeometry,
const int scvIdx)
{
return problem.boxTemperature(element, elemGeom, scvIdx);
return problem.boxTemperature(element, fvGeometry, scvIdx);
}
/*!
* \brief Called by update() to compute the energy related quantities.
*/
void updateEnergy_(const PrimaryVariables &sol,
void updateEnergy_(const PrimaryVariables &priVars,
const Problem &problem,
const Element &element,
const FVElementGeometry &elemGeom,
int vertIdx,
bool isOldSol)
const FVElementGeometry &fvGeometry,
const int scvIdx,
const bool isOldSol)
{ }
Scalar porosity_; //!< Effective porosity within the control volume
Scalar tortuosity_;
Vector dispersivity_;
DimVector dispersivity_;
Scalar diffCoeff_;
FluidState fluidState_;
......
......@@ -135,7 +135,7 @@ class OnePTwoCOutflowProblem : public PorousMediaBoxProblem<TypeTag>
// indices of the primary variables
pressureIdx = Indices::pressureIdx,
x1Idx = Indices::x1Idx,
massOrMoleFractionIdx = Indices::massOrMoleFractionIdx,
// indices of the equations
contiEqIdx = Indices::contiEqIdx,
......@@ -206,7 +206,7 @@ public:
}
/*!
* \brief Evaluate the boundary conditions for a dirichlet
* \brief Evaluate the boundary conditions for a Dirichlet
* boundary segment.
*
* For this method, the \a values parameter stores primary variables.
......@@ -216,13 +216,13 @@ public:
const GlobalPosition globalPos = vertex.geometry().center();
initial_(values, globalPos);
//condition for the trail molefraction at left boundary
//condition for the N2 molefraction at left boundary
if(globalPos[0] < eps_)
values[x1Idx] = 2.0e-5;
values[massOrMoleFractionIdx] = 2.0e-5;
}
/*!
* \brief Evaluate the boundary conditions for a neumann
* \brief Evaluate the boundary conditions for a Neumann
* boundary segment.
*
* For this method, the \a values parameter stores the mass flux
......@@ -231,10 +231,10 @@ public:
*/
void neumann(PrimaryVariables &values,
const Element &element,
const FVElementGeometry &fvElemGeom,
const FVElementGeometry &fvGeometry,
const Intersection &is,
int scvIdx,
int boundaryFaceIdx) const
const int scvIdx,
const int boundaryFaceIdx) const
{
//const GlobalPosition &globalPos = element.geometry().corner(scvIdx);
values = 0;
......@@ -270,8 +270,8 @@ public:
*/
void initial(PrimaryVariables &values,
const Element &element,
const FVElementGeometry &fvElemGeom,
int scvIdx) const
const FVElementGeometry &fvGeometry,
const int scvIdx) const
{
const GlobalPosition &globalPos
= element.geometry().corner(scvIdx);
......@@ -287,7 +287,7 @@ private:
const GlobalPosition &globalPos) const
{
values[pressureIdx] = 2e5 - 1e5*globalPos[0];//0.0; //initial condition for the pressure
values[x1Idx] = 0.0; //initial condition for the trail molefraction
values[massOrMoleFractionIdx] = 0.0; //initial condition for the N2 molefraction
}
const Scalar eps_;
......
......@@ -68,8 +68,8 @@ class OnePTwoCOutflowSpatialParameters : public BoxSpatialParametersOneP<TypeTag
//typedef LinearMaterial<Scalar> EffMaterialLaw;
public:
OnePTwoCOutflowSpatialParameters(const GridView &gv)
: ParentType(gv)
OnePTwoCOutflowSpatialParameters(const GridView &gridView)
: ParentType(gridView)
{
permeability_ = 1e-10;
porosity_ = 0.4;
......@@ -94,12 +94,12 @@ public:
* \brief Define the intrinsic permeability \f$\mathrm{[m^2]}\f$.
*
* \param element The current finite element
* \param fvElemGeom The current finite volume geometry of the element
* \param fvGeometry The current finite volume geometry of the element
* \param scvIdx The index of the sub-control volume
*/
const Scalar intrinsicPermeability(const Element &element,
const FVElementGeometry &fvElemGeom,
int scvIdx) const
const FVElementGeometry &fvGeometry,
const int scvIdx) const
{
return permeability_;
}
......@@ -108,12 +108,12 @@ public:
* \brief Define the porosity \f$\mathrm{[-]}\f$.
*
* \param element The finite element
* \param fvElemGeom The finite volume geometry
* \param fvGeometry The finite volume geometry
* \param scvIdx The local index of the sub-control volume where
*/
double porosity(const Element &element,
const FVElementGeometry &fvElemGeom,
int scvIdx) const
const FVElementGeometry &fvGeometry,
const int scvIdx) const
{
return porosity_;
}
......@@ -122,12 +122,12 @@ public:
* \brief Define the tortuosity \f$\mathrm{[-]}\f$.
*
* \param element The finite element
* \param fvElemGeom The finite volume geometry
* \param fvGeometry The finite volume geometry
* \param scvIdx The local index of the sub-control volume where
*/
double tortuosity(const Element &element,
const FVElementGeometry &fvElemGeom,
int scvIdx) const
const FVElementGeometry &fvGeometry,
const int scvIdx) const
{
return tortuosity_;
}
......@@ -136,19 +136,19 @@ public:
* \brief Define the dispersivity.
*
* \param element The finite element
* \param fvElemGeom The finite volume geometry
* \param fvGeometry The finite volume geometry
* \param scvIdx The local index of the sub-control volume where