dumux issueshttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues2024-02-27T16:25:42Zhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1326Brinkman porosity influence2024-02-27T16:25:42ZTimo Kochtimokoch@math.uio.noBrinkman porosity influenceThe current Darcy-Brinkman implementation seems to make some assumptions on porosity that should be clarified. Maybe there are some adjustments needed. I think the basic governing equations should be something like (based on theory of po...The current Darcy-Brinkman implementation seems to make some assumptions on porosity that should be clarified. Maybe there are some adjustments needed. I think the basic governing equations should be something like (based on theory of porous media)
Fluid mass balance:
```math
\begin{equation}
\frac{\partial \left( n_f \rho_f \right)}{\partial t} + \operatorname{div}{\left( \rho_f \vec{w}_f \right)} = 0,
\end{equation}
```
with porosity (fluid volume fraction) $n_f$, Darcy velocity $\vec{w}_f := n_f (\vec{v}_f - \vec{v}_s) = n_f\vec{v}_f$ (rigid solid skeleton, $\vec{v}_s \equiv 0$).
Fluid momentum balance:
```math
\begin{align}
\frac{\partial \left( n_f \rho_f \vec{v}_f \right)}{\partial t}
+ \operatorname{div}{\left( n_f \rho_f \vec{v}_f \otimes \vec{v}_f \right)} &=\operatorname{div}{\underbrace{\left(2 \mu_f \vec{D}(\vec{v}_f) - n_f p \vec{I} \right)}_{\text{fluid stress,}\; \boldsymbol{T}_f}} + n_f\rho_f\vec{g} + \underbrace{p \nabla n_f - n_f^2 \mu_f \epsilon_B \vec{K}^{-1} \vec{v}_f}_{\text{momentum production,}\; \hat{p}_f},
\end{align}
```
with $\vec{D}(\vec{v}_f) = \frac{1}{2}\left( \nabla{\vec{v}_f} + \nabla{\vec{v}_f}^T \right)$, $\epsilon_B$ some scaling factor for the permeability (0 in free-flow, 1 in porous medium, $`0 < \epsilon < 1`$ in transition zone).
This reduces to Darcy's law when inertia and viscous stress can be neglected, and $`\epsilon_B=1`$,
```math
\begin{align}
\vec{0} &= -n_f \nabla{p} + n_f\rho_f\vec{g} - n_f \mu_f \vec{K}^{-1} \vec{w}_f \quad \longrightarrow \quad \vec{w}_f = - \mu_f^{-1}\vec{K} ( \nabla{p} - \rho_f \vec{g}),
\end{align}
```
But various terms containing $n_f$ don't easily simplify otherwise (transition zone and when $`n_f`$ is not constant).
Note: Discussion of the viscous term in https://doi.org/10.1017/S0022112005007998, which indicates $`\vec{D}(\vec{w}_f)`$ should be used instead of $`\vec{D}(\vec{v}_f)`$. Then we can rewrite in terms of Darcy velocity
```math
\begin{align}
\frac{\partial \left( \rho_f \vec{w}_f \right)}{\partial t}
+ \operatorname{div}{\left( n_f^{-1} \rho_f \vec{w}_f \otimes \vec{w}_f \right)} &=\operatorname{div}{\underbrace{\left(2 \mu_f \vec{D}(\vec{w}_f) - n_f p \vec{I} \right)}_{\text{fluid stress,}\; \boldsymbol{T}_f}} + n_f\rho_f\vec{g} + \underbrace{p \nabla n_f - n_f \mu_f \epsilon_B \vec{K}^{-1} \vec{w}_f}_{\text{momentum production,}\; \hat{p}_f},
\end{align}
```
Note: Darcy-Brinkman was introduced after release 3.8 so there is until release 3.9 to fix things if need be.
__Notes:__ [Brinkman.pdf](/uploads/6a79efa6ff10046617f472cc429cdda5/Brinkman.pdf)3.9https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1205[freeflow] Spatially varying extrusionFactor causes unphysical results for th...2024-03-25T10:40:04ZFelix Weinhardt[freeflow] Spatially varying extrusionFactor causes unphysical results for the pressure distributionThe issue is illustrated with the following example scenario:
The example is based on the test “test_ff_stokes_channel_pseudo3d” and modified in a way that the domain is a square (0.005 x 0.005) with a lense in the middle which has a d...The issue is illustrated with the following example scenario:
The example is based on the test “test_ff_stokes_channel_pseudo3d” and modified in a way that the domain is a square (0.005 x 0.005) with a lense in the middle which has a different aperture (height) compared to the rest of the domain, the boundary conditions are fixed pressure at the inlet and outlet - the rest of the domain is no-slip. The motivation is, to be able to simulate microfluidic experiments with the pseudo-3D approach with different apertures of the micromodel (caused by precipitates).
For that, the friction source term in the problem.hh file is adapted:
```c
template<class ElementVolumeVariables>
Sources source(const Element& element,
const FVElementGeometry& fvGeometry,
const ElementVolumeVariables& elemVolVars,
const SubControlVolume& scv) const
{
auto source = Sources(0.0);
if constexpr (ParentType::isMomentumProblem() && enablePseudoThreeDWallFriction)
{
auto globalPos = scv.center();
Scalar heightRel = 1. ;
if(globalPos[0] > 0.001 && globalPos[0]< 0.004 && globalPos[1] > 0.001 && globalPos[1] < 0.004)
{
heightRel = relativeFrictionFactorLense_;
}
static const Scalar height = getParam<Scalar>("Problem.Height");
static const Scalar factor = getParam<Scalar>("Problem.PseudoWallFractionFactor", 8.0);
source[scv.dofAxis()] = this->pseudo3DWallFriction(element, fvGeometry, elemVolVars, scv, heightRel*height, factor);
}
return source;
}
```
and the extrusion factor in the spatialParams.hh is adapted:
```c
Scalar extrusionFactorAtPos(const GlobalPosition& globalPos) const
{
Scalar heightRel = 1.;
if(globalPos[0] > 0.001 && globalPos[0]< 0.004 && globalPos[1] > 0.001 && globalPos[1] < 0.004)
{
heightRel = relativeExtrusionFactorLens_; // = 0.5
}
return extrusionFactor_*heightRel;
}
```
In the attached files, three scenarios are compared:
+ a) (blue graphs): only the source term in the problem file is modified.
+ b) (red graphs): only the extrusion factor in the spatialParams file are modified.
+ c) (violette graphs): both, the source term in the problem and the extrusion factor in spatialParams file are modified.
In case of spatially varying extrusionFactors, there are discontinuities in the pressure (plot over line horizontally), while the velocities (plot over line vertically) look reasonable.
![ExtrusionSimTest](/uploads/eca0b5582a0139defdc09238dfdb1333/ExtrusionSimTest.png)3.9https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/839[freeflow][test] Add analytical solution to non-isothermal test2023-02-22T08:55:56ZKilian Weishaupt[freeflow][test] Add analytical solution to non-isothermal testThere are analytical solutions for some non-isothermal porous medium tests.
We could do the same for the free flow model.There are analytical solutions for some non-isothermal porous medium tests.
We could do the same for the free flow model.Kilian WeishauptKilian Weishaupthttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/807[RANS] Evaluate possibility to chose turbulence model at runtime2023-09-27T08:51:41ZKilian Weishaupt[RANS] Evaluate possibility to chose turbulence model at runtimeCurrently, we have a myriad of different RANS models (zeroeq, oneeq, twoeq-kepsilon, twoeq-komega, twoeq-lowrekepsilon).
Maybe we could choose the turbulence model (at least for the two-eq models) at runtime.
This would decrease the nu...Currently, we have a myriad of different RANS models (zeroeq, oneeq, twoeq-kepsilon, twoeq-komega, twoeq-lowrekepsilon).
Maybe we could choose the turbulence model (at least for the two-eq models) at runtime.
This would decrease the number of executables for the tests and maybe also decrease the effort to add new turbulence models.3.9Ned ColtmanNed Coltmanhttps://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/763[FreeFlow] No Newton convergence for pressure Dirichlet BCs at high Re2023-02-22T08:58:22ZKilian Weishaupt[FreeFlow] No Newton convergence for pressure Dirichlet BCs at high ReFor simple pipe flow, setting Dirichlet BCs for the pressure both at the inlet and outlet
works well for low Re. For higher Re, the Newton scheme does not converge anymore.
Setting the inlet BCs to Dirichlet for velocity works.
This sh...For simple pipe flow, setting Dirichlet BCs for the pressure both at the inlet and outlet
works well for low Re. For higher Re, the Newton scheme does not converge anymore.
Setting the inlet BCs to Dirichlet for velocity works.
This should be investigated. Maybe the assumption of
$`\nabla \mathbf{v} \cdot \mathbf{n} = 0 `$
and
$`\nabla p \cdot \mathbf{n} = 0 `$
used for the pressure BC causes this problem?https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/538[RANS] Make calculation of velocity gradients and wall functions more general2023-09-27T08:50:30ZNed Coltman[RANS] Make calculation of velocity gradients and wall functions more generalInspired by #532.
When considering a domain that features a pointy tip like illustrated below, it might be the case that the cell at the tip does not have any vertical or horizontal neighbors. Right now, in this case, the gradient in th...Inspired by #532.
When considering a domain that features a pointy tip like illustrated below, it might be the case that the cell at the tip does not have any vertical or horizontal neighbors. Right now, in this case, the gradient in this case will be set to 0 (!1130).
```cpp
++++++
+++
+
```
The should be further generalized to such that all wall functions, gradients, and functions for the boundaries are created in a separate class, rather than in each problem file.3.9Ned ColtmanNed Coltman