3.6-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Classes | Public Types | Static Public Attributes | List of all members
Dumux::MultiDomainTraits< SubDomainTypeTags > Struct Template Reference

#include <dumux/multidomain/traits.hh>

Classes

struct  SubDomain
 

Public Types

using Scalar = typename makeFromIndexedType< std::common_type_t, SubDomainScalar, Indices >::type
 the scalar type More...
 
using SolutionVector = typename makeFromIndexedType< Dune::MultiTypeBlockVector, SubDomainSolutionVector, Indices >::type
 the solution vector type More...
 
using JacobianMatrix = typename Detail::MultiDomainMatrixType< SubDomainJacobianMatrix, Indices, Scalar >::type
 the jacobian type More...
 
template<template< std::size_t > class T>
using Tuple = typename makeFromIndexedType< std::tuple, T, Indices >::type
 helper alias to create tuple<...> from indexed type More...
 
template<template< std::size_t > class T>
using TupleOfSharedPtr = typename Detail::MultiDomainTupleSharedPtr< T, Indices >::type
 helper alias to create tuple<std::shared_ptr<...>> from indexed type More...
 
template<template< std::size_t > class T>
using TupleOfSharedPtrConst = typename Detail::MultiDomainTupleSharedPtrConst< T, Indices >::type
 helper alias to create tuple<std::shared_ptr<const ...>> from indexed type More...
 

Static Public Attributes

static constexpr std::size_t numSubDomains = sizeof...(SubDomainTypeTags)
 the number of subdomains More...
 

Member Typedef Documentation

◆ JacobianMatrix

template<typename... SubDomainTypeTags>
using Dumux::MultiDomainTraits< SubDomainTypeTags >::JacobianMatrix = typename Detail::MultiDomainMatrixType<SubDomainJacobianMatrix, Indices, Scalar>::type

the jacobian type

◆ Scalar

template<typename... SubDomainTypeTags>
using Dumux::MultiDomainTraits< SubDomainTypeTags >::Scalar = typename makeFromIndexedType<std::common_type_t, SubDomainScalar, Indices>::type

the scalar type

◆ SolutionVector

template<typename... SubDomainTypeTags>
using Dumux::MultiDomainTraits< SubDomainTypeTags >::SolutionVector = typename makeFromIndexedType<Dune::MultiTypeBlockVector, SubDomainSolutionVector, Indices>::type

the solution vector type

◆ Tuple

template<typename... SubDomainTypeTags>
template<template< std::size_t > class T>
using Dumux::MultiDomainTraits< SubDomainTypeTags >::Tuple = typename makeFromIndexedType<std::tuple, T, Indices>::type

helper alias to create tuple<...> from indexed type

◆ TupleOfSharedPtr

template<typename... SubDomainTypeTags>
template<template< std::size_t > class T>
using Dumux::MultiDomainTraits< SubDomainTypeTags >::TupleOfSharedPtr = typename Detail::MultiDomainTupleSharedPtr<T, Indices>::type

helper alias to create tuple<std::shared_ptr<...>> from indexed type

◆ TupleOfSharedPtrConst

template<typename... SubDomainTypeTags>
template<template< std::size_t > class T>
using Dumux::MultiDomainTraits< SubDomainTypeTags >::TupleOfSharedPtrConst = typename Detail::MultiDomainTupleSharedPtrConst<T, Indices>::type

helper alias to create tuple<std::shared_ptr<const ...>> from indexed type

Member Data Documentation

◆ numSubDomains

template<typename... SubDomainTypeTags>
constexpr std::size_t Dumux::MultiDomainTraits< SubDomainTypeTags >::numSubDomains = sizeof...(SubDomainTypeTags)
staticconstexpr

the number of subdomains


The documentation for this struct was generated from the following file: