16#ifndef dealii_fe_block_mask_h
17#define dealii_fe_block_mask_h
102 BlockMask(
const unsigned int n_blocks,
const bool initializer);
219 friend std::ostream &
242 : block_mask(block_mask)
296 [](
const bool selected) { return selected; });
311 for (
unsigned int c = 0; c <
block_mask.size(); ++c)
337 else if (
mask.block_mask.size() == 0)
344 std::vector<bool> new_mask(
block_mask.size());
345 for (
unsigned int i = 0; i <
block_mask.size(); ++i)
360 else if (
mask.block_mask.size() == 0)
367 std::vector<bool> new_mask(
block_mask.size());
368 for (
unsigned int i = 0; i <
block_mask.size(); ++i)
std::ostream & operator<<(std::ostream &out, const BlockMask &mask)
bool operator==(const BlockMask &mask) const
BlockMask operator&(const BlockMask &mask) const
BlockMask(const unsigned int n_blocks, const bool initializer)
friend std::ostream & operator<<(std::ostream &out, const BlockMask &mask)
BlockMask operator|(const BlockMask &mask) const
std::size_t memory_consumption() const
bool represents_the_all_selected_mask() const
unsigned int size() const
unsigned int n_selected_blocks(const unsigned int overall_number_of_blocks=numbers::invalid_unsigned_int) const
unsigned int first_selected_block(const unsigned int overall_number_of_blocks=numbers::invalid_unsigned_int) const
bool operator[](const unsigned int block_index) const
bool operator!=(const BlockMask &mask) const
std::vector< bool > block_mask
bool represents_n_blocks(const unsigned int n) const
BlockMask(const std::vector< bool > &block_mask)
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
#define Assert(cond, exc)
#define AssertDimension(dim1, dim2)
#define AssertIndexRange(index, range)
static ::ExceptionBase & ExcMessage(std::string arg1)
std::enable_if_t< IsBlockVector< VectorType >::value, unsigned int > n_blocks(const VectorType &vector)
static const unsigned int invalid_unsigned_int