Reference documentation for deal.II version 9.4.1
|
Classes | |
struct | AddAndDot |
struct | Dot |
struct | functions |
struct | functions< Number, Number, ::MemorySpace::CUDA > |
struct | functions< Number, Number2, ::MemorySpace::Host > |
struct | MeanValue |
struct | Norm1 |
struct | Norm2 |
struct | NormP |
struct | TBBForFunctor |
struct | TBBReduceFunctor |
struct | Vector_copy |
struct | Vector_set |
struct | Vectorization_add_av |
struct | Vectorization_add_avpbw |
struct | Vectorization_add_factor |
struct | Vectorization_add_v |
struct | Vectorization_equ_au |
struct | Vectorization_equ_aubv |
struct | Vectorization_equ_aubvcw |
struct | Vectorization_multiply_factor |
struct | Vectorization_ratio |
struct | Vectorization_sadd_xav |
struct | Vectorization_sadd_xavbw |
struct | Vectorization_sadd_xv |
struct | Vectorization_scale |
struct | Vectorization_subtract_v |
Typedefs | |
using | size_type = types::global_dof_index |
Functions | |
template<typename T > | |
bool | is_non_negative (const T &t) |
template<typename T > | |
bool | is_non_negative (const std::complex< T > &) |
template<typename T , typename U > | |
void | copy (const T *begin, const T *end, U *dest) |
template<typename T , typename U > | |
void | copy (const std::complex< T > *begin, const std::complex< T > *end, std::complex< U > *dest) |
template<typename T , typename U > | |
void | copy (const std::complex< T > *, const std::complex< T > *, U *) |
template<typename Functor > | |
void | parallel_for (Functor &functor, const size_type start, const size_type end, const std::shared_ptr<::parallel::internal::TBBPartitioner > &partitioner) |
template<typename Operation , typename ResultType > | |
void | accumulate_recursive (const Operation &op, const size_type first, const size_type last, ResultType &result) |
template<typename Operation , typename ResultType > | |
void | accumulate_regular (const Operation &op, const size_type &n_chunks, size_type &index, ResultType(&outer_results)[vector_accumulation_recursion_threshold], std::integral_constant< bool, false >) |
template<typename Operation , typename Number > | |
void | accumulate_regular (const Operation &op, size_type &n_chunks, size_type &index, Number(&outer_results)[vector_accumulation_recursion_threshold], std::integral_constant< bool, true >) |
template<typename Operation , typename ResultType > | |
void | parallel_reduce (const Operation &op, const size_type start, const size_type end, ResultType &result, const std::shared_ptr<::parallel::internal::TBBPartitioner > &partitioner) |
Variables | |
const unsigned int | vector_accumulation_recursion_threshold = 128 |
using internal::VectorOperations::size_type = typedef types::global_dof_index |
Definition at line 42 of file vector_operations_internal.h.
bool internal::VectorOperations::is_non_negative | ( | const T & | t | ) |
Definition at line 46 of file vector_operations_internal.h.
bool internal::VectorOperations::is_non_negative | ( | const std::complex< T > & | ) |
Definition at line 54 of file vector_operations_internal.h.
void internal::VectorOperations::copy | ( | const T * | begin, |
const T * | end, | ||
U * | dest | ||
) |
Definition at line 68 of file vector_operations_internal.h.
void internal::VectorOperations::copy | ( | const std::complex< T > * | begin, |
const std::complex< T > * | end, | ||
std::complex< U > * | dest | ||
) |
Definition at line 75 of file vector_operations_internal.h.
void internal::VectorOperations::copy | ( | const std::complex< T > * | , |
const std::complex< T > * | , | ||
U * | |||
) |
Definition at line 84 of file vector_operations_internal.h.
void internal::VectorOperations::parallel_for | ( | Functor & | functor, |
const size_type | start, | ||
const size_type | end, | ||
const std::shared_ptr<::parallel::internal::TBBPartitioner > & | partitioner | ||
) |
Definition at line 150 of file vector_operations_internal.h.
void internal::VectorOperations::accumulate_recursive | ( | const Operation & | op, |
const size_type | first, | ||
const size_type | last, | ||
ResultType & | result | ||
) |
Definition at line 990 of file vector_operations_internal.h.
void internal::VectorOperations::accumulate_regular | ( | const Operation & | op, |
const size_type & | n_chunks, | ||
size_type & | index, | ||
ResultType(&) | outer_results[vector_accumulation_recursion_threshold], | ||
std::integral_constant< bool, false > | |||
) |
Definition at line 1128 of file vector_operations_internal.h.
void internal::VectorOperations::accumulate_regular | ( | const Operation & | op, |
size_type & | n_chunks, | ||
size_type & | index, | ||
Number(&) | outer_results[vector_accumulation_recursion_threshold], | ||
std::integral_constant< bool, true > | |||
) |
Definition at line 1166 of file vector_operations_internal.h.
void internal::VectorOperations::parallel_reduce | ( | const Operation & | op, |
const size_type | start, | ||
const size_type | end, | ||
ResultType & | result, | ||
const std::shared_ptr<::parallel::internal::TBBPartitioner > & | partitioner | ||
) |
This is the general caller for parallel reduction operations that work in parallel.
Definition at line 1354 of file vector_operations_internal.h.
const unsigned int internal::VectorOperations::vector_accumulation_recursion_threshold = 128 |
The minimum number of chunks (each of size 32) to divide the range [first,last) into two (second part of the if branch in accumulate_recursive).
Definition at line 986 of file vector_operations_internal.h.