Skip to content
Snippets Groups Projects
Commit de6b47fc authored by Thomas Fetzer's avatar Thomas Fetzer
Browse files

[multidomain]

fixed issue, that the diffusive enthalpy fluxes have been treated
differently inside the stokes domain than at the coupling interface

reviewed by bernd



git-svn-id: svn://svn.iws.uni-stuttgart.de/DUMUX/dumux/trunk@14101 2fb0f335-1f38-0410-981e-8018bf24f1b0
parent bcdd5740
No related branches found
No related tags found
No related merge requests found
......@@ -63,6 +63,7 @@ public:
energyEqIdx1 = Stokes2cniIndices::energyEqIdx //!< Index of the energy balance equation
};
enum { numComponents = Stokes2cniIndices::numComponents };
enum { phaseCompIdx = Stokes2cniIndices::phaseCompIdx};
enum { // indices in the Darcy domain
numPhases2 = GET_PROP_VALUE(TwoPTwoCNITypeTag, NumPhases),
......@@ -120,18 +121,26 @@ public:
bfNormal1 *
boundaryVars1.temperatureGrad() *
(boundaryVars1.thermalConductivity() + boundaryVars1.thermalEddyConductivity());
Scalar diffusiveFlux = 0.0;
Scalar sumDiffusiveFluxes = 0.0;
Scalar sumDiffusiveEnergyFlux = 0.0;
for (int compIdx=0; compIdx < numComponents; compIdx++)
{
diffusiveFlux += boundaryVars1.moleFractionGrad(compIdx)
* boundaryVars1.face().normal
*(boundaryVars1.diffusionCoeff(compIdx) + boundaryVars1.eddyDiffusivity())
* boundaryVars1.molarDensity()
* FluidSystem::molarMass(compIdx) // Multiplied by molarMass [kg/mol] to convert from [mol/m^3 s] to [kg/m^3 s]
* boundaryVars1.componentEnthalpy(compIdx);
if (compIdx != phaseCompIdx)
{
Scalar diffusiveFlux = boundaryVars1.moleFractionGrad(compIdx)
* boundaryVars1.face().normal
*(boundaryVars1.diffusionCoeff(compIdx) + boundaryVars1.eddyDiffusivity())
* boundaryVars1.molarDensity();
sumDiffusiveFluxes += diffusiveFlux;
sumDiffusiveEnergyFlux += diffusiveFlux
* boundaryVars1.componentEnthalpy(compIdx)
* FluidSystem::molarMass(compIdx); // Multiplied by molarMass [kg/mol] to convert from [mol/m^3 s] to [kg/m^3 s]
}
}
sumDiffusiveEnergyFlux -= sumDiffusiveFluxes * boundaryVars1.componentEnthalpy(phaseCompIdx)
* FluidSystem::molarMass(phaseCompIdx);
couplingRes2.accumulate(lfsu_n.child(energyEqIdx2), vertInElem2,
-(convectiveFlux - diffusiveFlux - conductiveFlux));
-(convectiveFlux - sumDiffusiveEnergyFlux - conductiveFlux));
}
else
{
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment