|
dune-functions 2.9.1
|
Loading...
Searching...
No Matches
hierarchicvectorwrapper.hh
Go to the documentation of this file.
94 using Coefficient = typename std::conditional< std::is_same<Imp::DeducedCoefficientTag,CO>::value and HasStaticSize<MultiIndex>::value,
105 static void resizeHelper(C& c, const SizeProvider& sizeProvider, typename SizeProvider::SizePrefix prefix)
109 DUNE_THROW(RangeError, "Can't resize scalar vector entry v[" << prefix << "] to size(" << prefix << ")=" << size);
115 static void apply(I&& i, C& c, const SizeProvider& sizeProvider, typename SizeProvider::SizePrefix prefix)
125 static void resizeHelper(C& c, const SizeProvider& sizeProvider, typename SizeProvider::SizePrefix prefix)
132 DUNE_THROW(RangeError, "Can't resize statically sized vector entry v[" << prefix << "] of size " << c.size() << " to size(" << prefix << ")=" << size);
143 static void resizeHelper(C& c, const SizeProvider& sizeProvider, typename SizeProvider::SizePrefix prefix)
149 DUNE_THROW(RangeError, "Can't resize dynamically sized vector entry v[" << prefix << "]. Its size is 0 but the target size is unknown due to size(" << prefix << ")=0.");
187 static_assert(not std::is_same<Imp::DeducedCoefficientTag,Entry<MultiIndex>>::value, "Coefficient type for HierarchicVectorWrapper and given multi-index type cannot be determined automatically!");
194 static_assert(not std::is_same<Imp::DeducedCoefficientTag,Entry<MultiIndex>>::value, "Coefficient type for HierarchicVectorWrapper and given multi-index type cannot be determined automatically!");
201 static_assert(not std::is_same<Imp::DeducedCoefficientTag,Entry<MultiIndex>>::value, "Coefficient type for HierarchicVectorWrapper and given multi-index type cannot be determined automatically!");
208 static_assert(not std::is_same<Imp::DeducedCoefficientTag,Entry<MultiIndex>>::value, "Coefficient type for HierarchicVectorWrapper and given multi-index type cannot be determined automatically!");
V & makeHierarchicVectorForMultiIndex(V &v)
Definition hierarchicvectorwrapper.hh:240
HierarchicVectorWrapper< V > hierarchicVector(V &v)
Definition hierarchicvectorwrapper.hh:231
constexpr index_constant< 0 > _0
int size() const
constexpr auto size(const T &t)
std::ptrdiff_t index() const
#define DUNE_THROW(E, m)
static constexpr std::size_t value
Check if type is a statically sized container.
Definition type_traits.hh:83
A wrapper providing multiindex access to vector entries.
Definition hierarchicvectorwrapper.hh:92
Entry< MultiIndex > & operator()(const MultiIndex &index)
Definition hierarchicvectorwrapper.hh:206
Entry< MultiIndex > & operator[](const MultiIndex &index)
Definition hierarchicvectorwrapper.hh:192
const Entry< MultiIndex > & operator[](const MultiIndex &index) const
Definition hierarchicvectorwrapper.hh:185
Vector & vector()
Definition hierarchicvectorwrapper.hh:217
Coefficient< MultiIndex > Entry
Definition hierarchicvectorwrapper.hh:170
const Vector & vector() const
Definition hierarchicvectorwrapper.hh:212
HierarchicVectorWrapper(Vector &vector)
Definition hierarchicvectorwrapper.hh:172
const Entry< MultiIndex > & operator()(const MultiIndex &index) const
Definition hierarchicvectorwrapper.hh:199
void resize(const SizeProvider &sizeProvider)
Definition hierarchicvectorwrapper.hh:177
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8