Rheolef
7.2
an efficient C++ finite element environment
|
forward decl
Definition at line 290 of file disarray.h.
Classes | |
struct | message_type |
struct | remove_const_in_pair |
struct | remove_const_in_pair< std::pair< T1, T2 > > |
struct | stash_traits |
struct | stash_traits< U, std::false_type > |
struct | stash_traits< U, std::true_type > |
Public Member Functions | |
disarray_rep (const distributor &ownership, const T &init_val=T(), const A &alloc=A()) | |
void | resize (const distributor &ownership, const T &init_val=T()) |
disarray_rep (const disarray_rep< T, distributed, A > &x) | |
A | get_allocator () const |
size_type | size () const |
const_iterator | begin () const |
const_iterator | end () const |
iterator | begin () |
iterator | end () |
const distributor & | ownership () const |
const mpi::communicator & | comm () const |
size_type | first_index () const |
size_type | last_index () const |
size_type | dis_size () const |
dis_reference | dis_entry (size_type dis_i) |
template<class SetOp = typename details::default_set_op_traits<T>::type> | |
void | dis_entry_assembly_begin (SetOp my_set_op=SetOp()) |
template<class SetOp = typename details::default_set_op_traits<T>::type> | |
void | dis_entry_assembly_end (SetOp my_set_op=SetOp()) |
template<class SetOp = typename details::default_set_op_traits<T>::type> | |
void | dis_entry_assembly (SetOp my_set_op=SetOp()) |
template<class Set , class Map > | |
void | append_dis_entry (const Set &ext_idx_set, Map &ext_idx_map) const |
get values from ext_idx_set, that are managed by another proc | |
template<class Set , class Map > | |
void | get_dis_entry (const Set &ext_idx_set, Map &ext_idx_map) const |
template<class Set > | |
void | append_dis_indexes (const Set &ext_idx_set) const |
template<class Set > | |
void | set_dis_indexes (const Set &ext_idx_set) const |
void | get_dis_indexes (std::set< size_type > &ext_idx_set) const |
void | reset_dis_indexes () const |
const_reference | dis_at (size_type dis_i) const |
const scatter_map_type & | get_dis_map_entries () const |
template<class A2 > | |
void | repartition (const disarray_rep< size_type, distributed, A2 > &partition, disarray_rep< T, distributed, A > &new_disarray, disarray_rep< size_type, distributed, A2 > &old_numbering, disarray_rep< size_type, distributed, A2 > &new_numbering) const |
template<class A2 > | |
void | permutation_apply (const disarray_rep< size_type, distributed, A2 > &new_numbering, disarray_rep< T, distributed, A > &new_disarray) const |
template<class A2 > | |
void | reverse_permutation (disarray_rep< size_type, distributed, A2 > &inew2dis_iold) const |
idiststream & | get_values (idiststream &s) |
odiststream & | put_values (odiststream &s) const |
odiststream & | put_matlab (odiststream &s) const |
template<class GetFunction > | |
idiststream & | get_values (idiststream &ips, GetFunction get_element) |
template<class PutFunction > | |
odiststream & | put_values (odiststream &ops, PutFunction put_element) const |
template<class PutFunction , class A2 > | |
odiststream & | permuted_put_values (odiststream &ops, const disarray_rep< size_type, distributed, A2 > &perm, PutFunction put_element) const |
void | dump (std::string name) const |
template<class U , class SetOp > | |
void | set_dis_entry (size_type dis_i, const U &val, const SetOp &set_op) |
template<class Set , class Map > | |
void | append_dis_entry (const Set &ext_idx_set, Map &ext_idx_map, std::true_type) const |
get values from ext_idx_set, that are managed by another proc; here T=container type | |
template<class Set , class Map > | |
void | append_dis_entry (const Set &ext_idx_set, Map &ext_idx_map, std::false_type) const |
get values from ext_idx_set, that are managed by another proc; here T=simple type | |
![]() | |
disarray_rep (const A &alloc=A()) | |
disarray_rep (const distributor &ownership, const T &init_val=T(), const A &alloc=A()) | |
void | resize (const distributor &ownership, const T &init_val=T()) |
disarray_rep (size_type loc_size=0, const T &init_val=T(), const A &alloc=A()) | |
void | resize (size_type loc_size=0, const T &init_val=T()) |
disarray_rep (const disarray_rep< T, sequential, A > &x) | |
A | get_allocator () const |
size_type | size () const |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
const distributor & | ownership () const |
reference | operator[] (size_type i) |
const_reference | operator[] (size_type i) const |
const_reference | dis_at (size_type dis_i) const |
size_type | dis_size () const |
size_type | first_index () const |
size_type | last_index () const |
reference | dis_entry (size_type dis_i) |
void | get_dis_indexes (std::set< size_type > &ext_idx_set) const |
void | reset_dis_indexes () const |
template<class SetOp = typename details::default_set_op_traits<T>::type> | |
void | dis_entry_assembly_begin (SetOp=SetOp()) |
template<class SetOp = typename details::default_set_op_traits<T>::type> | |
void | dis_entry_assembly_end (SetOp=SetOp()) |
void | repartition (const disarray_rep< size_type, sequential, A > &partition, disarray_rep< T, sequential, A > &new_disarray, disarray_rep< size_type, sequential, A > &old_numbering, disarray_rep< size_type, sequential, A > &new_numbering) const |
template<class A2 > | |
void | reverse_permutation (disarray_rep< size_type, sequential, A2 > &inew2dis_iold) const |
idiststream & | get_values (idiststream &s) |
odiststream & | put_values (odiststream &s) const |
odiststream & | put_matlab (odiststream &s) const |
template<class GetFunction > | |
idiststream & | get_values (idiststream &ips, GetFunction get_element) |
template<class PutFunction > | |
odiststream & | put_values (odiststream &ops, PutFunction put_element) const |
void | dump (std::string name) const |
Public Attributes | |
stash_map_type | _stash |
message_type | _send |
message_type | _receive |
size_type | _receive_max_size |
scatter_map_type | _ext_x |
Additional Inherited Members | |
![]() | |
distributor | _ownership |
using base = disarray_rep<T,sequential,A> |
Definition at line 295 of file disarray.h.
using size_type = typename base::size_type |
Definition at line 296 of file disarray.h.
using value_type = typename base::value_type |
Definition at line 297 of file disarray.h.
using memory_type = distributed |
Definition at line 298 of file disarray.h.
using iterator = typename base::iterator |
Definition at line 299 of file disarray.h.
using const_iterator = typename base::const_iterator |
Definition at line 300 of file disarray.h.
using reference = typename base::reference |
Definition at line 301 of file disarray.h.
using const_reference = typename base::const_reference |
Definition at line 302 of file disarray.h.
using difference_type = typename base::difference_type |
Definition at line 303 of file disarray.h.
Definition at line 304 of file disarray.h.
using scatter_map_type = std::map <size_type, T> |
Definition at line 305 of file disarray.h.
using dis_reference = disarray_dis_reference<T,A> |
Definition at line 306 of file disarray.h.
typedef details::is_container_of_mpi_datatype<T>::type is_container |
Definition at line 416 of file disarray.h.
typedef stash_traits<T,is_container>::mapped_type stash_value |
Definition at line 417 of file disarray.h.
typedef stash_traits<T,is_container>::map_type stash_map_type |
Definition at line 418 of file disarray.h.
disarray_rep | ( | const distributor & | ownership, |
const T & | init_val = T() , |
||
const A & | alloc = A() |
||
) |
Definition at line 55 of file disarray_mpi.icc.
disarray_rep | ( | const disarray_rep< T, distributed, A > & | x | ) |
Definition at line 41 of file disarray_mpi.icc.
void resize | ( | const distributor & | ownership, |
const T & | init_val = T() |
||
) |
Definition at line 69 of file disarray_mpi.icc.
Definition at line 314 of file disarray.h.
Definition at line 315 of file disarray.h.
const_iterator begin | ( | ) | const |
Definition at line 316 of file disarray.h.
const_iterator end | ( | ) | const |
Definition at line 317 of file disarray.h.
Definition at line 318 of file disarray.h.
Definition at line 319 of file disarray.h.
const distributor & ownership | ( | ) | const |
Definition at line 321 of file disarray.h.
Definition at line 322 of file disarray.h.
Definition at line 323 of file disarray.h.
Definition at line 324 of file disarray.h.
Definition at line 325 of file disarray.h.
dis_reference dis_entry | ( | size_type | dis_i | ) |
Definition at line 327 of file disarray.h.
void dis_entry_assembly_begin | ( | SetOp | my_set_op = SetOp() | ) |
Definition at line 220 of file disarray_mpi.icc.
void dis_entry_assembly_end | ( | SetOp | my_set_op = SetOp() | ) |
Definition at line 235 of file disarray_mpi.icc.
void dis_entry_assembly | ( | SetOp | my_set_op = SetOp() | ) |
Definition at line 334 of file disarray.h.
void append_dis_entry | ( | const Set & | ext_idx_set, |
Map & | ext_idx_map | ||
) | const |
get values from ext_idx_set, that are managed by another proc
Definition at line 509 of file disarray_mpi.icc.
void get_dis_entry | ( | const Set & | ext_idx_set, |
Map & | ext_idx_map | ||
) | const |
Definition at line 341 of file disarray.h.
void append_dis_indexes | ( | const Set & | ext_idx_set | ) | const |
Definition at line 347 of file disarray.h.
void set_dis_indexes | ( | const Set & | ext_idx_set | ) | const |
Definition at line 350 of file disarray.h.
Definition at line 527 of file disarray_mpi.icc.
Definition at line 402 of file disarray_mpi.icc.
disarray_rep< T, distributed, A >::const_reference dis_at | ( | size_type | dis_i | ) | const |
Definition at line 515 of file disarray_mpi.icc.
const scatter_map_type & get_dis_map_entries | ( | ) | const |
Definition at line 357 of file disarray.h.
void repartition | ( | const disarray_rep< size_type, distributed, A2 > & | partition, |
disarray_rep< T, distributed, A > & | new_disarray, | ||
disarray_rep< size_type, distributed, A2 > & | old_numbering, | ||
disarray_rep< size_type, distributed, A2 > & | new_numbering | ||
) | const |
Definition at line 259 of file disarray_mpi.icc.
void permutation_apply | ( | const disarray_rep< size_type, distributed, A2 > & | new_numbering, |
disarray_rep< T, distributed, A > & | new_disarray | ||
) | const |
Definition at line 326 of file disarray_mpi.icc.
void reverse_permutation | ( | disarray_rep< size_type, distributed, A2 > & | inew2dis_iold | ) | const |
Definition at line 310 of file disarray_mpi.icc.
idiststream & get_values | ( | idiststream & | s | ) |
Definition at line 655 of file disarray_mpi.icc.
odiststream & put_values | ( | odiststream & | s | ) | const |
Definition at line 580 of file disarray_mpi.icc.
odiststream & put_matlab | ( | odiststream & | s | ) | const |
Definition at line 586 of file disarray_mpi.icc.
idiststream & get_values | ( | idiststream & | ips, |
GetFunction | get_element | ||
) |
Definition at line 615 of file disarray_mpi.icc.
odiststream & put_values | ( | odiststream & | ops, |
PutFunction | put_element | ||
) | const |
Definition at line 540 of file disarray_mpi.icc.
odiststream & permuted_put_values | ( | odiststream & | ops, |
const disarray_rep< size_type, distributed, A2 > & | perm, | ||
PutFunction | put_element | ||
) | const |
Definition at line 595 of file disarray_mpi.icc.
Definition at line 661 of file disarray_mpi.icc.
void set_dis_entry | ( | size_type | dis_i, |
const U & | val, | ||
const SetOp & | set_op | ||
) |
Definition at line 147 of file disarray_mpi.icc.
void append_dis_entry | ( | const Set & | ext_idx_set, |
Map & | ext_idx_map, | ||
std::true_type | |||
) | const |
get values from ext_idx_set, that are managed by another proc; here T=container type
3) scatter (get_entry): specialized versions for T=container and T=simple type
Definition at line 414 of file disarray_mpi.icc.
void append_dis_entry | ( | const Set & | ext_idx_set, |
Map & | ext_idx_map, | ||
std::false_type | |||
) | const |
get values from ext_idx_set, that are managed by another proc; here T=simple type
Definition at line 345 of file disarray_mpi.icc.
stash_map_type _stash |
Definition at line 435 of file disarray.h.
Definition at line 436 of file disarray.h.
Definition at line 437 of file disarray.h.
Definition at line 438 of file disarray.h.
|
mutable |
Definition at line 439 of file disarray.h.