version 3.9.0
Loading...
Searching...
No Matches
Dumux::StaggeredMultiDomainTraits< SubDomainTypeTags > Struct Template Reference

#include <dumux/multidomain/staggeredtraits.hh>

Inheritance diagram for Dumux::StaggeredMultiDomainTraits< SubDomainTypeTags >:

Classes

struct  SubDomain
 

Public Types

using Scalar = typename makeFromIndexedType<std::common_type_t, SubDomainScalar, Indices>::type
 the scalar type
 
using SolutionVector = typename makeFromIndexedType<Dune::MultiTypeBlockVector, SubDomainSolutionVector, Indices>::type
 the solution vector type
 
using ResidualVector = typename makeFromIndexedType<Dune::MultiTypeBlockVector, SubDomainResidualVector, Indices>::type
 the residual vector type
 
using JacobianMatrix = typename Detail::MultiDomainMatrixType<SubDomainJacobianMatrix, Indices, Scalar>::type
 the jacobian type
 
template<template< std::size_t > class T>
using Tuple = typename makeFromIndexedType<std::tuple, T, Indices>::type
 helper alias to create tuple<...> from indexed type
 
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
 
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
 

Static Public Attributes

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

Member Typedef Documentation

◆ JacobianMatrix

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

◆ ResidualVector

template<typename... SubDomainTypeTags>
using Dumux::StaggeredMultiDomainTraits< SubDomainTypeTags >::ResidualVector = typename makeFromIndexedType<Dune::MultiTypeBlockVector, SubDomainResidualVector, Indices>::type

◆ Scalar

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

◆ SolutionVector

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

◆ Tuple

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

◆ TupleOfSharedPtr

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

◆ TupleOfSharedPtrConst

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

Member Data Documentation

◆ numSubDomains

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

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