A multidomain wrapper for multiple grid geometries.
More...
#include <dumux/multidomain/fvgridgeometry.hh>
template<class MDTraits>
class Dumux::MultiDomainFVGridGeometry< MDTraits >
- Template Parameters
-
MDTraits | The multidomain traits |
|
template<std::size_t i> |
using | Type = typename MDTraits::template SubDomain< i >::GridGeometry |
| export base types of the stored type More...
|
|
template<std::size_t i> |
using | PtrType = std::shared_ptr< Type< i > > |
| export pointer types the stored type More...
|
|
using | TupleType = typename MDTraits::template Tuple< PtrType > |
| export type of tuple of pointers More...
|
|
|
template<typename... Args> |
| MultiDomainFVGridGeometry (Args &&... args) |
| Construct grid geometries for all subdomains. More...
|
|
| MultiDomainFVGridGeometry (TupleType ggTuple) |
| Construct wrapper from a tuple of grid geometries. More...
|
|
template<typename... Args> |
void | update (Args &&... args) |
| Update all grid geometries (do this e.g. after grid adaption) More...
|
|
template<std::size_t i> |
const Type< i > & | operator[] (Dune::index_constant< i >) const |
| return the grid geometry for domain with index i More...
|
|
template<std::size_t i> |
Type< i > & | operator[] (Dune::index_constant< i >) |
| return the grid geometry for domain with index i More...
|
|
template<std::size_t i> |
const PtrType< i > & | get (Dune::index_constant< i > id=Dune::index_constant< i >{}) const |
| ! access the grid geometry pointer for domain with index i More...
|
|
template<std::size_t i> |
PtrType< i > & | get (Dune::index_constant< i > id=Dune::index_constant< i >{}) |
| ! access the the grid geometry pointer for domain with index i More...
|
|
TupleType & | asTuple () |
| Access the underlying tuple representation. More...
|
|
const TupleType & | asTuple () const |
| Access the underlying tuple representation. More...
|
|
◆ PtrType
template<class MDTraits >
template<std::size_t i>
◆ TupleType
template<class MDTraits >
◆ Type
template<class MDTraits >
template<std::size_t i>
◆ MultiDomainFVGridGeometry() [1/2]
template<class MDTraits >
template<typename... Args>
- Parameters
-
args | a list of arguments to pass to the constructors |
The number of arguments has to match the number of subdomains. In case a constructor needs multiple arguments, they have to be wrapped in a std::tuple. Use std::make_tuple and possible wrap arguments using std::ref / std::cref or use std::forward_as_tuple. If an argument is a tuple, it will be unpacked and its members will be passed to the constructor. In the corner case where you need to pass a tuple to the constructor, you therefore need to additionally wrap the tuple in a tuple before passing.
◆ MultiDomainFVGridGeometry() [2/2]
template<class MDTraits >
- Parameters
-
ggTuple | a tuple of shared_ptrs to the grid geometries |
◆ asTuple() [1/2]
template<class MDTraits >
◆ asTuple() [2/2]
template<class MDTraits >
◆ get() [1/2]
template<class MDTraits >
template<std::size_t i>
◆ get() [2/2]
template<class MDTraits >
template<std::size_t i>
◆ operator[]() [1/2]
template<class MDTraits >
template<std::size_t i>
◆ operator[]() [2/2]
template<class MDTraits >
template<std::size_t i>
◆ update()
template<class MDTraits >
template<typename... Args>
- Parameters
-
args | a list of arguments to pass to the update functions |
The number of arguments has to match the number of subdomains. In case the update function needs multiple arguments, they have to be wrapped in a std::tuple. Use std::make_tuple and possible wrap arguments using std::ref / std::cref or use std::forward_as_tuple. If an argument is a tuple, it will be unpacked and its members will be passed to the constructor. In the corner case where you need to pass a tuple to the constructor, you therefore need to additionally wrap the tuple in a tuple before passing.
The documentation for this class was generated from the following file: