diff --git a/dumux/discretization/cellcentered/mpfa/fluxvariablescachefiller.hh b/dumux/discretization/cellcentered/mpfa/fluxvariablescachefiller.hh index ee92e33030a7f8c878bc8fd2ffd8f7ac529cbdad..29935706928e45b69c71899ad44039ec5846f9ce 100644 --- a/dumux/discretization/cellcentered/mpfa/fluxvariablescachefiller.hh +++ b/dumux/discretization/cellcentered/mpfa/fluxvariablescachefiller.hh @@ -189,45 +189,30 @@ private: // First we upate data which are not dependent on the physical processes. // We store pointers to the other flux var caches, so that we have to obtain // this data only once and can use it again in the sub-cache fillers. - if (forceUpdateAll) - { - const auto numGlobalScvfs = iv.localFaceData().size(); - std::vector<const SubControlVolumeFace*> ivScvfs(numGlobalScvfs); - std::vector<FluxVariablesCache*> ivFluxVarCaches(numGlobalScvfs); + const auto numGlobalScvfs = iv.localFaceData().size(); + std::vector<const SubControlVolumeFace*> ivScvfs(numGlobalScvfs); + std::vector<FluxVariablesCache*> ivFluxVarCaches(numGlobalScvfs); - unsigned int i = 0; - for (const auto& d : iv.localFaceData()) - { - // obtain the scvf - const auto& scvfJ = fvGeometry().scvf(d.globalScvfIndex()); - ivScvfs[i] = &scvfJ; - ivFluxVarCaches[i] = &fluxVarsCacheContainer[scvfJ]; - ivFluxVarCaches[i]->setIvIndexInContainer(ivIndexInContainer); - ivFluxVarCaches[i]->setUpdateStatus(true); - i++; - } + unsigned int i = 0; + for (const auto& d : iv.localFaceData()) + { + // obtain the scvf + const auto& scvfJ = fvGeometry().scvf(d.globalScvfIndex()); + ivScvfs[i] = &scvfJ; + ivFluxVarCaches[i] = &fluxVarsCacheContainer[scvfJ]; + ivFluxVarCaches[i]->setIvIndexInContainer(ivIndexInContainer); + ivFluxVarCaches[i]->setUpdateStatus(true); + i++; + } + if (forceUpdateAll) + { fillAdvection(fluxVarsCacheContainer, iv, handle, ivScvfs, ivFluxVarCaches); fillDiffusion(fluxVarsCacheContainer, iv, handle, ivScvfs, ivFluxVarCaches); fillHeatConduction(fluxVarsCacheContainer, iv, handle, ivScvfs, ivFluxVarCaches); } else { - const auto numGlobalScvfs = iv.localFaceData().size(); - std::vector<const SubControlVolumeFace*> ivScvfs(numGlobalScvfs); - std::vector<FluxVariablesCache*> ivFluxVarCaches(numGlobalScvfs); - - unsigned int i = 0; - for (const auto& d : iv.localFaceData()) - { - // the iv index has been set already - const auto& scvfJ = fvGeometry().scvf(d.globalScvfIndex()); - ivScvfs[i] = &scvfJ; - ivFluxVarCaches[i] = &fluxVarsCacheContainer[scvfJ]; - ivFluxVarCaches[i]->setUpdateStatus(true); - i++; - } - if (doAdvection && soldependentAdvection) fillAdvection(fluxVarsCacheContainer, iv, handle, ivScvfs, ivFluxVarCaches); if (doDiffusion && soldependentDiffusion)