Commit 7a506b8d authored by Natalie Schroeder's avatar Natalie Schroeder
Browse files

[dim vs dimworld]

for all diffusive and dispersive fluxes, changing dim-vectors to dimWorld-vectors, needed for dim!=dimWorld grids

reviewed by A.Kissinger



git-svn-id: svn://svn.iws.uni-stuttgart.de/DUMUX/dumux/trunk@13390 2fb0f335-1f38-0410-981e-8018bf24f1b0
parent ae7263f3
......@@ -131,7 +131,7 @@ public:
* \brief Return the pressure potential multiplied with the
* intrinsic permeability as vector (for velocity output).
*/
DimVector Kmvp() const
GlobalPosition Kmvp() const
{ return Kmvp_; }
/*!
......@@ -161,7 +161,7 @@ public:
/*!
* \brief Return the pressure potential gradient \f$\mathrm{[Pa/m]}\f$.
*/
const DimVector &potentialGrad() const
const GlobalPosition &potentialGrad() const
{ return potentialGrad_; }
......@@ -170,7 +170,7 @@ public:
*
* \param compIdx The index of the considered component
*/
const DimVector &moleFractionGrad(int compIdx) const
const GlobalPosition &moleFractionGrad(int compIdx) const
{
if (compIdx != 1)
{ DUNE_THROW(Dune::InvalidStateException,
......@@ -292,7 +292,7 @@ protected:
const VolumeVariables &volVarsI = elemVolVars[face().i];
const VolumeVariables &volVarsJ = elemVolVars[face().j];
DimVector tmp;
GlobalPosition tmp;
//The decision of the if-statement depends on the function useTwoPointGradient(const Element &element,
//int vertexI,int vertexJ) defined in test/tissue_tumor_spatialparameters.hh
if (!problem.spatialParams().useTwoPointGradient(element, face().i, face().j)) {
......@@ -303,7 +303,7 @@ protected:
idx++) // loop over adjacent vertices
{
// FE gradient at vertex idx
const DimVector &feGrad = face().grad[idx];
const GlobalPosition &feGrad = face().grad[idx];
// index for the element volume variables
int volVarsIdx = face().fapIndices[idx];
......@@ -356,7 +356,7 @@ protected:
Scalar density = (rhoI + rhoJ)/2;
// ask for the gravitational acceleration at the given SCV face
DimVector g(problem.gravityAtPos(face().ipGlobal));
GlobalPosition g(problem.gravityAtPos(face().ipGlobal));
// make it a force
g *= density;
......@@ -482,7 +482,7 @@ protected:
dispersivity[1] = 0.5 * (volVarsI.dispersivity()[1] + volVarsJ.dispersivity()[1]);
//calculate velocity at interface: v = -1/mu * vDarcy = -1/mu * K * grad(p)
DimVector velocity;
GlobalPosition velocity;
Valgrind::CheckDefined(potentialGrad());
Valgrind::CheckDefined(K_);
K_.mv(potentialGrad(), velocity);
......@@ -514,9 +514,9 @@ protected:
const bool onBoundary_;
//! pressure potential gradient
DimVector potentialGrad_;
GlobalPosition potentialGrad_;
//! mole-fraction gradient
DimVector moleFractionGrad_;
GlobalPosition moleFractionGrad_;
//! the effective diffusion coefficent in the porous medium
Scalar porousDiffCoeff_;
......@@ -526,7 +526,7 @@ protected:
//! the intrinsic permeability tensor
DimMatrix K_;
// intrinsic permeability times pressure potential gradient
DimVector Kmvp_;
GlobalPosition Kmvp_;
// projected on the face normal
Scalar KmvpNormal_;
......
......@@ -49,7 +49,9 @@ protected:
typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView;
enum { dim = GridView::dimension };
enum { dimWorld = GridView::dimensionworld };
typedef Dune::FieldVector<Scalar, dim> DimVector;
typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
typedef typename GET_PROP_TYPE(TypeTag, VolumeVariables) VolumeVariables;
typedef typename GET_PROP_TYPE(TypeTag, FluxVariables) FluxVariables;
......@@ -226,7 +228,7 @@ public:
tmp *= fluxVars.porousDiffCoeff() * fluxVars.molarDensity();
// dispersive flux of second component - massfraction
DimVector normalDisp;
GlobalPosition normalDisp;
fluxVars.dispersionTensor().mv(fluxVars.face().normal, normalDisp);
tmp -= fluxVars.molarDensity()*
(normalDisp * fluxVars.moleFractionGrad(transportCompIdx));
......@@ -241,7 +243,7 @@ public:
tmp *= fluxVars.porousDiffCoeff() * fluxVars.molarDensity();
// dispersive flux of second component - molefraction
DimVector normalDisp;
GlobalPosition normalDisp;
fluxVars.dispersionTensor().mv(fluxVars.face().normal, normalDisp);
tmp -= fluxVars.molarDensity()*
(normalDisp * fluxVars.moleFractionGrad(transportCompIdx));
......
......@@ -65,9 +65,11 @@ class OnePTwoCVolumeVariables : public ImplicitVolumeVariables<TypeTag>
typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView;
typedef typename GridView::template Codim<0>::Entity Element;
enum { dim = GridView::dimension };
enum { dimWorld = GridView::dimensionworld };
typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar;
typedef Dune::FieldVector<Scalar,dim> DimVector;
typedef Dune::FieldVector<Scalar,dimWorld> GlobalPosition;
public:
//! The type returned by the fluidState() method
......@@ -223,7 +225,7 @@ public:
/*!
* \brief Returns the dispersivity of the fluid's streamlines.
*/
const DimVector &dispersivity() const
const GlobalPosition &dispersivity() const
{ return dispersivity_; }
/*!
......@@ -280,7 +282,7 @@ protected:
Scalar porosity_; //!< Effective porosity within the control volume
Scalar tortuosity_;
DimVector dispersivity_;
GlobalPosition dispersivity_;
Scalar diffCoeff_;
FluidState fluidState_;
......
......@@ -64,9 +64,11 @@ class TwoPTwoCFluxVariables : public GET_PROP_TYPE(TypeTag, BaseFluxVariables)
typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView;
typedef typename GridView::template Codim<0>::Entity Element;
enum { dim = GridView::dimension };
enum { dimWorld = GridView::dimensionworld} ;
typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar;
typedef Dune::FieldVector<Scalar, dim> DimVector;
typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
typedef typename GET_PROP_TYPE(TypeTag, FVElementGeometry) FVElementGeometry;
......@@ -104,7 +106,7 @@ class TwoPTwoCFluxVariables : public GET_PROP_TYPE(TypeTag, BaseFluxVariables)
const ElementVolumeVariables &elemVolVars)
{
// calculate densities at the integration points of the face
DimVector tmp(0.0);
GlobalPosition tmp(0.0);
for (unsigned int idx = 0;
idx < this->face().numFap;
idx++) // loop over adjacent vertices
......@@ -130,13 +132,13 @@ class TwoPTwoCFluxVariables : public GET_PROP_TYPE(TypeTag, BaseFluxVariables)
const ElementVolumeVariables &elemVolVars)
{
// calculate gradients
DimVector tmp(0.0);
GlobalPosition tmp(0.0);
for (unsigned int idx = 0;
idx < this->face().numFap;
idx++) // loop over adjacent vertices
{
// FE gradient at vertex idx
const DimVector &feGrad = this->face().grad[idx];
const GlobalPosition &feGrad = this->face().grad[idx];
// index for the element volume variables
int volVarsIdx = this->face().fapIndices[idx];
......@@ -234,12 +236,12 @@ class TwoPTwoCFluxVariables : public GET_PROP_TYPE(TypeTag, BaseFluxVariables)
*
* \param phaseIdx The phase index
*/
const DimVector &moleFractionGrad(int phaseIdx) const
const GlobalPosition &moleFractionGrad(int phaseIdx) const
{ return moleFractionGrad_[phaseIdx]; };
protected:
// mole fraction gradients
DimVector moleFractionGrad_[numPhases];
GlobalPosition moleFractionGrad_[numPhases];
// density of each face at the integration point
Scalar density_[numPhases], molarDensity_[numPhases];
......
......@@ -61,6 +61,7 @@ class TwoPTwoCNIFluxVariables : public TwoPTwoCFluxVariables<TypeTag>
enum { dimWorld = GridView::dimensionworld };
enum { dim = GridView::dimension };
typedef Dune::FieldVector<Scalar, dim> DimVector;
typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
typedef typename GET_PROP_TYPE(TypeTag, Indices) Indices;
enum {
......@@ -103,7 +104,7 @@ public:
/*!
* \brief The local temperature gradient at the IP of the considered scv face.
*/
DimVector temperatureGradient() const
GlobalPosition temperatureGradient() const
{ return temperatureGrad_; }
/*!
......@@ -120,7 +121,7 @@ protected:
// calculate temperature gradient using finite element
// gradients
temperatureGrad_ = 0;
DimVector tmp(0.0);
GlobalPosition tmp(0.0);
for (unsigned int idx = 0; idx < this->face().numFap; idx++)
{
tmp = this->face().grad[idx];
......@@ -195,7 +196,7 @@ protected:
private:
Scalar lambdaEff_;
Scalar normalMatrixHeatFlux_;
DimVector temperatureGrad_;
GlobalPosition temperatureGrad_;
int faceIdx_;
};
......
......@@ -55,10 +55,12 @@ class TwoPNIFluxVariables : public ImplicitDarcyFluxVariables<TypeTag>
typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView;
typedef typename GridView::template Codim<0>::Entity Element;
enum { dim = GridView::dimension };
enum { dimWorld = GridView::dimensionworld };
typedef typename GridView::ctype CoordScalar;
typedef Dune::FieldVector<CoordScalar, dimWorld> DimVector;
typedef Dune::FieldVector<CoordScalar, dim> DimVector;
typedef Dune::FieldVector<CoordScalar, dimWorld> GlobalPosition;
typedef typename GET_PROP_TYPE(TypeTag, Indices) Indices;
enum {
......@@ -104,7 +106,7 @@ public:
/*!
* \brief The local temperature gradient at the IP of the considered scv face.
*/
DimVector temperatureGradient() const
GlobalPosition temperatureGradient() const
{ return temperatureGrad_; }
/*!
......@@ -121,7 +123,7 @@ protected:
// calculate temperature gradient using finite element
// gradients
temperatureGrad_ = 0;
DimVector tmp(0.0);
GlobalPosition tmp(0.0);
for (unsigned int idx = 0; idx < this->face().numFap; idx++)
{
tmp = this->face().grad[idx];
......@@ -197,7 +199,7 @@ protected:
private:
Scalar lambdaEff_;
Scalar normalMatrixHeatFlux_;
DimVector temperatureGrad_;
GlobalPosition temperatureGrad_;
int faceIdx_;
};
......
......@@ -59,6 +59,7 @@ class ThreePThreeCFluxVariables : public GET_PROP_TYPE(TypeTag, BaseFluxVariable
enum {
dim = GridView::dimension,
dimWorld = GridView::dimensionworld,
numPhases = GET_PROP_VALUE(TypeTag, NumPhases),
numComponents = GET_PROP_VALUE(TypeTag, NumComponents)
};
......@@ -66,6 +67,7 @@ class ThreePThreeCFluxVariables : public GET_PROP_TYPE(TypeTag, BaseFluxVariable
typedef typename GET_PROP_TYPE(TypeTag, FVElementGeometry) FVElementGeometry;
typedef Dune::FieldVector<Scalar, dim> DimVector;
typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
typedef typename GET_PROP_TYPE(TypeTag, Indices) Indices;
enum {
......@@ -118,13 +120,13 @@ private:
const ElementVolumeVariables &elemVolVars)
{
// calculate gradients
DimVector tmp(0.0);
GlobalPosition tmp(0.0);
for (unsigned int idx = 0;
idx < this->face().numFap;
idx++) // loop over adjacent vertices
{
// FE gradient at vertex idx
const DimVector &feGrad = this->face().grad[idx];
const GlobalPosition &feGrad = this->face().grad[idx];
// index for the element volume variables
int volVarsIdx = this->face().fapIndices[idx];
......@@ -320,7 +322,7 @@ public:
*
* \param phaseIdx The phase index
*/
const DimVector &massFractionCompWGrad(int phaseIdx) const
const GlobalPosition &massFractionCompWGrad(int phaseIdx) const
{return massFractionCompWGrad_[phaseIdx];}
/*!
......@@ -328,7 +330,7 @@ public:
*
* \param phaseIdx The phase index
*/
const DimVector &massFractionCompNGrad(int phaseIdx) const
const GlobalPosition &massFractionCompNGrad(int phaseIdx) const
{ return massFractionCompNGrad_[phaseIdx]; };
/*!
......@@ -336,7 +338,7 @@ public:
*
* \param phaseIdx The phase index
*/
const DimVector &massFractionCompGGrad(int phaseIdx) const
const GlobalPosition &massFractionCompGGrad(int phaseIdx) const
{ return massFractionCompGGrad_[phaseIdx]; };
/*!
......@@ -344,7 +346,7 @@ public:
*
* \param phaseIdx The phase index
*/
const DimVector &moleFractionCompWGrad(int phaseIdx) const
const GlobalPosition &moleFractionCompWGrad(int phaseIdx) const
{ return moleFractionCompWGrad_[phaseIdx]; };
/*!
......@@ -352,7 +354,7 @@ public:
*
* \param phaseIdx The phase index
*/
const DimVector &moleFractionCompNGrad(int phaseIdx) const
const GlobalPosition &moleFractionCompNGrad(int phaseIdx) const
{ return moleFractionCompNGrad_[phaseIdx]; };
/*!
......@@ -360,17 +362,17 @@ public:
*
* \param phaseIdx The phase index
*/
const DimVector &moleFractionCompGGrad(int phaseIdx) const
const GlobalPosition &moleFractionCompGGrad(int phaseIdx) const
{ return moleFractionCompGGrad_[phaseIdx]; };
protected:
// gradients
DimVector massFractionCompWGrad_[numPhases];
DimVector massFractionCompNGrad_[numPhases];
DimVector massFractionCompGGrad_[numPhases];
DimVector moleFractionCompWGrad_[numPhases];
DimVector moleFractionCompNGrad_[numPhases];
DimVector moleFractionCompGGrad_[numPhases];
GlobalPosition massFractionCompWGrad_[numPhases];
GlobalPosition massFractionCompNGrad_[numPhases];
GlobalPosition massFractionCompGGrad_[numPhases];
GlobalPosition moleFractionCompWGrad_[numPhases];
GlobalPosition moleFractionCompNGrad_[numPhases];
GlobalPosition moleFractionCompGGrad_[numPhases];
// density of each face at the integration point
Scalar density_[numPhases], molarDensity_[numPhases];
......
......@@ -86,8 +86,8 @@ public:
{
// calculate temperature gradient using finite element
// gradients
DimVector temperatureGrad(0);
DimVector tmp(0.0);
GlobalPosition temperatureGrad(0);
GlobalPosition tmp(0.0);
for (unsigned int idx = 0; idx < this->face().numFap; idx++)
{
tmp = this->face().grad[idx];
......
......@@ -65,6 +65,7 @@ class ImplicitDarcyFluxVariables
typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar;
typedef Dune::FieldMatrix<Scalar, dim, dim> DimMatrix;
typedef Dune::FieldMatrix<Scalar, dimWorld, dimWorld> DimWorldMatrix;
typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
typedef Dune::FieldVector<Scalar, dim> DimVector;
......@@ -238,7 +239,7 @@ protected:
{
// calculate the mean intrinsic permeability
const SpatialParams &spatialParams = problem.spatialParams();
DimMatrix K;
DimWorldMatrix K;
if (GET_PROP_VALUE(TypeTag, ImplicitIsBox))
{
spatialParams.meanK(K,
......
......@@ -48,12 +48,14 @@ class MPNCFluxVariablesDiffusion
typedef typename FVElementGeometry::SubControlVolumeFace SCVFace;
enum{dim = GridView::dimension};
enum{dimWorld = GridView::dimensionworld};
enum{numPhases = GET_PROP_VALUE(TypeTag, NumPhases)};
enum{numComponents = GET_PROP_VALUE(TypeTag, NumComponents)};
enum{wPhaseIdx = FluidSystem::wPhaseIdx};
enum{nPhaseIdx = FluidSystem::nPhaseIdx};
typedef Dune::FieldVector<Scalar, dim> DimVector;
typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
public:
/*!
......@@ -88,13 +90,13 @@ public:
}
DimVector tmp ;
GlobalPosition tmp ;
for (unsigned int idx = 0;
idx < face.numFap;
idx++) // loop over adjacent vertices
{
// FE gradient at vertex idx
const DimVector & feGrad = face.grad[idx];
const GlobalPosition & feGrad = face.grad[idx];
// index for the element volume variables
int volVarsIdx = face.fapIndices[idx];
......@@ -196,7 +198,7 @@ public:
const unsigned int compIdx) const
{ return moleFraction_[phaseIdx][compIdx]; }
const DimVector &moleFractionGrad(const unsigned int phaseIdx,
const GlobalPosition &moleFractionGrad(const unsigned int phaseIdx,
const unsigned int compIdx) const
{ return moleFractionGrad_[phaseIdx][compIdx];}
......@@ -210,7 +212,7 @@ protected:
Scalar porousDiffCoeffG_[numComponents][numComponents];
// the concentration gradients of all components in all phases
DimVector moleFractionGrad_[numPhases][numComponents];
GlobalPosition moleFractionGrad_[numPhases][numComponents];
// the mole fractions of each component at the integration point
Scalar moleFraction_[numPhases][numComponents];
......
......@@ -102,6 +102,7 @@ class MPNCFluxVariablesEnergy<TypeTag, /*enableEnergy=*/true, /*numEnergyEquati
enum{wPhaseIdx = FluidSystem::wPhaseIdx};
typedef Dune::FieldVector<CoordScalar, dim> DimVector;
typedef Dune::FieldVector<CoordScalar, dimWorld> GlobalPosition;
typedef typename GET_PROP_TYPE(TypeTag, FVElementGeometry) FVElementGeometry;
typedef typename FVElementGeometry::SubControlVolumeFace SCVFace;
typedef typename GET_PROP_TYPE(TypeTag, ThermalConductivityModel) ThermalConductivityModel;
......@@ -131,8 +132,8 @@ public:
{
// calculate temperature gradient using finite element
// gradients
DimVector tmp(0.0);
DimVector temperatureGradient(0.);
GlobalPosition tmp(0.0);
GlobalPosition temperatureGradient(0.);
for (int idx = 0; idx < face.numFap; idx++)
{
tmp = face.grad[idx];
......
......@@ -48,9 +48,11 @@ class MPNCFluxVariablesEnergy<TypeTag, /*enableEnergy=*/true, /*numEnergyEquatio
typedef typename GridView::template Codim<0>::Entity Element;
enum {dim = GridView::dimension};
enum {dimWorld = GridView::dimensionworld};
enum {numEnergyEqs = Indices::numPrimaryEnergyVars};
typedef Dune::FieldVector<CoordScalar, dim> DimVector;
typedef Dune::FieldVector<CoordScalar, dimWorld> GlobalPosition;
typedef typename GET_PROP_TYPE(TypeTag, FVElementGeometry) FVElementGeometry;
typedef typename FVElementGeometry::SubControlVolume SCV;
typedef typename FVElementGeometry::SubControlVolumeFace SCVFace;
......@@ -80,7 +82,7 @@ public:
{
// calculate temperature gradient using finite element
// gradients
DimVector tmp ;
GlobalPosition tmp ;
for(int energyEqIdx=0; energyEqIdx<numEnergyEqs; energyEqIdx++)
temperatureGradient_[energyEqIdx] = 0.;
......@@ -89,7 +91,7 @@ public:
idx < face.numFap;
idx++){
// FE gradient at vertex idx
const DimVector & feGrad = face.grad[idx];
const GlobalPosition & feGrad = face.grad[idx];
for (int energyEqIdx =0; energyEqIdx < numEnergyEqs; ++energyEqIdx){
// index for the element volume variables
......@@ -108,13 +110,13 @@ public:
*
* \param energyEqIdx The index of the energy equation
*/
DimVector temperatureGradient(const unsigned int energyEqIdx) const
GlobalPosition temperatureGradient(const unsigned int energyEqIdx) const
{
return temperatureGradient_[energyEqIdx];
}
private:
DimVector temperatureGradient_[numEnergyEqs];
GlobalPosition temperatureGradient_[numEnergyEqs];
};
......@@ -141,7 +143,7 @@ class MPNCFluxVariablesEnergy<TypeTag, /*enableEnergy=*/true, /*numEnergyEquatio
enum {nPhaseIdx = FluidSystem::nPhaseIdx};
typedef Dune::FieldVector<CoordScalar, dim> DimVector;
typedef Dune::FieldVector<CoordScalar, dim> GlobalPosition;
typedef typename GET_PROP_TYPE(TypeTag, FVElementGeometry) FVElementGeometry;
typedef typename FVElementGeometry::SubControlVolume SCV;
typedef typename FVElementGeometry::SubControlVolumeFace SCVFace;
......@@ -173,7 +175,7 @@ public:
{
// calculate temperature gradient using finite element
// gradients
DimVector tmp ;
GlobalPosition tmp ;
for(int energyEqIdx=0; energyEqIdx<numEnergyEqs; energyEqIdx++)
temperatureGradient_[energyEqIdx] = 0.;
......@@ -182,7 +184,7 @@ public:
idx < face.numFap;
idx++){
// FE gradient at vertex idx
const DimVector & feGrad = face.grad[idx];
const GlobalPosition & feGrad = face.grad[idx];
for (int energyEqIdx =0; energyEqIdx < numEnergyEqs; ++energyEqIdx){
// index for the element volume variables
......@@ -216,7 +218,7 @@ public:
*
* \param energyEqIdx The index of the energy equation
*/
DimVector temperatureGradient(const unsigned int energyEqIdx) const
GlobalPosition temperatureGradient(const unsigned int energyEqIdx) const
{
return temperatureGradient_[energyEqIdx];
}
......@@ -287,7 +289,7 @@ protected:
private:
Scalar lambdaEff_ ;
DimVector temperatureGradient_[numEnergyEqs];
GlobalPosition temperatureGradient_[numEnergyEqs];
};
} // end namespace
......
......@@ -61,12 +61,14 @@ class MPNCFluxVariables
typedef typename GET_PROP_TYPE(TypeTag, BaseFluxVariables) BaseFluxVariables;
enum {dim= GridView::dimension};
enum {dimWorld= GridView::dimensionworld};
enum {enableDiffusion = GET_PROP_VALUE(TypeTag, EnableDiffusion)};
enum {enableEnergy = GET_PROP_VALUE(TypeTag, EnableEnergy)};
enum {enableKinetic = GET_PROP_VALUE(TypeTag, EnableKinetic)};
enum {numEnergyEquations = GET_PROP_VALUE(TypeTag, NumEnergyEquations)};
typedef Dune::FieldVector<Scalar, dim> DimVector;
typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
typedef typename GET_PROP_TYPE(TypeTag, FVElementGeometry) FVElementGeometry;
typedef MPNCFluxVariablesDiffusion<TypeTag, enableDiffusion> FluxVariablesDiffusion;
typedef MPNCFluxVariablesEnergy<TypeTag, enableEnergy, numEnergyEquations> FluxVariablesEnergy;
......@@ -134,7 +136,7 @@ public:
const unsigned int compIdx) const
{ return fluxVarsDiffusion_.moleFraction(phaseIdx, compIdx); }
const DimVector &moleFractionGrad(const unsigned int phaseIdx,
const GlobalPosition &moleFractionGrad(const unsigned int phaseIdx,
const unsigned int compIdx) const
{ return fluxVarsDiffusion_.moleFractionGrad(phaseIdx, compIdx); }
......@@ -143,7 +145,7 @@ public:
////////////////////////////////////////////////
// forward calls to the temperature module
const DimVector &temperatureGrad() const
const GlobalPosition &temperatureGrad() const
{ return fluxVarsEnergy_.temperatureGrad(); }
const FluxVariablesEnergy &fluxVarsEnergy() const
......
......@@ -76,7 +76,8 @@ class MPNCModelKinetic : public MPNCModel<TypeTag>
enum { dim = GridView::dimension};
typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
typedef Dune::BlockVector<GlobalPosition> GlobalPositionField;
typedef Dune::array<GlobalPositionField, numPhases> PhaseGlobalPositionField;
typedef std::vector<Dune::FieldVector<Scalar, 1> > ScalarVector;
typedef Dune::array<ScalarVector, numPhases> PhaseVector;
......@@ -172,7 +173,7 @@ public:
elemVolVars);
for (int phaseIdx = 0; phaseIdx < numPhases; ++phaseIdx) {
DimVector faceDarcyVelocity = fluxVars.velocity(phaseIdx);
GlobalPosition faceDarcyVelocity = fluxVars.velocity(phaseIdx);
faceDarcyVelocity *= scvfArea;
// although not yet really a volume average, see later: divide by surface
......@@ -331,12 +332,12 @@ public:
* \param phaseIdx The index of the fluid phase
* \param globalIdx The global index of the degree of freedom
*/
const DimVector volumeDarcyVelocity(const unsigned int phaseIdx,
const