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
|
| |
| template<std::size_t i> |
| using | PtrType = std::shared_ptr<Type<i>> |
| | export pointer types the stored type
|
| |
| using | TupleType = typename MDTraits::template Tuple<PtrType> |
| | export type of tuple of pointers
|
| |
|
| template<typename... Args> |
| | MultiDomainFVGridGeometry (Args &&... args) |
| | Construct grid geometries for all subdomains.
|
| |
| | MultiDomainFVGridGeometry (TupleType ggTuple) |
| | Construct wrapper from a tuple of grid geometries.
|
| |
| template<typename... Args> |
| void | update (Args &&... args) |
| | Update all grid geometries (do this e.g. after grid adaption)
|
| |
| template<std::size_t i> |
| const Type< i > & | operator[] (Dune::index_constant< i >) const |
| | return the grid geometry for domain with index i
|
| |
| template<std::size_t i> |
| Type< i > & | operator[] (Dune::index_constant< i >) |
| | return the grid geometry for domain with index i
|
| |
| 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
|
| |
| 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
|
| |
| TupleType & | asTuple () |
| | Access the underlying tuple representation.
|
| |
| const TupleType & | asTuple () const |
| | Access the underlying tuple representation.
|
| |
◆ PtrType
template<class MDTraits>
template<std::size_t i>
◆ TupleType
◆ 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]
- Parameters
-
| ggTuple | a tuple of shared_ptrs to the grid geometries |
◆ asTuple() [1/2]
◆ asTuple() [2/2]
◆ 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: