|
Rheolef
7.2
an efficient C++ finite element environment
|
forward decl
Definition at line 290 of file disarray.h.
Inheritance diagram for disarray_rep< T, distributed, A >: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 Types | |
| using | base = disarray_rep< T, sequential, A > |
| using | size_type = typename base::size_type |
| using | value_type = typename base::value_type |
| using | memory_type = distributed |
| using | iterator = typename base::iterator |
| using | const_iterator = typename base::const_iterator |
| using | reference = typename base::reference |
| using | const_reference = typename base::const_reference |
| using | difference_type = typename base::difference_type |
| using | communicator_type = distributor::communicator_type |
| using | scatter_map_type = std::map< size_type, T > |
| using | dis_reference = disarray_dis_reference< T, A > |
| typedef details::is_container_of_mpi_datatype< T >::type | is_container |
| typedef stash_traits< T, is_container >::mapped_type | stash_value |
| typedef stash_traits< T, is_container >::map_type | stash_map_type |
Public Types inherited from disarray_rep< T, sequential, A > | |
| typedef T | value_type |
| typedef A | allocator_type |
| typedef A::difference_type | difference_type |
| typedef std::vector< T > | base |
| typedef base::size_type | size_type |
| typedef base::iterator | iterator |
| typedef base::const_iterator | const_iterator |
| typedef base::const_reference | const_reference |
| typedef base::reference | reference |
| typedef reference | dis_reference |
| typedef distributor::communicator_type | communicator_type |
| typedef sequential | memory_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 More... | |
| 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 More... | |
| 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 More... | |
Public Member Functions inherited from disarray_rep< T, sequential, A > | |
| 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 | |
Protected Attributes inherited from disarray_rep< T, sequential, A > | |
| 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.
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.
| A get_allocator | ( | ) | const |
Definition at line 314 of file disarray.h.
| size_type size | ( | ) | const |
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.
| iterator begin | ( | ) |
Definition at line 318 of file disarray.h.
| iterator end | ( | ) |
Definition at line 319 of file disarray.h.
| const distributor& ownership | ( | ) | const |
Definition at line 321 of file disarray.h.
| const mpi::communicator& comm | ( | ) | const |
Definition at line 322 of file disarray.h.
| size_type first_index | ( | ) | const |
Definition at line 323 of file disarray.h.
| size_type last_index | ( | ) | const |
Definition at line 324 of file disarray.h.
| size_type dis_size | ( | ) | const |
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.
| void get_dis_indexes | ( | std::set< size_type > & | ext_idx_set | ) | const |
Definition at line 527 of file disarray_mpi.icc.
| void reset_dis_indexes |
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.
| void dump | ( | std::string | name | ) | const |
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.
| message_type _send |
Definition at line 436 of file disarray.h.
| message_type _receive |
Definition at line 437 of file disarray.h.
| size_type _receive_max_size |
Definition at line 438 of file disarray.h.
|
mutable |
Definition at line 439 of file disarray.h.