WaveBlocksND
|
Classes | |
struct | _strict_union__heap_entry |
Functions | |
template<class MultiIndex > | |
std::vector< MultiIndex > | _extend (const std::vector< MultiIndex > &source, dim_t start, dim_t len) |
template<dim_t D, class MultiIndex > | |
ShapeSlice< D, MultiIndex > | _extend (const ShapeSlice< D, MultiIndex > &slice, std::size_t offset) |
template<dim_t D, class MultiIndex > | |
ShapeEnum< D, MultiIndex > | extend (const ShapeEnum< D, MultiIndex > *source) |
For a given enumerated shape, enumerate its extension. More... | |
template<dim_t D> | |
bool | _copy_subset__fast_equals (const std::array< int, D > &lhs, const std::array< int, D > &rhs) |
template<dim_t D, class MultiIndex , int N> | |
void | copy_subset (const HaWpBasisVector< N > &superset_data, std::size_t offset1, HaWpBasisVector< N > &subset_data, std::size_t offset2, const ShapeSlice< D, MultiIndex > &superset_slice, const ShapeSlice< D, MultiIndex > &subset_slice) |
template<dim_t D, class MultiIndex , int N> | |
HaWpBasisVector< N > | copy_subset (const HaWpBasisVector< N > &superset_data, const ShapeSlice< D, MultiIndex > &superset_slice, const ShapeSlice< D, MultiIndex > &subset_slice) |
template<dim_t D, class MultiIndex , int N> | |
HaWpBasisVector< N > | copy_subset (const HaWpBasisVector< N > &superset_data, const ShapeEnum< D, MultiIndex > *superset_enum, const ShapeEnum< D, MultiIndex > *subset_enum) |
template<class Input1 , class Input2 , class Output , class Compare > | |
Output | strict_union (Input1 begin1, Input1 end1, Input2 begin2, Input2 end2, Output sink, Compare less) |
Creates union of two shape slices. More... | |
template<class MultiIndex > | |
std::vector< MultiIndex > | strict_union (std::vector< typename std::vector< MultiIndex >::const_iterator > begin, std::vector< typename std::vector< MultiIndex >::const_iterator > end) |
template<dim_t D, class MultiIndex > | |
ShapeSlice< D, MultiIndex > | strict_union (const std::vector< const ShapeSlice< D, MultiIndex > * > &slices, std::size_t union_offset) |
template<dim_t D, class MultiIndex > | |
ShapeEnum< D, MultiIndex > | strict_union (std::vector< ShapeEnum< D, MultiIndex > const * > const &enums) |
template<dim_t D, class MultiIndex , std::size_t N> | |
ShapeEnum< D, MultiIndex > | strict_union (const std::array< ShapeEnum< D, MultiIndex > *, N > &enum_list) |
template<dim_t D, class MultiIndex , std::size_t N> | |
ShapeEnum< D, MultiIndex > | strict_union (const std::array< const ShapeEnum< D, MultiIndex > *, N > &enum_list) |
template<dim_t D, class MultiIndex > | |
ShapeEnum< D, MultiIndex > | strict_union (std::initializer_list< const ShapeEnum< D, MultiIndex > * > enum_list) |
bool waveblocks::wavepackets::shapes::shape_enum::_copy_subset__fast_equals | ( | const std::array< int, D > & | lhs, |
const std::array< int, D > & | rhs | ||
) |
std::vector<MultiIndex> waveblocks::wavepackets::shapes::shape_enum::_extend | ( | const std::vector< MultiIndex > & | source, |
dim_t | start, | ||
dim_t | len | ||
) |
ShapeSlice<D, MultiIndex> waveblocks::wavepackets::shapes::shape_enum::_extend | ( | const ShapeSlice< D, MultiIndex > & | slice, |
std::size_t | offset | ||
) |
void waveblocks::wavepackets::shapes::shape_enum::copy_subset | ( | const HaWpBasisVector< N > & | superset_data, |
std::size_t | offset1, | ||
HaWpBasisVector< N > & | subset_data, | ||
std::size_t | offset2, | ||
const ShapeSlice< D, MultiIndex > & | superset_slice, | ||
const ShapeSlice< D, MultiIndex > & | subset_slice | ||
) |
subset_slice
is not a subset of superset_slice
.D | dimension of multi-index |
T | component data type of superset_data and return value |
N | number of quadrature points or Eigen::Dynamic |
[in] | superset_data | (number of nodes in superset, number of quadrature points)-matrix |
[in] | superset_slice | nodes within superset slice |
[in] | offset1 | Offset within the basis shape |
[in] | subset_data | (number of nodes in subset, number of quadrature points)-matrix |
[in] | subset_slice | nodes within subset slice |
[in] | offset2 | Offset within the basis shape |
HaWpBasisVector<N> waveblocks::wavepackets::shapes::shape_enum::copy_subset | ( | const HaWpBasisVector< N > & | superset_data, |
const ShapeSlice< D, MultiIndex > & | superset_slice, | ||
const ShapeSlice< D, MultiIndex > & | subset_slice | ||
) |
HaWpBasisVector<N> waveblocks::wavepackets::shapes::shape_enum::copy_subset | ( | const HaWpBasisVector< N > & | superset_data, |
const ShapeEnum< D, MultiIndex > * | superset_enum, | ||
const ShapeEnum< D, MultiIndex > * | subset_enum | ||
) |
ShapeEnum<D, MultiIndex> waveblocks::wavepackets::shapes::shape_enum::extend | ( | const ShapeEnum< D, MultiIndex > * | source | ) |
For a given enumerated shape, enumerate its extension.
source | pointer to basic shape enumeration |
Output waveblocks::wavepackets::shapes::shape_enum::strict_union | ( | Input1 | begin1, |
Input1 | end1, | ||
Input2 | begin2, | ||
Input2 | end2, | ||
Output | sink, | ||
Compare | less | ||
) |
Creates union of two shape slices.
\[ \forall k \colon k \in union(\mathfrak{K}_1,\mathfrak{K}_2) \iff k \in \mathfrak{K}_1 \lor k \in \mathfrak{K}_2 \]
[in] | begin1 | input iterator to begin of lattice point vector of first slice |
[in] | end1 | input iterator to end of lattice point vector of first slice |
[in] | begin2 | input iterator to begin of lattice point vector of second slice |
[in] | end2 | input iterator to end of lattice point vector of second slice |
[out] | sink | output iterator to store united slice |
[in] | less | function object that implements less operation on multi-indices |
Input1 | type of first input iterator |
Input2 | type of second input iterator |
Output | type of output iterator |
Compare | type of function object that implements less operation on multi-indices |
std::vector<MultiIndex> waveblocks::wavepackets::shapes::shape_enum::strict_union | ( | std::vector< typename std::vector< MultiIndex >::const_iterator > | begin, |
std::vector< typename std::vector< MultiIndex >::const_iterator > | end | ||
) |
ShapeSlice<D, MultiIndex> waveblocks::wavepackets::shapes::shape_enum::strict_union | ( | const std::vector< const ShapeSlice< D, MultiIndex > * > & | slices, |
std::size_t | union_offset | ||
) |
ShapeEnum<D, MultiIndex> waveblocks::wavepackets::shapes::shape_enum::strict_union | ( | std::vector< ShapeEnum< D, MultiIndex > const * > const & | enums | ) |
ShapeEnum<D, MultiIndex> waveblocks::wavepackets::shapes::shape_enum::strict_union | ( | const std::array< ShapeEnum< D, MultiIndex > *, N > & | enum_list | ) |
enum_list |
ShapeEnum<D, MultiIndex> waveblocks::wavepackets::shapes::shape_enum::strict_union | ( | const std::array< const ShapeEnum< D, MultiIndex > *, N > & | enum_list | ) |
enum_list |