parallel_mesh_iterators.C
Go to the documentation of this file.
1 // The libParallelMesh Finite Element Library.
2 // Copyright (C) 2002-2014 Benjamin S. Kirk, John W. Peterson, Roy H. Stogner
3 
4 // This library is free software; you can redistribute it and/or
5 // modify it under the terms of the GNU Lesser General Public
6 // License as published by the Free Software Foundation; either
7 // version 2.1 of the License, or (at your option) any later version.
8 
9 // This library is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 // Lesser General Public License for more details.
13 
14 // You should have received a copy of the GNU Lesser General Public
15 // License along with this library; if not, write to the Free Software
16 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 
18 
19 
20 // C++ includes
21 
22 // Local includes
23 // #include "libmesh/mesh_base.h"
24 #include "libmesh/parallel_mesh.h"
25 #include "libmesh/elem.h"
26 
27 namespace libMesh
28 {
29 
30 // This file contains the implementation of all the different iterator
31 // functions for the mesh class. They were put here to save space in the
32 // header files.
33 
34 
35 // default begin() accessor
36 ParallelMesh::element_iterator
38 {
40  return element_iterator(_elements.begin(), _elements.end(), p);
41 }
42 
43 
44 
45 // active elements begin() accessor
46 ParallelMesh::element_iterator
48 {
50  return element_iterator(_elements.begin(), _elements.end(), p);
51 }
52 
53 
54 
55 // not active elements begin() accessor
56 ParallelMesh::element_iterator
58 {
60  return element_iterator(_elements.begin(), _elements.end(), p);
61 }
62 
63 
64 
65 // ancestor elements begin() accessor
66 ParallelMesh::element_iterator
68 {
70  return element_iterator(_elements.begin(), _elements.end(), p);
71 }
72 
73 
74 
75 // not ancestor elements begin() accessor
76 ParallelMesh::element_iterator
78 {
80  return element_iterator(_elements.begin(), _elements.end(), p);
81 }
82 
83 
84 
85 // subactive elements begin() accessor
86 ParallelMesh::element_iterator
88 {
90  return element_iterator(_elements.begin(), _elements.end(), p);
91 }
92 
93 
94 
95 // not subactive elements begin() accessor
96 ParallelMesh::element_iterator
98 {
100  return element_iterator(_elements.begin(), _elements.end(), p);
101 }
102 
103 
104 
105 // local elements begin() accessor
106 ParallelMesh::element_iterator
108 {
110  return element_iterator(_elements.begin(), _elements.end(), p);
111 }
112 
113 
114 
115 // not_local elements begin() accessor
116 ParallelMesh::element_iterator
118 {
120  return element_iterator(_elements.begin(), _elements.end(), p);
121 }
122 
123 
124 
125 // active local elements begin() accessor
126 ParallelMesh::element_iterator
128 {
130  return element_iterator(_elements.begin(), _elements.end(), p);
131 }
132 
133 
134 
135 // active_not_local elements begin() accessor
136 ParallelMesh::element_iterator
138 {
140  return element_iterator(_elements.begin(), _elements.end(), p);
141 }
142 
143 
144 
145 // level elements begin() accessor
146 ParallelMesh::element_iterator
147 ParallelMesh::level_elements_begin (const unsigned int level)
148 {
150  return element_iterator(_elements.begin(), _elements.end(), p);
151 }
152 
153 
154 
155 // not level elements begin() accessor
156 ParallelMesh::element_iterator
157 ParallelMesh::not_level_elements_begin (const unsigned int level)
158 {
160  return element_iterator(_elements.begin(), _elements.end(), p);
161 }
162 
163 
164 
165 // local level elements begin() accessor
166 ParallelMesh::element_iterator
168 {
170  return element_iterator(_elements.begin(), _elements.end(), p);
171 }
172 
173 
174 
175 // local not level elements begin() accessor
176 ParallelMesh::element_iterator
178 {
180  return element_iterator(_elements.begin(), _elements.end(), p);
181 }
182 
183 
184 
185 // pid elements begin() accessor
186 ParallelMesh::element_iterator
188 {
190  return element_iterator(_elements.begin(), _elements.end(), p);
191 }
192 
193 
194 
195 // type elements begin() accessor
196 ParallelMesh::element_iterator
198 {
200  return element_iterator(_elements.begin(), _elements.end(), p);
201 }
202 
203 
204 
205 // active type elements begin() accessor
206 ParallelMesh::element_iterator
208 {
210  return element_iterator(_elements.begin(), _elements.end(), p);
211 }
212 
213 
214 
215 // active pid elements begin() accessor
216 ParallelMesh::element_iterator
218 {
220  return element_iterator(_elements.begin(), _elements.end(), p);
221 }
222 
223 
224 
225 // unpartitioned elements begin() accessor
226 ParallelMesh::element_iterator
228 {
230 }
231 
232 
233 
234 // subdomain elements begin() accessor
235 ParallelMesh::element_iterator
237 {
239  return element_iterator(_elements.begin(), _elements.end(), p);
240 }
241 
242 
243 
244 // subdomain elements begin() accessor
245 ParallelMesh::element_iterator
247 {
249  return element_iterator(_elements.begin(), _elements.end(), p);
250 }
251 
252 
253 
254 
255 
256 
257 
258 
259 
260 // default const begin() accessor
263 {
265  return const_element_iterator(_elements.begin(), _elements.end(), p);
266 }
267 
268 
269 
270 // const active begin() accessor
273 {
275  return const_element_iterator(_elements.begin(), _elements.end(), p);
276 }
277 
278 
279 // const not active begin() accessor
282 {
284  return const_element_iterator(_elements.begin(), _elements.end(), p);
285 }
286 
287 
288 
289 // const ancestor begin() accessor
292 {
294  return const_element_iterator(_elements.begin(), _elements.end(), p);
295 }
296 
297 
298 
299 // const not ancestor begin() accessor
302 {
304  return const_element_iterator(_elements.begin(), _elements.end(), p);
305 }
306 
307 
308 
309 // const subactive begin() accessor
312 {
314  return const_element_iterator(_elements.begin(), _elements.end(), p);
315 }
316 
317 
318 
319 // const not subactive begin() accessor
322 {
324  return const_element_iterator(_elements.begin(), _elements.end(), p);
325 }
326 
327 
328 
329 // const local begin() accessor
332 {
334  return const_element_iterator(_elements.begin(), _elements.end(), p);
335 }
336 
337 
338 
339 // const not_local begin() accessor
342 {
344  return const_element_iterator(_elements.begin(), _elements.end(), p);
345 }
346 
347 
348 
349 // const active local begin() accessor
352 {
354  return const_element_iterator(_elements.begin(), _elements.end(), p);
355 }
356 
357 
358 
359 // const active not_local begin() accessor
362 {
364  return const_element_iterator(_elements.begin(), _elements.end(), p);
365 }
366 
367 
368 
369 // const level begin() accessor
371 ParallelMesh::level_elements_begin (const unsigned int level) const
372 {
374  return const_element_iterator(_elements.begin(), _elements.end(), p);
375 }
376 
377 
378 
379 // const not level begin() accessor
381 ParallelMesh::not_level_elements_begin (const unsigned int level) const
382 {
384  return const_element_iterator(_elements.begin(), _elements.end(), p);
385 }
386 
387 
388 
389 // const local level begin() accessor
391 ParallelMesh::local_level_elements_begin (const unsigned int level) const
392 {
394  return const_element_iterator(_elements.begin(), _elements.end(), p);
395 }
396 
397 
398 
399 // const local not level begin() accessor
401 ParallelMesh::local_not_level_elements_begin (const unsigned int level) const
402 {
404  return const_element_iterator(_elements.begin(), _elements.end(), p);
405 }
406 
407 
408 
409 // const pid begin() accessor
412 {
414  return const_element_iterator(_elements.begin(), _elements.end(), p);
415 }
416 
417 
418 
419 // const type begin() accessor
422 {
424  return const_element_iterator(_elements.begin(), _elements.end(), p);
425 }
426 
427 
428 
429 // const active type begin() accessor
432 {
434  return const_element_iterator(_elements.begin(), _elements.end(), p);
435 }
436 
437 
438 
439 // const active pid elements begin() accessor
442 {
444  return const_element_iterator(_elements.begin(), _elements.end(), p);
445 }
446 
447 
448 
449 // unpartitioned elements begin() accessor
452 {
454 }
455 
456 
457 
458 // subdomain elements begin() accessor
461 {
463  return const_element_iterator(_elements.begin(), _elements.end(), p);
464 }
465 
466 
467 
468 // subdomain elements begin() accessor
471 {
473  return const_element_iterator(_elements.begin(), _elements.end(), p);
474 }
475 
476 
477 
478 
479 
480 
481 
482 // default end() accessor
483 ParallelMesh::element_iterator
485 {
487  return element_iterator(_elements.end(), _elements.end(), p);
488 }
489 
490 
491 
492 // active end() accessor
493 ParallelMesh::element_iterator
495 {
497  return element_iterator(_elements.end(), _elements.end(), p);
498 }
499 
500 
501 
502 // active end() accessor
503 ParallelMesh::element_iterator
505 {
507  return element_iterator(_elements.end(), _elements.end(), p);
508 }
509 
510 
511 
512 // ancestor end() accessor
513 ParallelMesh::element_iterator
515 {
517  return element_iterator(_elements.end(), _elements.end(), p);
518 }
519 
520 
521 
522 // ancestor end() accessor
523 ParallelMesh::element_iterator
525 {
527  return element_iterator(_elements.end(), _elements.end(), p);
528 }
529 
530 
531 
532 // subactive end() accessor
533 ParallelMesh::element_iterator
535 {
537  return element_iterator(_elements.end(), _elements.end(), p);
538 }
539 
540 
541 
542 // subactive end() accessor
543 ParallelMesh::element_iterator
545 {
547  return element_iterator(_elements.end(), _elements.end(), p);
548 }
549 
550 
551 
552 // local end() accessor
553 ParallelMesh::element_iterator
555 {
557  return element_iterator(_elements.end(), _elements.end(), p);
558 }
559 
560 
561 
562 // not_local end() accessor
563 ParallelMesh::element_iterator
565 {
567  return element_iterator(_elements.end(), _elements.end(), p);
568 }
569 
570 
571 
572 // active local end() accessor
573 ParallelMesh::element_iterator
575 {
577  return element_iterator(_elements.end(), _elements.end(), p);
578 }
579 
580 
581 
582 // not_local end() accessor
583 ParallelMesh::element_iterator
585 {
587  return element_iterator(_elements.end(), _elements.end(), p);
588 }
589 
590 
591 
592 // level end() accessor
593 ParallelMesh::element_iterator
594 ParallelMesh::level_elements_end (const unsigned int level)
595 {
597  return element_iterator(_elements.end(), _elements.end(), p);
598 }
599 
600 
601 
602 // not level end() accessor
603 ParallelMesh::element_iterator
604 ParallelMesh::not_level_elements_end (const unsigned int level)
605 {
607  return element_iterator(_elements.end(), _elements.end(), p);
608 }
609 
610 
611 
612 // local level end() accessor
613 ParallelMesh::element_iterator
614 ParallelMesh::local_level_elements_end (const unsigned int level)
615 {
617  return element_iterator(_elements.end(), _elements.end(), p);
618 }
619 
620 
621 
622 // local not level end() accessor
623 ParallelMesh::element_iterator
625 {
627  return element_iterator(_elements.end(), _elements.end(), p);
628 }
629 
630 
631 
632 // pid end() accessor
633 ParallelMesh::element_iterator
635 {
637  return element_iterator(_elements.end(), _elements.end(), p);
638 }
639 
640 
641 
642 // type end() accessor
643 ParallelMesh::element_iterator
645 {
647  return element_iterator(_elements.end(), _elements.end(), p);
648 }
649 
650 
651 
652 // active type end() accessor
653 ParallelMesh::element_iterator
655 {
657  return element_iterator(_elements.end(), _elements.end(), p);
658 }
659 
660 
661 
662 // active PID end() accessor
663 ParallelMesh::element_iterator
665 {
667  return element_iterator(_elements.end(), _elements.end(), p);
668 }
669 
670 
671 
672 // unpartitioned elements end() accessor
673 ParallelMesh::element_iterator
675 {
677 }
678 
679 
680 
681 // subdomain elements end() accessor
682 ParallelMesh::element_iterator
684 {
686  return element_iterator(_elements.end(), _elements.end(), p);
687 }
688 
689 
690 
691 // subdomain elements end() accessor
692 ParallelMesh::element_iterator
694 {
696  return element_iterator(_elements.end(), _elements.end(), p);
697 }
698 
699 
700 
701 
702 
703 
704 
705 
706 
707 // default const end() accessor
710 {
712  return const_element_iterator(_elements.end(), _elements.end(), p);
713 }
714 
715 
716 
717 // active const end() accessor
720 {
722  return const_element_iterator(_elements.end(), _elements.end(), p);
723 }
724 
725 
726 
727 // not active const end() accessor
730 {
732  return const_element_iterator(_elements.end(), _elements.end(), p);
733 }
734 
735 
736 
737 // ancestor const end() accessor
740 {
742  return const_element_iterator(_elements.end(), _elements.end(), p);
743 }
744 
745 
746 
747 // not ancestor const end() accessor
750 {
752  return const_element_iterator(_elements.end(), _elements.end(), p);
753 }
754 
755 
756 
757 // subactive const end() accessor
760 {
762  return const_element_iterator(_elements.end(), _elements.end(), p);
763 }
764 
765 
766 
767 // not subactive const end() accessor
770 {
772  return const_element_iterator(_elements.end(), _elements.end(), p);
773 }
774 
775 
776 
777 // local const end() accessor
780 {
782  return const_element_iterator(_elements.end(), _elements.end(), p);
783 }
784 
785 
786 
787 // not_local const end() accessor
790 {
792  return const_element_iterator(_elements.end(), _elements.end(), p);
793 }
794 
795 
796 
797 // local active const end() accessor
800 {
802  return const_element_iterator(_elements.end(), _elements.end(), p);
803 }
804 
805 
806 
807 // const local active const end() accessor
810 {
812  return const_element_iterator(_elements.end(), _elements.end(), p);
813 }
814 
815 
816 
817 // level const end() accessor
819 ParallelMesh::level_elements_end (const unsigned int level) const
820 {
822  return const_element_iterator(_elements.end(), _elements.end(), p);
823 }
824 
825 
826 
827 // not level const end() accessor
829 ParallelMesh::not_level_elements_end (const unsigned int level) const
830 {
832  return const_element_iterator(_elements.end(), _elements.end(), p);
833 }
834 
835 
836 
837 // local level const end() accessor
839 ParallelMesh::local_level_elements_end (const unsigned int level) const
840 {
842  return const_element_iterator(_elements.end(), _elements.end(), p);
843 }
844 
845 
846 
847 // local not level const end() accessor
849 ParallelMesh::local_not_level_elements_end (const unsigned int level) const
850 {
852  return const_element_iterator(_elements.end(), _elements.end(), p);
853 }
854 
855 
856 // pid const end() accessor
859 {
861  return const_element_iterator(_elements.end(), _elements.end(), p);
862 }
863 
864 
865 
866 // type const end() accessor
869 {
871  return const_element_iterator(_elements.end(), _elements.end(), p);
872 }
873 
874 
875 
876 // active type const end() accessor
879 {
881  return const_element_iterator(_elements.end(), _elements.end(), p);
882 }
883 
884 
885 
886 // active PID end() accessor
889 {
891  return const_element_iterator(_elements.end(), _elements.end(), p);
892 }
893 
894 
895 
896 // unpartitioned elements end() accessor
899 {
901 }
902 
903 
904 
905 // subdomain elements end() accessor
908 {
910  return const_element_iterator(_elements.end(), _elements.end(), p);
911 }
912 
913 
914 
915 // subdomain elements end() accessor
918 {
920  return const_element_iterator(_elements.end(), _elements.end(), p);
921 }
922 
923 
924 
925 
926 
927 
928 
929 // default nodes begin() accessor
930 ParallelMesh::node_iterator
932 {
934  return node_iterator(_nodes.begin(), _nodes.end(), p);
935 }
936 
937 
938 
939 // active nodes begin() accessor
940 ParallelMesh::node_iterator
942 {
944  return node_iterator(_nodes.begin(), _nodes.end(), p);
945 }
946 
947 
948 
949 // local nodes begin() accessor
950 ParallelMesh::node_iterator
952 {
954  return node_iterator(_nodes.begin(), _nodes.end(), p);
955 }
956 
957 
958 
959 // pid nodes begin() accessor
960 ParallelMesh::node_iterator
962 {
964  return node_iterator(_nodes.begin(), _nodes.end(), p);
965 }
966 
967 
968 
969 // default const nodes begin() accessor
972 {
974  return const_node_iterator(_nodes.begin(), _nodes.end(), p);
975 }
976 
977 
978 
979 // active const nodes begin() accessor
982 {
984  return const_node_iterator(_nodes.begin(), _nodes.end(), p);
985 }
986 
987 
988 
989 // local const nodes begin() accessor
992 {
994  return const_node_iterator(_nodes.begin(), _nodes.end(), p);
995 }
996 
997 
998 
999 // pid const nodes begin() accessor
1002 {
1004  return const_node_iterator(_nodes.begin(), _nodes.end(), p);
1005 }
1006 
1007 
1008 
1009 // default nodes end() accessor
1010 ParallelMesh::node_iterator
1012 {
1014  return node_iterator(_nodes.end(), _nodes.end(), p);
1015 }
1016 
1017 
1018 
1019 // active nodes end() accessor
1020 ParallelMesh::node_iterator
1022 {
1024  return node_iterator(_nodes.end(), _nodes.end(), p);
1025 }
1026 
1027 
1028 
1029 // local nodes end() accessor
1030 ParallelMesh::node_iterator
1032 {
1034  return node_iterator(_nodes.end(), _nodes.end(), p);
1035 }
1036 
1037 
1038 
1039 // pid nodes end() accessor
1040 ParallelMesh::node_iterator
1042 {
1044  return node_iterator(_nodes.end(), _nodes.end(), p);
1045 }
1046 
1047 
1048 
1049 // default const nodes end() accessor
1052 {
1054  return const_node_iterator(_nodes.end(), _nodes.end(), p);
1055 }
1056 
1057 
1058 
1059 // const active nodes end() accessor
1062 {
1064  return const_node_iterator(_nodes.end(), _nodes.end(), p);
1065 }
1066 
1067 
1068 
1069 // local const nodes end() accessor
1072 {
1074  return const_node_iterator(_nodes.end(), _nodes.end(), p);
1075 }
1076 
1077 
1078 
1079 // pid const nodes end() accessor
1082 {
1084  return const_node_iterator(_nodes.end(), _nodes.end(), p);
1085 }
1086 
1087 } // namespace libMesh

Site Created By: libMesh Developers
Last modified: February 07 2014 16:57:06 UTC

Hosted By:
SourceForge.net Logo