Skip to content
Snippets Groups Projects
Commit 7e8c2744 authored by Timo Koch's avatar Timo Koch
Browse files

Merge branch 'feature/facet-box-fickslaw-with-tracerfluidsystem' into 'master'

[md][facet][box] Handle tracer fluidsystems in Fick's law specialization

See merge request !3777
parents c866ffd6 489d55a7
No related branches found
No related tags found
1 merge request!3777[md][facet][box] Handle tracer fluidsystems in Fick's law specialization
Checking pipeline status
...@@ -108,8 +108,9 @@ public: ...@@ -108,8 +108,9 @@ public:
for (int compIdx = 0; compIdx < numComponents; compIdx++) for (int compIdx = 0; compIdx < numComponents; compIdx++)
{ {
if (compIdx == FluidSystem::getMainComponent(phaseIdx)) if constexpr (!FluidSystem::isTracerFluidSystem())
continue; if (compIdx == FluidSystem::getMainComponent(phaseIdx))
continue;
// interpolate mole fraction to scvf integration point // interpolate mole fraction to scvf integration point
Scalar x = 0.0; Scalar x = 0.0;
...@@ -126,8 +127,9 @@ public: ...@@ -126,8 +127,9 @@ public:
facetVolVars.effectiveDiffusionCoefficient(phaseIdx, phaseIdx, compIdx), facetVolVars.effectiveDiffusionCoefficient(phaseIdx, phaseIdx, compIdx),
gradX); gradX);
if (BalanceEqOpts::mainComponentIsBalanced(phaseIdx) && !FluidSystem::isTracerFluidSystem()) if constexpr (!FluidSystem::isTracerFluidSystem())
componentFlux[FluidSystem::getMainComponent(phaseIdx)] -= componentFlux[compIdx]; if (BalanceEqOpts::mainComponentIsBalanced(phaseIdx))
componentFlux[FluidSystem::getMainComponent(phaseIdx)] -= componentFlux[compIdx];
} }
return componentFlux; return componentFlux;
...@@ -138,8 +140,9 @@ public: ...@@ -138,8 +140,9 @@ public:
{ {
for (int compIdx = 0; compIdx < numComponents; compIdx++) for (int compIdx = 0; compIdx < numComponents; compIdx++)
{ {
if (compIdx == FluidSystem::getMainComponent(phaseIdx)) if constexpr (!FluidSystem::isTracerFluidSystem())
continue; if (compIdx == FluidSystem::getMainComponent(phaseIdx))
continue;
// create vector with nodal mole/mass fractions // create vector with nodal mole/mass fractions
std::vector<Scalar> xFractions(element.subEntities(dim)); std::vector<Scalar> xFractions(element.subEntities(dim));
...@@ -164,8 +167,9 @@ public: ...@@ -164,8 +167,9 @@ public:
insideVolVars.effectiveDiffusionCoefficient(phaseIdx, phaseIdx, compIdx), insideVolVars.effectiveDiffusionCoefficient(phaseIdx, phaseIdx, compIdx),
gradX); gradX);
if (BalanceEqOpts::mainComponentIsBalanced(phaseIdx) && !FluidSystem::isTracerFluidSystem()) if constexpr (!FluidSystem::isTracerFluidSystem())
componentFlux[FluidSystem::getMainComponent(phaseIdx)] -= componentFlux[compIdx]; if (BalanceEqOpts::mainComponentIsBalanced(phaseIdx))
componentFlux[FluidSystem::getMainComponent(phaseIdx)] -= componentFlux[compIdx];
} }
return componentFlux; return componentFlux;
......
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