dumux-repositories issues
https://git.iws.uni-stuttgart.de/groups/dumux-repositories/-/issues
2023-08-23T11:53:16Z
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1295
Adjust extract porenetwork script - disconnected pores already include isolat...
2023-08-23T11:53:16Z
Anna Mareike Kostelecky
Adjust extract porenetwork script - disconnected pores already include isolated pores
<!--
SPDX-FileCopyrightInfo: Copyright © DuMux Project contributors, see AUTHORS.md in root folder
SPDX-License-Identifier: CC0-1.0
-->
<!--
This form is for bug reports ONLY!
If you're looking for help check out the [readme](/README....
<!--
SPDX-FileCopyrightInfo: Copyright © DuMux Project contributors, see AUTHORS.md in root folder
SPDX-License-Identifier: CC0-1.0
-->
<!--
This form is for bug reports ONLY!
If you're looking for help check out the [readme](/README.md).
-->
**Bug report**
**What happened / Problem description**:
Since the updating script [extract_pore_network_with_porespy.py](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/porenetwork/util/extract_pore_network_with_porespy.py) for the new openpnm version 3, isolated pores and pores in disconnected clusters are removed to avoid singularity. However, @mathis mentioned that isolated pores can't be removed anymore as they were already removed before by the pores in disconnected clusters.
Checking with the extraction script based on a OpenPNM version 2.X, "trim_pores" was used (see [OpenPNM version 2.8](https://github.com/PMEAL/OpenPNM/blob/v2.8.2/openpnm/utils/Project.py#L804)), which is equivilant to "disconnected_pores" in [OpenPNM version 3.X](https://github.com/PMEAL/OpenPNM/blob/dev/openpnm/utils/_health.py#L88).
**What you expected to happen**:
No error, when removing isolated pores or pores from disconnected clusters and no removed pores, which should not be.
**How to reproduce it (as minimally and precisely as possible)**:
<details><summary>Minimal Python example</summary>
A porenetwork is created and boundary throats are deleted such that it leaves a network with isolated pores at the corners (see plot).
It can be seen from the output, that isolated pores and pores in disconnected clusters are the same in this case. Hence, `disconnected_pores` also contains `isolated_pores`. After trimming the network with `disconnected_pores`, trimming with `isolated_pores` does not work any more/is unnecessary.
```python
import openpnm as op
import numpy as np
import matplotlib.pyplot as plt
import math
def plot_network_with_op(network):
print('\n------------------------------------------')
print('Plot network with openPNM visualization (using matplotlib)')
opMplStyle = True
if opMplStyle:
op.visualization.set_mpl_style()
fig = plt.figure(figsize=[20, 15])
ax = fig.add_subplot(111)
legend_labels = ['throat', 'pore']
ax = op.visualization.plot_connections(network, ax=ax, label = legend_labels[0])
ax = op.visualization.plot_coordinates(network, ax=ax, label = legend_labels[1])
plt.legend()
plt.show()
def calc_throat_center_coords(network):
pore_coords = network["pore.coords"]
throats = network["throat.conns"]
throat_centers = np.mean(pore_coords[throats], axis=1)
return throat_centers
def remove_boundary_throats(network):
eps = 1e-6
throat_centers = calc_throat_center_coords(network)
box_min = np.min(network['pore.coords'][:], axis=0)
box_max = np.max(network['pore.coords'][:], axis=0)
eps_array_2D = np.array([eps, eps, 0.0])
boundaryThroats = np.any((throat_centers < box_min + eps_array_2D) | (throat_centers > box_max - eps_array_2D), axis=1) #bool vector with True for throats at boundary
op.topotools.trim(network=network, throats=boundaryThroats)
N_x = 5
N_y = N_x
porenetwork = op.network.Cubic(shape=[N_x,N_y ])
# delete throats at boundary to create isolated pores in corners
remove_boundary_throats(porenetwork)
plot_network_with_op(porenetwork)
health = op.utils.check_network_health(porenetwork)
print("Pores in disconnected clusters: ", health["disconnected_pores"])
print("Isolated pores: ", health["isolated_pores"])
op.topotools.trim(network=porenetwork, pores=health["isolated_pores"])
op.topotools.trim(network=porenetwork, pores=health["disconnected_pores"])
```
</details>
**Sugdestion**:
Just use `disconnected_pores` to trim porenetwork as this is equivalent to the old script based on OpenPNM 2.X and it also contains the `isolated_pores`
**Environment**:
- Dune version:
- DuMux version:
- Others:
Anna Mareike Kostelecky
Anna Mareike Kostelecky
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1260
[CheckPointTimeLoop] Modify time step sizes to hit checkpoints "exactly"
2023-10-25T11:37:52Z
Dennis Gläser
[CheckPointTimeLoop] Modify time step sizes to hit checkpoints "exactly"
Currently, `advanceTimeStep` is implemented such that if one is close to a checkpoint (not hitting it "exactly"), it is considered to be at the checkpoint at this checkpoint is popped. In addition, we could overload `setTimeStepSize` and...
Currently, `advanceTimeStep` is implemented such that if one is close to a checkpoint (not hitting it "exactly"), it is considered to be at the checkpoint at this checkpoint is popped. In addition, we could overload `setTimeStepSize` and modify the user choice such that we hit the checkpoint "exactly".
Dennis Gläser
Dennis Gläser
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1254
Dualnetwork model - add 'poreInscribedRadius' and 'poreExtendedRadius' for dg...
2023-10-24T06:49:43Z
Anna Mareike Kostelecky
Dualnetwork model - add 'poreInscribedRadius' and 'poreExtendedRadius' for dgf-file
**Current state and "problem"**
Currently, the dualnetwork model uses the `poreIncribedRadius` (see e.g. [grainfourierslaw.hh](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/flux/porenetwork/grainfouriersl...
**Current state and "problem"**
Currently, the dualnetwork model uses the `poreIncribedRadius` (see e.g. [grainfourierslaw.hh](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/flux/porenetwork/grainfourierslaw.hh#L46)) as well as the `poreExtendedRadius` (see e.g. [couplingmanager.hh](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/multidomain/dualnetwork/couplingmanager.hh#L610)). However, in the [openpnm2dgf.py](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/porenetwork/util/openpnm2dgf.py)-script, only the `poreExtendedRadius` (obtained e.g. by the snow-algorithm from porespy) is saved under the name `poreRadius` in the .dgf-file.
**Suggestion**
My suggestion would be to add the `poreIncribedRadius` as well as the `poreExtendedRadius` to the dgf-file for all networks as a porenetwork model also often needs a `poreInscribedRadius` in the current implementations.
Anna Mareike Kostelecky
Anna Mareike Kostelecky
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1244
Do we need Neumann boundary condition for the pore network model?
2023-12-13T09:13:35Z
Maziar Veyskarami
Do we need Neumann boundary condition for the pore network model?
The pore network model does not support pore throats at the boundary and consequently does not support Neumann boundary condition. Instead, we use source terms at the boundary pore bodies, when we want to inject to network. Although havi...
The pore network model does not support pore throats at the boundary and consequently does not support Neumann boundary condition. Instead, we use source terms at the boundary pore bodies, when we want to inject to network. Although having a source term at the boundary pore body should give the same results as a Neumann-type boundary condition (when we think about the computing of the residual...), sometimes it causes confusion for the users when they want to interpret the simulation results (e.g, when a fluid is injected to a boundary pore body using a source term, but the flow direction in the connected throat is also into the pore body). That leads to these questions:
- Do we need Neumann boundary condition for the pore network model? An implementation which gives the user an option to assign the desirable flux to the throats connected to the boundary pore bodies?
- Or even do we need to have an option to have pore throats at the boundary instead of pore bodies?
Maziar Veyskarami
Maziar Veyskarami
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1243
[PNM][util] Check for versions of porespy and openpnm in python scripts + upd...
2023-07-26T21:36:20Z
Anna Mareike Kostelecky
[PNM][util] Check for versions of porespy and openpnm in python scripts + updating scripts to new versions
**Problem**
The [extract_pore_network_with_porespy.py](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/porenetwork/util/extract_pore_network_with_porespy.py) and [openpnm2dgf.py](https://git.iws.uni-stuttga...
**Problem**
The [extract_pore_network_with_porespy.py](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/porenetwork/util/extract_pore_network_with_porespy.py) and [openpnm2dgf.py](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/porenetwork/util/openpnm2dgf.py)- script can not be executed with the recent versions of porespy (v.2.2.2) and openpnm (v.3.1.2). And it is also not clear which versions were used for running those.
**Suggestion**
- find out, which versions of porespy and openpnm were used to run the scripts
- check for the right versions of porespy and openpnm in the scripts (or at least state in a comment which versions were used)
- add a `requirements.txt` in the `util` folder to be able to directly install the right versions of porespy and openpnm
- update scripts to use the most recent versions of porespy and openpnm
Hanchuan Wu
Hanchuan Wu
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-lecture/-/issues/29
Making DuMux-lecture reuse compliant
2023-10-24T15:29:05Z
Hamza Oukili
Making DuMux-lecture reuse compliant
DuMux-lecture license is insufficient. It needs to be reuse compliant like DuMux. See [MR=dumux:3442](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/3442)
DuMux-lecture license is insufficient. It needs to be reuse compliant like DuMux. See [MR=dumux:3442](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/3442)
3.8
Mathis Kelm
Mathis Kelm
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1241
DuMux Day 29.11.2023
2023-12-13T09:03:47Z
Bernd Flemisch
DuMux Day 29.11.2023
### Removal of deprecated code
@kerem, @tufan, @utz
- [x] [newtonsolver.hh](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/nonlinear/newtonsolver.hh) @nedc, @anna_m_kostelecky see !3622
- [x] [deprecated....
### Removal of deprecated code
@kerem, @tufan, @utz
- [x] [newtonsolver.hh](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/nonlinear/newtonsolver.hh) @nedc, @anna_m_kostelecky see !3622
- [x] [deprecated.hh](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/common/deprecated.hh) @nedc, @anna_m_kostelecky see !3622
- [x] [freeflow/navierstokes/momentum](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/tree/master/dumux/freeflow/navierstokes/momentum) @tufan (!3557)
- [x] [linear](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/tree/master/dumux/linear) @nedc, @anna_m_kostelecky see !3622
- [x] [assembly/fvassembler.hh](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/assembly/fvassembler.hh), [multidomain/fvassembler.hh](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/multidomain/fvassembler.hh) @tufan (!3557)
- [x] [discretization](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/tree/master/dumux/discretization), [porousmediumflow/boxdfm](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/tree/master/dumux/porousmediumflow/boxdfm), [multidomain/facet/box/subcontrolvolumeface.hh](https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/blob/master/dumux/multidomain/facet/box/subcontrolvolumeface.hh) @utz (!3557)
### Miscellaneous
- [x] Fix compositional in new staggered: @mathis, @nedc, @houkili
- ~~Neumann BC for pore-network models (maybe !3564 can help), #1244: @hanchuan, @Maziar~~
- [x] https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course/-/issues/43: @houkili will have a look at the solution proposed by @IvBu
- [x] Reflect on the course slides / exercises: everyone add to https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course/-/issues/41
- [x] Delete old branches from https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course: @nedc
- [x] For internal planning of dumux-course use confidential issues. Remove dumux-course-orga repo.
- [x] The good old time bug: @DennisGlaeser and @timok will propose a new solution !3608
- [x] #1243 Check version for porespy, add requirements.txt in util folder @anna_m_kostelecky @hanchuan
- [ ] #1255 Potential inconsistency in component enthalpies: @DennisGlaeser
- [ ] #1256: Energy balance implementation @timok, @tufan, see !3616
- [ ] #1257: Generalize ff-pm coupling @martins
- [ ] #1258: Upscaling of two-phase flow properties using pore network @Maziar, @hanchuan
- [x] [Port shallow water to 3.7](https://git.iws.uni-stuttgart.de/dumux-appl/dumux-shallowwater/-/merge_requests/180): @utz
- [ ] Automate Darus publication @houkili
- [ ] Add user guidelines, IDE (VSC) @root
- [x] Fix trimming of porenetwork in extraction script @anna_m_kostelecky (see #1295, !3632)
- [x] #1299 @utz parallel use of periodic and manual checkpoints cause issues, also see !3618 (@DennisGlaeser)
- [ ] Volume averaging @nedc !3626
- [x] Look into Latex rendering of the markdown dumux-course files, #1303 @RoWin
### Documentation
- [x] Move content from handbook to doxygen #1238 @timok
- [x] Move one last page that used to be in the handbook (!3567) @bernd
- [x] Fix MPFA image in doxygen/handbook, scvs are equivalent to elements - match with description of the [paper](https://ars.els-cdn.com/content/image/1-s2.0-S0898122120300791-gr1_lrg.jpg) @DennisGlaeser, @IvBu
- [ ] Continue high-level docu #1154 @leonidas @IvBu @nedc
- ~~Add documentation for DuMux specific abstraction, e.g. gridgeometry !3645 @IvBu~~
- [x] On Webpage substitute "Documentation" button on main page by "Installation" button. https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-website/-/merge_requests/130
- [x] Add symbols to equations in doxygen documentation. @leonidas @yue @houkili
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1240
installexternal.py fails to download METIS
2023-04-25T15:20:06Z
Leopold Stadler
installexternal.py fails to download METIS
The script `installexternal.py` fails to download METIS. The command `python3 dumux/bin/installexternal.py metis` leads to
`urllib.error.URLError: <urlopen error [Errno 110] Connection timed out>`.
It looks like the url/download link is...
The script `installexternal.py` fails to download METIS. The command `python3 dumux/bin/installexternal.py metis` leads to
`urllib.error.URLError: <urlopen error [Errno 110] Connection timed out>`.
It looks like the url/download link is broken.
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1239
Kovasznay test does not build
2023-04-20T11:43:32Z
Bernd Flemisch
Kovasznay test does not build
**Bug report**
**What happened / Problem description**:
Compiling `test_ff_navierstokes_kovasznay` yields
```
bernd@bilbo:~/Dumux/dumux/build-cmake/test/freeflow/navierstokes/kovasznay$ make test_ff_navierstokes_kovasznay
Consolidate co...
**Bug report**
**What happened / Problem description**:
Compiling `test_ff_navierstokes_kovasznay` yields
```
bernd@bilbo:~/Dumux/dumux/build-cmake/test/freeflow/navierstokes/kovasznay$ make test_ff_navierstokes_kovasznay
Consolidate compiler generated dependencies of target dumux
[ 0%] Built target dumux
Consolidate compiler generated dependencies of target dumux_fmt
[100%] Built target dumux_fmt
Consolidate compiler generated dependencies of target test_ff_navierstokes_kovasznay
[100%] Building CXX object test/freeflow/navierstokes/kovasznay/CMakeFiles/test_ff_navierstokes_kovasznay.dir/main.cc.o
In file included from /home/bernd/Dumux/dune-istl/dune/istl/solverfactory.hh:19,
from /home/bernd/Dumux/dune-istl/dune/istl/superlu.hh:22,
from /home/bernd/Dumux/dumux/dumux/linear/seqsolverbackend.hh:21,
from /home/bernd/Dumux/dumux/dumux/linear/linearsolveracceptsmultitypematrix.hh:15,
from /home/bernd/Dumux/dumux/dumux/nonlinear/newtonsolver.hh:45,
from /home/bernd/Dumux/dumux/test/freeflow/navierstokes/kovasznay/main.cc:32:
/home/bernd/Dumux/dune-istl/dune/istl/novlpschwarz.hh: In instantiation of ‘class Dune::NonoverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> >’:
/home/bernd/Dumux/dumux/dumux/linear/istlsolvers.hh:499:19: required from ‘Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::constructPreconditionedSolver_(Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::MatrixOperatorHolder&)::<lambda(auto:232&&)> [with auto:232 = std::shared_ptr<Dune::NonoverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> > >&]’
/usr/include/c++/11/type_traits:2536:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__result_of_success<decltype (declval<_Fn>()((declval<_Args>)()...)), std::__invoke_other> std::__result_of_other_impl::_S_test(int) [with _Fn = Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::constructPreconditionedSolver_(Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::MatrixOperatorHolder&)::<lambda(auto:232&&)>; _Args = {std::shared_ptr<Dune::NonoverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> > >&}]’
/usr/include/c++/11/type_traits:2547:55: required from ‘struct std::__result_of_impl<false, false, Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::constructPreconditionedSolver_(Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::MatrixOperatorHolder&)::<lambda(auto:232&&)>, std::shared_ptr<Dune::NonoverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> > >&>’
/usr/include/c++/11/type_traits:2552:12: required from ‘struct std::__invoke_result<Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::constructPreconditionedSolver_(Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::MatrixOperatorHolder&)::<lambda(auto:232&&)>, std::shared_ptr<Dune::NonoverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> > >&>’
/usr/include/c++/11/type_traits:2997:12: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/c++/11/variant:1106:14: required from ‘constexpr bool std::__detail::__variant::__check_visitor_results(std::index_sequence<_Idx ...>) [with _Visitor = Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::constructPreconditionedSolver_(Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::MatrixOperatorHolder&)::<lambda(auto:232&&)>; _Variant = std::variant<std::shared_ptr<Dune::MatrixAdapter<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > > >, std::shared_ptr<Dune::OverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> > >, std::shared_ptr<Dune::NonoverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> > > >&; long unsigned int ..._Idxs = {0, 1, 2}; std::index_sequence<_Idx ...> = std::integer_sequence<long unsigned int, 0, 1, 2>]’
/usr/include/c++/11/variant:1785:44: required from ‘constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::constructPreconditionedSolver_(Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>::MatrixOperatorHolder&)::<lambda(auto:232&&)>; _Variants = {std::variant<std::shared_ptr<Dune::MatrixAdapter<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > > >, std::shared_ptr<Dune::OverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> > >, std::shared_ptr<Dune::NonoverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> > > >&}; std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> = std::shared_ptr<Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > > >]’
/home/bernd/Dumux/dumux/dumux/linear/istlsolvers.hh:495:26: required from ‘std::shared_ptr<S> Dumux::Detail::IstlIterativeLinearSolver<LinearSolverTraits, LinearAlgebraTraits, InverseOperator, PreconditionerFactory, convertMultiTypeLATypes>::constructPreconditionedSolver_(Dumux::Detail::IstlIterativeLinearSolver<LinearSolverTraits, LinearAlgebraTraits, InverseOperator, PreconditionerFactory, convertMultiTypeLATypes>::MatrixOperatorHolder&) [with LinearSolverTraits = Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>; LinearAlgebraTraits = Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>; InverseOperator = Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >; PreconditionerFactory = Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>; bool convertMultiTypeLATypes = false; Dumux::Detail::IstlIterativeLinearSolver<LinearSolverTraits, LinearAlgebraTraits, InverseOperator, PreconditionerFactory, convertMultiTypeLATypes>::MatrixOperatorHolder = std::variant<std::shared_ptr<Dune::MatrixAdapter<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > > >, std::shared_ptr<Dune::OverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> > >, std::shared_ptr<Dune::NonoverlappingSchwarzOperator<Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int> > > >]’
/home/bernd/Dumux/dumux/dumux/linear/istlsolvers.hh:331:23: required from ‘void Dumux::Detail::IstlIterativeLinearSolver<LinearSolverTraits, LinearAlgebraTraits, InverseOperator, PreconditionerFactory, convertMultiTypeLATypes>::setResidualReduction(double) [with LinearSolverTraits = Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>; LinearAlgebraTraits = Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>; InverseOperator = Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >; PreconditionerFactory = Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>; bool convertMultiTypeLATypes = false]’
/home/bernd/Dumux/dumux/dumux/nonlinear/newtonsolver.hh:250:50: required from ‘Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::NewtonSolver(std::shared_ptr<_Tp>, std::shared_ptr<_Tp>, const Communication&, const string&) [with Assembler = Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>; LinearSolver = Dumux::Detail::IstlIterativeLinearSolver<Dumux::LinearSolverTraitsImpl<Dumux::StaggeredFVGridGeometry<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, true, Dumux::StaggeredFreeFlowDefaultFVGridGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, 1, Dumux::DefaultMapperTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >, Dune::MultipleCodimMultipleGeomTypeMapper<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > > > > >, Dumux::DiscretizationMethods::Staggered>, Dumux::Detail::LATraits::LATraitsFromAssemblerImpl<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric>, true>, Dune::BiCGSTABSolver<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >, Dumux::Detail::IstlSolvers::IstlDefaultBlockLevelPreconditionerFactory<Dumux::SeqUzawa>, false>; Reassembler = Dumux::PartialReassembler<Dumux::StaggeredFVAssembler<Dumux::Properties::TTag::KovasznayTest, Dumux::DiffMethod::numeric> >; Comm = Dune::Communication<ompi_communicator_t*>; Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::Communication = Dune::Communication<ompi_communicator_t*>; std::string = std::__cxx11::basic_string<char>]’
/home/bernd/Dumux/dumux/test/freeflow/navierstokes/kovasznay/main.cc:143:57: required from here
/home/bernd/Dumux/dune-istl/dune/istl/novlpschwarz.hh:79:42: error: no type named ‘ConstColIterator’ in ‘class Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >’
79 | typedef typename M::ConstColIterator ColIterator;
| ^~~~~~~~~~~
/home/bernd/Dumux/dune-istl/dune/istl/novlpschwarz.hh:80:42: error: no type named ‘ConstRowIterator’ in ‘class Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >’
80 | typedef typename M::ConstRowIterator RowIterator;
| ^~~~~~~~~~~
In file included from /home/bernd/Dumux/dune-istl/dune/istl/owneroverlapcopy.hh:27,
from /home/bernd/Dumux/dumux/dumux/linear/parallelhelpers.hh:19,
from /home/bernd/Dumux/dumux/dumux/multidomain/fvassembler.hh:31,
from /home/bernd/Dumux/dumux/dumux/assembly/staggeredfvassembler.hh:25,
from /home/bernd/Dumux/dumux/test/freeflow/navierstokes/kovasznay/main.cc:23:
/home/bernd/Dumux/dune-common/dune/common/parallel/communicator.hh: In instantiation of ‘struct Dune::CommPolicy<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >’:
/home/bernd/Dumux/dune-common/dune/common/parallel/communicator.hh:474:5: required by substitution of ‘template<class Data, class Interface> typename std::enable_if<std::is_same<Dune::SizeOne, typename Dune::CommPolicy<V>::IndexedTypeFlag>::value, void>::type Dune::BufferedCommunicator::build(const Interface&) [with Data = Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >; Interface = <missing>]’
/home/bernd/Dumux/dune-istl/dune/istl/owneroverlapcopy.hh:316:37: required from ‘void Dune::OwnerOverlapCopyCommunication<T1, T2>::copyOwnerToAll(const T&, T&) const [with T = Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >; GlobalIdType = Dune::bigunsignedint<96>; LocalIdType = int]’
/home/bernd/Dumux/dune-istl/dune/istl/schwarz.hh:328:36: required from ‘void Dune::BlockPreconditioner<X, Y, C, P>::pre(X&, Y&) [with X = Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >; Y = Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >; C = Dune::OwnerOverlapCopyCommunication<Dune::bigunsignedint<96>, int>; P = Dune::Preconditioner<Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >, Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > > >]’
/home/bernd/Dumux/dune-istl/dune/istl/schwarz.hh:326:18: required from here
/home/bernd/Dumux/dune-common/dune/common/parallel/communicator.hh:147:36: error: no type named ‘value_type’ in ‘class Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >’
147 | typedef typename V::value_type IndexedType;
| ^~~~~~~~~~~
make[3]: *** [test/freeflow/navierstokes/kovasznay/CMakeFiles/test_ff_navierstokes_kovasznay.dir/build.make:76: test/freeflow/navierstokes/kovasznay/CMakeFiles/test_ff_navierstokes_kovasznay.dir/main.cc.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:10973: test/freeflow/navierstokes/kovasznay/CMakeFiles/test_ff_navierstokes_kovasznay.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:10980: test/freeflow/navierstokes/kovasznay/CMakeFiles/test_ff_navierstokes_kovasznay.dir/rule] Error 2
make: *** [Makefile:176: test/freeflow/navierstokes/kovasznay/CMakeFiles/test_ff_navierstokes_kovasznay.dir/rule] Error 2
```
**Environment**:
- Dune version: 2.9 and master
- DuMux version: 3.7 and master
As it's not catched by the CI, it should be due to differences in my local setup.
3.7
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-website/-/issues/52
The Course from 3 to 5th of April is still announced on the webpage
2023-04-16T16:38:34Z
Kai Wendel
The Course from 3 to 5th of April is still announced on the webpage
The course of the last week is still announced on the webpage. This announcement has to be taken away.
The course of the last week is still announced on the webpage. This announcement has to be taken away.
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course/-/issues/38
How to become Fashion Designer?
2023-04-06T14:32:44Z
Ghost User
How to become Fashion Designer?
Becoming a fashion designer takes a lot of hard work, dedication, and creativity.
Here are some steps to help you become a fashion designer:
Develop your skills and creativity: Start by improving your drawing, sewing, and design skills....
Becoming a fashion designer takes a lot of hard work, dedication, and creativity.
Here are some steps to help you become a fashion designer:
Develop your skills and creativity: Start by improving your drawing, sewing, and design skills. Take art and design classes, and practice your skills regularly. Additionally, stay up-to-date with the latest fashion trends and styles. Obtain a degree or certification: While it is not required to have a degree to become a fashion designer, it can be helpful.
Consider enrolling in a [Fashion Designing Course in Pune](https://www.sevenmentor.com/fashion-designing-course-in-pune.php) program at a college or university, or attending a fashion design school. Build a portfolio: Create a portfolio of your designs, sketches, and completed projects. This will help showcase your skills and creativity to potential employers or clients.
Gain experience: Look for opportunities to gain experience in the fashion industry. This can include internships, apprenticeships, or volunteering at fashion shows or events.
Network: Attend fashion industry events, connect with other designers, and build relationships with industry professionals. This can help you learn about job opportunities and connect with potential clients.
Start your own business: Consider starting your own fashion design business. This will give you more control over your designs and allow you to work on your own schedule.
Stay up-to-date: Stay informed about the latest fashion trends and styles, and be willing to adapt your designs to meet changing demands. Becoming a successful [Online Fashion Designing Training in Pune](https://www.sevenmentor.com/fashion-designing-course-in-pune.php) takes time and hard work.
However, if you are passionate about fashion and willing to put in the effort, you can turn your dream of becoming a fashion designer into a reality.
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course/-/issues/37
improve biomin exercise
2023-08-04T08:44:56Z
Johannes Hommel
improve biomin exercise
- [x] remove urea.hh from exercisebiomin/components as it is now in dumux-stable already.
- [x] fix README.md: there is some weird issue with the subscripts and the following all being formatted as subscript
- [x] fix README.md: correct...
- [x] remove urea.hh from exercisebiomin/components as it is now in dumux-stable already.
- [x] fix README.md: there is some weird issue with the subscripts and the following all being formatted as subscript
- [x] fix README.md: correct make command `make exercise_biomin` instead of `make exercisebiomin`
- [x] fix README.md: make the difference between reaction rates and source and sink terms more clear. There was some confusion during the course.
- [x] consistent names for parameters in chemistry and the README.md to minimize confusion
see !219
Johannes Hommel
Johannes Hommel
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-website/-/issues/51
Website installation page not found
2023-04-16T17:31:16Z
Stefanie Kiemle
Website installation page not found
![image](/uploads/0ffdb3f06054c02e25c1f4277ab1e91f/image.png)
I tried to access the installation page from the dumux website via google, but the page was not found. Maybe there is a way that this won't show up. It is a bit misleading. O...
![image](/uploads/0ffdb3f06054c02e25c1f4277ab1e91f/image.png)
I tried to access the installation page from the dumux website via google, but the page was not found. Maybe there is a way that this won't show up. It is a bit misleading. Once the link to the installation guide is found on the website. Everything works fine.
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1238
Merge handbook into doxygen
2023-06-28T23:07:28Z
Timo Koch
timokoch@math.uio.no
Merge handbook into doxygen
In order to have all documentation in one place, I suggest to merge the handbook into doxygen. This also allows to easily view everything online and improve searchability and cross-linking capabilities.
As far as I can see the handbook ...
In order to have all documentation in one place, I suggest to merge the handbook into doxygen. This also allows to easily view everything online and improve searchability and cross-linking capabilities.
As far as I can see the handbook content is up-to-date and useful documentation. Currently, we have some sections doubled like the installation instructions. But also the advanced topic make sense for me in the doxygen documentation in the respective group, linked from the high-level documentation.
In case some people prefer PDF it is also possible to look into generating PDFs which doxygen from which the class docs could be excluded. Another possibility since all doc will be in markdown is to generate latex from selected markdown documents via pandoc. That way the sources are not doubled and the documentation will be easier to maintain and find.
3.8
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1237
Broken property system in Python bindings property generator
2023-03-24T09:34:09Z
Timo Koch
timokoch@math.uio.no
Broken property system in Python bindings property generator
In !3479 the property system header syntax was updated. The Python bindings rely on some textual parsing of the properties. And this is now broken and needs to be fixed to know about the property definition macro. For some reason the Pyt...
In !3479 the property system header syntax was updated. The Python bindings rely on some textual parsing of the properties. And this is now broken and needs to be fixed to know about the property definition macro. For some reason the Python tests where not triggered when merging !3479.
3.7
Timo Koch
timokoch@math.uio.no
Timo Koch
timokoch@math.uio.no
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1236
Errors with generate_parameterlist
2023-03-25T13:25:15Z
Hamza Oukili
Errors with generate_parameterlist
We have errors when we run `bin/doc/generate_parameterlist.py`
`WARNING 2 parameter(s) in file /home/hamza/work/repDuMux/DuMuXtest210323dune29/dumux/dumux/dumux/flux/shallowwaterviscousflux.hh could not be retrieved automatically. Plea...
We have errors when we run `bin/doc/generate_parameterlist.py`
`WARNING 2 parameter(s) in file /home/hamza/work/repDuMux/DuMuXtest210323dune29/dumux/dumux/dumux/flux/shallowwaterviscousflux.hh could not be retrieved automatically. Please check them...
WARNING -> line 137: static const auto backgroundKinematicViscosity = getParamFromGroup<Scalar>(
WARNING -> error message: Could not correctly process parameter name
WARNING -> line 142: static const auto useMixingLengthTurbulenceModel = getParamFromGroup<bool>(
WARNING -> error message: Could not correctly process parameter name
WARNING 1 parameter(s) in file /home/hamza/work/repDuMux/DuMuXtest210323dune29/dumux/dumux/dumux/assembly/cvfelocalassembler.hh could not be retrieved automatically. Please check them...
WARNING -> line 376: static const bool updateAllVolVars = getParamFromGroup<bool>(
WARNING -> error message: Could not correctly process parameter name
WARNING 1 parameter(s) in file /home/hamza/work/repDuMux/DuMuXtest210323dune29/dumux/dumux/dumux/linear/stokes_solver.hh could not be retrieved automatically. Please check them...
WARNING -> line 114: const auto mode = getParamFromGroup<std::string>(
WARNING -> error message: Could not correctly process parameter name
ERROR Found parameter 'ShallowWater.TurbulentViscosity' in /home/hamza/work/repDuMux/DuMuXtest210323dune29/dumux/dumux/doc/doxygen/extradoc/parameters.json which has not been found in the code --> Set mode to 'manual' in the input file if it is to be kept otherwise delete it!
ERROR Found parameter 'ShallowWater.UseMixingLengthTurbulenceModel' in /home/hamza/work/repDuMux/DuMuXtest210323dune29/dumux/dumux/doc/doxygen/extradoc/parameters.json which has not been found in the code --> Set mode to 'manual' in the input file if it is to be kept otherwise delete it!
ERROR Missing input for parameter 'LinearSolver.DirectSolverForVelocity' in /home/hamza/work/repDuMux/DuMuXtest210323dune29/dumux/dumux/doc/doxygen/extradoc/parameters.json.
ERROR Missing input for parameter 'LinearSolver.Preconditioner.MassMatrixWeight' in /home/hamza/work/repDuMux/DuMuXtest210323dune29/dumux/dumux/doc/doxygen/extradoc/parameters.json.
ERROR Missing input for parameter 'LinearSolver.SymmetrizeDirichlet' in /home/hamza/work/repDuMux/DuMuXtest210323dune29/dumux/dumux/doc/doxygen/extradoc/parameters.json.
`
3.7
Yue Wang
yue.wang@iws.uni-stuttgart.de
Yue Wang
yue.wang@iws.uni-stuttgart.de
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1235
Remove deprecation warnings related to "fvGeometry.geometry(scvf)" before rel...
2023-03-23T07:05:43Z
Hamza Oukili
Remove deprecation warnings related to "fvGeometry.geometry(scvf)" before release 3.7
There are multiple similar warnings when building tests: is deprecated: Will be removed after 3.7. Use fvGeometry.geometry(scvf).
`/dumux/dumux/test/freeflow/navierstokes/angeli/main.cc:137:28: required from here
/dumux/dumux/test/fre...
There are multiple similar warnings when building tests: is deprecated: Will be removed after 3.7. Use fvGeometry.geometry(scvf).
`/dumux/dumux/test/freeflow/navierstokes/angeli/main.cc:137:28: required from here
/dumux/dumux/test/freeflow/navierstokes/angeli/problem.hh:308:41: warning: ‘Dumux::CCTpfaSubControlVolumeFace<GV, T>::Geometry Dumux::CCTpfaSubControlVolumeFace<GV, T>::geometry() const [with GV = Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > >; T = Dumux::CCTpfaDefaultScvfGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >; Dumux::CCTpfaSubControlVolumeFace<GV, T>::Geometry = Dune::MultiLinearGeometry<double, 1, 2, Dumux::CCTpfaDefaultScvfGeometryTraits<Dune::GridView<Dune::DefaultLeafGridViewTraits<const Dune::YaspGrid<2, Dune::EquidistantOffsetCoordinates<double, 2> > > > >::ScvfMLGTraits<double> >]’ is deprecated: Will be removed after 3.7. Use fvGeometry.geometry(scvf). [-Wdeprecated-declarations]
308 | const auto geo = entity.geometry();
| ~~~~~~~~~~~~~~~^~
In file included from /dumux/dumux/dumux/discretization/cellcentered/tpfa/fvgridgeometry.hh:41,
from /dumux/dumux/dumux/discretization/cctpfa.hh:40,
from /dumux/dumux/test/freeflow/navierstokes/angeli/properties.hh:36,
from /dumux/dumux/test/freeflow/navierstokes/angeli/main.cc:56:
/dumux/dumux/dumux/discretization/cellcentered/tpfa/subcontrolvolumeface.hh:205:14: note: declared here
205 | Geometry geometry() const
| ^~~~~~~~
`
3.7
Hanchuan Wu
Hanchuan Wu
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1234
Cppcheck [assignBoolToPointer]
2023-03-16T09:48:23Z
Hamza Oukili
Cppcheck [assignBoolToPointer]
When running the Cppcheck (static code analyzer) on dumux and including the headers (option -I). It reports 2 errors related to [assignBoolToPointer]. Please see the image below.
Note: It might be a false positive.
![image](/uploads/a46...
When running the Cppcheck (static code analyzer) on dumux and including the headers (option -I). It reports 2 errors related to [assignBoolToPointer]. Please see the image below.
Note: It might be a false positive.
![image](/uploads/a4612a9c7cd4269c7901ac2166b00895/image.png)
Hamza Oukili
Hamza Oukili
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1233
[doxygen] broken link to modules.html with doxygen 1.9.6
2023-03-08T11:04:19Z
Leopold Stadler
[doxygen] broken link to modules.html with doxygen 1.9.6
**Description**
There is is a broken link to `modules.html` from `index.xhtml` when creating the doxygen documentation on Arch Linux with doxygen version 1.9.6 The documentation on the dumux.org is built with doxygen version 1.9.3
**W...
**Description**
There is is a broken link to `modules.html` from `index.xhtml` when creating the doxygen documentation on Arch Linux with doxygen version 1.9.6 The documentation on the dumux.org is built with doxygen version 1.9.3
**What happened / Problem description**:
When the documentation is built with `make doc` on a Arch Linux system, doxygen creates `*.xhtml` instead of `*.html` pages.
The doxygen mainpage is generated from the file `mainpage.txt` where the link to the Modules is set with `<a href="modules.html">Modules</a>`
**Possible solutions**
- Replace the static link in mainpage.txt to ensure that the documentation is built with newer versions of doxygen.
- Force doxygen to generate html files instead of xhtml files.
**Environment**:
- Dune version: -
- DuMux version: master
- Others: doxygen --version 1.9.6
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/issues/1232
Remove deprecation warnings in tests related to "linear solver's norm" before...
2023-03-09T08:53:37Z
Hamza Oukili
Remove deprecation warnings in tests related to "linear solver's norm" before release 3.7
There are multiple similar warnings in the tests: Use the linear solver's norm.
`/dumux/test/porousmediumflow/tracer/2ptracer/main.cc:203:30: required from here
/dumux/dumux/nonlinear/newtonsolver.hh:194:40: warning: ‘Dumux::FVAssemble...
There are multiple similar warnings in the tests: Use the linear solver's norm.
`/dumux/test/porousmediumflow/tracer/2ptracer/main.cc:203:30: required from here
/dumux/dumux/nonlinear/newtonsolver.hh:194:40: warning: ‘Dumux::FVAssembler<TypeTag, diffMethod, isImplicit>::Scalar Dumux::FVAssembler<TypeTag, diffMethod, isImplicit>::normOfResidual(Dumux::FVAssembler<TypeTag, diffMethod, isImplicit>::ResidualType&) const [with TypeTag = Dumux::Properties::TTag::TwoPIncompressibleTpfa; Dumux::DiffMethod diffMethod = Dumux::DiffMethod::numeric; bool isImplicit = true; Dumux::FVAssembler<TypeTag, diffMethod, isImplicit>::Scalar = double; Dumux::FVAssembler<TypeTag, diffMethod, isImplicit>::ResidualType = Dune::BlockVector<Dune::FieldVector<double, 2>, std::allocator<Dune::FieldVector<double, 2> > >]’ is deprecated: Use the linear solver's norm. Will be deleted after 3.7 [-Wdeprecated-declarations]
194 | return assembler.normOfResidual(residual);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
In file included from /dumux/test/porousmediumflow/tracer/2ptracer/main.cc:42:
/dumux/dumux/assembly/fvassembler.hh:249:12: note: declared here
249 | Scalar normOfResidual(ResidualType& residual) const
| ^~~~~~~~~~~~~~
`
3.7