{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.k9SEL8pF/b1/deal.ii_9.6.2-4_amd64.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.k9SEL8pF/b2/deal.ii_9.6.2-4_amd64.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,5 +1,5 @@\n \n 1c29cf696174139c5ca4e74fdb6fddd8 1066297928 debug optional libdeal.ii-9.6.2-dbgsym_9.6.2-4_amd64.deb\n 998d32ef6d558786234178280e8d27c1 91453656 libs optional libdeal.ii-9.6.2_9.6.2-4_amd64.deb\n 41addbaaa256971cca70637e9e76f17c 2258276 libdevel optional libdeal.ii-dev_9.6.2-4_amd64.deb\n- 911b745cf4bb9bc8e9c9a0eef2332256 286234668 doc optional libdeal.ii-doc_9.6.2-4_all.deb\n+ 5548402971eea624cc9db1478b53306b 286287852 doc optional libdeal.ii-doc_9.6.2-4_all.deb\n"}, {"source1": "libdeal.ii-doc_9.6.2-4_all.deb", "source2": "libdeal.ii-doc_9.6.2-4_all.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2025-06-30 07:29:44.000000 debian-binary\n--rw-r--r-- 0 0 0 270520 2025-06-30 07:29:44.000000 control.tar.xz\n--rw-r--r-- 0 0 0 285963956 2025-06-30 07:29:44.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 270708 2025-06-30 07:29:44.000000 control.tar.xz\n+-rw-r--r-- 0 0 0 286016952 2025-06-30 07:29:44.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./control", "source2": "./control", "unified_diff": "@@ -1,13 +1,13 @@\n Package: libdeal.ii-doc\n Source: deal.ii\n Version: 9.6.2-4\n Architecture: all\n Maintainer: Debian Science Maintainers \n-Installed-Size: 644713\n+Installed-Size: 644380\n Depends: fonts-mathjax-extras, libjs-mathjax\n Section: doc\n Priority: optional\n Multi-Arch: foreign\n Homepage: http://www.dealii.org/\n Description: Differential Equations Analysis Library - html doc. and examples\n deal.II is a C++ program library targeted at the computational solution of\n"}, {"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -539,15 +539,15 @@\n -rw-r--r-- 0 root (0) root (0) 8168 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__sparsity__pattern_8h.html\n -rw-r--r-- 0 root (0) root (0) 151334 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__sparsity__pattern_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 4843 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__vector_8cc.html\n -rw-r--r-- 0 root (0) root (0) 12435 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__vector_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 10583 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__vector_8h.html\n -rw-r--r-- 0 root (0) root (0) 90712 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__vector_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 12390 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__vector__base_8h.html\n--rw-r--r-- 0 root (0) root (0) 365234 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__vector__base_8h_source.html\n+-rw-r--r-- 0 root (0) root (0) 364420 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__vector__base_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 101212 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/boolean_difference.png\n -rw-r--r-- 0 root (0) root (0) 85402 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/boolean_intersection.png\n -rw-r--r-- 0 root (0) root (0) 107086 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/boolean_union.png\n -rw-r--r-- 0 root (0) root (0) 708213 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/boolean_union_hyper_spheres.png\n -rw-r--r-- 0 root (0) root (0) 852066 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/boolean_union_hyper_spheres_remeshed.png\n -rw-r--r-- 0 root (0) root (0) 8505 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/boost__adaptors_2bounding__box_8h.html\n -rw-r--r-- 0 root (0) root (0) 25471 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/boost__adaptors_2bounding__box_8h_source.html\n@@ -604,29 +604,29 @@\n -rw-r--r-- 0 root (0) root (0) 65584 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_6_1_and_6_2.html\n -rw-r--r-- 0 root (0) root (0) 5676 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_6_2_0_and_6_2_1.html\n -rw-r--r-- 0 root (0) root (0) 53953 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_6_2_and_6_3.html\n -rw-r--r-- 0 root (0) root (0) 9952 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_6_3_0_and_6_3_1.html\n -rw-r--r-- 0 root (0) root (0) 36566 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_6_3_and_7_0.html\n -rw-r--r-- 0 root (0) root (0) 49560 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_7_0_and_7_1.html\n -rw-r--r-- 0 root (0) root (0) 45297 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_7_1_and_7_2.html\n--rw-r--r-- 0 root (0) root (0) 34110 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_7_2_and_7_3.html\n+-rw-r--r-- 0 root (0) root (0) 34013 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_7_2_and_7_3.html\n -rw-r--r-- 0 root (0) root (0) 36053 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_7_3_and_8_0.html\n -rw-r--r-- 0 root (0) root (0) 38473 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_0_and_8_1.html\n -rw-r--r-- 0 root (0) root (0) 70104 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_1_and_8_2.html\n -rw-r--r-- 0 root (0) root (0) 5002 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_2_0_and_8_2_1.html\n -rw-r--r-- 0 root (0) root (0) 64815 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_2_1_and_8_3.html\n -rw-r--r-- 0 root (0) root (0) 63639 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_3_and_8_4.html\n -rw-r--r-- 0 root (0) root (0) 4799 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_4_0_and_8_4_1.html\n -rw-r--r-- 0 root (0) root (0) 5761 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_4_1_and_8_4_2.html\n--rw-r--r-- 0 root (0) root (0) 100928 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_4_2_and_8_5_0.html\n+-rw-r--r-- 0 root (0) root (0) 100831 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_4_2_and_8_5_0.html\n -rw-r--r-- 0 root (0) root (0) 157651 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_5_0_and_9_0_0.html\n -rw-r--r-- 0 root (0) root (0) 5601 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_0_0_and_9_0_1.html\n -rw-r--r-- 0 root (0) root (0) 98908 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_0_1_and_9_1_0.html\n -rw-r--r-- 0 root (0) root (0) 4931 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_1_0_and_9_1_1.html\n--rw-r--r-- 0 root (0) root (0) 124799 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_1_1_and_9_2_0.html\n+-rw-r--r-- 0 root (0) root (0) 124702 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_1_1_and_9_2_0.html\n -rw-r--r-- 0 root (0) root (0) 85740 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_2_0_and_9_3_0.html\n -rw-r--r-- 0 root (0) root (0) 6016 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_3_0_and_9_3_1.html\n -rw-r--r-- 0 root (0) root (0) 5353 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_3_1_and_9_3_2.html\n -rw-r--r-- 0 root (0) root (0) 6165 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_3_2_and_9_3_3.html\n -rw-r--r-- 0 root (0) root (0) 86285 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_3_3_and_9_4_0.html\n -rw-r--r-- 0 root (0) root (0) 56210 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_4_0_and_9_5_0.html\n -rw-r--r-- 0 root (0) root (0) 5381 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_5_0_and_9_5_2.html\n@@ -2115,15 +2115,15 @@\n -rw-r--r-- 0 root (0) root (0) 84974 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1CUDAWrappers_1_1Vector.html\n -rw-r--r-- 0 root (0) root (0) 8077 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1CommunicationPattern-members.html\n -rw-r--r-- 0 root (0) root (0) 20695 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1CommunicationPattern.html\n -rw-r--r-- 0 root (0) root (0) 450 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1CommunicationPattern__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1CommunicationPattern__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 8499 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1CommunicationPattern__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 32162 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1Vector-members.html\n--rw-r--r-- 0 root (0) root (0) 164981 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1Vector.html\n+-rw-r--r-- 0 root (0) root (0) 139375 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1Vector.html\n -rw-r--r-- 0 root (0) root (0) 5713 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1VectorTraits-members.html\n -rw-r--r-- 0 root (0) root (0) 8822 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1VectorTraits.html\n -rw-r--r-- 0 root (0) root (0) 829 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1Vector__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1Vector__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 17107 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1Vector__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 39717 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1ReadWriteVector-members.html\n -rw-r--r-- 0 root (0) root (0) 193483 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1ReadWriteVector.html\n@@ -2275,15 +2275,15 @@\n -rw-r--r-- 0 root (0) root (0) 17656 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPatternIterators_1_1Accessor__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 11453 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPatternIterators_1_1Iterator-members.html\n -rw-r--r-- 0 root (0) root (0) 30752 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPatternIterators_1_1Iterator.html\n -rw-r--r-- 0 root (0) root (0) 936 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 19470 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 44554 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1Vector-members.html\n--rw-r--r-- 0 root (0) root (0) 245578 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1Vector.html\n+-rw-r--r-- 0 root (0) root (0) 193630 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1Vector.html\n -rw-r--r-- 0 root (0) root (0) 5359 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1VectorTraits-members.html\n -rw-r--r-- 0 root (0) root (0) 7538 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1VectorTraits.html\n -rw-r--r-- 0 root (0) root (0) 911 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1Vector__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1Vector__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 21812 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1Vector__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 5296 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1Vector.html\n -rw-r--r-- 0 root (0) root (0) 57627 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1distributed_1_1BlockVector-members.html\n@@ -2669,15 +2669,15 @@\n -rw-r--r-- 0 root (0) root (0) 11571 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1Assembler_1_1ResidualSimple__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 13168 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1Assembler_1_1SystemSimple-members.html\n -rw-r--r-- 0 root (0) root (0) 45891 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1Assembler_1_1SystemSimple.html\n -rw-r--r-- 0 root (0) root (0) 723 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1Assembler_1_1SystemSimple__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1Assembler_1_1SystemSimple__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 17358 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1Assembler_1_1SystemSimple__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 22488 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfo-members.html\n--rw-r--r-- 0 root (0) root (0) 131065 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfo.html\n+-rw-r--r-- 0 root (0) root (0) 110713 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfo.html\n -rw-r--r-- 0 root (0) root (0) 8460 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfoBox-members.html\n -rw-r--r-- 0 root (0) root (0) 25417 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfoBox.html\n -rw-r--r-- 0 root (0) root (0) 431 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfo__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfo__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 7933 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfo__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 13511 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1IntegrationInfo-members.html\n -rw-r--r-- 0 root (0) root (0) 59516 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1IntegrationInfo.html\n@@ -2688,15 +2688,15 @@\n -rw-r--r-- 0 root (0) root (0) 8807 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1IntegrationInfo__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 16104 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalIntegrator-members.html\n -rw-r--r-- 0 root (0) root (0) 61225 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalIntegrator.html\n -rw-r--r-- 0 root (0) root (0) 432 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalIntegrator__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalIntegrator__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 7111 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalIntegrator__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 14831 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalResults-members.html\n--rw-r--r-- 0 root (0) root (0) 74830 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalResults.html\n+-rw-r--r-- 0 root (0) root (0) 65614 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalResults.html\n -rw-r--r-- 0 root (0) root (0) 644 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalResults__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalResults__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 14519 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalResults__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 7772 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LoopControl-members.html\n -rw-r--r-- 0 root (0) root (0) 17259 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LoopControl.html\n -rw-r--r-- 0 root (0) root (0) 25124 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1MGVectorData-members.html\n -rw-r--r-- 0 root (0) root (0) 100497 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1MGVectorData.html\n@@ -2894,15 +2894,15 @@\n -rw-r--r-- 0 root (0) root (0) 30467 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1BlockVector__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 46299 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1SparseMatrix-members.html\n -rw-r--r-- 0 root (0) root (0) 249689 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1SparseMatrix.html\n -rw-r--r-- 0 root (0) root (0) 616 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1SparseMatrix__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1SparseMatrix__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 9481 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1SparseMatrix__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 41011 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1Vector-members.html\n--rw-r--r-- 0 root (0) root (0) 257001 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1Vector.html\n+-rw-r--r-- 0 root (0) root (0) 219543 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1Vector.html\n -rw-r--r-- 0 root (0) root (0) 1044 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1Vector__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1Vector__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 17705 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1Vector__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 37363 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MatrixBase-members.html\n -rw-r--r-- 0 root (0) root (0) 189518 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MatrixBase.html\n -rw-r--r-- 0 root (0) root (0) 1349 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MatrixBase__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MatrixBase__inherit__graph.md5\n@@ -3066,15 +3066,15 @@\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SparseMatrix__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 8233 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SparseMatrix__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 19705 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1TimeStepper-members.html\n -rw-r--r-- 0 root (0) root (0) 97124 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1TimeStepper.html\n -rw-r--r-- 0 root (0) root (0) 10653 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1TimeStepperData-members.html\n -rw-r--r-- 0 root (0) root (0) 30431 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1TimeStepperData.html\n -rw-r--r-- 0 root (0) root (0) 35072 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1VectorBase-members.html\n--rw-r--r-- 0 root (0) root (0) 193440 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1VectorBase.html\n+-rw-r--r-- 0 root (0) root (0) 163933 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1VectorBase.html\n -rw-r--r-- 0 root (0) root (0) 1045 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1VectorBase__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1VectorBase__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 17680 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1VectorBase__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 16260 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPackagedOperation-members.html\n -rw-r--r-- 0 root (0) root (0) 54798 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPackagedOperation.html\n -rw-r--r-- 0 root (0) root (0) 20069 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classParameterAcceptor-members.html\n -rw-r--r-- 0 root (0) root (0) 113293 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classParameterAcceptor.html\n@@ -4224,15 +4224,15 @@\n -rw-r--r-- 0 root (0) root (0) 24715 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1BlockSparsityPattern__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 43545 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1BlockVector-members.html\n -rw-r--r-- 0 root (0) root (0) 211407 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1BlockVector.html\n -rw-r--r-- 0 root (0) root (0) 1645 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1BlockVector__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1BlockVector__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 31883 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1BlockVector__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 45321 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1Vector-members.html\n--rw-r--r-- 0 root (0) root (0) 275147 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1Vector.html\n+-rw-r--r-- 0 root (0) root (0) 232604 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1Vector.html\n -rw-r--r-- 0 root (0) root (0) 809 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1Vector__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1Vector__inherit__graph.md5\n -rw-r--r-- 0 root (0) root (0) 14671 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1Vector__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 11433 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1NOXSolver-members.html\n -rw-r--r-- 0 root (0) root (0) 51570 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1NOXSolver.html\n -rw-r--r-- 0 root (0) root (0) 430 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1NOXSolver__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1NOXSolver__inherit__graph.md5\n@@ -6295,15 +6295,15 @@\n -rw-r--r-- 0 root (0) root (0) 23315 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_d.html\n -rw-r--r-- 0 root (0) root (0) 4489 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_e.html\n -rw-r--r-- 0 root (0) root (0) 4535 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_f.html\n -rw-r--r-- 0 root (0) root (0) 4607 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_h.html\n -rw-r--r-- 0 root (0) root (0) 5119 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_i.html\n -rw-r--r-- 0 root (0) root (0) 4652 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_m.html\n -rw-r--r-- 0 root (0) root (0) 4482 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_p.html\n--rw-r--r-- 0 root (0) root (0) 9490 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_s.html\n+-rw-r--r-- 0 root (0) root (0) 9609 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_s.html\n -rw-r--r-- 0 root (0) root (0) 4868 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_t.html\n -rw-r--r-- 0 root (0) root (0) 6160 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_e.html\n -rw-r--r-- 0 root (0) root (0) 5678 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_enum.html\n -rw-r--r-- 0 root (0) root (0) 11044 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_eval.html\n -rw-r--r-- 0 root (0) root (0) 5223 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_f.html\n -rw-r--r-- 0 root (0) root (0) 5068 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_func.html\n -rw-r--r-- 0 root (0) root (0) 4958 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_func_b.html\n@@ -6330,15 +6330,15 @@\n -rw-r--r-- 0 root (0) root (0) 5364 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_l.html\n -rw-r--r-- 0 root (0) root (0) 10187 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_m.html\n -rw-r--r-- 0 root (0) root (0) 4888 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_n.html\n -rw-r--r-- 0 root (0) root (0) 12753 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_o.html\n -rw-r--r-- 0 root (0) root (0) 6989 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_p.html\n -rw-r--r-- 0 root (0) root (0) 4495 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_q.html\n -rw-r--r-- 0 root (0) root (0) 4450 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_r.html\n--rw-r--r-- 0 root (0) root (0) 13407 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_s.html\n+-rw-r--r-- 0 root (0) root (0) 13526 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_s.html\n -rw-r--r-- 0 root (0) root (0) 6181 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_t.html\n -rw-r--r-- 0 root (0) root (0) 5966 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_type.html\n -rw-r--r-- 0 root (0) root (0) 9361 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_u.html\n -rw-r--r-- 0 root (0) root (0) 5350 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_v.html\n -rw-r--r-- 0 root (0) root (0) 12968 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_vars.html\n -rw-r--r-- 0 root (0) root (0) 4770 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/glossary_8h.html\n -rw-r--r-- 0 root (0) root (0) 7315 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/glossary_8h_source.html\n@@ -6415,15 +6415,15 @@\n -rw-r--r-- 0 root (0) root (0) 18347 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__Accessors.png\n -rw-r--r-- 0 root (0) root (0) 100511 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__CPP11.html\n -rw-r--r-- 0 root (0) root (0) 61812 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__CUDAWrappers.html\n -rw-r--r-- 0 root (0) root (0) 241 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__CUDAWrappers.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__CUDAWrappers.md5\n -rw-r--r-- 0 root (0) root (0) 9601 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__CUDAWrappers.png\n -rw-r--r-- 0 root (0) root (0) 21438 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__Concepts.html\n--rw-r--r-- 0 root (0) root (0) 1178922 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__Exceptions.html\n+-rw-r--r-- 0 root (0) root (0) 1174237 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__Exceptions.html\n -rw-r--r-- 0 root (0) root (0) 27449 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__FE__vs__Mapping__vs__FEValues.html\n -rw-r--r-- 0 root (0) root (0) 312 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__FE__vs__Mapping__vs__FEValues.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__FE__vs__Mapping__vs__FEValues.md5\n -rw-r--r-- 0 root (0) root (0) 6367 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__FE__vs__Mapping__vs__FEValues.png\n -rw-r--r-- 0 root (0) root (0) 6216 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__IO.html\n -rw-r--r-- 0 root (0) root (0) 442 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__IO.map\n -rw-r--r-- 0 root (0) root (0) 32 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/group__IO.md5\n@@ -7772,16 +7772,16 @@\n -rw-r--r-- 0 root (0) root (0) 217391 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2base_2utilities_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 16957 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2cgal_2utilities_8h.html\n -rw-r--r-- 0 root (0) root (0) 107923 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2cgal_2utilities_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 6902 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2fe_2fe_8h.html\n -rw-r--r-- 0 root (0) root (0) 249149 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2fe_2fe_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 7609 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2gmsh_2utilities_8h.html\n -rw-r--r-- 0 root (0) root (0) 20212 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2gmsh_2utilities_8h_source.html\n--rw-r--r-- 0 root (0) root (0) 9317 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2grid_2manifold_8h.html\n--rw-r--r-- 0 root (0) root (0) 110652 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2grid_2manifold_8h_source.html\n+-rw-r--r-- 0 root (0) root (0) 10064 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2grid_2manifold_8h.html\n+-rw-r--r-- 0 root (0) root (0) 116084 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2grid_2manifold_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 9046 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2lac_2exceptions_8h.html\n -rw-r--r-- 0 root (0) root (0) 22025 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2lac_2exceptions_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 10180 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2lac_2utilities_8h.html\n -rw-r--r-- 0 root (0) root (0) 80734 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2lac_2utilities_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 8962 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2lac_2vector__memory_8h.html\n -rw-r--r-- 0 root (0) root (0) 51664 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2lac_2vector__memory_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 28056 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2opencascade_2utilities_8h.html\n@@ -7884,15 +7884,15 @@\n -rw-r--r-- 0 root (0) root (0) 5763 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/linear__operator__tools_8h.html\n -rw-r--r-- 0 root (0) root (0) 11309 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/linear__operator__tools_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 6317 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/local__integrator_8h.html\n -rw-r--r-- 0 root (0) root (0) 24436 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/local__integrator_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 5706 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/local__integrators_8h.html\n -rw-r--r-- 0 root (0) root (0) 10972 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/local__integrators_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 6567 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/local__results_8h.html\n--rw-r--r-- 0 root (0) root (0) 98511 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/local__results_8h_source.html\n+-rw-r--r-- 0 root (0) root (0) 97631 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/local__results_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 13396 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/logo200.png\n -rw-r--r-- 0 root (0) root (0) 9225 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/logstream_8cc.html\n -rw-r--r-- 0 root (0) root (0) 90724 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/logstream_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 13203 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/logstream_8h.html\n -rw-r--r-- 0 root (0) root (0) 48414 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/logstream_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 15083 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/loop_8h.html\n -rw-r--r-- 0 root (0) root (0) 109441 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/loop_8h_source.html\n@@ -8029,15 +8029,15 @@\n -rw-r--r-- 0 root (0) root (0) 4784 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mesh__worker_8h.html\n -rw-r--r-- 0 root (0) root (0) 7421 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mesh__worker_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 5465 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mesh__worker__info_8cc.html\n -rw-r--r-- 0 root (0) root (0) 10950 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mesh__worker__info_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 5965 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mesh__worker__vector__selector_8cc.html\n -rw-r--r-- 0 root (0) root (0) 12191 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mesh__worker__vector__selector_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 7016 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/meshworker_2dof__info_8h.html\n--rw-r--r-- 0 root (0) root (0) 96487 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/meshworker_2dof__info_8h_source.html\n+-rw-r--r-- 0 root (0) root (0) 94502 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/meshworker_2dof__info_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 7531 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/meshworker_2functional_8h.html\n -rw-r--r-- 0 root (0) root (0) 58659 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/meshworker_2functional_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 5276 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mg_8h.html\n -rw-r--r-- 0 root (0) root (0) 7980 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mg_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 6048 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mg__base_8cc.html\n -rw-r--r-- 0 root (0) root (0) 18590 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mg__base_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 6698 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/mg__base_8h.html\n@@ -8243,15 +8243,15 @@\n -rw-r--r-- 0 root (0) root (0) 26602 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceLocalIntegrators_1_1L2.html\n -rw-r--r-- 0 root (0) root (0) 52418 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceLocalIntegrators_1_1Laplace.html\n -rw-r--r-- 0 root (0) root (0) 28552 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceLocalIntegrators_1_1Maxwell.html\n -rw-r--r-- 0 root (0) root (0) 7928 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceLocalIntegrators_1_1Patches.html\n -rw-r--r-- 0 root (0) root (0) 89812 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMGTools.html\n -rw-r--r-- 0 root (0) root (0) 8972 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMGTools_1_1internal.html\n -rw-r--r-- 0 root (0) root (0) 23261 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMGTransferGlobalCoarseningTools.html\n--rw-r--r-- 0 root (0) root (0) 12700 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceManifolds.html\n+-rw-r--r-- 0 root (0) root (0) 14111 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceManifolds.html\n -rw-r--r-- 0 root (0) root (0) 105825 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMatrixCreator.html\n -rw-r--r-- 0 root (0) root (0) 7159 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMatrixFreeOperators.html\n -rw-r--r-- 0 root (0) root (0) 20913 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMatrixFreeOperators_1_1BlockHelper.html\n -rw-r--r-- 0 root (0) root (0) 6790 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMatrixFreeOperators_1_1Implementation.html\n -rw-r--r-- 0 root (0) root (0) 50556 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMatrixFreeTools.html\n -rw-r--r-- 0 root (0) root (0) 9740 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMatrixFreeTools_1_1internal.html\n -rw-r--r-- 0 root (0) root (0) 11567 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMatrixTableIterators.html\n@@ -8569,16 +8569,16 @@\n -rw-r--r-- 0 root (0) root (0) 9465 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2cell__data__transfer_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 6036 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2cell__data__transfer_8h.html\n -rw-r--r-- 0 root (0) root (0) 30476 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2cell__data__transfer_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 7052 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2data__out_8cc.html\n -rw-r--r-- 0 root (0) root (0) 287952 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2data__out_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 7091 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2data__out_8h.html\n -rw-r--r-- 0 root (0) root (0) 44974 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2data__out_8h_source.html\n--rw-r--r-- 0 root (0) root (0) 12085 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2solution__transfer_8cc.html\n--rw-r--r-- 0 root (0) root (0) 134044 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2solution__transfer_8cc_source.html\n+-rw-r--r-- 0 root (0) root (0) 13263 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2solution__transfer_8cc.html\n+-rw-r--r-- 0 root (0) root (0) 134143 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2solution__transfer_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 6406 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2solution__transfer_8h.html\n -rw-r--r-- 0 root (0) root (0) 48198 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2solution__transfer_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 123 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/open.png\n -rw-r--r-- 0 root (0) root (0) 6071 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/opencascade_2manifold__lib_8cc.html\n -rw-r--r-- 0 root (0) root (0) 125345 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/opencascade_2manifold__lib_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 9288 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/opencascade_2manifold__lib_8h.html\n -rw-r--r-- 0 root (0) root (0) 58499 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/opencascade_2manifold__lib_8h_source.html\n@@ -8696,15 +8696,15 @@\n -rw-r--r-- 0 root (0) root (0) 5116 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__block__vector_8h.html\n -rw-r--r-- 0 root (0) root (0) 9665 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__block__vector_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 6602 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__sparse__matrix_8cc.html\n -rw-r--r-- 0 root (0) root (0) 195444 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__sparse__matrix_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 5122 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__sparse__matrix_8h.html\n -rw-r--r-- 0 root (0) root (0) 9585 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__sparse__matrix_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 5994 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__vector_8cc.html\n--rw-r--r-- 0 root (0) root (0) 122056 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__vector_8cc_source.html\n+-rw-r--r-- 0 root (0) root (0) 106738 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__vector_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 5077 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__vector_8h.html\n -rw-r--r-- 0 root (0) root (0) 9496 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__vector_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 8278 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__precondition_8cc.html\n -rw-r--r-- 0 root (0) root (0) 304039 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__precondition_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 14299 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__precondition_8h.html\n -rw-r--r-- 0 root (0) root (0) 174439 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__precondition_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 4675 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__snes_8cc.html\n@@ -8720,19 +8720,19 @@\n -rw-r--r-- 0 root (0) root (0) 7931 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__sparse__matrix_8h.html\n -rw-r--r-- 0 root (0) root (0) 77345 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__sparse__matrix_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 4667 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__ts_8cc.html\n -rw-r--r-- 0 root (0) root (0) 34171 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__ts_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 7185 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__ts_8h.html\n -rw-r--r-- 0 root (0) root (0) 94223 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__ts_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 9743 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector_8h.html\n--rw-r--r-- 0 root (0) root (0) 67823 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector_8h_source.html\n+-rw-r--r-- 0 root (0) root (0) 66863 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 8812 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector__base_8cc.html\n--rw-r--r-- 0 root (0) root (0) 291224 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector__base_8cc_source.html\n+-rw-r--r-- 0 root (0) root (0) 242939 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector__base_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 7720 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector__base_8h.html\n--rw-r--r-- 0 root (0) root (0) 198551 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector__base_8h_source.html\n+-rw-r--r-- 0 root (0) root (0) 196331 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector__base_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 6438 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/physics_8h.html\n -rw-r--r-- 0 root (0) root (0) 9824 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/physics_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 112820 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/plate_with_a_hole.png\n -rw-r--r-- 0 root (0) root (0) 124647 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/plate_with_a_hole_3D.png\n -rw-r--r-- 0 root (0) root (0) 696 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/plus.svg\n -rw-r--r-- 0 root (0) root (0) 696 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/plusd.svg\n -rw-r--r-- 0 root (0) root (0) 5338 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/point__conversion_8h.html\n@@ -8963,29 +8963,29 @@\n -rw-r--r-- 0 root (0) root (0) 272533 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/scratch__data_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 7627 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/sd_8h.html\n -rw-r--r-- 0 root (0) root (0) 15792 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/sd_8h_source.html\n drwxr-xr-x 0 root (0) root (0) 0 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/\n -rw-r--r-- 0 root (0) root (0) 3826 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_0.js\n -rw-r--r-- 0 root (0) root (0) 4037 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1.js\n -rw-r--r-- 0 root (0) root (0) 231054 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_10.js\n--rw-r--r-- 0 root (0) root (0) 180285 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_11.js\n+-rw-r--r-- 0 root (0) root (0) 180379 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_11.js\n -rw-r--r-- 0 root (0) root (0) 281968 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_12.js\n -rw-r--r-- 0 root (0) root (0) 56577 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_13.js\n--rw-r--r-- 0 root (0) root (0) 277011 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_14.js\n+-rw-r--r-- 0 root (0) root (0) 276392 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_14.js\n -rw-r--r-- 0 root (0) root (0) 12134 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_15.js\n -rw-r--r-- 0 root (0) root (0) 4673 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_16.js\n -rw-r--r-- 0 root (0) root (0) 125362 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_17.js\n--rw-r--r-- 0 root (0) root (0) 258277 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_18.js\n+-rw-r--r-- 0 root (0) root (0) 258057 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_18.js\n -rw-r--r-- 0 root (0) root (0) 157301 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_19.js\n -rw-r--r-- 0 root (0) root (0) 220616 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1a.js\n--rw-r--r-- 0 root (0) root (0) 289315 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1b.js\n+-rw-r--r-- 0 root (0) root (0) 289804 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1b.js\n -rw-r--r-- 0 root (0) root (0) 40894 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1c.js\n -rw-r--r-- 0 root (0) root (0) 235387 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1d.js\n--rw-r--r-- 0 root (0) root (0) 465469 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1e.js\n--rw-r--r-- 0 root (0) root (0) 260240 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1f.js\n+-rw-r--r-- 0 root (0) root (0) 464546 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1e.js\n+-rw-r--r-- 0 root (0) root (0) 260266 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1f.js\n -rw-r--r-- 0 root (0) root (0) 3645 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_2.js\n -rw-r--r-- 0 root (0) root (0) 56423 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_20.js\n -rw-r--r-- 0 root (0) root (0) 167601 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_21.js\n -rw-r--r-- 0 root (0) root (0) 36152 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_22.js\n -rw-r--r-- 0 root (0) root (0) 3907 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_23.js\n -rw-r--r-- 0 root (0) root (0) 269 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_24.js\n -rw-r--r-- 0 root (0) root (0) 4076 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_25.js\n@@ -8995,18 +8995,18 @@\n -rw-r--r-- 0 root (0) root (0) 2328 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_5.js\n -rw-r--r-- 0 root (0) root (0) 2539 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_6.js\n -rw-r--r-- 0 root (0) root (0) 1892 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_7.js\n -rw-r--r-- 0 root (0) root (0) 2888 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_8.js\n -rw-r--r-- 0 root (0) root (0) 3088 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_9.js\n -rw-r--r-- 0 root (0) root (0) 7437 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_a.js\n -rw-r--r-- 0 root (0) root (0) 350 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_b.js\n--rw-r--r-- 0 root (0) root (0) 258742 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_c.js\n+-rw-r--r-- 0 root (0) root (0) 258512 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_c.js\n -rw-r--r-- 0 root (0) root (0) 107860 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_d.js\n -rw-r--r-- 0 root (0) root (0) 418156 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_e.js\n--rw-r--r-- 0 root (0) root (0) 200048 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_f.js\n+-rw-r--r-- 0 root (0) root (0) 200058 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_f.js\n -rw-r--r-- 0 root (0) root (0) 43245 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/classes_0.js\n -rw-r--r-- 0 root (0) root (0) 9809 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/classes_1.js\n -rw-r--r-- 0 root (0) root (0) 5320 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/classes_10.js\n -rw-r--r-- 0 root (0) root (0) 13686 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/classes_11.js\n -rw-r--r-- 0 root (0) root (0) 59275 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/classes_12.js\n -rw-r--r-- 0 root (0) root (0) 38047 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/classes_13.js\n -rw-r--r-- 0 root (0) root (0) 1724 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/classes_14.js\n@@ -9035,15 +9035,15 @@\n -rw-r--r-- 0 root (0) root (0) 19720 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_2.js\n -rw-r--r-- 0 root (0) root (0) 167 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_3.js\n -rw-r--r-- 0 root (0) root (0) 227 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_4.js\n -rw-r--r-- 0 root (0) root (0) 307 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_5.js\n -rw-r--r-- 0 root (0) root (0) 839 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_6.js\n -rw-r--r-- 0 root (0) root (0) 318 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_7.js\n -rw-r--r-- 0 root (0) root (0) 149 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_8.js\n--rw-r--r-- 0 root (0) root (0) 5955 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_9.js\n+-rw-r--r-- 0 root (0) root (0) 6092 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_9.js\n -rw-r--r-- 0 root (0) root (0) 626 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_a.js\n -rw-r--r-- 0 root (0) root (0) 142 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/enums_0.js\n -rw-r--r-- 0 root (0) root (0) 417 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/enums_1.js\n -rw-r--r-- 0 root (0) root (0) 3113 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/enums_10.js\n -rw-r--r-- 0 root (0) root (0) 495 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/enums_11.js\n -rw-r--r-- 0 root (0) root (0) 342 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/enums_12.js\n -rw-r--r-- 0 root (0) root (0) 551 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/enums_13.js\n@@ -11603,15 +11603,15 @@\n -rw-r--r-- 0 root (0) root (0) 4917 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/transformations_8cc.html\n -rw-r--r-- 0 root (0) root (0) 9185 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/transformations_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 44728 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/transformations_8h.html\n -rw-r--r-- 0 root (0) root (0) 164520 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/transformations_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 6365 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__accessor_8cc.html\n -rw-r--r-- 0 root (0) root (0) 659755 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__accessor_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 18086 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__accessor_8h.html\n--rw-r--r-- 0 root (0) root (0) 440325 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__accessor_8h_source.html\n+-rw-r--r-- 0 root (0) root (0) 439890 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__accessor_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 7132 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__base_8cc.html\n -rw-r--r-- 0 root (0) root (0) 162457 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__base_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 7664 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__base_8h.html\n -rw-r--r-- 0 root (0) root (0) 48418 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__base_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 16689 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__description_8cc.html\n -rw-r--r-- 0 root (0) root (0) 233874 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__description_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 16061 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__description_8h.html\n@@ -11653,17 +11653,17 @@\n -rw-r--r-- 0 root (0) root (0) 6156 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__block__vector_8cc.html\n -rw-r--r-- 0 root (0) root (0) 57154 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__block__vector_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 6173 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__communication__pattern_8cc.html\n -rw-r--r-- 0 root (0) root (0) 25491 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__communication__pattern_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 6826 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__communication__pattern_8h.html\n -rw-r--r-- 0 root (0) root (0) 21544 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__communication__pattern_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 6601 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__vector_8cc.html\n--rw-r--r-- 0 root (0) root (0) 180779 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__vector_8cc_source.html\n+-rw-r--r-- 0 root (0) root (0) 165702 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__vector_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 8199 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__vector_8h.html\n--rw-r--r-- 0 root (0) root (0) 116561 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__vector_8h_source.html\n+-rw-r--r-- 0 root (0) root (0) 115186 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__vector_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 13727 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__index__access_8h.html\n -rw-r--r-- 0 root (0) root (0) 37049 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__index__access_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 15045 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__linear__operator_8h.html\n -rw-r--r-- 0 root (0) root (0) 47757 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__linear__operator_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 9514 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__parallel__block__vector_8h.html\n -rw-r--r-- 0 root (0) root (0) 86940 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__parallel__block__vector_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 6101 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__precondition_8cc.html\n@@ -11715,23 +11715,23 @@\n -rw-r--r-- 0 root (0) root (0) 9110 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__sparsity__pattern_8h.html\n -rw-r--r-- 0 root (0) root (0) 200374 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__sparsity__pattern_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 22093 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__types_8h.html\n -rw-r--r-- 0 root (0) root (0) 37645 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__types_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 5821 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__vector_8cc.html\n -rw-r--r-- 0 root (0) root (0) 22247 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__vector_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 11574 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__vector_8h.html\n--rw-r--r-- 0 root (0) root (0) 229950 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__vector_8h_source.html\n+-rw-r--r-- 0 root (0) root (0) 226950 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__vector_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 11074 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__utilities_8cc.html\n -rw-r--r-- 0 root (0) root (0) 43621 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__utilities_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 12368 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__utilities_8h.html\n -rw-r--r-- 0 root (0) root (0) 29175 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__utilities_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 6897 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__vector_8cc.html\n--rw-r--r-- 0 root (0) root (0) 242628 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__vector_8cc_source.html\n+-rw-r--r-- 0 root (0) root (0) 222150 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__vector_8cc_source.html\n -rw-r--r-- 0 root (0) root (0) 11178 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__vector_8h.html\n--rw-r--r-- 0 root (0) root (0) 341186 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__vector_8h_source.html\n+-rw-r--r-- 0 root (0) root (0) 324173 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__vector_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 64742 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/truncated_cone_2d.png\n -rw-r--r-- 0 root (0) root (0) 191918 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/truncated_cone_3d.png\n -rw-r--r-- 0 root (0) root (0) 5608 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tuple_8h.html\n -rw-r--r-- 0 root (0) root (0) 11522 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tuple_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 4772 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tutorial_8h.html\n -rw-r--r-- 0 root (0) root (0) 7317 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tutorial_8h_source.html\n -rw-r--r-- 0 root (0) root (0) 23239 2025-06-30 07:29:44.000000 ./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/types_8h.html\n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__vector__base_8h_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/block__vector__base_8h_source.html", "unified_diff": "@@ -202,26 +202,26 @@\n
155 using pointer = value_type *;
\n
156
\n
157 using dereference_type =
\n
158 std::conditional_t<Constness,
\n
159 value_type,
\n
160 typename BlockVectorType::BlockType::reference>;
\n
161
\n-
166 using BlockVector =
\n+
166 using BlockVector =
\n
167 std::conditional_t<Constness, const BlockVectorType, BlockVectorType>;
\n
168
\n-
177 Iterator(BlockVector &parent, const size_type global_index);
\n+
177 Iterator(BlockVector &parent, const size_type global_index);
\n
178
\n
186 Iterator(const Iterator<BlockVectorType, !Constness> &c);
\n
187
\n
188
\n
192 Iterator(const Iterator &c);
\n
193
\n
194 private:
\n-
199 Iterator(BlockVector &parent,
\n+
199 Iterator(BlockVector &parent,
\n
200 const size_type global_index,
\n
201 const size_type current_block,
\n
202 const size_type index_within_block,
\n
203 const size_type next_break_forward,
\n
204 const size_type next_break_backward);
\n
205
\n
206 public:
\n@@ -288,15 +288,15 @@\n
338
\n
348 DeclExceptionMsg(ExcPointerToDifferentVectors,
\n
349 "Your program tried to compare iterators pointing to "
\n
350 "different block vectors. There is no reasonable way "
\n
351 "to do this.");
\n
352
\n
354 private:
\n-
360 BlockVector *parent;
\n+
360 BlockVector *parent;
\n
361
\n
365 size_type global_index;
\n
366
\n
371 unsigned int current_block;
\n
372 size_type index_within_block;
\n
373
\n
380 size_type next_break_forward;
\n@@ -1852,15 +1852,14 @@\n
Iterator(BlockVector &parent, const size_type global_index, const size_type current_block, const size_type index_within_block, const size_type next_break_forward, const size_type next_break_backward)
\n
void move_forward()
\n
std::conditional_t< Constness, const typename BlockVectorType::value_type, typename BlockVectorType::value_type > value_type
\n
Iterator & operator++()
\n
void move_backward()
\n
Iterator(const Iterator< BlockVectorType, !Constness > &c)
\n
Iterator(const Iterator &c)
\n-
std::conditional_t< Constness, const BlockVectorType, BlockVectorType > BlockVector
\n
dereference_type operator*() const
\n
Iterator operator-(const difference_type &d) const
\n
difference_type operator-(const Iterator< BlockVectorType, OtherConstness > &i) const
\n
std::random_access_iterator_tag iterator_category
\n
Iterator(BlockVector &parent, const size_type global_index)
\n
size_type next_break_forward
\n
bool operator>=(const Iterator< BlockVectorType, OtherConstness > &i) const
\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1876,18 +1876,14 @@\n Iterator & operator++()\n _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bs_\b:_\b:_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b:_\b:_\bm_\bo_\bv_\be_\b__\bb_\ba_\bc_\bk_\bw_\ba_\br_\bd\n void move_backward()\n _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bs_\b:_\b:_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b:_\b:_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\n Iterator(const Iterator< BlockVectorType, !Constness > &c)\n _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bs_\b:_\b:_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b:_\b:_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\n Iterator(const Iterator &c)\n-_\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bs_\b:_\b:_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br\n-std::conditional_t< Constness, const BlockVectorType, BlockVectorType >\n-BlockVector\n-D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bb_\bl_\bo_\bc_\bk_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh_\b:_\b1_\b6_\b7\n _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bs_\b:_\b:_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*\n dereference_type operator*() const\n _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bs_\b:_\b:_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-\n Iterator operator-(const difference_type &d) const\n _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bs_\b:_\b:_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-\n difference_type operator-(const Iterator< BlockVectorType, OtherConstness > &i)\n const\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_7_2_and_7_3.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_7_2_and_7_3.html", "unified_diff": "@@ -198,15 +198,15 @@\n \n
  • \n

    New: GridGenerator::extrude_triangulation() allows you to extrude a 2d mesh to turn it into a 3d mesh.
    \n (Timo Heister, 2013/02/16)

    \n

    \n
  • \n
  • \n-

    PETScWrappers::Vector::operator= and PETScWrappers::MPI::Vector::operator= now call update_ghost_values() automatically if necessary. This means that update_ghost_values() does not need to be called from user code at all any more.
    \n+

    PETScWrappers::Vector::operator= and PETScWrappers::MPI::Vector::operator= now call update_ghost_values() automatically if necessary. This means that update_ghost_values() does not need to be called from user code at all any more.
    \n (Timo Heister, 2013/02/14)

    \n

    \n
  • \n
  • \n

    Fixed: VectorTools::interpolate did not work properly in 1d if boundary indicators had been set to anything but the default (i.e., zero at the left and one at the right end of the domain). This was a hold-over from the past when these were the only possible values. This is now fixed.
    \n (Kevin Dugan, Wolfgang Bangerth, 2013/02/14)

    \n

    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -166,16 +166,16 @@\n (Timo Heister, 2013/02/19)\n 3. New: _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs::*Matrix::add(other, factor) to add a scaled other\n matrix to the current matrix.\n (Jose Javier Munoz Criollo, 2013/02/19)\n 4. New: _\bG_\br_\bi_\bd_\bG_\be_\bn_\be_\br_\ba_\bt_\bo_\br_\b:_\b:_\be_\bx_\bt_\br_\bu_\bd_\be_\b__\bt_\br_\bi_\ba_\bn_\bg_\bu_\bl_\ba_\bt_\bi_\bo_\bn_\b(_\b) allows you to extrude a 2d\n mesh to turn it into a 3d mesh.\n (Timo Heister, 2013/02/16)\n- 5. PETScWrappers::Vector::operator= and _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n- _\bo_\bp_\be_\br_\ba_\bt_\bo_\br= now call update_ghost_values() automatically if necessary. This\n+ 5. PETScWrappers::Vector::operator= and PETScWrappers::MPI::Vector::\n+ operator= now call update_ghost_values() automatically if necessary. This\n means that update_ghost_values() does not need to be called from user\n code at all any more.\n (Timo Heister, 2013/02/14)\n 6. Fixed: _\bV_\be_\bc_\bt_\bo_\br_\bT_\bo_\bo_\bl_\bs_\b:_\b:_\bi_\bn_\bt_\be_\br_\bp_\bo_\bl_\ba_\bt_\be did not work properly in 1d if boundary\n indicators had been set to anything but the default (i.e., zero at the\n left and one at the right end of the domain). This was a hold-over from\n the past when these were the only possible values. This is now fixed.\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_4_2_and_8_5_0.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_8_4_2_and_8_5_0.html", "unified_diff": "@@ -107,15 +107,15 @@\n
  • \n
  • \n

    Changed: The template arguments to the DerivativeApproximation::approximate_derivative_tensor() function have been modified. It is no longer necessary to explicitly specify the dim and spacedim arguments as they are determined from the input DoFHandler.
    \n (Jean-Paul Pelteret, 2017/02/16)

    \n

    \n
  • \n
  • \n-

    Changed: PETScWrappers::VectorBase::operator= is now both private and undefined. This operator was formerly implicitly defined (i.e., it did a byte-for-byte copy of VectorBase's members), which provided, almost certainly, the wrong behavior since the underlying Vec (the managed PETSc object) would then be destroyed twice. Since both inheriting classes (PETScWrappers::Vector and PETScWrappers::MPI::Vector) define their own operator= overloads this operator is also not necessary.
    \n+

    Changed: PETScWrappers::VectorBase::operator= is now both private and undefined. This operator was formerly implicitly defined (i.e., it did a byte-for-byte copy of VectorBase's members), which provided, almost certainly, the wrong behavior since the underlying Vec (the managed PETSc object) would then be destroyed twice. Since both inheriting classes (PETScWrappers::Vector and PETScWrappers::MPI::Vector) define their own operator= overloads this operator is also not necessary.
    \n (David Wells, 2017/02/11)

    \n

    \n
  • \n
  • \n

    Fixed: The MappingQGeneric class (which is a base class of MappingQ) sometimes set the update_JxW_values flag internally, even though this was not necessary. This resulted in doing more work than was actually necessary, and this has been rectified. On the other hand, this change means that in some circumstances, codes may not have explicitly told an FEValues or FEFaceValues object that they actually need the JxW values, but could access them anyway without getting an error. This will now yield an error that is easily fixed by explicitly listing update_JxW_values as a required flag where you create the FEValues object.
    \n (Wolfgang Bangerth, 2017/01/16)

    \n

    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -19,15 +19,15 @@\n is 'matrix' or 'inverse_matrix'.\n (Daniel Arndt, 2017/03/18)\n 2. Changed: The template arguments to the _\bD_\be_\br_\bi_\bv_\ba_\bt_\bi_\bv_\be_\bA_\bp_\bp_\br_\bo_\bx_\bi_\bm_\ba_\bt_\bi_\bo_\bn_\b:_\b:\n _\ba_\bp_\bp_\br_\bo_\bx_\bi_\bm_\ba_\bt_\be_\b__\bd_\be_\br_\bi_\bv_\ba_\bt_\bi_\bv_\be_\b__\bt_\be_\bn_\bs_\bo_\br_\b(_\b) function have been modified. It is no\n longer necessary to explicitly specify the dim and spacedim arguments as\n they are determined from the input _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br.\n (Jean-Paul Pelteret, 2017/02/16)\n- 3. Changed: _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br= is now both private and\n+ 3. Changed: PETScWrappers::VectorBase::operator= is now both private and\n undefined. This operator was formerly implicitly defined (i.e., it did a\n byte-for-byte copy of VectorBase's members), which provided, almost\n certainly, the wrong behavior since the underlying Vec (the managed PETSc\n object) would then be destroyed twice. Since both inheriting classes\n (PETScWrappers::Vector and _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br) define their own\n operator= overloads this operator is also not necessary.\n (David Wells, 2017/02/11)\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_1_1_and_9_2_0.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/changes_between_9_1_1_and_9_2_0.html", "unified_diff": "@@ -122,15 +122,15 @@\n
  • \n
  • \n

    Removed: The deprecated TrilinosWrappers matrix and sparsity patterns and reinitialization functions have been removed.
    \n (Daniel Arndt, 2020/04/22)

    \n

    \n
  • \n
  • \n-

    Removed: The deprecated member functions PETScWrappers::VectorBase::ratio() and Vector::ratio() have been removed.
    \n+

    Removed: The deprecated member functions PETScWrappers::VectorBase::ratio() and Vector::ratio() have been removed.
    \n (Daniel Arndt, 2020/04/17)

    \n

    \n
  • \n
  • \n

    Changed: The header file deal.II/fe/fe_q.h is not included implicitly via deal.II/fe/mapping_q_generic.h any more. Add the header deal.II/fe/fe_q.h if necessary.
    \n (Martin Kronbichler, 2020/04/16)

    \n

    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -38,16 +38,16 @@\n 4. Removed: The deprecated member functions domain_partitioner(),\n vector_partitioner() and range_partitioner() in _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs classes\n have been removed.\n (Daniel Arndt, 2020/04/24)\n 5. Removed: The deprecated _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs matrix and sparsity patterns and\n reinitialization functions have been removed.\n (Daniel Arndt, 2020/04/22)\n- 6. Removed: The deprecated member functions _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\ba_\bt_\bi_\bo\n- _\b(_\b) and Vector::ratio() have been removed.\n+ 6. Removed: The deprecated member functions PETScWrappers::VectorBase::ratio\n+ () and Vector::ratio() have been removed.\n (Daniel Arndt, 2020/04/17)\n 7. Changed: The header file deal.II/fe/fe_q.h is not included implicitly via\n deal.II/fe/mapping_q_generic.h any more. Add the header deal.II/fe/fe_q.h\n if necessary.\n (Martin Kronbichler, 2020/04/16)\n 8. Removed: The deprecated _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bp_\br_\bi_\bn_\bt overloads have been removed.\n (Daniel Arndt, 2020/04/15)\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classAffineConstraints.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classAffineConstraints.html", "unified_diff": "@@ -636,15 +636,15 @@\n \n inlineexplicit \n \n \n
    \n

    Constructor. The supplied IndexSet defines for which indices this object will store constraints. In a calculation with a DoFHandler object based on parallel::distributed::Triangulation or parallel::shared::Triangulation, one should use the set of locally relevant DoFs (see GlossLocallyRelevantDof).

    \n

    The given IndexSet allows the AffineConstraints container to save memory by just not caring about degrees of freedom that are not of importance to the current processor. In contrast, in parallel computations, if you do not provide such an index set (here, or using the reinit() function that takes such an argument), the current object will allocate memory proportional to the total number of degrees of freedom (accumulated over all processes), which is clearly wasteful and not efficient – and should be considered a bug.

    \n-
    Deprecated:
    This constructor is equivalent to calling the following one with both of its arguments equal to the index set provided here. This is not wrong, but inefficient. Use the following constructor instead.
    \n+
    Deprecated:
    This constructor is equivalent to calling the following one with both of its arguments equal to the index set provided here. This is not wrong, but inefficient. Use the following constructor instead.
    \n \n

    Definition at line 2312 of file affine_constraints.h.

    \n \n
    \n \n \n

    ◆ AffineConstraints() [3/5]

    \n@@ -877,15 +877,15 @@\n const IndexSet & \n locally_stored_constraints)\n \n \n \n
    \n

    clear() the AffineConstraints object and supply an IndexSet that describes for which degrees of freedom this object can store constraints. See the discussion in the documentation of the constructor of this class that takes a single index set as argument.

    \n-
    Deprecated:
    Use the reinit() function with two index set arguments instead.
    \n+
    Deprecated:
    Use the reinit() function with two index set arguments instead.
    \n \n
    \n \n \n

    ◆ reinit() [3/3]

    \n \n
    \n@@ -1033,15 +1033,15 @@\n \n \n \n
    \n

    This function copies the content of constraints_in with DoFs that are element of the IndexSet filter. Elements that are not present in the IndexSet are ignored. All DoFs will be transformed to local index space of the filter, both the constrained DoFs and the other DoFs these entries are constrained to. The local index space of the filter is a contiguous numbering of all (global) DoFs that are elements in the filter.

    \n

    If, for example, the filter represents the range [10,20), and the constraints object constraints_in includes the global indices {7,13,14}, the indices {3,4} are added to the calling constraints object (since 13 and 14 are elements in the filter and element 13 is the fourth element in the index, and 14 is the fifth).

    \n

    This function provides an easy way to create a AffineConstraints for certain vector components in a vector-valued problem from a full AffineConstraints, i.e. extracting a diagonal subblock from a larger AffineConstraints. The block is specified by the IndexSet argument.

    \n-
    Deprecated:
    This function is a combination of the get_view() function and merge() in that it selects a subset of constraints from another constraints object that is then merged into the current one. But the current function does not deal well with index sets. Furthermore, it simply discards parts of constraints that constrain one degree of freedom against ones that are not selected in the filter – something that should probably be considered a bug. Use get_view() and merge() instead.
    \n+
    Deprecated:
    This function is a combination of the get_view() function and merge() in that it selects a subset of constraints from another constraints object that is then merged into the current one. But the current function does not deal well with index sets. Furthermore, it simply discards parts of constraints that constrain one degree of freedom against ones that are not selected in the filter – something that should probably be considered a bug. Use get_view() and merge() instead.
    \n \n
    \n \n \n

    ◆ add_constraint()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classBlockSparsityPatternBase.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classBlockSparsityPatternBase.html", "unified_diff": "@@ -299,15 +299,15 @@\n \n

    Detailed Description

    \n
    template<typename SparsityPatternType>
    \n class BlockSparsityPatternBase< SparsityPatternType >

    This is the base class for block versions of the sparsity pattern and dynamic sparsity pattern classes. It has not much functionality, but only administrates an array of sparsity pattern objects and delegates work to them. It has mostly the same interface as has the SparsityPattern, and DynamicSparsityPattern, and simply transforms calls to its member functions to calls to the respective member functions of the member sparsity patterns.

    \n

    The largest difference between the SparsityPattern and DynamicSparsityPattern classes and this class is that mostly, the matrices have different properties and you will want to work on the blocks making up the matrix rather than the whole matrix. You can access the different blocks using the block(row,col) function.

    \n

    Attention: this object is not automatically notified if the size of one of its subobjects' size is changed. After you initialize the sizes of the subobjects, you will therefore have to call the collect_sizes() function of this class! Note that, of course, all sub-matrices in a (block-)row have to have the same number of rows, and that all sub-matrices in a (block-)column have to have the same number of columns.

    \n

    You will in general not want to use this class, but one of the derived classes.

    \n-
    Todo:
    Handle optimization of diagonal elements of the underlying SparsityPattern correctly.
    \n+
    Todo:
    Handle optimization of diagonal elements of the underlying SparsityPattern correctly.
    \n
    See also
    Block (linear algebra)
    \n \n

    Definition at line 79 of file block_sparsity_pattern.h.

    \n

    Member Typedef Documentation

    \n \n

    ◆ size_type

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classDoFHandler.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classDoFHandler.html", "unified_diff": "@@ -629,15 +629,15 @@\n \n \n \n \n
    using DoFHandler< dim, spacedim >::active_fe_index_type = types::fe_index
    \n
    \n

    The type in which we store the active FE index.

    \n-
    Deprecated:
    Use types::fe_index instead.
    \n+
    Deprecated:
    Use types::fe_index instead.
    \n \n

    Definition at line 536 of file dof_handler.h.

    \n \n
    \n \n \n

    ◆ offset_type

    \n@@ -886,15 +886,15 @@\n \n
    \n \n

    \n

    For each locally owned cell, set the active finite element index to the corresponding value given in active_fe_indices.

    \n

    The vector active_fe_indices needs to have as many entries as there are active cells. The FE indices must be in the order in which we iterate over active cells. Vector entries corresponding to active cells that are not locally owned are ignored.

    \n

    Active FE indices will only be set for locally owned cells. Ghost and artificial cells will be ignored; no active FE index will be assigned to them. To exchange active FE indices on ghost cells, call distribute_dofs() afterwards.

    \n-
    Deprecated:
    Use set_active_fe_indices() with the types::fe_index datatype.
    \n+
    Deprecated:
    Use set_active_fe_indices() with the types::fe_index datatype.
    \n \n
    \n \n \n

    ◆ get_active_fe_indices() [1/2]

    \n \n
    \n@@ -934,15 +934,15 @@\n \n \n
    \n

    For each locally relevant cell, extract the active finite element index and fill the vector active_fe_indices in the order in which we iterate over active cells. This vector is resized, if necessary.

    \n

    As we do not know the active FE index on artificial cells, they are set to the invalid value numbers::invalid_fe_index.

    \n

    For DoFHandler objects without hp-capabilities, the vector will consist of zeros, indicating that all cells use the same finite element. In hp-mode, the values may be different, though.

    \n

    The returned vector has as many entries as there are active cells.

    \n-
    Deprecated:
    Use get_active_fe_indices() that returns the result vector.
    \n+
    Deprecated:
    Use get_active_fe_indices() that returns the result vector.
    \n \n
    \n \n \n

    ◆ set_future_fe_indices()

    \n \n
    \n@@ -2674,15 +2674,15 @@\n \n \n
    \n Initial value:
    =
    \n \n
    const types::fe_index invalid_fe_index
    Definition types.h:243
    \n

    Invalid index of the finite element to be used on a given cell.

    \n-
    Deprecated:
    Use numbers::invalid_fe_index instead.
    \n+
    Deprecated:
    Use numbers::invalid_fe_index instead.
    \n \n

    Definition at line 528 of file dof_handler.h.

    \n \n
    \n \n \n

    ◆ invalid_active_fe_index

    \n@@ -2704,15 +2704,15 @@\n static \n \n \n
    \n Initial value:

    Invalid active FE index which will be used as a default value to determine whether a future FE index has been set or not.

    \n-
    Deprecated:
    Use numbers::invalid_fe_index instead.
    \n+
    Deprecated:
    Use numbers::invalid_fe_index instead.
    \n \n

    Definition at line 549 of file dof_handler.h.

    \n \n
    \n \n \n

    ◆ block_info_object

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFEFaceEvaluation.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFEFaceEvaluation.html", "unified_diff": "@@ -1371,15 +1371,15 @@\n \n \n )\n \n \n \n
    \n-
    Deprecated:
    Please use the integrate_scatter() function with the EvaluationFlags argument.
    \n+
    Deprecated:
    Please use the integrate_scatter() function with the EvaluationFlags argument.
    \n \n
    \n \n \n

    ◆ dof_indices()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFEFacePointEvaluation.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFEFacePointEvaluation.html", "has_internal_linenos": true, "unified_diff": "@@ -8697,15 +8697,15 @@\n 00021f80: 6261 3664 3763 3239 3031 3633 3934 6362 ba6d7c29016394cb\n 00021f90: 3922 3e72 6569 6e69 7428 293c 2f61 3e2e 9\">reinit().\n 00021fa0: 3c2f 703e 0a3c 646c 2063 6c61 7373 3d22

    .
    \n 00021fc0: 3c62 3e3c 6120 636c 6173 733d 2265 6c22 Deprec\n+00021ff0: 6564 3030 3031 3036 223e 4465 7072 6563 ed000106\">Deprec\n 00022000: 6174 6564 3a3c 2f61 3e3c 2f62 3e3c 2f64 ated:
    Use the fu\n 00022020: 6e63 7469 6f6e 203c 6120 636c 6173 733d nction \n )\n const\n \n \n
    \n

    The same as above.

    \n-
    Deprecated:
    Use the average_of_gradients() function instead.
    \n+
    Deprecated:
    Use the average_of_gradients() function instead.
    \n \n
    \n \n \n

    ◆ jump_in_hessians()

    \n \n
    \n@@ -638,15 +638,15 @@\n \n )\n const\n \n \n
    \n

    The same as above.

    \n-
    Deprecated:
    Use the average_of_hessians() function instead.
    \n+
    Deprecated:
    Use the average_of_hessians() function instead.
    \n \n
    \n \n \n

    ◆ jump_in_third_derivatives()

    \n \n
    \n@@ -811,15 +811,15 @@\n \n )\n const\n \n \n
    \n

    The same as above.

    \n-
    Deprecated:
    Use the average_of_hessians() function instead.
    \n+
    Deprecated:
    Use the average_of_hessians() function instead.
    \n \n
    \n \n \n

    ◆ get_function_values()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFEPointEvaluation.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFEPointEvaluation.html", "has_internal_linenos": true, "unified_diff": "@@ -10245,15 +10245,15 @@\n 00028040: 3839 3039 6337 3138 6133 3832 223e 7265 8909c718a382\">re\n 00028050: 696e 6974 2829 3c2f 613e 2e3c 2f70 3e0a init().

    .\n 00028060: 3c64 6c20 636c 6173 733d 2264 6570 7265
    Deprecated:\n+000280b0: 3130 3622 3e44 6570 7265 6361 7465 643a 106\">Deprecated:\n 000280c0: 3c2f 613e 3c2f 623e 3c2f 6474 3e3c 6464
    Use the functio\n 000280e0: 6e20 3c61 2063 6c61 7373 3d22 656c 2220 n .
    \n 00015ee0: 3c62 3e3c 6120 636c 6173 733d 2265 6c22 Deprec\n+00015f10: 6564 3030 3031 3036 223e 4465 7072 6563 ed000106\">Deprec\n 00015f20: 6174 6564 3a3c 2f61 3e3c 2f62 3e3c 2f64 ated:
    Use the fu\n 00015f40: 6e63 7469 6f6e 203c 6120 636c 6173 733d nction \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_values() [2/2]

    \n \n
    \n@@ -5271,15 +5271,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__ABF.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__ABF.html", "unified_diff": "@@ -616,15 +616,15 @@\n \n

    Detailed Description

    \n
    template<int dim>
    \n class FE_ABF< dim >

    Implementation of Arnold-Boffi-Falk (ABF) elements, conforming with the space Hdiv. These elements generate vector fields with normal components continuous between mesh cells.

    \n

    These elements are based on an article from Arnold, Boffi and Falk: Quadrilateral H(div) finite elements, SIAM J. Numer. Anal. Vol.42, No.6, pp.2429-2451

    \n

    In this article, the authors demonstrate that the usual RT elements and also BDM and other proposed finite dimensional subspaces of H(div) do not work properly on arbitrary FE grids. I.e. the convergence rates deteriorate on these meshes. As a solution the authors propose the ABF elements, which are implemented in this class.

    \n

    This class is not implemented for the codimension one case (spacedim != dim).

    \n-
    Todo:
    Even if this element is implemented for two and three space dimensions, the definition of the node values relies on consistently oriented faces in 3d. Therefore, care should be taken on complicated meshes.
    \n+
    Todo:
    Even if this element is implemented for two and three space dimensions, the definition of the node values relies on consistently oriented faces in 3d. Therefore, care should be taken on complicated meshes.
    \n

    Interpolation

    \n

    The interpolation operators associated with the RT element are constructed such that interpolation and computing the divergence are commuting operations. We require this from interpolating arbitrary functions as well as the restriction matrices. It can be achieved by two interpolation schemes, the simplified one in FE_RaviartThomasNodal and the original one here:

    \n

    Node values on edges/faces

    \n

    On edges or faces, the node values are the moments of the normal component of the interpolated function with respect to the traces of the RT polynomials. Since the normal trace of the RT space of degree k on an edge/face is the space Qk, the moments are taken with respect to this space.

    \n

    Interior node values

    \n

    Higher order RT spaces have interior nodes. These are moments taken with respect to the gradient of functions in Qk on the cell (this space is the matching space for RTk in a mixed formulation).

    \n

    Generalized support points

    \n@@ -1962,15 +1962,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n
    \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4696,15 +4696,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__BDM.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__BDM.html", "unified_diff": "@@ -595,16 +595,16 @@\n static std::mutex mutex\n  \n \n

    Detailed Description

    \n
    template<int dim>
    \n class FE_BDM< dim >

    The Brezzi-Douglas-Marini element.

    \n

    Degrees of freedom

    \n-
    Todo:
    The 3d version exhibits some numerical instabilities, in particular for higher order
    \n-
    Todo:
    Restriction matrices are missing.
    \n+
    Todo:
    The 3d version exhibits some numerical instabilities, in particular for higher order
    \n+
    Todo:
    Restriction matrices are missing.
    \n

    The matching pressure space for FE_BDM of order k is the element FE_DGP of order k-1.

    \n

    The BDM element of order p has p+1 degrees of freedom on each face. These are implemented as the function values in the p+1 Gauss points on each face.

    \n

    Additionally, for order greater or equal 2, we have additional p(p-1), the number of vector valued polynomials in Pp, interior degrees of freedom. These are the vector function values in the first p(p-1)/2 of the p2 Gauss points in the cell.

    \n \n

    Definition at line 58 of file fe_bdm.h.

    \n

    Member Typedef Documentation

    \n \n@@ -1860,15 +1860,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4667,15 +4667,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__BernardiRaugel.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__BernardiRaugel.html", "unified_diff": "@@ -1826,15 +1826,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4633,15 +4633,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Bernstein.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Bernstein.html", "unified_diff": "@@ -2658,15 +2658,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4880,15 +4880,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGBDM.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGBDM.html", "unified_diff": "@@ -1768,15 +1768,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4557,15 +4557,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGNedelec.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGNedelec.html", "unified_diff": "@@ -1768,15 +1768,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4557,15 +4557,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGP.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGP.html", "unified_diff": "@@ -2570,15 +2570,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4987,15 +4987,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGPMonomial.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGPMonomial.html", "unified_diff": "@@ -2742,15 +2742,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -5437,15 +5437,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGPNonparametric.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGPNonparametric.html", "unified_diff": "@@ -4424,15 +4424,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -4743,15 +4743,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGQ.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGQ.html", "unified_diff": "@@ -2586,15 +2586,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4816,15 +4816,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGQArbitraryNodes.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGQArbitraryNodes.html", "unified_diff": "@@ -2506,15 +2506,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4736,15 +4736,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGQHermite.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGQHermite.html", "unified_diff": "@@ -2509,15 +2509,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4739,15 +4739,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGQLegendre.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGQLegendre.html", "unified_diff": "@@ -2507,15 +2507,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4737,15 +4737,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGRaviartThomas.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGRaviartThomas.html", "unified_diff": "@@ -1768,15 +1768,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4557,15 +4557,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGVector.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__DGVector.html", "unified_diff": "@@ -1793,15 +1793,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4582,15 +4582,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Enriched.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Enriched.html", "unified_diff": "@@ -4564,15 +4564,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_values() [2/2]

    \n \n
    \n@@ -4819,15 +4819,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__FaceP.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__FaceP.html", "unified_diff": "@@ -1296,15 +1296,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -1765,15 +1765,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__FaceP_3_011_00_01spacedim_01_4.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__FaceP_3_011_00_01spacedim_01_4.html", "unified_diff": "@@ -1584,15 +1584,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data() [1/2]

    \n \n
    \n@@ -2097,15 +2097,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__FaceQ.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__FaceQ.html", "unified_diff": "@@ -1451,15 +1451,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -1920,15 +1920,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__FaceQ_3_011_00_01spacedim_01_4.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__FaceQ_3_011_00_01spacedim_01_4.html", "unified_diff": "@@ -4480,15 +4480,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data() [2/2]

    \n \n
    \n@@ -4789,15 +4789,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Hermite.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Hermite.html", "unified_diff": "@@ -2266,15 +2266,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4890,15 +4890,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Nedelec.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Nedelec.html", "has_internal_linenos": true, "unified_diff": "@@ -17319,15 +17319,15 @@\n 00043a60: 6162 6c65 3e0a 3c2f 6469 763e 3c64 6976 able>.
    \n 00043a80: 0a3c 646c 2063 6c61 7373 3d22 6465 7072 .
    <\n 00043aa0: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n 00043ab0: 663d 2264 6570 7265 6361 7465 642e 6874 f=\"deprecated.ht\n 00043ac0: 6d6c 235f 6465 7072 6563 6174 6564 3030 ml#_deprecated00\n-00043ad0: 3030 3334 223e 4465 7072 6563 6174 6564 0034\">Deprecated\n+00043ad0: 3030 3333 223e 4465 7072 6563 6174 6564 0033\">Deprecated\n 00043ae0: 3a3c 2f61 3e3c 2f62 3e3c 2f64 743e 3c64 :
    Use the versio\n 00043b00: 6e20 7461 6b69 6e67 2061 203c 6120 636c n taking a hp::\n 00043b40: 5143 6f6c 6c65 6374 696f 6e3c 2f61 3e20 QCollection \n@@ -28549,15 +28549,15 @@\n 0006f840: 2020 3c2f 7472 3e0a 3c2f 7461 626c 653e .\n 0006f850: 0a3c 2f64 6976 3e3c 6469 7620 636c 6173 .
    .\n 000583f0: 3c64 6c20 636c 6173 733d 2264 6570 7265
    Deprecated:\n+00058440: 3033 3222 3e44 6570 7265 6361 7465 643a 032\">Deprecated:\n 00058450: 3c2f 613e 3c2f 623e 3c2f 6474 3e3c 6464
    Use the version\n 00058470: 2074 616b 696e 6720 6120 3c61 2063 6c61 taking a hp::Q\n 000584b0: 436f 6c6c 6563 7469 6f6e 3c2f 613e 2061 Collection a\n@@ -24264,15 +24264,15 @@\n 0005ec70: 2020 3c2f 7472 3e0a 3c2f 7461 626c 653e .\n 0005ec80: 0a3c 2f64 6976 3e3c 6469 7620 636c 6173 .
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -4490,15 +4490,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__P1NC.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__P1NC.html", "unified_diff": "@@ -4410,15 +4410,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data() [2/2]

    \n \n
    \n@@ -4719,15 +4719,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Poly.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Poly.html", "unified_diff": "@@ -4379,15 +4379,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -4698,15 +4698,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__PolyFace.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__PolyFace.html", "unified_diff": "@@ -4160,15 +4160,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_values() [2/2]

    \n \n
    \n@@ -4415,15 +4415,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__PolyTensor.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__PolyTensor.html", "unified_diff": "@@ -4277,15 +4277,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -4596,15 +4596,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__PyramidDGP.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__PyramidDGP.html", "unified_diff": "@@ -1928,15 +1928,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4642,15 +4642,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__PyramidP.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__PyramidP.html", "unified_diff": "@@ -2089,15 +2089,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4658,15 +4658,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__PyramidPoly.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__PyramidPoly.html", "unified_diff": "@@ -1881,15 +1881,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4657,15 +4657,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q.html", "unified_diff": "@@ -3310,15 +3310,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -5477,15 +5477,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q__Base.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q__Base.html", "unified_diff": "@@ -2554,15 +2554,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4880,15 +4880,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q__Bubbles.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q__Bubbles.html", "unified_diff": "@@ -2766,15 +2766,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4933,15 +4933,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q__DG0.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q__DG0.html", "unified_diff": "@@ -2935,15 +2935,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -5102,15 +5102,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q__Hierarchical.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q__Hierarchical.html", "unified_diff": "@@ -3520,15 +3520,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -6138,15 +6138,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q__iso__Q1.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__Q__iso__Q1.html", "unified_diff": "@@ -2712,15 +2712,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4879,15 +4879,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__RT__Bubbles.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__RT__Bubbles.html", "unified_diff": "@@ -609,15 +609,15 @@\n \"\"/\n
    \n

    \n \n \n Left - \\(2d,\\,k=3\\), right - \\(3d,\\,k=2\\). \n \n-
    Todo:
    Implement restriction matrices
    \n+
    Todo:
    Implement restriction matrices
    \n \n

    Definition at line 87 of file fe_rt_bubbles.h.

    \n

    Member Typedef Documentation

    \n \n

    ◆ map_value_type

    \n \n
    \n@@ -1898,15 +1898,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4705,15 +4705,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__RannacherTurek.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__RannacherTurek.html", "unified_diff": "@@ -2009,15 +2009,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4723,15 +4723,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__RaviartThomas.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__RaviartThomas.html", "unified_diff": "@@ -2050,15 +2050,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4753,15 +4753,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__RaviartThomasNodal.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__RaviartThomasNodal.html", "unified_diff": "@@ -2262,15 +2262,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4905,15 +4905,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__SimplexDGP.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__SimplexDGP.html", "unified_diff": "@@ -2326,15 +2326,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4681,15 +4681,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__SimplexP.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__SimplexP.html", "unified_diff": "@@ -2328,15 +2328,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4683,15 +4683,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__SimplexP__Bubbles.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__SimplexP__Bubbles.html", "unified_diff": "@@ -2222,15 +2222,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4681,15 +4681,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__SimplexPoly.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__SimplexPoly.html", "unified_diff": "@@ -2186,15 +2186,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4707,15 +4707,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__TraceQ.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__TraceQ.html", "unified_diff": "@@ -1341,15 +1341,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -1810,15 +1810,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__TraceQ_3_011_00_01spacedim_01_4.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__TraceQ_3_011_00_01spacedim_01_4.html", "unified_diff": "@@ -1584,15 +1584,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data() [1/2]

    \n \n
    \n@@ -2097,15 +2097,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__WedgeDGP.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__WedgeDGP.html", "unified_diff": "@@ -1928,15 +1928,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4642,15 +4642,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__WedgeP.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__WedgeP.html", "unified_diff": "@@ -2089,15 +2089,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4658,15 +4658,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__WedgePoly.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFE__WedgePoly.html", "unified_diff": "@@ -1881,15 +1881,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values() [1/2]

    \n \n
    \n@@ -4657,15 +4657,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFiniteElement.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classFiniteElement.html", "unified_diff": "@@ -3896,15 +3896,15 @@\n \n \n \n protectedvirtual \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -4215,15 +4215,15 @@\n \n \n \n protectedvirtual \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1CUDAWrappers_1_1Vector.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1CUDAWrappers_1_1Vector.html", "unified_diff": "@@ -598,15 +598,15 @@\n \n \n \n inline \n \n \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 150 of file cuda_vector.h.

    \n \n
    \n \n \n

    ◆ operator=() [3/3]

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1Vector.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1EpetraWrappers_1_1Vector.html", "unified_diff": "@@ -124,202 +124,202 @@\n \"\"\n \"\"\n \n
    [legend]
    \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n

    \n Public Types

    using value_type = VectorTraits::value_type
    using value_type = VectorTraits::value_type
     
    using size_type = VectorTraits::size_type
    using size_type = VectorTraits::size_type
     
    using real_type = value_type
    using real_type = value_type
     
    using reference = internal::VectorReference
    using reference = internal::VectorReference
     
    using const_reference = const internal::VectorReference
    using const_reference = const internal::VectorReference
     
    \n \n-\n+\n \n-\n-\n+\n+\n \n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n

    \n Public Member Functions

    virtual void extract_subvector_to (const ArrayView< const types::global_dof_index > &indices, ArrayView< VectorTraits::value_type > &elements) const=0
    virtual void extract_subvector_to (const ArrayView< const types::global_dof_index > &indices, ArrayView< VectorTraits::value_type > &elements) const=0
     
    template<class Archive >
    void serialize (Archive &ar, const unsigned int version)
    template<class Archive >
    void serialize (Archive &ar, const unsigned int version)
     
    1: Basic Object-handling
     Vector ()
     
     Vector (const Vector &V)
     Vector (const Vector &V)
     
     Vector (const IndexSet &parallel_partitioner, const MPI_Comm communicator)
     Vector (const IndexSet &parallel_partitioner, const MPI_Comm communicator)
     
    void reinit (const IndexSet &parallel_partitioner, const MPI_Comm communicator, const bool omit_zeroing_entries=false)
    void reinit (const IndexSet &parallel_partitioner, const MPI_Comm communicator, const bool omit_zeroing_entries=false)
     
    void reinit (const Vector &V, const bool omit_zeroing_entries=false)
    void reinit (const Vector &V, const bool omit_zeroing_entries=false)
     
    virtual void extract_subvector_to (const ArrayView< const types::global_dof_index > &indices, ArrayView< double > &elements) const override
    virtual void extract_subvector_to (const ArrayView< const types::global_dof_index > &indices, ArrayView< double > &elements) const override
     
    Vectoroperator= (const Vector &V)
    Vectoroperator= (const Vector &V)
     
    Vectoroperator= (const double s)
    Vectoroperator= (const double s)
     
    void import_elements (const ReadWriteVector< double > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    void import_elements (const ReadWriteVector< double > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
     
    void import (const ReadWriteVector< double > &V, const VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    void import (const ReadWriteVector< double > &V, const VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
     
    2: Data-Access
    reference operator() (const size_type index)
    reference operator() (const size_type index)
     
    value_type operator() (const size_type index) const
    value_type operator() (const size_type index) const
     
    reference operator[] (const size_type index)
    reference operator[] (const size_type index)
     
    value_type operator[] (const size_type index) const
    value_type operator[] (const size_type index) const
     
    3: Modification of vectors
    Vectoroperator*= (const double factor)
    Vectoroperator*= (const double factor)
     
    Vectoroperator/= (const double factor)
    Vectoroperator/= (const double factor)
     
    Vectoroperator+= (const Vector &V)
    Vectoroperator+= (const Vector &V)
     
    Vectoroperator-= (const Vector &V)
    Vectoroperator-= (const Vector &V)
     
    double operator* (const Vector &V) const
    double operator* (const Vector &V) const
     
    void add (const double a)
    void add (const double a)
     
    void add (const double a, const Vector &V)
    void add (const double a, const Vector &V)
     
    void add (const double a, const Vector &V, const double b, const Vector &W)
    void add (const double a, const Vector &V, const double b, const Vector &W)
     
    void sadd (const double s, const double a, const Vector &V)
    void sadd (const double s, const double a, const Vector &V)
     
    void scale (const Vector &scaling_factors)
    void scale (const Vector &scaling_factors)
     
    void equ (const double a, const Vector &V)
    void equ (const double a, const Vector &V)
     
    bool all_zero () const
    bool all_zero () const
     
    4: Scalar products, norms and related operations
    double mean_value () const
    double mean_value () const
     
    double l1_norm () const
    double l1_norm () const
     
    double l2_norm () const
    double l2_norm () const
     
    double linfty_norm () const
    double linfty_norm () const
     
    double add_and_dot (const double a, const Vector &V, const Vector &W)
    double add_and_dot (const double a, const Vector &V, const Vector &W)
     
    5: Scalar products, norms and related operations
    bool has_ghost_elements () const
    bool has_ghost_elements () const
     
    virtual size_type size () const override
    virtual size_type size () const override
     
    size_type locally_owned_size () const
    size_type locally_owned_size () const
     
    MPI_Comm get_mpi_communicator () const
    MPI_Comm get_mpi_communicator () const
     
    ::IndexSet locally_owned_elements () const
    ::IndexSet locally_owned_elements () const
     
    6: Mixed stuff
    void compress (const VectorOperation::values operation)
    void compress (const VectorOperation::values operation)
     
    const Epetra_FEVector & trilinos_vector () const
    const Epetra_FEVector & trilinos_vector () const
     
    Epetra_FEVector & trilinos_vector ()
     
    void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
    void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
     
    std::size_t memory_consumption () const
    std::size_t memory_consumption () const
     
    Subscriptor functionality

    Classes derived from Subscriptor provide a facility to subscribe to this object. This is mostly used by the SmartPointer class.

    \n
    void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
    void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
     
    void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
    void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
     
    unsigned int n_subscriptions () const
    unsigned int n_subscriptions () const
     
    template<typename StreamType >
    void list_subscribers (StreamType &stream) const
    template<typename StreamType >
    void list_subscribers (StreamType &stream) const
     
    void list_subscribers () const
    void list_subscribers () const
     
    \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n

    \n Static Public Member Functions

    static ::ExceptionBaseExcDifferentParallelPartitioning ()
    static ::ExceptionBaseExcDifferentParallelPartitioning ()
     
    static ::ExceptionBaseExcVectorTypeNotCompatible ()
    static ::ExceptionBaseExcVectorTypeNotCompatible ()
     
    static ::ExceptionBaseExcTrilinosError (int arg1)
    static ::ExceptionBaseExcTrilinosError (int arg1)
     
    static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
    static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
     
    static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
    static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
     
    \n \n-\n+\n \n-\n+\n \n

    \n Private Types

    using map_value_type = decltype(counter_map)::value_type
    using map_value_type = decltype(counter_map)::value_type
     
    using map_iterator = decltype(counter_map)::iterator
    using map_iterator = decltype(counter_map)::iterator
     
    \n \n-\n+\n \n-\n+\n \n

    \n Private Member Functions

    void create_epetra_comm_pattern (const IndexSet &source_index_set, const MPI_Comm mpi_comm)
    void create_epetra_comm_pattern (const IndexSet &source_index_set, const MPI_Comm mpi_comm)
     
    void check_no_subscribers () const noexcept
    void check_no_subscribers () const noexcept
     
    \n \n \n \n \n \n-\n+\n \n \n \n \n \n \n \n-\n+\n \n

    \n Private Attributes

    std::unique_ptr< Epetra_FEVector > vector
     
    ::IndexSet source_stored_elements
     
    std::shared_ptr< const CommunicationPatternepetra_comm_pattern
    std::shared_ptr< const CommunicationPatternepetra_comm_pattern
     
    std::atomic< unsigned intcounter
     
    std::map< std::string, unsigned intcounter_map
     
    std::vector< std::atomic< bool > * > validity_pointers
     
    const std::type_info * object_info
    const std::type_info * object_info
     
    \n \n-\n+\n \n

    \n Static Private Attributes

    static std::mutex mutex
    static std::mutex mutex
     
    \n \n-\n+\n \n

    \n Friends

    class internal::VectorReference
    class internal::VectorReference
     
    \n

    Detailed Description

    \n

    This class implements a wrapper to the Trilinos distributed vector class Epetra_FEVector. This class requires Trilinos to be compiled with MPI support.

    \n \n

    Definition at line 225 of file trilinos_epetra_vector.h.

    \n

    Member Typedef Documentation

    \n \n

    ◆ value_type

    \n \n
    \n
    \n \n

    Definition at line 229 of file trilinos_epetra_vector.h.

    \n \n
    \n@@ -327,15 +327,15 @@\n \n

    ◆ size_type

    \n \n
    \n
    \n \n

    Definition at line 230 of file trilinos_epetra_vector.h.

    \n \n
    \n@@ -343,15 +343,15 @@\n \n

    ◆ real_type

    \n \n
    \n
    \n \n

    Definition at line 231 of file trilinos_epetra_vector.h.

    \n \n
    \n@@ -359,15 +359,15 @@\n \n

    ◆ reference

    \n \n
    \n
    \n \n \n- \n+ \n \n
    using LinearAlgebra::EpetraWrappers::Vector::reference = internal::VectorReferenceusing LinearAlgebra::EpetraWrappers::Vector::reference = internal::VectorReference
    \n
    \n \n

    Definition at line 232 of file trilinos_epetra_vector.h.

    \n \n
    \n@@ -375,15 +375,15 @@\n \n

    ◆ const_reference

    \n \n
    \n
    \n \n \n- \n+ \n \n
    using LinearAlgebra::EpetraWrappers::Vector::const_reference = const internal::VectorReferenceusing LinearAlgebra::EpetraWrappers::Vector::const_reference = const internal::VectorReference
    \n
    \n \n

    Definition at line 233 of file trilinos_epetra_vector.h.

    \n \n
    \n@@ -394,15 +394,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using Subscriptor::map_value_type = decltype(counter_map)::value_typeusing Subscriptor::map_value_type = decltype(counter_map)::value_type
    \n
    \n privateinherited
    \n@@ -419,15 +419,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using Subscriptor::map_iterator = decltype(counter_map)::iteratorusing Subscriptor::map_iterator = decltype(counter_map)::iterator
    \n
    \n privateinherited
    \n@@ -464,15 +464,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    Vector< Number >::Vector (const Vectorconst VectorV)
    \n
    \n

    Copy constructor. Sets the dimension and the partitioning to that of the given vector and copies all elements.

    \n \n@@ -488,21 +488,21 @@\n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -525,28 +525,28 @@\n \n
    \n
    \n
    Vector< Number >::Vector (const IndexSetconst IndexSetparallel_partitioner,
    const MPI_Comm const MPI_Comm communicator 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::reinit (const IndexSetconst IndexSetparallel_partitioner,
    const MPI_Comm const MPI_Comm communicator,
    const bool omit_zeroing_entries = false const bool omit_zeroing_entries = false 
    )
    \n@@ -562,22 +562,22 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::reinit (const Vectorconst VectorV,
    const bool omit_zeroing_entries = false const bool omit_zeroing_entries = false 
    )
    \n@@ -596,15 +596,15 @@\n \n \n \n \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -630,17 +630,17 @@\n \n

    ◆ operator=() [1/2]

    \n \n
    \n
    \n
    void Vector< Number >::extract_subvector_to (const ArrayView< const types::global_dof_index > & const ArrayView< const types::global_dof_index > & indices,
    ArrayView< double > & elements 
    \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & Vector< Number >::operator= Vector & Vector< Number >::operator= (const Vectorconst VectorV)
    \n
    \n

    Copy function. This function takes a Vector and copies all the elements. The Vector will have the same parallel distribution as V.

    \n

    The semantics of this operator are complex. If the two vectors have the same size, and if either the left or right hand side vector of the assignment (i.e., either the input vector on the right hand side, or the calling vector to the left of the assignment operator) currently has ghost elements, then the left hand side vector will also have ghost values and will consequently be a read-only vector (see also the glossary entry on the issue). Otherwise, the left hand vector will be a writable vector after this operation. These semantics facilitate having a vector with ghost elements on the left hand side of the assignment, and a vector without ghost elements on the right hand side, with the resulting left hand side vector having the correct values in both its locally owned and its ghost elements.

    \n@@ -653,17 +653,17 @@\n \n

    ◆ operator=() [2/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & Vector< Number >::operator= Vector & Vector< Number >::operator= (const double const double s)
    \n
    \n

    Sets all elements of the vector to the scalar s. This operation is only allowed if s is equal to zero.

    \n \n@@ -676,27 +676,27 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -716,42 +716,42 @@\n
    void Vector< Number >::import_elements (const ReadWriteVector< double > & const ReadWriteVector< double > & V,
    VectorOperation::values operation,
    const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > & const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > & communication_pattern = {} 
    )
    \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n
    void LinearAlgebra::EpetraWrappers::Vector::import (const ReadWriteVector< double > & const ReadWriteVector< double > & V,
    const VectorOperation::values const VectorOperation::values operation,
    const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > & const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > & communication_pattern = {} 
    )
    \n
    \n inline
    \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 345 of file trilinos_epetra_vector.h.

    \n \n
    \n
    \n \n

    ◆ operator()() [1/2]

    \n@@ -759,17 +759,17 @@\n
    \n
    \n \n \n \n \n@@ -786,17 +786,17 @@\n \n

    ◆ operator()() [2/2]

    \n \n
    \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    internal::VectorReference Vector< Number >::operator() internal::VectorReference Vector< Number >::operator() (const size_type const size_type index)
    \n
    \n inline
    \n \n- \n+ \n \n- \n+ \n \n \n \n
    value_type LinearAlgebra::EpetraWrappers::Vector::operator() value_type LinearAlgebra::EpetraWrappers::Vector::operator() (const size_type const size_type index) const
    \n
    \n

    Provide read-only access to an element.

    \n

    When using a vector distributed with MPI, this operation only makes sense for elements that are actually present on the calling processor. Otherwise, an exception is thrown.

    \n@@ -809,29 +809,29 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    internal::VectorReference Vector< Number >::operator[] internal::VectorReference Vector< Number >::operator[] (const size_type const size_type index)
    \n
    \n inline
    \n
    \n

    Provide access to a given element, both read and write.

    \n-

    Exactly the same as operator().

    \n+

    Exactly the same as operator().

    \n \n

    Definition at line 798 of file trilinos_epetra_vector.h.

    \n \n
    \n
    \n \n

    ◆ operator[]() [2/2]

    \n@@ -839,44 +839,44 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector::value_type Vector< Number >::operator[] Vector::value_type Vector< Number >::operator[] (const size_type const size_type index) const
    \n
    \n inline
    \n
    \n

    Provide read-only access to an element.

    \n-

    Exactly the same as operator().

    \n+

    Exactly the same as operator().

    \n \n

    Definition at line 804 of file trilinos_epetra_vector.h.

    \n \n
    \n
    \n \n

    ◆ operator*=()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & Vector< Number >::operator*= Vector & Vector< Number >::operator*= (const double const double factor)
    \n
    \n

    Multiply the entire vector by a fixed factor.

    \n \n@@ -887,17 +887,17 @@\n \n

    ◆ operator/=()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & Vector< Number >::operator/= Vector & Vector< Number >::operator/= (const double const double factor)
    \n
    \n

    Divide the entire vector by a fixed factor.

    \n \n@@ -908,17 +908,17 @@\n \n

    ◆ operator+=()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & Vector< Number >::operator+= Vector & Vector< Number >::operator+= (const Vectorconst VectorV)
    \n
    \n

    Add the vector V to the present one.

    \n \n@@ -929,17 +929,17 @@\n \n

    ◆ operator-=()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & Vector< Number >::operator-= Vector & Vector< Number >::operator-= (const Vectorconst VectorV)
    \n
    \n

    Subtract the vector V from the present one.

    \n \n@@ -950,17 +950,17 @@\n \n

    ◆ operator*()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    double Vector< Number >::operator* double Vector< Number >::operator* (const Vectorconst VectorV) const
    \n
    \n

    Return the scalar product of two vectors. The vectors need to have the same layout.

    \n \n@@ -973,15 +973,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void Vector< Number >::add (const double const double a)
    \n
    \n

    Add a to all components. Note that is a scalar not a vector.

    \n \n@@ -994,21 +994,21 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1025,33 +1025,33 @@\n \n
    \n
    \n
    void Vector< Number >::add (const double const double a,
    const Vectorconst VectorV 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1068,27 +1068,27 @@\n \n
    \n
    \n
    void Vector< Number >::add (const double const double a,
    const Vectorconst VectorV,
    const double const double b,
    const Vectorconst VectorW 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1105,15 +1105,15 @@\n \n
    \n
    \n
    void Vector< Number >::sadd (const double const double s,
    const double const double a,
    const Vectorconst VectorV 
    )
    \n \n \n \n- \n+ \n \n \n \n
    void Vector< Number >::scale (const Vectorconst Vectorscaling_factors)
    \n
    \n

    Scale each element of this vector by the corresponding element in the argument. This function is mostly meant to simulate multiplication (and immediate re-assignment) by a diagonal scaling matrix. The vectors need to have the same layout.

    \n \n@@ -1126,21 +1126,21 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1257,27 +1257,27 @@\n \n
    \n
    \n
    void Vector< Number >::equ (const double const double a,
    const Vectorconst VectorV 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1402,16 +1402,15 @@\n \n \n \n \n \n
    double Vector< Number >::add_and_dot (const double const double a,
    const Vectorconst VectorV,
    const Vectorconst VectorW 
    )
    IndexSet Vector< Number >::locally_owned_elements () const
    \n
    \n-

    Return an index set that describes which elements of this vector are owned by the current processor. As a consequence, the index sets returned on different processors if this is a distributed vector will form disjoint sets that add up to the complete index set. Obviously, if a vector is created on only one processor, then the result would satisfy

    vec.locally_owned_elements() == complete_index_set(vec.size())
    \n-
    std::unique_ptr< Epetra_FEVector > vector
    \n+

    Return an index set that describes which elements of this vector are owned by the current processor. As a consequence, the index sets returned on different processors if this is a distributed vector will form disjoint sets that add up to the complete index set. Obviously, if a vector is created on only one processor, then the result would satisfy

    vec.locally_owned_elements() == complete_index_set(vec.size())
    \n
    IndexSet complete_index_set(const IndexSet::size_type N)
    Definition index_set.h:1204
    \n
    \n

    Definition at line 562 of file trilinos_epetra_vector.cc.

    \n \n
    \n
    \n \n@@ -1419,15 +1418,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void Vector< Number >::compress (const VectorOperation::values const VectorOperation::values operation)
    \n
    \n

    Compress the underlying representation of the Trilinos object, i.e. flush the buffers of the vector object if it has any. This function is necessary after writing into a vector element-by-element and before anything else can be done on it.

    \n

    See Compressing distributed objects for more information.

    \n@@ -1439,15 +1438,15 @@\n \n

    ◆ trilinos_vector() [1/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n \n \n \n
    const Epetra_FEVector & Vector< Number >::trilinos_vector const Epetra_FEVector & Vector< Number >::trilinos_vector () const
    \n
    \n

    Return a const reference to the underlying Trilinos Epetra_FEVector class.

    \n@@ -1487,28 +1486,28 @@\n
    (std::ostream & out,
    const unsigned int const unsigned int precision = 3,
    const bool scientific = true, const bool scientific = true,
    const bool across = true const bool across = true 
    ) const
    \n@@ -1547,21 +1546,21 @@\n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1584,15 +1583,15 @@\n
    \n
    \n
    void Vector< Number >::create_epetra_comm_pattern (const IndexSetconst IndexSetsource_index_set,
    const MPI_Comm const MPI_Comm mpi_comm 
    )
    \n \n
    \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1724,15 +1723,15 @@\n \n \n

    ◆ list_subscribers() [1/2]

    \n \n
    \n
    \n
    \n-template<typename StreamType >
    \n+template<typename StreamType >
    \n
    virtual void ReadVector< VectorTraits::value_type >::extract_subvector_to virtual void ReadVector< VectorTraits::value_type >::extract_subvector_to (const ArrayView< const types::global_dof_index > & indices,
    \n \n \n \n \n
    \n \n \n \n \n@@ -1783,15 +1782,15 @@\n \n \n

    ◆ serialize()

    \n \n
    \n
    \n
    \n-template<class Archive >
    \n+template<class Archive >
    \n
    void Subscriptor::list_subscribers (
    \n \n
    \n \n \n \n \n@@ -1861,15 +1860,15 @@\n
    \n
    \n
    void Subscriptor::serialize (
    \n \n \n \n \n
    \n \n \n- \n+ \n \n
    friend class internal::VectorReferencefriend class internal::VectorReference
    \n
    \n friend
    \n@@ -1936,15 +1935,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    std::shared_ptr<const CommunicationPattern> LinearAlgebra::EpetraWrappers::Vector::epetra_comm_patternstd::shared_ptr<const CommunicationPattern> LinearAlgebra::EpetraWrappers::Vector::epetra_comm_pattern
    \n
    \n private
    \n@@ -2039,15 +2038,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    const std::type_info* Subscriptor::object_infoconst std::type_info* Subscriptor::object_info
    \n
    \n mutableprivateinherited
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -16,276 +16,276 @@\n _\bL_\bi_\bn_\be_\ba_\br_\b _\ba_\bl_\bg_\be_\bb_\br_\ba_\b _\bc_\bl_\ba_\bs_\bs_\be_\bs \u00bb _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs | _\bL_\bi_\bn_\be_\ba_\br_\b _\ba_\bl_\bg_\be_\bb_\br_\ba_\b _\bc_\bl_\ba_\bs_\bs_\be_\bs \u00bb _\bV_\be_\bc_\bt_\bo_\br\n _\bc_\bl_\ba_\bs_\bs_\be_\bs\n #include <_\bd_\be_\ba_\bl_\b._\bI_\bI_\b/_\bl_\ba_\bc_\b/_\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh>\n Inheritance diagram for LinearAlgebra::EpetraWrappers::Vector:\n [Inheritance graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n P\bPu\bub\bbl\bli\bic\bc T\bTy\byp\bpe\bes\bs\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n+using\u00a0 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+using\u00a0 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n+using\u00a0 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n+using\u00a0 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bc_\bo_\bn_\bs_\bt internal::VectorReference\n+using\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const internal::VectorReference\n \u00a0\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< _\bc_\bo_\bn_\bs_\bt _\bt_\by_\bp_\be_\bs_\b:_\b:\n+ virtual void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< const _\bt_\by_\bp_\be_\bs_\b:_\b:\n _\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx > &indices, _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:\n- _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be > &elements) _\bc_\bo_\bn_\bs_\bt=0\n+ _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be > &elements) const=0\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n- void\u00a0 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be (_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt version)\n+template\n+ void\u00a0 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be (Archive &ar, const unsigned _\bi_\bn_\bt version)\n \u00a0\n 1: Basic Object-handling\n \u00a0 _\bV_\be_\bc_\bt_\bo_\br ()\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br, _\bc_\bo_\bn_\bs_\bt\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioner, const\n _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br, _\bc_\bo_\bn_\bs_\bt\n- _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs=_\bf_\ba_\bl_\bs_\be)\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioner, const\n+ _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator, const _\bb_\bo_\bo_\bl\n+ omit_zeroing_entries=false)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs=_\bf_\ba_\bl_\bs_\be)\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bV_\be_\bc_\bt_\bo_\br &V, const _\bb_\bo_\bo_\bl\n+ omit_zeroing_entries=false)\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< _\bc_\bo_\bn_\bs_\bt _\bt_\by_\bp_\be_\bs_\b:_\b:\n+ virtual void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< const _\bt_\by_\bp_\be_\bs_\b:_\b:\n _\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx > &indices, _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< double >\n- &elements) _\bc_\bo_\bn_\bs_\bt _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ &elements) const override\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt double s)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const double s)\n \u00a0\n- void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs (_\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< double > &V,\n- _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, _\bc_\bo_\bn_\bs_\bt std::\n- shared_ptr< _\bc_\bo_\bn_\bs_\bt _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:\n- _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be > &_\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn={})\n+ void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs (const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< double > &V,\n+ _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, const std::\n+ shared_ptr< const _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:\n+ _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be > &communication_pattern={})\n \u00a0\n- void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt (_\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< double > &V, _\bc_\bo_\bn_\bs_\bt\n- _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, _\bc_\bo_\bn_\bs_\bt std::\n- shared_ptr< _\bc_\bo_\bn_\bs_\bt _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:\n- _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be > &_\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn={})\n+ void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt (const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< double > &V, const\n+ _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, const std::\n+ shared_ptr< const _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:\n+ _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be > &communication_pattern={})\n \u00a0\n 2: Data-Access\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n \u00a0\n- _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n \u00a0\n- _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n 3: Modification of vectors\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b= (_\bc_\bo_\bn_\bs_\bt double factor)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b= (const double factor)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b/_\b= (_\bc_\bo_\bn_\bs_\bt double factor)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b/_\b= (const double factor)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b= (const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b= (const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- double\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b* (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V) _\bc_\bo_\bn_\bs_\bt\n+ double\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b* (const _\bV_\be_\bc_\bt_\bo_\br &V) const\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt double a)\n+ void\u00a0 _\ba_\bd_\bd (const double a)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt double a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ void\u00a0 _\ba_\bd_\bd (const double a, const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt double a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V, _\bc_\bo_\bn_\bs_\bt double b,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &W)\n+ void\u00a0 _\ba_\bd_\bd (const double a, const _\bV_\be_\bc_\bt_\bo_\br &V, const double b,\n+ const _\bV_\be_\bc_\bt_\bo_\br &W)\n \u00a0\n- void\u00a0 _\bs_\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt double s, _\bc_\bo_\bn_\bs_\bt double a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ void\u00a0 _\bs_\ba_\bd_\bd (const double s, const double a, const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- void\u00a0 _\bs_\bc_\ba_\bl_\be (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &_\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs)\n+ void\u00a0 _\bs_\bc_\ba_\bl_\be (const _\bV_\be_\bc_\bt_\bo_\br &scaling_factors)\n \u00a0\n- void\u00a0 _\be_\bq_\bu (_\bc_\bo_\bn_\bs_\bt double a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ void\u00a0 _\be_\bq_\bu (const double a, const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo () const\n \u00a0\n 4: Scalar products, norms and related operations\n- double\u00a0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be () _\bc_\bo_\bn_\bs_\bt\n+ double\u00a0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be () const\n \u00a0\n- double\u00a0 _\bl_\b1_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ double\u00a0 _\bl_\b1_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- double\u00a0 _\bl_\b2_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ double\u00a0 _\bl_\b2_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- double\u00a0 _\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ double\u00a0 _\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- double\u00a0 _\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt (_\bc_\bo_\bn_\bs_\bt double a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V, _\bc_\bo_\bn_\bs_\bt\n+ double\u00a0 _\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt (const double a, const _\bV_\be_\bc_\bt_\bo_\br &V, const\n _\bV_\be_\bc_\bt_\bo_\br &W)\n \u00a0\n 5: Scalar products, norms and related operations\n- _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bs_\bi_\bz_\be () _\bc_\bo_\bn_\bs_\bt _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ virtual _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bs_\bi_\bz_\be () const override\n \u00a0\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be () _\bc_\bo_\bn_\bs_\bt\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be () const\n \u00a0\n- _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br () _\bc_\bo_\bn_\bs_\bt\n+ _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br () const\n \u00a0\n- _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n 6: Mixed stuff\n- void\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation)\n+ void\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs (const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation)\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt Epetra_FEVector &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br () _\bc_\bo_\bn_\bs_\bt\n+const Epetra_FEVector &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br () const\n \u00a0\n Epetra_FEVector &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br ()\n \u00a0\n- void\u00a0 _\bp_\br_\bi_\bn_\bt (std::ostream &out, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n- precision=3, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl scientific=_\bt_\br_\bu_\be, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\ba_\bc_\br_\bo_\bs_\bs=_\bt_\br_\bu_\be) _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bp_\br_\bi_\bn_\bt (std::ostream &out, const unsigned _\bi_\bn_\bt\n+ precision=3, const _\bb_\bo_\bo_\bl scientific=true, const _\bb_\bo_\bo_\bl\n+ across=true) const\n \u00a0\n- std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () _\bc_\bo_\bn_\bs_\bt\n+ std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () const\n \u00a0\n Subscriptor functionality\n Classes derived from _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br provide a facility to subscribe to this\n object. This is mostly used by the _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br class.\n- void\u00a0 _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *_\bc_\bo_\bn_\bs_\bt _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by, _\bc_\bo_\bn_\bs_\bt\n- std::string &_\bi_\bd_\be_\bn_\bt_\bi_\bf_\bi_\be_\br=\"\") _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *const validity, const\n+ std::string &identifier=\"\") const\n \u00a0\n- void\u00a0 _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *_\bc_\bo_\bn_\bs_\bt _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by,\n- _\bc_\bo_\bn_\bs_\bt std::string &_\bi_\bd_\be_\bn_\bt_\bi_\bf_\bi_\be_\br=\"\") _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *const validity,\n+ const std::string &identifier=\"\") const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn_\bs () const\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n- void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs (_\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be &stream) _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs (StreamType &stream) const\n \u00a0\n- void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () const\n \u00a0\n S\bSt\bta\bat\bti\bic\bc P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg ()\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be_\bN_\bo_\bt_\bC_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bl_\be ()\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be_\bN_\bo_\bt_\bC_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bl_\be ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt _\ba_\br_\bg_\b1)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt arg1)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bI_\bn_\bU_\bs_\be (_\bi_\bn_\bt _\ba_\br_\bg_\b1, std::string _\ba_\br_\bg_\b2, std::string\n- _\ba_\br_\bg_\b3)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bI_\bn_\bU_\bs_\be (_\bi_\bn_\bt arg1, std::string arg2, std::string\n+ arg3)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bN_\bo_\bS_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br (std::string _\ba_\br_\bg_\b1, std::string _\ba_\br_\bg_\b2)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bN_\bo_\bS_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br (std::string arg1, std::string arg2)\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be T\bTy\byp\bpe\bes\bs\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n+using\u00a0 _\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)::iterator\n+using\u00a0 _\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)::iterator\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-void\u00a0 _\bc_\br_\be_\ba_\bt_\be_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bs_\bo_\bu_\br_\bc_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt, _\bc_\bo_\bn_\bs_\bt\n+void\u00a0 _\bc_\br_\be_\ba_\bt_\be_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &source_index_set, const\n _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm mpi_comm)\n \u00a0\n-void\u00a0 _\bc_\bh_\be_\bc_\bk_\b__\bn_\bo_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+void\u00a0 _\bc_\bh_\be_\bc_\bk_\b__\bn_\bo_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () const noexcept\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n std::unique_ptr< Epetra_FEVector >\u00a0 _\bv_\be_\bc_\bt_\bo_\br\n \u00a0\n _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bs_\bo_\bu_\br_\bc_\be_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n \u00a0\n-std::shared_ptr< _\bc_\bo_\bn_\bs_\bt _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn >\u00a0 _\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn\n+std::shared_ptr< const _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn >\u00a0 _\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn\n \u00a0\n std::atomic< unsigned _\bi_\bn_\bt >\u00a0 _\bc_\bo_\bu_\bn_\bt_\be_\br\n \u00a0\n std::map< std::string, unsigned _\bi_\bn_\bt >\u00a0 _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp\n \u00a0\n std::vector< std::atomic< _\bb_\bo_\bo_\bl > * >\u00a0 _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by_\b__\bp_\bo_\bi_\bn_\bt_\be_\br_\bs\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt std::type_info *\u00a0 _\bo_\bb_\bj_\be_\bc_\bt_\b__\bi_\bn_\bf_\bo\n+ const std::type_info *\u00a0 _\bo_\bb_\bj_\be_\bc_\bt_\b__\bi_\bn_\bf_\bo\n \u00a0\n S\bSt\bta\bat\bti\bic\bc P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n-_\bs_\bt_\ba_\bt_\bi_\bc std::mutex\u00a0 _\bm_\bu_\bt_\be_\bx\n+static std::mutex\u00a0 _\bm_\bu_\bt_\be_\bx\n \u00a0\n F\bFr\bri\bie\ben\bnd\bds\bs\n-_\bc_\bl_\ba_\bs_\bs\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be\n+class\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n This class implements a wrapper to the Trilinos distributed vector class\n Epetra_FEVector. This class requires Trilinos to be compiled with MPI support.\n Definition at line _\b2_\b2_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br T\bTy\byp\bpe\bed\bde\bef\bf D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:\n+using _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:\n _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n Definition at line _\b2_\b2_\b9 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:\n+using _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n Definition at line _\b2_\b3_\b0 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bea\bal\bl_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n+using _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n Definition at line _\b2_\b3_\b1 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::\n+using _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::\n VectorReference\n Definition at line _\b2_\b3_\b2 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bon\bns\bst\bt_\b_r\bre\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bc_\bo_\bn_\bs_\bt internal::\n+using _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const internal::\n VectorReference\n Definition at line _\b2_\b3_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bap\bp_\b_v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n+using _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n The data type used in _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp.\n Definition at line _\b2_\b2_\b9 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bap\bp_\b_i\bit\bte\ber\bra\bat\bto\bor\br *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp):: privateinherited\n+using _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp):: privateinherited\n iterator\n The iterator type used in _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp.\n Definition at line _\b2_\b3_\b4 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* C\bCo\bon\bns\bst\btr\bru\buc\bct\bto\bor\br &\b& D\bDe\bes\bst\btr\bru\buc\bct\bto\bor\br D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( )\n Constructor. Create a vector of dimension zero.\n Definition at line _\b8_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n+_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n Copy constructor. Sets the dimension and the partitioning to that of the given\n vector and copies all elements.\n Definition at line _\b9_\b1 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0 explicit\n+_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0 explicit\n )\n This constructor takes an _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt that defines how to distribute the\n individual components among the MPI processors. Since it also includes\n information about the size of the vector, this is all we need to generate a\n parallel vector.\n Definition at line _\b9_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bn D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = _\bf_\ba_\bl_\bs_\be\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br,\n+ const _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = false\u00a0\n )\n Reinit functionality. This function destroys the old vector content and\n generates a new one based on the input partitioning. The flag\n omit_zeroing_entries determines whether the vector should be filled with zeros\n (false) or left in an undetermined state (true).\n Definition at line _\b1_\b0_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = _\bf_\ba_\bl_\bs_\be\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n+ const _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = false\u00a0\n )\n Change the dimension to that of the vector V. The elements of V are not copied.\n Definition at line _\b1_\b2_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\bex\bxt\btr\bra\bac\bct\bt_\b_s\bsu\bub\bbv\bve\bec\bct\bto\bor\br_\b_t\bto\bo(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >:: _\bc_\bo_\bn_\bs_\bt _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< _\bc_\bo_\bn_\bs_\bt\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >:: const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< const\n extract_subvector_to ( _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx > i\bin\bnd\bdi\bic\bce\bes\bs,\n &\u00a0 overridevirtual\n _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< double > &\u00a0 e\bel\ble\bem\bme\ben\bnt\bts\bs\u00a0\n ) const\n Extract a range of elements all at once.\n Definition at line _\b1_\b3_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n+_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >::operator= ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n Copy function. This function takes a _\bV_\be_\bc_\bt_\bo_\br and copies all the elements. The\n _\bV_\be_\bc_\bt_\bo_\br will have the same parallel distribution as V.\n The semantics of this operator are complex. If the two vectors have the same\n size, and if either the left or right hand side vector of the assignment (i.e.,\n either the input vector on the right hand side, or the calling vector to the\n left of the assignment operator) currently has ghost elements, then the left\n hand side vector will also have ghost values and will consequently be a read-\n@@ -300,133 +300,133 @@\n simply a copy operation in the usual sense: In that case, if the right hand\n side has no ghost elements (i.e., is a completely distributed vector), then the\n left hand side will have no ghost elements either. And if the right hand side\n has ghost elements (and is consequently read-only), then the left hand side\n will have these same properties after the operation.\n Definition at line _\b1_\b5_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br= ( _\bc_\bo_\bn_\bs_\bt double\u00a0 s\bs )\n+_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >::operator= ( const double\u00a0 s\bs )\n Sets all elements of the vector to the scalar s. This operation is only allowed\n if s is equal to zero.\n Definition at line _\b1_\b8_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bim\bmp\bpo\bor\brt\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( _\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< V\bV,\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< V\bV,\n import_elements double > &\u00a0\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn,\n- _\bc_\bo_\bn_\bs_\bt std::shared_ptr<\n- _\bc_\bo_\bn_\bs_\bt _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b: c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bti\bio\bon\bn_\b_p\bpa\bat\btt\bte\ber\brn\bn =\n+ const std::shared_ptr<\n+ const _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b: c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bti\bio\bon\bn_\b_p\bpa\bat\btt\bte\ber\brn\bn =\n _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be > {}\u00a0\n &\u00a0\n )\n Imports all the elements present in the vector's _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt from the input vector\n V. _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation is used to decide if the elements in V\n should be added to the current vector or replace the current elements. The last\n parameter can be used if the same communication pattern is used multiple times.\n This can be used to improve performance.\n Definition at line _\b2_\b0_\b1 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bim\bmp\bpo\bor\brt\bt(\b()\b) *\b**\b**\b**\b**\b*\n-void LinearAlgebra:: _\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br<\n+void LinearAlgebra:: const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br<\n EpetraWrappers:: ( double > &\u00a0 V\bV,\n Vector::import\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b: o\bop\bpe\ber\bra\bat\bti\bio\bon\bn,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b: o\bop\bpe\ber\bra\bat\bti\bio\bon\bn,\n _\bv_\ba_\bl_\bu_\be_\bs\u00a0 inline\n- _\bc_\bo_\bn_\bs_\bt std::shared_ptr<\n- _\bc_\bo_\bn_\bs_\bt _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b: c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bti\bio\bon\bn_\b_p\bpa\bat\btt\bte\ber\brn\bn =\n+ const std::shared_ptr<\n+ const _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b: c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bti\bio\bon\bn_\b_p\bpa\bat\btt\bte\ber\brn\bn =\n _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be {}\u00a0\n > &\u00a0\n )\n _\bD\bD_\be\be_\bp\bp_\br\br_\be\be_\bc\bc_\ba\ba_\bt\bt_\be\be_\bd\bd_\b:\b:\n Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n Definition at line _\b3_\b4_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br(\b()\b)(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-internal::VectorReference _\bV_\be_\bc_\bt_\bo_\br< Number ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inline\n->_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br()\n+internal::VectorReference _\bV_\be_\bc_\bt_\bo_\br< Number ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inline\n+>::operator()\n Provide access to a given element, both read and write.\n When using a vector distributed with MPI, this operation only makes sense for\n elements that are actually present on the calling processor. Otherwise, an\n exception is thrown.\n Definition at line _\b7_\b9_\b2 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br(\b()\b)(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n-_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br()\n+_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be LinearAlgebra::EpetraWrappers:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n+Vector::operator()\n Provide read-only access to an element.\n When using a vector distributed with MPI, this operation only makes sense for\n elements that are actually present on the calling processor. Otherwise, an\n exception is thrown.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-internal::VectorReference _\bV_\be_\bc_\bt_\bo_\br< Number ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inline\n->_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br[]\n+internal::VectorReference _\bV_\be_\bc_\bt_\bo_\br< Number ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inline\n+>::operator[]\n Provide access to a given element, both read and write.\n-Exactly the same as _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b).\n+Exactly the same as operator().\n Definition at line _\b7_\b9_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const inline\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br[]\n+_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const inline\n+operator[]\n Provide read-only access to an element.\n-Exactly the same as _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b).\n+Exactly the same as operator().\n Definition at line _\b8_\b0_\b4 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br*\b*=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br*= ( _\bc_\bo_\bn_\bs_\bt double\u00a0 f\bfa\bac\bct\bto\bor\br )\n+_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >::operator*= ( const double\u00a0 f\bfa\bac\bct\bto\bor\br )\n Multiply the entire vector by a fixed factor.\n Definition at line _\b2_\b5_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br/\b/=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br/= ( _\bc_\bo_\bn_\bs_\bt double\u00a0 f\bfa\bac\bct\bto\bor\br )\n+_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >::operator/= ( const double\u00a0 f\bfa\bac\bct\bto\bor\br )\n Divide the entire vector by a fixed factor.\n Definition at line _\b2_\b6_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br+\b+=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br+= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n+_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >::operator+= ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n Add the vector V to the present one.\n Definition at line _\b2_\b8_\b0 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br-\b-=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br-= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n+_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >::operator-= ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n Subtract the vector V from the present one.\n Definition at line _\b3_\b2_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br*\b*(\b()\b) *\b**\b**\b**\b**\b*\n-double _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br* ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV ) const\n+double _\bV_\be_\bc_\bt_\bo_\br< Number >::operator* ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV ) const\n Return the scalar product of two vectors. The vectors need to have the same\n layout.\n Definition at line _\b3_\b3_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::add ( _\bc_\bo_\bn_\bs_\bt double\u00a0 a\ba )\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::add ( const double\u00a0 a\ba )\n Add a to all components. Note that is a scalar not a vector.\n Definition at line _\b3_\b5_\b1 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::add ( _\bc_\bo_\bn_\bs_\bt double\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::add ( const double\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n )\n Simple addition of a multiple of a vector, i.e. *this += a*V. The vectors need\n to have the same layout.\n Definition at line _\b3_\b6_\b2 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::add ( _\bc_\bo_\bn_\bs_\bt double\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n- _\bc_\bo_\bn_\bs_\bt double\u00a0 b\bb,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 W\bW\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::add ( const double\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n+ const double\u00a0 b\bb,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 W\bW\u00a0\n )\n Multiple addition of multiple of a vector, i.e. *this> += a*V+b*W. The vectors\n need to have the same layout.\n Definition at line _\b3_\b7_\b6 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsa\bad\bdd\bd(\b()\b) *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::sadd ( _\bc_\bo_\bn_\bs_\bt double\u00a0 s\bs,\n- _\bc_\bo_\bn_\bs_\bt double\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::sadd ( const double\u00a0 s\bs,\n+ const double\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n )\n Scaling and simple addition of a multiple of a vector, i.e. t\bth\bhi\bis\bs =\b= s\bs\n (*this)+a*V.\n Definition at line _\b3_\b9_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsc\bca\bal\ble\be(\b()\b) *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::scale ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 s\bsc\bca\bal\bli\bin\bng\bg_\b_f\bfa\bac\bct\bto\bor\brs\bs )\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::scale ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 s\bsc\bca\bal\bli\bin\bng\bg_\b_f\bfa\bac\bct\bto\bor\brs\bs )\n Scale each element of this vector by the corresponding element in the argument.\n This function is mostly meant to simulate multiplication (and immediate re-\n assignment) by a diagonal scaling matrix. The vectors need to have the same\n layout.\n Definition at line _\b4_\b0_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\beq\bqu\bu(\b()\b) *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::equ ( _\bc_\bo_\bn_\bs_\bt double\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::equ ( const double\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n )\n Assignment *this = a*V.\n Definition at line _\b4_\b2_\b2 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bal\bll\bl_\b_z\bze\ber\bro\bo(\b()\b) *\b**\b**\b**\b**\b*\n _\bb_\bo_\bo_\bl _\bV_\be_\bc_\bt_\bo_\br< Number >::all_zero ( ) const\n Return whether the vector contains only elements with value zero.\n Definition at line _\b4_\b3_\b9 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n@@ -446,17 +446,17 @@\n Definition at line _\b4_\b9_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bin\bnf\bft\bty\by_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n double _\bV_\be_\bc_\bt_\bo_\br< Number >::linfty_norm ( ) const\n Return the maximum norm of the vector (i.e., the maximum absolute value among\n all entries and among all processors).\n Definition at line _\b5_\b0_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd_\b_a\ban\bnd\bd_\b_d\bdo\bot\bt(\b()\b) *\b**\b**\b**\b**\b*\n-double _\bV_\be_\bc_\bt_\bo_\br< Number >::add_and_dot ( _\bc_\bo_\bn_\bs_\bt double\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 W\bW\u00a0\n+double _\bV_\be_\bc_\bt_\bo_\br< Number >::add_and_dot ( const double\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 W\bW\u00a0\n )\n Performs a combined operation of a vector addition and a subsequent inner\n product, returning the value of the inner product. In other words, the result\n of this function is the same as if the user called\n this->_\ba_\bd_\bd(a, V);\n return_value = *this * W;\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bd_\bd\n@@ -493,61 +493,58 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt _\bV_\be_\bc_\bt_\bo_\br< Number >::locally_owned_elements ( ) const\n Return an index set that describes which elements of this vector are owned by\n the current processor. As a consequence, the index sets returned on different\n processors if this is a distributed vector will form disjoint sets that add up\n to the complete index set. Obviously, if a vector is created on only one\n processor, then the result would satisfy\n-_\bv_\be_\bc.locally_owned_elements() == _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt(_\bv_\be_\bc.size())\n-_\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bv_\be_\bc_\bt_\bo_\br\n-std::unique_ptr< Epetra_FEVector > vector\n-D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b6_\b8_\b0\n+vec.locally_owned_elements() == _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt(vec.size())\n _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt\n IndexSet complete_index_set(const IndexSet::size_type N)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b2_\b0_\b4\n Definition at line _\b5_\b6_\b2 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bom\bmp\bpr\bre\bes\bss\bs(\b()\b) *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::compress ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn )\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::compress ( const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn )\n Compress the underlying representation of the Trilinos object, i.e. flush the\n buffers of the vector object if it has any. This function is necessary after\n writing into a vector element-by-element and before anything else can be done\n on it.\n See _\bC_\bo_\bm_\bp_\br_\be_\bs_\bs_\bi_\bn_\bg_\b _\bd_\bi_\bs_\bt_\br_\bi_\bb_\bu_\bt_\be_\bd_\b _\bo_\bb_\bj_\be_\bc_\bt_\bs for more information.\n Definition at line _\b5_\b9_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\btr\bri\bil\bli\bin\bno\bos\bs_\b_v\bve\bec\bct\bto\bor\br(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bc_\bo_\bn_\bs_\bt Epetra_FEVector & _\bV_\be_\bc_\bt_\bo_\br< Number >::trilinos_vector ( ) const\n+const Epetra_FEVector & _\bV_\be_\bc_\bt_\bo_\br< Number >::trilinos_vector ( ) const\n Return a const reference to the underlying Trilinos Epetra_FEVector class.\n Definition at line _\b6_\b0_\b1 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\btr\bri\bil\bli\bin\bno\bos\bs_\b_v\bve\bec\bct\bto\bor\br(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n Epetra_FEVector & _\bV_\be_\bc_\bt_\bo_\br< Number >::trilinos_vector ( )\n Return a (modifiable) reference to the underlying Trilinos Epetra_FEVector\n class.\n Definition at line _\b6_\b0_\b9 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0p\bpr\bri\bin\bnt\bt(\b()\b) *\b**\b**\b**\b**\b*\n void _\bV_\be_\bc_\bt_\bo_\br< Number >::print ( std::ostream &\u00a0 o\bou\but\bt,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 p\bpr\bre\bec\bci\bis\bsi\bio\bon\bn = 3,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 s\bsc\bci\bie\ben\bnt\bti\bif\bfi\bic\bc = _\bt_\br_\bu_\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 a\bac\bcr\bro\bos\bss\bs = _\bt_\br_\bu_\be\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 p\bpr\bre\bec\bci\bis\bsi\bio\bon\bn = 3,\n+ const _\bb_\bo_\bo_\bl\u00a0 s\bsc\bci\bie\ben\bnt\bti\bif\bfi\bic\bc = true,\n+ const _\bb_\bo_\bo_\bl\u00a0 a\bac\bcr\bro\bos\bss\bs = true\u00a0\n ) const\n Prints the vector to the output stream out.\n Definition at line _\b6_\b1_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bme\bem\bmo\bor\bry\by_\b_c\bco\bon\bns\bsu\bum\bmp\bpt\bti\bio\bon\bn(\b()\b) *\b**\b**\b**\b**\b*\n std::size_t _\bV_\be_\bc_\bt_\bo_\br< Number >::memory_consumption ( ) const\n Return the memory consumption of this class in bytes.\n Definition at line _\b6_\b5_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bcr\bre\bea\bat\bte\be_\b_e\bep\bpe\bet\btr\bra\ba_\b_c\bco\bom\bmm\bm_\b_p\bpa\bat\btt\bte\ber\brn\bn(\b()\b) *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 s\bso\bou\bur\brc\bce\be_\b_i\bin\bnd\bde\bex\bx_\b_s\bse\bet\bt,\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 s\bso\bou\bur\brc\bce\be_\b_i\bin\bnd\bde\bex\bx_\b_s\bse\bet\bt,\n create_epetra_comm_pattern private\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 m\bmp\bpi\bi_\b_c\bco\bom\bmm\bm\u00a0\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 m\bmp\bpi\bi_\b_c\bco\bom\bmm\bm\u00a0\n )\n Create the _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn for the communication between the _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n source_index_set and the current vector based on the communicator mpi_comm.\n Definition at line _\b6_\b6_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\bex\bxt\btr\bra\bac\bct\bt_\b_s\bsu\bub\bbv\bve\bec\bct\bto\bor\br_\b_t\bto\bo(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bv_\bi_\br_\bt_\bu_\ba_\bl void\n+virtual void\n _\bR_\be_\ba_\bd_\bV_\be_\bc_\bt_\bo_\br< const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< const\n _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b: ( _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx i\bin\bnd\bdi\bic\bce\bes\bs,\n _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be >:: > &\u00a0\n extract_subvector_to pure virtualinherited\n _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw<\n VectorTraits::value_type e\bel\ble\bem\bme\ben\bnt\bts\bs\u00a0\n > &\u00a0\n@@ -575,25 +572,25 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_s\bsu\bub\bbs\bsc\bcr\bri\bip\bpt\bti\bio\bon\bns\bs(\b()\b) *\b**\b**\b**\b**\b*\n unsigned _\bi_\bn_\bt Subscriptor::n_subscriptions ( ) const inlineinherited\n Return the present number of subscriptions to this object. This allows to use\n this class for reference counted lifetime determination where the last one to\n unsubscribe also deletes the object.\n Definition at line _\b3_\b0_\b0 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\ber\brs\bs(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n+template\n void Subscriptor:: ( StreamType &\u00a0 s\bst\btr\bre\bea\bam\bm ) const inlineinherited\n list_subscribers\n List the subscribers to the input stream.\n Definition at line _\b3_\b1_\b7 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\ber\brs\bs(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n void Subscriptor::list_subscribers ( ) const inherited\n List the subscribers to deallog.\n Definition at line _\b2_\b0_\b3 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\ber\bri\bia\bal\bli\biz\bze\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n+template\n void Subscriptor::serialize ( Archive &\u00a0 a\bar\br,\n const unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0 inlineinherited\n )\n Read or write the data of this object to or from a stream for the purpose of\n serialization using the _\bB_\bO_\bO_\bS_\bT_\b _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn_\b _\bl_\bi_\bb_\br_\ba_\br_\by.\n This function does not actually serialize any of the member variables of this\n class. The reason is that what this class stores is only who subscribes to this\n@@ -614,29 +611,29 @@\n release mode.\n If this function is called when there is an uncaught exception then,\n rather than aborting, this function prints an error message to the\n standard error stream and returns.\n Definition at line _\b5_\b2 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* F\bFr\bri\bie\ben\bnd\bds\bs A\bAn\bnd\bd R\bRe\bel\bla\bat\bte\bed\bd S\bSy\bym\bmb\bbo\bol\bl D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:V\bVe\bec\bct\bto\bor\brR\bRe\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bf_\br_\bi_\be_\bn_\bd _\bc_\bl_\ba_\bs_\bs internal::VectorReference friend\n+friend class internal::VectorReference friend\n Definition at line _\b6_\b9_\b4 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br D\bDa\bat\bta\ba D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bve\bec\bct\bto\bor\br *\b**\b**\b**\b**\b*\n std::unique_ptr LinearAlgebra::EpetraWrappers:: private\n Vector::vector\n Pointer to the actual Epetra vector object.\n Definition at line _\b6_\b8_\b0 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bso\bou\bur\brc\bce\be_\b_s\bst\bto\bor\bre\bed\bd_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs *\b**\b**\b**\b**\b*\n _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt LinearAlgebra::EpetraWrappers::Vector:: private\n source_stored_elements\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt of the elements of the last imported vector.\n Definition at line _\b6_\b8_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\bep\bpe\bet\btr\bra\ba_\b_c\bco\bom\bmm\bm_\b_p\bpa\bat\btt\bte\ber\brn\bn *\b**\b**\b**\b**\b*\n-std::shared_ptr<_\bc_\bo_\bn_\bs_\bt _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn> LinearAlgebra:: private\n+std::shared_ptr LinearAlgebra:: private\n EpetraWrappers::Vector::epetra_comm_pattern\n _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn for the communication between the source_stored_elements\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt and the current vector.\n Definition at line _\b6_\b9_\b1 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bou\bun\bnt\bte\ber\br *\b**\b**\b**\b**\b*\n std::atomic Subscriptor::counter mutableprivateinherited\n Store the number of objects which subscribed to this object. Initially, this\n@@ -658,15 +655,15 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\bli\bid\bdi\bit\bty\by_\b_p\bpo\boi\bin\bnt\bte\ber\brs\bs *\b**\b**\b**\b**\b*\n std::vector *> Subscriptor:: mutableprivateinherited\n validity_pointers\n In this vector, we store pointers to the validity bool in the _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br\n objects that subscribe to this class.\n Definition at line _\b2_\b4_\b0 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bob\bbj\bje\bec\bct\bt_\b_i\bin\bnf\bfo\bo *\b**\b**\b**\b**\b*\n-_\bc_\bo_\bn_\bs_\bt std::type_info* Subscriptor::object_info mutableprivateinherited\n+const std::type_info* Subscriptor::object_info mutableprivateinherited\n Pointer to the typeinfo object of this object, from which we can later deduce\n the class name. Since this information on the derived class is neither\n available in the destructor, nor in the constructor, we obtain it in between\n and store it here.\n Definition at line _\b2_\b4_\b8 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bmu\but\bte\bex\bx *\b**\b**\b**\b**\b*\n std::mutex Subscriptor::mutex staticprivateinherited\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1ReadWriteVector.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1ReadWriteVector.html", "unified_diff": "@@ -1041,15 +1041,15 @@\n
    \n
    \n inline
    \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 312 of file read_write_vector.h.

    \n \n
    \n \n \n

    ◆ import_elements() [2/9]

    \n@@ -1129,15 +1129,15 @@\n
    \n
    \n inline
    \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 341 of file read_write_vector.h.

    \n \n
    \n
    \n \n

    ◆ import_elements() [3/9]

    \n@@ -1213,15 +1213,15 @@\n
    \n \n \n inline \n \n \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 371 of file read_write_vector.h.

    \n \n
    \n
    \n \n

    ◆ import_elements() [4/9]

    \n@@ -1298,15 +1298,15 @@\n \n \n \n inline \n \n \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 403 of file read_write_vector.h.

    \n \n
    \n
    \n \n

    ◆ import_elements() [5/9]

    \n@@ -1386,15 +1386,15 @@\n \n \n \n inline \n \n \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 435 of file read_write_vector.h.

    \n \n
    \n
    \n \n

    ◆ import_elements() [6/9]

    \n@@ -1470,15 +1470,15 @@\n \n \n \n inline \n \n \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 464 of file read_write_vector.h.

    \n \n
    \n
    \n \n

    ◆ import_elements() [7/9]

    \n@@ -1554,15 +1554,15 @@\n \n \n \n inline \n \n \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 493 of file read_write_vector.h.

    \n \n
    \n
    \n \n

    ◆ size()

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1Vector.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1TpetraWrappers_1_1Vector.html", "unified_diff": "@@ -124,257 +124,257 @@\n \"\"\n \"\"\n \n
    [legend]
    \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n

    \n Public Types

    using value_type = Number
    using value_type = Number
     
    using real_type = typename numbers::NumberTraits< Number >::real_type
    using real_type = typename numbers::NumberTraits< Number >::real_type
     
    using size_type = types::global_dof_index
    using size_type = types::global_dof_index
     
    using reference = internal::VectorReference< Number, MemorySpace >
    using reference = internal::VectorReference< Number, MemorySpace >
     
    using const_reference = const internal::VectorReference< Number, MemorySpace >
    using const_reference = const internal::VectorReference< Number, MemorySpace >
     
    \n \n-\n-\n+\n+\n \n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n

    \n Public Member Functions

    template<class Archive >
    void serialize (Archive &ar, const unsigned int version)
    template<class Archive >
    void serialize (Archive &ar, const unsigned int version)
     
    1: Basic Object-handling
     Vector ()
     
     Vector (const Vector &V)
     Vector (const Vector &V)
     
     Vector (const Teuchos::RCP< TpetraTypes::VectorType< Number, MemorySpace > > V)
     Vector (const Teuchos::RCP< TpetraTypes::VectorType< Number, MemorySpace > > V)
     
     Vector (const IndexSet &parallel_partitioner, const MPI_Comm communicator)
     Vector (const IndexSet &parallel_partitioner, const MPI_Comm communicator)
     
     Vector (const IndexSet &locally_owned_entries, const IndexSet &ghost_entries, const MPI_Comm communicator, const bool vector_writable=false)
     Vector (const IndexSet &locally_owned_entries, const IndexSet &ghost_entries, const MPI_Comm communicator, const bool vector_writable=false)
     
    void clear ()
     
    void reinit (const IndexSet &parallel_partitioner, const MPI_Comm communicator=MPI_COMM_WORLD, const bool omit_zeroing_entries=false)
    void reinit (const IndexSet &parallel_partitioner, const MPI_Comm communicator=MPI_COMM_WORLD, const bool omit_zeroing_entries=false)
     
    void reinit (const IndexSet &locally_owned_entries, const IndexSet &locally_relevant_or_ghost_entries, const MPI_Comm communicator=MPI_COMM_WORLD, const bool vector_writable=false)
    void reinit (const IndexSet &locally_owned_entries, const IndexSet &locally_relevant_or_ghost_entries, const MPI_Comm communicator=MPI_COMM_WORLD, const bool vector_writable=false)
     
    void reinit (const Vector< Number, MemorySpace > &V, const bool omit_zeroing_entries=false)
    void reinit (const Vector< Number, MemorySpace > &V, const bool omit_zeroing_entries=false)
     
    virtual void swap (Vector &v) noexcept
    virtual void swap (Vector &v) noexcept
     
    virtual void extract_subvector_to (const ArrayView< const types::global_dof_index > &indices, ArrayView< Number > &elements) const override
    virtual void extract_subvector_to (const ArrayView< const types::global_dof_index > &indices, ArrayView< Number > &elements) const override
     
    Vectoroperator= (const Vector &V)
    Vectoroperator= (const Vector &V)
     
    template<typename OtherNumber >
    Vectoroperator= (const ::Vector< OtherNumber > &V)
    template<typename OtherNumber >
    Vectoroperator= (const ::Vector< OtherNumber > &V)
     
    Vectoroperator= (const Number s)
    Vectoroperator= (const Number s)
     
    void import_elements (const ReadWriteVector< Number > &V, VectorOperation::values operation, const Teuchos::RCP< const Utilities::MPI::CommunicationPatternBase > &communication_pattern)
    void import_elements (const ReadWriteVector< Number > &V, VectorOperation::values operation, const Teuchos::RCP< const Utilities::MPI::CommunicationPatternBase > &communication_pattern)
     
    void import_elements (const ReadWriteVector< Number > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern)
    void import_elements (const ReadWriteVector< Number > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern)
     
    void import_elements (const ReadWriteVector< Number > &V, VectorOperation::values operation)
    void import_elements (const ReadWriteVector< Number > &V, VectorOperation::values operation)
     
    void import (const ReadWriteVector< Number > &V, VectorOperation::values operation, std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > communication_pattern={})
    void import (const ReadWriteVector< Number > &V, VectorOperation::values operation, std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > communication_pattern={})
     
    2: Data-Access
    reference operator() (const size_type index)
    reference operator() (const size_type index)
     
    Number operator() (const size_type index) const
    Number operator() (const size_type index) const
     
    reference operator[] (const size_type index)
    reference operator[] (const size_type index)
     
    Number operator[] (const size_type index) const
    Number operator[] (const size_type index) const
     
    3: Modification of vectors
    Vectoroperator*= (const Number factor)
    Vectoroperator*= (const Number factor)
     
    Vectoroperator/= (const Number factor)
    Vectoroperator/= (const Number factor)
     
    Vectoroperator+= (const Vector< Number, MemorySpace > &V)
    Vectoroperator+= (const Vector< Number, MemorySpace > &V)
     
    Vectoroperator-= (const Vector< Number, MemorySpace > &V)
    Vectoroperator-= (const Vector< Number, MemorySpace > &V)
     
    Number operator* (const Vector< Number, MemorySpace > &V) const
    Number operator* (const Vector< Number, MemorySpace > &V) const
     
    void add (const Number a)
    void add (const Number a)
     
    void add (const Number a, const Vector< Number, MemorySpace > &V)
    void add (const Number a, const Vector< Number, MemorySpace > &V)
     
    void add (const Number a, const Vector< Number, MemorySpace > &V, const Number b, const Vector< Number, MemorySpace > &W)
    void add (const Number a, const Vector< Number, MemorySpace > &V, const Number b, const Vector< Number, MemorySpace > &W)
     
    void add (const std::vector< size_type > &indices, const std::vector< Number > &values)
    void add (const std::vector< size_type > &indices, const std::vector< Number > &values)
     
    void add (const size_type n_elements, const size_type *indices, const Number *values)
    void add (const size_type n_elements, const size_type *indices, const Number *values)
     
    void sadd (const Number s, const Number a, const Vector< Number, MemorySpace > &V)
    void sadd (const Number s, const Number a, const Vector< Number, MemorySpace > &V)
     
    void set (const size_type n_elements, const size_type *indices, const Number *values)
    void set (const size_type n_elements, const size_type *indices, const Number *values)
     
    void scale (const Vector< Number, MemorySpace > &scaling_factors)
    void scale (const Vector< Number, MemorySpace > &scaling_factors)
     
    void equ (const Number a, const Vector< Number, MemorySpace > &V)
    void equ (const Number a, const Vector< Number, MemorySpace > &V)
     
    bool all_zero () const
    bool all_zero () const
     
    bool is_non_negative () const
    bool is_non_negative () const
     
    4: Scalar products, norms and related operations
    Number mean_value () const
    Number mean_value () const
     
    real_type l1_norm () const
    real_type l1_norm () const
     
    real_type l2_norm () const
    real_type l2_norm () const
     
    real_type linfty_norm () const
    real_type linfty_norm () const
     
    real_type norm_sqr () const
    real_type norm_sqr () const
     
    Number add_and_dot (const Number a, const Vector< Number, MemorySpace > &V, const Vector< Number, MemorySpace > &W)
    Number add_and_dot (const Number a, const Vector< Number, MemorySpace > &V, const Vector< Number, MemorySpace > &W)
     
    5: Scalar products, norms and related operations
    bool has_ghost_elements () const
    bool has_ghost_elements () const
     
    bool operator== (const Vector< Number, MemorySpace > &v) const
    bool operator== (const Vector< Number, MemorySpace > &v) const
     
    bool operator!= (const Vector< Number, MemorySpace > &v) const
    bool operator!= (const Vector< Number, MemorySpace > &v) const
     
    virtual size_type size () const override
    virtual size_type size () const override
     
    size_type locally_owned_size () const
    size_type locally_owned_size () const
     
    std::pair< size_type, size_typelocal_range () const
    std::pair< size_type, size_typelocal_range () const
     
    bool in_local_range (const size_type index) const
    bool in_local_range (const size_type index) const
     
    bool is_compressed () const
    bool is_compressed () const
     
    MPI_Comm get_mpi_communicator () const
    MPI_Comm get_mpi_communicator () const
     
    ::IndexSet locally_owned_elements () const
    ::IndexSet locally_owned_elements () const
     
    6: Mixed stuff
    void compress (const VectorOperation::values operation)
    void compress (const VectorOperation::values operation)
     
    const TpetraTypes::VectorType< Number, MemorySpace > & trilinos_vector () const
    const TpetraTypes::VectorType< Number, MemorySpace > & trilinos_vector () const
     
    TpetraTypes::VectorType< Number, MemorySpace > & trilinos_vector ()
     
    Teuchos::RCP< const TpetraTypes::VectorType< Number, MemorySpace > > trilinos_rcp () const
    Teuchos::RCP< const TpetraTypes::VectorType< Number, MemorySpace > > trilinos_rcp () const
     
    Teuchos::RCP< TpetraTypes::VectorType< Number, MemorySpace > > trilinos_rcp ()
     
    void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
    void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
     
    std::size_t memory_consumption () const
    std::size_t memory_consumption () const
     
    MPI_Comm mpi_comm () const
    MPI_Comm mpi_comm () const
     
    Subscriptor functionality

    Classes derived from Subscriptor provide a facility to subscribe to this object. This is mostly used by the SmartPointer class.

    \n
    void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
    void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
     
    void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
    void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
     
    unsigned int n_subscriptions () const
    unsigned int n_subscriptions () const
     
    template<typename StreamType >
    void list_subscribers (StreamType &stream) const
    template<typename StreamType >
    void list_subscribers (StreamType &stream) const
     
    void list_subscribers () const
    void list_subscribers () const
     
    \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n

    \n Static Public Member Functions

    static ::ExceptionBaseExcDifferentParallelPartitioning ()
    static ::ExceptionBaseExcDifferentParallelPartitioning ()
     
    static ::ExceptionBaseExcVectorTypeNotCompatible ()
    static ::ExceptionBaseExcVectorTypeNotCompatible ()
     
    static ::ExceptionBaseExcAccessToNonLocalElement (size_type arg1, size_type arg2, size_type arg3, size_type arg4)
    static ::ExceptionBaseExcAccessToNonLocalElement (size_type arg1, size_type arg2, size_type arg3, size_type arg4)
     
    static ::ExceptionBaseExcMissingIndexSet ()
    static ::ExceptionBaseExcMissingIndexSet ()
     
    static ::ExceptionBaseExcTrilinosError (int arg1)
    static ::ExceptionBaseExcTrilinosError (int arg1)
     
    static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
    static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
     
    static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
    static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
     
    \n \n-\n+\n \n-\n+\n \n

    \n Private Types

    using map_value_type = decltype(counter_map)::value_type
    using map_value_type = decltype(counter_map)::value_type
     
    using map_iterator = decltype(counter_map)::iterator
    using map_iterator = decltype(counter_map)::iterator
     
    \n \n-\n+\n \n-\n+\n \n

    \n Private Member Functions

    void create_tpetra_comm_pattern (const IndexSet &source_index_set, const MPI_Comm mpi_comm)
    void create_tpetra_comm_pattern (const IndexSet &source_index_set, const MPI_Comm mpi_comm)
     
    void check_no_subscribers () const noexcept
    void check_no_subscribers () const noexcept
     
    \n \n \n \n \n \n \n \n \n \n \n \n-\n+\n \n \n \n \n \n \n \n-\n+\n \n

    \n Private Attributes

    bool compressed
     
    bool has_ghost
     
    Teuchos::RCP< TpetraTypes::VectorType< Number, MemorySpace > > vector
     
    Teuchos::RCP< TpetraTypes::VectorType< Number, MemorySpace > > nonlocal_vector
     
    ::IndexSet source_stored_elements
     
    Teuchos::RCP< const TpetraWrappers::CommunicationPattern< MemorySpace > > tpetra_comm_pattern
    Teuchos::RCP< const TpetraWrappers::CommunicationPattern< MemorySpace > > tpetra_comm_pattern
     
    std::atomic< unsigned intcounter
     
    std::map< std::string, unsigned intcounter_map
     
    std::vector< std::atomic< bool > * > validity_pointers
     
    const std::type_info * object_info
    const std::type_info * object_info
     
    \n \n-\n+\n \n

    \n Static Private Attributes

    static std::mutex mutex
    static std::mutex mutex
     
    \n \n-\n+\n \n

    \n Friends

    class internal::VectorReference< Number, MemorySpace >
    class internal::VectorReference< Number, MemorySpace >
     
    \n

    Detailed Description

    \n-
    template<typename Number, typename MemorySpace = ::MemorySpace::Host>
    \n+
    template<typename Number, typename MemorySpace = ::MemorySpace::Host>
    \n class LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >

    This class implements a wrapper to the Trilinos distributed vector class Tpetra::Vector. This class requires Trilinos to be compiled with MPI support.

    \n

    Moreover, this class takes an optional template argument for the memory space used. By default, all memory is allocated on the CPU.

    \n \n

    Definition at line 288 of file trilinos_tpetra_vector.h.

    \n

    Member Typedef Documentation

    \n \n

    ◆ value_type

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n
    using LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::value_type = Numberusing LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::value_type = Number
    \n
    \n

    Declare some of the standard types used in all containers.

    \n \n

    Definition at line 294 of file trilinos_tpetra_vector.h.

    \n \n@@ -382,72 +382,72 @@\n
    \n \n

    ◆ real_type

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n
    using LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::real_type = typename numbers::NumberTraits<Number>::real_typeusing LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::real_type = typename numbers::NumberTraits<Number>::real_type
    \n
    \n \n

    Definition at line 295 of file trilinos_tpetra_vector.h.

    \n \n
    \n
    \n \n

    ◆ size_type

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n
    using LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::size_type = types::global_dof_indexusing LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::size_type = types::global_dof_index
    \n
    \n \n

    Definition at line 296 of file trilinos_tpetra_vector.h.

    \n \n
    \n
    \n \n

    ◆ reference

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n
    using LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::reference = internal::VectorReference<Number, MemorySpace>using LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::reference = internal::VectorReference<Number, MemorySpace>
    \n
    \n \n

    Definition at line 297 of file trilinos_tpetra_vector.h.

    \n \n
    \n \n \n

    ◆ const_reference

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n
    using LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::const_reference = const internal::VectorReference<Number, MemorySpace>using LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::const_reference = const internal::VectorReference<Number, MemorySpace>
    \n
    \n \n

    Definition at line 298 of file trilinos_tpetra_vector.h.

    \n \n
    \n@@ -458,15 +458,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using Subscriptor::map_value_type = decltype(counter_map)::value_typeusing Subscriptor::map_value_type = decltype(counter_map)::value_type
    \n
    \n privateinherited
    \n@@ -483,15 +483,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using Subscriptor::map_iterator = decltype(counter_map)::iteratorusing Subscriptor::map_iterator = decltype(counter_map)::iterator
    \n
    \n privateinherited
    \n@@ -505,15 +505,15 @@\n

    Constructor & Destructor Documentation

    \n \n

    ◆ Vector() [1/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n \n \n \n@@ -525,20 +525,20 @@\n \n \n

    ◆ Vector() [2/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::Vector ()
    \n \n \n \n- \n+ \n \n \n \n
    LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::Vector (const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V)
    \n
    \n

    Copy constructor. Sets the dimension and the partitioning to that of the given vector and copies all elements.

    \n \n@@ -546,20 +546,20 @@\n
    \n \n

    ◆ Vector() [3/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n- \n+ \n \n \n \n
    LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::Vector (const Teuchos::RCP< TpetraTypes::VectorType< Number, MemorySpace > > const Teuchos::RCP< TpetraTypes::VectorType< Number, MemorySpace > > V)
    \n
    \n

    Copy constructor from Teuchos::RCP<Tpetra::Vector>.

    \n \n@@ -567,29 +567,29 @@\n
    \n \n

    ◆ Vector() [4/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -606,42 +606,42 @@\n \n \n

    ◆ Vector() [5/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::Vector (const IndexSetconst IndexSetparallel_partitioner,
    const MPI_Comm const MPI_Comm communicator 
    )
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::Vector (const IndexSetconst IndexSetlocally_owned_entries,
    const IndexSetconst IndexSetghost_entries,
    const MPI_Comm const MPI_Comm communicator,
    const bool vector_writable = false const bool vector_writable = false 
    )
    \n@@ -660,15 +660,15 @@\n

    Member Function Documentation

    \n \n

    ◆ clear()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n \n \n \n@@ -680,33 +680,33 @@\n \n \n

    ◆ reinit() [1/3]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::clear ()
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::reinit (const IndexSetconst IndexSetparallel_partitioner,
    const MPI_Comm communicator = MPI_COMM_WORLD, const MPI_Comm communicator = MPI_COMM_WORLD,
    const bool omit_zeroing_entries = false const bool omit_zeroing_entries = false 
    )
    \n@@ -717,39 +717,39 @@\n
    \n \n

    ◆ reinit() [2/3]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::reinit (const IndexSetconst IndexSetlocally_owned_entries,
    const IndexSetconst IndexSetlocally_relevant_or_ghost_entries,
    const MPI_Comm communicator = MPI_COMM_WORLD, const MPI_Comm communicator = MPI_COMM_WORLD,
    const bool vector_writable = false const bool vector_writable = false 
    )
    \n@@ -762,27 +762,27 @@\n
    \n \n

    ◆ reinit() [3/3]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::reinit (const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V,
    const bool omit_zeroing_entries = false const bool omit_zeroing_entries = false 
    )
    \n@@ -793,15 +793,15 @@\n
    \n \n

    ◆ swap()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace >
    \n+template<typename Number , typename MemorySpace >
    \n \n \n \n \n \n
    \n \n \n \n \n@@ -826,23 +826,23 @@\n \n \n

    ◆ extract_subvector_to()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    void Vector< Number, MemorySpace >::swap (
    \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n \n \n \n \n@@ -867,20 +867,20 @@\n \n \n

    ◆ operator=() [1/3]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    virtual void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::extract_subvector_to virtual void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::extract_subvector_to (const ArrayView< const types::global_dof_index > & const ArrayView< const types::global_dof_index > & indices,
    ArrayView< Number > & elements 
    \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator= Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator= (const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V)
    \n
    \n

    Copy function. This function takes a Vector and copies all the elements. The Vector will have the same parallel distribution as V.

    \n

    The semantics of this operator are complex. If the two vectors have the same size, and if either the left or right hand side vector of the assignment (i.e., either the input vector on the right hand side, or the calling vector to the left of the assignment operator) currently has ghost elements, then the left hand side vector will also have ghost values and will consequently be a read-only vector (see also the glossary entry on the issue). Otherwise, the left hand vector will be a writable vector after this operation. These semantics facilitate having a vector with ghost elements on the left hand side of the assignment, and a vector without ghost elements on the right hand side, with the resulting left hand side vector having the correct values in both its locally owned and its ghost elements.

    \n@@ -890,22 +890,22 @@\n
    \n \n

    ◆ operator=() [2/3]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    \n-template<typename OtherNumber >
    \n+template<typename OtherNumber >
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator= Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator= (const ::Vector< OtherNumber > & const ::Vector< OtherNumber > & V)
    \n
    \n

    Copy function. This function takes a Vector and copies all the elements. The Vector will have the same parallel distribution as V.

    \n \n@@ -913,20 +913,20 @@\n
    \n \n

    ◆ operator=() [3/3]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator= Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator= (const Number const Number s)
    \n
    \n

    Sets all elements of the vector to the scalar s. This operation is only allowed if s is equal to zero.

    \n \n@@ -934,32 +934,32 @@\n
    \n \n

    ◆ import_elements() [1/3]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -971,57 +971,57 @@\n \n \n

    ◆ import_elements() [2/3]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::import_elements (const ReadWriteVector< Number > & const ReadWriteVector< Number > & V,
    VectorOperation::values operation,
    const Teuchos::RCP< const Utilities::MPI::CommunicationPatternBase > & const Teuchos::RCP< const Utilities::MPI::CommunicationPatternBase > & communication_pattern 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::import_elements (const ReadWriteVector< Number > & const ReadWriteVector< Number > & V,
    VectorOperation::values operation,
    const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > & const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > & communication_pattern 
    )
    \n
    \n-
    Deprecated:
    Use Teuchos::RCP<> instead of std::shared_ptr<>.
    \n+
    Deprecated:
    Use Teuchos::RCP<> instead of std::shared_ptr<>.
    \n \n
    \n \n \n

    ◆ import_elements() [3/3]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1038,70 +1038,70 @@\n \n \n

    ◆ import()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::import_elements (const ReadWriteVector< Number > & const ReadWriteVector< Number > & V,
    VectorOperation::values operation 
    \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::import (const ReadWriteVector< Number > & const ReadWriteVector< Number > & V,
    VectorOperation::values operation,
    std::shared_ptr< const Utilities::MPI::CommunicationPatternBasestd::shared_ptr< const Utilities::MPI::CommunicationPatternBasecommunication_pattern = {} 
    )
    \n
    \n inline
    \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 514 of file trilinos_tpetra_vector.h.

    \n \n
    \n \n \n

    ◆ operator()() [1/2]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace >
    \n+template<typename Number , typename MemorySpace >
    \n \n \n \n \n@@ -1117,20 +1117,20 @@\n \n \n

    ◆ operator()() [2/2]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    internal::VectorReference< Number, MemorySpace > Vector< Number, MemorySpace >::operator() internal::VectorReference< Number, MemorySpace > Vector< Number, MemorySpace >::operator() (const size_type const size_type index)
    \n
    \n inline
    \n \n- \n+ \n \n- \n+ \n \n \n \n
    Number LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator() Number LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator() (const size_type const size_type index) const
    \n
    \n

    Provide read-only access to an element.

    \n

    When using a vector distributed with MPI, this operation only makes sense for elements that are actually present on the calling processor. Otherwise, an exception is thrown.

    \n@@ -1139,84 +1139,84 @@\n
    \n \n

    ◆ operator[]() [1/2]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace >
    \n+template<typename Number , typename MemorySpace >
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    internal::VectorReference< Number, MemorySpace > Vector< Number, MemorySpace >::operator[] internal::VectorReference< Number, MemorySpace > Vector< Number, MemorySpace >::operator[] (const size_type const size_type index)
    \n
    \n inline
    \n
    \n

    Provide access to a given element, both read and write.

    \n-

    Exactly the same as operator().

    \n+

    Exactly the same as operator().

    \n \n

    Definition at line 1368 of file trilinos_tpetra_vector.h.

    \n \n
    \n \n \n

    ◆ operator[]() [2/2]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace >
    \n+template<typename Number , typename MemorySpace >
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Number Vector< Number, MemorySpace >::operator[] Number Vector< Number, MemorySpace >::operator[] (const size_type const size_type index) const
    \n
    \n inline
    \n
    \n

    Provide read-only access to an element.

    \n-

    Exactly the same as operator().

    \n+

    Exactly the same as operator().

    \n \n

    Definition at line 1375 of file trilinos_tpetra_vector.h.

    \n \n
    \n \n \n

    ◆ operator*=()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator*= Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator*= (const Number const Number factor)
    \n
    \n

    Multiply the entire vector by a fixed factor.

    \n \n@@ -1224,20 +1224,20 @@\n
    \n \n

    ◆ operator/=()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator/= Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator/= (const Number const Number factor)
    \n
    \n

    Divide the entire vector by a fixed factor.

    \n \n@@ -1245,20 +1245,20 @@\n
    \n \n

    ◆ operator+=()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator+= Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator+= (const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V)
    \n
    \n

    Add the vector V to the present one.

    \n \n@@ -1266,20 +1266,20 @@\n
    \n \n

    ◆ operator-=()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator-= Vector & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator-= (const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V)
    \n
    \n

    Subtract the vector V from the present one.

    \n \n@@ -1287,20 +1287,20 @@\n
    \n \n

    ◆ operator*()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Number LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator* Number LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator* (const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V) const
    \n
    \n

    Return the scalar product of two vectors. The vectors need to have the same layout.

    \n \n@@ -1308,20 +1308,20 @@\n
    \n \n

    ◆ add() [1/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n- \n+ \n \n \n \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::add (const Number const Number a)
    \n
    \n

    Add a to all components. Note that is a scalar not a vector.

    \n \n@@ -1329,26 +1329,26 @@\n
    \n \n

    ◆ add() [2/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1360,38 +1360,38 @@\n \n \n

    ◆ add() [3/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::add (const Number const Number a,
    const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1403,29 +1403,29 @@\n \n \n

    ◆ add() [4/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace >
    \n+template<typename Number , typename MemorySpace >
    \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::add (const Number const Number a,
    const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V,
    const Number const Number b,
    const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & W 
    )
    \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1444,35 +1444,35 @@\n \n \n

    ◆ add() [5/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace >
    \n+template<typename Number , typename MemorySpace >
    \n
    void Vector< Number, MemorySpace >::add (const std::vector< size_type > & const std::vector< size_type > & indices,
    const std::vector< Number > & const std::vector< Number > & values 
    )
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1491,32 +1491,32 @@\n \n \n

    ◆ sadd()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    void Vector< Number, MemorySpace >::add (const size_type const size_type n_elements,
    const size_typeconst size_typeindices,
    const Number * const Number * values 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1528,35 +1528,35 @@\n \n \n

    ◆ set()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace >
    \n+template<typename Number , typename MemorySpace >
    \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::sadd (const Number const Number s,
    const Number const Number a,
    const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V 
    )
    \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1575,20 +1575,20 @@\n \n \n

    ◆ scale()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    void Vector< Number, MemorySpace >::set (const size_type const size_type n_elements,
    const size_typeconst size_typeindices,
    const Number * const Number * values 
    )
    \n \n \n \n- \n+ \n \n \n \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::scale (const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & scaling_factors)
    \n
    \n

    Scale each element of this vector by the corresponding element in the argument. This function is mostly meant to simulate multiplication (and immediate re-assignment) by a diagonal scaling matrix. The vectors need to have the same layout.

    \n \n@@ -1596,26 +1596,26 @@\n
    \n \n

    ◆ equ()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1627,15 +1627,15 @@\n \n \n

    ◆ all_zero()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::equ (const Number const Number a,
    const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V 
    )
    \n \n \n \n \n \n \n@@ -1647,15 +1647,15 @@\n \n \n

    ◆ is_non_negative()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    bool LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::all_zero () const
    \n \n \n \n \n \n \n@@ -1667,15 +1667,15 @@\n \n \n

    ◆ mean_value()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    bool LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::is_non_negative () const
    \n \n \n \n \n \n \n@@ -1687,15 +1687,15 @@\n \n \n

    ◆ l1_norm()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    Number LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::mean_value () const
    \n \n \n \n \n \n \n@@ -1707,15 +1707,15 @@\n \n \n

    ◆ l2_norm()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    real_type LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::l1_norm () const
    \n \n \n \n \n \n \n@@ -1727,15 +1727,15 @@\n \n \n

    ◆ linfty_norm()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    real_type LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::l2_norm () const
    \n \n \n \n \n \n \n@@ -1747,15 +1747,15 @@\n \n \n

    ◆ norm_sqr()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    real_type LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::linfty_norm () const
    \n \n \n \n \n \n \n@@ -1767,32 +1767,32 @@\n \n \n

    ◆ add_and_dot()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    real_type LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::norm_sqr () const
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1809,15 +1809,15 @@\n \n \n

    ◆ has_ghost_elements()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace >
    \n+template<typename Number , typename MemorySpace >
    \n
    Number LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::add_and_dot (const Number const Number a,
    const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & V,
    const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & W 
    )
    \n \n
    \n \n \n \n \n@@ -1839,20 +1839,20 @@\n \n \n

    ◆ operator==()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    bool Vector< Number, MemorySpace >::has_ghost_elements (
    \n \n- \n+ \n \n- \n+ \n \n \n \n
    bool LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator== bool LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator== (const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & v) const
    \n
    \n

    Test for equality. This function assumes that the present vector and the one to compare with have the same size already, since comparing vectors of different sizes makes not much sense anyway.

    \n \n@@ -1860,20 +1860,20 @@\n
    \n \n

    ◆ operator!=()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n- \n+ \n \n \n \n
    bool LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::operator!= (const Vector< Number, MemorySpace > & const Vector< Number, MemorySpace > & v) const
    \n
    \n

    Test for inequality. This function assumes that the present vector and the one to compare with have the same size already, since comparing vectors of different sizes makes not much sense anyway.

    \n \n@@ -1881,21 +1881,21 @@\n
    \n \n

    ◆ size()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n
    virtual size_type LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::size virtual size_type LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::size () const
    \n
    \n@@ -1911,15 +1911,15 @@\n \n \n

    ◆ locally_owned_size()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n \n \n \n@@ -1931,15 +1931,15 @@\n \n \n

    ◆ local_range()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    size_type LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::locally_owned_size () const
    \n \n \n \n \n \n \n@@ -1952,20 +1952,20 @@\n \n \n

    ◆ in_local_range()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    std::pair< size_type, size_type > LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::local_range () const
    \n \n \n \n- \n+ \n \n \n \n
    bool LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::in_local_range (const size_type const size_type index) const
    \n
    \n

    Return whether index is in the local range or not, see also local_range().

    \n
    Note
    The same limitation for the applicability of this function applies as listed in the documentation of local_range().
    \n@@ -1974,15 +1974,15 @@\n
    \n \n

    ◆ is_compressed()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace >
    \n+template<typename Number , typename MemorySpace >
    \n \n \n
    \n \n \n \n \n@@ -2004,15 +2004,15 @@\n \n \n

    ◆ get_mpi_communicator()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    bool Vector< Number, MemorySpace >::is_compressed (
    \n \n \n \n \n \n \n@@ -2024,42 +2024,41 @@\n \n \n

    ◆ locally_owned_elements()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    MPI_Comm LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::get_mpi_communicator () const
    \n \n \n \n \n \n \n
    ::IndexSet LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::locally_owned_elements () const
    \n
    \n-

    Return an index set that describes which elements of this vector are owned by the current processor. As a consequence, the index sets returned on different processors if this is a distributed vector will form disjoint sets that add up to the complete index set. Obviously, if a vector is created on only one processor, then the result would satisfy

    vec.locally_owned_elements() == complete_index_set(vec.size())
    \n-
    Teuchos::RCP< TpetraTypes::VectorType< Number, MemorySpace > > vector
    \n+

    Return an index set that describes which elements of this vector are owned by the current processor. As a consequence, the index sets returned on different processors if this is a distributed vector will form disjoint sets that add up to the complete index set. Obviously, if a vector is created on only one processor, then the result would satisfy

    vec.locally_owned_elements() == complete_index_set(vec.size())
    \n
    IndexSet complete_index_set(const IndexSet::size_type N)
    Definition index_set.h:1204
    \n
    \n
    \n
    \n \n

    ◆ compress()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n- \n+ \n \n \n \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::compress (const VectorOperation::values const VectorOperation::values operation)
    \n
    \n

    Compress the underlying representation of the Trilinos object, i.e. flush the buffers of the vector object if it has any. This function is necessary after writing into a vector element-by-element and before anything else can be done on it.

    \n
    Parameters
    \n@@ -2074,18 +2073,18 @@\n
    \n \n

    ◆ trilinos_vector() [1/2]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n- \n+ \n \n \n \n \n
    const TpetraTypes::VectorType< Number, MemorySpace > & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::trilinos_vector const TpetraTypes::VectorType< Number, MemorySpace > & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::trilinos_vector () const
    \n
    \n

    Return a const reference to the underlying Trilinos Tpetra::Vector class.

    \n@@ -2094,15 +2093,15 @@\n
    \n \n

    ◆ trilinos_vector() [2/2]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n \n \n \n@@ -2114,18 +2113,18 @@\n \n \n

    ◆ trilinos_rcp() [1/2]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    TpetraTypes::VectorType< Number, MemorySpace > & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::trilinos_vector ()
    \n \n- \n+ \n \n \n \n \n
    Teuchos::RCP< const TpetraTypes::VectorType< Number, MemorySpace > > LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::trilinos_rcp Teuchos::RCP< const TpetraTypes::VectorType< Number, MemorySpace > > LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::trilinos_rcp () const
    \n
    \n

    Return a const Teuchos::RCP to the underlying Trilinos Tpetra::Vector class.

    \n@@ -2134,15 +2133,15 @@\n
    \n \n

    ◆ trilinos_rcp() [2/2]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n \n \n \n@@ -2154,39 +2153,39 @@\n \n \n

    ◆ print()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    Teuchos::RCP< TpetraTypes::VectorType< Number, MemorySpace > > LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::trilinos_rcp ()
    \n \n \n \n \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::print (std::ostream & out,
    const unsigned int const unsigned int precision = 3,
    const bool scientific = true, const bool scientific = true,
    const bool across = true const bool across = true 
    ) const
    \n@@ -2197,15 +2196,15 @@\n
    \n \n

    ◆ memory_consumption()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n \n \n \n@@ -2217,15 +2216,15 @@\n \n \n

    ◆ mpi_comm()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    std::size_t LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::memory_consumption () const
    \n \n \n \n \n \n \n@@ -2237,29 +2236,29 @@\n \n \n

    ◆ create_tpetra_comm_pattern()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    MPI_Comm LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::mpi_comm () const
    \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2383,15 +2382,15 @@\n \n \n

    ◆ list_subscribers() [1/2]

    \n \n
    \n
    \n
    \n-template<typename StreamType >
    \n+template<typename StreamType >
    \n
    void LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::create_tpetra_comm_pattern (const IndexSetconst IndexSetsource_index_set,
    const MPI_Comm const MPI_Comm mpi_comm 
    )
    \n \n
    \n \n \n \n \n@@ -2442,15 +2441,15 @@\n \n \n

    ◆ serialize()

    \n \n
    \n
    \n
    \n-template<class Archive >
    \n+template<class Archive >
    \n
    void Subscriptor::list_subscribers (
    \n \n \n \n \n
    \n \n \n \n \n@@ -2516,21 +2515,21 @@\n

    Friends And Related Symbol Documentation

    \n \n

    ◆ internal::VectorReference< Number, MemorySpace >

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    void Subscriptor::serialize (
    \n \n \n \n \n
    \n \n \n- \n+ \n \n
    friend class internal::VectorReference< Number, MemorySpace >friend class internal::VectorReference< Number, MemorySpace >
    \n
    \n friend
    \n@@ -2543,15 +2542,15 @@\n

    Member Data Documentation

    \n \n

    ◆ compressed

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n
    \n \n \n \n \n@@ -2570,15 +2569,15 @@\n \n \n

    ◆ has_ghost

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    bool LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::compressed
    \n \n
    \n \n \n \n \n@@ -2625,15 +2624,15 @@\n \n \n

    ◆ nonlocal_vector

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    bool LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::has_ghost
    \n \n \n \n \n
    \n \n \n \n \n@@ -2652,15 +2651,15 @@\n \n \n

    ◆ source_stored_elements

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    Teuchos::RCP<TpetraTypes::VectorType<Number, MemorySpace> > LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::nonlocal_vector
    \n \n
    \n \n \n \n \n@@ -2679,21 +2678,21 @@\n \n \n

    ◆ tpetra_comm_pattern

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    ::IndexSet LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::source_stored_elements
    \n \n \n \n \n
    \n \n \n- \n+ \n \n
    Teuchos::RCP<const TpetraWrappers::CommunicationPattern<MemorySpace> > LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::tpetra_comm_patternTeuchos::RCP<const TpetraWrappers::CommunicationPattern<MemorySpace> > LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::tpetra_comm_pattern
    \n
    \n private
    \n@@ -2788,15 +2787,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    const std::type_info* Subscriptor::object_infoconst std::type_info* Subscriptor::object_info
    \n
    \n mutableprivateinherited
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -17,476 +17,476 @@\n _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs | _\bL_\bi_\bn_\be_\ba_\br_\b _\ba_\bl_\bg_\be_\bb_\br_\ba_\b _\bc_\bl_\ba_\bs_\bs_\be_\bs \u00bb _\bV_\be_\bc_\bt_\bo_\br_\b _\bc_\bl_\ba_\bs_\bs_\be_\bs\n #include <_\bd_\be_\ba_\bl_\b._\bI_\bI_\b/_\bl_\ba_\bc_\b/_\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh>\n Inheritance diagram for LinearAlgebra::TpetraWrappers::Vector< Number,\n MemorySpace >:\n [Inheritance graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n P\bPu\bub\bbl\bli\bic\bc T\bTy\byp\bpe\bes\bs\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = Number\n+using\u00a0 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = Number\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs< Number >::real_type\n+using\u00a0 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = typename _\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs< Number >::real_type\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n+using\u00a0 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference< Number, MemorySpace >\n+using\u00a0 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference< Number, MemorySpace >\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bc_\bo_\bn_\bs_\bt internal::VectorReference< Number, MemorySpace >\n+using\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const internal::VectorReference< Number, MemorySpace >\n \u00a0\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n- void\u00a0 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be (_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br, _\bc_\bo_\bn_\bs_\bt unsigned\n+template\n+ void\u00a0 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be (Archive &ar, const unsigned\n _\bi_\bn_\bt version)\n \u00a0\n 1: Basic Object-handling\n \u00a0 _\bV_\be_\bc_\bt_\bo_\br ()\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt Teuchos::RCP<\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const Teuchos::RCP<\n _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number,\n MemorySpace > > V)\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br, _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ ¶llel_partitioner, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n communicator)\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bn_\bt_\br_\bi_\be_\bs, _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bg_\bh_\bo_\bs_\bt_\b__\be_\bn_\bt_\br_\bi_\be_\bs, _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n- communicator, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bv_\be_\bc_\bt_\bo_\br_\b__\bw_\br_\bi_\bt_\ba_\bb_\bl_\be=_\bf_\ba_\bl_\bs_\be)\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ &locally_owned_entries, const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ &ghost_entries, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n+ communicator, const _\bb_\bo_\bo_\bl\n+ vector_writable=false)\n \u00a0\n void\u00a0 _\bc_\bl_\be_\ba_\br ()\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br, _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n- communicator=_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs=_\bf_\ba_\bl_\bs_\be)\n-\u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bn_\bt_\br_\bi_\be_\bs, _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\br_\be_\bl_\be_\bv_\ba_\bn_\bt_\b__\bo_\br_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bn_\bt_\br_\bi_\be_\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n- communicator=_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bv_\be_\bc_\bt_\bo_\br_\b__\bw_\br_\bi_\bt_\ba_\bb_\bl_\be=_\bf_\ba_\bl_\bs_\be)\n-\u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number,\n- MemorySpace > &V, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs=_\bf_\ba_\bl_\bs_\be)\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ ¶llel_partitioner, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n+ communicator=MPI_COMM_WORLD, const _\bb_\bo_\bo_\bl\n+ omit_zeroing_entries=false)\n+\u00a0\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ &locally_owned_entries, const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ &locally_relevant_or_ghost_entries,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n+ communicator=MPI_COMM_WORLD, const _\bb_\bo_\bo_\bl\n+ vector_writable=false)\n+\u00a0\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bV_\be_\bc_\bt_\bo_\br< Number,\n+ MemorySpace > &V, const _\bb_\bo_\bo_\bl\n+ omit_zeroing_entries=false)\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br &v) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+ virtual void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br &v) noexcept\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw<\n- _\bc_\bo_\bn_\bs_\bt _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx >\n+ virtual void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw<\n+ const _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx >\n &indices, _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< Number > &elements)\n- _\bc_\bo_\bn_\bs_\bt _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ const override\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bO_\bt_\bh_\be_\br_\bN_\bu_\bm_\bb_\be_\br >\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< _\bO_\bt_\bh_\be_\br_\bN_\bu_\bm_\bb_\be_\br >\n+template\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< OtherNumber >\n &V)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt Number s)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const Number s)\n \u00a0\n- void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs (_\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br<\n+ void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs (const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br<\n Number > &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n- operation, _\bc_\bo_\bn_\bs_\bt Teuchos::RCP< _\bc_\bo_\bn_\bs_\bt\n+ operation, const Teuchos::RCP< const\n _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be\n- > &_\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn)\n+ > &communication_pattern)\n \u00a0\n- void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs (_\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br<\n+ void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs (const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br<\n Number > &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n- operation, _\bc_\bo_\bn_\bs_\bt std::shared_ptr< _\bc_\bo_\bn_\bs_\bt\n+ operation, const std::shared_ptr< const\n _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be\n- > &_\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn)\n+ > &communication_pattern)\n \u00a0\n- void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs (_\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br<\n+ void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs (const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br<\n Number > &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n operation)\n \u00a0\n- void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt (_\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< Number >\n+ void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt (const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< Number >\n &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation,\n- std::shared_ptr< _\bc_\bo_\bn_\bs_\bt _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:\n+ std::shared_ptr< const _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:\n _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be >\n- _\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn={})\n+ communication_pattern={})\n \u00a0\n 2: Data-Access\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n \u00a0\n- Number\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ Number\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n \u00a0\n- Number\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ Number\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n 3: Modification of vectors\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b= (_\bc_\bo_\bn_\bs_\bt Number factor)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b= (const Number factor)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b/_\b= (_\bc_\bo_\bn_\bs_\bt Number factor)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b/_\b= (const Number factor)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number,\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b= (const _\bV_\be_\bc_\bt_\bo_\br< Number,\n MemorySpace > &V)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number,\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b= (const _\bV_\be_\bc_\bt_\bo_\br< Number,\n MemorySpace > &V)\n \u00a0\n- Number\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b* (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number,\n- MemorySpace > &V) _\bc_\bo_\bn_\bs_\bt\n+ Number\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b* (const _\bV_\be_\bc_\bt_\bo_\br< Number,\n+ MemorySpace > &V) const\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt Number a)\n+ void\u00a0 _\ba_\bd_\bd (const Number a)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt Number a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br<\n+ void\u00a0 _\ba_\bd_\bd (const Number a, const _\bV_\be_\bc_\bt_\bo_\br<\n Number, MemorySpace > &V)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt Number a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br<\n- Number, MemorySpace > &V, _\bc_\bo_\bn_\bs_\bt Number\n- b, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >\n+ void\u00a0 _\ba_\bd_\bd (const Number a, const _\bV_\be_\bc_\bt_\bo_\br<\n+ Number, MemorySpace > &V, const Number\n+ b, const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >\n &W)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt std::vector< Number >\n+ void\u00a0 _\ba_\bd_\bd (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const std::vector< Number >\n &values)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, _\bc_\bo_\bn_\bs_\bt\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, _\bc_\bo_\bn_\bs_\bt Number\n+ void\u00a0 _\ba_\bd_\bd (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, const\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, const Number\n *values)\n \u00a0\n- void\u00a0 _\bs_\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt Number s, _\bc_\bo_\bn_\bs_\bt Number a,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &V)\n+ void\u00a0 _\bs_\ba_\bd_\bd (const Number s, const Number a,\n+ const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &V)\n \u00a0\n- void\u00a0 _\bs_\be_\bt (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, _\bc_\bo_\bn_\bs_\bt\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, _\bc_\bo_\bn_\bs_\bt Number\n+ void\u00a0 _\bs_\be_\bt (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, const\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, const Number\n *values)\n \u00a0\n- void\u00a0 _\bs_\bc_\ba_\bl_\be (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace\n- > &_\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs)\n+ void\u00a0 _\bs_\bc_\ba_\bl_\be (const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace\n+ > &scaling_factors)\n \u00a0\n- void\u00a0 _\be_\bq_\bu (_\bc_\bo_\bn_\bs_\bt Number a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br<\n+ void\u00a0 _\be_\bq_\bu (const Number a, const _\bV_\be_\bc_\bt_\bo_\br<\n Number, MemorySpace > &V)\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo () const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bi_\bs_\b__\bn_\bo_\bn_\b__\bn_\be_\bg_\ba_\bt_\bi_\bv_\be () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bi_\bs_\b__\bn_\bo_\bn_\b__\bn_\be_\bg_\ba_\bt_\bi_\bv_\be () const\n \u00a0\n 4: Scalar products, norms and related operations\n- Number\u00a0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be () _\bc_\bo_\bn_\bs_\bt\n+ Number\u00a0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b1_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b1_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b2_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b2_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bn_\bo_\br_\bm_\b__\bs_\bq_\br () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bn_\bo_\br_\bm_\b__\bs_\bq_\br () const\n \u00a0\n- Number\u00a0 _\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt (_\bc_\bo_\bn_\bs_\bt Number a, _\bc_\bo_\bn_\bs_\bt\n- _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &V, _\bc_\bo_\bn_\bs_\bt\n+ Number\u00a0 _\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt (const Number a, const\n+ _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &V, const\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &W)\n \u00a0\n 5: Scalar products, norms and related operations\n- _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number,\n- MemorySpace > &v) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b= (const _\bV_\be_\bc_\bt_\bo_\br< Number,\n+ MemorySpace > &v) const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b!_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number,\n- MemorySpace > &v) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b!_\b= (const _\bV_\be_\bc_\bt_\bo_\br< Number,\n+ MemorySpace > &v) const\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bs_\bi_\bz_\be () _\bc_\bo_\bn_\bs_\bt _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ virtual _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bs_\bi_\bz_\be () const override\n \u00a0\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be () _\bc_\bo_\bn_\bs_\bt\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be () const\n \u00a0\n- std::pair< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\u00a0 _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be () _\bc_\bo_\bn_\bs_\bt\n+ std::pair< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\u00a0 _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be () const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bi_\bn_\b__\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n- _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bi_\bn_\b__\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bi_\bs_\b__\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bi_\bs_\b__\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd () const\n \u00a0\n- _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br () _\bc_\bo_\bn_\bs_\bt\n+ _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br () const\n \u00a0\n- _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n 6: Mixed stuff\n- void\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n+ void\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs (const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n operation)\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number,\n- MemorySpace > &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br () _\bc_\bo_\bn_\bs_\bt\n+const _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number,\n+ MemorySpace > &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br () const\n \u00a0\n _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number,\n MemorySpace > &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br ()\n \u00a0\n- Teuchos::RCP< _\bc_\bo_\bn_\bs_\bt _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:\n- _\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number, MemorySpace > >\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\br_\bc_\bp () _\bc_\bo_\bn_\bs_\bt\n+ Teuchos::RCP< const _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:\n+ _\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number, MemorySpace > >\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\br_\bc_\bp () const\n \u00a0\n Teuchos::RCP< _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be<\n Number, MemorySpace > >\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\br_\bc_\bp ()\n \u00a0\n- void\u00a0 _\bp_\br_\bi_\bn_\bt (std::ostream &out, _\bc_\bo_\bn_\bs_\bt unsigned\n- _\bi_\bn_\bt precision=3, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- scientific=_\bt_\br_\bu_\be, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl _\ba_\bc_\br_\bo_\bs_\bs=_\bt_\br_\bu_\be)\n- _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bp_\br_\bi_\bn_\bt (std::ostream &out, const unsigned\n+ _\bi_\bn_\bt precision=3, const _\bb_\bo_\bo_\bl\n+ scientific=true, const _\bb_\bo_\bo_\bl across=true)\n+ const\n \u00a0\n- std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () _\bc_\bo_\bn_\bs_\bt\n+ std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () const\n \u00a0\n- _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm () const\n \u00a0\n Subscriptor functionality\n Classes derived from _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br provide a facility to subscribe to this\n object. This is mostly used by the _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br class.\n- void\u00a0 _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *_\bc_\bo_\bn_\bs_\bt\n- _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by, _\bc_\bo_\bn_\bs_\bt std::string\n- &_\bi_\bd_\be_\bn_\bt_\bi_\bf_\bi_\be_\br=\"\") _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *const\n+ validity, const std::string\n+ &identifier=\"\") const\n \u00a0\n- void\u00a0 _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *_\bc_\bo_\bn_\bs_\bt\n- _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by, _\bc_\bo_\bn_\bs_\bt std::string\n- &_\bi_\bd_\be_\bn_\bt_\bi_\bf_\bi_\be_\br=\"\") _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *const\n+ validity, const std::string\n+ &identifier=\"\") const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn_\bs () const\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n- void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs (_\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be &stream)\n- _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs (StreamType &stream)\n+ const\n \u00a0\n- void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () const\n \u00a0\n S\bSt\bta\bat\bti\bic\bc P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg ()\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be_\bN_\bo_\bt_\bC_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bl_\be ()\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be_\bN_\bo_\bt_\bC_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bl_\be ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b1, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n- _\ba_\br_\bg_\b2, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b3, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b4)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg1, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+ arg2, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg3, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg4)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bM_\bi_\bs_\bs_\bi_\bn_\bg_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ()\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bM_\bi_\bs_\bs_\bi_\bn_\bg_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt _\ba_\br_\bg_\b1)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt arg1)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bI_\bn_\bU_\bs_\be (_\bi_\bn_\bt _\ba_\br_\bg_\b1, std::string _\ba_\br_\bg_\b2, std::string\n- _\ba_\br_\bg_\b3)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bI_\bn_\bU_\bs_\be (_\bi_\bn_\bt arg1, std::string arg2, std::string\n+ arg3)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bN_\bo_\bS_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br (std::string _\ba_\br_\bg_\b1, std::string _\ba_\br_\bg_\b2)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bN_\bo_\bS_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br (std::string arg1, std::string arg2)\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be T\bTy\byp\bpe\bes\bs\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n+using\u00a0 _\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)::iterator\n+using\u00a0 _\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)::iterator\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-void\u00a0 _\bc_\br_\be_\ba_\bt_\be_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bs_\bo_\bu_\br_\bc_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt, _\bc_\bo_\bn_\bs_\bt\n+void\u00a0 _\bc_\br_\be_\ba_\bt_\be_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &source_index_set, const\n _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm _\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm)\n \u00a0\n-void\u00a0 _\bc_\bh_\be_\bc_\bk_\b__\bn_\bo_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+void\u00a0 _\bc_\bh_\be_\bc_\bk_\b__\bn_\bo_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () const noexcept\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n _\bb_\bo_\bo_\bl\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd\n \u00a0\n _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt\n \u00a0\n Teuchos::RCP< _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number,\n MemorySpace > >\u00a0 _\bv_\be_\bc_\bt_\bo_\br\n \u00a0\n Teuchos::RCP< _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number,\n MemorySpace > >\u00a0 _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br\n \u00a0\n _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bs_\bo_\bu_\br_\bc_\be_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n \u00a0\n- Teuchos::RCP< _\bc_\bo_\bn_\bs_\bt _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:\n+ Teuchos::RCP< const _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:\n _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn< MemorySpace > >\u00a0 _\bt_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn\n \u00a0\n std::atomic< unsigned _\bi_\bn_\bt >\u00a0 _\bc_\bo_\bu_\bn_\bt_\be_\br\n \u00a0\n std::map< std::string, unsigned _\bi_\bn_\bt >\u00a0 _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp\n \u00a0\n std::vector< std::atomic< _\bb_\bo_\bo_\bl > * >\u00a0 _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by_\b__\bp_\bo_\bi_\bn_\bt_\be_\br_\bs\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt std::type_info *\u00a0 _\bo_\bb_\bj_\be_\bc_\bt_\b__\bi_\bn_\bf_\bo\n+ const std::type_info *\u00a0 _\bo_\bb_\bj_\be_\bc_\bt_\b__\bi_\bn_\bf_\bo\n \u00a0\n S\bSt\bta\bat\bti\bic\bc P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n-_\bs_\bt_\ba_\bt_\bi_\bc std::mutex\u00a0 _\bm_\bu_\bt_\be_\bx\n+static std::mutex\u00a0 _\bm_\bu_\bt_\be_\bx\n \u00a0\n F\bFr\bri\bie\ben\bnd\bds\bs\n-_\bc_\bl_\ba_\bs_\bs\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,_\b _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>\n+class\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,_\b _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n class LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >\n This class implements a wrapper to the Trilinos distributed vector class\n Tpetra::Vector. This class requires Trilinos to be compiled with MPI support.\n Moreover, this class takes an optional template argument for the memory space\n used. By default, all memory is allocated on the CPU.\n Definition at line _\b2_\b8_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br T\bTy\byp\bpe\bed\bde\bef\bf D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bu_\bs_\bi_\bn_\bg _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::value_type\n+template\n+using _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::value_type\n = Number\n Declare some of the standard types used in all containers.\n Definition at line _\b2_\b9_\b4 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bea\bal\bl_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bu_\bs_\bi_\bn_\bg _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::real_type =\n-_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs::real_type\n+template\n+using _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::real_type =\n+typename _\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs::real_type\n Definition at line _\b2_\b9_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bu_\bs_\bi_\bn_\bg _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::size_type =\n+template\n+using _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::size_type =\n _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n Definition at line _\b2_\b9_\b6 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bu_\bs_\bi_\bn_\bg _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::reference =\n+template\n+using _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::reference =\n internal::VectorReference\n Definition at line _\b2_\b9_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bon\bns\bst\bt_\b_r\bre\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bu_\bs_\bi_\bn_\bg _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::\n-const_reference = _\bc_\bo_\bn_\bs_\bt internal::VectorReference\n+template\n+using _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::\n+const_reference = const internal::VectorReference\n Definition at line _\b2_\b9_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bap\bp_\b_v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n+using _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n The data type used in _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp.\n Definition at line _\b2_\b2_\b9 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bap\bp_\b_i\bit\bte\ber\bra\bat\bto\bor\br *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp):: privateinherited\n+using _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp):: privateinherited\n iterator\n The iterator type used in _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp.\n Definition at line _\b2_\b3_\b4 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* C\bCo\bon\bns\bst\btr\bru\buc\bct\bto\bor\br &\b& D\bDe\bes\bst\btr\bru\buc\bct\bto\bor\br D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[1\b1/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( )\n Default constructor that generates an empty (zero size) vector. The function\n _\br_\be_\bi_\bn_\bi_\bt_\b(_\b) will have to give the vector the correct size and distribution among\n processes in case of an MPI run.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[2\b2/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >\n+template\n+_\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >_\b:_\b: ( &\u00a0 V\bV )\n _\bV_\be_\bc_\bt_\bo_\br\n Copy constructor. Sets the dimension and the partitioning to that of the given\n vector and copies all elements.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[3\b3/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: _\bc_\bo_\bn_\bs_\bt Teuchos::RCP< _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:\n+template\n+_\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: const Teuchos::RCP< _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >_\b:_\b: ( _\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number, MemorySpace > >\u00a0 V\bV )\n _\bV_\be_\bc_\bt_\bo_\br\n Copy constructor from Teuchos::RCP.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[4\b4/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br,\n Number, MemorySpace >_\b:_\b: explicit\n _\bV_\be_\bc_\bt_\bo_\br\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0\n )\n TODO: This is not used This constructor takes an _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt that defines how to\n distribute the individual components among the MPI processors. Since it also\n includes information about the size of the vector, this is all we need to\n generate a parallel vector.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[5\b5/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n Number, MemorySpace >_\b:_\b:\n _\bV_\be_\bc_\bt_\bo_\br explicit\n- _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 g\bgh\bho\bos\bst\bt_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 v\bve\bec\bct\bto\bor\br_\b_w\bwr\bri\bit\bta\bab\bbl\ble\be = _\bf_\ba_\bl_\bs_\be\u00a0\n+ const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 g\bgh\bho\bos\bst\bt_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br,\n+ const _\bb_\bo_\bo_\bl\u00a0 v\bve\bec\bct\bto\bor\br_\b_w\bwr\bri\bit\bta\bab\bbl\ble\be = false\u00a0\n )\n In addition to just specifying one index set as in all the other methods above,\n this method allows to supply an additional set of ghost entries.\n Depending on whether the locally_relevant_or_ghost_entries argument uniquely\n subdivides elements among processors or not, the resulting vector may or may\n not have ghost elements. See the general documentation of this class for more\n information.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bn D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bcl\ble\bea\bar\br(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::clear ( )\n Release all memory and return to a state just like after having called the\n default constructor.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br,\n Number, MemorySpace >::reinit\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br =\n- _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = _\bf_\ba_\bl_\bs_\be\u00a0\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br =\n+ MPI_COMM_WORLD,\n+ const _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = false\u00a0\n )\n Reinit functionality. This function destroys the old vector content and\n generates a new one based on the input partitioning. The flag\n omit_zeroing_entries determines whether the vector should be filled with zeros\n (false) or left in an undetermined state (true).\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n Number, MemorySpace >::\n reinit\n- _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_r\bre\bel\ble\bev\bva\ban\bnt\bt_\b_o\bor\br_\b_g\bgh\bho\bos\bst\bt_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 v\bve\bec\bct\bto\bor\br_\b_w\bwr\bri\bit\bta\bab\bbl\ble\be = _\bf_\ba_\bl_\bs_\be\u00a0\n+ const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_r\bre\bel\ble\bev\bva\ban\bnt\bt_\b_o\bor\br_\b_g\bgh\bho\bos\bst\bt_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br = MPI_COMM_WORLD,\n+ const _\bb_\bo_\bo_\bl\u00a0 v\bve\bec\bct\bto\bor\br_\b_w\bwr\bri\bit\bta\bab\bbl\ble\be = false\u00a0\n )\n Reinit functionality. This function destroys the old vector content and\n generates a new one based on the input partitioning. In addition to just\n specifying one index set as in all the other methods above, this method allows\n to supply an additional set of ghost entries.\n Depending on whether the locally_relevant_or_ghost_entries argument uniquely\n subdivides elements among processors or not, the resulting vector may or may\n not have ghost elements. See the general documentation of this class for more\n information.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, V\bV,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const _\bV_\be_\bc_\bt_\bo_\br< Number, V\bV,\n Number, MemorySpace >:: MemorySpace > &\u00a0\n reinit\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = _\bf_\ba_\bl_\bs_\be\u00a0\n+ const _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = false\u00a0\n )\n Change the dimension to that of the vector V. The elements of V are not copied.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsw\bwa\bap\bp(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace >\n+template\n void _\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace v\bv ) inlinevirtualnoexcept\n MemorySpace >::swap > &\u00a0\n Swap the contents of this vector and the other vector v. One could do this\n operation with a temporary variable and copying over the data elements, but\n this function is significantly more efficient since it only swaps the pointers\n to the data of the two vectors and therefore does not need to allocate\n temporary storage and move data around.\n This function is analogous to the swap function of all C++ standard containers.\n Also, there is a global function swap(u,v) that simply calls u.swap(v), again\n in analogy to standard functions.\n This function is virtual in order to allow for derived classes to handle memory\n separately.\n Definition at line _\b1_\b1_\b0_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\bex\bxt\btr\bra\bac\bct\bt_\b_s\bsu\bub\bbv\bve\bec\bct\bto\bor\br_\b_t\bto\bo(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bv_\bi_\br_\bt_\bu_\ba_\bl void\n-_\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: _\bc_\bo_\bn_\bs_\bt _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< _\bc_\bo_\bn_\bs_\bt\n+template\n+virtual void\n+_\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< const\n _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx > i\bin\bnd\bdi\bic\bce\bes\bs,\n Number, MemorySpace >:: &\u00a0 overridevirtual\n extract_subvector_to\n _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< Number > &\u00a0 e\bel\ble\bem\bme\ben\bnt\bts\bs\u00a0\n ) const\n Extract a range of elements all at once.\n Implements _\bR_\be_\ba_\bd_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bV_\be_\bc_\bt_\bo_\br & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &\u00a0 V\bV )\n-MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br=\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &\u00a0 V\bV )\n+MemorySpace >::operator=\n Copy function. This function takes a _\bV_\be_\bc_\bt_\bo_\br and copies all the elements. The\n _\bV_\be_\bc_\bt_\bo_\br will have the same parallel distribution as V.\n The semantics of this operator are complex. If the two vectors have the same\n size, and if either the left or right hand side vector of the assignment (i.e.,\n either the input vector on the right hand side, or the calling vector to the\n left of the assignment operator) currently has ghost elements, then the left\n hand side vector will also have ghost values and will consequently be a read-\n@@ -500,269 +500,269 @@\n yet, or is perhaps an entirely uninitialized vector, then the assignment is\n simply a copy operation in the usual sense: In that case, if the right hand\n side has no ghost elements (i.e., is a completely distributed vector), then the\n left hand side will have no ghost elements either. And if the right hand side\n has ghost elements (and is consequently read-only), then the left hand side\n will have these same properties after the operation.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bO_\bt_\bh_\be_\br_\bN_\bu_\bm_\bb_\be_\br >\n+template\n+template\n _\bV_\be_\bc_\bt_\bo_\br & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< _\bO_\bt_\bh_\be_\br_\bN_\bu_\bm_\bb_\be_\br > &\u00a0 V\bV )\n-MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br=\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< OtherNumber > &\u00a0 V\bV )\n+MemorySpace >::operator=\n Copy function. This function takes a _\bV_\be_\bc_\bt_\bo_\br and copies all the elements. The\n _\bV_\be_\bc_\bt_\bo_\br will have the same parallel distribution as V.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bV_\be_\bc_\bt_\bo_\br & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt Number\u00a0 s\bs )\n-MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br=\n+template\n+_\bV_\be_\bc_\bt_\bo_\br & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( const Number\u00a0 s\bs )\n+MemorySpace >::operator=\n Sets all elements of the vector to the scalar s. This operation is only allowed\n if s is equal to zero.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bim\bmp\bpo\bor\brt\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< Number V\bV,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< Number V\bV,\n Number, MemorySpace >:: > &\u00a0\n import_elements\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn,\n- _\bc_\bo_\bn_\bs_\bt Teuchos::RCP< _\bc_\bo_\bn_\bs_\bt\n+ const Teuchos::RCP< const\n _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b: c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bti\bio\bon\bn_\b_p\bpa\bat\btt\bte\ber\brn\bn\u00a0\n _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be > &\u00a0\n )\n Imports all the elements present in the vector's _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt from the input vector\n V. _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation is used to decide if the elements in V\n should be added to the current vector or replace the current elements. The last\n parameter can be used if the same communication pattern is used multiple times.\n This can be used to improve performance.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bim\bmp\bpo\bor\brt\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< Number V\bV,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< Number V\bV,\n Number, MemorySpace >:: > &\u00a0\n import_elements\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn,\n- _\bc_\bo_\bn_\bs_\bt std::shared_ptr< _\bc_\bo_\bn_\bs_\bt\n+ const std::shared_ptr< const\n _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b: c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bti\bio\bon\bn_\b_p\bpa\bat\btt\bte\ber\brn\bn\u00a0\n _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be > &\u00a0\n )\n _\bD\bD_\be\be_\bp\bp_\br\br_\be\be_\bc\bc_\ba\ba_\bt\bt_\be\be_\bd\bd_\b:\b:\n Use Teuchos::RCP<> instead of std::shared_ptr<>.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bim\bmp\bpo\bor\brt\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< Number > &\u00a0 V\bV,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< Number > &\u00a0 V\bV,\n MemorySpace >::import_elements\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn\u00a0\n )\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bim\bmp\bpo\bor\brt\bt(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< V\bV,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< V\bV,\n _\bV_\be_\bc_\bt_\bo_\br< Number, Number > &\u00a0\n MemorySpace >::import\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn, inline\n- std::shared_ptr< _\bc_\bo_\bn_\bs_\bt\n+ std::shared_ptr< const\n _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b: c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bti\bio\bon\bn_\b_p\bpa\bat\btt\bte\ber\brn\bn =\n _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn_\bB_\ba_\bs_\be {}\u00a0\n >\u00a0\n )\n _\bD\bD_\be\be_\bp\bp_\br\br_\be\be_\bc\bc_\ba\ba_\bt\bt_\be\be_\bd\bd_\b:\b:\n Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n Definition at line _\b5_\b1_\b4 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br(\b()\b)(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace >\n+template\n internal::VectorReference< Number,\n-MemorySpace > _\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inline\n-MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br()\n+MemorySpace > _\bV_\be_\bc_\bt_\bo_\br< Number, ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inline\n+MemorySpace >::operator()\n Provide access to a given element, both read and write.\n When using a vector distributed with MPI, this operation only makes sense for\n elements that are actually present on the calling processor. Otherwise, an\n exception is thrown.\n Definition at line _\b1_\b3_\b6_\b1 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br(\b()\b)(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-Number _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n-Number, MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br()\n+template\n+Number _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n+Number, MemorySpace >::operator()\n Provide read-only access to an element.\n When using a vector distributed with MPI, this operation only makes sense for\n elements that are actually present on the calling processor. Otherwise, an\n exception is thrown.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace >\n+template\n internal::VectorReference< Number,\n-MemorySpace > _\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inline\n-MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br[]\n+MemorySpace > _\bV_\be_\bc_\bt_\bo_\br< Number, ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inline\n+MemorySpace >::operator[]\n Provide access to a given element, both read and write.\n-Exactly the same as _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b).\n+Exactly the same as operator().\n Definition at line _\b1_\b3_\b6_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace >\n-Number _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const inline\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br[]\n+template\n+Number _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const inline\n+operator[]\n Provide read-only access to an element.\n-Exactly the same as _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b).\n+Exactly the same as operator().\n Definition at line _\b1_\b3_\b7_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br*\b*=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bV_\be_\bc_\bt_\bo_\br & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt Number\u00a0 f\bfa\bac\bct\bto\bor\br )\n-Number, MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br*=\n+template\n+_\bV_\be_\bc_\bt_\bo_\br & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const Number\u00a0 f\bfa\bac\bct\bto\bor\br )\n+Number, MemorySpace >::operator*=\n Multiply the entire vector by a fixed factor.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br/\b/=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bV_\be_\bc_\bt_\bo_\br & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt Number\u00a0 f\bfa\bac\bct\bto\bor\br )\n-Number, MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br/=\n+template\n+_\bV_\be_\bc_\bt_\bo_\br & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const Number\u00a0 f\bfa\bac\bct\bto\bor\br )\n+Number, MemorySpace >::operator/=\n Divide the entire vector by a fixed factor.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br+\b+=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bV_\be_\bc_\bt_\bo_\br & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &\u00a0 V\bV )\n-MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br+=\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &\u00a0 V\bV )\n+MemorySpace >::operator+=\n Add the vector V to the present one.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br-\b-=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bV_\be_\bc_\bt_\bo_\br & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &\u00a0 V\bV )\n-MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br-=\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &\u00a0 V\bV )\n+MemorySpace >::operator-=\n Subtract the vector V from the present one.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br*\b*(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-Number _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >\n+template\n+Number _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >\n _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( &\u00a0 V\bV ) const\n-MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br*\n+MemorySpace >::operator*\n Return the scalar product of two vectors. The vectors need to have the same\n layout.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[1\b1/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt Number\u00a0 a\ba )\n+template\n+void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( const Number\u00a0 a\ba )\n MemorySpace >::add\n Add a to all components. Note that is a scalar not a vector.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[2\b2/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt Number\u00a0 a\ba,\n+template\n+void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( const Number\u00a0 a\ba,\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::add\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > V\bV\u00a0\n+ const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > V\bV\u00a0\n &\u00a0\n )\n Simple addition of a multiple of a vector, i.e. *this += a*V. The vectors need\n to have the same layout.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[3\b3/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt Number\u00a0 a\ba,\n+template\n+void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( const Number\u00a0 a\ba,\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::add\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > V\bV,\n+ const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > V\bV,\n &\u00a0\n- _\bc_\bo_\bn_\bs_\bt Number\u00a0 b\bb,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > W\bW\u00a0\n+ const Number\u00a0 b\bb,\n+ const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > W\bW\u00a0\n &\u00a0\n )\n Multiple addition of multiple of a vector, i.e. *this> += a*V+b*W. The vectors\n need to have the same layout.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[4\b4/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace >\n-void _\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > i\bin\bnd\bdi\bic\bce\bes\bs,\n+template\n+void _\bV_\be_\bc_\bt_\bo_\br< Number, ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > i\bin\bnd\bdi\bic\bce\bes\bs,\n MemorySpace >::add &\u00a0 inline\n- _\bc_\bo_\bn_\bs_\bt std::vector< Number > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+ const std::vector< Number > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n A collective add operation: This function adds a whole set of values stored in\n values to the vector components specified by indices.\n Definition at line _\b1_\b1_\b1_\b1 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[5\b5/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace >\n-void _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::add ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs, inline\n- _\bc_\bo_\bn_\bs_\bt Number *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+template\n+void _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::add ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs, inline\n+ const Number *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n Take an address where n_elements are stored contiguously and add them into the\n vector. Handles all cases which are not covered by the other two _\ba_\bd_\bd_\b(_\b)\n functions above.\n Definition at line _\b1_\b1_\b2_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsa\bad\bdd\bd(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt Number\u00a0 s\bs,\n+template\n+void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( const Number\u00a0 s\bs,\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::sadd\n- _\bc_\bo_\bn_\bs_\bt Number\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > V\bV\u00a0\n+ const Number\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > V\bV\u00a0\n &\u00a0\n )\n Scaling and simple addition of a multiple of a vector, i.e. t\bth\bhi\bis\bs =\b= s\bs\n (*this)+a*V.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\bet\bt(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace >\n-void _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::set ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs, inline\n- _\bc_\bo_\bn_\bs_\bt Number *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+template\n+void _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::set ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs, inline\n+ const Number *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n A collective set operation: instead of setting individual elements of a vector,\n this function allows to set a whole set of elements at once. It is assumed that\n the elements to be set are located in contiguous memory.\n Definition at line _\b1_\b2_\b4_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsc\bca\bal\ble\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number,\n+template\n+void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: const _\bV_\be_\bc_\bt_\bo_\br< Number,\n _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( MemorySpace > &\u00a0 s\bsc\bca\bal\bli\bin\bng\bg_\b_f\bfa\bac\bct\bto\bor\brs\bs )\n MemorySpace >::scale\n Scale each element of this vector by the corresponding element in the argument.\n This function is mostly meant to simulate multiplication (and immediate re-\n assignment) by a diagonal scaling matrix. The vectors need to have the same\n layout.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\beq\bqu\bu(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt Number\u00a0 a\ba,\n+template\n+void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( const Number\u00a0 a\ba,\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::equ\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > V\bV\u00a0\n+ const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > V\bV\u00a0\n &\u00a0\n )\n Assignment *this = a*V.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bal\bll\bl_\b_z\bze\ber\bro\bo(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bb_\bo_\bo_\bl _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: ( ) const\n all_zero\n Return whether the vector contains only elements with value zero.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bis\bs_\b_n\bno\bon\bn_\b_n\bne\beg\bga\bat\bti\biv\bve\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bb_\bo_\bo_\bl _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: ( ) const\n is_non_negative\n Return true if the vector has no negative entries, i.e. all entries are zero or\n positive. This function is used, for example, to check whether refinement\n indicators are really all positive (or zero).\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bme\bea\ban\bn_\b_v\bva\bal\blu\bue\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n Number _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace ( ) const\n >::mean_value\n Return the mean value of the element of this vector.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bl1\b1_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace ( ) const\n >::l1_norm\n Return the l1 norm of the vector (i.e., the sum of the absolute values of all\n entries among all processors).\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bl2\b2_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace ( ) const\n >::l2_norm\n Return the l2 norm of the vector (i.e., the square root of the sum of the\n square of all entries among all processors).\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bin\bnf\bft\bty\by_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace ( ) const\n >::linfty_norm\n Return the maximum norm of the vector (i.e., the maximum absolute value among\n all entries and among all processors).\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bno\bor\brm\bm_\b_s\bsq\bqr\br(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace ( ) const\n >::norm_sqr\n Return the square of the l2-norm.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd_\b_a\ban\bnd\bd_\b_d\bdo\bot\bt(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n Number _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt Number\u00a0 a\ba,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( const Number\u00a0 a\ba,\n MemorySpace >::add_and_dot\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &\u00a0 V\bV,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &\u00a0 W\bW\u00a0\n+ const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &\u00a0 V\bV,\n+ const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace > &\u00a0 W\bW\u00a0\n )\n Performs a combined operation of a vector addition and a subsequent inner\n product, returning the value of the inner product. In other words, the result\n of this function is the same as if the user called\n this->_\ba_\bd_\bd(a, V);\n return_value = *this * W;\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bd_\bd\n@@ -772,48 +772,48 @@\n load three vectors, this, V, W, whereas calling separate methods means to load\n the calling vector this twice. Since most vector operations are memory transfer\n limited, this reduces the time by 25% (or 50% if W equals this).\n The vectors need to have the same layout.\n For complex-valued vectors, the scalar product in the second step is\n implemented as \\(\\left=\\sum_i v_i \\bar{w_i}\\).\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0h\bha\bas\bs_\b_g\bgh\bho\bos\bst\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace >\n+template\n _\bb_\bo_\bo_\bl _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::has_ghost_elements ( ) const inline\n Return whether the vector has ghost elements or not.\n Definition at line _\b1_\b0_\b8_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b=(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bb_\bo_\bo_\bl _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >\n+template\n+_\bb_\bo_\bo_\bl _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >\n _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( &\u00a0 v\bv ) const\n-MemorySpace >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br==\n+MemorySpace >::operator==\n Test for equality. This function assumes that the present vector and the one to\n compare with have the same size already, since comparing vectors of different\n sizes makes not much sense anyway.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bb_\bo_\bo_\bl _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >\n+template\n+_\bb_\bo_\bo_\bl _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: const _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >\n _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( &\u00a0 v\bv ) const\n MemorySpace >::operator!=\n Test for inequality. This function assumes that the present vector and the one\n to compare with have the same size already, since comparing vectors of\n different sizes makes not much sense anyway.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsi\biz\bze\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bv_\bi_\br_\bt_\bu_\ba_\bl _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( ) const overridevirtual\n+template\n+virtual _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( ) const overridevirtual\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::size\n Return the global size of the vector, equal to the sum of the number of locally\n owned indices among all processors.\n Implements _\bR_\be_\ba_\bd_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace ( ) const\n >::locally_owned_size\n Return the local size of the vector, i.e., the number of indices owned locally.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blo\boc\bca\bal\bl_\b_r\bra\ban\bng\bge\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n std::pair< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( ) const\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::local_range\n Return a pair of indices indicating which elements of this vector are stored\n locally. The first number is the index of the first element stored, the second\n the index of the one past the last one that is stored locally. If this is a\n sequential vector, then the result will be the pair (0,N), otherwise it will be\n a pair (i,i+n), where n is the number of elements stored on this processor and\n@@ -827,115 +827,112 @@\n simply stores a particular subset, not necessarily contiguous. In this\n case, this function clearly makes no sense since it could, at best,\n return a range that includes all elements that are stored locally. Thus,\n the function only succeeds if the locally stored range is indeed\n contiguous. It will trigger an assertion if the local portion of the\n vector is not contiguous.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bn_\b_l\blo\boc\bca\bal\bl_\b_r\bra\ban\bng\bge\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bb_\bo_\bo_\bl _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n+template\n+_\bb_\bo_\bo_\bl _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n Number, MemorySpace >::in_local_range\n Return whether index is in the local range or not, see also _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be_\b(_\b).\n Note\n The same limitation for the applicability of this function applies as\n listed in the documentation of _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be_\b(_\b).\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bis\bs_\b_c\bco\bom\bmp\bpr\bre\bes\bss\bse\bed\bd(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace >\n+template\n _\bb_\bo_\bo_\bl _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::is_compressed ( ) const inline\n Return the state of the vector, i.e., whether _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\b(_\b) needs to be called\n after an operation requiring data exchange. A call to _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\b(_\b) is also needed\n when the method _\bs_\be_\bt_\b(_\b) or _\ba_\bd_\bd_\b(_\b) has been called.\n Definition at line _\b1_\b0_\b9_\b6 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0g\bge\bet\bt_\b_m\bmp\bpi\bi_\b_c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace ( ) const\n >::get_mpi_communicator\n Return the underlying MPI communicator.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( ) const\n MemorySpace >::locally_owned_elements\n Return an index set that describes which elements of this vector are owned by\n the current processor. As a consequence, the index sets returned on different\n processors if this is a distributed vector will form disjoint sets that add up\n to the complete index set. Obviously, if a vector is created on only one\n processor, then the result would satisfy\n-_\bv_\be_\bc.locally_owned_elements() == _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt(_\bv_\be_\bc.size())\n-_\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bv_\be_\bc_\bt_\bo_\br\n-Teuchos::RCP< TpetraTypes::VectorType< Number, MemorySpace > > vector\n-D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b1_\b0_\b4_\b7\n+vec.locally_owned_elements() == _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt(vec.size())\n _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt\n IndexSet complete_index_set(const IndexSet::size_type N)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b2_\b0_\b4\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bom\bmp\bpr\bre\bes\bss\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn )\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn )\n MemorySpace >::compress\n Compress the underlying representation of the Trilinos object, i.e. flush the\n buffers of the vector object if it has any. This function is necessary after\n writing into a vector element-by-element and before anything else can be done\n on it.\n Parameters\n The compress mode (Add or Insert) in case the vector has not\n operation been written to since the last time this function was called.\n The argument is ignored if the vector has been added or written\n to since the last time _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\b(_\b) was called.\n See _\bC_\bo_\bm_\bp_\br_\be_\bs_\bs_\bi_\bn_\bg_\b _\bd_\bi_\bs_\bt_\br_\bi_\bb_\bu_\bt_\be_\bd_\b _\bo_\bb_\bj_\be_\bc_\bt_\bs for more information.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\btr\bri\bil\bli\bin\bno\bos\bs_\b_v\bve\bec\bct\bto\bor\br(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bc_\bo_\bn_\bs_\bt _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number, MemorySpace > &\n+template\n+const _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number, MemorySpace > &\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: ( ) const\n trilinos_vector\n Return a const reference to the underlying Trilinos Tpetra::Vector class.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\btr\bri\bil\bli\bin\bno\bos\bs_\b_v\bve\bec\bct\bto\bor\br(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number, MemorySpace > & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: ( )\n _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::trilinos_vector\n Return a (modifiable) reference to the underlying Trilinos Tpetra::Vector\n class.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\btr\bri\bil\bli\bin\bno\bos\bs_\b_r\brc\bcp\bp(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-Teuchos::RCP< _\bc_\bo_\bn_\bs_\bt _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number, MemorySpace > >\n+template\n+Teuchos::RCP< const _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number, MemorySpace > >\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: ( ) const\n trilinos_rcp\n Return a const Teuchos::RCP to the underlying Trilinos Tpetra::Vector class.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\btr\bri\bil\bli\bin\bno\bos\bs_\b_r\brc\bcp\bp(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n Teuchos::RCP< _\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be< Number, MemorySpace > >\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: ( )\n trilinos_rcp\n Return a (modifiable) Teuchos::RCP to the underlying Trilinos Tpetra::Vector\n class.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0p\bpr\bri\bin\bnt\bt(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( std::ostream &\u00a0 o\bou\but\bt,\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::print\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 p\bpr\bre\bec\bci\bis\bsi\bio\bon\bn = 3,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 s\bsc\bci\bie\ben\bnt\bti\bif\bfi\bic\bc = _\bt_\br_\bu_\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 a\bac\bcr\bro\bos\bss\bs = _\bt_\br_\bu_\be\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 p\bpr\bre\bec\bci\bis\bsi\bio\bon\bn = 3,\n+ const _\bb_\bo_\bo_\bl\u00a0 s\bsc\bci\bie\ben\bnt\bti\bif\bfi\bic\bc = true,\n+ const _\bb_\bo_\bo_\bl\u00a0 a\bac\bcr\bro\bos\bss\bs = true\u00a0\n ) const\n Prints the vector to the output stream out.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bme\bem\bmo\bor\bry\by_\b_c\bco\bon\bns\bsu\bum\bmp\bpt\bti\bio\bon\bn(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n std::size_t _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( ) const\n MemorySpace >::memory_consumption\n Return the memory consumption of this class in bytes.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bmp\bpi\bi_\b_c\bco\bom\bmm\bm(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace ( ) const\n >::mpi_comm\n Return the mpi communicator\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bcr\bre\bea\bat\bte\be_\b_t\btp\bpe\bet\btr\bra\ba_\b_c\bco\bom\bmm\bm_\b_p\bpa\bat\btt\bte\ber\brn\bn(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n void _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n-_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 s\bso\bou\bur\brc\bce\be_\b_i\bin\bnd\bde\bex\bx_\b_s\bse\bet\bt,\n+_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 s\bso\bou\bur\brc\bce\be_\b_i\bin\bnd\bde\bex\bx_\b_s\bse\bet\bt,\n MemorySpace >:: private\n create_tpetra_comm_pattern\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 m\bmp\bpi\bi_\b_c\bco\bom\bmm\bm\u00a0\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 m\bmp\bpi\bi_\b_c\bco\bom\bmm\bm\u00a0\n )\n Create the _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn for the communication between the _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n source_index_set and the current vector based on the communicator mpi_comm.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\be(\b()\b) *\b**\b**\b**\b**\b*\n void Subscriptor:: ( std::atomic< _\bb_\bo_\bo_\bl > *const\u00a0 v\bva\bal\bli\bid\bdi\bit\bty\by,\n subscribe inherited\n const std::string &\u00a0 i\bid\bde\ben\bnt\bti\bif\bfi\bie\ber\br = \"\"\u00a0\n@@ -956,25 +953,25 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_s\bsu\bub\bbs\bsc\bcr\bri\bip\bpt\bti\bio\bon\bns\bs(\b()\b) *\b**\b**\b**\b**\b*\n unsigned _\bi_\bn_\bt Subscriptor::n_subscriptions ( ) const inlineinherited\n Return the present number of subscriptions to this object. This allows to use\n this class for reference counted lifetime determination where the last one to\n unsubscribe also deletes the object.\n Definition at line _\b3_\b0_\b0 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\ber\brs\bs(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n+template\n void Subscriptor:: ( StreamType &\u00a0 s\bst\btr\bre\bea\bam\bm ) const inlineinherited\n list_subscribers\n List the subscribers to the input stream.\n Definition at line _\b3_\b1_\b7 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\ber\brs\bs(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n void Subscriptor::list_subscribers ( ) const inherited\n List the subscribers to deallog.\n Definition at line _\b2_\b0_\b3 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\ber\bri\bia\bal\bli\biz\bze\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n+template\n void Subscriptor::serialize ( Archive &\u00a0 a\bar\br,\n const unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0 inlineinherited\n )\n Read or write the data of this object to or from a stream for the purpose of\n serialization using the _\bB_\bO_\bO_\bS_\bT_\b _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn_\b _\bl_\bi_\bb_\br_\ba_\br_\by.\n This function does not actually serialize any of the member variables of this\n class. The reason is that what this class stores is only who subscribes to this\n@@ -995,58 +992,58 @@\n release mode.\n If this function is called when there is an uncaught exception then,\n rather than aborting, this function prints an error message to the\n standard error stream and returns.\n Definition at line _\b5_\b2 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* F\bFr\bri\bie\ben\bnd\bds\bs A\bAn\bnd\bd R\bRe\bel\bla\bat\bte\bed\bd S\bSy\bym\bmb\bbo\bol\bl D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:V\bVe\bec\bct\bto\bor\brR\bRe\bef\bfe\ber\bre\ben\bnc\bce\be<\b< N\bNu\bum\bmb\bbe\ber\br,\b, M\bMe\bem\bmo\bor\bry\byS\bSp\bpa\bac\bce\be >\b> *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bf_\br_\bi_\be_\bn_\bd _\bc_\bl_\ba_\bs_\bs internal::VectorReference< Number, MemorySpace > friend\n+template\n+friend class internal::VectorReference< Number, MemorySpace > friend\n Definition at line _\b1_\b0_\b6_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br D\bDa\bat\bta\ba D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bom\bmp\bpr\bre\bes\bss\bse\bed\bd *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bb_\bo_\bo_\bl _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: private\n compressed\n A boolean variable to hold information on whether the vector is compressed or\n not.\n Definition at line _\b1_\b0_\b3_\b2 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0h\bha\bas\bs_\b_g\bgh\bho\bos\bst\bt *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\bb_\bo_\bo_\bl _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: private\n has_ghost\n Store whether the vector has ghost elements or not.\n If the vector has no ghost elements, it can only access and modify entries\n included in the locally owned index set. And if the vector has ghost elements\n it can access and modify entries included in the locally relevant index set.\n Definition at line _\b1_\b0_\b4_\b2 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bve\bec\bct\bto\bor\br *\b**\b**\b**\b**\b*\n template\n Teuchos::RCP<_\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be > private\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::vector\n Teuchos::RCP to the actual Tpetra vector object.\n Definition at line _\b1_\b0_\b4_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bno\bon\bnl\blo\boc\bca\bal\bl_\b_v\bve\bec\bct\bto\bor\br *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n Teuchos::RCP<_\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be >\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: private\n nonlocal_vector\n A vector object in Trilinos to be used for collecting the non-local elements if\n the vector was constructed with an additional _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt describing ghost\n elements.\n Definition at line _\b1_\b0_\b5_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bso\bou\bur\brc\bce\be_\b_s\bst\bto\bor\bre\bed\bd_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n+template\n _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace private\n >::source_stored_elements\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt of the elements of the last imported vector.\n Definition at line _\b1_\b0_\b6_\b0 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\btp\bpe\bet\btr\bra\ba_\b_c\bco\bom\bmm\bm_\b_p\bpa\bat\btt\bte\ber\brn\bn *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-Teuchos::RCP<_\bc_\bo_\bn_\bs_\bt _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn >\n+template\n+Teuchos::RCP >\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: private\n tpetra_comm_pattern\n _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bP_\ba_\bt_\bt_\be_\br_\bn for the communication between the source_stored_elements\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt and the current vector.\n Definition at line _\b1_\b0_\b6_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bou\bun\bnt\bte\ber\br *\b**\b**\b**\b**\b*\n std::atomic Subscriptor::counter mutableprivateinherited\n@@ -1069,15 +1066,15 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\bli\bid\bdi\bit\bty\by_\b_p\bpo\boi\bin\bnt\bte\ber\brs\bs *\b**\b**\b**\b**\b*\n std::vector *> Subscriptor:: mutableprivateinherited\n validity_pointers\n In this vector, we store pointers to the validity bool in the _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br\n objects that subscribe to this class.\n Definition at line _\b2_\b4_\b0 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bob\bbj\bje\bec\bct\bt_\b_i\bin\bnf\bfo\bo *\b**\b**\b**\b**\b*\n-_\bc_\bo_\bn_\bs_\bt std::type_info* Subscriptor::object_info mutableprivateinherited\n+const std::type_info* Subscriptor::object_info mutableprivateinherited\n Pointer to the typeinfo object of this object, from which we can later deduce\n the class name. Since this information on the derived class is neither\n available in the destructor, nor in the constructor, we obtain it in between\n and store it here.\n Definition at line _\b2_\b4_\b8 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bmu\but\bte\bex\bx *\b**\b**\b**\b**\b*\n std::mutex Subscriptor::mutex staticprivateinherited\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1distributed_1_1BlockVector.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classLinearAlgebra_1_1distributed_1_1BlockVector.html", "unified_diff": "@@ -1758,15 +1758,15 @@\n
    \n
    \n inline
    \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 573 of file la_parallel_block_vector.h.

    \n \n
    \n \n \n

    ◆ operator*() [1/2]

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMGTransferBase.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMGTransferBase.html", "unified_diff": "@@ -217,15 +217,15 @@\n
    \n

    Detailed Description

    \n
    template<typename VectorType>
    \n class MGTransferBase< VectorType >

    Base class used to declare the operations needed by a concrete class implementing prolongation and restriction of vectors in the multigrid context. This class is abstract and has no implementation of these operations.

    \n

    There are several derived classes, reflecting the fact that vector types and numbering of the fine-grid discretization and of the multi-level implementation are independent.

    \n

    If you use multigrid for a single PDE or for your complete system of equations, you will use MGTransferPrebuilt together with Multigrid. The vector types used on the fine grid as well as for the multilevel operations may be Vector or BlockVector. In both cases, MGTransferPrebuilt will operate on all components of the solution.

    \n
    Note
    For the following, it is important to realize the difference between a solution component and a solution block. The distinction only applies if vector valued elements are used, but is quite important then. This is reflected in the fact that it is not possible right now to use transfer classes based on MGTransferComponentBase for genuine vector valued elements, but descendants of MGTransferBlockBase would have to be applied. In the following text, we will use the term block, but remark that it might refer to components as well.
    \n-
    Todo:
    update the following documentation, since it does not reflect the latest changes in structure.
    \n+
    Todo:
    update the following documentation, since it does not reflect the latest changes in structure.
    \n

    For mixed systems, it may be required to do multigrid only for a single component or for some components. The classes MGTransferSelect and MGTransferBlock handle these cases.

    \n

    MGTransferSelect is used if you use multigrid (on Vector objects) for a single component, possibly grouped using mg_target_component.

    \n

    The class MGTransferBlock handles the case where your multigrid method operates on BlockVector objects. These can contain all or a consecutive set of the blocks of the complete system. Since most smoothers cannot operate on block structures, it is not clear whether this case is really useful. Therefore, a tested implementation of this case will be supplied when needed.

    \n \n

    Definition at line 171 of file mg_base.h.

    \n

    Member Typedef Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMapping.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMapping.html", "unified_diff": "@@ -330,15 +330,15 @@\n \\sum_{q}\n \\hat u(\\hat{\\mathbf x}_q)\n \\underbrace{\\left|\\text{det}J(\\hat{\\mathbf x}_q)\\right| w_q}_{=:\n \\text{JxW}_q}.\n \\]\n

    \n

    Here, the weights \\(\\text{JxW}_q\\) of each quadrature point (where JxW mnemonically stands for Jacobian times Quadrature Weights) take the role of the \\(dx\\) in the original integral. Consequently, they appear in all code that computes integrals approximated by quadrature, and are accessed by FEValues::JxW().

    \n-
    Todo:
    Document what happens in the codimension-1 case.
    \n+
    Todo:
    Document what happens in the codimension-1 case.
    \n

    Mapping of vector fields, differential forms and gradients of vector fields

    \n

    The transformation of vector fields or differential forms (gradients of scalar functions) \\(\\mathbf v\\), and gradients of vector fields \\(\\mathbf T\\) follows the general form

    \n

    \n \\[\n \\mathbf v(\\mathbf x) = \\mathbf A(\\hat{\\mathbf x})\n \\hat{\\mathbf v}(\\hat{\\mathbf x}),\n \\qquad\n@@ -1072,15 +1072,15 @@\n

    \n
    \n protectedvirtual
    \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -1326,15 +1326,15 @@\n
    \n
    \n protectedvirtual
    \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values()

    \n \n
    \n@@ -1720,15 +1720,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingC1.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingC1.html", "unified_diff": "@@ -1171,15 +1171,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n@@ -1680,15 +1680,15 @@\n
    \n
    \n protectedvirtualinherited
    \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -1942,15 +1942,15 @@\n
    \n
    \n protectedvirtualinherited
    \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingCartesian.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingCartesian.html", "unified_diff": "@@ -864,15 +864,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n@@ -2279,15 +2279,15 @@\n
    \n
    \n protectedvirtualinherited
    \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_face_values() [2/2]

    \n \n
    \n@@ -2336,15 +2336,15 @@\n
    \n
    \n protectedvirtualinherited
    \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ subscribe()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingFE.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingFE.html", "unified_diff": "@@ -906,15 +906,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n@@ -1817,15 +1817,15 @@\n
    \n
    \n protectedvirtualinherited
    \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n
    \n \n

    ◆ fill_fe_face_values() [2/2]

    \n \n
    \n@@ -1874,15 +1874,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n
    \n \n

    ◆ fill_fe_immersed_surface_values()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingFEField.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingFEField.html", "unified_diff": "@@ -1015,15 +1015,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n
  • \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n@@ -2170,15 +2170,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_face_values() [2/2]

    \n \n
    \n@@ -2227,15 +2227,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ subscribe()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingManifold.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingManifold.html", "unified_diff": "@@ -821,15 +821,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n@@ -1740,15 +1740,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_face_values() [2/2]

    \n \n
    \n@@ -1797,15 +1797,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_immersed_surface_values()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingQ.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingQ.html", "unified_diff": "@@ -1039,15 +1039,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n@@ -2556,15 +2556,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_face_values() [2/2]

    \n \n
    \n@@ -2613,15 +2613,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ subscribe()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingQ1.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingQ1.html", "unified_diff": "@@ -960,15 +960,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n@@ -1469,15 +1469,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -1731,15 +1731,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingQ1Eulerian.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingQ1Eulerian.html", "unified_diff": "@@ -1123,15 +1123,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n@@ -1632,15 +1632,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -1812,15 +1812,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingQCache.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingQCache.html", "unified_diff": "@@ -1395,15 +1395,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n@@ -1904,15 +1904,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -2166,15 +2166,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingQEulerian.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMappingQEulerian.html", "unified_diff": "@@ -1153,15 +1153,15 @@\n \\frac{1}{\\text{det}\\;J(\\hat{\\mathbf x})}\n J(\\hat{\\mathbf x}) \\hat{\\mathbf T}(\\hat{\\mathbf x})\n J(\\hat{\\mathbf x})^{-1}.\n \\]\n

    \n \n \n-
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    Todo:
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Parameters
    \n \n \n \n \n \n
    [in]inputAn array (or part of an array) of input objects that should be mapped.
    [in]kindThe kind of mapping to be applied.
    [in]internalA pointer to an object of type Mapping::InternalDataBase that contains information previously stored by the mapping. The object pointed to was created by the get_data(), get_face_data(), or get_subface_data() function, and will have been updated as part of a call to fill_fe_values(), fill_fe_face_values(), or fill_fe_subface_values() for the current cell, before calling the current function. In other words, this object also represents with respect to which cell the transformation should be applied to.
    [out]outputAn array (or part of an array) into which the transformed objects should be placed. (Note that the array view is const, but the tensors it points to are not.)
    \n@@ -1662,15 +1662,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ get_subface_data()

    \n \n
    \n@@ -1842,15 +1842,15 @@\n \n \n \n protectedvirtualinherited \n \n \n
    \n-
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n+
    Deprecated:
    Use the version taking a hp::QCollection argument.
    \n \n
    \n \n \n

    ◆ fill_fe_subface_values()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMatrixBlock.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMatrixBlock.html", "unified_diff": "@@ -271,15 +271,15 @@\n
    MatrixType & matrix(size_type i)
    \n
    MatrixType matrix
    \n
    size_type row
    \n
    size_type column
    \n \n

    Here, we have not gained very much, except that we do not need to set up empty blocks in the block system.

    \n
    Note
    This class expects, that the row and column BlockIndices objects for the system are equal. If they are not, some functions will throw ExcNotImplemented.
    \n-
    Todo:
    Example for the product preconditioner of the pressure Schur complement.
    \n+
    Todo:
    Example for the product preconditioner of the pressure Schur complement.
    \n
    See also
    Block (linear algebra)
    \n \n

    Definition at line 110 of file matrix_block.h.

    \n

    Member Typedef Documentation

    \n \n

    ◆ size_type

    \n \n@@ -676,15 +676,15 @@\n \n \n inline \n \n \n
    \n

    Add all elements in a FullMatrix into sparse matrix locations given by indices. This function assumes a quadratic sparse matrix and a quadratic full_matrix. The global locations are translated into locations in this block and ExcBlockIndexMismatch is thrown, if the global index does not point into the block referred to by row and column.

    \n-
    Todo:
    elide_zero_values is currently ignored.
    \n+
    Todo:
    elide_zero_values is currently ignored.
    \n

    The optional parameter elide_zero_values can be used to specify whether zero values should be added anyway or these should be filtered away and only non-zero data is added. The default value is true, i.e., zero values won't be added into the matrix.

    \n \n

    Definition at line 757 of file matrix_block.h.

    \n \n
    \n \n \n@@ -733,15 +733,15 @@\n \n \n inline \n \n \n
    \n

    Add all elements in a FullMatrix into global locations given by row_indices and col_indices, respectively. The global locations are translated into locations in this block and ExcBlockIndexMismatch is thrown, if the global index does not point into the block referred to by row and column.

    \n-
    Todo:
    elide_zero_values is currently ignored.
    \n+
    Todo:
    elide_zero_values is currently ignored.
    \n

    The optional parameter elide_zero_values can be used to specify whether zero values should be added anyway or these should be filtered away and only non-zero data is added. The default value is true, i.e., zero values won't be added into the matrix.

    \n \n

    Definition at line 695 of file matrix_block.h.

    \n \n
    \n \n \n@@ -790,15 +790,15 @@\n \n \n inline \n \n \n
    \n

    Set several elements in the specified row of the matrix with column indices as given by col_indices to the respective value. This is the function doing the actual work for the ones adding full matrices. The global locations row_index and col_indices are translated into locations in this block and ExcBlockIndexMismatch is thrown, if the global index does not point into the block referred to by row and column.

    \n-
    Todo:
    elide_zero_values is currently ignored.
    \n+
    Todo:
    elide_zero_values is currently ignored.
    \n

    The optional parameter elide_zero_values can be used to specify whether zero values should be added anyway or these should be filtered away and only non-zero data is added. The default value is true, i.e., zero values won't be added into the matrix.

    \n \n

    Definition at line 780 of file matrix_block.h.

    \n \n
    \n \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1Assembler_1_1MGMatrixSimple.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1Assembler_1_1MGMatrixSimple.html", "unified_diff": "@@ -160,15 +160,15 @@\n  \n const double threshold\n  \n \n

    Detailed Description

    \n
    template<typename MatrixType>
    \n class MeshWorker::Assembler::MGMatrixSimple< MatrixType >

    Assemble local matrices into level matrices without using block structure.

    \n-
    Todo:
    The matrix structures needed for assembling level matrices with local refinement and continuous elements are missing.
    \n+
    Todo:
    The matrix structures needed for assembling level matrices with local refinement and continuous elements are missing.
    \n \n

    Definition at line 253 of file simple.h.

    \n

    Constructor & Destructor Documentation

    \n \n

    ◆ MGMatrixSimple()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfo.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfo.html", "unified_diff": "@@ -117,83 +117,83 @@\n \"\"\n \"\"\n \n
    [legend]
    \n \n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n-\n+\n+\n \n-\n-\n+\n+\n \n-\n-\n+\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n \n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n

    \n Public Member Functions

     DoFInfo (const BlockInfo &block_info)
     DoFInfo (const BlockInfo &block_info)
     
     DoFInfo (const DoFHandler< dim, spacedim > &dof_handler)
     DoFInfo (const DoFHandler< dim, spacedim > &dof_handler)
     
    template<class DHCellIterator >
    void reinit (const DHCellIterator &c)
    template<class DHCellIterator >
    void reinit (const DHCellIterator &c)
     
    template<class DHCellIterator , class DHFaceIterator >
    void reinit (const DHCellIterator &c, const DHFaceIterator &f, const unsigned int face_no)
    template<class DHCellIterator , class DHFaceIterator >
    void reinit (const DHCellIterator &c, const DHFaceIterator &f, const unsigned int face_no)
     
    template<class DHCellIterator , class DHFaceIterator >
    void reinit (const DHCellIterator &c, const DHFaceIterator &f, const unsigned int face_no, const unsigned int subface_no)
    template<class DHCellIterator , class DHFaceIterator >
    void reinit (const DHCellIterator &c, const DHFaceIterator &f, const unsigned int face_no, const unsigned int subface_no)
     
    template<class DHFaceIterator >
    void set_face (const DHFaceIterator &f, const unsigned int face_no)
    template<class DHFaceIterator >
    void set_face (const DHFaceIterator &f, const unsigned int face_no)
     
    template<class DHFaceIterator >
    void set_subface (const DHFaceIterator &f, const unsigned int face_no, const unsigned int subface_no)
    template<class DHFaceIterator >
    void set_subface (const DHFaceIterator &f, const unsigned int face_no, const unsigned int subface_no)
     
    const BlockIndiceslocal_indices () const
    const BlockIndiceslocal_indices () const
     
    unsigned int n_values () const
    unsigned int n_values () const
     
    unsigned int n_vectors () const
    unsigned int n_vectors () const
     
    unsigned int n_matrices () const
    unsigned int n_matrices () const
     
    unsigned int n_quadrature_points () const
    unsigned int n_quadrature_points () const
     
    unsigned int n_quadrature_values () const
    unsigned int n_quadrature_values () const
     
    number & value (const unsigned int i)
    number & value (const unsigned int i)
     
    number value (const unsigned int i) const
    number value (const unsigned int i) const
     
    BlockVector< number > & vector (const unsigned int i)
     
    const BlockVector< number > & vector (const unsigned int i) const
     
    MatrixBlock< FullMatrix< number > > & matrix (const unsigned int i, const bool external=false)
    MatrixBlock< FullMatrix< number > > & matrix (const unsigned int i, const bool external=false)
     
    const MatrixBlock< FullMatrix< number > > & matrix (const unsigned int i, const bool external=false) const
    const MatrixBlock< FullMatrix< number > > & matrix (const unsigned int i, const bool external=false) const
     
    Table< 2, number > & quadrature_values ()
     
    number & quadrature_value (const unsigned int k, const unsigned int i)
    number & quadrature_value (const unsigned int k, const unsigned int i)
     
    number quadrature_value (const unsigned int k, const unsigned int i) const
    number quadrature_value (const unsigned int k, const unsigned int i) const
     
    void initialize_numbers (const unsigned int n)
    void initialize_numbers (const unsigned int n)
     
    void initialize_vectors (const unsigned int n)
    void initialize_vectors (const unsigned int n)
     
    void initialize_matrices (const unsigned int n, bool both)
    void initialize_matrices (const unsigned int n, bool both)
     
    template<typename MatrixType >
    void initialize_matrices (const MatrixBlockVector< MatrixType > &matrices, bool both)
    template<typename MatrixType >
    void initialize_matrices (const MatrixBlockVector< MatrixType > &matrices, bool both)
     
    template<typename MatrixType >
    void initialize_matrices (const MGMatrixBlockVector< MatrixType > &matrices, bool both)
    template<typename MatrixType >
    void initialize_matrices (const MGMatrixBlockVector< MatrixType > &matrices, bool both)
     
    void initialize_quadrature (const unsigned int np, const unsigned int nv)
    void initialize_quadrature (const unsigned int np, const unsigned int nv)
     
    void reinit (const BlockIndices &local_sizes)
    void reinit (const BlockIndices &local_sizes)
     
    template<typename StreamType >
    void print_debug (StreamType &os) const
    template<typename StreamType >
    void print_debug (StreamType &os) const
     
    std::size_t memory_consumption () const
    std::size_t memory_consumption () const
     
    \n \n \n \n \n@@ -204,29 +204,29 @@\n \n \n \n \n \n \n \n-\n+\n \n \n \n \n

    \n Public Attributes

    Triangulation< dim, spacedim >::cell_iterator cell
     The current cell.
     
     
    unsigned int sub_number
     
    std::vector< types::global_dof_indexindices
     
    std::vector< std::vector< types::global_dof_index > > indices_by_block
     
    SmartPointer< const BlockInfo, DoFInfo< dim, spacedim > > block_info
    SmartPointer< const BlockInfo, DoFInfo< dim, spacedim > > block_info
     The block structure of the system.
     
    bool level_cell
     
    \n \n \n \n \n \n \n-\n-\n+\n+\n \n \n

    \n Private Member Functions

     DoFInfo ()
     
    void set_block_indices ()
     Set up local block indices.
     
    template<class DHCellIterator >
    void get_indices (const DHCellIterator &c)
    template<class DHCellIterator >
    void get_indices (const DHCellIterator &c)
     Fill index vector with active indices.
     
    \n \n \n \n@@ -242,19 +242,19 @@\n \n \n \n \n

    \n Private Attributes

    std::vector< types::global_dof_indexindices_org
     Auxiliary vector.
    std::vector< MatrixBlock< FullMatrix< number > > > M2
     
    Table< 2, number > quadrature_data
     
    \n \n-\n+\n \n

    \n Friends

    class DoFInfoBox< dim, DoFInfo< dim, spacedim, number > >
    class DoFInfoBox< dim, DoFInfo< dim, spacedim, number > >
     
    \n

    Detailed Description

    \n-
    template<int dim, int spacedim = dim, typename number = double>
    \n+
    template<int dim, int spacedim = dim, typename number = double>
    \n class MeshWorker::DoFInfo< dim, spacedim, number >

    A class containing information on geometry and degrees of freedom of a mesh object.

    \n

    The information in these objects is usually used by one of the Assembler classes. It is also the kind of information which is needed in mesh based matrices (often referred to as matrix free methods).

    \n

    In addition to the information on degrees of freedom stored in this class, it also provides the local computation space for the worker object operating on it in LocalResults. This base class will automatically be reinitialized on each cell, but initial setup is up to the user and should be done when initialize() for this class is called.

    \n

    This class operates in two different modes, corresponding to the data models discussed in the Assembler namespace documentation.

    \n

    The choice of the local data model is triggered by the vector BlockInfo::local_renumbering, which in turn is usually filled by BlockInfo::initialize_local(). If this function has been used, or the vector has been changed from zero-length, then local dof indices stored in this object will automatically be renumbered to reflect local block structure. This means, the first entries in indices will refer to the first block of the system, then comes the second block and so on.

    \n

    The BlockInfo object is stored as a pointer. Therefore, if the block structure changes, for instance because of mesh refinement, the DoFInfo class will automatically use the new structures.

    \n \n@@ -262,20 +262,20 @@\n

    Constructor & Destructor Documentation

    \n \n

    ◆ DoFInfo() [1/3]

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n \n \n- \n+ \n \n \n \n
    MeshWorker::DoFInfo< dim, spacedim, number >::DoFInfo (const BlockInfoconst BlockInfoblock_info)
    \n
    \n

    Constructor setting the block_info pointer.

    \n \n@@ -283,20 +283,20 @@\n
    \n \n

    ◆ DoFInfo() [2/3]

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim, typename number >
    \n+template<int dim, int spacedim, typename number >
    \n \n \n \n \n- \n+ \n \n \n \n
    MeshWorker::DoFInfo< dim, spacedim, number >::DoFInfo (const DoFHandler< dim, spacedim > & const DoFHandler< dim, spacedim > & dof_handler)
    \n
    \n

    Constructor leaving the block_info pointer empty, but setting the aux_local_indices.

    \n \n@@ -306,15 +306,15 @@\n
    \n \n

    ◆ DoFInfo() [3/3]

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim, typename number >
    \n+template<int dim, int spacedim, typename number >
    \n \n \n
    \n \n \n \n \n@@ -337,25 +337,25 @@\n

    Member Function Documentation

    \n \n

    ◆ reinit() [1/4]

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim, typename number >
    \n+template<int dim, int spacedim, typename number >
    \n
    \n-template<class DHCellIterator >
    \n+template<class DHCellIterator >
    \n
    MeshWorker::DoFInfo< dim, spacedim, number >::DoFInfo (
    \n \n \n \n@@ -370,37 +370,37 @@\n \n \n

    ◆ reinit() [2/4]

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim, typename number >
    \n+template<int dim, int spacedim, typename number >
    \n \n+template<class DHCellIterator , class DHFaceIterator >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void MeshWorker::DoFInfo< dim, spacedim, number >::reinit (const DHCellIteratorconst DHCellIterator & c)
    \n
    \n inline
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -419,43 +419,43 @@\n \n \n

    ◆ reinit() [3/4]

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim, typename number >
    \n+template<int dim, int spacedim, typename number >
    \n \n+template<class DHCellIterator , class DHFaceIterator >
    \n
    void MeshWorker::DoFInfo< dim, spacedim, number >::reinit (const DHCellIteratorconst DHCellIterator & c,
    const DHFaceIteratorconst DHFaceIterator & f,
    const unsigned int const unsigned int face_no 
    )
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -474,31 +474,31 @@\n \n \n

    ◆ set_face()

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim, typename number >
    \n+template<int dim, int spacedim, typename number >
    \n
    \n-template<class DHFaceIterator >
    \n+template<class DHFaceIterator >
    \n
    void MeshWorker::DoFInfo< dim, spacedim, number >::reinit (const DHCellIteratorconst DHCellIterator & c,
    const DHFaceIteratorconst DHFaceIterator & f,
    const unsigned int const unsigned int face_no,
    const unsigned int const unsigned int subface_no 
    )
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -517,37 +517,37 @@\n \n \n

    ◆ set_subface()

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim, typename number >
    \n+template<int dim, int spacedim, typename number >
    \n
    \n-template<class DHFaceIterator >
    \n+template<class DHFaceIterator >
    \n
    void MeshWorker::DoFInfo< dim, spacedim, number >::set_face (const DHFaceIteratorconst DHFaceIterator & f,
    const unsigned int const unsigned int face_no 
    )
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -566,21 +566,21 @@\n \n \n

    ◆ local_indices()

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim, typename number >
    \n+template<int dim, int spacedim, typename number >
    \n
    void MeshWorker::DoFInfo< dim, spacedim, number >::set_subface (const DHFaceIteratorconst DHFaceIterator & f,
    const unsigned int const unsigned int face_no,
    const unsigned int const unsigned int subface_no 
    )
    \n \n \n
    \n \n \n- \n+ \n \n \n \n \n
    const BlockIndices & MeshWorker::DoFInfo< dim, spacedim, number >::local_indices const BlockIndices & MeshWorker::DoFInfo< dim, spacedim, number >::local_indices () const
    \n
    \n@@ -595,15 +595,15 @@\n \n \n

    ◆ set_block_indices()

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n
    \n \n \n \n \n@@ -624,25 +624,25 @@\n \n \n

    ◆ get_indices()

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim, typename number >
    \n+template<int dim, int spacedim, typename number >
    \n
    \n-template<class DHCellIterator >
    \n+template<class DHCellIterator >
    \n
    void MeshWorker::DoFInfo< dim, spacedim, number >::set_block_indices (
    \n \n \n \n@@ -658,15 +658,15 @@\n \n \n

    ◆ n_values()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void MeshWorker::DoFInfo< dim, spacedim, number >::get_indices (const DHCellIteratorconst DHCellIterator & c)
    \n
    \n inlineprivate
    \n \n
    \n \n \n \n \n@@ -689,15 +689,15 @@\n \n \n

    ◆ n_vectors()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    unsigned int MeshWorker::LocalResults< number >::n_values (
    \n \n
    \n \n \n \n \n@@ -720,15 +720,15 @@\n \n \n

    ◆ n_matrices()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    unsigned int MeshWorker::LocalResults< number >::n_vectors (
    \n \n
    \n \n \n \n \n@@ -750,15 +750,15 @@\n \n \n

    ◆ n_quadrature_points()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    unsigned int MeshWorker::LocalResults< number >::n_matrices (
    \n \n
    \n \n \n \n \n@@ -780,15 +780,15 @@\n \n \n

    ◆ n_quadrature_values()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    unsigned int MeshWorker::LocalResults< number >::n_quadrature_points (
    \n \n
    \n \n \n \n \n@@ -810,23 +810,23 @@\n \n \n

    ◆ value() [1/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    unsigned int MeshWorker::LocalResults< number >::n_quadrature_values (
    \n \n \n \n@@ -841,23 +841,23 @@\n \n \n

    ◆ value() [2/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    number & MeshWorker::LocalResults< number >::value (const unsigned int const unsigned int i)
    \n
    \n inlineinherited
    \n \n \n \n@@ -934,30 +934,30 @@\n \n \n

    ◆ matrix() [1/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    number MeshWorker::LocalResults< number >::value (const unsigned int const unsigned int i) const
    \n
    \n inlineinherited
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    MatrixBlock< FullMatrix< number > > & MeshWorker::LocalResults< number >::matrix (const unsigned int const unsigned int i,
    const bool external = false const bool external = false 
    )
    \n@@ -976,30 +976,30 @@\n \n \n

    ◆ matrix() [2/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    const MatrixBlock< FullMatrix< number > > & MeshWorker::LocalResults< number >::matrix const MatrixBlock< FullMatrix< number > > & MeshWorker::LocalResults< number >::matrix (const unsigned int const unsigned int i,
    const bool external = false const bool external = false 
    ) const
    \n@@ -1018,15 +1018,15 @@\n \n \n

    ◆ quadrature_values()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n \n \n
    \n \n \n \n \n@@ -1048,29 +1048,29 @@\n \n \n

    ◆ quadrature_value() [1/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    Table< 2, number > & MeshWorker::LocalResults< number >::quadrature_values (
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1089,29 +1089,29 @@\n \n \n

    ◆ quadrature_value() [2/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    number & MeshWorker::LocalResults< number >::quadrature_value (const unsigned int const unsigned int k,
    const unsigned int const unsigned int i 
    )
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1130,23 +1130,23 @@\n \n \n

    ◆ initialize_numbers()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    number MeshWorker::LocalResults< number >::quadrature_value (const unsigned int const unsigned int k,
    const unsigned int const unsigned int i 
    ) const
    \n \n \n \n@@ -1162,23 +1162,23 @@\n \n \n

    ◆ initialize_vectors()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void MeshWorker::LocalResults< number >::initialize_numbers (const unsigned int const unsigned int n)
    \n
    \n inlineinherited
    \n \n \n \n@@ -1194,23 +1194,23 @@\n \n \n

    ◆ initialize_matrices() [1/3]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void MeshWorker::LocalResults< number >::initialize_vectors (const unsigned int const unsigned int n)
    \n
    \n inlineinherited
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1236,25 +1236,25 @@\n \n \n

    ◆ initialize_matrices() [2/3]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n-template<typename MatrixType >
    \n+template<typename MatrixType >
    \n
    void MeshWorker::LocalResults< number >::initialize_matrices (const unsigned int const unsigned int n,
    bool both 
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1280,25 +1280,25 @@\n \n \n

    ◆ initialize_matrices() [3/3]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n-template<typename MatrixType >
    \n+template<typename MatrixType >
    \n
    void MeshWorker::LocalResults< number >::initialize_matrices (const MatrixBlockVector< MatrixType > & const MatrixBlockVector< MatrixType > & matrices,
    bool both 
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1324,29 +1324,29 @@\n \n \n

    ◆ initialize_quadrature()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    void MeshWorker::LocalResults< number >::initialize_matrices (const MGMatrixBlockVector< MatrixType > & const MGMatrixBlockVector< MatrixType > & matrices,
    bool both 
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1365,23 +1365,23 @@\n \n \n

    ◆ reinit() [4/4]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    void MeshWorker::LocalResults< number >::initialize_quadrature (const unsigned int const unsigned int np,
    const unsigned int const unsigned int nv 
    )
    \n \n \n \n@@ -1396,25 +1396,25 @@\n \n \n

    ◆ print_debug()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n-template<typename StreamType >
    \n+template<typename StreamType >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void MeshWorker::LocalResults< number >::reinit (const BlockIndicesconst BlockIndiceslocal_sizes)
    \n
    \n inherited
    \n \n \n \n@@ -1428,15 +1428,15 @@\n \n \n

    ◆ memory_consumption()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void MeshWorker::LocalResults< number >::print_debug (StreamTypeStreamType & os) const
    \n
    \n inherited
    \n \n
    \n \n \n \n \n@@ -1459,21 +1459,21 @@\n

    Friends And Related Symbol Documentation

    \n \n

    ◆ DoFInfoBox< dim, DoFInfo< dim, spacedim, number > >

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n
    std::size_t MeshWorker::LocalResults< number >::memory_consumption (
    \n \n \n \n \n
    \n \n \n- \n+ \n \n
    friend class DoFInfoBox< dim, DoFInfo< dim, spacedim, number > >friend class DoFInfoBox< dim, DoFInfo< dim, spacedim, number > >
    \n
    \n friend
    \n@@ -1486,15 +1486,15 @@\n

    Member Data Documentation

    \n \n

    ◆ cell

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n \n \n
    Triangulation<dim,spacedim>::cell_iterator MeshWorker::DoFInfo< dim, spacedim, number >::cell
    \n
    \n \n@@ -1506,15 +1506,15 @@\n
    \n \n

    ◆ face

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n \n \n
    Triangulation<dim,spacedim>::face_iterator MeshWorker::DoFInfo< dim, spacedim, number >::face
    \n
    \n \n@@ -1526,15 +1526,15 @@\n
    \n \n

    ◆ face_number

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n \n \n
    unsigned int MeshWorker::DoFInfo< dim, spacedim, number >::face_number
    \n
    \n

    The number of the current face on the current cell.

    \n@@ -1546,15 +1546,15 @@\n
    \n \n

    ◆ sub_number

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n \n \n
    unsigned int MeshWorker::DoFInfo< dim, spacedim, number >::sub_number
    \n
    \n

    The number of the current subface on the current face

    \n@@ -1566,15 +1566,15 @@\n
    \n \n

    ◆ indices

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n \n \n
    std::vector<types::global_dof_index> MeshWorker::DoFInfo< dim, spacedim, number >::indices
    \n
    \n

    The DoF indices of the current cell

    \n@@ -1585,15 +1585,15 @@\n
    \n \n

    ◆ indices_by_block

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n \n \n
    std::vector<std::vector<types::global_dof_index> > MeshWorker::DoFInfo< dim, spacedim, number >::indices_by_block
    \n
    \n

    The DoF indices on the current cell, organized by local blocks. The size of this vector is zero, unless local blocks are used.

    \n@@ -1604,18 +1604,18 @@\n
    \n \n

    ◆ block_info

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n- \n+ \n \n
    SmartPointer<const BlockInfo, DoFInfo<dim, spacedim> > MeshWorker::DoFInfo< dim, spacedim, number >::block_infoSmartPointer<const BlockInfo, DoFInfo<dim, spacedim> > MeshWorker::DoFInfo< dim, spacedim, number >::block_info
    \n
    \n \n

    The block structure of the system.

    \n \n

    Definition at line 171 of file dof_info.h.

    \n@@ -1624,15 +1624,15 @@\n
    \n \n

    ◆ level_cell

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n \n \n
    bool MeshWorker::DoFInfo< dim, spacedim, number >::level_cell
    \n
    \n

    The structure refers to a cell with level data instead of active data.

    \n@@ -1643,15 +1643,15 @@\n
    \n \n

    ◆ indices_org

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n \n \n
    \n \n \n \n \n@@ -1671,15 +1671,15 @@\n \n \n

    ◆ aux_local_indices

    \n \n
    \n
    \n
    \n-template<int dim, int spacedim = dim, typename number = double>
    \n+template<int dim, int spacedim = dim, typename number = double>
    \n
    std::vector<types::global_dof_index> MeshWorker::DoFInfo< dim, spacedim, number >::indices_org
    \n \n
    \n \n \n \n \n@@ -1698,15 +1698,15 @@\n \n \n

    ◆ J

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    BlockIndices MeshWorker::DoFInfo< dim, spacedim, number >::aux_local_indices
    \n \n
    \n \n \n \n \n@@ -1725,15 +1725,15 @@\n \n \n

    ◆ R

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    std::vector<number> MeshWorker::LocalResults< number >::J
    \n \n
    \n \n \n \n \n@@ -1752,15 +1752,15 @@\n \n \n

    ◆ M1

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    std::vector<BlockVector<number> > MeshWorker::LocalResults< number >::R
    \n \n
    \n \n \n \n \n@@ -1779,15 +1779,15 @@\n \n \n

    ◆ M2

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    std::vector<MatrixBlock<FullMatrix<number> > > MeshWorker::LocalResults< number >::M1
    \n \n
    \n \n \n \n \n@@ -1807,15 +1807,15 @@\n \n \n

    ◆ quadrature_data

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    std::vector<MatrixBlock<FullMatrix<number> > > MeshWorker::LocalResults< number >::M2
    \n \n
    \n \n \n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -13,104 +13,104 @@\n MeshWorker::DoFInfo< dim, spacedim, number > Class Template Reference\n _\bI_\bn_\bt_\be_\bg_\br_\ba_\bt_\bo_\br_\bs \u00bb _\bT_\bh_\be_\b _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b _\bi_\bn_\bt_\be_\br_\bf_\ba_\bc_\be\n #include <_\bd_\be_\ba_\bl_\b._\bI_\bI_\b/_\bm_\be_\bs_\bh_\bw_\bo_\br_\bk_\be_\br_\b/_\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh>\n Inheritance diagram for MeshWorker::DoFInfo< dim, spacedim, number >:\n [Inheritance graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n- \u00a0 _\bD_\bo_\bF_\bI_\bn_\bf_\bo (_\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bf_\bo &_\bb_\bl_\bo_\bc_\bk_\b__\bi_\bn_\bf_\bo)\n+ \u00a0 _\bD_\bo_\bF_\bI_\bn_\bf_\bo (const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bf_\bo &_\bb_\bl_\bo_\bc_\bk_\b__\bi_\bn_\bf_\bo)\n \u00a0\n- \u00a0 _\bD_\bo_\bF_\bI_\bn_\bf_\bo (_\bc_\bo_\bn_\bs_\bt _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br< dim,\n+ \u00a0 _\bD_\bo_\bF_\bI_\bn_\bf_\bo (const _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br< dim,\n spacedim > &dof_handler)\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &c)\n+template\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const DHCellIterator &c)\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br , _\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &c, _\bc_\bo_\bn_\bs_\bt\n- _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &f, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n- _\bf_\ba_\bc_\be_\b__\bn_\bo)\n+template\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const DHCellIterator &c, const\n+ DHFaceIterator &f, const unsigned _\bi_\bn_\bt\n+ face_no)\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br , _\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &c, _\bc_\bo_\bn_\bs_\bt\n- _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &f, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n- _\bf_\ba_\bc_\be_\b__\bn_\bo, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt _\bs_\bu_\bb_\bf_\ba_\bc_\be_\b__\bn_\bo)\n+template\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const DHCellIterator &c, const\n+ DHFaceIterator &f, const unsigned _\bi_\bn_\bt\n+ face_no, const unsigned _\bi_\bn_\bt subface_no)\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n- void\u00a0 _\bs_\be_\bt_\b__\bf_\ba_\bc_\be (_\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &f,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt _\bf_\ba_\bc_\be_\b__\bn_\bo)\n+template\n+ void\u00a0 _\bs_\be_\bt_\b__\bf_\ba_\bc_\be (const DHFaceIterator &f,\n+ const unsigned _\bi_\bn_\bt face_no)\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n- void\u00a0 _\bs_\be_\bt_\b__\bs_\bu_\bb_\bf_\ba_\bc_\be (_\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &f,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt _\bf_\ba_\bc_\be_\b__\bn_\bo, _\bc_\bo_\bn_\bs_\bt\n- unsigned _\bi_\bn_\bt _\bs_\bu_\bb_\bf_\ba_\bc_\be_\b__\bn_\bo)\n+template\n+ void\u00a0 _\bs_\be_\bt_\b__\bs_\bu_\bb_\bf_\ba_\bc_\be (const DHFaceIterator &f,\n+ const unsigned _\bi_\bn_\bt face_no, const\n+ unsigned _\bi_\bn_\bt subface_no)\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs &\u00a0 _\bl_\bo_\bc_\ba_\bl_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs () _\bc_\bo_\bn_\bs_\bt\n+ const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs &\u00a0 _\bl_\bo_\bc_\ba_\bl_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs () const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bv_\ba_\bl_\bu_\be_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bv_\ba_\bl_\bu_\be_\bs () const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bv_\be_\bc_\bt_\bo_\br_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bv_\be_\bc_\bt_\bo_\br_\bs () const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs () const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bp_\bo_\bi_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bp_\bo_\bi_\bn_\bt_\bs () const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs () const\n \u00a0\n- number &\u00a0 _\bv_\ba_\bl_\bu_\be (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i)\n+ number &\u00a0 _\bv_\ba_\bl_\bu_\be (const unsigned _\bi_\bn_\bt i)\n \u00a0\n- number\u00a0 _\bv_\ba_\bl_\bu_\be (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i) _\bc_\bo_\bn_\bs_\bt\n+ number\u00a0 _\bv_\ba_\bl_\bu_\be (const unsigned _\bi_\bn_\bt i) const\n \u00a0\n _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< number > &\u00a0 _\bv_\be_\bc_\bt_\bo_\br (const unsigned _\bi_\bn_\bt i)\n \u00a0\n const _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< number > &\u00a0 _\bv_\be_\bc_\bt_\bo_\br (const unsigned _\bi_\bn_\bt i) const\n \u00a0\n- _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > > &\u00a0 _\bm_\ba_\bt_\br_\bi_\bx (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i, _\bc_\bo_\bn_\bs_\bt\n- _\bb_\bo_\bo_\bl _\be_\bx_\bt_\be_\br_\bn_\ba_\bl=_\bf_\ba_\bl_\bs_\be)\n+ _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > > &\u00a0 _\bm_\ba_\bt_\br_\bi_\bx (const unsigned _\bi_\bn_\bt i, const\n+ _\bb_\bo_\bo_\bl external=false)\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > _\bm_\ba_\bt_\br_\bi_\bx (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i, _\bc_\bo_\bn_\bs_\bt\n- > &\u00a0 _\bb_\bo_\bo_\bl _\be_\bx_\bt_\be_\br_\bn_\ba_\bl=_\bf_\ba_\bl_\bs_\be) _\bc_\bo_\bn_\bs_\bt\n+const _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > _\bm_\ba_\bt_\br_\bi_\bx (const unsigned _\bi_\bn_\bt i, const\n+ > &\u00a0 _\bb_\bo_\bo_\bl external=false) const\n \u00a0\n _\bT_\ba_\bb_\bl_\be< 2, number > &\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs ()\n \u00a0\n- number &\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt _\bk,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i)\n+ number &\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be (const unsigned _\bi_\bn_\bt k,\n+ const unsigned _\bi_\bn_\bt i)\n \u00a0\n- number\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt _\bk,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i) _\bc_\bo_\bn_\bs_\bt\n+ number\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be (const unsigned _\bi_\bn_\bt k,\n+ const unsigned _\bi_\bn_\bt i) const\n \u00a0\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bn_\bu_\bm_\bb_\be_\br_\bs (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bn_\bu_\bm_\bb_\be_\br_\bs (const unsigned _\bi_\bn_\bt\n n)\n \u00a0\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bv_\be_\bc_\bt_\bo_\br_\bs (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bv_\be_\bc_\bt_\bo_\br_\bs (const unsigned _\bi_\bn_\bt\n n)\n \u00a0\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (const unsigned _\bi_\bn_\bt\n n, _\bb_\bo_\bo_\bl both)\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be MatrixType >\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (_\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (const\n _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< MatrixType >\n &matrices, _\bb_\bo_\bo_\bl both)\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be MatrixType >\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (_\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (const\n _\bM_\bG_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< MatrixType >\n &matrices, _\bb_\bo_\bo_\bl both)\n \u00a0\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be (_\bc_\bo_\bn_\bs_\bt unsigned\n- _\bi_\bn_\bt _\bn_\bp, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt _\bn_\bv)\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be (const unsigned\n+ _\bi_\bn_\bt np, const unsigned _\bi_\bn_\bt nv)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs\n- &_\bl_\bo_\bc_\ba_\bl_\b__\bs_\bi_\bz_\be_\bs)\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs\n+ &local_sizes)\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n- void\u00a0 _\bp_\br_\bi_\bn_\bt_\b__\bd_\be_\bb_\bu_\bg (_\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be &os) _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bp_\br_\bi_\bn_\bt_\b__\bd_\be_\bb_\bu_\bg (StreamType &os) const\n \u00a0\n- std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () _\bc_\bo_\bn_\bs_\bt\n+ std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () const\n \u00a0\n P\bPu\bub\bbl\bli\bic\bc A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n _\bT_\br_\bi_\ba_\bn_\bg_\bu_\bl_\ba_\bt_\bi_\bo_\bn< dim, spacedim >::\n cell_iterator\u00a0 _\bc_\be_\bl_\bl\n \u00a0 The current cell.\n \u00a0\n _\bT_\br_\bi_\ba_\bn_\bg_\bu_\bl_\ba_\bt_\bi_\bo_\bn< dim, spacedim >::\n@@ -122,28 +122,28 @@\n unsigned _\bi_\bn_\bt\u00a0 _\bs_\bu_\bb_\b__\bn_\bu_\bm_\bb_\be_\br\n \u00a0\n std::vector< _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx >\u00a0 _\bi_\bn_\bd_\bi_\bc_\be_\bs\n \u00a0\n std::vector< std::vector< _\bt_\by_\bp_\be_\bs_\b:_\b:\n _\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx > >\u00a0 _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\by_\b__\bb_\bl_\bo_\bc_\bk\n \u00a0\n-_\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br< _\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bf_\bo, _\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim,\n+_\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br< const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bf_\bo, _\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim,\n spacedim > >\u00a0 _\bb_\bl_\bo_\bc_\bk_\b__\bi_\bn_\bf_\bo\n \u00a0 The block structure of the system.\n \u00a0\n _\bb_\bo_\bo_\bl\u00a0 _\bl_\be_\bv_\be_\bl_\b__\bc_\be_\bl_\bl\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n \u00a0 _\bD_\bo_\bF_\bI_\bn_\bf_\bo ()\n \u00a0\n void\u00a0 _\bs_\be_\bt_\b__\bb_\bl_\bo_\bc_\bk_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs ()\n \u00a0 Set up local block indices.\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n-void\u00a0 _\bg_\be_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs (_\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &c)\n+template\n+void\u00a0 _\bg_\be_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs (const DHCellIterator &c)\n \u00a0 Fill index vector with active indices.\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n std::vector< _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx >\u00a0 _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bo_\br_\bg\n \u00a0 Auxiliary vector.\n \u00a0\n _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs\u00a0 _\ba_\bu_\bx_\b__\bl_\bo_\bc_\ba_\bl_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs\n@@ -155,18 +155,18 @@\n std::vector< _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > > >\u00a0 _\bM_\b1\n \u00a0\n std::vector< _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > > >\u00a0 _\bM_\b2\n \u00a0\n _\bT_\ba_\bb_\bl_\be< 2, number >\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bd_\ba_\bt_\ba\n \u00a0\n F\bFr\bri\bie\ben\bnd\bds\bs\n-_\bc_\bl_\ba_\bs_\bs\u00a0 _\bD_\bo_\bF_\bI_\bn_\bf_\bo_\bB_\bo_\bx_\b<_\b _\bd_\bi_\bm_\b,_\b _\bD_\bo_\bF_\bI_\bn_\bf_\bo_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b,_\b _\bn_\bu_\bm_\bb_\be_\br_\b _\b>_\b _\b>\n+class\u00a0 _\bD_\bo_\bF_\bI_\bn_\bf_\bo_\bB_\bo_\bx_\b<_\b _\bd_\bi_\bm_\b,_\b _\bD_\bo_\bF_\bI_\bn_\bf_\bo_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b,_\b _\bn_\bu_\bm_\bb_\be_\br_\b _\b>_\b _\b>\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n class MeshWorker::DoFInfo< dim, spacedim, number >\n A class containing information on geometry and degrees of freedom of a mesh\n object.\n The information in these objects is usually used by one of the _\bA_\bs_\bs_\be_\bm_\bb_\bl_\be_\br\n classes. It is also the kind of information which is needed in mesh based\n matrices (often referred to as matrix free methods).\n In addition to the information on degrees of freedom stored in this class, it\n@@ -185,142 +185,142 @@\n comes the second block and so on.\n The _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bf_\bo object is stored as a pointer. Therefore, if the block structure\n changes, for instance because of mesh refinement, the _\bD_\bo_\bF_\bI_\bn_\bf_\bo class will\n automatically use the new structures.\n Definition at line _\b7_\b4 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* C\bCo\bon\bns\bst\btr\bru\buc\bct\bto\bor\br &\b& D\bDe\bes\bst\btr\bru\buc\bct\bto\bor\br D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0D\bDo\boF\bFI\bIn\bnf\bfo\bo(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n-_\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number ( _\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bf_\bo &\u00a0 b\bbl\blo\boc\bck\bk_\b_i\bin\bnf\bfo\bo )\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n+_\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number ( const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bf_\bo &\u00a0 b\bbl\blo\boc\bck\bk_\b_i\bin\bnf\bfo\bo )\n >::DoFInfo\n Constructor setting the _\bb_\bl_\bo_\bc_\bk_\b__\bi_\bn_\bf_\bo pointer.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0D\bDo\boF\bFI\bIn\bnf\bfo\bo(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-_\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( _\bc_\bo_\bn_\bs_\bt _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br< dim, spacedim > d\bdo\bof\bf_\b_h\bha\ban\bnd\bdl\ble\ber\br )\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, typename number >\n+_\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( const _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br< dim, spacedim > d\bdo\bof\bf_\b_h\bha\ban\bnd\bdl\ble\ber\br )\n spacedim, number >::DoFInfo &\u00a0\n Constructor leaving the _\bb_\bl_\bo_\bc_\bk_\b__\bi_\bn_\bf_\bo pointer empty, but setting the\n _\ba_\bu_\bx_\b__\bl_\bo_\bc_\ba_\bl_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs.\n Definition at line _\b2_\b9_\b9 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0D\bDo\boF\bFI\bIn\bnf\bfo\bo(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, typename number >\n _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number >:: ( ) private\n DoFInfo\n Standard constructor, not setting any block indices. Use of this constructor is\n not recommended, but it is needed for the arrays in _\bD_\bo_\bF_\bI_\bn_\bf_\bo_\bB_\bo_\bx.\n Definition at line _\b2_\b9_\b0 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bn D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[1\b1/\b/4\b4]\b] *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( _\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 c\bc ) inline\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, typename number >\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( const DHCellIterator &\u00a0 c\bc ) inline\n spacedim, number >::reinit\n Set the current cell and fill indices.\n Definition at line _\b3_\b3_\b1 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[2\b2/\b/4\b4]\b] *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br , _\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( _\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 c\bc,\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, typename number >\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( const DHCellIterator &\u00a0 c\bc,\n spacedim, number >::reinit\n- _\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 f\bf, inline\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 f\bfa\bac\bce\be_\b_n\bno\bo\u00a0\n+ const DHFaceIterator &\u00a0 f\bf, inline\n+ const unsigned _\bi_\bn_\bt\u00a0 f\bfa\bac\bce\be_\b_n\bno\bo\u00a0\n )\n Set the current face and fill indices if the _\bc_\be_\bl_\bl changed.\n Definition at line _\b3_\b6_\b1 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[3\b3/\b/4\b4]\b] *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br , _\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( _\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 c\bc,\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, typename number >\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( const DHCellIterator &\u00a0 c\bc,\n spacedim, number >::reinit\n- _\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 f\bf, inline\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 f\bfa\bac\bce\be_\b_n\bno\bo,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 s\bsu\bub\bbf\bfa\bac\bce\be_\b_n\bno\bo\u00a0\n+ const DHFaceIterator &\u00a0 f\bf, inline\n+ const unsigned _\bi_\bn_\bt\u00a0 f\bfa\bac\bce\be_\b_n\bno\bo,\n+ const unsigned _\bi_\bn_\bt\u00a0 s\bsu\bub\bbf\bfa\bac\bce\be_\b_n\bno\bo\u00a0\n )\n Set the current subface and fill indices if the _\bc_\be_\bl_\bl changed.\n Definition at line _\b3_\b9_\b6 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\bet\bt_\b_f\bfa\bac\bce\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( _\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 f\bf,\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, typename number >\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( const DHFaceIterator &\u00a0 f\bf,\n spacedim, number >::set_face inline\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 f\bfa\bac\bce\be_\b_n\bno\bo\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 f\bfa\bac\bce\be_\b_n\bno\bo\u00a0\n )\n Switch to a new face of the same cell. Does not change indices and does not\n reset data in _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs.\n Definition at line _\b3_\b4_\b9 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\bet\bt_\b_s\bsu\bub\bbf\bfa\bac\bce\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( _\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 f\bf,\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, typename number >\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, ( const DHFaceIterator &\u00a0 f\bf,\n spacedim, number >::set_subface\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 f\bfa\bac\bce\be_\b_n\bno\bo, inline\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 s\bsu\bub\bbf\bfa\bac\bce\be_\b_n\bno\bo\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 f\bfa\bac\bce\be_\b_n\bno\bo, inline\n+ const unsigned _\bi_\bn_\bt\u00a0 s\bsu\bub\bbf\bfa\bac\bce\be_\b_n\bno\bo\u00a0\n )\n Switch to a new subface of the same cell. Does not change indices and does not\n reset data in _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs.\n Definition at line _\b3_\b8_\b3 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blo\boc\bca\bal\bl_\b_i\bin\bnd\bdi\bic\bce\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-_\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, ( ) const inline\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, typename number >\n+const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, ( ) const inline\n number >::local_indices\n Definition at line _\b4_\b1_\b9 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\bet\bt_\b_b\bbl\blo\boc\bck\bk_\b_i\bin\bnd\bdi\bic\bce\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number ( ) private\n >::set_block_indices\n Set up local block indices.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0g\bge\bet\bt_\b_i\bin\bnd\bdi\bic\bce\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bc_\bl_\ba_\bs_\bs _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim, typename number >\n+template\n void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim,\n-spacedim, number >:: ( _\bc_\bo_\bn_\bs_\bt _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 c\bc ) inlineprivate\n+spacedim, number >:: ( const DHCellIterator &\u00a0 c\bc ) inlineprivate\n get_indices\n Fill index vector with active indices.\n Definition at line _\b3_\b1_\b4 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_v\bva\bal\blu\bue\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( ) const inlineinherited\n n_values\n The number of scalar values stored by the current object.\n This number is set to a nonzero value by _\bA_\bs_\bs_\be_\bm_\bb_\bl_\be_\br_\b:_\b:_\bC_\be_\bl_\bl_\bs_\bA_\bn_\bd_\bF_\ba_\bc_\be_\bs\n Definition at line _\b3_\b9_\b1 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_v\bve\bec\bct\bto\bor\brs\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( ) const inlineinherited\n n_vectors\n The number of vectors stored by the current object.\n This number is set to a nonzero value by _\bA_\bs_\bs_\be_\bm_\bb_\bl_\be_\br_\b:_\b:_\bR_\be_\bs_\bi_\bd_\bu_\ba_\bl_\bS_\bi_\bm_\bp_\bl_\be and\n _\bA_\bs_\bs_\be_\bm_\bb_\bl_\be_\br_\b:_\b:_\bR_\be_\bs_\bi_\bd_\bu_\ba_\bl_\bL_\bo_\bc_\ba_\bl_\bB_\bl_\bo_\bc_\bk_\bs_\bT_\bo_\bG_\bl_\bo_\bb_\ba_\bl_\bB_\bl_\bo_\bc_\bk_\bs.\n Definition at line _\b3_\b9_\b9 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_m\bma\bat\btr\bri\bic\bce\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( ) const inlineinherited\n n_matrices\n The number of matrices stored by the current object.\n Definition at line _\b4_\b0_\b7 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_p\bpo\boi\bin\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( ) const inlineinherited\n n_quadrature_points\n The number of quadrature points in _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs_\b(_\b).\n Definition at line _\b4_\b1_\b5 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_v\bva\bal\blu\bue\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( ) const inlineinherited\n n_quadrature_values\n The number of values in each quadrature point in _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs_\b(_\b).\n Definition at line _\b4_\b2_\b3 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\blu\bue\be(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-number & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi ) inlineinherited\n+template\n+number & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: ( const unsigned _\bi_\bn_\bt\u00a0 i\bi ) inlineinherited\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::value\n Read-write access to the ith scalar stored by this class.\n Definition at line _\b4_\b3_\b1 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\blu\bue\be(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-number _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi ) const inlineinherited\n+template\n+number _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: ( const unsigned _\bi_\bn_\bt\u00a0 i\bi ) const inlineinherited\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::value\n Read access to the ith scalar stored by this class.\n Definition at line _\b4_\b8_\b0 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bve\bec\bct\bto\bor\br(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n template\n _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< number > &\n _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( const unsigned _\bi_\bn_\bt\u00a0 i\bi ) inlineinherited\n@@ -331,245 +331,245 @@\n template\n const _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< number > &\n _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( const unsigned _\bi_\bn_\bt\u00a0 i\bi ) const inlineinherited\n number >::vector\n Read-write access to the ith vector stored by this class\n Definition at line _\b4_\b8_\b9 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bat\btr\bri\bix\bx(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk<\n _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > >\n-& _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi,\n+& _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: ( const unsigned _\bi_\bn_\bt\u00a0 i\bi,\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number inlineinherited\n >::matrix\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 e\bex\bxt\bte\ber\brn\bna\bal\bl = _\bf_\ba_\bl_\bs_\be\u00a0\n+ const _\bb_\bo_\bo_\bl\u00a0 e\bex\bxt\bte\ber\brn\bna\bal\bl = false\u00a0\n )\n Read-write access to the ith matrix stored by this class.\n For an explanation of the second argument, see the documentation of the current\n class itself.\n Definition at line _\b4_\b4_\b9 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bat\btr\bri\bix\bx(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-_\bc_\bo_\bn_\bs_\bt _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk<\n+template\n+const _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk<\n _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > >\n-& _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi,\n+& _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: ( const unsigned _\bi_\bn_\bt\u00a0 i\bi,\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number inlineinherited\n >::matrix\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 e\bex\bxt\bte\ber\brn\bna\bal\bl = _\bf_\ba_\bl_\bs_\be\u00a0\n+ const _\bb_\bo_\bo_\bl\u00a0 e\bex\bxt\bte\ber\brn\bna\bal\bl = false\u00a0\n ) const\n Read access to the ith matrix stored by this class.\n For an explanation of the second argument, see the documentation of the current\n class itself.\n Definition at line _\b4_\b9_\b8 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_v\bva\bal\blu\bue\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n _\bT_\ba_\bb_\bl_\be< 2, number > & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( ) inlineinherited\n >::quadrature_values\n Access to the vector _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bd_\ba_\bt_\ba of data in quadrature points, organized\n such that there is a vector for each point, containing one entry for each\n component.\n Definition at line _\b4_\b7_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_v\bva\bal\blu\bue\be(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-number & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 k\bk,\n+template\n+number & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( const unsigned _\bi_\bn_\bt\u00a0 k\bk,\n number >::quadrature_value inlineinherited\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 i\bi\u00a0\n )\n Access the i\bith value at quadrature point k\bk\n Definition at line _\b4_\b6_\b3 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_v\bva\bal\blu\bue\be(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-number _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 k\bk,\n+template\n+number _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( const unsigned _\bi_\bn_\bt\u00a0 k\bk,\n number >::quadrature_value inlineinherited\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 i\bi\u00a0\n ) const\n Read the i\bith value at quadrature point k\bk\n Definition at line _\b5_\b1_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_n\bnu\bum\bmb\bbe\ber\brs\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 n\bn ) inlineinherited\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( const unsigned _\bi_\bn_\bt\u00a0 n\bn ) inlineinherited\n number >::initialize_numbers\n Initialize the vector with scalar values.\n Note\n This function is usually only called by the assembler.\n Definition at line _\b2_\b9_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_v\bve\bec\bct\bto\bor\brs\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 n\bn ) inlineinherited\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( const unsigned _\bi_\bn_\bt\u00a0 n\bn ) inlineinherited\n number >::initialize_vectors\n Initialize the vector with vector values.\n Note\n This function is usually only called by the assembler.\n Definition at line _\b3_\b0_\b0 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_m\bma\bat\btr\bri\bic\bce\bes\bs(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 n\bn,\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( const unsigned _\bi_\bn_\bt\u00a0 n\bn,\n number >::initialize_matrices inlineinherited\n _\bb_\bo_\bo_\bl\u00a0 b\bbo\bot\bth\bh\u00a0\n )\n Allocate n local matrices. Additionally, set their block row and column\n coordinates to zero. The matrices themselves are resized by _\br_\be_\bi_\bn_\bi_\bt_\b(_\b).\n Note\n This function is usually only called by the assembler.\n Definition at line _\b3_\b6_\b1 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_m\bma\bat\btr\bri\bic\bce\bes\bs(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be MatrixType >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: _\bc_\bo_\bn_\bs_\bt _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br<\n+template\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: const _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br<\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( MatrixType > &\u00a0 m\bma\bat\btr\bri\bic\bce\bes\bs,\n initialize_matrices inlineinherited\n _\bb_\bo_\bo_\bl\u00a0 b\bbo\bot\bth\bh\u00a0\n )\n Allocate a local matrix for each of the global ones in matrices. Additionally,\n set their block row and column coordinates. The matrices themselves are resized\n by _\br_\be_\bi_\bn_\bi_\bt_\b(_\b).\n Note\n This function is usually only called by the assembler.\n Definition at line _\b3_\b0_\b9 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_m\bma\bat\btr\bri\bic\bce\bes\bs(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be MatrixType >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: _\bc_\bo_\bn_\bs_\bt _\bM_\bG_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br<\n+template\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: const _\bM_\bG_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br<\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( MatrixType > &\u00a0 m\bma\bat\btr\bri\bic\bce\bes\bs,\n initialize_matrices inlineinherited\n _\bb_\bo_\bo_\bl\u00a0 b\bbo\bot\bth\bh\u00a0\n )\n Allocate a local matrix for each of the global level objects in matrices.\n Additionally, set their block row and column coordinates. The matrices\n themselves are resized by _\br_\be_\bi_\bn_\bi_\bt_\b(_\b).\n Note\n This function is usually only called by the assembler.\n Definition at line _\b3_\b3_\b5 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 n\bnp\bp,\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( const unsigned _\bi_\bn_\bt\u00a0 n\bnp\bp,\n >::initialize_quadrature inlineinherited\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 n\bnv\bv\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 n\bnv\bv\u00a0\n )\n Initialize quadrature values to nv values in np quadrature points.\n Definition at line _\b3_\b8_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[4\b4/\b/4\b4]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:\n-_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( _\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs &\u00a0 l\blo\boc\bca\bal\bl_\b_s\bsi\biz\bze\bes\bs ) inherited\n+_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs &\u00a0 l\blo\boc\bca\bal\bl_\b_s\bsi\biz\bze\bes\bs ) inherited\n reinit\n Reinitialize matrices for new cell. Does not resize any of the data vectors\n stored in this object, but resizes the vectors in _\bR and the matrices in _\bM_\b1 and\n _\bM_\b2 for hp and sets them to zero.\n Definition at line _\b2_\b7 of file _\bm_\be_\bs_\bh_\b__\bw_\bo_\br_\bk_\be_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0p\bpr\bri\bin\bnt\bt_\b_d\bde\beb\bbu\bug\bg(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be &\u00a0 o\bos\bs ) const inherited\n+template\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( StreamType &\u00a0 o\bos\bs ) const inherited\n print_debug\n Definition at line _\b5_\b2_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bme\bem\bmo\bor\bry\by_\b_c\bco\bon\bns\bsu\bum\bmp\bpt\bti\bio\bon\bn(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n std::size_t _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( ) const inherited\n memory_consumption\n The memory used by this object.\n Definition at line _\b4_\b5 of file _\bm_\be_\bs_\bh_\b__\bw_\bo_\br_\bk_\be_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* F\bFr\bri\bie\ben\bnd\bds\bs A\bAn\bnd\bd R\bRe\bel\bla\bat\bte\bed\bd S\bSy\bym\bmb\bbo\bol\bl D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0D\bDo\boF\bFI\bIn\bnf\bfo\boB\bBo\box\bx<\b< d\bdi\bim\bm,\b, D\bDo\boF\bFI\bIn\bnf\bfo\bo<\b< d\bdi\bim\bm,\b, s\bsp\bpa\bac\bce\bed\bdi\bim\bm,\b, n\bnu\bum\bmb\bbe\ber\br >\b> >\b> *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n-_\bf_\br_\bi_\be_\bn_\bd _\bc_\bl_\ba_\bs_\bs _\bD_\bo_\bF_\bI_\bn_\bf_\bo_\bB_\bo_\bx< dim, _\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number > > friend\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n+friend class _\bD_\bo_\bF_\bI_\bn_\bf_\bo_\bB_\bo_\bx< dim, _\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number > > friend\n Definition at line _\b2_\b0_\b3 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br D\bDa\bat\bta\ba D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bce\bel\bll\bl *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n _\bT_\br_\bi_\ba_\bn_\bg_\bu_\bl_\ba_\bt_\bi_\bo_\bn::cell_iterator _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim,\n number >::cell\n The current cell.\n Definition at line _\b7_\b8 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0f\bfa\bac\bce\be *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n _\bT_\br_\bi_\ba_\bn_\bg_\bu_\bl_\ba_\bt_\bi_\bo_\bn::face_iterator _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim,\n number >::face\n The current face.\n Definition at line _\b8_\b1 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0f\bfa\bac\bce\be_\b_n\bnu\bum\bmb\bbe\ber\br *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number >::face_number\n The number of the current face on the current cell.\n This number is _\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bi_\bn_\bv_\ba_\bl_\bi_\bd_\b__\bu_\bn_\bs_\bi_\bg_\bn_\be_\bd_\b__\bi_\bn_\bt if the info object was initialized\n with a cell.\n Definition at line _\b8_\b9 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsu\bub\bb_\b_n\bnu\bum\bmb\bbe\ber\br *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number >::sub_number\n The number of the current subface on the current face\n This number is _\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bi_\bn_\bv_\ba_\bl_\bi_\bd_\b__\bu_\bn_\bs_\bi_\bg_\bn_\be_\bd_\b__\bi_\bn_\bt if the info object was not\n initialized with a subface.\n Definition at line _\b9_\b7 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bnd\bdi\bic\bce\bes\bs *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n std::vector<_\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx> _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number\n >::indices\n The DoF indices of the current cell\n Definition at line _\b1_\b0_\b3 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bnd\bdi\bic\bce\bes\bs_\b_b\bby\by_\b_b\bbl\blo\boc\bck\bk *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n std::vector > _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim,\n spacedim, number >::indices_by_block\n The DoF indices on the current cell, organized by local blocks. The size of\n this vector is zero, unless local blocks are used.\n Definition at line _\b1_\b0_\b9 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0b\bbl\blo\boc\bck\bk_\b_i\bin\bnf\bfo\bo *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n-_\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br<_\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bf_\bo, _\bD_\bo_\bF_\bI_\bn_\bf_\bo > _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo<\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n+_\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br > _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo<\n dim, spacedim, number >::block_info\n The block structure of the system.\n Definition at line _\b1_\b7_\b1 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\ble\bev\bve\bel\bl_\b_c\bce\bel\bll\bl *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n _\bb_\bo_\bo_\bl _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number >::level_cell\n The structure refers to a cell with level data instead of active data.\n Definition at line _\b1_\b7_\b6 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bnd\bdi\bic\bce\bes\bs_\b_o\bor\brg\bg *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n std::vector<_\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx> _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, private\n spacedim, number >::indices_org\n Auxiliary vector.\n Definition at line _\b1_\b9_\b6 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bau\bux\bx_\b_l\blo\boc\bca\bal\bl_\b_i\bin\bnd\bdi\bic\bce\bes\bs *\b**\b**\b**\b**\b*\n-template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, _\bt_\by_\bp_\be_\bn_\ba_\bm_\be number = double>\n+template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim = dim, typename number = double>\n _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo< dim, spacedim, number >:: private\n aux_local_indices\n An auxiliary local _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs object created if _\bb_\bl_\bo_\bc_\bk_\b__\bi_\bn_\bf_\bo is not set. It\n contains just a single block of the size of degrees of freedom per cell.\n Definition at line _\b2_\b0_\b3 of file _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0J\bJ *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n std::vector _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::J privateinherited\n The local numbers, computed on a cell or on a face.\n Definition at line _\b2_\b6_\b0 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0R\bR *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n std::vector<_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br > _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< privateinherited\n number >::R\n The local vectors. This field is public, so that local integrators can write to\n it.\n Definition at line _\b2_\b6_\b6 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0M\bM1\b1 *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n std::vector<_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk<_\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx > > _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: privateinherited\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::M1\n The local matrices coupling degrees of freedom in the cell itself or within the\n first cell on a face.\n Definition at line _\b2_\b7_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0M\bM2\b2 *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n std::vector<_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk<_\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx > > _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: privateinherited\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::M2\n The local matrices coupling test functions on the cell with trial functions on\n the other cell.\n Only used on interior faces.\n Definition at line _\b2_\b8_\b0 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_d\bda\bat\bta\ba *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n _\bT_\ba_\bb_\bl_\be<2, number> _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: privateinherited\n quadrature_data\n Values in quadrature points for writing into patch data.\n Definition at line _\b2_\b8_\b5 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n ===============================================================================\n The documentation for this class was generated from the following file:\n * include/deal.II/meshworker/_\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfoBox.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1DoFInfoBox.html", "unified_diff": "@@ -134,15 +134,15 @@\n \n \n \n
    Table<2, number> MeshWorker::LocalResults< number >::quadrature_data
     
    bool cell_valid
     
    \n

    Detailed Description

    \n
    template<int dim, class DOFINFO>
    \n class MeshWorker::DoFInfoBox< dim, DOFINFO >

    A class bundling the MeshWorker::DoFInfo objects used on a cell.

    \n-
    Todo:
    Currently, we are storing an object for the cells and two for each face. We could gather all face data pertaining to the cell itself in one object, saving a bit of memory and a few operations, but sacrificing some cleanliness.
    \n+
    Todo:
    Currently, we are storing an object for the cells and two for each face. We could gather all face data pertaining to the cell itself in one object, saving a bit of memory and a few operations, but sacrificing some cleanliness.
    \n \n

    Definition at line 220 of file dof_info.h.

    \n

    Constructor & Destructor Documentation

    \n \n

    ◆ DoFInfoBox() [1/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalResults.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMeshWorker_1_1LocalResults.html", "unified_diff": "@@ -116,62 +116,62 @@\n \"\"\n \"\"\n \n
    [legend]
    \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n \n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n

    \n Public Member Functions

    unsigned int n_values () const
    unsigned int n_values () const
     
    unsigned int n_vectors () const
    unsigned int n_vectors () const
     
    unsigned int n_matrices () const
    unsigned int n_matrices () const
     
    unsigned int n_quadrature_points () const
    unsigned int n_quadrature_points () const
     
    unsigned int n_quadrature_values () const
    unsigned int n_quadrature_values () const
     
    number & value (const unsigned int i)
    number & value (const unsigned int i)
     
    number value (const unsigned int i) const
    number value (const unsigned int i) const
     
    BlockVector< number > & vector (const unsigned int i)
     
    const BlockVector< number > & vector (const unsigned int i) const
     
    MatrixBlock< FullMatrix< number > > & matrix (const unsigned int i, const bool external=false)
    MatrixBlock< FullMatrix< number > > & matrix (const unsigned int i, const bool external=false)
     
    const MatrixBlock< FullMatrix< number > > & matrix (const unsigned int i, const bool external=false) const
    const MatrixBlock< FullMatrix< number > > & matrix (const unsigned int i, const bool external=false) const
     
    Table< 2, number > & quadrature_values ()
     
    number & quadrature_value (const unsigned int k, const unsigned int i)
    number & quadrature_value (const unsigned int k, const unsigned int i)
     
    number quadrature_value (const unsigned int k, const unsigned int i) const
    number quadrature_value (const unsigned int k, const unsigned int i) const
     
    void initialize_numbers (const unsigned int n)
    void initialize_numbers (const unsigned int n)
     
    void initialize_vectors (const unsigned int n)
    void initialize_vectors (const unsigned int n)
     
    void initialize_matrices (const unsigned int n, bool both)
    void initialize_matrices (const unsigned int n, bool both)
     
    template<typename MatrixType >
    void initialize_matrices (const MatrixBlockVector< MatrixType > &matrices, bool both)
    template<typename MatrixType >
    void initialize_matrices (const MatrixBlockVector< MatrixType > &matrices, bool both)
     
    template<typename MatrixType >
    void initialize_matrices (const MGMatrixBlockVector< MatrixType > &matrices, bool both)
    template<typename MatrixType >
    void initialize_matrices (const MGMatrixBlockVector< MatrixType > &matrices, bool both)
     
    void initialize_quadrature (const unsigned int np, const unsigned int nv)
    void initialize_quadrature (const unsigned int np, const unsigned int nv)
     
    void reinit (const BlockIndices &local_sizes)
    void reinit (const BlockIndices &local_sizes)
     
    template<typename StreamType >
    void print_debug (StreamType &os) const
    template<typename StreamType >
    void print_debug (StreamType &os) const
     
    std::size_t memory_consumption () const
    std::size_t memory_consumption () const
     
    \n \n \n \n \n@@ -180,15 +180,15 @@\n \n \n \n \n \n

    \n Private Attributes

    std::vector< number > J
     
    std::vector< BlockVector< number > > R
     
    std::vector< MatrixBlock< FullMatrix< number > > > M2
     
    Table< 2, number > quadrature_data
     
    \n

    Detailed Description

    \n-
    template<typename number>
    \n+
    template<typename number>
    \n class MeshWorker::LocalResults< number >

    The class providing the scrapbook to fill with results of local integration. Depending on the task the mesh worker loop is performing, local results can be of different types: They can be scalars, vectors of size equal to the number of degrees of freedom used in the integrals, or square matrices of that same size. All of these have in common that they are the result of local integration over a cell or face. Which kind of object is the result of an operation is determined by the Assembler using them. It is also the assembler that determines how many of each kind of object are produced (for example, an assembler may create both the local contributions to a mass and a stiffness matrix), and for setting the arrays of local results to the sizes needed.

    \n

    The interface of this class allows accessing all of this information via the following functions:

    \n
      \n
    1. \n

      Scalars: n_values() returns the number of scalars stored by an object of this class, and they are accessed via the value() function.

      \n

      \n
    2. \n@@ -205,15 +205,15 @@\n

    Member Function Documentation

    \n \n

    ◆ n_values()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n \n \n
    \n \n \n \n \n@@ -236,15 +236,15 @@\n \n \n

    ◆ n_vectors()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    unsigned int MeshWorker::LocalResults< number >::n_values (
    \n \n
    \n \n \n \n \n@@ -267,15 +267,15 @@\n \n \n

    ◆ n_matrices()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    unsigned int MeshWorker::LocalResults< number >::n_vectors (
    \n \n
    \n \n \n \n \n@@ -297,15 +297,15 @@\n \n \n

    ◆ n_quadrature_points()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    unsigned int MeshWorker::LocalResults< number >::n_matrices (
    \n \n
    \n \n \n \n \n@@ -327,15 +327,15 @@\n \n \n

    ◆ n_quadrature_values()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    unsigned int MeshWorker::LocalResults< number >::n_quadrature_points (
    \n \n
    \n \n \n \n \n@@ -357,23 +357,23 @@\n \n \n

    ◆ value() [1/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    unsigned int MeshWorker::LocalResults< number >::n_quadrature_values (
    \n \n \n \n@@ -388,23 +388,23 @@\n \n \n

    ◆ value() [2/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    number & MeshWorker::LocalResults< number >::value (const unsigned int const unsigned int i)
    \n
    \n inline
    \n \n \n \n@@ -481,30 +481,30 @@\n \n \n

    ◆ matrix() [1/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    number MeshWorker::LocalResults< number >::value (const unsigned int const unsigned int i) const
    \n
    \n inline
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    MatrixBlock< FullMatrix< number > > & MeshWorker::LocalResults< number >::matrix (const unsigned int const unsigned int i,
    const bool external = false const bool external = false 
    )
    \n@@ -523,30 +523,30 @@\n \n \n

    ◆ matrix() [2/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    const MatrixBlock< FullMatrix< number > > & MeshWorker::LocalResults< number >::matrix const MatrixBlock< FullMatrix< number > > & MeshWorker::LocalResults< number >::matrix (const unsigned int const unsigned int i,
    const bool external = false const bool external = false 
    ) const
    \n@@ -565,15 +565,15 @@\n \n \n

    ◆ quadrature_values()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n \n \n
    \n \n \n \n \n@@ -595,29 +595,29 @@\n \n \n

    ◆ quadrature_value() [1/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    Table< 2, number > & MeshWorker::LocalResults< number >::quadrature_values (
    \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -636,29 +636,29 @@\n \n \n

    ◆ quadrature_value() [2/2]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    number & MeshWorker::LocalResults< number >::quadrature_value (const unsigned int const unsigned int k,
    const unsigned int const unsigned int i 
    )
    \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -677,23 +677,23 @@\n \n \n

    ◆ initialize_numbers()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    number MeshWorker::LocalResults< number >::quadrature_value (const unsigned int const unsigned int k,
    const unsigned int const unsigned int i 
    ) const
    \n \n \n \n@@ -709,23 +709,23 @@\n \n \n

    ◆ initialize_vectors()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void MeshWorker::LocalResults< number >::initialize_numbers (const unsigned int const unsigned int n)
    \n
    \n inline
    \n \n \n \n@@ -741,23 +741,23 @@\n \n \n

    ◆ initialize_matrices() [1/3]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void MeshWorker::LocalResults< number >::initialize_vectors (const unsigned int const unsigned int n)
    \n
    \n inline
    \n \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -783,25 +783,25 @@\n \n \n

    ◆ initialize_matrices() [2/3]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n-template<typename MatrixType >
    \n+template<typename MatrixType >
    \n
    void MeshWorker::LocalResults< number >::initialize_matrices (const unsigned int const unsigned int n,
    bool both 
    \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -827,25 +827,25 @@\n \n \n

    ◆ initialize_matrices() [3/3]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n-template<typename MatrixType >
    \n+template<typename MatrixType >
    \n
    void MeshWorker::LocalResults< number >::initialize_matrices (const MatrixBlockVector< MatrixType > & const MatrixBlockVector< MatrixType > & matrices,
    bool both 
    \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -871,29 +871,29 @@\n \n \n

    ◆ initialize_quadrature()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    void MeshWorker::LocalResults< number >::initialize_matrices (const MGMatrixBlockVector< MatrixType > & const MGMatrixBlockVector< MatrixType > & matrices,
    bool both 
    \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -912,20 +912,20 @@\n \n \n

    ◆ reinit()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    void MeshWorker::LocalResults< number >::initialize_quadrature (const unsigned int const unsigned int np,
    const unsigned int const unsigned int nv 
    )
    \n \n \n \n- \n+ \n \n \n \n
    void MeshWorker::LocalResults< number >::reinit (const BlockIndicesconst BlockIndiceslocal_sizes)
    \n
    \n

    Reinitialize matrices for new cell. Does not resize any of the data vectors stored in this object, but resizes the vectors in R and the matrices in M1 and M2 for hp and sets them to zero.

    \n \n@@ -935,22 +935,22 @@\n
    \n \n

    ◆ print_debug()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    \n-template<typename StreamType >
    \n+template<typename StreamType >
    \n \n \n \n \n- \n+ \n \n \n \n
    void MeshWorker::LocalResults< number >::print_debug (StreamTypeStreamType & os) const
    \n
    \n \n

    Definition at line 522 of file local_results.h.

    \n@@ -959,15 +959,15 @@\n
    \n \n

    ◆ memory_consumption()

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n \n \n \n \n \n \n \n@@ -982,15 +982,15 @@\n

    Member Data Documentation

    \n \n

    ◆ J

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    std::size_t MeshWorker::LocalResults< number >::memory_consumption () const
    \n \n \n \n \n
    \n \n \n \n \n@@ -1009,15 +1009,15 @@\n \n \n

    ◆ R

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    std::vector<number> MeshWorker::LocalResults< number >::J
    \n \n \n \n \n \n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n \n \n \n \n@@ -934,29 +934,29 @@\n \n \n \n \n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n \n \n \n \n@@ -13646,15 +13646,15 @@\n
    \n
    \n
    \n \n \n \n \n@@ -1036,15 +1036,15 @@\n \n \n

    ◆ M1

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    std::vector<BlockVector<number> > MeshWorker::LocalResults< number >::R
    \n \n
    \n \n \n \n \n@@ -1063,15 +1063,15 @@\n \n \n

    ◆ M2

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    std::vector<MatrixBlock<FullMatrix<number> > > MeshWorker::LocalResults< number >::M1
    \n \n
    \n \n \n \n \n@@ -1091,15 +1091,15 @@\n \n \n

    ◆ quadrature_data

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n
    std::vector<MatrixBlock<FullMatrix<number> > > MeshWorker::LocalResults< number >::M2
    \n \n \n \n \n
    \n \n \n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -12,89 +12,89 @@\n MeshWorker::LocalResults< number > Class Template Reference\n _\bI_\bn_\bt_\be_\bg_\br_\ba_\bt_\bo_\br_\bs \u00bb _\bT_\bh_\be_\b _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b _\bi_\bn_\bt_\be_\br_\bf_\ba_\bc_\be\n #include <_\bd_\be_\ba_\bl_\b._\bI_\bI_\b/_\bm_\be_\bs_\bh_\bw_\bo_\br_\bk_\be_\br_\b/_\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh>\n Inheritance diagram for MeshWorker::LocalResults< number >:\n [Inheritance graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bv_\ba_\bl_\bu_\be_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bv_\ba_\bl_\bu_\be_\bs () const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bv_\be_\bc_\bt_\bo_\br_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bv_\be_\bc_\bt_\bo_\br_\bs () const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs () const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bp_\bo_\bi_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bp_\bo_\bi_\bn_\bt_\bs () const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs () const\n \u00a0\n- number &\u00a0 _\bv_\ba_\bl_\bu_\be (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i)\n+ number &\u00a0 _\bv_\ba_\bl_\bu_\be (const unsigned _\bi_\bn_\bt i)\n \u00a0\n- number\u00a0 _\bv_\ba_\bl_\bu_\be (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i) _\bc_\bo_\bn_\bs_\bt\n+ number\u00a0 _\bv_\ba_\bl_\bu_\be (const unsigned _\bi_\bn_\bt i) const\n \u00a0\n _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< number > &\u00a0 _\bv_\be_\bc_\bt_\bo_\br (const unsigned _\bi_\bn_\bt i)\n \u00a0\n const _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< number > &\u00a0 _\bv_\be_\bc_\bt_\bo_\br (const unsigned _\bi_\bn_\bt i) const\n \u00a0\n- _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > > &\u00a0 _\bm_\ba_\bt_\br_\bi_\bx (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i, _\bc_\bo_\bn_\bs_\bt\n- _\bb_\bo_\bo_\bl _\be_\bx_\bt_\be_\br_\bn_\ba_\bl=_\bf_\ba_\bl_\bs_\be)\n+ _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > > &\u00a0 _\bm_\ba_\bt_\br_\bi_\bx (const unsigned _\bi_\bn_\bt i, const\n+ _\bb_\bo_\bo_\bl external=false)\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > _\bm_\ba_\bt_\br_\bi_\bx (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i, _\bc_\bo_\bn_\bs_\bt\n- > &\u00a0 _\bb_\bo_\bo_\bl _\be_\bx_\bt_\be_\br_\bn_\ba_\bl=_\bf_\ba_\bl_\bs_\be) _\bc_\bo_\bn_\bs_\bt\n+const _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > _\bm_\ba_\bt_\br_\bi_\bx (const unsigned _\bi_\bn_\bt i, const\n+ > &\u00a0 _\bb_\bo_\bo_\bl external=false) const\n \u00a0\n _\bT_\ba_\bb_\bl_\be< 2, number > &\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs ()\n \u00a0\n- number &\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt _\bk,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i)\n+ number &\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be (const unsigned _\bi_\bn_\bt k,\n+ const unsigned _\bi_\bn_\bt i)\n \u00a0\n- number\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt _\bk,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt i) _\bc_\bo_\bn_\bs_\bt\n+ number\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be (const unsigned _\bi_\bn_\bt k,\n+ const unsigned _\bi_\bn_\bt i) const\n \u00a0\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bn_\bu_\bm_\bb_\be_\br_\bs (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bn_\bu_\bm_\bb_\be_\br_\bs (const unsigned _\bi_\bn_\bt\n n)\n \u00a0\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bv_\be_\bc_\bt_\bo_\br_\bs (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bv_\be_\bc_\bt_\bo_\br_\bs (const unsigned _\bi_\bn_\bt\n n)\n \u00a0\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (_\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (const unsigned _\bi_\bn_\bt\n n, _\bb_\bo_\bo_\bl both)\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be MatrixType >\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (_\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (const\n _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< MatrixType >\n &matrices, _\bb_\bo_\bo_\bl both)\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be MatrixType >\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (_\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (const\n _\bM_\bG_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< MatrixType >\n &matrices, _\bb_\bo_\bo_\bl both)\n \u00a0\n- void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be (_\bc_\bo_\bn_\bs_\bt unsigned\n- _\bi_\bn_\bt _\bn_\bp, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt _\bn_\bv)\n+ void\u00a0 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be (const unsigned\n+ _\bi_\bn_\bt np, const unsigned _\bi_\bn_\bt nv)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs\n- &_\bl_\bo_\bc_\ba_\bl_\b__\bs_\bi_\bz_\be_\bs)\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs\n+ &local_sizes)\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n- void\u00a0 _\bp_\br_\bi_\bn_\bt_\b__\bd_\be_\bb_\bu_\bg (_\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be &os) _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bp_\br_\bi_\bn_\bt_\b__\bd_\be_\bb_\bu_\bg (StreamType &os) const\n \u00a0\n- std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () _\bc_\bo_\bn_\bs_\bt\n+ std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () const\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n std::vector< number >\u00a0 _\bJ\n \u00a0\n std::vector< _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< number > >\u00a0 _\bR\n \u00a0\n std::vector< _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > > >\u00a0 _\bM_\b1\n \u00a0\n std::vector< _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number > > >\u00a0 _\bM_\b2\n \u00a0\n _\bT_\ba_\bb_\bl_\be< 2, number >\u00a0 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bd_\ba_\bt_\ba\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number>\n+template\n class MeshWorker::LocalResults< number >\n The class providing the scrapbook to fill with results of local integration.\n Depending on the task the mesh worker loop is performing, local results can be\n of different types: They can be scalars, vectors of size equal to the number of\n degrees of freedom used in the integrals, or square matrices of that same size.\n All of these have in common that they are the result of local integration over\n a cell or face. Which kind of object is the result of an operation is\n@@ -119,52 +119,52 @@\n according to the degrees of freedom on both cells. These are accessed\n with _\bm_\ba_\bt_\br_\bi_\bx_\b(_\b), using the second argument true.\n The local matrices are initialized by _\br_\be_\bi_\bn_\bi_\bt_\b(_\b) of the info object and then\n assembled into the global system by _\bA_\bs_\bs_\be_\bm_\bb_\bl_\be_\br classes.\n Definition at line _\b8_\b1 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bn D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_v\bva\bal\blu\bue\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::n_values ( ) const inline\n The number of scalar values stored by the current object.\n This number is set to a nonzero value by _\bA_\bs_\bs_\be_\bm_\bb_\bl_\be_\br_\b:_\b:_\bC_\be_\bl_\bl_\bs_\bA_\bn_\bd_\bF_\ba_\bc_\be_\bs\n Definition at line _\b3_\b9_\b1 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_v\bve\bec\bct\bto\bor\brs\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::n_vectors ( ) const inline\n The number of vectors stored by the current object.\n This number is set to a nonzero value by _\bA_\bs_\bs_\be_\bm_\bb_\bl_\be_\br_\b:_\b:_\bR_\be_\bs_\bi_\bd_\bu_\ba_\bl_\bS_\bi_\bm_\bp_\bl_\be and\n _\bA_\bs_\bs_\be_\bm_\bb_\bl_\be_\br_\b:_\b:_\bR_\be_\bs_\bi_\bd_\bu_\ba_\bl_\bL_\bo_\bc_\ba_\bl_\bB_\bl_\bo_\bc_\bk_\bs_\bT_\bo_\bG_\bl_\bo_\bb_\ba_\bl_\bB_\bl_\bo_\bc_\bk_\bs.\n Definition at line _\b3_\b9_\b9 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_m\bma\bat\btr\bri\bic\bce\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::n_matrices ( ) const inline\n The number of matrices stored by the current object.\n Definition at line _\b4_\b0_\b7 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_p\bpo\boi\bin\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( ) const inline\n n_quadrature_points\n The number of quadrature points in _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs_\b(_\b).\n Definition at line _\b4_\b1_\b5 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_v\bva\bal\blu\bue\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n unsigned _\bi_\bn_\bt _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( ) const inline\n n_quadrature_values\n The number of values in each quadrature point in _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs_\b(_\b).\n Definition at line _\b4_\b2_\b3 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\blu\bue\be(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-number & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi ) inline\n+template\n+number & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( const unsigned _\bi_\bn_\bt\u00a0 i\bi ) inline\n >::value\n Read-write access to the ith scalar stored by this class.\n Definition at line _\b4_\b3_\b1 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\blu\bue\be(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-number _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi ) const inline\n+template\n+number _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( const unsigned _\bi_\bn_\bt\u00a0 i\bi ) const inline\n >::value\n Read access to the ith scalar stored by this class.\n Definition at line _\b4_\b8_\b0 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bve\bec\bct\bto\bor\br(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n template\n _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< number > &\n _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( const unsigned _\bi_\bn_\bt\u00a0 i\bi ) inline\n@@ -175,167 +175,167 @@\n template\n const _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< number > &\n _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( const unsigned _\bi_\bn_\bt\u00a0 i\bi ) const inline\n vector\n Read-write access to the ith vector stored by this class\n Definition at line _\b4_\b8_\b9 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bat\btr\bri\bix\bx(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< number\n-> > & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi,\n+> > & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( const unsigned _\bi_\bn_\bt\u00a0 i\bi,\n number >::matrix inline\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 e\bex\bxt\bte\ber\brn\bna\bal\bl = _\bf_\ba_\bl_\bs_\be\u00a0\n+ const _\bb_\bo_\bo_\bl\u00a0 e\bex\bxt\bte\ber\brn\bna\bal\bl = false\u00a0\n )\n Read-write access to the ith matrix stored by this class.\n For an explanation of the second argument, see the documentation of the current\n class itself.\n Definition at line _\b4_\b4_\b9 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bat\btr\bri\bix\bx(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-_\bc_\bo_\bn_\bs_\bt _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx<\n-number > > & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi,\n+template\n+const _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk< _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx<\n+number > > & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: ( const unsigned _\bi_\bn_\bt\u00a0 i\bi,\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::matrix inline\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 e\bex\bxt\bte\ber\brn\bna\bal\bl = _\bf_\ba_\bl_\bs_\be\u00a0\n+ const _\bb_\bo_\bo_\bl\u00a0 e\bex\bxt\bte\ber\brn\bna\bal\bl = false\u00a0\n ) const\n Read access to the ith matrix stored by this class.\n For an explanation of the second argument, see the documentation of the current\n class itself.\n Definition at line _\b4_\b9_\b8 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_v\bva\bal\blu\bue\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n _\bT_\ba_\bb_\bl_\be< 2, number > & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( ) inline\n >::quadrature_values\n Access to the vector _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bd_\ba_\bt_\ba of data in quadrature points, organized\n such that there is a vector for each point, containing one entry for each\n component.\n Definition at line _\b4_\b7_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_v\bva\bal\blu\bue\be(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-number & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 k\bk,\n+template\n+number & _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( const unsigned _\bi_\bn_\bt\u00a0 k\bk,\n quadrature_value inline\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 i\bi\u00a0\n )\n Access the i\bith value at quadrature point k\bk\n Definition at line _\b4_\b6_\b3 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_v\bva\bal\blu\bue\be(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-number _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 k\bk,\n+template\n+number _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( const unsigned _\bi_\bn_\bt\u00a0 k\bk,\n quadrature_value inline\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 i\bi\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 i\bi\u00a0\n ) const\n Read the i\bith value at quadrature point k\bk\n Definition at line _\b5_\b1_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_n\bnu\bum\bmb\bbe\ber\brs\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 n\bn ) inline\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( const unsigned _\bi_\bn_\bt\u00a0 n\bn ) inline\n >::initialize_numbers\n Initialize the vector with scalar values.\n Note\n This function is usually only called by the assembler.\n Definition at line _\b2_\b9_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_v\bve\bec\bct\bto\bor\brs\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 n\bn ) inline\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( const unsigned _\bi_\bn_\bt\u00a0 n\bn ) inline\n >::initialize_vectors\n Initialize the vector with vector values.\n Note\n This function is usually only called by the assembler.\n Definition at line _\b3_\b0_\b0 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_m\bma\bat\btr\bri\bic\bce\bes\bs(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 n\bn,\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( const unsigned _\bi_\bn_\bt\u00a0 n\bn,\n initialize_matrices inline\n _\bb_\bo_\bo_\bl\u00a0 b\bbo\bot\bth\bh\u00a0\n )\n Allocate n local matrices. Additionally, set their block row and column\n coordinates to zero. The matrices themselves are resized by _\br_\be_\bi_\bn_\bi_\bt_\b(_\b).\n Note\n This function is usually only called by the assembler.\n Definition at line _\b3_\b6_\b1 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_m\bma\bat\btr\bri\bic\bce\bes\bs(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be MatrixType >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( _\bc_\bo_\bn_\bs_\bt _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< m\bma\bat\btr\bri\bic\bce\bes\bs,\n+template\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( const _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< m\bma\bat\btr\bri\bic\bce\bes\bs,\n number >::initialize_matrices MatrixType > &\u00a0 inline\n _\bb_\bo_\bo_\bl\u00a0 b\bbo\bot\bth\bh\u00a0\n )\n Allocate a local matrix for each of the global ones in matrices. Additionally,\n set their block row and column coordinates. The matrices themselves are resized\n by _\br_\be_\bi_\bn_\bi_\bt_\b(_\b).\n Note\n This function is usually only called by the assembler.\n Definition at line _\b3_\b0_\b9 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_m\bma\bat\btr\bri\bic\bce\bes\bs(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be MatrixType >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( _\bc_\bo_\bn_\bs_\bt _\bM_\bG_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< m\bma\bat\btr\bri\bic\bce\bes\bs,\n+template\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< ( const _\bM_\bG_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br< m\bma\bat\btr\bri\bic\bce\bes\bs,\n number >::initialize_matrices MatrixType > &\u00a0 inline\n _\bb_\bo_\bo_\bl\u00a0 b\bbo\bot\bth\bh\u00a0\n )\n Allocate a local matrix for each of the global level objects in matrices.\n Additionally, set their block row and column coordinates. The matrices\n themselves are resized by _\br_\be_\bi_\bn_\bi_\bt_\b(_\b).\n Note\n This function is usually only called by the assembler.\n Definition at line _\b3_\b3_\b5 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bni\bit\bti\bia\bal\bli\biz\bze\be_\b_q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 n\bnp\bp,\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >:: ( const unsigned _\bi_\bn_\bt\u00a0 n\bnp\bp,\n initialize_quadrature inline\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 n\bnv\bv\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 n\bnv\bv\u00a0\n )\n Initialize quadrature values to nv values in np quadrature points.\n Definition at line _\b3_\b8_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( _\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs &\u00a0 l\blo\boc\bca\bal\bl_\b_s\bsi\biz\bze\bes\bs )\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number ( const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs &\u00a0 l\blo\boc\bca\bal\bl_\b_s\bsi\biz\bze\bes\bs )\n >::reinit\n Reinitialize matrices for new cell. Does not resize any of the data vectors\n stored in this object, but resizes the vectors in _\bR and the matrices in _\bM_\b1 and\n _\bM_\b2 for hp and sets them to zero.\n Definition at line _\b2_\b7 of file _\bm_\be_\bs_\bh_\b__\bw_\bo_\br_\bk_\be_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0p\bpr\bri\bin\bnt\bt_\b_d\bde\beb\bbu\bug\bg(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n-void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::print_debug ( _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be &\u00a0 o\bos\bs ) const\n+template\n+template\n+void _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::print_debug ( StreamType &\u00a0 o\bos\bs ) const\n Definition at line _\b5_\b2_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bme\bem\bmo\bor\bry\by_\b_c\bco\bon\bns\bsu\bum\bmp\bpt\bti\bio\bon\bn(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n std::size_t _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::memory_consumption ( ) const\n The memory used by this object.\n Definition at line _\b4_\b5 of file _\bm_\be_\bs_\bh_\b__\bw_\bo_\br_\bk_\be_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br D\bDa\bat\bta\ba D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0J\bJ *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n std::vector _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::J private\n The local numbers, computed on a cell or on a face.\n Definition at line _\b2_\b6_\b0 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0R\bR *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n std::vector<_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br > _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::R private\n The local vectors. This field is public, so that local integrators can write to\n it.\n Definition at line _\b2_\b6_\b6 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0M\bM1\b1 *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n std::vector<_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk<_\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx > > _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: private\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::M1\n The local matrices coupling degrees of freedom in the cell itself or within the\n first cell on a face.\n Definition at line _\b2_\b7_\b2 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0M\bM2\b2 *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n std::vector<_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk<_\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx > > _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b: private\n _\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::M2\n The local matrices coupling test functions on the cell with trial functions on\n the other cell.\n Only used on interior faces.\n Definition at line _\b2_\b8_\b0 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0q\bqu\bua\bad\bdr\bra\bat\btu\bur\bre\be_\b_d\bda\bat\bta\ba *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n+template\n _\bT_\ba_\bb_\bl_\be<2, number> _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs< number >::quadrature_data private\n Values in quadrature points for writing into patch data.\n Definition at line _\b2_\b8_\b5 of file _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh.\n ===============================================================================\n The documentation for this class was generated from the following files:\n * include/deal.II/meshworker/_\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh\n * source/meshworker/_\bm_\be_\bs_\bh_\b__\bw_\bo_\br_\bk_\be_\br_\b._\bc_\bc\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMultipleParameterLoop.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classMultipleParameterLoop.html", "unified_diff": "@@ -552,30 +552,30 @@\n \n \n \n \n \n \n \n \n \n \n \n \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classNonlinearSolverSelector.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classNonlinearSolverSelector.html", "unified_diff": "@@ -240,15 +240,15 @@\n \n \n \n \n
    Table<2, number> MeshWorker::LocalResults< number >::quadrature_data
    Short 

    Write input for ParameterHandler without comments or changed default values.

    \n
    KeepDeclarationOrder 

    Keep the order of the parameters as they have been declared.

    \n
    PRM 

    Write human readable output suitable to be read by ParameterHandler::parse_input() again.

    \n
    Text 

    Write human readable output suitable to be read by ParameterHandler::parse_input() again.

    \n-
    Deprecated:
    Use PRM instead of Text.
    \n+
    Deprecated:
    Use PRM instead of Text.
    \n
    LaTeX 

    Write parameters as a LaTeX table.

    \n
    Description 

    Write out declared parameters with description and possible values.

    \n
    Note
    This format is not suitable to be read back again.
    \n
    XML 

    Write out everything as an XML file suitable to be read by ParameterHandler::parse_input_from_xml() again.

    \n

    See the general documentation of this class for an example of output.

    \n
    JSON 

    Write out everything as a JSON file suitable to be read by ParameterHandler::parse_input_from_json() again.

    \n
    ShortPRM 

    Write the content of ParameterHandler without comments or changed default values.

    \n
    ShortText 

    Write the content of ParameterHandler without comments or changed default values.

    \n-
    Deprecated:
    Use ShortPRM instead of ShortText.
    \n+
    Deprecated:
    Use ShortPRM instead of ShortText.
    \n
    ShortXML 

    Write the content of ParameterHandler without comments or changed default values as a XML file.

    \n
    ShortJSON 

    Write the content of ParameterHandler without comments or changed default values as a JSON file.

    \n
    ShortLaTeX 

    Write the content of ParameterHandler without comments or changed default values as a LaTeX file.

    \n
    const AdditionalDataadditional_data)
    \n
    \n

    Constructor, selecting the solver and other parameters specified in additional_data.

    \n-
    Deprecated:
    Use the other constructor with MPI_Comm instead.
    \n+
    Deprecated:
    Use the other constructor with MPI_Comm instead.
    \n \n

    Definition at line 495 of file nonlinear.h.

    \n \n
    \n \n \n

    ◆ NonlinearSolverSelector() [3/3]

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1Vector.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1MPI_1_1Vector.html", "unified_diff": "@@ -128,204 +128,204 @@\n \"\"\n \"\"\n \n
    [legend]
    \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n

    \n Public Types

    using size_type = types::global_dof_index
    using size_type = types::global_dof_index
     
    using value_type = PetscScalar
    using value_type = PetscScalar
     
    using real_type = PetscReal
    using real_type = PetscReal
     
    using reference = internal::VectorReference
    using reference = internal::VectorReference
     
    using const_reference = const internal::VectorReference
    using const_reference = const internal::VectorReference
     
    \n \n \n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n-\n+\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n

    \n Public Member Functions

     Vector ()
     
     Vector (const MPI_Comm communicator, const size_type n, const size_type locally_owned_size)
     Vector (const MPI_Comm communicator, const size_type n, const size_type locally_owned_size)
     
    template<typename Number >
     Vector (const MPI_Comm communicator, const ::Vector< Number > &v, const size_type locally_owned_size)
    template<typename Number >
     Vector (const MPI_Comm communicator, const ::Vector< Number > &v, const size_type locally_owned_size)
     
     Vector (const IndexSet &local, const IndexSet &ghost, const MPI_Comm communicator)
     Vector (const IndexSet &local, const IndexSet &ghost, const MPI_Comm communicator)
     
     Vector (const IndexSet &local, const MPI_Comm communicator)
     Vector (const IndexSet &local, const MPI_Comm communicator)
     
     Vector (const Vector &v)
     Vector (const Vector &v)
     
    virtual void clear () override
    virtual void clear () override
     
    Vectoroperator= (const Vector &v)
    Vectoroperator= (const Vector &v)
     
    Vectoroperator= (const PetscScalar s)
    Vectoroperator= (const PetscScalar s)
     
    template<typename number >
    Vectoroperator= (const ::Vector< number > &v)
    template<typename number >
    Vectoroperator= (const ::Vector< number > &v)
     
    void reinit (const MPI_Comm communicator, const size_type N, const size_type locally_owned_size, const bool omit_zeroing_entries=false)
    void reinit (const MPI_Comm communicator, const size_type N, const size_type locally_owned_size, const bool omit_zeroing_entries=false)
     
    void reinit (const Vector &v, const bool omit_zeroing_entries=false)
    void reinit (const Vector &v, const bool omit_zeroing_entries=false)
     
    void reinit (const IndexSet &local, const IndexSet &ghost, const MPI_Comm communicator)
    void reinit (const IndexSet &local, const IndexSet &ghost, const MPI_Comm communicator)
     
    void reinit (const IndexSet &local, const MPI_Comm communicator)
    void reinit (const IndexSet &local, const MPI_Comm communicator)
     
    void reinit (const std::shared_ptr< const Utilities::MPI::Partitioner > &partitioner, const bool make_ghosted=true)
    void reinit (const std::shared_ptr< const Utilities::MPI::Partitioner > &partitioner, const bool make_ghosted=true)
     
    void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
    void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
     
    bool all_zero () const
    bool all_zero () const
     
     VectorBase ()
     
     VectorBase (const VectorBase &v)
     VectorBase (const VectorBase &v)
     
     VectorBase (const Vec &v)
     VectorBase (const Vec &v)
     
    void reinit (Vec v)
     
    void compress (const VectorOperation::values operation)
    void compress (const VectorOperation::values operation)
     
    bool operator== (const VectorBase &v) const
    bool operator== (const VectorBase &v) const
     
    bool operator!= (const VectorBase &v) const
    bool operator!= (const VectorBase &v) const
     
    size_type size () const override
    size_type size () const override
     
    size_type locally_owned_size () const
    size_type locally_owned_size () const
     
    std::pair< size_type, size_typelocal_range () const
    std::pair< size_type, size_typelocal_range () const
     
    bool in_local_range (const size_type index) const
    bool in_local_range (const size_type index) const
     
    IndexSet locally_owned_elements () const
    IndexSet locally_owned_elements () const
     
    bool has_ghost_elements () const
    bool has_ghost_elements () const
     
    const IndexSetghost_elements () const
    const IndexSetghost_elements () const
     
    void update_ghost_values () const
    void update_ghost_values () const
     
    reference operator() (const size_type index)
    reference operator() (const size_type index)
     
    PetscScalar operator() (const size_type index) const
    PetscScalar operator() (const size_type index) const
     
    reference operator[] (const size_type index)
    reference operator[] (const size_type index)
     
    PetscScalar operator[] (const size_type index) const
    PetscScalar operator[] (const size_type index) const
     
    void set (const std::vector< size_type > &indices, const std::vector< PetscScalar > &values)
    void set (const std::vector< size_type > &indices, const std::vector< PetscScalar > &values)
     
    void extract_subvector_to (const std::vector< size_type > &indices, std::vector< PetscScalar > &values) const
    void extract_subvector_to (const std::vector< size_type > &indices, std::vector< PetscScalar > &values) const
     
    virtual void extract_subvector_to (const ArrayView< const types::global_dof_index > &indices, ArrayView< PetscScalar > &elements) const override
    virtual void extract_subvector_to (const ArrayView< const types::global_dof_index > &indices, ArrayView< PetscScalar > &elements) const override
     
    template<typename ForwardIterator , typename OutputIterator >
    void extract_subvector_to (const ForwardIterator indices_begin, const ForwardIterator indices_end, OutputIterator values_begin) const
    template<typename ForwardIterator , typename OutputIterator >
    void extract_subvector_to (const ForwardIterator indices_begin, const ForwardIterator indices_end, OutputIterator values_begin) const
     
    void add (const std::vector< size_type > &indices, const std::vector< PetscScalar > &values)
    void add (const std::vector< size_type > &indices, const std::vector< PetscScalar > &values)
     
    void add (const std::vector< size_type > &indices, const ::Vector< PetscScalar > &values)
    void add (const std::vector< size_type > &indices, const ::Vector< PetscScalar > &values)
     
    void add (const size_type n_elements, const size_type *indices, const PetscScalar *values)
    void add (const size_type n_elements, const size_type *indices, const PetscScalar *values)
     
    void add (const PetscScalar s)
    void add (const PetscScalar s)
     
    void add (const PetscScalar a, const VectorBase &V)
    void add (const PetscScalar a, const VectorBase &V)
     
    void add (const PetscScalar a, const VectorBase &V, const PetscScalar b, const VectorBase &W)
    void add (const PetscScalar a, const VectorBase &V, const PetscScalar b, const VectorBase &W)
     
    PetscScalar operator* (const VectorBase &vec) const
    PetscScalar operator* (const VectorBase &vec) const
     
    real_type norm_sqr () const
    real_type norm_sqr () const
     
    PetscScalar mean_value () const
    PetscScalar mean_value () const
     
    real_type l1_norm () const
    real_type l1_norm () const
     
    real_type l2_norm () const
    real_type l2_norm () const
     
    real_type lp_norm (const real_type p) const
    real_type lp_norm (const real_type p) const
     
    real_type linfty_norm () const
    real_type linfty_norm () const
     
    PetscScalar add_and_dot (const PetscScalar a, const VectorBase &V, const VectorBase &W)
    PetscScalar add_and_dot (const PetscScalar a, const VectorBase &V, const VectorBase &W)
     
    VectorBaseoperator*= (const PetscScalar factor)
    VectorBaseoperator*= (const PetscScalar factor)
     
    VectorBaseoperator/= (const PetscScalar factor)
    VectorBaseoperator/= (const PetscScalar factor)
     
    VectorBaseoperator+= (const VectorBase &V)
    VectorBaseoperator+= (const VectorBase &V)
     
    VectorBaseoperator-= (const VectorBase &V)
    VectorBaseoperator-= (const VectorBase &V)
     
    void sadd (const PetscScalar s, const VectorBase &V)
    void sadd (const PetscScalar s, const VectorBase &V)
     
    void sadd (const PetscScalar s, const PetscScalar a, const VectorBase &V)
    void sadd (const PetscScalar s, const PetscScalar a, const VectorBase &V)
     
    void scale (const VectorBase &scaling_factors)
    void scale (const VectorBase &scaling_factors)
     
    void equ (const PetscScalar a, const VectorBase &V)
    void equ (const PetscScalar a, const VectorBase &V)
     
    void write_ascii (const PetscViewerFormat format=PETSC_VIEWER_DEFAULT)
    void write_ascii (const PetscViewerFormat format=PETSC_VIEWER_DEFAULT)
     
    template<class Archive >
    void save (Archive &ar, const unsigned int version) const
    template<class Archive >
    void save (Archive &ar, const unsigned int version) const
     
    template<class Archive >
    void load (Archive &ar, const unsigned int version)
    template<class Archive >
    void load (Archive &ar, const unsigned int version)
     
    template<class Archive >
    void serialize (Archive &archive, const unsigned int version)
    template<class Archive >
    void serialize (Archive &archive, const unsigned int version)
     
    void swap (VectorBase &v) noexcept
    void swap (VectorBase &v) noexcept
     
     operator const Vec & () const
     operator const Vec & () const
     
    Vec & petsc_vector ()
     
    std::size_t memory_consumption () const
    std::size_t memory_consumption () const
     
    MPI_Comm get_mpi_communicator () const
    MPI_Comm get_mpi_communicator () const
     
    Subscriptor functionality

    Classes derived from Subscriptor provide a facility to subscribe to this object. This is mostly used by the SmartPointer class.

    \n
    void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
    void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
     
    void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
    void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
     
    unsigned int n_subscriptions () const
    unsigned int n_subscriptions () const
     
    template<typename StreamType >
    void list_subscribers (StreamType &stream) const
    template<typename StreamType >
    void list_subscribers (StreamType &stream) const
     
    void list_subscribers () const
    void list_subscribers () const
     
    \n \n-\n+\n \n-\n+\n \n

    \n Static Public Member Functions

    static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
    static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
     
    static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
    static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
     
    \n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n

    \n Protected Member Functions

    virtual void create_vector (const MPI_Comm comm, const size_type n, const size_type locally_owned_size)
    virtual void create_vector (const MPI_Comm comm, const size_type n, const size_type locally_owned_size)
     
    virtual void create_vector (const MPI_Comm comm, const size_type n, const size_type locally_owned_size, const IndexSet &ghostnodes)
    virtual void create_vector (const MPI_Comm comm, const size_type n, const size_type locally_owned_size, const IndexSet &ghostnodes)
     
    void do_set_add_operation (const size_type n_elements, const size_type *indices, const PetscScalar *values, const bool add_values)
    void do_set_add_operation (const size_type n_elements, const size_type *indices, const PetscScalar *values, const bool add_values)
     
    void determine_ghost_indices ()
     
    \n \n \n@@ -335,66 +335,66 @@\n \n \n \n \n

    \n Protected Attributes

    Vec vector
    IndexSet ghost_indices
     
    VectorOperation::values last_action
     
    \n \n-\n+\n \n-\n+\n \n

    \n Private Types

    using map_value_type = decltype(counter_map)::value_type
    using map_value_type = decltype(counter_map)::value_type
     
    using map_iterator = decltype(counter_map)::iterator
    using map_iterator = decltype(counter_map)::iterator
     
    \n \n-\n+\n \n

    \n Private Member Functions

    void check_no_subscribers () const noexcept
    void check_no_subscribers () const noexcept
     
    \n \n \n \n \n \n \n \n-\n+\n \n

    \n Private Attributes

    std::atomic< unsigned intcounter
     
    std::map< std::string, unsigned intcounter_map
     
    std::vector< std::atomic< bool > * > validity_pointers
     
    const std::type_info * object_info
    const std::type_info * object_info
     
    \n \n-\n+\n \n

    \n Static Private Attributes

    static std::mutex mutex
    static std::mutex mutex
     
    \n \n \n-\n+\n \n-\n+\n \n

    \n Related Symbols

    (Note that these are not member symbols.)

    \n
    void swap (Vector &u, Vector &v)
    void swap (Vector &u, Vector &v)
     
    void swap (VectorBase &u, VectorBase &v) noexcept
    void swap (VectorBase &u, VectorBase &v) noexcept
     
    \n

    Detailed Description

    \n

    Implementation of a parallel vector class based on PETSC and using MPI communication to synchronize distributed operations. All the functionality is actually in the base class, except for the calls to generate a parallel vector. This is possible since PETSc only works on an abstract vector type and internally distributes to functions that do the actual work depending on the actual vector type (much like using virtual functions). Only the functions creating a vector of specific type differ, and are implemented in this particular class.

    \n

    Parallel communication model

    \n

    The parallel functionality of PETSc is built on top of the Message Passing Interface (MPI). MPI's communication model is built on collective communications: if one process wants something from another, that other process has to be willing to accept this communication. A process cannot query data from another process by calling a remote function, without that other process expecting such a transaction. The consequence is that most of the operations in the base class of this class have to be called collectively. For example, if you want to compute the l2 norm of a parallel vector, all processes across which this vector is shared have to call the l2_norm function. If you don't do this, but instead only call the l2_norm function on one process, then the following happens: This one process will call one of the collective MPI functions and wait for all the other processes to join in on this. Since the other processes don't call this function, you will either get a time-out on the first process, or, worse, by the time the next a call to a PETSc function generates an MPI message on the other processes, you will get a cryptic message that only a subset of processes attempted a communication. These bugs can be very hard to figure out, unless you are well-acquainted with the communication model of MPI, and know which functions may generate MPI messages.

    \n

    One particular case, where an MPI message may be generated unexpectedly is discussed below.

    \n

    Accessing individual elements of a vector

    \n-

    PETSc does allow read access to individual elements of a vector, but in the distributed case only to elements that are stored locally. We implement this through calls like d=vec(i). However, if you access an element outside the locally stored range, an exception is generated.

    \n-

    In contrast to read access, PETSc (and the respective deal.II wrapper classes) allow to write (or add) to individual elements of vectors, even if they are stored on a different process. You can do this writing, for example, vec(i)=d or vec(i)+=d, or similar operations. There is one catch, however, that may lead to very confusing error messages: PETSc requires application programs to call the compress() function when they switch from adding, to elements to writing to elements. The reasoning is that all processes might accumulate addition operations to elements, even if multiple processes write to the same elements. By the time we call compress() the next time, all these additions are executed. However, if one process adds to an element, and another overwrites to it, the order of execution would yield non-deterministic behavior if we don't make sure that a synchronization with compress() happens in between.

    \n+

    PETSc does allow read access to individual elements of a vector, but in the distributed case only to elements that are stored locally. We implement this through calls like d=vec(i). However, if you access an element outside the locally stored range, an exception is generated.

    \n+

    In contrast to read access, PETSc (and the respective deal.II wrapper classes) allow to write (or add) to individual elements of vectors, even if they are stored on a different process. You can do this writing, for example, vec(i)=d or vec(i)+=d, or similar operations. There is one catch, however, that may lead to very confusing error messages: PETSc requires application programs to call the compress() function when they switch from adding, to elements to writing to elements. The reasoning is that all processes might accumulate addition operations to elements, even if multiple processes write to the same elements. By the time we call compress() the next time, all these additions are executed. However, if one process adds to an element, and another overwrites to it, the order of execution would yield non-deterministic behavior if we don't make sure that a synchronization with compress() happens in between.

    \n

    In order to make sure these calls to compress() happen at the appropriate time, the deal.II wrappers keep a state variable that store which is the presently allowed operation: additions or writes. If it encounters an operation of the opposite kind, it calls compress() and flips the state. This can sometimes lead to very confusing behavior, in code that may for example look like this:

    \n
    ...
    \n
    // do some write operations on the vector
    \n
    for (unsigned int i=0; i<vector.size(); ++i)
    \n
    vector(i) = i;
    \n
    \n
    // do some additions to vector elements, but only for some elements
    \n
    for (unsigned int i=0; i<vector.size(); ++i)
    \n-
    if (some_condition(i) == true)
    \n+
    if (some_condition(i) == true)
    \n
    vector(i) += 1;
    \n
    \n
    // do another collective operation
    \n
    const double norm = vector.l2_norm();
    \n \n \n

    This code can run into trouble: by the time we see the first addition operation, we need to flush the overwrite buffers for the vector, and the deal.II library will do so by calling compress(). However, it will only do so for all processes that actually do an addition – if the condition is never true for one of the processes, then this one will not get to the actual compress() call, whereas all the other ones do. This gets us into trouble, since all the other processes hang in the call to flush the write buffers, while the one other process advances to the call to compute the l2 norm. At this time, you will get an error that some operation was attempted by only a subset of processes. This behavior may seem surprising, unless you know that write/addition operations on single elements may trigger this behavior.

    \n@@ -406,15 +406,15 @@\n \n

    ◆ size_type

    \n \n
    \n
    \n

    Declare type for container size.

    \n \n

    Definition at line 163 of file petsc_vector.h.

    \n \n@@ -426,15 +426,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using PETScWrappers::VectorBase::value_type = PetscScalarusing PETScWrappers::VectorBase::value_type = PetscScalar
    \n
    \n inherited
    \n@@ -451,15 +451,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using PETScWrappers::VectorBase::real_type = PetscRealusing PETScWrappers::VectorBase::real_type = PetscReal
    \n
    \n inherited
    \n@@ -475,15 +475,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using PETScWrappers::VectorBase::reference = internal::VectorReferenceusing PETScWrappers::VectorBase::reference = internal::VectorReference
    \n
    \n inherited
    \n@@ -499,15 +499,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using PETScWrappers::VectorBase::const_reference = const internal::VectorReferenceusing PETScWrappers::VectorBase::const_reference = const internal::VectorReference
    \n
    \n inherited
    \n@@ -523,15 +523,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using Subscriptor::map_value_type = decltype(counter_map)::value_typeusing Subscriptor::map_value_type = decltype(counter_map)::value_type
    \n
    \n privateinherited
    \n@@ -548,15 +548,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using Subscriptor::map_iterator = decltype(counter_map)::iteratorusing Subscriptor::map_iterator = decltype(counter_map)::iterator
    \n
    \n privateinherited
    \n@@ -596,27 +596,27 @@\n \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -642,35 +642,35 @@\n \n \n

    ◆ Vector() [3/6]

    \n \n
    \n
    \n
    \n-template<typename Number >
    \n+template<typename Number >
    \n
    Vector< Number >::Vector (const MPI_Comm const MPI_Comm communicator,
    const size_type const size_type n,
    const size_type const size_type locally_owned_size 
    )
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -696,27 +696,27 @@\n \n
    \n
    \n
    PETScWrappers::MPI::Vector::Vector (const MPI_Comm const MPI_Comm communicator,
    const ::Vector< Number > & const ::Vector< Number > & v,
    const size_type const size_type locally_owned_size 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -740,21 +740,21 @@\n
    Vector< Number >::Vector (const IndexSetconst IndexSetlocal,
    const IndexSetconst IndexSetghost,
    const MPI_Comm const MPI_Comm communicator 
    )
    \n \n \n \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -777,15 +777,15 @@\n \n
    \n
    \n
    Vector< Number >::Vector (const IndexSetconst IndexSetlocal,
    const MPI_Comm const MPI_Comm communicator 
    )
    \n \n \n \n- \n+ \n \n \n \n
    Vector< Number >::Vector (const Vectorconst Vectorv)
    \n
    \n

    Copy constructor.

    \n \n@@ -827,17 +827,17 @@\n \n

    ◆ operator=() [1/3]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & Vector< Number >::operator= Vector & Vector< Number >::operator= (const Vectorconst Vectorv)
    \n
    \n

    Copy the given vector. Resize the present vector if necessary. Also take over the MPI communicator of v.

    \n

    The semantics of this operator are complex. If the two vectors have the same size, and if either the left or right hand side vector of the assignment (i.e., either the input vector on the right hand side, or the calling vector to the left of the assignment operator) currently has ghost elements, then the left hand side vector will also have ghost values and will consequently be a read-only vector (see also the glossary entry on the issue). Otherwise, the left hand vector will be a writable vector after this operation. These semantics facilitate having a vector with ghost elements on the left hand side of the assignment, and a vector without ghost elements on the right hand side, with the resulting left hand side vector having the correct values in both its locally owned and its ghost elements.

    \n@@ -850,17 +850,17 @@\n \n

    ◆ operator=() [2/3]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & PETScWrappers::MPI::Vector::operator= Vector & PETScWrappers::MPI::Vector::operator= (const PetscScalar const PetscScalar s)
    \n
    \n

    Set all components of the vector to the given number s. Simply pass this down to the base class, but we still need to declare this function to make the example given in the discussion about making the constructor explicit work.

    \n \n@@ -868,20 +868,20 @@\n
    \n \n

    ◆ operator=() [3/3]

    \n \n
    \n
    \n
    \n-template<typename number >
    \n+template<typename number >
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & PETScWrappers::MPI::Vector::operator= Vector & PETScWrappers::MPI::Vector::operator= (const ::Vector< number > & const ::Vector< number > & v)
    \n
    \n

    Copy the values of a deal.II vector (as opposed to those of the PETSc vector wrapper class) into this object.

    \n

    Contrary to the case of sequential vectors, this operators requires that the present vector already has the correct size, since we need to have a partition and a communicator present which we otherwise can't get from the source vector.

    \n@@ -893,34 +893,34 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::reinit (const MPI_Comm const MPI_Comm communicator,
    const size_type const size_type N,
    const size_type const size_type locally_owned_size,
    const bool omit_zeroing_entries = false const bool omit_zeroing_entries = false 
    )
    \n@@ -939,22 +939,22 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::reinit (const Vectorconst Vectorv,
    const bool omit_zeroing_entries = false const bool omit_zeroing_entries = false 
    )
    \n@@ -971,27 +971,27 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1009,21 +1009,21 @@\n \n
    \n
    \n
    void Vector< Number >::reinit (const IndexSetconst IndexSetlocal,
    const IndexSetconst IndexSetghost,
    const MPI_Comm const MPI_Comm communicator 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1041,22 +1041,22 @@\n \n
    \n
    \n
    void Vector< Number >::reinit (const IndexSetconst IndexSetlocal,
    const MPI_Comm const MPI_Comm communicator 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::reinit (const std::shared_ptr< const Utilities::MPI::Partitioner > & const std::shared_ptr< const Utilities::MPI::Partitioner > & partitioner,
    const bool make_ghosted = true const bool make_ghosted = true 
    )
    \n@@ -1079,28 +1079,28 @@\n
    (std::ostream & out,
    const unsigned int const unsigned int precision = 3,
    const bool scientific = true, const bool scientific = true,
    const bool across = true const bool across = true 
    ) const
    \n@@ -1143,27 +1143,27 @@\n \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1188,33 +1188,33 @@\n
    void Vector< Number >::create_vector (const MPI_Comm const MPI_Comm comm,
    const size_type const size_type n,
    const size_type const size_type locally_owned_size 
    )
    \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1256,15 +1256,15 @@\n \n
    \n
    \n
    void Vector< Number >::create_vector (const MPI_Comm const MPI_Comm comm,
    const size_type const size_type n,
    const size_type const size_type locally_owned_size,
    const IndexSetconst IndexSetghostnodes 
    )
    \n \n \n \n- \n+ \n \n \n \n
    PETScWrappers::VectorBase::VectorBase (const VectorBaseconst VectorBasev)
    \n
    \n

    Import VectorBase constructors, including from a PETSc Vec object.

    \n \n@@ -1280,15 +1280,15 @@\n \n \n \n \n@@ -1330,15 +1330,15 @@\n
    \n \n \n \n \n- \n+ \n \n \n \n
    PETScWrappers::VectorBase::VectorBase (const Vec & const Vec & v)
    \n
    \n explicit
    \n \n \n \n@@ -1358,17 +1358,17 @@\n
    \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void PETScWrappers::VectorBase::compress (const VectorOperation::values const VectorOperation::values operation)
    \n
    \n inherited
    \n \n \n \n@@ -1389,15 +1389,15 @@\n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    bool PETScWrappers::VectorBase::operator== bool PETScWrappers::VectorBase::operator== (const VectorBaseconst VectorBasev) const
    \n
    \n inherited
    \n \n \n \n@@ -1505,15 +1505,15 @@\n
    \n \n \n \n \n- \n+ \n \n \n \n
    bool PETScWrappers::VectorBase::operator!= (const VectorBaseconst VectorBasev) const
    \n
    \n inherited
    \n \n \n \n@@ -1542,15 +1542,15 @@\n
    \n \n \n \n \n- \n+ \n \n \n \n
    bool PETScWrappers::VectorBase::in_local_range (const size_type const size_type index) const
    \n
    \n inherited
    \n
    \n inherited
    \n
    \n-

    Return an index set that describes which elements of this vector are owned by the current processor. Note that this index set does not include elements this vector may store locally as ghost elements but that are in fact owned by another processor. As a consequence, the index sets returned on different processors if this is a distributed vector will form disjoint sets that add up to the complete index set. Obviously, if a vector is created on only one processor, then the result would satisfy

    vec.locally_owned_elements() == complete_index_set (vec.size())
    \n+

    Return an index set that describes which elements of this vector are owned by the current processor. Note that this index set does not include elements this vector may store locally as ghost elements but that are in fact owned by another processor. As a consequence, the index sets returned on different processors if this is a distributed vector will form disjoint sets that add up to the complete index set. Obviously, if a vector is created on only one processor, then the result would satisfy

    vec.locally_owned_elements() == complete_index_set (vec.size())
    \n
    IndexSet complete_index_set(const IndexSet::size_type N)
    Definition index_set.h:1204
    \n
    \n
    \n
    \n \n

    ◆ has_ghost_elements()

    \n \n@@ -1584,15 +1584,15 @@\n
    \n
    \n \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n
    const IndexSet & PETScWrappers::VectorBase::ghost_elements const IndexSet & PETScWrappers::VectorBase::ghost_elements () const
    \n
    \n@@ -1636,17 +1636,17 @@\n
    \n
    \n \n \n \n \n@@ -1663,17 +1663,17 @@\n
    \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    reference PETScWrappers::VectorBase::operator() reference PETScWrappers::VectorBase::operator() (const size_type const size_type index)
    \n
    \n inherited
    \n \n \n \n@@ -1690,57 +1690,57 @@\n
    \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    PetscScalar PETScWrappers::VectorBase::operator() PetscScalar PETScWrappers::VectorBase::operator() (const size_type const size_type index) const
    \n
    \n inherited
    \n \n \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    reference PETScWrappers::VectorBase::operator[] reference PETScWrappers::VectorBase::operator[] (const size_type const size_type index)
    \n
    \n inherited
    \n
    \n

    Provide access to a given element, both read and write.

    \n-

    Exactly the same as operator().

    \n+

    Exactly the same as operator().

    \n \n
    \n
    \n \n

    ◆ operator[]() [2/2]

    \n \n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    PetscScalar PETScWrappers::VectorBase::operator[] PetscScalar PETScWrappers::VectorBase::operator[] (const size_type const size_type index) const
    \n
    \n inherited
    \n
    \n

    Provide read-only access to an element.

    \n-

    Exactly the same as operator().

    \n+

    Exactly the same as operator().

    \n \n
    \n
    \n \n

    ◆ set()

    \n \n
    \n@@ -1748,21 +1748,21 @@\n \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1787,15 +1787,15 @@\n
    void PETScWrappers::VectorBase::set (const std::vector< size_type > & const std::vector< size_type > & indices,
    const std::vector< PetscScalar > & const std::vector< PetscScalar > & values 
    )
    \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1808,15 +1808,15 @@\n
    void PETScWrappers::VectorBase::extract_subvector_to (const std::vector< size_type > & const std::vector< size_type > & indices,
    std::vector< PetscScalar > & values 
    \n
    \n inherited
    \n
    \n-

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. The indices of the elements to be read are stated in the first argument, the corresponding values are returned in the second.

    \n+

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. The indices of the elements to be read are stated in the first argument, the corresponding values are returned in the second.

    \n

    If the current vector is called v, then this function is the equivalent to the code

    for (unsigned int i=0; i<indices.size(); ++i)
    \n
    values[i] = v[indices[i]];
    \n
    Precondition
    The sizes of the indices and values arrays must be identical.
    \n \n
    \n \n \n@@ -1825,17 +1825,17 @@\n
    \n
    \n \n \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1860,57 +1860,57 @@\n \n \n

    ◆ extract_subvector_to() [3/3]

    \n \n
    \n
    \n \n+template<typename ForwardIterator , typename OutputIterator >
    \n
    virtual void PETScWrappers::VectorBase::extract_subvector_to virtual void PETScWrappers::VectorBase::extract_subvector_to (const ArrayView< const types::global_dof_index > & const ArrayView< const types::global_dof_index > & indices,
    ArrayView< PetscScalar > & elements 
    \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n
    void PETScWrappers::VectorBase::extract_subvector_to (const ForwardIterator const ForwardIterator indices_begin,
    const ForwardIterator const ForwardIterator indices_end,
    OutputIterator OutputIterator values_begin 
    ) const
    \n
    \n inherited
    \n
    \n-

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. In contrast to the previous function, this function obtains the indices of the elements by dereferencing all elements of the iterator range provided by the first two arguments, and puts the vector values into memory locations obtained by dereferencing a range of iterators starting at the location pointed to by the third argument.

    \n-

    If the current vector is called v, then this function is the equivalent to the code

    \n-\n-\n+

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. In contrast to the previous function, this function obtains the indices of the elements by dereferencing all elements of the iterator range provided by the first two arguments, and puts the vector values into memory locations obtained by dereferencing a range of iterators starting at the location pointed to by the third argument.

    \n+

    If the current vector is called v, then this function is the equivalent to the code

    ForwardIterator indices_p = indices_begin;
    \n+
    OutputIterator values_p = values_begin;
    \n+
    while (indices_p != indices_end)
    \n
    {
    \n-\n-\n-\n+
    *values_p = v[*indices_p];
    \n+
    ++indices_p;
    \n+
    ++values_p;
    \n
    }
    \n
    Precondition
    It must be possible to write into as many memory locations starting at values_begin as there are iterators between indices_begin and indices_end.
    \n \n
    \n
    \n \n

    ◆ add() [1/6]

    \n@@ -1920,21 +1920,21 @@\n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1959,21 +1959,21 @@\n
    void PETScWrappers::VectorBase::add (const std::vector< size_type > & const std::vector< size_type > & indices,
    const std::vector< PetscScalar > & const std::vector< PetscScalar > & values 
    )
    \n \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1998,27 +1998,27 @@\n
    void PETScWrappers::VectorBase::add (const std::vector< size_type > & const std::vector< size_type > & indices,
    const ::Vector< PetscScalar > & const ::Vector< PetscScalar > & values 
    )
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2043,15 +2043,15 @@\n
    void PETScWrappers::VectorBase::add (const size_type const size_type n_elements,
    const size_typeconst size_typeindices,
    const PetscScalar * const PetscScalar * values 
    )
    \n \n \n \n@@ -2072,21 +2072,21 @@\n
    \n \n \n \n \n- \n+ \n \n \n \n
    void PETScWrappers::VectorBase::add (const PetscScalar const PetscScalar s)
    \n
    \n inherited
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2111,33 +2111,33 @@\n
    void PETScWrappers::VectorBase::add (const PetscScalar const PetscScalar a,
    const VectorBaseconst VectorBaseV 
    )
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2160,17 +2160,17 @@\n
    \n
    \n
    void PETScWrappers::VectorBase::add (const PetscScalar const PetscScalar a,
    const VectorBaseconst VectorBaseV,
    const PetscScalar const PetscScalar b,
    const VectorBaseconst VectorBaseW 
    )
    \n \n \n \n@@ -2305,15 +2305,15 @@\n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    PetscScalar PETScWrappers::VectorBase::operator* PetscScalar PETScWrappers::VectorBase::operator* (const VectorBaseconst VectorBasevec) const
    \n
    \n inherited
    \n \n \n \n@@ -2362,27 +2362,27 @@\n
    \n \n \n \n \n- \n+ \n \n \n \n
    VectorBase::real_type PETScWrappers::VectorBase::lp_norm (const real_type const real_type p) const
    \n
    \n inherited
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2409,17 +2409,17 @@\n
    \n
    \n
    PetscScalar PETScWrappers::VectorBase::add_and_dot (const PetscScalar const PetscScalar a,
    const VectorBaseconst VectorBaseV,
    const VectorBaseconst VectorBaseW 
    )
    \n \n \n \n@@ -2438,17 +2438,17 @@\n
    \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    VectorBase & PETScWrappers::VectorBase::operator*= VectorBase & PETScWrappers::VectorBase::operator*= (const PetscScalar const PetscScalar factor)
    \n
    \n inherited
    \n \n \n \n@@ -2467,17 +2467,17 @@\n
    \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    VectorBase & PETScWrappers::VectorBase::operator/= VectorBase & PETScWrappers::VectorBase::operator/= (const PetscScalar const PetscScalar factor)
    \n
    \n inherited
    \n \n \n \n@@ -2496,17 +2496,17 @@\n
    \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    VectorBase & PETScWrappers::VectorBase::operator+= VectorBase & PETScWrappers::VectorBase::operator+= (const VectorBaseconst VectorBaseV)
    \n
    \n inherited
    \n \n \n \n@@ -2527,21 +2527,21 @@\n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    VectorBase & PETScWrappers::VectorBase::operator-= VectorBase & PETScWrappers::VectorBase::operator-= (const VectorBaseconst VectorBaseV)
    \n
    \n inherited
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2566,27 +2566,27 @@\n
    void PETScWrappers::VectorBase::sadd (const PetscScalar const PetscScalar s,
    const VectorBaseconst VectorBaseV 
    )
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2611,15 +2611,15 @@\n
    void PETScWrappers::VectorBase::sadd (const PetscScalar const PetscScalar s,
    const PetscScalar const PetscScalar a,
    const VectorBaseconst VectorBaseV 
    )
    \n \n \n \n@@ -2640,21 +2640,21 @@\n
    \n \n \n \n \n- \n+ \n \n \n \n
    void PETScWrappers::VectorBase::scale (const VectorBaseconst VectorBasescaling_factors)
    \n
    \n inherited
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2679,16 +2679,16 @@\n
    void PETScWrappers::VectorBase::equ (const PetscScalar const PetscScalar a,
    const VectorBaseconst VectorBaseV 
    )
    \n \n \n \n \n@@ -2702,29 +2702,29 @@\n \n \n

    ◆ save()

    \n \n
    \n
    \n
    \n-template<class Archive >
    \n+template<class Archive >
    \n
    \n \n \n \n \n- \n- \n+ \n+ \n \n \n
    void PETScWrappers::VectorBase::write_ascii (const PetscViewerFormat format = PETSC_VIEWER_DEFAULT)const PetscViewerFormat format = PETSC_VIEWER_DEFAULT)
    \n
    \n inherited
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2742,29 +2742,29 @@\n \n \n

    ◆ load()

    \n \n
    \n
    \n
    \n-template<class Archive >
    \n+template<class Archive >
    \n
    void PETScWrappers::VectorBase::save (ArchiveArchive & ar,
    const unsigned int const unsigned int version 
    ) const
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2781,29 +2781,29 @@\n \n \n

    ◆ serialize()

    \n \n
    \n
    \n
    \n-template<class Archive >
    \n+template<class Archive >
    \n
    void PETScWrappers::VectorBase::load (ArchiveArchive & ar,
    const unsigned int const unsigned int version 
    )
    \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2854,15 +2854,15 @@\n
    \n
    \n
    void PETScWrappers::VectorBase::serialize (ArchiveArchive & archive,
    const unsigned int const unsigned int version 
    )
    \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n
    PETScWrappers::VectorBase::operator const Vec & PETScWrappers::VectorBase::operator const Vec & () const
    \n
    \n@@ -2966,33 +2966,33 @@\n \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -3146,15 +3146,15 @@\n \n \n

    ◆ list_subscribers() [1/2]

    \n \n
    \n
    \n
    \n-template<typename StreamType >
    \n+template<typename StreamType >
    \n
    void PETScWrappers::VectorBase::do_set_add_operation (const size_type const size_type n_elements,
    const size_typeconst size_typeindices,
    const PetscScalar * const PetscScalar * values,
    const bool const bool add_values 
    )
    \n \n \n \n \n \n
    \n \n \n \n \n@@ -3498,15 +3498,15 @@\n
    \n
    \n
    void Subscriptor::list_subscribers (
    \n \n \n \n \n
    \n \n \n- \n+ \n \n
    const std::type_info* Subscriptor::object_infoconst std::type_info* Subscriptor::object_info
    \n
    \n mutableprivateinherited
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -17,289 +17,289 @@\n _\bL_\bi_\bn_\be_\ba_\br_\b _\ba_\bl_\bg_\be_\bb_\br_\ba_\b _\bc_\bl_\ba_\bs_\bs_\be_\bs \u00bb _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs | _\bL_\bi_\bn_\be_\ba_\br_\b _\ba_\bl_\bg_\be_\bb_\br_\ba_\b _\bc_\bl_\ba_\bs_\bs_\be_\bs \u00bb _\bV_\be_\bc_\bt_\bo_\br\n _\bc_\bl_\ba_\bs_\bs_\be_\bs\n #include <_\bd_\be_\ba_\bl_\b._\bI_\bI_\b/_\bl_\ba_\bc_\b/_\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh>\n Inheritance diagram for PETScWrappers::MPI::Vector:\n [Inheritance graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n P\bPu\bub\bbl\bli\bic\bc T\bTy\byp\bpe\bes\bs\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n+using\u00a0 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = PetscScalar\n+using\u00a0 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = PetscScalar\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = PetscReal\n+using\u00a0 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = PetscReal\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n+using\u00a0 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bc_\bo_\bn_\bs_\bt internal::VectorReference\n+using\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const internal::VectorReference\n \u00a0\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n \u00a0 _\bV_\be_\bc_\bt_\bo_\br ()\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator, _\bc_\bo_\bn_\bs_\bt\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n, _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator, const\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n, const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be)\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number >\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator, _\bc_\bo_\bn_\bs_\bt\n- _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number > &v, _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+template\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator, const\n+ _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number > &v, const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be)\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, _\bc_\bo_\bn_\bs_\bt\n- _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost, _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, const\n+ _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n communicator)\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, _\bc_\bo_\bn_\bs_\bt\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, const\n _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator)\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &v)\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bV_\be_\bc_\bt_\bo_\br &v)\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\bc_\bl_\be_\ba_\br () _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ virtual void\u00a0 _\bc_\bl_\be_\ba_\br () override\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &v)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const _\bV_\be_\bc_\bt_\bo_\br &v)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt PetscScalar s)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const PetscScalar s)\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< number > &v)\n+template\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< number > &v)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator, _\bc_\bo_\bn_\bs_\bt\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be N, _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n- _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs=_\bf_\ba_\bl_\bs_\be)\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator, const\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be N, const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+ _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be, const _\bb_\bo_\bo_\bl\n+ omit_zeroing_entries=false)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &v, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs=_\bf_\ba_\bl_\bs_\be)\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bV_\be_\bc_\bt_\bo_\br &v, const _\bb_\bo_\bo_\bl\n+ omit_zeroing_entries=false)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, _\bc_\bo_\bn_\bs_\bt\n- _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost, _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, const\n+ _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n communicator)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, const\n _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt std::shared_ptr< _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const std::shared_ptr< const\n _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br > &partitioner,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl _\bm_\ba_\bk_\be_\b__\bg_\bh_\bo_\bs_\bt_\be_\bd=_\bt_\br_\bu_\be)\n+ const _\bb_\bo_\bo_\bl make_ghosted=true)\n \u00a0\n- void\u00a0 _\bp_\br_\bi_\bn_\bt (std::ostream &out, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n- precision=3, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl scientific=_\bt_\br_\bu_\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl _\ba_\bc_\br_\bo_\bs_\bs=_\bt_\br_\bu_\be) _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bp_\br_\bi_\bn_\bt (std::ostream &out, const unsigned _\bi_\bn_\bt\n+ precision=3, const _\bb_\bo_\bo_\bl scientific=true,\n+ const _\bb_\bo_\bo_\bl across=true) const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo () const\n \u00a0\n \u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be ()\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be (_\bc_\bo_\bn_\bs_\bt Vec &v)\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be (const Vec &v)\n \u00a0\n void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (Vec v)\n \u00a0\n- void\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n+ void\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs (const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n operation)\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b= (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b!_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b!_\b= (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) const\n \u00a0\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bs_\bi_\bz_\be () _\bc_\bo_\bn_\bs_\bt _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bs_\bi_\bz_\be () const override\n \u00a0\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be () _\bc_\bo_\bn_\bs_\bt\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be () const\n \u00a0\n-std::pair< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\u00a0 _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be () _\bc_\bo_\bn_\bs_\bt\n+std::pair< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\u00a0 _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be () const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bi_\bn_\b__\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bi_\bn_\b__\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 _\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 _\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n- void\u00a0 _\bu_\bp_\bd_\ba_\bt_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bv_\ba_\bl_\bu_\be_\bs () _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bu_\bp_\bd_\ba_\bt_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bv_\ba_\bl_\bu_\be_\bs () const\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n \u00a0\n- PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n \u00a0\n- PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- void\u00a0 _\bs_\be_\bt (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt std::vector< PetscScalar >\n+ void\u00a0 _\bs_\be_\bt (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const std::vector< PetscScalar >\n &values)\n \u00a0\n- void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt std::vector<\n+ void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const std::vector<\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &indices, std::vector<\n- PetscScalar > &values) _\bc_\bo_\bn_\bs_\bt\n+ PetscScalar > &values) const\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< _\bc_\bo_\bn_\bs_\bt\n+ virtual void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< const\n _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx > &indices,\n- _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< PetscScalar > &elements) _\bc_\bo_\bn_\bs_\bt\n- _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< PetscScalar > &elements) const\n+ override\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n- void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\n- _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn, _\bc_\bo_\bn_\bs_\bt _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\n- _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\be_\bn_\bd, _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bv_\ba_\bl_\bu_\be_\bs_\b__\bb_\be_\bg_\bi_\bn)\n- _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const ForwardIterator\n+ indices_begin, const ForwardIterator\n+ indices_end, OutputIterator values_begin)\n+ const\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt std::vector< PetscScalar >\n+ void\u00a0 _\ba_\bd_\bd (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const std::vector< PetscScalar >\n &values)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< PetscScalar >\n+ void\u00a0 _\ba_\bd_\bd (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< PetscScalar >\n &values)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, _\bc_\bo_\bn_\bs_\bt\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, _\bc_\bo_\bn_\bs_\bt PetscScalar\n+ void\u00a0 _\ba_\bd_\bd (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, const\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, const PetscScalar\n *values)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt PetscScalar s)\n+ void\u00a0 _\ba_\bd_\bd (const PetscScalar s)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt PetscScalar a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n+ void\u00a0 _\ba_\bd_\bd (const PetscScalar a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n &V)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt PetscScalar a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n- &V, _\bc_\bo_\bn_\bs_\bt PetscScalar b, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n+ void\u00a0 _\ba_\bd_\bd (const PetscScalar a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n+ &V, const PetscScalar b, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n &W)\n \u00a0\n- PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b* (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &_\bv_\be_\bc) _\bc_\bo_\bn_\bs_\bt\n+ PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b* (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &vec) const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bn_\bo_\br_\bm_\b__\bs_\bq_\br () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bn_\bo_\br_\bm_\b__\bs_\bq_\br () const\n \u00a0\n- PetscScalar\u00a0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be () _\bc_\bo_\bn_\bs_\bt\n+ PetscScalar\u00a0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b1_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b1_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b2_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b2_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bp_\b__\bn_\bo_\br_\bm (_\bc_\bo_\bn_\bs_\bt _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be p) _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bp_\b__\bn_\bo_\br_\bm (const _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be p) const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- PetscScalar\u00a0 _\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt (_\bc_\bo_\bn_\bs_\bt PetscScalar a, _\bc_\bo_\bn_\bs_\bt\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &W)\n+ PetscScalar\u00a0 _\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt (const PetscScalar a, const\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &W)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b= (_\bc_\bo_\bn_\bs_\bt PetscScalar factor)\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b= (const PetscScalar factor)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b/_\b= (_\bc_\bo_\bn_\bs_\bt PetscScalar factor)\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b/_\b= (const PetscScalar factor)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b= (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b= (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n \u00a0\n- void\u00a0 _\bs_\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt PetscScalar s, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n+ void\u00a0 _\bs_\ba_\bd_\bd (const PetscScalar s, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n &V)\n \u00a0\n- void\u00a0 _\bs_\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt PetscScalar s, _\bc_\bo_\bn_\bs_\bt PetscScalar\n- a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n+ void\u00a0 _\bs_\ba_\bd_\bd (const PetscScalar s, const PetscScalar\n+ a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n \u00a0\n- void\u00a0 _\bs_\bc_\ba_\bl_\be (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &_\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs)\n+ void\u00a0 _\bs_\bc_\ba_\bl_\be (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &scaling_factors)\n \u00a0\n- void\u00a0 _\be_\bq_\bu (_\bc_\bo_\bn_\bs_\bt PetscScalar a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n+ void\u00a0 _\be_\bq_\bu (const PetscScalar a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n &V)\n \u00a0\n- void\u00a0 _\bw_\br_\bi_\bt_\be_\b__\ba_\bs_\bc_\bi_\bi (_\bc_\bo_\bn_\bs_\bt _\bP_\be_\bt_\bs_\bc_\bV_\bi_\be_\bw_\be_\br_\bF_\bo_\br_\bm_\ba_\bt\n- _\bf_\bo_\br_\bm_\ba_\bt=_\bP_\bE_\bT_\bS_\bC_\b__\bV_\bI_\bE_\bW_\bE_\bR_\b__\bD_\bE_\bF_\bA_\bU_\bL_\bT)\n+ void\u00a0 _\bw_\br_\bi_\bt_\be_\b__\ba_\bs_\bc_\bi_\bi (const PetscViewerFormat\n+ format=PETSC_VIEWER_DEFAULT)\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n- void\u00a0 _\bs_\ba_\bv_\be (_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n- version) _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bs_\ba_\bv_\be (Archive &ar, const unsigned _\bi_\bn_\bt\n+ version) const\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n- void\u00a0 _\bl_\bo_\ba_\bd (_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n+template\n+ void\u00a0 _\bl_\bo_\ba_\bd (Archive &ar, const unsigned _\bi_\bn_\bt\n version)\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n- void\u00a0 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be (_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br_\bc_\bh_\bi_\bv_\be, _\bc_\bo_\bn_\bs_\bt unsigned\n+template\n+ void\u00a0 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be (Archive &archive, const unsigned\n _\bi_\bn_\bt version)\n \u00a0\n- void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+ void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) noexcept\n \u00a0\n- \u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b _\bc_\bo_\bn_\bs_\bt_\b _\bV_\be_\bc_\b _\b& () _\bc_\bo_\bn_\bs_\bt\n+ \u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b _\bc_\bo_\bn_\bs_\bt_\b _\bV_\be_\bc_\b _\b& () const\n \u00a0\n Vec &\u00a0 _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br ()\n \u00a0\n- std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () _\bc_\bo_\bn_\bs_\bt\n+ std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () const\n \u00a0\n- _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br () _\bc_\bo_\bn_\bs_\bt\n+ _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br () const\n \u00a0\n Subscriptor functionality\n Classes derived from _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br provide a facility to subscribe to this\n object. This is mostly used by the _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br class.\n- void\u00a0 _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *_\bc_\bo_\bn_\bs_\bt\n- _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by, _\bc_\bo_\bn_\bs_\bt std::string &_\bi_\bd_\be_\bn_\bt_\bi_\bf_\bi_\be_\br=\"\")\n- _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *const\n+ validity, const std::string &identifier=\"\")\n+ const\n \u00a0\n- void\u00a0 _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *_\bc_\bo_\bn_\bs_\bt\n- _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by, _\bc_\bo_\bn_\bs_\bt std::string &_\bi_\bd_\be_\bn_\bt_\bi_\bf_\bi_\be_\br=\"\")\n- _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *const\n+ validity, const std::string &identifier=\"\")\n+ const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn_\bs () const\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n- void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs (_\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be &stream) _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs (StreamType &stream) const\n \u00a0\n- void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () const\n \u00a0\n S\bSt\bta\bat\bti\bic\bc P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bI_\bn_\bU_\bs_\be (_\bi_\bn_\bt _\ba_\br_\bg_\b1, std::string _\ba_\br_\bg_\b2, std::string\n- _\ba_\br_\bg_\b3)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bI_\bn_\bU_\bs_\be (_\bi_\bn_\bt arg1, std::string arg2, std::string\n+ arg3)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bN_\bo_\bS_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br (std::string _\ba_\br_\bg_\b1, std::string _\ba_\br_\bg_\b2)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bN_\bo_\bS_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br (std::string arg1, std::string arg2)\n \u00a0\n P\bPr\bro\bot\bte\bec\bct\bte\bed\bd M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-_\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm comm, _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n, _\bc_\bo_\bn_\bs_\bt\n+virtual void\u00a0 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br (const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm comm, const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n, const\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be)\n \u00a0\n-_\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm comm, _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n, _\bc_\bo_\bn_\bs_\bt\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be, _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bg_\bh_\bo_\bs_\bt_\bn_\bo_\bd_\be_\bs)\n+virtual void\u00a0 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br (const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm comm, const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n, const\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be, const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghostnodes)\n \u00a0\n- void\u00a0 _\bd_\bo_\b__\bs_\be_\bt_\b__\ba_\bd_\bd_\b__\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n- *indices, _\bc_\bo_\bn_\bs_\bt PetscScalar *values, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl _\ba_\bd_\bd_\b__\bv_\ba_\bl_\bu_\be_\bs)\n+ void\u00a0 _\bd_\bo_\b__\bs_\be_\bt_\b__\ba_\bd_\bd_\b__\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+ *indices, const PetscScalar *values, const _\bb_\bo_\bo_\bl add_values)\n \u00a0\n void\u00a0 _\bd_\be_\bt_\be_\br_\bm_\bi_\bn_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs ()\n \u00a0\n P\bPr\bro\bot\bte\bec\bct\bte\bed\bd A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n Vec\u00a0 _\bv_\be_\bc_\bt_\bo_\br\n \u00a0\n _\bb_\bo_\bo_\bl\u00a0 _\bg_\bh_\bo_\bs_\bt_\be_\bd\n \u00a0\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs\n \u00a0\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be T\bTy\byp\bpe\bes\bs\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n+using\u00a0 _\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)::iterator\n+using\u00a0 _\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)::iterator\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-void\u00a0 _\bc_\bh_\be_\bc_\bk_\b__\bn_\bo_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+void\u00a0 _\bc_\bh_\be_\bc_\bk_\b__\bn_\bo_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () const noexcept\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n std::atomic< unsigned _\bi_\bn_\bt >\u00a0 _\bc_\bo_\bu_\bn_\bt_\be_\br\n \u00a0\n std::map< std::string, unsigned _\bi_\bn_\bt >\u00a0 _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp\n \u00a0\n std::vector< std::atomic< _\bb_\bo_\bo_\bl > * >\u00a0 _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by_\b__\bp_\bo_\bi_\bn_\bt_\be_\br_\bs\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt std::type_info *\u00a0 _\bo_\bb_\bj_\be_\bc_\bt_\b__\bi_\bn_\bf_\bo\n+ const std::type_info *\u00a0 _\bo_\bb_\bj_\be_\bc_\bt_\b__\bi_\bn_\bf_\bo\n \u00a0\n S\bSt\bta\bat\bti\bic\bc P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n-_\bs_\bt_\ba_\bt_\bi_\bc std::mutex\u00a0 _\bm_\bu_\bt_\be_\bx\n+static std::mutex\u00a0 _\bm_\bu_\bt_\be_\bx\n \u00a0\n R\bRe\bel\bla\bat\bte\bed\bd S\bSy\bym\bmb\bbo\bol\bls\bs\n (Note that these are not member symbols.)\n-void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br &_\bu, _\bV_\be_\bc_\bt_\bo_\br &v)\n+void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br &u, _\bV_\be_\bc_\bt_\bo_\br &v)\n \u00a0\n-void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &_\bu, _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &u, _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) noexcept\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n Implementation of a parallel vector class based on PETSC and using _\bM_\bP_\bI\n communication to synchronize distributed operations. All the functionality is\n actually in the base class, except for the calls to generate a parallel vector.\n This is possible since PETSc only works on an abstract vector type and\n internally distributes to functions that do the actual work depending on the\n@@ -326,20 +326,20 @@\n very hard to figure out, unless you are well-acquainted with the communication\n model of _\bM_\bP_\bI, and know which functions may generate _\bM_\bP_\bI messages.\n One particular case, where an _\bM_\bP_\bI message may be generated unexpectedly is\n discussed below.\n *\b**\b**\b**\b* A\bAc\bcc\bce\bes\bss\bsi\bin\bng\bg i\bin\bnd\bdi\biv\bvi\bid\bdu\bua\bal\bl e\bel\ble\bem\bme\ben\bnt\bts\bs o\bof\bf a\ba v\bve\bec\bct\bto\bor\br *\b**\b**\b**\b*\n PETSc does allow read access to individual elements of a vector, but in the\n distributed case only to elements that are stored locally. We implement this\n-through calls like d=_\bv_\be_\bc_\b(_\bi_\b). However, if you access an element outside the\n+through calls like d=vec(i). However, if you access an element outside the\n locally stored range, an exception is generated.\n In contrast to read access, PETSc (and the respective deal.II wrapper classes)\n allow to write (or add) to individual elements of vectors, even if they are\n-stored on a different process. You can do this writing, for example, _\bv_\be_\bc_\b(_\bi_\b)=d\n-or _\bv_\be_\bc_\b(_\bi_\b)+=d, or similar operations. There is one catch, however, that may lead\n+stored on a different process. You can do this writing, for example, vec(i)=d\n+or vec(i)+=d, or similar operations. There is one catch, however, that may lead\n to very confusing error messages: PETSc requires application programs to call\n the _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\b(_\b) function when they switch from adding, to elements to writing to\n elements. The reasoning is that all processes might accumulate addition\n operations to elements, even if multiple processes write to the same elements.\n By the time we call _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\b(_\b) the next time, all these additions are executed.\n However, if one process adds to an element, and another overwrites to it, the\n order of execution would yield non-deterministic behavior if we don't make sure\n@@ -352,15 +352,15 @@\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br _\bv_\be_\bc_\bt_\bo_\br;\n ...\n // do some write operations on the vector\n for (unsigned int i=0; i<_\bv_\be_\bc_\bt_\bo_\br.size(); ++i)\n _\bv_\be_\bc_\bt_\bo_\br(i) = i;\n // do some additions to vector elements, but only for some elements\n for (unsigned int i=0; i<_\bv_\be_\bc_\bt_\bo_\br.size(); ++i)\n-if (_\bs_\bo_\bm_\be_\b__\bc_\bo_\bn_\bd_\bi_\bt_\bi_\bo_\bn(i) == true)\n+if (some_condition(i) == true)\n _\bv_\be_\bc_\bt_\bo_\br(i) += 1;\n // do another collective operation\n const double norm = _\bv_\be_\bc_\bt_\bo_\br.l2_norm();\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b1_\b5_\b8\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bv_\be_\bc_\bt_\bo_\br\n Vec vector\n@@ -380,80 +380,80 @@\n _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\b(_\b), or making sure that all processes do the same type of operations at\n the same time, for example by placing zero additions if necessary.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n Definition at line _\b1_\b5_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br T\bTy\byp\bpe\bed\bde\bef\bf D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n+using _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n Declare type for container size.\n Definition at line _\b1_\b6_\b3 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = PetscScalar inherited\n+using _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = PetscScalar inherited\n Declare some of the standard types used in all containers. These types parallel\n those in the C++ standard libraries vector<...> class.\n Definition at line _\b2_\b6_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bea\bal\bl_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = PetscReal inherited\n+using _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = PetscReal inherited\n Definition at line _\b2_\b6_\b1 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal:: inherited\n+using _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal:: inherited\n VectorReference\n Definition at line _\b2_\b6_\b3 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bon\bns\bst\bt_\b_r\bre\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bc_\bo_\bn_\bs_\bt internal:: inherited\n+using _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const internal:: inherited\n VectorReference\n Definition at line _\b2_\b6_\b4 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bap\bp_\b_v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n+using _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n The data type used in _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp.\n Definition at line _\b2_\b2_\b9 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bap\bp_\b_i\bit\bte\ber\bra\bat\bto\bor\br *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp):: privateinherited\n+using _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp):: privateinherited\n iterator\n The iterator type used in _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp.\n Definition at line _\b2_\b3_\b4 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* C\bCo\bon\bns\bst\btr\bru\buc\bct\bto\bor\br &\b& D\bDe\bes\bst\btr\bru\buc\bct\bto\bor\br D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[1\b1/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( )\n Default constructor. Initialize the vector as empty.\n Definition at line _\b3_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[2\b2/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br,\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn, explicit\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be\u00a0\n+_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br,\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn, explicit\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be\u00a0\n )\n Constructor. Set dimension to n and initialize all elements with zero.\n * locally_owned_size denotes the size of the chunk that shall be stored on\n the present process.\n * communicator denotes the _\bM_\bP_\bI communicator over which the different parts\n of the vector shall communicate\n The constructor is made explicit to avoid accidents like this: v=0;.\n Presumably, the user wants to set every element of the vector to zero, but\n instead, what happens is this call: v=_\bV_\be_\bc_\bt_\bo_\br(0);, i.e. the vector is\n replaced by one of length zero.\n Definition at line _\b4_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[3\b3/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number >\n-PETScWrappers::MPI:: ( _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br,\n+template\n+PETScWrappers::MPI:: ( const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br,\n Vector::Vector\n- _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number > &\u00a0 v\bv, explicit\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be\u00a0\n+ const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number > &\u00a0 v\bv, explicit\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be\u00a0\n )\n Copy-constructor from deal.II vectors. Sets the dimension to that of the given\n vector, and copies all elements.\n * locally_owned_size denotes the size of the chunk that shall be stored on\n the present process.\n * communicator denotes the _\bM_\bP_\bI communicator over which the different parts\n of the vector shall communicate\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[4\b4/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bl,\n- _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 g\bgh\bho\bos\bst\bt,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0\n+_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bl,\n+ const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 g\bgh\bho\bos\bst\bt,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0\n )\n Construct a new parallel ghosted PETSc vector from IndexSets.\n Note that local must be ascending and 1:1, see _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:\n _\bi_\bs_\b__\ba_\bs_\bc_\be_\bn_\bd_\bi_\bn_\bg_\b__\ba_\bn_\bd_\b__\bo_\bn_\be_\b__\bt_\bo_\b__\bo_\bn_\be_\b(_\b). In particular, the DoFs in local need to be\n contiguous, meaning you can only create vectors from a _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br with several\n finite element components if they are not reordered by component (use a\n PETScWrappers::BlockVector otherwise). The global size of the vector is\n@@ -466,38 +466,38 @@\n Note\n This operation always creates a ghosted vector, which is considered read-\n only.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n Definition at line _\b5_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[5\b5/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bl,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0 explicit\n+_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bl,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0 explicit\n )\n Construct a new parallel PETSc vector without ghost elements from an _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt.\n Note that local must be ascending and 1:1, see _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:\n _\bi_\bs_\b__\ba_\bs_\bc_\be_\bn_\bd_\bi_\bn_\bg_\b__\ba_\bn_\bd_\b__\bo_\bn_\be_\b__\bt_\bo_\b__\bo_\bn_\be_\b(_\b). In particular, the DoFs in local need to be\n contiguous, meaning you can only create vectors from a _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br with several\n finite element components if they are not reordered by component (use a\n PETScWrappers::BlockVector otherwise).\n Definition at line _\b9_\b3 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[6\b6/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv )\n+_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv )\n Copy constructor.\n Definition at line _\b7_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bn D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bcl\ble\bea\bar\br(\b()\b) *\b**\b**\b**\b**\b*\n void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( ) overridevirtual\n clear\n Release all memory and return to a state just like after having called the\n default constructor.\n Reimplemented from _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be.\n Definition at line _\b1_\b4_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv )\n+_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >::operator= ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv )\n Copy the given vector. Resize the present vector if necessary. Also take over\n the _\bM_\bP_\bI communicator of v.\n The semantics of this operator are complex. If the two vectors have the same\n size, and if either the left or right hand side vector of the assignment (i.e.,\n either the input vector on the right hand side, or the calling vector to the\n left of the assignment operator) currently has ghost elements, then the left\n hand side vector will also have ghost values and will consequently be a read-\n@@ -512,89 +512,89 @@\n simply a copy operation in the usual sense: In that case, if the right hand\n side has no ghost elements (i.e., is a completely distributed vector), then the\n left hand side will have no ghost elements either. And if the right hand side\n has ghost elements (and is consequently read-only), then the left hand side\n will have these same properties after the operation.\n Definition at line _\b1_\b0_\b3 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br= ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 s\bs )\n+_\bV_\be_\bc_\bt_\bo_\br & PETScWrappers::MPI::Vector::operator= ( const PetscScalar\u00a0 s\bs )\n Set all components of the vector to the given number s. Simply pass this down\n to the base class, but we still need to declare this function to make the\n example given in the discussion about making the constructor explicit work.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be number >\n-_\bV_\be_\bc_\bt_\bo_\br & _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< number > &\u00a0 v\bv )\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br=\n+template\n+_\bV_\be_\bc_\bt_\bo_\br & PETScWrappers::MPI::Vector:: ( const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< number > &\u00a0 v\bv )\n+operator=\n Copy the values of a deal.II vector (as opposed to those of the PETSc vector\n wrapper class) into this object.\n Contrary to the case of sequential vectors, this operators requires that the\n present vector already has the correct size, since we need to have a partition\n and a communicator present which we otherwise can't get from the source vector.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[1\b1/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br,\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 N\bN,\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = _\bf_\ba_\bl_\bs_\be\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br,\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 N\bN,\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be,\n+ const _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = false\u00a0\n )\n Change the dimension of the vector to N. It is unspecified how resizing the\n vector affects the memory allocation of this object; i.e., it is not guaranteed\n that resizing it to a smaller size actually also reduces memory consumption, or\n if for efficiency the same amount of memory is used\n locally_owned_size denotes how many of the N values shall be stored locally on\n the present process. for less data.\n communicator denotes the _\bM_\bP_\bI communicator henceforth to be used for this\n vector.\n If omit_zeroing_entries is false, the vector is filled by zeros. Otherwise, the\n elements are left an unspecified state.\n Definition at line _\b1_\b5_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[2\b2/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = _\bf_\ba_\bl_\bs_\be\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv,\n+ const _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = false\u00a0\n )\n Change the dimension to that of the vector v, and also take over the\n partitioning into local sizes as well as the _\bM_\bP_\bI communicator. The same applies\n as for the other reinit function.\n The elements of v are not copied, i.e. this function is the same as calling\n reinit(v.size(), v.locally_owned_size(), omit_zeroing_entries).\n Definition at line _\b1_\b9_\b6 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[3\b3/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bl,\n- _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 g\bgh\bho\bos\bst\bt,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bl,\n+ const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 g\bgh\bho\bos\bst\bt,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0\n )\n Reinit as a vector with ghost elements. See the constructor with same signature\n for more details.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n Definition at line _\b2_\b1_\b9 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[4\b4/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bl,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bl,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br\u00a0\n )\n Reinit as a vector without ghost elements. See constructor with same signature\n for more details.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n Definition at line _\b2_\b3_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[5\b5/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >:: _\bc_\bo_\bn_\bs_\bt std::shared_ptr< _\bc_\bo_\bn_\bs_\bt\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >:: const std::shared_ptr< const\n reinit ( _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br > p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br,\n &\u00a0\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 m\bma\bak\bke\be_\b_g\bgh\bho\bos\bst\bte\bed\bd = _\bt_\br_\bu_\be\u00a0\n+ const _\bb_\bo_\bo_\bl\u00a0 m\bma\bak\bke\be_\b_g\bgh\bho\bos\bst\bte\bed\bd = true\u00a0\n )\n Initialize the vector given to the parallel partitioning described in\n partitioner.\n You can decide whether your vector will contain ghost elements with\n make_ghosted.\n Definition at line _\b2_\b4_\b6 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0p\bpr\bri\bin\bnt\bt(\b()\b) *\b**\b**\b**\b**\b*\n void _\bV_\be_\bc_\bt_\bo_\br< Number >::print ( std::ostream &\u00a0 o\bou\but\bt,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 p\bpr\bre\bec\bci\bis\bsi\bio\bon\bn = 3,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 s\bsc\bci\bie\ben\bnt\bti\bif\bfi\bic\bc = _\bt_\br_\bu_\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 a\bac\bcr\bro\bos\bss\bs = _\bt_\br_\bu_\be\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 p\bpr\bre\bec\bci\bis\bsi\bio\bon\bn = 3,\n+ const _\bb_\bo_\bo_\bl\u00a0 s\bsc\bci\bie\ben\bnt\bti\bif\bfi\bic\bc = true,\n+ const _\bb_\bo_\bo_\bl\u00a0 a\bac\bcr\bro\bos\bss\bs = true\u00a0\n ) const\n Print to a stream. precision denotes the desired precision with which values\n shall be printed, scientific whether scientific notation shall be used. If\n across is true then the vector is printed in a line, while if false then the\n elements are printed on a separate line each.\n Note\n This function overloads the one in the base class to ensure that the\n@@ -607,72 +607,72 @@\n _\bc_\bo_\bl_\bl_\be_\bc_\bt_\bi_\bv_\be_\b _\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn. This function is expensive, because potentially all\n elements have to be checked.\n Note\n This function overloads the one in the base class to make this a\n _\bc_\bo_\bl_\bl_\be_\bc_\bt_\bi_\bv_\be_\b _\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn.\n Definition at line _\b3_\b4_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bcr\bre\bea\bat\bte\be_\b_v\bve\bec\bct\bto\bor\br(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bm,\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bm,\n create_vector\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn, protectedvirtual\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be\u00a0\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn, protectedvirtual\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be\u00a0\n )\n Create a vector of length n. For this class, we create a parallel vector. n\n denotes the total size of the vector to be created. locally_owned_size denotes\n how many of these elements shall be stored locally.\n Definition at line _\b2_\b6_\b9 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bcr\bre\bea\bat\bte\be_\b_v\bve\bec\bct\bto\bor\br(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number ( _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bm,\n+void _\bV_\be_\bc_\bt_\bo_\br< Number ( const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bm,\n >::create_vector\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn, protectedvirtual\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be,\n- _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 g\bgh\bho\bos\bst\btn\bno\bod\bde\bes\bs\u00a0\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn, protectedvirtual\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_s\bsi\biz\bze\be,\n+ const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 g\bgh\bho\bos\bst\btn\bno\bod\bde\bes\bs\u00a0\n )\n Create a vector of global length n, local size locally_owned_size and with the\n specified ghost indices. Note that you need to call _\bu_\bp_\bd_\ba_\bt_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bv_\ba_\bl_\bu_\be_\bs_\b(_\b)\n before accessing those.\n Definition at line _\b2_\b8_\b9 of file _\bp_\be_\bt_\bs_\bc_\b__\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\brB\bBa\bas\bse\be(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n PETScWrappers::VectorBase::VectorBase ( )\n Import _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be constructors, including from a PETSc Vec object.\n Definition at line _\b2_\b7_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\brB\bBa\bas\bse\be(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-PETScWrappers::VectorBase::VectorBase ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv )\n+PETScWrappers::VectorBase::VectorBase ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv )\n Import _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be constructors, including from a PETSc Vec object.\n Definition at line _\b2_\b7_\b6 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\brB\bBa\bas\bse\be(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt Vec &\u00a0 v\bv ) explicit\n+PETScWrappers::VectorBase:: ( const Vec &\u00a0 v\bv ) explicit\n VectorBase\n Import _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be constructors, including from a PETSc Vec object.\n Definition at line _\b2_\b8_\b2 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[6\b6/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n void PETScWrappers::VectorBase::reinit ( Vec\u00a0 v\bv )\n This method associates the PETSc Vec to the instance of the class. This is\n particularly useful when performing PETSc to Deal.II operations since it allows\n to reuse the Deal.II _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be and the PETSc Vec without incurring in memory\n copies.\n Definition at line _\b3_\b3_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bom\bmp\bpr\bre\bes\bss\bs(\b()\b) *\b**\b**\b**\b**\b*\n-void PETScWrappers:: ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b: o\bop\bpe\ber\bra\bat\bti\bio\bon\bn ) inherited\n+void PETScWrappers:: ( const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b: o\bop\bpe\ber\bra\bat\bti\bio\bon\bn ) inherited\n VectorBase::compress _\bv_\ba_\bl_\bu_\be_\bs\u00a0\n Compress the underlying representation of the PETSc object, i.e. flush the\n buffers of the vector object if it has any. This function is necessary after\n writing into a vector element-by-element and before anything else can be done\n on it.\n See _\bC_\bo_\bm_\bp_\br_\be_\bs_\bs_\bi_\bn_\bg_\b _\bd_\bi_\bs_\bt_\br_\bi_\bb_\bu_\bt_\be_\bd_\b _\bo_\bb_\bj_\be_\bc_\bt_\bs for more information.\n Definition at line _\b5_\b4_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bb_\bo_\bo_\bl _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv ) const inherited\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br==\n+_\bb_\bo_\bo_\bl PETScWrappers::VectorBase:: ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv ) const inherited\n+operator==\n Test for equality. This function assumes that the present vector and the one to\n compare with have the same size already, since comparing vectors of different\n sizes makes not much sense anyway.\n Definition at line _\b3_\b9_\b9 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bb_\bo_\bo_\bl PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv ) const inherited\n+_\bb_\bo_\bo_\bl PETScWrappers::VectorBase:: ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv ) const inherited\n operator!=\n Test for inequality. This function assumes that the present vector and the one\n to compare with have the same size already, since comparing vectors of\n different sizes makes not much sense anyway.\n Definition at line _\b4_\b1_\b3 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsi\biz\bze\be(\b()\b) *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be PETScWrappers:: ( ) const overridevirtualinherited\n@@ -695,174 +695,174 @@\n Return a pair of indices indicating which elements of this vector are stored\n locally. The first number is the index of the first element stored, the second\n the index of the one past the last one that is stored locally. If this is a\n sequential vector, then the result will be the pair (0,N), otherwise it will be\n a pair (i,i+n), where n=_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be_\b(_\b).\n Definition at line _\b4_\b5_\b1 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bn_\b_l\blo\boc\bca\bal\bl_\b_r\bra\ban\bng\bge\be(\b()\b) *\b**\b**\b**\b**\b*\n-_\bb_\bo_\bo_\bl PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const inherited\n+_\bb_\bo_\bo_\bl PETScWrappers::VectorBase:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const inherited\n in_local_range\n Return whether index is in the local range or not, see also _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be_\b(_\b).\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt PETScWrappers::VectorBase::locally_owned_elements ( ) const inherited\n Return an index set that describes which elements of this vector are owned by\n the current processor. Note that this index set does not include elements this\n vector may store locally as ghost elements but that are in fact owned by\n another processor. As a consequence, the index sets returned on different\n processors if this is a distributed vector will form disjoint sets that add up\n to the complete index set. Obviously, if a vector is created on only one\n processor, then the result would satisfy\n-_\bv_\be_\bc.locally_owned_elements() == _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt (_\bv_\be_\bc.size())\n+vec.locally_owned_elements() == _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt (vec.size())\n _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt\n IndexSet complete_index_set(const IndexSet::size_type N)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b2_\b0_\b4\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0h\bha\bas\bs_\b_g\bgh\bho\bos\bst\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n _\bb_\bo_\bo_\bl PETScWrappers::VectorBase::has_ghost_elements ( ) const inherited\n Return if the vector contains ghost elements.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0g\bgh\bho\bos\bst\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n-_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt & PETScWrappers::VectorBase::ghost_elements ( ) const inherited\n+const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt & PETScWrappers::VectorBase::ghost_elements ( ) const inherited\n Return the _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt of ghost elements.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0u\bup\bpd\bda\bat\bte\be_\b_g\bgh\bho\bos\bst\bt_\b_v\bva\bal\blu\bue\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n void PETScWrappers::VectorBase::update_ghost_values ( ) const inherited\n Update ghosted elements.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br(\b()\b)(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inherited\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br()\n+_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be PETScWrappers:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inherited\n+VectorBase::operator()\n Provide access to a given element, both read and write.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br(\b()\b)(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-PetscScalar _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const inherited\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br()\n+PetscScalar PETScWrappers:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const inherited\n+VectorBase::operator()\n Provide read-only access to an element.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inherited\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br[]\n+_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be PETScWrappers:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) inherited\n+VectorBase::operator[]\n Provide access to a given element, both read and write.\n-Exactly the same as _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b).\n+Exactly the same as operator().\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-PetscScalar _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const inherited\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br[]\n+PetscScalar PETScWrappers:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const inherited\n+VectorBase::operator[]\n Provide read-only access to an element.\n-Exactly the same as _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b).\n+Exactly the same as operator().\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\bet\bt(\b()\b) *\b**\b**\b**\b**\b*\n-void PETScWrappers:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > i\bin\bnd\bdi\bic\bce\bes\bs,\n+void PETScWrappers:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > i\bin\bnd\bdi\bic\bce\bes\bs,\n VectorBase::set &\u00a0\n- _\bc_\bo_\bn_\bs_\bt std::vector< PetscScalar > v\bva\bal\blu\bue\bes\bs\u00a0 inherited\n+ const std::vector< PetscScalar > v\bva\bal\blu\bue\bes\bs\u00a0 inherited\n &\u00a0\n )\n A collective set operation: instead of setting individual elements of a vector,\n this function allows to set a whole set of elements at once. The indices of the\n elements to be set are stated in the first argument, the corresponding values\n in the second.\n Definition at line _\b4_\b6_\b4 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\bex\bxt\btr\bra\bac\bct\bt_\b_s\bsu\bub\bbv\bve\bec\bct\bto\bor\br_\b_t\bto\bo(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers:: _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+void PETScWrappers:: const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n VectorBase:: ( &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n extract_subvector_to inherited\n std::vector< PetscScalar > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n ) const\n-Instead of getting individual elements of a vector via _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b), this\n+Instead of getting individual elements of a vector via operator(), this\n function allows getting a whole set of elements at once. The indices of the\n elements to be read are stated in the first argument, the corresponding values\n are returned in the second.\n If the current vector is called v, then this function is the equivalent to the\n code\n for (unsigned int i=0; i &\u00a0\n extract_subvector_to overridevirtualinherited\n _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< e\bel\ble\bem\bme\ben\bnt\bts\bs\u00a0\n PetscScalar > &\u00a0\n ) const\n Extract a range of elements all at once.\n Implements _\bR_\be_\ba_\bd_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bP_\be_\bt_\bs_\bc_\bS_\bc_\ba_\bl_\ba_\br_\b _\b>.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\bex\bxt\btr\bra\bac\bct\bt_\b_s\bsu\bub\bbv\bve\bec\bct\bto\bor\br_\b_t\bto\bo(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n+template\n void PETScWrappers::\n-VectorBase:: ( _\bc_\bo_\bn_\bs_\bt _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_b\bbe\beg\bgi\bin\bn,\n+VectorBase:: ( const ForwardIterator\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_b\bbe\beg\bgi\bin\bn,\n extract_subvector_to inherited\n- _\bc_\bo_\bn_\bs_\bt _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_e\ben\bnd\bd,\n- _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 v\bva\bal\blu\bue\bes\bs_\b_b\bbe\beg\bgi\bin\bn\u00a0\n+ const ForwardIterator\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_e\ben\bnd\bd,\n+ OutputIterator\u00a0 v\bva\bal\blu\bue\bes\bs_\b_b\bbe\beg\bgi\bin\bn\u00a0\n ) const\n-Instead of getting individual elements of a vector via _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b), this\n+Instead of getting individual elements of a vector via operator(), this\n function allows getting a whole set of elements at once. In contrast to the\n previous function, this function obtains the indices of the elements by\n dereferencing all elements of the iterator range provided by the first two\n arguments, and puts the vector values into memory locations obtained by\n dereferencing a range of iterators starting at the location pointed to by the\n third argument.\n If the current vector is called v, then this function is the equivalent to the\n code\n-_\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp = _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn;\n-_\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bv_\ba_\bl_\bu_\be_\bs_\b__\bp = _\bv_\ba_\bl_\bu_\be_\bs_\b__\bb_\be_\bg_\bi_\bn;\n-while (_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp != _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\be_\bn_\bd)\n+ForwardIterator indices_p = indices_begin;\n+OutputIterator values_p = values_begin;\n+while (indices_p != indices_end)\n {\n-*_\bv_\ba_\bl_\bu_\be_\bs_\b__\bp = v[*_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp];\n-++_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp;\n-++_\bv_\ba_\bl_\bu_\be_\bs_\b__\bp;\n+*values_p = v[*indices_p];\n+++indices_p;\n+++values_p;\n }\n Precondition\n It must be possible to write into as many memory locations starting at\n values_begin as there are iterators between indices_begin and\n indices_end.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[1\b1/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > i\bin\bnd\bdi\bic\bce\bes\bs,\n+void PETScWrappers:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > i\bin\bnd\bdi\bic\bce\bes\bs,\n VectorBase::add &\u00a0\n- _\bc_\bo_\bn_\bs_\bt std::vector< PetscScalar > v\bva\bal\blu\bue\bes\bs\u00a0 inherited\n+ const std::vector< PetscScalar > v\bva\bal\blu\bue\bes\bs\u00a0 inherited\n &\u00a0\n )\n A collective add operation: This function adds a whole set of values stored in\n values to the vector components specified by indices.\n Definition at line _\b4_\b7_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[2\b2/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > i\bin\bnd\bdi\bic\bce\bes\bs,\n+void PETScWrappers:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > i\bin\bnd\bdi\bic\bce\bes\bs,\n VectorBase::add &\u00a0 inherited\n- _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< PetscScalar > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+ const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< PetscScalar > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n This is a second collective add operation. As a difference, this function takes\n a deal.II vector of values.\n Definition at line _\b4_\b8_\b6 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[3\b3/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n+void PETScWrappers::VectorBase:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n add\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs, inherited\n- _\bc_\bo_\bn_\bs_\bt PetscScalar *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs, inherited\n+ const PetscScalar *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n Take an address where n_elements are stored contiguously and add them into the\n vector. Handles all cases which are not covered by the other two _\ba_\bd_\bd_\b(_\b)\n functions above.\n Definition at line _\b4_\b9_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[4\b4/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 s\bs ) inherited\n+void PETScWrappers::VectorBase:: ( const PetscScalar\u00a0 s\bs ) inherited\n add\n Addition of s to all components. Note that s is a scalar and not a vector.\n Definition at line _\b8_\b5_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[5\b5/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::add ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0 inherited\n+void PETScWrappers::VectorBase::add ( const PetscScalar\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0 inherited\n )\n Simple addition of a multiple of a vector, i.e. *this += a*V.\n Definition at line _\b8_\b6_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[6\b6/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::add ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV,\n- _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 b\bb, inherited\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 W\bW\u00a0\n+void PETScWrappers::VectorBase::add ( const PetscScalar\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV,\n+ const PetscScalar\u00a0 b\bb, inherited\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 W\bW\u00a0\n )\n Multiple addition of scaled vectors, i.e. *this += a*V+b*W.\n Definition at line _\b8_\b7_\b9 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br*\b*(\b()\b) *\b**\b**\b**\b**\b*\n-PetscScalar _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bve\bec\bc ) const inherited\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br*\n+PetscScalar PETScWrappers:: ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bve\bec\bc ) const inherited\n+VectorBase::operator*\n Return the scalar product of two vectors. The vectors must have the same size.\n For complex valued vector, this gives \\(\\left(v^\\ast,vec\\right)\\).\n Definition at line _\b5_\b0_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bno\bor\brm\bm_\b_s\bsq\bqr\br(\b()\b) *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be PETScWrappers::VectorBase::norm_sqr ( ) const inherited\n Return the square of the \\(l_2\\)-norm.\n Definition at line _\b6_\b0_\b4 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n@@ -880,30 +880,30 @@\n Definition at line _\b6_\b6_\b4 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bl2\b2_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be PETScWrappers::VectorBase::l2_norm ( ) const inherited\n \\(l_2\\)-norm of the vector. The square root of the sum of the squares of the\n elements.\n Definition at line _\b6_\b7_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blp\bp_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be PETScWrappers:: ( _\bc_\bo_\bn_\bs_\bt _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 p\bp ) const inherited\n+_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be PETScWrappers:: ( const _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 p\bp ) const inherited\n VectorBase::lp_norm\n \\(l_p\\)-norm of the vector. The pth root of the sum of the pth powers of the\n absolute values of the elements.\n Definition at line _\b6_\b9_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bin\bnf\bft\bty\by_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be PETScWrappers::VectorBase:: ( ) const inherited\n linfty_norm\n \\(l_\\infty\\)-norm of the vector. Return the value of the vector element with\n the maximum absolute value.\n Definition at line _\b7_\b3_\b2 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd_\b_a\ban\bnd\bd_\b_d\bdo\bot\bt(\b()\b) *\b**\b**\b**\b**\b*\n-PetscScalar PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 a\ba,\n+PetscScalar PETScWrappers::VectorBase:: ( const PetscScalar\u00a0 a\ba,\n add_and_dot\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV, inherited\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 W\bW\u00a0\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV, inherited\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 W\bW\u00a0\n )\n Performs a combined operation of a vector addition and a subsequent inner\n product, returning the value of the inner product. In other words, the result\n of this function is the same as if the user called\n this->_\ba_\bd_\bd(a, V);\n return_value = *this * W;\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\ba_\bd_\bd\n@@ -916,91 +916,91 @@\n and thus the cost is completely equivalent as calling the two methods\n separately.\n For complex-valued vectors, the scalar product in the second step is\n implemented as \\(\\left=\\sum_i v_i \\bar{w_i}\\).\n Definition at line _\b5_\b2_\b9 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br*\b*=\b=(\b()\b) *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\n-_\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 f\bfa\bac\bct\bto\bor\br ) inherited\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br*=\n+PETScWrappers::VectorBase:: ( const PetscScalar\u00a0 f\bfa\bac\bct\bto\bor\br ) inherited\n+operator*=\n Multiply the entire vector by a fixed factor.\n Definition at line _\b8_\b0_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br/\b/=\b=(\b()\b) *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\n-_\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 f\bfa\bac\bct\bto\bor\br ) inherited\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br/=\n+PETScWrappers::VectorBase:: ( const PetscScalar\u00a0 f\bfa\bac\bct\bto\bor\br ) inherited\n+operator/=\n Divide the entire vector by a fixed factor.\n Definition at line _\b8_\b1_\b4 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br+\b+=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV ) inherited\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br+=\n+_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & PETScWrappers:: ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV ) inherited\n+VectorBase::operator+=\n Add the given vector to the present one.\n Definition at line _\b8_\b3_\b1 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br-\b-=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV ) inherited\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br-=\n+_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & PETScWrappers:: ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV ) inherited\n+VectorBase::operator-=\n Subtract the given vector from the present one.\n Definition at line _\b8_\b4_\b3 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsa\bad\bdd\bd(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::sadd ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 s\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0 inherited\n+void PETScWrappers::VectorBase::sadd ( const PetscScalar\u00a0 s\bs,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0 inherited\n )\n Scaling and simple vector addition, i.e. t\bth\bhi\bis\bs =\b= s\bs(*this)+V.\n Definition at line _\b8_\b9_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsa\bad\bdd\bd(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::sadd ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 s\bs,\n- _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 a\ba, inherited\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0\n+void PETScWrappers::VectorBase::sadd ( const PetscScalar\u00a0 s\bs,\n+ const PetscScalar\u00a0 a\ba, inherited\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0\n )\n Scaling and simple addition, i.e. t\bth\bhi\bis\bs =\b= s\bs(*this)+a*V.\n Definition at line _\b9_\b1_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsc\bca\bal\ble\be(\b()\b) *\b**\b**\b**\b**\b*\n void\n-PETScWrappers:: ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 s\bsc\bca\bal\bli\bin\bng\bg_\b_f\bfa\bac\bct\bto\bor\brs\bs ) inherited\n+PETScWrappers:: ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 s\bsc\bca\bal\bli\bin\bng\bg_\b_f\bfa\bac\bct\bto\bor\brs\bs ) inherited\n VectorBase::scale\n Scale each element of this vector by the corresponding element in the argument.\n This function is mostly meant to simulate multiplication (and immediate re-\n assignment) by a diagonal scaling matrix.\n Definition at line _\b9_\b2_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\beq\bqu\bu(\b()\b) *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::equ ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0 inherited\n+void PETScWrappers::VectorBase::equ ( const PetscScalar\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0 inherited\n )\n Assignment *this = a*V.\n Definition at line _\b9_\b3_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0w\bwr\bri\bit\bte\be_\b_a\bas\bsc\bci\bii\bi(\b()\b) *\b**\b**\b**\b**\b*\n-void PETScWrappers:: _\bc_\bo_\bn_\bs_\bt f\bfo\bor\brm\bma\bat\bt =\n-VectorBase:: ( _\bP_\be_\bt_\bs_\bc_\bV_\bi_\be_\bw_\be_\br_\bF_\bo_\br_\bm_\ba_\bt\u00a0 _\bP_\bE_\bT_\bS_\bC_\b__\bV_\bI_\bE_\bW_\bE_\bR_\b__\bD_\bE_\bF_\bA_\bU_\bL_\bT ) inherited\n+void PETScWrappers:: const f\bfo\bor\brm\bma\bat\bt =\n+VectorBase:: ( PetscViewerFormat\u00a0 PETSC_VIEWER_DEFAULT ) inherited\n write_ascii\n Prints the PETSc vector object values using PETSc internal vector viewer\n function VecView. The default format prints the vector's contents, including\n indices of vector elements. For other valid view formats, consult _\bh_\bt_\bt_\bp_\b:_\b/_\b/\n _\bw_\bw_\bw_\b._\bm_\bc_\bs_\b._\ba_\bn_\bl_\b._\bg_\bo_\bv_\b/_\bp_\be_\bt_\bs_\bc_\b/_\bp_\be_\bt_\bs_\bc_\b-_\bc_\bu_\br_\br_\be_\bn_\bt_\b/_\bd_\bo_\bc_\bs_\b/_\bm_\ba_\bn_\bu_\ba_\bl_\bp_\ba_\bg_\be_\bs_\b/_\bV_\be_\bc_\b/_\bV_\be_\bc_\bV_\bi_\be_\bw_\b._\bh_\bt_\bm_\bl\n Definition at line _\b9_\b5_\b2 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsa\bav\bve\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n-void PETScWrappers::VectorBase::save ( _\bA_\br_\bc_\bh_\bi_\bv_\be &\u00a0 a\bar\br,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0 inherited\n+template\n+void PETScWrappers::VectorBase::save ( Archive &\u00a0 a\bar\br,\n+ const unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0 inherited\n ) const\n Write the data of this object to a stream for the purpose of serialization\n using the _\bB_\bO_\bO_\bS_\bT_\b _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn_\b _\bl_\bi_\bb_\br_\ba_\br_\by.\n Note\n Each processor only serializes its own locally owned values.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blo\boa\bad\bd(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n-void PETScWrappers::VectorBase::load ( _\bA_\br_\bc_\bh_\bi_\bv_\be &\u00a0 a\bar\br,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0 inherited\n+template\n+void PETScWrappers::VectorBase::load ( Archive &\u00a0 a\bar\br,\n+ const unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0 inherited\n )\n Read the data of this object from a stream for the purpose of serialization\n using the _\bB_\bO_\bO_\bS_\bT_\b _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn_\b _\bl_\bi_\bb_\br_\ba_\br_\by.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\ber\bri\bia\bal\bli\biz\bze\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n-void PETScWrappers::VectorBase:: ( _\bA_\br_\bc_\bh_\bi_\bv_\be &\u00a0 a\bar\brc\bch\bhi\biv\bve\be,\n+template\n+void PETScWrappers::VectorBase:: ( Archive &\u00a0 a\bar\brc\bch\bhi\biv\bve\be,\n serialize inherited\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0\n )\n Write and read the data of this object from a stream for the purpose of\n serialization using the _\bB_\bO_\bO_\bS_\bT_\b _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn_\b _\bl_\bi_\bb_\br_\ba_\br_\by.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsw\bwa\bap\bp(\b()\b) *\b**\b**\b**\b**\b*\n void PETScWrappers::VectorBase:: ( _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv ) noexceptinherited\n swap\n Swap the contents of this vector and the other vector v. One could do this\n@@ -1009,15 +1009,15 @@\n to the data of the two vectors and therefore does not need to allocate\n temporary storage and move data around.\n This function is analogous to the swap function of all C++ standard containers.\n Also, there is a global function swap(u,v) that simply calls u.swap(v), again\n in analogy to standard functions.\n Definition at line _\b1_\b0_\b1_\b9 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br c\bco\bon\bns\bst\bt V\bVe\bec\bc &\b&(\b()\b) *\b**\b**\b**\b**\b*\n-_\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt Vec & ( ) const inherited\n+PETScWrappers::VectorBase::operator const Vec & ( ) const inherited\n Conversion operator to gain access to the underlying PETSc type. If you do\n this, you cut this class off some information it may need, so this conversion\n operator should only be used if you know what you do. In particular, it should\n only be used for read-only operations into the vector.\n Definition at line _\b1_\b0_\b3_\b1 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0p\bpe\bet\bts\bsc\bc_\b_v\bve\bec\bct\bto\bor\br(\b()\b) *\b**\b**\b**\b**\b*\n Vec & PETScWrappers::VectorBase:: ( ) inherited\n@@ -1030,19 +1030,19 @@\n Estimate for the memory consumption (not implemented for this class).\n Definition at line _\b1_\b0_\b4_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0g\bge\bet\bt_\b_m\bmp\bpi\bi_\b_c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br(\b()\b) *\b**\b**\b**\b**\b*\n _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm PETScWrappers::VectorBase::get_mpi_communicator ( ) const inherited\n Return the underlying _\bM_\bP_\bI communicator.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0d\bdo\bo_\b_s\bse\bet\bt_\b_a\bad\bdd\bd_\b_o\bop\bpe\ber\bra\bat\bti\bio\bon\bn(\b()\b) *\b**\b**\b**\b**\b*\n void PETScWrappers::\n-VectorBase:: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n+VectorBase:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n do_set_add_operation\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs, protectedinherited\n- _\bc_\bo_\bn_\bs_\bt PetscScalar *\u00a0 v\bva\bal\blu\bue\bes\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 a\bad\bdd\bd_\b_v\bva\bal\blu\bue\bes\bs\u00a0\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs, protectedinherited\n+ const PetscScalar *\u00a0 v\bva\bal\blu\bue\bes\bs,\n+ const _\bb_\bo_\bo_\bl\u00a0 a\bad\bdd\bd_\b_v\bva\bal\blu\bue\bes\bs\u00a0\n )\n Collective set or add operation: This function is invoked by the collective set\n and add with the add_values flag set to the corresponding value.\n Definition at line _\b1_\b0_\b6_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0d\bde\bet\bte\ber\brm\bmi\bin\bne\be_\b_g\bgh\bho\bos\bst\bt_\b_i\bin\bnd\bdi\bic\bce\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n void PETScWrappers::VectorBase:: ( ) protectedinherited\n determine_ghost_indices\n@@ -1069,15 +1069,15 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_s\bsu\bub\bbs\bsc\bcr\bri\bip\bpt\bti\bio\bon\bns\bs(\b()\b) *\b**\b**\b**\b**\b*\n unsigned _\bi_\bn_\bt Subscriptor::n_subscriptions ( ) const inlineinherited\n Return the present number of subscriptions to this object. This allows to use\n this class for reference counted lifetime determination where the last one to\n unsubscribe also deletes the object.\n Definition at line _\b3_\b0_\b0 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\ber\brs\bs(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n+template\n void Subscriptor:: ( StreamType &\u00a0 s\bst\btr\bre\bea\bam\bm ) const inlineinherited\n list_subscribers\n List the subscribers to the input stream.\n Definition at line _\b3_\b1_\b7 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\ber\brs\bs(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n void Subscriptor::list_subscribers ( ) const inherited\n List the subscribers to deallog.\n@@ -1156,15 +1156,15 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\bli\bid\bdi\bit\bty\by_\b_p\bpo\boi\bin\bnt\bte\ber\brs\bs *\b**\b**\b**\b**\b*\n std::vector *> Subscriptor:: mutableprivateinherited\n validity_pointers\n In this vector, we store pointers to the validity bool in the _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br\n objects that subscribe to this class.\n Definition at line _\b2_\b4_\b0 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bob\bbj\bje\bec\bct\bt_\b_i\bin\bnf\bfo\bo *\b**\b**\b**\b**\b*\n-_\bc_\bo_\bn_\bs_\bt std::type_info* Subscriptor::object_info mutableprivateinherited\n+const std::type_info* Subscriptor::object_info mutableprivateinherited\n Pointer to the typeinfo object of this object, from which we can later deduce\n the class name. Since this information on the derived class is neither\n available in the destructor, nor in the constructor, we obtain it in between\n and store it here.\n Definition at line _\b2_\b4_\b8 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bmu\but\bte\bex\bx *\b**\b**\b**\b**\b*\n std::mutex Subscriptor::mutex staticprivateinherited\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverBiCG.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverBiCG.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 368 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverBicgstab.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverBicgstab.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 439 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverCG.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverCG.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 341 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverCGS.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverCGS.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 466 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverCR.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverCR.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 547 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverChebychev.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverChebychev.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 314 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverGMRES.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverGMRES.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 404 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverLSQR.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverLSQR.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 575 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverPreOnly.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverPreOnly.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 610 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverRichardson.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverRichardson.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 264 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverTCQMR.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverTCQMR.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 520 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverTFQMR.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SolverTFQMR.html", "unified_diff": "@@ -235,15 +235,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 493 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SparseDirectMUMPS.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1SparseDirectMUMPS.html", "unified_diff": "@@ -247,15 +247,15 @@\n
    )
    \n
    \n

    Constructor. This constructor is deprecated and ignores the MPI communicator argument. Use the other constructor instead.

    \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 650 of file petsc_solver.cc.

    \n \n
    \n \n

    Member Function Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1TimeStepper.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1TimeStepper.html", "unified_diff": "@@ -895,15 +895,15 @@\n template<typename VectorType = PETScWrappers::VectorBase, typename PMatrixType = PETScWrappers::MatrixBase, typename AMatrixType = PMatrixType> \n \n \n \n \n
    std::function<void(const real_type t, VectorType &y)> PETScWrappers::TimeStepper< VectorType, PMatrixType, AMatrixType >::distribute
    \n
    \n-
    Deprecated:
    This callback is equivalent to update_constrained_components, but is deprecated. Use update_constrained_components instead.
    \n+
    Deprecated:
    This callback is equivalent to update_constrained_components, but is deprecated. Use update_constrained_components instead.
    \n \n

    Definition at line 621 of file petsc_ts.h.

    \n \n
    \n \n \n

    ◆ update_constrained_components

    \n@@ -935,15 +935,15 @@\n template<typename VectorType = PETScWrappers::VectorBase, typename PMatrixType = PETScWrappers::MatrixBase, typename AMatrixType = PMatrixType> \n \n \n \n \n
    std::function<void(const real_type t, const unsigned int step, const VectorType &y, bool &resize)> PETScWrappers::TimeStepper< VectorType, PMatrixType, AMatrixType >::decide_for_coarsening_and_refinement
    \n
    \n-
    Deprecated:
    This callback is equivalent to decide_and_prepare_for_remeshing except that it returns the decision whether or not to stop operations via the last reference argument of the function object instead of a plain return value. This callback is deprecated. Use decide_and_prepare_for_remeshing instead.
    \n+
    Deprecated:
    This callback is equivalent to decide_and_prepare_for_remeshing except that it returns the decision whether or not to stop operations via the last reference argument of the function object instead of a plain return value. This callback is deprecated. Use decide_and_prepare_for_remeshing instead.
    \n \n

    Definition at line 656 of file petsc_ts.h.

    \n \n
    \n \n \n

    ◆ decide_and_prepare_for_remeshing

    \n@@ -975,15 +975,15 @@\n template<typename VectorType = PETScWrappers::VectorBase, typename PMatrixType = PETScWrappers::MatrixBase, typename AMatrixType = PMatrixType> \n \n \n \n \n
    std::function<void(const std::vector<VectorType> &all_in, std::vector<VectorType> &all_out)> PETScWrappers::TimeStepper< VectorType, PMatrixType, AMatrixType >::interpolate
    \n
    \n-
    Deprecated:
    This callback is equivalent to transfer_solution_vectors_to_new_mesh, but is deprecated. Use transfer_solution_vectors_to_new_mesh instead.
    \n+
    Deprecated:
    This callback is equivalent to transfer_solution_vectors_to_new_mesh, but is deprecated. Use transfer_solution_vectors_to_new_mesh instead.
    \n \n

    Definition at line 688 of file petsc_ts.h.

    \n \n
    \n \n \n

    ◆ transfer_solution_vectors_to_new_mesh

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1VectorBase.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPETScWrappers_1_1VectorBase.html", "unified_diff": "@@ -129,176 +129,176 @@\n \"\"\n \"\"\n \n
    [legend]
    \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n

    \n Public Types

    using value_type = PetscScalar
    using value_type = PetscScalar
     
    using real_type = PetscReal
    using real_type = PetscReal
     
    using size_type = types::global_dof_index
    using size_type = types::global_dof_index
     
    using reference = internal::VectorReference
    using reference = internal::VectorReference
     
    using const_reference = const internal::VectorReference
    using const_reference = const internal::VectorReference
     
    \n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n-\n+\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n

    \n Public Member Functions

     VectorBase ()
     
     VectorBase (const VectorBase &v)
     VectorBase (const VectorBase &v)
     
     VectorBase (const Vec &v)
     VectorBase (const Vec &v)
     
    virtual ~VectorBase () override
    virtual ~VectorBase () override
     
    virtual void clear ()
    virtual void clear ()
     
    void compress (const VectorOperation::values operation)
    void compress (const VectorOperation::values operation)
     
    VectorBaseoperator= (const VectorBase &)
    VectorBaseoperator= (const VectorBase &)
     
    VectorBaseoperator= (const PetscScalar s)
    VectorBaseoperator= (const PetscScalar s)
     
    void reinit (Vec v)
     
    bool operator== (const VectorBase &v) const
    bool operator== (const VectorBase &v) const
     
    bool operator!= (const VectorBase &v) const
    bool operator!= (const VectorBase &v) const
     
    size_type size () const override
    size_type size () const override
     
    size_type locally_owned_size () const
    size_type locally_owned_size () const
     
    std::pair< size_type, size_typelocal_range () const
    std::pair< size_type, size_typelocal_range () const
     
    bool in_local_range (const size_type index) const
    bool in_local_range (const size_type index) const
     
    IndexSet locally_owned_elements () const
    IndexSet locally_owned_elements () const
     
    bool has_ghost_elements () const
    bool has_ghost_elements () const
     
    const IndexSetghost_elements () const
    const IndexSetghost_elements () const
     
    void update_ghost_values () const
    void update_ghost_values () const
     
    reference operator() (const size_type index)
    reference operator() (const size_type index)
     
    PetscScalar operator() (const size_type index) const
    PetscScalar operator() (const size_type index) const
     
    reference operator[] (const size_type index)
    reference operator[] (const size_type index)
     
    PetscScalar operator[] (const size_type index) const
    PetscScalar operator[] (const size_type index) const
     
    void set (const std::vector< size_type > &indices, const std::vector< PetscScalar > &values)
    void set (const std::vector< size_type > &indices, const std::vector< PetscScalar > &values)
     
    void extract_subvector_to (const std::vector< size_type > &indices, std::vector< PetscScalar > &values) const
    void extract_subvector_to (const std::vector< size_type > &indices, std::vector< PetscScalar > &values) const
     
    virtual void extract_subvector_to (const ArrayView< const types::global_dof_index > &indices, ArrayView< PetscScalar > &elements) const override
    virtual void extract_subvector_to (const ArrayView< const types::global_dof_index > &indices, ArrayView< PetscScalar > &elements) const override
     
    template<typename ForwardIterator , typename OutputIterator >
    void extract_subvector_to (const ForwardIterator indices_begin, const ForwardIterator indices_end, OutputIterator values_begin) const
    template<typename ForwardIterator , typename OutputIterator >
    void extract_subvector_to (const ForwardIterator indices_begin, const ForwardIterator indices_end, OutputIterator values_begin) const
     
    void add (const std::vector< size_type > &indices, const std::vector< PetscScalar > &values)
    void add (const std::vector< size_type > &indices, const std::vector< PetscScalar > &values)
     
    void add (const std::vector< size_type > &indices, const ::Vector< PetscScalar > &values)
    void add (const std::vector< size_type > &indices, const ::Vector< PetscScalar > &values)
     
    void add (const size_type n_elements, const size_type *indices, const PetscScalar *values)
    void add (const size_type n_elements, const size_type *indices, const PetscScalar *values)
     
    PetscScalar operator* (const VectorBase &vec) const
    PetscScalar operator* (const VectorBase &vec) const
     
    real_type norm_sqr () const
    real_type norm_sqr () const
     
    PetscScalar mean_value () const
    PetscScalar mean_value () const
     
    real_type l1_norm () const
    real_type l1_norm () const
     
    real_type l2_norm () const
    real_type l2_norm () const
     
    real_type lp_norm (const real_type p) const
    real_type lp_norm (const real_type p) const
     
    real_type linfty_norm () const
    real_type linfty_norm () const
     
    PetscScalar add_and_dot (const PetscScalar a, const VectorBase &V, const VectorBase &W)
    PetscScalar add_and_dot (const PetscScalar a, const VectorBase &V, const VectorBase &W)
     
    bool all_zero () const
    bool all_zero () const
     
    VectorBaseoperator*= (const PetscScalar factor)
    VectorBaseoperator*= (const PetscScalar factor)
     
    VectorBaseoperator/= (const PetscScalar factor)
    VectorBaseoperator/= (const PetscScalar factor)
     
    VectorBaseoperator+= (const VectorBase &V)
    VectorBaseoperator+= (const VectorBase &V)
     
    VectorBaseoperator-= (const VectorBase &V)
    VectorBaseoperator-= (const VectorBase &V)
     
    void add (const PetscScalar s)
    void add (const PetscScalar s)
     
    void add (const PetscScalar a, const VectorBase &V)
    void add (const PetscScalar a, const VectorBase &V)
     
    void add (const PetscScalar a, const VectorBase &V, const PetscScalar b, const VectorBase &W)
    void add (const PetscScalar a, const VectorBase &V, const PetscScalar b, const VectorBase &W)
     
    void sadd (const PetscScalar s, const VectorBase &V)
    void sadd (const PetscScalar s, const VectorBase &V)
     
    void sadd (const PetscScalar s, const PetscScalar a, const VectorBase &V)
    void sadd (const PetscScalar s, const PetscScalar a, const VectorBase &V)
     
    void scale (const VectorBase &scaling_factors)
    void scale (const VectorBase &scaling_factors)
     
    void equ (const PetscScalar a, const VectorBase &V)
    void equ (const PetscScalar a, const VectorBase &V)
     
    void write_ascii (const PetscViewerFormat format=PETSC_VIEWER_DEFAULT)
    void write_ascii (const PetscViewerFormat format=PETSC_VIEWER_DEFAULT)
     
    void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
    void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
     
    template<class Archive >
    void save (Archive &ar, const unsigned int version) const
    template<class Archive >
    void save (Archive &ar, const unsigned int version) const
     
    template<class Archive >
    void load (Archive &ar, const unsigned int version)
    template<class Archive >
    void load (Archive &ar, const unsigned int version)
     
    template<class Archive >
    void serialize (Archive &archive, const unsigned int version)
    template<class Archive >
    void serialize (Archive &archive, const unsigned int version)
     
    void swap (VectorBase &v) noexcept
    void swap (VectorBase &v) noexcept
     
     operator const Vec & () const
     operator const Vec & () const
     
    Vec & petsc_vector ()
     
    std::size_t memory_consumption () const
    std::size_t memory_consumption () const
     
    MPI_Comm get_mpi_communicator () const
    MPI_Comm get_mpi_communicator () const
     
    Subscriptor functionality

    Classes derived from Subscriptor provide a facility to subscribe to this object. This is mostly used by the SmartPointer class.

    \n
    void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
    void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
     
    void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
    void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
     
    unsigned int n_subscriptions () const
    unsigned int n_subscriptions () const
     
    template<typename StreamType >
    void list_subscribers (StreamType &stream) const
    template<typename StreamType >
    void list_subscribers (StreamType &stream) const
     
    void list_subscribers () const
    void list_subscribers () const
     
    \n \n-\n+\n \n-\n+\n \n

    \n Static Public Member Functions

    static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
    static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
     
    static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
    static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
     
    \n \n-\n+\n \n \n \n

    \n Protected Member Functions

    void do_set_add_operation (const size_type n_elements, const size_type *indices, const PetscScalar *values, const bool add_values)
    void do_set_add_operation (const size_type n_elements, const size_type *indices, const PetscScalar *values, const bool add_values)
     
    void determine_ghost_indices ()
     
    \n \n \n@@ -308,50 +308,50 @@\n \n \n \n \n

    \n Protected Attributes

    Vec vector
    IndexSet ghost_indices
     
    VectorOperation::values last_action
     
    \n \n-\n+\n \n-\n+\n \n

    \n Private Types

    using map_value_type = decltype(counter_map)::value_type
    using map_value_type = decltype(counter_map)::value_type
     
    using map_iterator = decltype(counter_map)::iterator
    using map_iterator = decltype(counter_map)::iterator
     
    \n \n-\n+\n \n

    \n Private Member Functions

    void check_no_subscribers () const noexcept
    void check_no_subscribers () const noexcept
     
    \n \n \n \n \n \n \n \n-\n+\n \n

    \n Private Attributes

    std::atomic< unsigned intcounter
     
    std::map< std::string, unsigned intcounter_map
     
    std::vector< std::atomic< bool > * > validity_pointers
     
    const std::type_info * object_info
    const std::type_info * object_info
     
    \n \n-\n+\n \n

    \n Static Private Attributes

    static std::mutex mutex
    static std::mutex mutex
     
    \n \n-\n+\n \n

    \n Friends

    class internal::VectorReference
    class internal::VectorReference
     
    \n \n \n-\n+\n \n

    \n Related Symbols

    (Note that these are not member symbols.)

    \n
    void swap (VectorBase &u, VectorBase &v) noexcept
    void swap (VectorBase &u, VectorBase &v) noexcept
     
    \n

    Detailed Description

    \n

    Base class for all vector classes that are implemented on top of the PETSc vector types. Since in PETSc all vector types (i.e. sequential and parallel ones) are built by filling the contents of an abstract object that is only referenced through a pointer of a type that is independent of the actual vector type, we can implement almost all functionality of vectors in this base class. As such, this class can also be used as a deal.II-compatible wrapper for a PETSc Vec object of any type. Derived classes will then only have to provide the functionality to create one or the other kind of vector.

    \n

    The interface of this class is modeled after the existing Vector class in deal.II. It has almost the same member functions, and is often exchangeable. However, since PETSc only supports a single scalar type (either double, float, or a complex data type), it is not templated, and only works with whatever your PETSc installation has defined the data type PetscScalar to.

    \n

    Note that PETSc only guarantees that operations do what you expect if the functions VecAssemblyBegin and VecAssemblyEnd have been called after vector assembly. Therefore, you need to call Vector::compress() before you actually use the vector.

    \n \n@@ -360,15 +360,15 @@\n \n

    ◆ value_type

    \n \n
    \n
    \n \n \n- \n+ \n \n
    using PETScWrappers::VectorBase::value_type = PetscScalarusing PETScWrappers::VectorBase::value_type = PetscScalar
    \n
    \n

    Declare some of the standard types used in all containers. These types parallel those in the C++ standard libraries vector<...> class.

    \n \n

    Definition at line 260 of file petsc_vector_base.h.

    \n \n@@ -377,15 +377,15 @@\n \n

    ◆ real_type

    \n \n
    \n
    \n \n \n- \n+ \n \n
    using PETScWrappers::VectorBase::real_type = PetscRealusing PETScWrappers::VectorBase::real_type = PetscReal
    \n
    \n \n

    Definition at line 261 of file petsc_vector_base.h.

    \n \n
    \n@@ -393,15 +393,15 @@\n \n

    ◆ size_type

    \n \n
    \n
    \n \n

    Definition at line 262 of file petsc_vector_base.h.

    \n \n
    \n@@ -409,15 +409,15 @@\n \n

    ◆ reference

    \n \n
    \n
    \n \n \n- \n+ \n \n
    using PETScWrappers::VectorBase::reference = internal::VectorReferenceusing PETScWrappers::VectorBase::reference = internal::VectorReference
    \n
    \n \n

    Definition at line 263 of file petsc_vector_base.h.

    \n \n
    \n@@ -425,15 +425,15 @@\n \n

    ◆ const_reference

    \n \n
    \n
    \n \n \n- \n+ \n \n
    using PETScWrappers::VectorBase::const_reference = const internal::VectorReferenceusing PETScWrappers::VectorBase::const_reference = const internal::VectorReference
    \n
    \n \n

    Definition at line 264 of file petsc_vector_base.h.

    \n \n
    \n@@ -444,15 +444,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using Subscriptor::map_value_type = decltype(counter_map)::value_typeusing Subscriptor::map_value_type = decltype(counter_map)::value_type
    \n
    \n privateinherited
    \n@@ -469,15 +469,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using Subscriptor::map_iterator = decltype(counter_map)::iteratorusing Subscriptor::map_iterator = decltype(counter_map)::iterator
    \n
    \n privateinherited
    \n@@ -514,15 +514,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    PETScWrappers::VectorBase::VectorBase (const VectorBaseconst VectorBasev)
    \n
    \n

    Copy constructor. Sets the dimension to that of the given vector, and copies all elements.

    \n \n@@ -538,15 +538,15 @@\n \n \n \n \n@@ -623,15 +623,15 @@\n \n
    \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    PETScWrappers::VectorBase::VectorBase (const Vec & const Vec & v)
    \n
    \n explicit
    \n \n \n \n- \n+ \n \n \n \n
    void PETScWrappers::VectorBase::compress (const VectorOperation::values const VectorOperation::values operation)
    \n
    \n

    Compress the underlying representation of the PETSc object, i.e. flush the buffers of the vector object if it has any. This function is necessary after writing into a vector element-by-element and before anything else can be done on it.

    \n

    See Compressing distributed objects for more information.

    \n@@ -643,17 +643,17 @@\n \n

    ◆ operator=() [1/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    VectorBase & PETScWrappers::VectorBase::operator= VectorBase & PETScWrappers::VectorBase::operator= (const VectorBaseconst VectorBasev)
    \n
    \n

    The copy assignment operator.

    \n \n@@ -664,17 +664,17 @@\n \n

    ◆ operator=() [2/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    VectorBase & PETScWrappers::VectorBase::operator= VectorBase & PETScWrappers::VectorBase::operator= (const PetscScalar const PetscScalar s)
    \n
    \n

    Set all components of the vector to the given number s. Simply pass this down to the individual block objects, but we still need to declare this function to make the example given in the discussion about making the constructor explicit work.

    \n

    Since the semantics of assigning a scalar to a vector are not immediately clear, this operator should really only be used if you want to set the entire vector to zero. This allows the intuitive notation v=0. Assigning other values is deprecated and may be disallowed in the future.

    \n@@ -707,17 +707,17 @@\n \n

    ◆ operator==()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    bool PETScWrappers::VectorBase::operator== bool PETScWrappers::VectorBase::operator== (const VectorBaseconst VectorBasev) const
    \n
    \n

    Test for equality. This function assumes that the present vector and the one to compare with have the same size already, since comparing vectors of different sizes makes not much sense anyway.

    \n \n@@ -730,15 +730,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    bool PETScWrappers::VectorBase::operator!= (const VectorBaseconst VectorBasev) const
    \n
    \n

    Test for inequality. This function assumes that the present vector and the one to compare with have the same size already, since comparing vectors of different sizes makes not much sense anyway.

    \n \n@@ -822,15 +822,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    bool PETScWrappers::VectorBase::in_local_range (const size_type const size_type index) const
    \n
    \n

    Return whether index is in the local range or not, see also local_range().

    \n \n@@ -846,16 +846,15 @@\n
    IndexSet PETScWrappers::VectorBase::locally_owned_elements () const
    \n
    \n-

    Return an index set that describes which elements of this vector are owned by the current processor. Note that this index set does not include elements this vector may store locally as ghost elements but that are in fact owned by another processor. As a consequence, the index sets returned on different processors if this is a distributed vector will form disjoint sets that add up to the complete index set. Obviously, if a vector is created on only one processor, then the result would satisfy

    vec.locally_owned_elements() == complete_index_set (vec.size())
    \n-\n+

    Return an index set that describes which elements of this vector are owned by the current processor. Note that this index set does not include elements this vector may store locally as ghost elements but that are in fact owned by another processor. As a consequence, the index sets returned on different processors if this is a distributed vector will form disjoint sets that add up to the complete index set. Obviously, if a vector is created on only one processor, then the result would satisfy

    vec.locally_owned_elements() == complete_index_set (vec.size())
    \n
    IndexSet complete_index_set(const IndexSet::size_type N)
    Definition index_set.h:1204
    \n
    \n
    \n
    \n \n

    ◆ has_ghost_elements()

    \n \n@@ -878,15 +877,15 @@\n \n

    ◆ ghost_elements()

    \n \n
    \n
    \n \n \n- \n+ \n \n \n \n \n
    const IndexSet & PETScWrappers::VectorBase::ghost_elements const IndexSet & PETScWrappers::VectorBase::ghost_elements () const
    \n
    \n

    Return the IndexSet of ghost elements.

    \n@@ -914,17 +913,17 @@\n \n

    ◆ operator()() [1/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    reference PETScWrappers::VectorBase::operator() reference PETScWrappers::VectorBase::operator() (const size_type const size_type index)
    \n
    \n

    Provide access to a given element, both read and write.

    \n \n@@ -933,17 +932,17 @@\n \n

    ◆ operator()() [2/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    PetscScalar PETScWrappers::VectorBase::operator() PetscScalar PETScWrappers::VectorBase::operator() (const size_type const size_type index) const
    \n
    \n

    Provide read-only access to an element.

    \n \n@@ -952,63 +951,63 @@\n \n

    ◆ operator[]() [1/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    reference PETScWrappers::VectorBase::operator[] reference PETScWrappers::VectorBase::operator[] (const size_type const size_type index)
    \n
    \n

    Provide access to a given element, both read and write.

    \n-

    Exactly the same as operator().

    \n+

    Exactly the same as operator().

    \n \n
    \n
    \n \n

    ◆ operator[]() [2/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    PetscScalar PETScWrappers::VectorBase::operator[] PetscScalar PETScWrappers::VectorBase::operator[] (const size_type const size_type index) const
    \n
    \n

    Provide read-only access to an element.

    \n-

    Exactly the same as operator().

    \n+

    Exactly the same as operator().

    \n \n
    \n
    \n \n

    ◆ set()

    \n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1025,15 +1024,15 @@\n \n
    \n
    \n
    void PETScWrappers::VectorBase::set (const std::vector< size_type > & const std::vector< size_type > & indices,
    const std::vector< PetscScalar > & const std::vector< PetscScalar > & values 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1041,15 +1040,15 @@\n \n \n \n \n \n
    void PETScWrappers::VectorBase::extract_subvector_to (const std::vector< size_type > & const std::vector< size_type > & indices,
    std::vector< PetscScalar > & values 
    ) const
    \n
    \n-

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. The indices of the elements to be read are stated in the first argument, the corresponding values are returned in the second.

    \n+

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. The indices of the elements to be read are stated in the first argument, the corresponding values are returned in the second.

    \n

    If the current vector is called v, then this function is the equivalent to the code

    for (unsigned int i=0; i<indices.size(); ++i)
    \n
    values[i] = v[indices[i]];
    \n
    Precondition
    The sizes of the indices and values arrays must be identical.
    \n \n
    \n
    \n \n@@ -1058,17 +1057,17 @@\n
    \n
    \n \n \n \n \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1093,70 +1092,70 @@\n \n \n

    ◆ extract_subvector_to() [3/3]

    \n \n
    \n
    \n \n+template<typename ForwardIterator , typename OutputIterator >
    \n
    virtual void PETScWrappers::VectorBase::extract_subvector_to virtual void PETScWrappers::VectorBase::extract_subvector_to (const ArrayView< const types::global_dof_index > & const ArrayView< const types::global_dof_index > & indices,
    ArrayView< PetscScalar > & elements 
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n
    void PETScWrappers::VectorBase::extract_subvector_to (const ForwardIterator const ForwardIterator indices_begin,
    const ForwardIterator const ForwardIterator indices_end,
    OutputIterator OutputIterator values_begin 
    ) const
    \n
    \n-

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. In contrast to the previous function, this function obtains the indices of the elements by dereferencing all elements of the iterator range provided by the first two arguments, and puts the vector values into memory locations obtained by dereferencing a range of iterators starting at the location pointed to by the third argument.

    \n-

    If the current vector is called v, then this function is the equivalent to the code

    \n-\n-\n+

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. In contrast to the previous function, this function obtains the indices of the elements by dereferencing all elements of the iterator range provided by the first two arguments, and puts the vector values into memory locations obtained by dereferencing a range of iterators starting at the location pointed to by the third argument.

    \n+

    If the current vector is called v, then this function is the equivalent to the code

    ForwardIterator indices_p = indices_begin;
    \n+
    OutputIterator values_p = values_begin;
    \n+
    while (indices_p != indices_end)
    \n
    {
    \n-\n-\n-\n+
    *values_p = v[*indices_p];
    \n+
    ++indices_p;
    \n+
    ++values_p;
    \n
    }
    \n
    Precondition
    It must be possible to write into as many memory locations starting at values_begin as there are iterators between indices_begin and indices_end.
    \n \n
    \n
    \n \n

    ◆ add() [1/6]

    \n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1173,21 +1172,21 @@\n \n
    \n
    \n
    void PETScWrappers::VectorBase::add (const std::vector< size_type > & const std::vector< size_type > & indices,
    const std::vector< PetscScalar > & const std::vector< PetscScalar > & values 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1204,27 +1203,27 @@\n \n
    \n
    \n
    void PETScWrappers::VectorBase::add (const std::vector< size_type > & const std::vector< size_type > & indices,
    const ::Vector< PetscScalar > & const ::Vector< PetscScalar > & values 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1239,17 +1238,17 @@\n \n

    ◆ operator*()

    \n \n
    \n
    \n
    void PETScWrappers::VectorBase::add (const size_type const size_type n_elements,
    const size_typeconst size_typeindices,
    const PetscScalar * const PetscScalar * values 
    )
    \n \n- \n+ \n \n- \n+ \n \n \n \n
    PetscScalar PETScWrappers::VectorBase::operator* PetscScalar PETScWrappers::VectorBase::operator* (const VectorBaseconst VectorBasevec) const
    \n
    \n

    Return the scalar product of two vectors. The vectors must have the same size.

    \n

    For complex valued vector, this gives \\(\\left(v^\\ast,vec\\right)\\).

    \n@@ -1344,15 +1343,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    VectorBase::real_type PETScWrappers::VectorBase::lp_norm (const real_type const real_type p) const
    \n
    \n

    \\(l_p\\)-norm of the vector. The pth root of the sum of the pth powers of the absolute values of the elements.

    \n \n@@ -1385,27 +1384,27 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1444,17 +1443,17 @@\n \n

    ◆ operator*=()

    \n \n
    \n
    \n
    PetscScalar PETScWrappers::VectorBase::add_and_dot (const PetscScalar const PetscScalar a,
    const VectorBaseconst VectorBaseV,
    const VectorBaseconst VectorBaseW 
    )
    \n \n- \n+ \n \n- \n+ \n \n \n \n
    VectorBase & PETScWrappers::VectorBase::operator*= VectorBase & PETScWrappers::VectorBase::operator*= (const PetscScalar const PetscScalar factor)
    \n
    \n

    Multiply the entire vector by a fixed factor.

    \n \n@@ -1465,17 +1464,17 @@\n \n

    ◆ operator/=()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    VectorBase & PETScWrappers::VectorBase::operator/= VectorBase & PETScWrappers::VectorBase::operator/= (const PetscScalar const PetscScalar factor)
    \n
    \n

    Divide the entire vector by a fixed factor.

    \n \n@@ -1486,17 +1485,17 @@\n \n

    ◆ operator+=()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    VectorBase & PETScWrappers::VectorBase::operator+= VectorBase & PETScWrappers::VectorBase::operator+= (const VectorBaseconst VectorBaseV)
    \n
    \n

    Add the given vector to the present one.

    \n \n@@ -1507,17 +1506,17 @@\n \n

    ◆ operator-=()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    VectorBase & PETScWrappers::VectorBase::operator-= VectorBase & PETScWrappers::VectorBase::operator-= (const VectorBaseconst VectorBaseV)
    \n
    \n

    Subtract the given vector from the present one.

    \n \n@@ -1530,15 +1529,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void PETScWrappers::VectorBase::add (const PetscScalar const PetscScalar s)
    \n
    \n

    Addition of s to all components. Note that s is a scalar and not a vector.

    \n \n@@ -1551,21 +1550,21 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1582,33 +1581,33 @@\n \n
    \n
    \n
    void PETScWrappers::VectorBase::add (const PetscScalar const PetscScalar a,
    const VectorBaseconst VectorBaseV 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1625,21 +1624,21 @@\n \n
    \n
    \n
    void PETScWrappers::VectorBase::add (const PetscScalar const PetscScalar a,
    const VectorBaseconst VectorBaseV,
    const PetscScalar const PetscScalar b,
    const VectorBaseconst VectorBaseW 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1656,27 +1655,27 @@\n \n
    \n
    \n
    void PETScWrappers::VectorBase::sadd (const PetscScalar const PetscScalar s,
    const VectorBaseconst VectorBaseV 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1693,15 +1692,15 @@\n \n
    \n
    \n
    void PETScWrappers::VectorBase::sadd (const PetscScalar const PetscScalar s,
    const PetscScalar const PetscScalar a,
    const VectorBaseconst VectorBaseV 
    )
    \n \n \n \n- \n+ \n \n \n \n
    void PETScWrappers::VectorBase::scale (const VectorBaseconst VectorBasescaling_factors)
    \n
    \n

    Scale each element of this vector by the corresponding element in the argument. This function is mostly meant to simulate multiplication (and immediate re-assignment) by a diagonal scaling matrix.

    \n \n@@ -1714,21 +1713,21 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1745,16 +1744,16 @@\n \n
    \n
    \n
    void PETScWrappers::VectorBase::equ (const PetscScalar const PetscScalar a,
    const VectorBaseconst VectorBaseV 
    )
    \n \n \n \n- \n- \n+ \n+ \n \n \n
    void PETScWrappers::VectorBase::write_ascii (const PetscViewerFormat format = PETSC_VIEWER_DEFAULT)const PetscViewerFormat format = PETSC_VIEWER_DEFAULT)
    \n
    \n

    Prints the PETSc vector object values using PETSc internal vector viewer function VecView. The default format prints the vector's contents, including indices of vector elements. For other valid view formats, consult http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Vec/VecView.html

    \n \n

    Definition at line 952 of file petsc_vector_base.cc.

    \n@@ -1772,28 +1771,28 @@\n
    (std::ostream & out,
    const unsigned int const unsigned int precision = 3,
    const bool scientific = true, const bool scientific = true,
    const bool across = true const bool across = true 
    ) const
    \n@@ -1806,26 +1805,26 @@\n
    \n \n

    ◆ save()

    \n \n
    \n
    \n
    \n-template<class Archive >
    \n+template<class Archive >
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1838,26 +1837,26 @@\n \n \n

    ◆ load()

    \n \n
    \n
    \n
    \n-template<class Archive >
    \n+template<class Archive >
    \n
    void PETScWrappers::VectorBase::save (ArchiveArchive & ar,
    const unsigned int const unsigned int version 
    ) const
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1869,26 +1868,26 @@\n \n \n

    ◆ serialize()

    \n \n
    \n
    \n
    \n-template<class Archive >
    \n+template<class Archive >
    \n
    void PETScWrappers::VectorBase::load (ArchiveArchive & ar,
    const unsigned int const unsigned int version 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1931,15 +1930,15 @@\n \n

    ◆ operator const Vec &()

    \n \n
    \n
    \n
    void PETScWrappers::VectorBase::serialize (ArchiveArchive & archive,
    const unsigned int const unsigned int version 
    )
    \n \n- \n+ \n \n \n \n \n
    PETScWrappers::VectorBase::operator const Vec & PETScWrappers::VectorBase::operator const Vec & () const
    \n
    \n

    Conversion operator to gain access to the underlying PETSc type. If you do this, you cut this class off some information it may need, so this conversion operator should only be used if you know what you do. In particular, it should only be used for read-only operations into the vector.

    \n@@ -2014,33 +2013,33 @@\n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2194,15 +2193,15 @@\n \n \n

    ◆ list_subscribers() [1/2]

    \n \n
    \n
    \n
    \n-template<typename StreamType >
    \n+template<typename StreamType >
    \n
    void PETScWrappers::VectorBase::do_set_add_operation (const size_type const size_type n_elements,
    const size_typeconst size_typeindices,
    const PetscScalar * const PetscScalar * values,
    const bool const bool add_values 
    )
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classParticles_1_1ParticleAccessor.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classParticles_1_1ParticleAccessor.html", "unified_diff": "@@ -892,15 +892,15 @@\n \n \n \n
    \n \n \n \n \n@@ -2289,15 +2288,15 @@\n
    \n
    \n
    void Subscriptor::list_subscribers (
    \n \n \n \n \n
    \n \n \n- \n+ \n \n
    friend class internal::VectorReferencefriend class internal::VectorReference
    \n
    \n friend
    \n@@ -2531,15 +2530,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    const std::type_info* Subscriptor::object_infoconst std::type_info* Subscriptor::object_info
    \n
    \n mutableprivateinherited
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -15,244 +15,244 @@\n PETScWrappers::VectorBase Class Reference\n _\bL_\bi_\bn_\be_\ba_\br_\b _\ba_\bl_\bg_\be_\bb_\br_\ba_\b _\bc_\bl_\ba_\bs_\bs_\be_\bs \u00bb _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs\n #include <_\bd_\be_\ba_\bl_\b._\bI_\bI_\b/_\bl_\ba_\bc_\b/_\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh>\n Inheritance diagram for PETScWrappers::VectorBase:\n [Inheritance graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n P\bPu\bub\bbl\bli\bic\bc T\bTy\byp\bpe\bes\bs\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = PetscScalar\n+using\u00a0 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = PetscScalar\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = PetscReal\n+using\u00a0 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = PetscReal\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n+using\u00a0 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n+using\u00a0 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bc_\bo_\bn_\bs_\bt internal::VectorReference\n+using\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const internal::VectorReference\n \u00a0\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n \u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be ()\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be (_\bc_\bo_\bn_\bs_\bt Vec &v)\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be (const Vec &v)\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl\u00a0 _\b~_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be () _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ virtual\u00a0 _\b~_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be () override\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\bc_\bl_\be_\ba_\br ()\n+ virtual void\u00a0 _\bc_\bl_\be_\ba_\br ()\n \u00a0\n- void\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n+ void\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs (const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n operation)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &)\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt PetscScalar s)\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const PetscScalar s)\n \u00a0\n void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (Vec v)\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b= (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b!_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b!_\b= (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) const\n \u00a0\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bs_\bi_\bz_\be () _\bc_\bo_\bn_\bs_\bt _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bs_\bi_\bz_\be () const override\n \u00a0\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be () _\bc_\bo_\bn_\bs_\bt\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be () const\n \u00a0\n-std::pair< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\u00a0 _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be () _\bc_\bo_\bn_\bs_\bt\n+std::pair< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\u00a0 _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be () const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bi_\bn_\b__\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bi_\bn_\b__\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 _\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 _\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n- void\u00a0 _\bu_\bp_\bd_\ba_\bt_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bv_\ba_\bl_\bu_\be_\bs () _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bu_\bp_\bd_\ba_\bt_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bv_\ba_\bl_\bu_\be_\bs () const\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n \u00a0\n- PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n \u00a0\n- PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- void\u00a0 _\bs_\be_\bt (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt std::vector< PetscScalar >\n+ void\u00a0 _\bs_\be_\bt (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const std::vector< PetscScalar >\n &values)\n \u00a0\n- void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt std::vector<\n+ void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const std::vector<\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &indices, std::vector<\n- PetscScalar > &values) _\bc_\bo_\bn_\bs_\bt\n+ PetscScalar > &values) const\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< _\bc_\bo_\bn_\bs_\bt\n+ virtual void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< const\n _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx > &indices,\n- _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< PetscScalar > &elements) _\bc_\bo_\bn_\bs_\bt\n- _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< PetscScalar > &elements) const\n+ override\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n- void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\n- _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn, _\bc_\bo_\bn_\bs_\bt _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\n- _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\be_\bn_\bd, _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bv_\ba_\bl_\bu_\be_\bs_\b__\bb_\be_\bg_\bi_\bn)\n- _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const ForwardIterator\n+ indices_begin, const ForwardIterator\n+ indices_end, OutputIterator values_begin)\n+ const\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt std::vector< PetscScalar >\n+ void\u00a0 _\ba_\bd_\bd (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const std::vector< PetscScalar >\n &values)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< PetscScalar >\n+ void\u00a0 _\ba_\bd_\bd (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< PetscScalar >\n &values)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, _\bc_\bo_\bn_\bs_\bt\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, _\bc_\bo_\bn_\bs_\bt PetscScalar\n+ void\u00a0 _\ba_\bd_\bd (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, const\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, const PetscScalar\n *values)\n \u00a0\n- PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b* (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &_\bv_\be_\bc) _\bc_\bo_\bn_\bs_\bt\n+ PetscScalar\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b* (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &vec) const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bn_\bo_\br_\bm_\b__\bs_\bq_\br () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bn_\bo_\br_\bm_\b__\bs_\bq_\br () const\n \u00a0\n- PetscScalar\u00a0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be () _\bc_\bo_\bn_\bs_\bt\n+ PetscScalar\u00a0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b1_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b1_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b2_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b2_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bp_\b__\bn_\bo_\br_\bm (_\bc_\bo_\bn_\bs_\bt _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be p) _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bp_\b__\bn_\bo_\br_\bm (const _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be p) const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- PetscScalar\u00a0 _\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt (_\bc_\bo_\bn_\bs_\bt PetscScalar a, _\bc_\bo_\bn_\bs_\bt\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &W)\n+ PetscScalar\u00a0 _\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt (const PetscScalar a, const\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &W)\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo () const\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b= (_\bc_\bo_\bn_\bs_\bt PetscScalar factor)\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b= (const PetscScalar factor)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b/_\b= (_\bc_\bo_\bn_\bs_\bt PetscScalar factor)\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b/_\b= (const PetscScalar factor)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b= (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n+ _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b= (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt PetscScalar s)\n+ void\u00a0 _\ba_\bd_\bd (const PetscScalar s)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt PetscScalar a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n+ void\u00a0 _\ba_\bd_\bd (const PetscScalar a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n &V)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt PetscScalar a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n- &V, _\bc_\bo_\bn_\bs_\bt PetscScalar b, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n+ void\u00a0 _\ba_\bd_\bd (const PetscScalar a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n+ &V, const PetscScalar b, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n &W)\n \u00a0\n- void\u00a0 _\bs_\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt PetscScalar s, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n+ void\u00a0 _\bs_\ba_\bd_\bd (const PetscScalar s, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n &V)\n \u00a0\n- void\u00a0 _\bs_\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt PetscScalar s, _\bc_\bo_\bn_\bs_\bt PetscScalar\n- a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n+ void\u00a0 _\bs_\ba_\bd_\bd (const PetscScalar s, const PetscScalar\n+ a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V)\n \u00a0\n- void\u00a0 _\bs_\bc_\ba_\bl_\be (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &_\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs)\n+ void\u00a0 _\bs_\bc_\ba_\bl_\be (const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &scaling_factors)\n \u00a0\n- void\u00a0 _\be_\bq_\bu (_\bc_\bo_\bn_\bs_\bt PetscScalar a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n+ void\u00a0 _\be_\bq_\bu (const PetscScalar a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n &V)\n \u00a0\n- void\u00a0 _\bw_\br_\bi_\bt_\be_\b__\ba_\bs_\bc_\bi_\bi (_\bc_\bo_\bn_\bs_\bt _\bP_\be_\bt_\bs_\bc_\bV_\bi_\be_\bw_\be_\br_\bF_\bo_\br_\bm_\ba_\bt\n- _\bf_\bo_\br_\bm_\ba_\bt=_\bP_\bE_\bT_\bS_\bC_\b__\bV_\bI_\bE_\bW_\bE_\bR_\b__\bD_\bE_\bF_\bA_\bU_\bL_\bT)\n+ void\u00a0 _\bw_\br_\bi_\bt_\be_\b__\ba_\bs_\bc_\bi_\bi (const PetscViewerFormat\n+ format=PETSC_VIEWER_DEFAULT)\n \u00a0\n- void\u00a0 _\bp_\br_\bi_\bn_\bt (std::ostream &out, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n- precision=3, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl scientific=_\bt_\br_\bu_\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl _\ba_\bc_\br_\bo_\bs_\bs=_\bt_\br_\bu_\be) _\bc_\bo_\bn_\bs_\bt\n-\u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n- void\u00a0 _\bs_\ba_\bv_\be (_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n- version) _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bp_\br_\bi_\bn_\bt (std::ostream &out, const unsigned _\bi_\bn_\bt\n+ precision=3, const _\bb_\bo_\bo_\bl scientific=true,\n+ const _\bb_\bo_\bo_\bl across=true) const\n+\u00a0\n+template\n+ void\u00a0 _\bs_\ba_\bv_\be (Archive &ar, const unsigned _\bi_\bn_\bt\n+ version) const\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n- void\u00a0 _\bl_\bo_\ba_\bd (_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n+template\n+ void\u00a0 _\bl_\bo_\ba_\bd (Archive &ar, const unsigned _\bi_\bn_\bt\n version)\n \u00a0\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n- void\u00a0 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be (_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br_\bc_\bh_\bi_\bv_\be, _\bc_\bo_\bn_\bs_\bt unsigned\n+template\n+ void\u00a0 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be (Archive &archive, const unsigned\n _\bi_\bn_\bt version)\n \u00a0\n- void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+ void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) noexcept\n \u00a0\n- \u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b _\bc_\bo_\bn_\bs_\bt_\b _\bV_\be_\bc_\b _\b& () _\bc_\bo_\bn_\bs_\bt\n+ \u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b _\bc_\bo_\bn_\bs_\bt_\b _\bV_\be_\bc_\b _\b& () const\n \u00a0\n Vec &\u00a0 _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br ()\n \u00a0\n- std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () _\bc_\bo_\bn_\bs_\bt\n+ std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () const\n \u00a0\n- _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br () _\bc_\bo_\bn_\bs_\bt\n+ _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br () const\n \u00a0\n Subscriptor functionality\n Classes derived from _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br provide a facility to subscribe to this\n object. This is mostly used by the _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br class.\n- void\u00a0 _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *_\bc_\bo_\bn_\bs_\bt\n- _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by, _\bc_\bo_\bn_\bs_\bt std::string &_\bi_\bd_\be_\bn_\bt_\bi_\bf_\bi_\be_\br=\"\")\n- _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *const\n+ validity, const std::string &identifier=\"\")\n+ const\n \u00a0\n- void\u00a0 _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *_\bc_\bo_\bn_\bs_\bt\n- _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by, _\bc_\bo_\bn_\bs_\bt std::string &_\bi_\bd_\be_\bn_\bt_\bi_\bf_\bi_\be_\br=\"\")\n- _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *const\n+ validity, const std::string &identifier=\"\")\n+ const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn_\bs () const\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n- void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs (_\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be &stream) _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs (StreamType &stream) const\n \u00a0\n- void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () const\n \u00a0\n S\bSt\bta\bat\bti\bic\bc P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bI_\bn_\bU_\bs_\be (_\bi_\bn_\bt _\ba_\br_\bg_\b1, std::string _\ba_\br_\bg_\b2, std::string\n- _\ba_\br_\bg_\b3)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bI_\bn_\bU_\bs_\be (_\bi_\bn_\bt arg1, std::string arg2, std::string\n+ arg3)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bN_\bo_\bS_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br (std::string _\ba_\br_\bg_\b1, std::string _\ba_\br_\bg_\b2)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bN_\bo_\bS_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br (std::string arg1, std::string arg2)\n \u00a0\n P\bPr\bro\bot\bte\bec\bct\bte\bed\bd M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-void\u00a0 _\bd_\bo_\b__\bs_\be_\bt_\b__\ba_\bd_\bd_\b__\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n- *indices, _\bc_\bo_\bn_\bs_\bt PetscScalar *values, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl _\ba_\bd_\bd_\b__\bv_\ba_\bl_\bu_\be_\bs)\n+void\u00a0 _\bd_\bo_\b__\bs_\be_\bt_\b__\ba_\bd_\bd_\b__\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+ *indices, const PetscScalar *values, const _\bb_\bo_\bo_\bl add_values)\n \u00a0\n void\u00a0 _\bd_\be_\bt_\be_\br_\bm_\bi_\bn_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs ()\n \u00a0\n P\bPr\bro\bot\bte\bec\bct\bte\bed\bd A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n Vec\u00a0 _\bv_\be_\bc_\bt_\bo_\br\n \u00a0\n _\bb_\bo_\bo_\bl\u00a0 _\bg_\bh_\bo_\bs_\bt_\be_\bd\n \u00a0\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs\n \u00a0\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be T\bTy\byp\bpe\bes\bs\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n+using\u00a0 _\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)::iterator\n+using\u00a0 _\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)::iterator\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-void\u00a0 _\bc_\bh_\be_\bc_\bk_\b__\bn_\bo_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+void\u00a0 _\bc_\bh_\be_\bc_\bk_\b__\bn_\bo_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () const noexcept\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n std::atomic< unsigned _\bi_\bn_\bt >\u00a0 _\bc_\bo_\bu_\bn_\bt_\be_\br\n \u00a0\n std::map< std::string, unsigned _\bi_\bn_\bt >\u00a0 _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp\n \u00a0\n std::vector< std::atomic< _\bb_\bo_\bo_\bl > * >\u00a0 _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by_\b__\bp_\bo_\bi_\bn_\bt_\be_\br_\bs\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt std::type_info *\u00a0 _\bo_\bb_\bj_\be_\bc_\bt_\b__\bi_\bn_\bf_\bo\n+ const std::type_info *\u00a0 _\bo_\bb_\bj_\be_\bc_\bt_\b__\bi_\bn_\bf_\bo\n \u00a0\n S\bSt\bta\bat\bti\bic\bc P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n-_\bs_\bt_\ba_\bt_\bi_\bc std::mutex\u00a0 _\bm_\bu_\bt_\be_\bx\n+static std::mutex\u00a0 _\bm_\bu_\bt_\be_\bx\n \u00a0\n F\bFr\bri\bie\ben\bnd\bds\bs\n-_\bc_\bl_\ba_\bs_\bs\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be\n+class\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be\n \u00a0\n R\bRe\bel\bla\bat\bte\bed\bd S\bSy\bym\bmb\bbo\bol\bls\bs\n (Note that these are not member symbols.)\n-void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &_\bu, _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &u, _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) noexcept\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n Base class for all vector classes that are implemented on top of the PETSc\n vector types. Since in PETSc all vector types (i.e. sequential and parallel\n ones) are built by filling the contents of an abstract object that is only\n referenced through a pointer of a type that is independent of the actual vector\n type, we can implement almost all functionality of vectors in this base class.\n@@ -267,54 +267,54 @@\n Note that PETSc only guarantees that operations do what you expect if the\n functions VecAssemblyBegin and VecAssemblyEnd have been called after vector\n assembly. Therefore, you need to call _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\b(_\b) before you actually\n use the vector.\n Definition at line _\b2_\b5_\b2 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br T\bTy\byp\bpe\bed\bde\bef\bf D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = PetscScalar\n+using _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = PetscScalar\n Declare some of the standard types used in all containers. These types parallel\n those in the C++ standard libraries vector<...> class.\n Definition at line _\b2_\b6_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bea\bal\bl_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = PetscReal\n+using _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = PetscReal\n Definition at line _\b2_\b6_\b1 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n+using _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx\n Definition at line _\b2_\b6_\b2 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n+using _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n Definition at line _\b2_\b6_\b3 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bon\bns\bst\bt_\b_r\bre\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bc_\bo_\bn_\bs_\bt internal::\n+using _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const internal::\n VectorReference\n Definition at line _\b2_\b6_\b4 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bap\bp_\b_v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n+using _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n The data type used in _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp.\n Definition at line _\b2_\b2_\b9 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bap\bp_\b_i\bit\bte\ber\bra\bat\bto\bor\br *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp):: privateinherited\n+using _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp):: privateinherited\n iterator\n The iterator type used in _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp.\n Definition at line _\b2_\b3_\b4 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* C\bCo\bon\bns\bst\btr\bru\buc\bct\bto\bor\br &\b& D\bDe\bes\bst\btr\bru\buc\bct\bto\bor\br D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\brB\bBa\bas\bse\be(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n PETScWrappers::VectorBase::VectorBase ( )\n Default constructor. It doesn't do anything, derived classes will have to\n initialize the data.\n Definition at line _\b1_\b2_\b2 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\brB\bBa\bas\bse\be(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-PETScWrappers::VectorBase::VectorBase ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv )\n+PETScWrappers::VectorBase::VectorBase ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv )\n Copy constructor. Sets the dimension to that of the given vector, and copies\n all elements.\n Definition at line _\b1_\b3_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\brB\bBa\bas\bse\be(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt Vec &\u00a0 v\bv ) explicit\n+PETScWrappers::VectorBase:: ( const Vec &\u00a0 v\bv ) explicit\n VectorBase\n Initialize a _\bV_\be_\bc_\bt_\bo_\br from a PETSc Vec object. Note that we do not copy the\n vector.\n Definition at line _\b1_\b4_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0~\b~V\bVe\bec\bct\bto\bor\brB\bBa\bas\bse\be(\b()\b) *\b**\b**\b**\b**\b*\n PETScWrappers::VectorBase:: ( ) overridevirtual\n ~VectorBase\n@@ -325,28 +325,28 @@\n void PETScWrappers::VectorBase:: ( ) virtual\n clear\n Release all memory and return to a state just like after having called the\n default constructor.\n Reimplemented in _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br.\n Definition at line _\b3_\b4_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bom\bmp\bpr\bre\bes\bss\bs(\b()\b) *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn )\n+void PETScWrappers::VectorBase:: ( const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn )\n compress\n Compress the underlying representation of the PETSc object, i.e. flush the\n buffers of the vector object if it has any. This function is necessary after\n writing into a vector element-by-element and before anything else can be done\n on it.\n See _\bC_\bo_\bm_\bp_\br_\be_\bs_\bs_\bi_\bn_\bg_\b _\bd_\bi_\bs_\bt_\br_\bi_\bb_\bu_\bt_\be_\bd_\b _\bo_\bb_\bj_\be_\bc_\bt_\bs for more information.\n Definition at line _\b5_\b4_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv )\n+_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & PETScWrappers::VectorBase::operator= ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv )\n The copy assignment operator.\n Definition at line _\b3_\b5_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br= ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 s\bs )\n+_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & PETScWrappers::VectorBase::operator= ( const PetscScalar\u00a0 s\bs )\n Set all components of the vector to the given number s. Simply pass this down\n to the individual block objects, but we still need to declare this function to\n make the example given in the discussion about making the constructor explicit\n work.\n Since the semantics of assigning a scalar to a vector are not immediately\n clear, this operator should really only be used if you want to set the entire\n vector to zero. This allows the intuitive notation v=0. Assigning other values\n@@ -356,21 +356,21 @@\n void PETScWrappers::VectorBase::reinit ( Vec\u00a0 v\bv )\n This method associates the PETSc Vec to the instance of the class. This is\n particularly useful when performing PETSc to Deal.II operations since it allows\n to reuse the Deal.II _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be and the PETSc Vec without incurring in memory\n copies.\n Definition at line _\b1_\b7_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bb_\bo_\bo_\bl _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br== ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv ) const\n+_\bb_\bo_\bo_\bl PETScWrappers::VectorBase::operator== ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv ) const\n Test for equality. This function assumes that the present vector and the one to\n compare with have the same size already, since comparing vectors of different\n sizes makes not much sense anyway.\n Definition at line _\b3_\b9_\b9 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bb_\bo_\bo_\bl PETScWrappers::VectorBase::operator!= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv ) const\n+_\bb_\bo_\bo_\bl PETScWrappers::VectorBase::operator!= ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv ) const\n Test for inequality. This function assumes that the present vector and the one\n to compare with have the same size already, since comparing vectors of\n different sizes makes not much sense anyway.\n Definition at line _\b4_\b1_\b3 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsi\biz\bze\be(\b()\b) *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be PETScWrappers::VectorBase:: ( ) const overridevirtual\n size\n@@ -391,149 +391,146 @@\n Return a pair of indices indicating which elements of this vector are stored\n locally. The first number is the index of the first element stored, the second\n the index of the one past the last one that is stored locally. If this is a\n sequential vector, then the result will be the pair (0,N), otherwise it will be\n a pair (i,i+n), where n=_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be_\b(_\b).\n Definition at line _\b4_\b5_\b1 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bn_\b_l\blo\boc\bca\bal\bl_\b_r\bra\ban\bng\bge\be(\b()\b) *\b**\b**\b**\b**\b*\n-_\bb_\bo_\bo_\bl PETScWrappers::VectorBase::in_local_range ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n+_\bb_\bo_\bo_\bl PETScWrappers::VectorBase::in_local_range ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n Return whether index is in the local range or not, see also _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be_\b(_\b).\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt PETScWrappers::VectorBase::locally_owned_elements ( ) const\n Return an index set that describes which elements of this vector are owned by\n the current processor. Note that this index set does not include elements this\n vector may store locally as ghost elements but that are in fact owned by\n another processor. As a consequence, the index sets returned on different\n processors if this is a distributed vector will form disjoint sets that add up\n to the complete index set. Obviously, if a vector is created on only one\n processor, then the result would satisfy\n-_\bv_\be_\bc.locally_owned_elements() == _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt (_\bv_\be_\bc.size())\n-_\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bv_\be_\bc_\bt_\bo_\br\n-Vec vector\n-D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh_\b:_\b8_\b1_\b3\n+vec.locally_owned_elements() == _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt (vec.size())\n _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt\n IndexSet complete_index_set(const IndexSet::size_type N)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b2_\b0_\b4\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0h\bha\bas\bs_\b_g\bgh\bho\bos\bst\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n _\bb_\bo_\bo_\bl PETScWrappers::VectorBase::has_ghost_elements ( ) const\n Return if the vector contains ghost elements.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0g\bgh\bho\bos\bst\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n-_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt & PETScWrappers::VectorBase::ghost_elements ( ) const\n+const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt & PETScWrappers::VectorBase::ghost_elements ( ) const\n Return the _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt of ghost elements.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0u\bup\bpd\bda\bat\bte\be_\b_g\bgh\bho\bos\bst\bt_\b_v\bva\bal\blu\bue\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n void PETScWrappers::VectorBase::update_ghost_values ( ) const\n Update ghosted elements.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br(\b()\b)(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br() ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx )\n+_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be PETScWrappers::VectorBase::operator() ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx )\n Provide access to a given element, both read and write.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br(\b()\b)(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-PetscScalar _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br()\n+PetscScalar PETScWrappers::VectorBase:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n+operator()\n Provide read-only access to an element.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br[] ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx )\n+_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be PETScWrappers::VectorBase::operator[] ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx )\n Provide access to a given element, both read and write.\n-Exactly the same as _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b).\n+Exactly the same as operator().\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-PetscScalar _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br[]\n+PetscScalar PETScWrappers::VectorBase:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n+operator[]\n Provide read-only access to an element.\n-Exactly the same as _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b).\n+Exactly the same as operator().\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\bet\bt(\b()\b) *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+void PETScWrappers::VectorBase:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n set\n- _\bc_\bo_\bn_\bs_\bt std::vector< PetscScalar > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+ const std::vector< PetscScalar > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n A collective set operation: instead of setting individual elements of a vector,\n this function allows to set a whole set of elements at once. The indices of the\n elements to be set are stated in the first argument, the corresponding values\n in the second.\n Definition at line _\b4_\b6_\b4 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\bex\bxt\btr\bra\bac\bct\bt_\b_s\bsu\bub\bbv\bve\bec\bct\bto\bor\br_\b_t\bto\bo(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+void PETScWrappers::VectorBase:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n extract_subvector_to\n std::vector< PetscScalar > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n ) const\n-Instead of getting individual elements of a vector via _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b), this\n+Instead of getting individual elements of a vector via operator(), this\n function allows getting a whole set of elements at once. The indices of the\n elements to be read are stated in the first argument, the corresponding values\n are returned in the second.\n If the current vector is called v, then this function is the equivalent to the\n code\n for (unsigned int i=0; i i\bin\bnd\bdi\bic\bce\bes\bs,\n VectorBase:: &\u00a0 overridevirtual\n extract_subvector_to\n _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< PetscScalar > &\u00a0 e\bel\ble\bem\bme\ben\bnt\bts\bs\u00a0\n ) const\n Extract a range of elements all at once.\n Implements _\bR_\be_\ba_\bd_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bP_\be_\bt_\bs_\bc_\bS_\bc_\ba_\bl_\ba_\br_\b _\b>.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\bex\bxt\btr\bra\bac\bct\bt_\b_s\bsu\bub\bbv\bve\bec\bct\bto\bor\br_\b_t\bto\bo(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n-void PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_b\bbe\beg\bgi\bin\bn,\n+template\n+void PETScWrappers::VectorBase:: ( const ForwardIterator\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_b\bbe\beg\bgi\bin\bn,\n extract_subvector_to\n- _\bc_\bo_\bn_\bs_\bt _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_e\ben\bnd\bd,\n- _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 v\bva\bal\blu\bue\bes\bs_\b_b\bbe\beg\bgi\bin\bn\u00a0\n+ const ForwardIterator\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_e\ben\bnd\bd,\n+ OutputIterator\u00a0 v\bva\bal\blu\bue\bes\bs_\b_b\bbe\beg\bgi\bin\bn\u00a0\n ) const\n-Instead of getting individual elements of a vector via _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b), this\n+Instead of getting individual elements of a vector via operator(), this\n function allows getting a whole set of elements at once. In contrast to the\n previous function, this function obtains the indices of the elements by\n dereferencing all elements of the iterator range provided by the first two\n arguments, and puts the vector values into memory locations obtained by\n dereferencing a range of iterators starting at the location pointed to by the\n third argument.\n If the current vector is called v, then this function is the equivalent to the\n code\n-_\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp = _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn;\n-_\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bv_\ba_\bl_\bu_\be_\bs_\b__\bp = _\bv_\ba_\bl_\bu_\be_\bs_\b__\bb_\be_\bg_\bi_\bn;\n-while (_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp != _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\be_\bn_\bd)\n+ForwardIterator indices_p = indices_begin;\n+OutputIterator values_p = values_begin;\n+while (indices_p != indices_end)\n {\n-*_\bv_\ba_\bl_\bu_\be_\bs_\b__\bp = v[*_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp];\n-++_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp;\n-++_\bv_\ba_\bl_\bu_\be_\bs_\b__\bp;\n+*values_p = v[*indices_p];\n+++indices_p;\n+++values_p;\n }\n Precondition\n It must be possible to write into as many memory locations starting at\n values_begin as there are iterators between indices_begin and\n indices_end.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[1\b1/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+void PETScWrappers::VectorBase:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n add\n- _\bc_\bo_\bn_\bs_\bt std::vector< PetscScalar > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+ const std::vector< PetscScalar > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n A collective add operation: This function adds a whole set of values stored in\n values to the vector components specified by indices.\n Definition at line _\b4_\b7_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[2\b2/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+void PETScWrappers::VectorBase:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n add\n- _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< PetscScalar > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+ const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< PetscScalar > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n This is a second collective add operation. As a difference, this function takes\n a deal.II vector of values.\n Definition at line _\b4_\b8_\b6 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[3\b3/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::add ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n- _\bc_\bo_\bn_\bs_\bt PetscScalar *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+void PETScWrappers::VectorBase::add ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+ const PetscScalar *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n Take an address where n_elements are stored contiguously and add them into the\n vector. Handles all cases which are not covered by the other two _\ba_\bd_\bd_\b(_\b)\n functions above.\n Definition at line _\b4_\b9_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br*\b*(\b()\b) *\b**\b**\b**\b**\b*\n-PetscScalar _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bve\bec\bc ) const\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br*\n+PetscScalar PETScWrappers::VectorBase:: ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bve\bec\bc ) const\n+operator*\n Return the scalar product of two vectors. The vectors must have the same size.\n For complex valued vector, this gives \\(\\left(v^\\ast,vec\\right)\\).\n Definition at line _\b5_\b0_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bno\bor\brm\bm_\b_s\bsq\bqr\br(\b()\b) *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be PETScWrappers::VectorBase::norm_sqr ( ) const\n Return the square of the \\(l_2\\)-norm.\n Definition at line _\b6_\b0_\b4 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n@@ -551,28 +548,28 @@\n Definition at line _\b6_\b6_\b4 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bl2\b2_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be PETScWrappers::VectorBase::l2_norm ( ) const\n \\(l_2\\)-norm of the vector. The square root of the sum of the squares of the\n elements.\n Definition at line _\b6_\b7_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blp\bp_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 p\bp ) const\n+_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be PETScWrappers::VectorBase:: ( const _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 p\bp ) const\n lp_norm\n \\(l_p\\)-norm of the vector. The pth root of the sum of the pth powers of the\n absolute values of the elements.\n Definition at line _\b6_\b9_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bin\bnf\bft\bty\by_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be PETScWrappers::VectorBase::linfty_norm ( ) const\n \\(l_\\infty\\)-norm of the vector. Return the value of the vector element with\n the maximum absolute value.\n Definition at line _\b7_\b3_\b2 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd_\b_a\ban\bnd\bd_\b_d\bdo\bot\bt(\b()\b) *\b**\b**\b**\b**\b*\n-PetscScalar PETScWrappers::VectorBase::add_and_dot ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 W\bW\u00a0\n+PetscScalar PETScWrappers::VectorBase::add_and_dot ( const PetscScalar\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 W\bW\u00a0\n )\n Performs a combined operation of a vector addition and a subsequent inner\n product, returning the value of the inner product. In other words, the result\n of this function is the same as if the user called\n this->_\ba_\bd_\bd(a, V);\n return_value = *this * W;\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\ba_\bd_\bd\n@@ -590,113 +587,113 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bal\bll\bl_\b_z\bze\ber\bro\bo(\b()\b) *\b**\b**\b**\b**\b*\n _\bb_\bo_\bo_\bl PETScWrappers::VectorBase::all_zero ( ) const\n Return whether the vector contains only elements with value zero. This is a\n _\bc_\bo_\bl_\bl_\be_\bc_\bt_\bi_\bv_\be_\b _\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn. This function is expensive, because potentially all\n elements have to be checked.\n Definition at line _\b7_\b4_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br*\b*=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 f\bfa\bac\bct\bto\bor\br )\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br*=\n+_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & PETScWrappers::VectorBase:: ( const PetscScalar\u00a0 f\bfa\bac\bct\bto\bor\br )\n+operator*=\n Multiply the entire vector by a fixed factor.\n Definition at line _\b8_\b0_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br/\b/=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 f\bfa\bac\bct\bto\bor\br )\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br/=\n+_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & PETScWrappers::VectorBase:: ( const PetscScalar\u00a0 f\bfa\bac\bct\bto\bor\br )\n+operator/=\n Divide the entire vector by a fixed factor.\n Definition at line _\b8_\b1_\b4 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br+\b+=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br+= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV )\n+_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & PETScWrappers::VectorBase::operator+= ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV )\n Add the given vector to the present one.\n Definition at line _\b8_\b3_\b1 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br-\b-=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br-= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV )\n+_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be & PETScWrappers::VectorBase::operator-= ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV )\n Subtract the given vector from the present one.\n Definition at line _\b8_\b4_\b3 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[4\b4/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::add ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 s\bs )\n+void PETScWrappers::VectorBase::add ( const PetscScalar\u00a0 s\bs )\n Addition of s to all components. Note that s is a scalar and not a vector.\n Definition at line _\b8_\b5_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[5\b5/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::add ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0\n+void PETScWrappers::VectorBase::add ( const PetscScalar\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0\n )\n Simple addition of a multiple of a vector, i.e. *this += a*V.\n Definition at line _\b8_\b6_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[6\b6/\b/6\b6]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::add ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV,\n- _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 b\bb,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 W\bW\u00a0\n+void PETScWrappers::VectorBase::add ( const PetscScalar\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV,\n+ const PetscScalar\u00a0 b\bb,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 W\bW\u00a0\n )\n Multiple addition of scaled vectors, i.e. *this += a*V+b*W.\n Definition at line _\b8_\b7_\b9 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsa\bad\bdd\bd(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::sadd ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 s\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0\n+void PETScWrappers::VectorBase::sadd ( const PetscScalar\u00a0 s\bs,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0\n )\n Scaling and simple vector addition, i.e. t\bth\bhi\bis\bs =\b= s\bs(*this)+V.\n Definition at line _\b8_\b9_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsa\bad\bdd\bd(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::sadd ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 s\bs,\n- _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0\n+void PETScWrappers::VectorBase::sadd ( const PetscScalar\u00a0 s\bs,\n+ const PetscScalar\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0\n )\n Scaling and simple addition, i.e. t\bth\bhi\bis\bs =\b= s\bs(*this)+a*V.\n Definition at line _\b9_\b1_\b0 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsc\bca\bal\ble\be(\b()\b) *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::scale ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 s\bsc\bca\bal\bli\bin\bng\bg_\b_f\bfa\bac\bct\bto\bor\brs\bs )\n+void PETScWrappers::VectorBase::scale ( const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 s\bsc\bca\bal\bli\bin\bng\bg_\b_f\bfa\bac\bct\bto\bor\brs\bs )\n Scale each element of this vector by the corresponding element in the argument.\n This function is mostly meant to simulate multiplication (and immediate re-\n assignment) by a diagonal scaling matrix.\n Definition at line _\b9_\b2_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\beq\bqu\bu(\b()\b) *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase::equ ( _\bc_\bo_\bn_\bs_\bt PetscScalar\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0\n+void PETScWrappers::VectorBase::equ ( const PetscScalar\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 V\bV\u00a0\n )\n Assignment *this = a*V.\n Definition at line _\b9_\b3_\b8 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0w\bwr\bri\bit\bte\be_\b_a\bas\bsc\bci\bii\bi(\b()\b) *\b**\b**\b**\b**\b*\n-void PETScWrappers:: ( _\bc_\bo_\bn_\bs_\bt _\bP_\be_\bt_\bs_\bc_\bV_\bi_\be_\bw_\be_\br_\bF_\bo_\br_\bm_\ba_\bt\u00a0 f\bfo\bor\brm\bma\bat\bt = )\n-VectorBase::write_ascii _\bP_\bE_\bT_\bS_\bC_\b__\bV_\bI_\bE_\bW_\bE_\bR_\b__\bD_\bE_\bF_\bA_\bU_\bL_\bT\n+void PETScWrappers:: ( const PetscViewerFormat\u00a0 f\bfo\bor\brm\bma\bat\bt = )\n+VectorBase::write_ascii PETSC_VIEWER_DEFAULT\n Prints the PETSc vector object values using PETSc internal vector viewer\n function VecView. The default format prints the vector's contents, including\n indices of vector elements. For other valid view formats, consult _\bh_\bt_\bt_\bp_\b:_\b/_\b/\n _\bw_\bw_\bw_\b._\bm_\bc_\bs_\b._\ba_\bn_\bl_\b._\bg_\bo_\bv_\b/_\bp_\be_\bt_\bs_\bc_\b/_\bp_\be_\bt_\bs_\bc_\b-_\bc_\bu_\br_\br_\be_\bn_\bt_\b/_\bd_\bo_\bc_\bs_\b/_\bm_\ba_\bn_\bu_\ba_\bl_\bp_\ba_\bg_\be_\bs_\b/_\bV_\be_\bc_\b/_\bV_\be_\bc_\bV_\bi_\be_\bw_\b._\bh_\bt_\bm_\bl\n Definition at line _\b9_\b5_\b2 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0p\bpr\bri\bin\bnt\bt(\b()\b) *\b**\b**\b**\b**\b*\n void PETScWrappers::VectorBase::print ( std::ostream &\u00a0 o\bou\but\bt,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 p\bpr\bre\bec\bci\bis\bsi\bio\bon\bn = 3,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 s\bsc\bci\bie\ben\bnt\bti\bif\bfi\bic\bc = _\bt_\br_\bu_\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 a\bac\bcr\bro\bos\bss\bs = _\bt_\br_\bu_\be\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 p\bpr\bre\bec\bci\bis\bsi\bio\bon\bn = 3,\n+ const _\bb_\bo_\bo_\bl\u00a0 s\bsc\bci\bie\ben\bnt\bti\bif\bfi\bic\bc = true,\n+ const _\bb_\bo_\bo_\bl\u00a0 a\bac\bcr\bro\bos\bss\bs = true\u00a0\n ) const\n Print to a stream. precision denotes the desired precision with which values\n shall be printed, scientific whether scientific notation shall be used. If\n across is true then the vector is printed in a line, while if false then the\n elements are printed on a separate line each.\n Definition at line _\b9_\b7_\b2 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsa\bav\bve\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n-void PETScWrappers::VectorBase::save ( _\bA_\br_\bc_\bh_\bi_\bv_\be &\u00a0 a\bar\br,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0\n+template\n+void PETScWrappers::VectorBase::save ( Archive &\u00a0 a\bar\br,\n+ const unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0\n ) const\n Write the data of this object to a stream for the purpose of serialization\n using the _\bB_\bO_\bO_\bS_\bT_\b _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn_\b _\bl_\bi_\bb_\br_\ba_\br_\by.\n Note\n Each processor only serializes its own locally owned values.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blo\boa\bad\bd(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n-void PETScWrappers::VectorBase::load ( _\bA_\br_\bc_\bh_\bi_\bv_\be &\u00a0 a\bar\br,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0\n+template\n+void PETScWrappers::VectorBase::load ( Archive &\u00a0 a\bar\br,\n+ const unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0\n )\n Read the data of this object from a stream for the purpose of serialization\n using the _\bB_\bO_\bO_\bS_\bT_\b _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn_\b _\bl_\bi_\bb_\br_\ba_\br_\by.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\ber\bri\bia\bal\bli\biz\bze\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n-void PETScWrappers::VectorBase::serialize ( _\bA_\br_\bc_\bh_\bi_\bv_\be &\u00a0 a\bar\brc\bch\bhi\biv\bve\be,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0\n+template\n+void PETScWrappers::VectorBase::serialize ( Archive &\u00a0 a\bar\brc\bch\bhi\biv\bve\be,\n+ const unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0\n )\n Write and read the data of this object from a stream for the purpose of\n serialization using the _\bB_\bO_\bO_\bS_\bT_\b _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn_\b _\bl_\bi_\bb_\br_\ba_\br_\by.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsw\bwa\bap\bp(\b()\b) *\b**\b**\b**\b**\b*\n void PETScWrappers::VectorBase:: ( _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv ) noexcept\n swap\n Swap the contents of this vector and the other vector v. One could do this\n@@ -705,15 +702,15 @@\n to the data of the two vectors and therefore does not need to allocate\n temporary storage and move data around.\n This function is analogous to the swap function of all C++ standard containers.\n Also, there is a global function swap(u,v) that simply calls u.swap(v), again\n in analogy to standard functions.\n Definition at line _\b1_\b0_\b1_\b9 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br c\bco\bon\bns\bst\bt V\bVe\bec\bc &\b&(\b()\b) *\b**\b**\b**\b**\b*\n-_\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt Vec & ( ) const\n+PETScWrappers::VectorBase::operator const Vec & ( ) const\n Conversion operator to gain access to the underlying PETSc type. If you do\n this, you cut this class off some information it may need, so this conversion\n operator should only be used if you know what you do. In particular, it should\n only be used for read-only operations into the vector.\n Definition at line _\b1_\b0_\b3_\b1 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0p\bpe\bet\bts\bsc\bc_\b_v\bve\bec\bct\bto\bor\br(\b()\b) *\b**\b**\b**\b**\b*\n Vec & PETScWrappers::VectorBase::petsc_vector ( )\n@@ -724,19 +721,19 @@\n std::size_t PETScWrappers::VectorBase::memory_consumption ( ) const\n Estimate for the memory consumption (not implemented for this class).\n Definition at line _\b1_\b0_\b4_\b5 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0g\bge\bet\bt_\b_m\bmp\bpi\bi_\b_c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br(\b()\b) *\b**\b**\b**\b**\b*\n _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm PETScWrappers::VectorBase::get_mpi_communicator ( ) const\n Return the underlying _\bM_\bP_\bI communicator.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0d\bdo\bo_\b_s\bse\bet\bt_\b_a\bad\bdd\bd_\b_o\bop\bpe\ber\bra\bat\bti\bio\bon\bn(\b()\b) *\b**\b**\b**\b**\b*\n-void PETScWrappers::VectorBase:: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n+void PETScWrappers::VectorBase:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n do_set_add_operation\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs, protected\n- _\bc_\bo_\bn_\bs_\bt PetscScalar *\u00a0 v\bva\bal\blu\bue\bes\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 a\bad\bdd\bd_\b_v\bva\bal\blu\bue\bes\bs\u00a0\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs, protected\n+ const PetscScalar *\u00a0 v\bva\bal\blu\bue\bes\bs,\n+ const _\bb_\bo_\bo_\bl\u00a0 a\bad\bdd\bd_\b_v\bva\bal\blu\bue\bes\bs\u00a0\n )\n Collective set or add operation: This function is invoked by the collective set\n and add with the add_values flag set to the corresponding value.\n Definition at line _\b1_\b0_\b6_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0d\bde\bet\bte\ber\brm\bmi\bin\bne\be_\b_g\bgh\bho\bos\bst\bt_\b_i\bin\bnd\bdi\bic\bce\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n void PETScWrappers::VectorBase:: ( ) protected\n determine_ghost_indices\n@@ -763,15 +760,15 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_s\bsu\bub\bbs\bsc\bcr\bri\bip\bpt\bti\bio\bon\bns\bs(\b()\b) *\b**\b**\b**\b**\b*\n unsigned _\bi_\bn_\bt Subscriptor::n_subscriptions ( ) const inlineinherited\n Return the present number of subscriptions to this object. This allows to use\n this class for reference counted lifetime determination where the last one to\n unsubscribe also deletes the object.\n Definition at line _\b3_\b0_\b0 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\ber\brs\bs(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n+template\n void Subscriptor:: ( StreamType &\u00a0 s\bst\btr\bre\bea\bam\bm ) const inlineinherited\n list_subscribers\n List the subscribers to the input stream.\n Definition at line _\b3_\b1_\b7 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\ber\brs\bs(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n void Subscriptor::list_subscribers ( ) const inherited\n List the subscribers to deallog.\n@@ -787,15 +784,15 @@\n release mode.\n If this function is called when there is an uncaught exception then,\n rather than aborting, this function prints an error message to the\n standard error stream and returns.\n Definition at line _\b5_\b2 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* F\bFr\bri\bie\ben\bnd\bds\bs A\bAn\bnd\bd R\bRe\bel\bla\bat\bte\bed\bd S\bSy\bym\bmb\bbo\bol\bl D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:V\bVe\bec\bct\bto\bor\brR\bRe\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bf_\br_\bi_\be_\bn_\bd _\bc_\bl_\ba_\bs_\bs internal::VectorReference friend\n+friend class internal::VectorReference friend\n Definition at line _\b8_\b3_\b7 of file _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsw\bwa\bap\bp(\b()\b) *\b**\b**\b**\b**\b*\n void swap ( _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 u\bu,\n _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\u00a0 v\bv\u00a0 related\n )\n Global function swap which overloads the default implementation of the C++\n standard library which uses a temporary object. The function simply exchanges\n@@ -844,15 +841,15 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\bli\bid\bdi\bit\bty\by_\b_p\bpo\boi\bin\bnt\bte\ber\brs\bs *\b**\b**\b**\b**\b*\n std::vector *> Subscriptor:: mutableprivateinherited\n validity_pointers\n In this vector, we store pointers to the validity bool in the _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br\n objects that subscribe to this class.\n Definition at line _\b2_\b4_\b0 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bob\bbj\bje\bec\bct\bt_\b_i\bin\bnf\bfo\bo *\b**\b**\b**\b**\b*\n-_\bc_\bo_\bn_\bs_\bt std::type_info* Subscriptor::object_info mutableprivateinherited\n+const std::type_info* Subscriptor::object_info mutableprivateinherited\n Pointer to the typeinfo object of this object, from which we can later deduce\n the class name. Since this information on the derived class is neither\n available in the destructor, nor in the constructor, we obtain it in between\n and store it here.\n Definition at line _\b2_\b4_\b8 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bmu\but\bte\bex\bx *\b**\b**\b**\b**\b*\n std::mutex Subscriptor::mutex staticprivateinherited\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classParameterHandler.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classParameterHandler.html", "unified_diff": "@@ -932,30 +932,30 @@\n
    Short 

    Write input for ParameterHandler without comments or changed default values.

    \n
    KeepDeclarationOrder 

    Keep the order of the parameters as they have been declared.

    \n
    PRM 

    Write human readable output suitable to be read by ParameterHandler::parse_input() again.

    \n
    Text 

    Write human readable output suitable to be read by ParameterHandler::parse_input() again.

    \n-
    Deprecated:
    Use PRM instead of Text.
    \n+
    Deprecated:
    Use PRM instead of Text.
    \n
    LaTeX 

    Write parameters as a LaTeX table.

    \n
    Description 

    Write out declared parameters with description and possible values.

    \n
    Note
    This format is not suitable to be read back again.
    \n
    XML 

    Write out everything as an XML file suitable to be read by ParameterHandler::parse_input_from_xml() again.

    \n

    See the general documentation of this class for an example of output.

    \n
    JSON 

    Write out everything as a JSON file suitable to be read by ParameterHandler::parse_input_from_json() again.

    \n
    ShortPRM 

    Write the content of ParameterHandler without comments or changed default values.

    \n
    ShortText 

    Write the content of ParameterHandler without comments or changed default values.

    \n-
    Deprecated:
    Use ShortPRM instead of ShortText.
    \n+
    Deprecated:
    Use ShortPRM instead of ShortText.
    \n
    ShortXML 

    Write the content of ParameterHandler without comments or changed default values as a XML file.

    \n
    ShortJSON 

    Write the content of ParameterHandler without comments or changed default values as a JSON file.

    \n
    ShortLaTeX 

    Write the content of ParameterHandler without comments or changed default values as a LaTeX file.

    \n
    \n inline
    \n
    \n

    Tell the particle where to store its properties (even if it does not own properties). Usually this is only done once per particle, but since the particle generator does not know about the properties we want to do it not at construction time. Another use for this function is after particle transfer to a new process.

    \n-
    Deprecated:
    This function is only kept for backward compatibility and has no meaning any more. ParticleAccessors always use the property pool of the owning particle handler.
    \n+
    Deprecated:
    This function is only kept for backward compatibility and has no meaning any more. ParticleAccessors always use the property pool of the owning particle handler.
    \n \n

    Definition at line 835 of file particle_accessor.h.

    \n \n
    \n \n \n

    ◆ serialized_size_in_bytes()

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPoint.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPoint.html", "unified_diff": "@@ -1649,15 +1649,15 @@\n
    \n inherited
    \n
    \n

    Fill a vector with all tensor elements.

    \n

    This function unrolls all tensor entries into a single, linearly numbered vector. As usual in C++, the rightmost index of the tensor marches fastest.

    \n-
    Deprecated:
    Use the more general function that takes a pair of iterators instead.
    \n+
    Deprecated:
    Use the more general function that takes a pair of iterators instead.
    \n \n
    \n
    \n \n

    ◆ unroll() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPolarManifold.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classPolarManifold.html", "unified_diff": "@@ -1409,15 +1409,15 @@\n \n \n \n \n
    const Point<spacedim> PolarManifold< dim, spacedim >::center
    \n
    \n

    The center of the spherical coordinate system.

    \n-
    Deprecated:
    Use get_center() instead.
    \n+
    Deprecated:
    Use get_center() instead.
    \n \n

    Definition at line 150 of file manifold_lib.h.

    \n \n
    \n
    \n \n

    ◆ p_center

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classReferenceCell.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classReferenceCell.html", "unified_diff": "@@ -1837,15 +1837,15 @@\n
    \n inline
    \n
    \n

    Determine the orientation of the current entity described by its vertices vertices_1 relative to an entity described by vertices_0. The two arrays given as arguments can be arrays of global vertex indices or local vertex indices, arrays of vertex locations, or arrays of any other objects identifying the vertices and the order in which they are encountered in a cell.

    \n

    The size of the arrays, i.e., the template argument N, must be equal to or larger than the number of vertices of the current entity. If it is larger, only those elements of the input and output arrays are read from or written to that correspond to valid vertex indices.

    \n-
    Deprecated:
    Use get_combined_orientation() instead.
    \n+
    Deprecated:
    Use get_combined_orientation() instead.
    \n \n

    Definition at line 3183 of file reference_cell.h.

    \n \n
    \n \n \n

    ◆ get_combined_orientation()

    \n@@ -1916,15 +1916,15 @@\n
    \n inline
    \n
    \n

    Inverse function of compute_orientation(): Given a set of vertex-associated objects (such as vertex indices, locations, etc.) and a desired orientation permutation, return the permuted vertex information.

    \n

    The size of the input and output arrays, i.e., the template argument N, must be equal to or larger than the number of vertices of the current entity. If it is larger, only those elements of the input and output arrays are read from or written to that correspond to valid vertex indices.

    \n-
    Deprecated:
    Use permute_by_combined_orientation() instead.
    \n+
    Deprecated:
    Use permute_by_combined_orientation() instead.
    \n \n

    Definition at line 3259 of file reference_cell.h.

    \n \n
    \n
    \n \n

    ◆ permute_by_combined_orientation()

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classSLEPcWrappers_1_1TransformationSpectrumFolding.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classSLEPcWrappers_1_1TransformationSpectrumFolding.html", "unified_diff": "@@ -136,15 +136,15 @@\n
    const AdditionalData additional_data
     
    ST st
     
    \n

    Detailed Description

    \n

    An implementation of the transformation interface using the SLEPc Spectrum Folding. This transformation type has been removed in SLEPc 3.5.0 and thus cannot be used in the newer versions.

    \n-
    Deprecated:
    Since deal.II requires PETSc 3.7 or newer this class no longer does anything.
    \n+
    Deprecated:
    Since deal.II requires PETSc 3.7 or newer this class no longer does anything.
    \n \n

    Definition at line 211 of file slepc_spectral_transformation.h.

    \n

    Constructor & Destructor Documentation

    \n \n

    ◆ TransformationSpectrumFolding()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classSUNDIALS_1_1KINSOL.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classSUNDIALS_1_1KINSOL.html", "unified_diff": "@@ -523,17 +523,17 @@\n \n \n \n \n
    std::function<VectorType &()> SUNDIALS::KINSOL< VectorType >::get_solution_scaling
    \n
    \n

    A function object that users may supply and that is intended to return a vector whose components are the weights used by KINSOL to compute the vector norm of the solution. The implementation of this function is optional, and it is used only if implemented.

    \n-

    The intent for this scaling factor is for problems in which the different components of a solution have vastly different numerical magnitudes – typically because they have different physical units and represent different things. For example, if one were to solve a nonlinear Stokes problem, the solution vector has components that correspond to velocities and other components that correspond to pressures. These have different physical units and depending on which units one chooses, they may have roughly comparable numerical sizes or maybe they don't. To give just one example, in simulations of flow in the Earth's interior, one has velocities on the order of maybe ten centimeters per year, and pressures up to around 100 GPa. If one expresses this in SI units, this corresponds to velocities of around \\(0.000,000,003=3 \\times 10^{-9}\\) m/s, and pressures around \\(10^9 \\text{kg}/\\text{m}/\\text{s}^2\\), i.e., vastly different. In such cases, computing the \\(l_2\\) norm of a solution-type vector (e.g., the difference between the previous and the current solution) makes no sense because the norm will either be dominated by the velocity components or the pressure components. The scaling vector this function returns is intended to provide each component of the solution with a scaling factor that is generally chosen as the inverse of a \"typical velocity\" or \"typical pressure\" so that upon multiplication of a vector component by the corresponding scaling vector component, one obtains a number that is of order of magnitude of one (i.e., a reasonably small multiple of one times the typical velocity/pressure). The KINSOL manual states this as follows: \"The user should supply values \\_form#2658,\n-which are diagonal elements of the scaling matrix such that \\_form#2676 has\n-all components roughly the same magnitude when \\_form#302 is close to a\n+

    The intent for this scaling factor is for problems in which the different components of a solution have vastly different numerical magnitudes – typically because they have different physical units and represent different things. For example, if one were to solve a nonlinear Stokes problem, the solution vector has components that correspond to velocities and other components that correspond to pressures. These have different physical units and depending on which units one chooses, they may have roughly comparable numerical sizes or maybe they don't. To give just one example, in simulations of flow in the Earth's interior, one has velocities on the order of maybe ten centimeters per year, and pressures up to around 100 GPa. If one expresses this in SI units, this corresponds to velocities of around \\(0.000,000,003=3 \\times 10^{-9}\\) m/s, and pressures around \\(10^9 \\text{kg}/\\text{m}/\\text{s}^2\\), i.e., vastly different. In such cases, computing the \\(l_2\\) norm of a solution-type vector (e.g., the difference between the previous and the current solution) makes no sense because the norm will either be dominated by the velocity components or the pressure components. The scaling vector this function returns is intended to provide each component of the solution with a scaling factor that is generally chosen as the inverse of a \"typical velocity\" or \"typical pressure\" so that upon multiplication of a vector component by the corresponding scaling vector component, one obtains a number that is of order of magnitude of one (i.e., a reasonably small multiple of one times the typical velocity/pressure). The KINSOL manual states this as follows: \"The user should supply values \\_form#2644,\n+which are diagonal elements of the scaling matrix such that \\_form#2662 has\n+all components roughly the same magnitude when \\_form#112 is close to a\n solution\".

    \n

    If no function is provided to a KINSOL object, then this is interpreted as implicitly saying that all of these scaling factors should be considered as one.

    \n
    Note
    This variable represents a user provided callback. See there for a description of how to deal with errors and other requirements and conventions. In particular, KINSOL can deal with \"recoverable\" errors in some circumstances, so callbacks can throw exceptions of type RecoverableUserCallbackError.
    \n \n

    Definition at line 651 of file kinsol.h.

    \n \n
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -367,16 +367,16 @@\n the pressure components. The scaling vector this function returns is intended\n to provide each component of the solution with a scaling factor that is\n generally chosen as the inverse of a \"typical velocity\" or \"typical pressure\"\n so that upon multiplication of a vector component by the corresponding scaling\n vector component, one obtains a number that is of order of magnitude of one\n (i.e., a reasonably small multiple of one times the typical velocity/pressure).\n The _\bK_\bI_\bN_\bS_\bO_\bL manual states this as follows: \"The user should supply values\n-\\_form#2658, which are diagonal elements of the scaling matrix such that\n-\\_form#2676 has all components roughly the same magnitude when \\_form#302 is\n+\\_form#2644, which are diagonal elements of the scaling matrix such that\n+\\_form#2662 has all components roughly the same magnitude when \\_form#112 is\n close to a solution\".\n If no function is provided to a _\bK_\bI_\bN_\bS_\bO_\bL object, then this is interpreted as\n implicitly saying that all of these scaling factors should be considered as\n one.\n Note\n This variable represents a _\bu_\bs_\be_\br_\b _\bp_\br_\bo_\bv_\bi_\bd_\be_\bd_\b _\bc_\ba_\bl_\bl_\bb_\ba_\bc_\bk. See there for a\n description of how to deal with errors and other requirements and\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classSphericalManifold.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classSphericalManifold.html", "unified_diff": "@@ -1344,15 +1344,15 @@\n \n \n \n \n
    const Point<spacedim> SphericalManifold< dim, spacedim >::center
    \n
    \n

    The center of the spherical coordinate system.

    \n-
    Deprecated:
    Use get_center() instead.
    \n+
    Deprecated:
    Use get_center() instead.
    \n \n

    Definition at line 356 of file manifold_lib.h.

    \n \n
    \n \n \n

    ◆ p_center

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classSymmetricTensor.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classSymmetricTensor.html", "unified_diff": "@@ -592,15 +592,15 @@\n
    ()
    \n
    \n

    Return a pointer to the first element of the underlying storage.

    \n-
    Deprecated:
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n+
    Deprecated:
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n \n
    \n
    \n \n

    ◆ begin_raw() [2/2]

    \n \n
    \n@@ -613,15 +613,15 @@\n
    () const
    \n
    \n

    Return a const pointer to the first element of the underlying storage.

    \n-
    Deprecated:
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n+
    Deprecated:
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n \n
    \n \n \n

    ◆ end_raw() [1/2]

    \n \n
    \n@@ -634,15 +634,15 @@\n
    ()
    \n
    \n

    Return a pointer to the element past the end of the underlying storage.

    \n-
    Deprecated:
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n+
    Deprecated:
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n \n
    \n \n \n

    ◆ end_raw() [2/2]

    \n \n
    \n@@ -655,15 +655,15 @@\n
    () const
    \n
    \n

    Return a const pointer to the element past the end of the underlying storage.

    \n-
    Deprecated:
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n+
    Deprecated:
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n \n
    \n
    \n \n

    ◆ operator=() [1/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTensor.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTensor.html", "unified_diff": "@@ -1210,15 +1210,15 @@\n
    result) const
    \n
    \n

    Fill a vector with all tensor elements.

    \n

    This function unrolls all tensor entries into a single, linearly numbered vector. As usual in C++, the rightmost index of the tensor marches fastest.

    \n-
    Deprecated:
    Use the more general function that takes a pair of iterators instead.
    \n+
    Deprecated:
    Use the more general function that takes a pair of iterators instead.
    \n \n
    \n \n \n

    ◆ unroll() [2/2]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1Vector.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classTrilinosWrappers_1_1MPI_1_1Vector.html", "unified_diff": "@@ -125,237 +125,237 @@\n \"\"\n \"\"\n \n
    [legend]
    \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n

    \n Public Types

    using value_type = TrilinosScalar
    using value_type = TrilinosScalar
     
    using real_type = TrilinosScalar
    using real_type = TrilinosScalar
     
    using size_type = VectorTraits::size_type
    using size_type = VectorTraits::size_type
     
    using iterator = value_type *
    using iterator = value_type *
     
    using const_iterator = const value_type *
    using const_iterator = const value_type *
     
    using reference = internal::VectorReference
    using reference = internal::VectorReference
     
    using const_reference = const internal::VectorReference
    using const_reference = const internal::VectorReference
     
    \n \n-\n-\n+\n+\n \n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n \n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n \n \n-\n+\n \n \n \n-\n+\n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n-\n+\n+\n \n-\n+\n \n

    \n Public Member Functions

    template<class Archive >
    void serialize (Archive &ar, const unsigned int version)
    template<class Archive >
    void serialize (Archive &ar, const unsigned int version)
     
    1: Basic Object-handling
     Vector ()
     
     Vector (const Vector &v)
     Vector (const Vector &v)
     
     Vector (const IndexSet &parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD)
     Vector (const IndexSet &parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD)
     
     Vector (const IndexSet &local, const IndexSet &ghost, const MPI_Comm communicator=MPI_COMM_WORLD)
     Vector (const IndexSet &local, const IndexSet &ghost, const MPI_Comm communicator=MPI_COMM_WORLD)
     
     Vector (const IndexSet &parallel_partitioning, const Vector &v, const MPI_Comm communicator=MPI_COMM_WORLD)
     Vector (const IndexSet &parallel_partitioning, const Vector &v, const MPI_Comm communicator=MPI_COMM_WORLD)
     
    template<typename Number >
     Vector (const IndexSet &parallel_partitioning, const ::Vector< Number > &v, const MPI_Comm communicator=MPI_COMM_WORLD)
    template<typename Number >
     Vector (const IndexSet &parallel_partitioning, const ::Vector< Number > &v, const MPI_Comm communicator=MPI_COMM_WORLD)
     
     Vector (Vector &&v)
     
     ~Vector () override=default
     ~Vector () override=default
     
    void clear ()
     
    void reinit (const Vector &v, const bool omit_zeroing_entries=false, const bool allow_different_maps=false)
    void reinit (const Vector &v, const bool omit_zeroing_entries=false, const bool allow_different_maps=false)
     
    void reinit (const IndexSet &parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD, const bool omit_zeroing_entries=false)
    void reinit (const IndexSet &parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD, const bool omit_zeroing_entries=false)
     
    void reinit (const IndexSet &locally_owned_entries, const IndexSet &locally_relevant_or_ghost_entries, const MPI_Comm communicator=MPI_COMM_WORLD, const bool vector_writable=false)
    void reinit (const IndexSet &locally_owned_entries, const IndexSet &locally_relevant_or_ghost_entries, const MPI_Comm communicator=MPI_COMM_WORLD, const bool vector_writable=false)
     
    void reinit (const std::shared_ptr< const Utilities::MPI::Partitioner > &partitioner, const bool make_ghosted=true, const bool vector_writable=false)
    void reinit (const std::shared_ptr< const Utilities::MPI::Partitioner > &partitioner, const bool make_ghosted=true, const bool vector_writable=false)
     
    void reinit (const BlockVector &v, const bool import_data=false)
    void reinit (const BlockVector &v, const bool import_data=false)
     
    void compress (VectorOperation::values operation)
     
    Vectoroperator= (const TrilinosScalar s)
    Vectoroperator= (const TrilinosScalar s)
     
    Vectoroperator= (const Vector &v)
    Vectoroperator= (const Vector &v)
     
    Vectoroperator= (Vector &&v) noexcept
    Vectoroperator= (Vector &&v) noexcept
     
    template<typename Number >
    Vectoroperator= (const ::Vector< Number > &v)
    template<typename Number >
    Vectoroperator= (const ::Vector< Number > &v)
     
    void import_nonlocal_data_for_fe (const ::TrilinosWrappers::SparseMatrix &matrix, const Vector &vector)
    void import_nonlocal_data_for_fe (const ::TrilinosWrappers::SparseMatrix &matrix, const Vector &vector)
     
    void import_elements (const LinearAlgebra::ReadWriteVector< double > &rwv, const VectorOperation::values operation)
    void import_elements (const LinearAlgebra::ReadWriteVector< double > &rwv, const VectorOperation::values operation)
     
    void import (const LinearAlgebra::ReadWriteVector< double > &rwv, const VectorOperation::values operation)
    void import (const LinearAlgebra::ReadWriteVector< double > &rwv, const VectorOperation::values operation)
     
    bool operator== (const Vector &v) const
    bool operator== (const Vector &v) const
     
    bool operator!= (const Vector &v) const
    bool operator!= (const Vector &v) const
     
    size_type size () const override
    size_type size () const override
     
    size_type locally_owned_size () const
    size_type locally_owned_size () const
     
    std::pair< size_type, size_typelocal_range () const
    std::pair< size_type, size_typelocal_range () const
     
    bool in_local_range (const size_type index) const
    bool in_local_range (const size_type index) const
     
    IndexSet locally_owned_elements () const
    IndexSet locally_owned_elements () const
     
    bool has_ghost_elements () const
    bool has_ghost_elements () const
     
    void update_ghost_values () const
    void update_ghost_values () const
     
    TrilinosScalar operator* (const Vector &vec) const
    TrilinosScalar operator* (const Vector &vec) const
     
    real_type norm_sqr () const
    real_type norm_sqr () const
     
    TrilinosScalar mean_value () const
    TrilinosScalar mean_value () const
     
    TrilinosScalar min () const
    TrilinosScalar min () const
     
    TrilinosScalar max () const
    TrilinosScalar max () const
     
    real_type l1_norm () const
    real_type l1_norm () const
     
    real_type l2_norm () const
    real_type l2_norm () const
     
    real_type lp_norm (const TrilinosScalar p) const
    real_type lp_norm (const TrilinosScalar p) const
     
    real_type linfty_norm () const
    real_type linfty_norm () const
     
    TrilinosScalar add_and_dot (const TrilinosScalar a, const Vector &V, const Vector &W)
    TrilinosScalar add_and_dot (const TrilinosScalar a, const Vector &V, const Vector &W)
     
    bool all_zero () const
    bool all_zero () const
     
    bool is_non_negative () const
    bool is_non_negative () const
     
    2: Data-Access
    reference operator() (const size_type index)
    reference operator() (const size_type index)
     
    TrilinosScalar operator() (const size_type index) const
    TrilinosScalar operator() (const size_type index) const
     
    reference operator[] (const size_type index)
    reference operator[] (const size_type index)
     
    TrilinosScalar operator[] (const size_type index) const
    TrilinosScalar operator[] (const size_type index) const
     
    void extract_subvector_to (const std::vector< size_type > &indices, std::vector< TrilinosScalar > &values) const
    void extract_subvector_to (const std::vector< size_type > &indices, std::vector< TrilinosScalar > &values) const
     
    virtual void extract_subvector_to (const ArrayView< const size_type > &indices, ArrayView< TrilinosScalar > &elements) const override
    virtual void extract_subvector_to (const ArrayView< const size_type > &indices, ArrayView< TrilinosScalar > &elements) const override
     
    template<typename ForwardIterator , typename OutputIterator >
    void extract_subvector_to (ForwardIterator indices_begin, const ForwardIterator indices_end, OutputIterator values_begin) const
    template<typename ForwardIterator , typename OutputIterator >
    void extract_subvector_to (ForwardIterator indices_begin, const ForwardIterator indices_end, OutputIterator values_begin) const
     
    iterator begin ()
     
    const_iterator begin () const
    const_iterator begin () const
     
    iterator end ()
     
    const_iterator end () const
    const_iterator end () const
     
    3: Modification of vectors
    void set (const std::vector< size_type > &indices, const std::vector< TrilinosScalar > &values)
    void set (const std::vector< size_type > &indices, const std::vector< TrilinosScalar > &values)
     
    void set (const std::vector< size_type > &indices, const ::Vector< TrilinosScalar > &values)
    void set (const std::vector< size_type > &indices, const ::Vector< TrilinosScalar > &values)
     
    void set (const size_type n_elements, const size_type *indices, const TrilinosScalar *values)
    void set (const size_type n_elements, const size_type *indices, const TrilinosScalar *values)
     
    void add (const std::vector< size_type > &indices, const std::vector< TrilinosScalar > &values)
    void add (const std::vector< size_type > &indices, const std::vector< TrilinosScalar > &values)
     
    void add (const std::vector< size_type > &indices, const ::Vector< TrilinosScalar > &values)
    void add (const std::vector< size_type > &indices, const ::Vector< TrilinosScalar > &values)
     
    void add (const size_type n_elements, const size_type *indices, const TrilinosScalar *values)
    void add (const size_type n_elements, const size_type *indices, const TrilinosScalar *values)
     
    Vectoroperator*= (const TrilinosScalar factor)
    Vectoroperator*= (const TrilinosScalar factor)
     
    Vectoroperator/= (const TrilinosScalar factor)
    Vectoroperator/= (const TrilinosScalar factor)
     
    Vectoroperator+= (const Vector &V)
    Vectoroperator+= (const Vector &V)
     
    Vectoroperator-= (const Vector &V)
    Vectoroperator-= (const Vector &V)
     
    void add (const TrilinosScalar s)
    void add (const TrilinosScalar s)
     
    void add (const Vector &V, const bool allow_different_maps=false)
    void add (const Vector &V, const bool allow_different_maps=false)
     
    void add (const TrilinosScalar a, const Vector &V)
    void add (const TrilinosScalar a, const Vector &V)
     
    void add (const TrilinosScalar a, const Vector &V, const TrilinosScalar b, const Vector &W)
    void add (const TrilinosScalar a, const Vector &V, const TrilinosScalar b, const Vector &W)
     
    void sadd (const TrilinosScalar s, const Vector &V)
    void sadd (const TrilinosScalar s, const Vector &V)
     
    void sadd (const TrilinosScalar s, const TrilinosScalar a, const Vector &V)
    void sadd (const TrilinosScalar s, const TrilinosScalar a, const Vector &V)
     
    void scale (const Vector &scaling_factors)
    void scale (const Vector &scaling_factors)
     
    void equ (const TrilinosScalar a, const Vector &V)
    void equ (const TrilinosScalar a, const Vector &V)
     
    4: Mixed stuff
    const Epetra_MultiVector & trilinos_vector () const
    const Epetra_MultiVector & trilinos_vector () const
     
    Epetra_FEVector & trilinos_vector ()
     
    const Epetra_BlockMaptrilinos_partitioner () const
    const Epetra_BlockMap & trilinos_partitioner () const
     
    void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
    void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
     
    void swap (Vector &v) noexcept
    void swap (Vector &v) noexcept
     
    std::size_t memory_consumption () const
    std::size_t memory_consumption () const
     
    MPI_Comm get_mpi_communicator () const
    MPI_Comm get_mpi_communicator () const
     
    Subscriptor functionality

    Classes derived from Subscriptor provide a facility to subscribe to this object. This is mostly used by the SmartPointer class.

    \n
    void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
    void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
     
    void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
    void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
     
    unsigned int n_subscriptions () const
    unsigned int n_subscriptions () const
     
    template<typename StreamType >
    void list_subscribers (StreamType &stream) const
    template<typename StreamType >
    void list_subscribers (StreamType &stream) const
     
    void list_subscribers () const
    void list_subscribers () const
     
    \n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n-\n+\n \n

    \n Static Public Member Functions

    static ::ExceptionBaseExcDifferentParallelPartitioning ()
    static ::ExceptionBaseExcDifferentParallelPartitioning ()
     
    static ::ExceptionBaseExcTrilinosError (int arg1)
    static ::ExceptionBaseExcTrilinosError (int arg1)
     
    static ::ExceptionBaseExcAccessToNonLocalElement (size_type arg1, size_type arg2, size_type arg3, size_type arg4)
    static ::ExceptionBaseExcAccessToNonLocalElement (size_type arg1, size_type arg2, size_type arg3, size_type arg4)
     
    static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
    static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
     
    static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
    static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
     
    \n \n-\n+\n \n-\n+\n \n

    \n Private Types

    using map_value_type = decltype(counter_map)::value_type
    using map_value_type = decltype(counter_map)::value_type
     
    using map_iterator = decltype(counter_map)::iterator
    using map_iterator = decltype(counter_map)::iterator
     
    \n \n-\n+\n \n

    \n Private Member Functions

    void check_no_subscribers () const noexcept
    void check_no_subscribers () const noexcept
     
    \n \n \n \n \n@@ -370,54 +370,54 @@\n \n \n \n \n \n \n \n-\n+\n \n

    \n Private Attributes

    Epetra_CombineMode last_action
     
    bool compressed
     
    std::atomic< unsigned intcounter
     
    std::map< std::string, unsigned intcounter_map
     
    std::vector< std::atomic< bool > * > validity_pointers
     
    const std::type_info * object_info
    const std::type_info * object_info
     
    \n \n-\n+\n \n

    \n Static Private Attributes

    static std::mutex mutex
    static std::mutex mutex
     
    \n \n-\n+\n \n

    \n Friends

    class internal::VectorReference
    class internal::VectorReference
     
    \n \n \n-\n+\n \n

    \n Related Symbols

    (Note that these are not member symbols.)

    \n
    void swap (Vector &u, Vector &v) noexcept
    void swap (Vector &u, Vector &v) noexcept
     
    \n

    Detailed Description

    \n

    This class implements a wrapper to use the Trilinos distributed vector class Epetra_FEVector, the (parallel) partitioning of which is governed by an Epetra_Map. The Epetra_FEVector is precisely the kind of vector we deal with all the time - we probably get it from some assembly process, where also entries not locally owned might need to written and hence need to be forwarded to the owner.

    \n

    The interface of this class is modeled after the existing Vector class in deal.II. It has almost the same member functions, and is often exchangeable. However, since Trilinos only supports a single scalar type (double), it is not templated, and only works with that type.

    \n

    Note that Trilinos only guarantees that operations do what you expect if the function GlobalAssemble has been called after vector assembly in order to distribute the data. This is necessary since some processes might have accumulated data of elements that are not owned by themselves, but must be sent to the owning process. In order to avoid using the wrong data, you need to call Vector::compress() before you actually use the vectors.

    \n

    Parallel communication model

    \n

    The parallel functionality of Trilinos is built on top of the Message Passing Interface (MPI). MPI's communication model is built on collective communications: if one process wants something from another, that other process has to be willing to accept this communication. A process cannot query data from another process by calling a remote function, without that other process expecting such a transaction. The consequence is that most of the operations in the base class of this class have to be called collectively. For example, if you want to compute the l2 norm of a parallel vector, all processes across which this vector is shared have to call the l2_norm function. If you don't do this, but instead only call the l2_norm function on one process, then the following happens: This one process will call one of the collective MPI functions and wait for all the other processes to join in on this. Since the other processes don't call this function, you will either get a time-out on the first process, or, worse, by the time the next a call to a Trilinos function generates an MPI message on the other processes, you will get a cryptic message that only a subset of processes attempted a communication. These bugs can be very hard to figure out, unless you are well-acquainted with the communication model of MPI, and know which functions may generate MPI messages.

    \n

    One particular case, where an MPI message may be generated unexpectedly is discussed below.

    \n

    Accessing individual elements of a vector

    \n-

    Trilinos does of course allow read access to individual elements of a vector, but in the distributed case only to elements that are stored locally. We implement this through calls like d=vec(i). However, if you access an element outside the locally stored range, an exception is generated.

    \n-

    In contrast to read access, Trilinos (and the respective deal.II wrapper classes) allow to write (or add) to individual elements of vectors, even if they are stored on a different process. You can do this by writing into or adding to elements using the syntax vec(i)=d or vec(i)+=d, or similar operations. There is one catch, however, that may lead to very confusing error messages: Trilinos requires application programs to call the compress() function when they switch from performing a set of operations that add to elements, to performing a set of operations that write to elements. The reasoning is that all processes might accumulate addition operations to elements, even if multiple processes write to the same elements. By the time we call compress() the next time, all these additions are executed. However, if one process adds to an element, and another overwrites to it, the order of execution would yield non-deterministic behavior if we don't make sure that a synchronization with compress() happens in between.

    \n+

    Trilinos does of course allow read access to individual elements of a vector, but in the distributed case only to elements that are stored locally. We implement this through calls like d=vec(i). However, if you access an element outside the locally stored range, an exception is generated.

    \n+

    In contrast to read access, Trilinos (and the respective deal.II wrapper classes) allow to write (or add) to individual elements of vectors, even if they are stored on a different process. You can do this by writing into or adding to elements using the syntax vec(i)=d or vec(i)+=d, or similar operations. There is one catch, however, that may lead to very confusing error messages: Trilinos requires application programs to call the compress() function when they switch from performing a set of operations that add to elements, to performing a set of operations that write to elements. The reasoning is that all processes might accumulate addition operations to elements, even if multiple processes write to the same elements. By the time we call compress() the next time, all these additions are executed. However, if one process adds to an element, and another overwrites to it, the order of execution would yield non-deterministic behavior if we don't make sure that a synchronization with compress() happens in between.

    \n

    In order to make sure these calls to compress() happen at the appropriate time, the deal.II wrappers keep a state variable that store which is the presently allowed operation: additions or writes. If it encounters an operation of the opposite kind, it calls compress() and flips the state. This can sometimes lead to very confusing behavior, in code that may for example look like this:

    \n
    \n
    // do some write operations on the vector
    \n
    for (size_type i=0; i<vector->size(); ++i)
    \n
    vector(i) = i;
    \n
    \n
    // do some additions to vector elements, but
    \n
    // only for some elements
    \n
    for (size_type i=0; i<vector->size(); ++i)
    \n-
    if (some_condition(i) == true)
    \n+
    if (some_condition(i) == true)
    \n
    vector(i) += 1;
    \n
    \n
    // do another collective operation
    \n
    const double norm = vector->l2_norm();
    \n \n
    std::unique_ptr< Epetra_FEVector > vector
    \n \n@@ -436,15 +436,15 @@\n \n

    ◆ value_type

    \n \n
    \n
    \n

    Declare some of the standard types used in all containers. These types parallel those in the C standard libraries vector<...> class.

    \n \n

    Definition at line 412 of file trilinos_vector.h.

    \n \n@@ -453,15 +453,15 @@\n \n

    ◆ real_type

    \n \n
    \n
    \n \n

    Definition at line 413 of file trilinos_vector.h.

    \n \n
    \n@@ -469,15 +469,15 @@\n \n

    ◆ size_type

    \n \n
    \n
    \n \n

    Definition at line 414 of file trilinos_vector.h.

    \n \n
    \n@@ -485,15 +485,15 @@\n \n

    ◆ iterator

    \n \n
    \n
    \n \n

    Definition at line 415 of file trilinos_vector.h.

    \n \n
    \n@@ -501,15 +501,15 @@\n \n

    ◆ const_iterator

    \n \n
    \n
    \n \n

    Definition at line 416 of file trilinos_vector.h.

    \n \n
    \n@@ -517,15 +517,15 @@\n \n

    ◆ reference

    \n \n
    \n
    \n \n \n- \n+ \n \n
    using TrilinosWrappers::MPI::Vector::reference = internal::VectorReferenceusing TrilinosWrappers::MPI::Vector::reference = internal::VectorReference
    \n
    \n \n

    Definition at line 417 of file trilinos_vector.h.

    \n \n
    \n@@ -533,15 +533,15 @@\n \n

    ◆ const_reference

    \n \n
    \n
    \n \n \n- \n+ \n \n
    using TrilinosWrappers::MPI::Vector::const_reference = const internal::VectorReferenceusing TrilinosWrappers::MPI::Vector::const_reference = const internal::VectorReference
    \n
    \n \n

    Definition at line 418 of file trilinos_vector.h.

    \n \n
    \n@@ -552,15 +552,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using Subscriptor::map_value_type = decltype(counter_map)::value_typeusing Subscriptor::map_value_type = decltype(counter_map)::value_type
    \n
    \n privateinherited
    \n@@ -577,15 +577,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    using Subscriptor::map_iterator = decltype(counter_map)::iteratorusing Subscriptor::map_iterator = decltype(counter_map)::iterator
    \n
    \n privateinherited
    \n@@ -622,15 +622,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    Vector< Number >::Vector (const Vectorconst Vectorv)
    \n
    \n

    Copy constructor using the given vector.

    \n \n@@ -646,22 +646,22 @@\n \n \n \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    Vector< Number >::Vector (const IndexSetconst IndexSetparallel_partitioning,
    const MPI_Comm communicator = MPI_COMM_WORLD const MPI_Comm communicator = MPI_COMM_WORLD 
    )
    \n@@ -685,28 +685,28 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    Vector< Number >::Vector (const IndexSetconst IndexSetlocal,
    const IndexSetconst IndexSetghost,
    const MPI_Comm communicator = MPI_COMM_WORLD const MPI_Comm communicator = MPI_COMM_WORLD 
    )
    \n@@ -724,28 +724,28 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    Vector< Number >::Vector (const IndexSetconst IndexSetparallel_partitioning,
    const Vectorconst Vectorv,
    const MPI_Comm communicator = MPI_COMM_WORLD const MPI_Comm communicator = MPI_COMM_WORLD 
    )
    \n@@ -760,33 +760,33 @@\n
    \n \n

    ◆ Vector() [6/7]

    \n \n
    \n
    \n
    \n-template<typename Number >
    \n+template<typename Number >
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    TrilinosWrappers::MPI::Vector::Vector (const IndexSetconst IndexSetparallel_partitioning,
    const ::Vector< Number > & const ::Vector< Number > & v,
    const MPI_Comm communicator = MPI_COMM_WORLD const MPI_Comm communicator = MPI_COMM_WORLD 
    )
    \n@@ -871,28 +871,28 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::reinit (const Vectorconst Vectorv,
    const bool omit_zeroing_entries = false, const bool omit_zeroing_entries = false,
    const bool allow_different_maps = false const bool allow_different_maps = false 
    )
    \n@@ -909,28 +909,28 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::reinit (const IndexSetconst IndexSetparallel_partitioning,
    const MPI_Comm communicator = MPI_COMM_WORLD, const MPI_Comm communicator = MPI_COMM_WORLD,
    const bool omit_zeroing_entries = false const bool omit_zeroing_entries = false 
    )
    \n@@ -949,34 +949,34 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::reinit (const IndexSetconst IndexSetlocally_owned_entries,
    const IndexSetconst IndexSetlocally_relevant_or_ghost_entries,
    const MPI_Comm communicator = MPI_COMM_WORLD, const MPI_Comm communicator = MPI_COMM_WORLD,
    const bool vector_writable = false const bool vector_writable = false 
    )
    \n@@ -996,28 +996,28 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::reinit (const std::shared_ptr< const Utilities::MPI::Partitioner > & const std::shared_ptr< const Utilities::MPI::Partitioner > & partitioner,
    const bool make_ghosted = true, const bool make_ghosted = true,
    const bool vector_writable = false const bool vector_writable = false 
    )
    \n@@ -1035,22 +1035,22 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::reinit (const BlockVectorconst BlockVectorv,
    const bool import_data = false const bool import_data = false 
    )
    \n@@ -1087,17 +1087,17 @@\n \n

    ◆ operator=() [1/4]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & TrilinosWrappers::MPI::Vector::operator= Vector & TrilinosWrappers::MPI::Vector::operator= (const TrilinosScalar const TrilinosScalar s)
    \n
    \n

    Set all components of the vector to the given number s. Simply pass this down to the base class, but we still need to declare this function to make the example given in the discussion about making the constructor explicit work. the constructor explicit work.

    \n

    Since the semantics of assigning a scalar to a vector are not immediately clear, this operator can only be used if you want to set the entire vector to zero. This allows the intuitive notation v=0.

    \n@@ -1107,17 +1107,17 @@\n \n

    ◆ operator=() [2/4]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & Vector< Number >::operator= Vector & Vector< Number >::operator= (const Vectorconst Vectorv)
    \n
    \n

    Copy the given vector. Resize the present vector if necessary. In this case, also the Epetra_Map that designs the parallel partitioning is taken from the input vector.

    \n

    The semantics of this operator are complex. If the two vectors have the same size, and if either the left or right hand side vector of the assignment (i.e., either the input vector on the right hand side, or the calling vector to the left of the assignment operator) currently has ghost elements, then the left hand side vector will also have ghost values and will consequently be a read-only vector (see also the glossary entry on the issue). Otherwise, the left hand vector will be a writable vector after this operation. These semantics facilitate having a vector with ghost elements on the left hand side of the assignment, and a vector without ghost elements on the right hand side, with the resulting left hand side vector having the correct values in both its locally owned and its ghost elements.

    \n@@ -1133,15 +1133,15 @@\n
    \n
    \n \n \n \n@@ -1158,20 +1158,20 @@\n \n \n

    ◆ operator=() [4/4]

    \n \n
    \n
    \n
    \n-template<typename Number >
    \n+template<typename Number >
    \n
    \n \n \n- \n+ \n \n \n \n \n \n
    Vector & Vector< Number >::operator= Vector & Vector< Number >::operator= (Vector && v)
    \n
    \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & TrilinosWrappers::MPI::Vector::operator= Vector & TrilinosWrappers::MPI::Vector::operator= (const ::Vector< Number > & const ::Vector< Number > & v)
    \n
    \n

    Another copy function. This one takes a deal.II vector and copies it into a TrilinosWrapper vector. Note that since we do not provide any Epetra_map that tells about the partitioning of the vector among the MPI processes, the size of the TrilinosWrapper vector has to be the same as the size of the input vector.

    \n \n@@ -1182,21 +1182,21 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1213,21 +1213,21 @@\n \n
    \n
    \n
    void Vector< Number >::import_nonlocal_data_for_fe (const ::TrilinosWrappers::SparseMatrixconst ::TrilinosWrappers::SparseMatrixmatrix,
    const Vectorconst Vectorvector 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1247,51 +1247,51 @@\n
    void Vector< Number >::import_elements (const LinearAlgebra::ReadWriteVector< double > & const LinearAlgebra::ReadWriteVector< double > & rwv,
    const VectorOperation::values const VectorOperation::values operation 
    )
    \n \n \n \n \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n
    void TrilinosWrappers::MPI::Vector::import (const LinearAlgebra::ReadWriteVector< double > & const LinearAlgebra::ReadWriteVector< double > & rwv,
    const VectorOperation::values const VectorOperation::values operation 
    )
    \n
    \n inline
    \n
    \n-
    Deprecated:
    Use import_elements() instead.
    \n+
    Deprecated:
    Use import_elements() instead.
    \n \n

    Definition at line 767 of file trilinos_vector.h.

    \n \n
    \n
    \n \n

    ◆ operator==()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    bool Vector< Number >::operator== bool Vector< Number >::operator== (const Vectorconst Vectorv) const
    \n
    \n

    Test for equality. This function assumes that the present vector and the one to compare with have the same size already, since comparing vectors of different sizes makes not much sense anyway.

    \n \n@@ -1304,15 +1304,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    bool Vector< Number >::operator!= (const Vectorconst Vectorv) const
    \n
    \n

    Test for inequality. This function assumes that the present vector and the one to compare with have the same size already, since comparing vectors of different sizes makes not much sense anyway.

    \n \n@@ -1390,15 +1390,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    bool TrilinosWrappers::MPI::Vector::in_local_range (const size_type const size_type index) const
    \n
    \n

    Return whether index is in the local range or not, see also local_range().

    \n
    Note
    The same limitation for the applicability of this function applies as listed in the documentation of local_range().
    \n@@ -1415,15 +1415,15 @@\n
    IndexSet TrilinosWrappers::MPI::Vector::locally_owned_elements () const
    \n
    \n-

    Return an index set that describes which elements of this vector are owned by the current processor. Note that this index set does not include elements this vector may store locally as ghost elements but that are in fact owned by another processor. As a consequence, the index sets returned on different processors if this is a distributed vector will form disjoint sets that add up to the complete index set. Obviously, if a vector is created on only one processor, then the result would satisfy

    vec.locally_owned_elements() == complete_index_set (vec.size())
    \n+

    Return an index set that describes which elements of this vector are owned by the current processor. Note that this index set does not include elements this vector may store locally as ghost elements but that are in fact owned by another processor. As a consequence, the index sets returned on different processors if this is a distributed vector will form disjoint sets that add up to the complete index set. Obviously, if a vector is created on only one processor, then the result would satisfy

    vec.locally_owned_elements() == complete_index_set (vec.size())
    \n
    IndexSet complete_index_set(const IndexSet::size_type N)
    Definition index_set.h:1204
    \n
    \n
    \n
    \n \n

    ◆ has_ghost_elements()

    \n \n@@ -1464,17 +1464,17 @@\n \n

    ◆ operator*()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    TrilinosScalar TrilinosWrappers::MPI::Vector::operator* TrilinosScalar TrilinosWrappers::MPI::Vector::operator* (const Vectorconst Vectorvec) const
    \n
    \n

    Return the scalar (inner) product of two vectors. The vectors must have the same size.

    \n \n@@ -1593,15 +1593,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    real_type TrilinosWrappers::MPI::Vector::lp_norm (const TrilinosScalar const TrilinosScalar p) const
    \n
    \n

    \\(l_p\\)-norm of the vector. The pth root of the sum of the pth powers of the absolute values of the elements.

    \n \n@@ -1630,27 +1630,27 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1707,17 +1707,17 @@\n \n

    ◆ operator()() [1/2]

    \n \n
    \n
    \n
    TrilinosScalar TrilinosWrappers::MPI::Vector::add_and_dot (const TrilinosScalar const TrilinosScalar a,
    const Vectorconst VectorV,
    const Vectorconst VectorW 
    )
    \n \n- \n+ \n \n- \n+ \n \n \n \n
    reference TrilinosWrappers::MPI::Vector::operator() reference TrilinosWrappers::MPI::Vector::operator() (const size_type const size_type index)
    \n
    \n

    Provide access to a given element, both read and write.

    \n

    When using a vector distributed with MPI, this operation only makes sense for elements that are actually present on the calling processor. Otherwise, an exception is thrown.

    \n@@ -1727,17 +1727,17 @@\n \n

    ◆ operator()() [2/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    TrilinosScalar Vector< Number >::operator() TrilinosScalar Vector< Number >::operator() (const size_type const size_type index) const
    \n
    \n

    Provide read-only access to an element.

    \n

    When using a vector distributed with MPI, this operation only makes sense for elements that are actually present on the calling processor. Otherwise, an exception is thrown.

    \n@@ -1749,57 +1749,57 @@\n \n

    ◆ operator[]() [1/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    reference TrilinosWrappers::MPI::Vector::operator[] reference TrilinosWrappers::MPI::Vector::operator[] (const size_type const size_type index)
    \n
    \n

    Provide access to a given element, both read and write.

    \n-

    Exactly the same as operator().

    \n+

    Exactly the same as operator().

    \n \n
    \n
    \n \n

    ◆ operator[]() [2/2]

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    TrilinosScalar TrilinosWrappers::MPI::Vector::operator[] TrilinosScalar TrilinosWrappers::MPI::Vector::operator[] (const size_type const size_type index) const
    \n
    \n

    Provide read-only access to an element.

    \n-

    Exactly the same as operator().

    \n+

    Exactly the same as operator().

    \n \n
    \n
    \n \n

    ◆ extract_subvector_to() [1/3]

    \n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1807,15 +1807,15 @@\n \n \n \n \n \n
    void TrilinosWrappers::MPI::Vector::extract_subvector_to (const std::vector< size_type > & const std::vector< size_type > & indices,
    std::vector< TrilinosScalar > & values 
    ) const
    \n
    \n-

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. The indices of the elements to be read are stated in the first argument, the corresponding values are returned in the second.

    \n+

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. The indices of the elements to be read are stated in the first argument, the corresponding values are returned in the second.

    \n

    If the current vector is called v, then this function is the equivalent to the code

    for (unsigned int i=0; i<indices.size(); ++i)
    \n
    values[i] = v[indices[i]];
    \n
    Precondition
    The sizes of the indices and values arrays must be identical.
    \n \n
    \n
    \n \n@@ -1824,17 +1824,17 @@\n
    \n
    \n \n \n \n \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n \n \n \n \n@@ -1859,49 +1859,49 @@\n \n \n

    ◆ extract_subvector_to() [3/3]

    \n \n
    \n
    \n \n+template<typename ForwardIterator , typename OutputIterator >
    \n
    virtual void TrilinosWrappers::MPI::Vector::extract_subvector_to virtual void TrilinosWrappers::MPI::Vector::extract_subvector_to (const ArrayView< const size_type > & const ArrayView< const size_type > & indices,
    ArrayView< TrilinosScalar > & elements 
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n
    void TrilinosWrappers::MPI::Vector::extract_subvector_to (ForwardIterator ForwardIterator indices_begin,
    const ForwardIterator const ForwardIterator indices_end,
    OutputIterator OutputIterator values_begin 
    ) const
    \n
    \n-

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. In contrast to the previous function, this function obtains the indices of the elements by dereferencing all elements of the iterator range provided by the first two arguments, and puts the vector values into memory locations obtained by dereferencing a range of iterators starting at the location pointed to by the third argument.

    \n-

    If the current vector is called v, then this function is the equivalent to the code

    \n-\n-\n+

    Instead of getting individual elements of a vector via operator(), this function allows getting a whole set of elements at once. In contrast to the previous function, this function obtains the indices of the elements by dereferencing all elements of the iterator range provided by the first two arguments, and puts the vector values into memory locations obtained by dereferencing a range of iterators starting at the location pointed to by the third argument.

    \n+

    If the current vector is called v, then this function is the equivalent to the code

    ForwardIterator indices_p = indices_begin;
    \n+
    OutputIterator values_p = values_begin;
    \n+
    while (indices_p != indices_end)
    \n
    {
    \n-\n-\n-\n+
    *values_p = v[*indices_p];
    \n+
    ++indices_p;
    \n+
    ++values_p;
    \n
    }
    \n
    Precondition
    It must be possible to write into as many memory locations starting at values_begin as there are iterators between indices_begin and indices_end.
    \n \n
    \n
    \n \n

    ◆ begin() [1/2]

    \n@@ -1980,21 +1980,21 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2009,21 +2009,21 @@\n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::set (const std::vector< size_type > & const std::vector< size_type > & indices,
    const std::vector< TrilinosScalar > & const std::vector< TrilinosScalar > & values 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2038,27 +2038,27 @@\n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::set (const std::vector< size_type > & const std::vector< size_type > & indices,
    const ::Vector< TrilinosScalar > & const ::Vector< TrilinosScalar > & values 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2073,21 +2073,21 @@\n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::set (const size_type const size_type n_elements,
    const size_typeconst size_typeindices,
    const TrilinosScalarconst TrilinosScalarvalues 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2102,21 +2102,21 @@\n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::add (const std::vector< size_type > & const std::vector< size_type > & indices,
    const std::vector< TrilinosScalar > & const std::vector< TrilinosScalar > & values 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2131,27 +2131,27 @@\n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::add (const std::vector< size_type > & const std::vector< size_type > & indices,
    const ::Vector< TrilinosScalar > & const ::Vector< TrilinosScalar > & values 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2164,17 +2164,17 @@\n \n

    ◆ operator*=()

    \n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::add (const size_type const size_type n_elements,
    const size_typeconst size_typeindices,
    const TrilinosScalarconst TrilinosScalarvalues 
    )
    \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & TrilinosWrappers::MPI::Vector::operator*= Vector & TrilinosWrappers::MPI::Vector::operator*= (const TrilinosScalar const TrilinosScalar factor)
    \n
    \n

    Multiply the entire vector by a fixed factor.

    \n \n@@ -2183,17 +2183,17 @@\n \n

    ◆ operator/=()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & TrilinosWrappers::MPI::Vector::operator/= Vector & TrilinosWrappers::MPI::Vector::operator/= (const TrilinosScalar const TrilinosScalar factor)
    \n
    \n

    Divide the entire vector by a fixed factor.

    \n \n@@ -2202,17 +2202,17 @@\n \n

    ◆ operator+=()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & TrilinosWrappers::MPI::Vector::operator+= Vector & TrilinosWrappers::MPI::Vector::operator+= (const Vectorconst VectorV)
    \n
    \n

    Add the given vector to the present one.

    \n \n@@ -2221,17 +2221,17 @@\n \n

    ◆ operator-=()

    \n \n
    \n
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n
    Vector & TrilinosWrappers::MPI::Vector::operator-= Vector & TrilinosWrappers::MPI::Vector::operator-= (const Vectorconst VectorV)
    \n
    \n

    Subtract the given vector from the present one.

    \n \n@@ -2242,15 +2242,15 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n
    void TrilinosWrappers::MPI::Vector::add (const TrilinosScalar const TrilinosScalar s)
    \n
    \n

    Addition of s to all components. Note that s is a scalar and not a vector.

    \n \n@@ -2261,22 +2261,22 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    void Vector< Number >::add (const Vectorconst VectorV,
    const bool allow_different_maps = false const bool allow_different_maps = false 
    )
    \n@@ -2293,21 +2293,21 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2322,33 +2322,33 @@\n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::add (const TrilinosScalar const TrilinosScalar a,
    const Vectorconst VectorV 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2363,21 +2363,21 @@\n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::add (const TrilinosScalar const TrilinosScalar a,
    const Vectorconst VectorV,
    const TrilinosScalar const TrilinosScalar b,
    const Vectorconst VectorW 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2392,27 +2392,27 @@\n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::sadd (const TrilinosScalar const TrilinosScalar s,
    const Vectorconst VectorV 
    )
    \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2427,15 +2427,15 @@\n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::sadd (const TrilinosScalar const TrilinosScalar s,
    const TrilinosScalar const TrilinosScalar a,
    const Vectorconst VectorV 
    )
    \n \n \n \n- \n+ \n \n \n \n
    void TrilinosWrappers::MPI::Vector::scale (const Vectorconst Vectorscaling_factors)
    \n
    \n

    Scale each element of this vector by the corresponding element in the argument. This function is mostly meant to simulate multiplication (and immediate re-assignment) by a diagonal scaling matrix.

    \n \n@@ -2446,21 +2446,21 @@\n \n
    \n
    \n \n \n \n \n- \n+ \n \n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -2473,15 +2473,15 @@\n \n

    ◆ trilinos_vector() [1/2]

    \n \n
    \n
    \n
    void TrilinosWrappers::MPI::Vector::equ (const TrilinosScalar const TrilinosScalar a,
    const Vectorconst VectorV 
    )
    \n \n- \n+ \n \n \n \n \n
    const Epetra_MultiVector & TrilinosWrappers::MPI::Vector::trilinos_vector const Epetra_MultiVector & TrilinosWrappers::MPI::Vector::trilinos_vector () const
    \n
    \n

    Return a const reference to the underlying Trilinos Epetra_MultiVector class.

    \n@@ -2509,15 +2509,15 @@\n \n

    ◆ trilinos_partitioner()

    \n \n
    \n
    \n \n \n- \n+ \n \n \n \n \n
    const Epetra_BlockMap & TrilinosWrappers::MPI::Vector::trilinos_partitioner const Epetra_BlockMap & TrilinosWrappers::MPI::Vector::trilinos_partitioner () const
    \n
    \n

    Return a const reference to the underlying Trilinos Epetra_BlockMap that sets the parallel partitioning of the vector.

    \n@@ -2535,28 +2535,28 @@\n
    (std::ostream & out,
    const unsigned int const unsigned int precision = 3,
    const bool scientific = true, const bool scientific = true,
    const bool across = true const bool across = true 
    ) const
    \n@@ -2744,15 +2744,15 @@\n
    \n \n

    ◆ list_subscribers() [1/2]

    \n \n
    \n
    \n
    \n-template<typename StreamType >
    \n+template<typename StreamType >
    \n \n \n \n \n \n
    \n \n \n \n \n@@ -2803,15 +2803,15 @@\n \n \n

    ◆ serialize()

    \n \n
    \n
    \n
    \n-template<class Archive >
    \n+template<class Archive >
    \n
    void Subscriptor::list_subscribers (
    \n \n \n \n \n \n
    \n \n \n \n \n@@ -2881,15 +2881,15 @@\n
    \n
    \n
    void Subscriptor::serialize (
    \n \n \n \n \n
    \n \n \n- \n+ \n \n
    friend class internal::VectorReferencefriend class internal::VectorReference
    \n
    \n friend
    \n@@ -3173,15 +3173,15 @@\n
    \n
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n
    const std::type_info* Subscriptor::object_infoconst std::type_info* Subscriptor::object_info
    \n
    \n mutableprivateinherited
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -16,292 +16,292 @@\n _\bL_\bi_\bn_\be_\ba_\br_\b _\ba_\bl_\bg_\be_\bb_\br_\ba_\b _\bc_\bl_\ba_\bs_\bs_\be_\bs \u00bb _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs | _\bL_\bi_\bn_\be_\ba_\br_\b _\ba_\bl_\bg_\be_\bb_\br_\ba_\b _\bc_\bl_\ba_\bs_\bs_\be_\bs \u00bb _\bV_\be_\bc_\bt_\bo_\br\n _\bc_\bl_\ba_\bs_\bs_\be_\bs\n #include <_\bd_\be_\ba_\bl_\b._\bI_\bI_\b/_\bl_\ba_\bc_\b/_\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh>\n Inheritance diagram for TrilinosWrappers::MPI::Vector:\n [Inheritance graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n P\bPu\bub\bbl\bli\bic\bc T\bTy\byp\bpe\bes\bs\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n+using\u00a0 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n+using\u00a0 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+using\u00a0 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be *\n+using\u00a0 _\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be *\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bc_\bo_\bn_\bs_\bt _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be *\n+using\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = const _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be *\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n+using\u00a0 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bc_\bo_\bn_\bs_\bt internal::VectorReference\n+using\u00a0 _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const internal::VectorReference\n \u00a0\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n- void\u00a0 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be (_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n+template\n+ void\u00a0 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be (Archive &ar, const unsigned _\bi_\bn_\bt\n version)\n \u00a0\n 1: Basic Object-handling\n \u00a0 _\bV_\be_\bc_\bt_\bo_\br ()\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &v)\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bV_\be_\bc_\bt_\bo_\br &v)\n \u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg, _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n- communicator=_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD)\n-\u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, _\bc_\bo_\bn_\bs_\bt\n- _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost, _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n- communicator=_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD)\n-\u00a0\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &v,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator=_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD)\n-\u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number >\n- \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg, _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br<\n- Number > &v, _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n- communicator=_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD)\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ ¶llel_partitioning, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n+ communicator=MPI_COMM_WORLD)\n+\u00a0\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, const\n+ _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n+ communicator=MPI_COMM_WORLD)\n+\u00a0\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ ¶llel_partitioning, const _\bV_\be_\bc_\bt_\bo_\br &v,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator=MPI_COMM_WORLD)\n+\u00a0\n+template\n+ \u00a0 _\bV_\be_\bc_\bt_\bo_\br (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ ¶llel_partitioning, const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br<\n+ Number > &v, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n+ communicator=MPI_COMM_WORLD)\n \u00a0\n \u00a0 _\bV_\be_\bc_\bt_\bo_\br (_\bV_\be_\bc_\bt_\bo_\br &&v)\n \u00a0\n- \u00a0 _\b~_\bV_\be_\bc_\bt_\bo_\br () _\bo_\bv_\be_\br_\br_\bi_\bd_\be=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n+ \u00a0 _\b~_\bV_\be_\bc_\bt_\bo_\br () override=default\n \u00a0\n void\u00a0 _\bc_\bl_\be_\ba_\br ()\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &v, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs=_\bf_\ba_\bl_\bs_\be, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\ba_\bl_\bl_\bo_\bw_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\b__\bm_\ba_\bp_\bs=_\bf_\ba_\bl_\bs_\be)\n-\u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg, _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n- communicator=_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs=_\bf_\ba_\bl_\bs_\be)\n-\u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bn_\bt_\br_\bi_\be_\bs, _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n- &_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\br_\be_\bl_\be_\bv_\ba_\bn_\bt_\b__\bo_\br_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bn_\bt_\br_\bi_\be_\bs, _\bc_\bo_\bn_\bs_\bt\n- _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator=_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD, _\bc_\bo_\bn_\bs_\bt\n- _\bb_\bo_\bo_\bl _\bv_\be_\bc_\bt_\bo_\br_\b__\bw_\br_\bi_\bt_\ba_\bb_\bl_\be=_\bf_\ba_\bl_\bs_\be)\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bV_\be_\bc_\bt_\bo_\br &v, const _\bb_\bo_\bo_\bl\n+ omit_zeroing_entries=false, const _\bb_\bo_\bo_\bl\n+ allow_different_maps=false)\n+\u00a0\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ ¶llel_partitioning, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n+ communicator=MPI_COMM_WORLD, const _\bb_\bo_\bo_\bl\n+ omit_zeroing_entries=false)\n+\u00a0\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ &locally_owned_entries, const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n+ &locally_relevant_or_ghost_entries, const\n+ _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator=MPI_COMM_WORLD, const\n+ _\bb_\bo_\bo_\bl vector_writable=false)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt std::shared_ptr< _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const std::shared_ptr< const\n _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br > &partitioner,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl _\bm_\ba_\bk_\be_\b__\bg_\bh_\bo_\bs_\bt_\be_\bd=_\bt_\br_\bu_\be, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\bv_\be_\bc_\bt_\bo_\br_\b__\bw_\br_\bi_\bt_\ba_\bb_\bl_\be=_\bf_\ba_\bl_\bs_\be)\n+ const _\bb_\bo_\bo_\bl make_ghosted=true, const _\bb_\bo_\bo_\bl\n+ vector_writable=false)\n \u00a0\n- void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (_\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br &v, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- import_data=_\bf_\ba_\bl_\bs_\be)\n+ void\u00a0 _\br_\be_\bi_\bn_\bi_\bt (const _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br &v, const _\bb_\bo_\bo_\bl\n+ import_data=false)\n \u00a0\n void\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs (_\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &v)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const _\bV_\be_\bc_\bt_\bo_\br &v)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bV_\be_\bc_\bt_\bo_\br &&v) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bV_\be_\bc_\bt_\bo_\br &&v) noexcept\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number >\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number > &v)\n+template\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number > &v)\n \u00a0\n- void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bd_\ba_\bt_\ba_\b__\bf_\bo_\br_\b__\bf_\be (_\bc_\bo_\bn_\bs_\bt _\b:_\b:\n+ void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bd_\ba_\bt_\ba_\b__\bf_\bo_\br_\b__\bf_\be (const _\b:_\b:\n _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bS_\bp_\ba_\br_\bs_\be_\bM_\ba_\bt_\br_\bi_\bx &matrix,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &_\bv_\be_\bc_\bt_\bo_\br)\n+ const _\bV_\be_\bc_\bt_\bo_\br &_\bv_\be_\bc_\bt_\bo_\br)\n \u00a0\n- void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs (_\bc_\bo_\bn_\bs_\bt _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n- _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< double > &_\br_\bw_\bv, _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs (const _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n+ _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< double > &rwv, const\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation)\n \u00a0\n- void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt (_\bc_\bo_\bn_\bs_\bt _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n- _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< double > &_\br_\bw_\bv, _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bi_\bm_\bp_\bo_\br_\bt (const _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n+ _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< double > &rwv, const\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation)\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &v) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b= (const _\bV_\be_\bc_\bt_\bo_\br &v) const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b!_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &v) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b!_\b= (const _\bV_\be_\bc_\bt_\bo_\br &v) const\n \u00a0\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bs_\bi_\bz_\be () _\bc_\bo_\bn_\bs_\bt _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bs_\bi_\bz_\be () const override\n \u00a0\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be () _\bc_\bo_\bn_\bs_\bt\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be () const\n \u00a0\n-std::pair< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\u00a0 _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be () _\bc_\bo_\bn_\bs_\bt\n+std::pair< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\u00a0 _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be () const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bi_\bn_\b__\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bi_\bn_\b__\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\u00a0 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs () const\n \u00a0\n- void\u00a0 _\bu_\bp_\bd_\ba_\bt_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bv_\ba_\bl_\bu_\be_\bs () _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bu_\bp_\bd_\ba_\bt_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bv_\ba_\bl_\bu_\be_\bs () const\n \u00a0\n- _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b* (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &_\bv_\be_\bc) _\bc_\bo_\bn_\bs_\bt\n+ _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b* (const _\bV_\be_\bc_\bt_\bo_\br &vec) const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bn_\bo_\br_\bm_\b__\bs_\bq_\br () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bn_\bo_\br_\bm_\b__\bs_\bq_\br () const\n \u00a0\n- _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be () _\bc_\bo_\bn_\bs_\bt\n+ _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be () const\n \u00a0\n- _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bm_\bi_\bn () _\bc_\bo_\bn_\bs_\bt\n+ _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bm_\bi_\bn () const\n \u00a0\n- _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bm_\ba_\bx () _\bc_\bo_\bn_\bs_\bt\n+ _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bm_\ba_\bx () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b1_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b1_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b2_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\b2_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bp_\b__\bn_\bo_\br_\bm (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br p) _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bp_\b__\bn_\bo_\br_\bm (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br p) const\n \u00a0\n- _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm () _\bc_\bo_\bn_\bs_\bt\n+ _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\u00a0 _\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm () const\n \u00a0\n- _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, _\bc_\bo_\bn_\bs_\bt\n- _\bV_\be_\bc_\bt_\bo_\br &V, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &W)\n+ _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, const\n+ _\bV_\be_\bc_\bt_\bo_\br &V, const _\bV_\be_\bc_\bt_\bo_\br &W)\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo () const\n \u00a0\n- _\bb_\bo_\bo_\bl\u00a0 _\bi_\bs_\b__\bn_\bo_\bn_\b__\bn_\be_\bg_\ba_\bt_\bi_\bv_\be () _\bc_\bo_\bn_\bs_\bt\n+ _\bb_\bo_\bo_\bl\u00a0 _\bi_\bs_\b__\bn_\bo_\bn_\b__\bn_\be_\bg_\ba_\bt_\bi_\bv_\be () const\n \u00a0\n 2: Data-Access\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n \u00a0\n- _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b) (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index)\n \u00a0\n- _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) _\bc_\bo_\bn_\bs_\bt\n+ _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n \u00a0\n- void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt std::vector<\n+ void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const std::vector<\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &indices, std::vector<\n- _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > &values) _\bc_\bo_\bn_\bs_\bt\n+ _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > &values) const\n \u00a0\n- _\bv_\bi_\br_\bt_\bu_\ba_\bl void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bc_\bo_\bn_\bs_\bt _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< _\bc_\bo_\bn_\bs_\bt\n+ virtual void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< const\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &indices, _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw<\n- _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > &elements) _\bc_\bo_\bn_\bs_\bt _\bo_\bv_\be_\br_\br_\bi_\bd_\be\n+ _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > &elements) const override\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n- void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (_\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\n- _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn, _\bc_\bo_\bn_\bs_\bt _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\n- _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\be_\bn_\bd, _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bv_\ba_\bl_\bu_\be_\bs_\b__\bb_\be_\bg_\bi_\bn)\n- _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo (ForwardIterator\n+ indices_begin, const ForwardIterator\n+ indices_end, OutputIterator values_begin)\n+ const\n \u00a0\n _\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 _\bb_\be_\bg_\bi_\bn ()\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 _\bb_\be_\bg_\bi_\bn () _\bc_\bo_\bn_\bs_\bt\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 _\bb_\be_\bg_\bi_\bn () const\n \u00a0\n _\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 _\be_\bn_\bd ()\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 _\be_\bn_\bd () _\bc_\bo_\bn_\bs_\bt\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 _\be_\bn_\bd () const\n \u00a0\n 3: Modification of vectors\n- void\u00a0 _\bs_\be_\bt (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt std::vector< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n+ void\u00a0 _\bs_\be_\bt (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const std::vector< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n > &values)\n \u00a0\n- void\u00a0 _\bs_\be_\bt (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br >\n+ void\u00a0 _\bs_\be_\bt (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br >\n &values)\n \u00a0\n- void\u00a0 _\bs_\be_\bt (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, _\bc_\bo_\bn_\bs_\bt\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n+ void\u00a0 _\bs_\be_\bt (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, const\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n *values)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt std::vector< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n+ void\u00a0 _\ba_\bd_\bd (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const std::vector< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n > &values)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n- &indices, _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br >\n+ void\u00a0 _\ba_\bd_\bd (const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be >\n+ &indices, const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br >\n &values)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, _\bc_\bo_\bn_\bs_\bt\n- _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n+ void\u00a0 _\ba_\bd_\bd (const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements, const\n+ _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices, const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n *values)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b= (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br factor)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b= (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br factor)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b/_\b= (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br factor)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b/_\b= (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br factor)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b= (const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b= (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ _\bV_\be_\bc_\bt_\bo_\br &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b= (const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s)\n+ void\u00a0 _\ba_\bd_\bd (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n- _\ba_\bl_\bl_\bo_\bw_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\b__\bm_\ba_\bp_\bs=_\bf_\ba_\bl_\bs_\be)\n+ void\u00a0 _\ba_\bd_\bd (const _\bV_\be_\bc_\bt_\bo_\br &V, const _\bb_\bo_\bo_\bl\n+ allow_different_maps=false)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br\n+ void\u00a0 _\ba_\bd_\bd (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, const _\bV_\be_\bc_\bt_\bo_\br\n &V)\n \u00a0\n- void\u00a0 _\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br\n- &V, _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br b, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &W)\n+ void\u00a0 _\ba_\bd_\bd (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, const _\bV_\be_\bc_\bt_\bo_\br\n+ &V, const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br b, const _\bV_\be_\bc_\bt_\bo_\br &W)\n \u00a0\n- void\u00a0 _\bs_\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br\n+ void\u00a0 _\bs_\ba_\bd_\bd (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s, const _\bV_\be_\bc_\bt_\bo_\br\n &V)\n \u00a0\n- void\u00a0 _\bs_\ba_\bd_\bd (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s, _\bc_\bo_\bn_\bs_\bt\n- _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &V)\n+ void\u00a0 _\bs_\ba_\bd_\bd (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s, const\n+ _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, const _\bV_\be_\bc_\bt_\bo_\br &V)\n \u00a0\n- void\u00a0 _\bs_\bc_\ba_\bl_\be (_\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &_\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs)\n+ void\u00a0 _\bs_\bc_\ba_\bl_\be (const _\bV_\be_\bc_\bt_\bo_\br &scaling_factors)\n \u00a0\n- void\u00a0 _\be_\bq_\bu (_\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br\n+ void\u00a0 _\be_\bq_\bu (const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, const _\bV_\be_\bc_\bt_\bo_\br\n &V)\n \u00a0\n 4: Mixed stuff\n- _\bc_\bo_\bn_\bs_\bt Epetra_MultiVector &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br () _\bc_\bo_\bn_\bs_\bt\n+ const Epetra_MultiVector &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br () const\n \u00a0\n Epetra_FEVector &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br ()\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt _\bE_\bp_\be_\bt_\br_\ba_\b__\bB_\bl_\bo_\bc_\bk_\bM_\ba_\bp &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br () _\bc_\bo_\bn_\bs_\bt\n+ const Epetra_BlockMap &\u00a0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br () const\n \u00a0\n- void\u00a0 _\bp_\br_\bi_\bn_\bt (std::ostream &out, _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\n- precision=3, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl scientific=_\bt_\br_\bu_\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl _\ba_\bc_\br_\bo_\bs_\bs=_\bt_\br_\bu_\be) _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bp_\br_\bi_\bn_\bt (std::ostream &out, const unsigned _\bi_\bn_\bt\n+ precision=3, const _\bb_\bo_\bo_\bl scientific=true,\n+ const _\bb_\bo_\bo_\bl across=true) const\n \u00a0\n- void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br &v) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+ void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br &v) noexcept\n \u00a0\n- std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () _\bc_\bo_\bn_\bs_\bt\n+ std::size_t\u00a0 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn () const\n \u00a0\n- _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br () _\bc_\bo_\bn_\bs_\bt\n+ _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br () const\n \u00a0\n Subscriptor functionality\n Classes derived from _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br provide a facility to subscribe to this\n object. This is mostly used by the _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br class.\n- void\u00a0 _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *_\bc_\bo_\bn_\bs_\bt\n- _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by, _\bc_\bo_\bn_\bs_\bt std::string &_\bi_\bd_\be_\bn_\bt_\bi_\bf_\bi_\be_\br=\"\")\n- _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *const\n+ validity, const std::string &identifier=\"\")\n+ const\n \u00a0\n- void\u00a0 _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *_\bc_\bo_\bn_\bs_\bt\n- _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by, _\bc_\bo_\bn_\bs_\bt std::string &_\bi_\bd_\be_\bn_\bt_\bi_\bf_\bi_\be_\br=\"\")\n- _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (std::atomic< _\bb_\bo_\bo_\bl > *const\n+ validity, const std::string &identifier=\"\")\n+ const\n \u00a0\n- unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn_\bs () _\bc_\bo_\bn_\bs_\bt\n+ unsigned _\bi_\bn_\bt\u00a0 _\bn_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn_\bs () const\n \u00a0\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n- void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs (_\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be &stream) _\bc_\bo_\bn_\bs_\bt\n+template\n+ void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs (StreamType &stream) const\n \u00a0\n- void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () _\bc_\bo_\bn_\bs_\bt\n+ void\u00a0 _\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () const\n \u00a0\n S\bSt\bta\bat\bti\bic\bc P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg ()\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt _\ba_\br_\bg_\b1)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt arg1)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b1, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n- _\ba_\br_\bg_\b2, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b3, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b4)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg1, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+ arg2, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg3, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg4)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bI_\bn_\bU_\bs_\be (_\bi_\bn_\bt _\ba_\br_\bg_\b1, std::string _\ba_\br_\bg_\b2, std::string\n- _\ba_\br_\bg_\b3)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bI_\bn_\bU_\bs_\be (_\bi_\bn_\bt arg1, std::string arg2, std::string\n+ arg3)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bN_\bo_\bS_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br (std::string _\ba_\br_\bg_\b1, std::string _\ba_\br_\bg_\b2)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bE_\bx_\bc_\bN_\bo_\bS_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br (std::string arg1, std::string arg2)\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be T\bTy\byp\bpe\bes\bs\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n+using\u00a0 _\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-_\bu_\bs_\bi_\bn_\bg\u00a0 _\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+using\u00a0 _\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b:_\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n-void\u00a0 _\bc_\bh_\be_\bc_\bk_\b__\bn_\bo_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+void\u00a0 _\bc_\bh_\be_\bc_\bk_\b__\bn_\bo_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\br_\bs () const noexcept\n \u00a0\n P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n Epetra_CombineMode\u00a0 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn\n \u00a0\n _\bb_\bo_\bo_\bl\u00a0 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd\n \u00a0\n _\bb_\bo_\bo_\bl\u00a0 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs\n@@ -314,25 +314,25 @@\n \u00a0\n std::atomic< unsigned _\bi_\bn_\bt >\u00a0 _\bc_\bo_\bu_\bn_\bt_\be_\br\n \u00a0\n std::map< std::string, unsigned _\bi_\bn_\bt >\u00a0 _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp\n \u00a0\n std::vector< std::atomic< _\bb_\bo_\bo_\bl > * >\u00a0 _\bv_\ba_\bl_\bi_\bd_\bi_\bt_\by_\b__\bp_\bo_\bi_\bn_\bt_\be_\br_\bs\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt std::type_info *\u00a0 _\bo_\bb_\bj_\be_\bc_\bt_\b__\bi_\bn_\bf_\bo\n+ const std::type_info *\u00a0 _\bo_\bb_\bj_\be_\bc_\bt_\b__\bi_\bn_\bf_\bo\n \u00a0\n S\bSt\bta\bat\bti\bic\bc P\bPr\bri\biv\bva\bat\bte\be A\bAt\btt\btr\bri\bib\bbu\but\bte\bes\bs\n-_\bs_\bt_\ba_\bt_\bi_\bc std::mutex\u00a0 _\bm_\bu_\bt_\be_\bx\n+static std::mutex\u00a0 _\bm_\bu_\bt_\be_\bx\n \u00a0\n F\bFr\bri\bie\ben\bnd\bds\bs\n-_\bc_\bl_\ba_\bs_\bs\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be\n+class\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be\n \u00a0\n R\bRe\bel\bla\bat\bte\bed\bd S\bSy\bym\bmb\bbo\bol\bls\bs\n (Note that these are not member symbols.)\n-void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br &_\bu, _\bV_\be_\bc_\bt_\bo_\br &v) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n+void\u00a0 _\bs_\bw_\ba_\bp (_\bV_\be_\bc_\bt_\bo_\br &u, _\bV_\be_\bc_\bt_\bo_\br &v) noexcept\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n This class implements a wrapper to use the Trilinos distributed vector class\n Epetra_FEVector, the (parallel) partitioning of which is governed by an\n Epetra_Map. The Epetra_FEVector is precisely the kind of vector we deal with\n all the time - we probably get it from some assembly process, where also\n entries not locally owned might need to written and hence need to be forwarded\n@@ -367,20 +367,20 @@\n very hard to figure out, unless you are well-acquainted with the communication\n model of _\bM_\bP_\bI, and know which functions may generate _\bM_\bP_\bI messages.\n One particular case, where an _\bM_\bP_\bI message may be generated unexpectedly is\n discussed below.\n *\b**\b**\b**\b* A\bAc\bcc\bce\bes\bss\bsi\bin\bng\bg i\bin\bnd\bdi\biv\bvi\bid\bdu\bua\bal\bl e\bel\ble\bem\bme\ben\bnt\bts\bs o\bof\bf a\ba v\bve\bec\bct\bto\bor\br *\b**\b**\b**\b*\n Trilinos does of course allow read access to individual elements of a vector,\n but in the distributed case only to elements that are stored locally. We\n-implement this through calls like d=_\bv_\be_\bc_\b(_\bi_\b). However, if you access an element\n+implement this through calls like d=vec(i). However, if you access an element\n outside the locally stored range, an exception is generated.\n In contrast to read access, Trilinos (and the respective deal.II wrapper\n classes) allow to write (or add) to individual elements of vectors, even if\n they are stored on a different process. You can do this by writing into or\n-adding to elements using the syntax _\bv_\be_\bc_\b(_\bi_\b)=d or _\bv_\be_\bc_\b(_\bi_\b)+=d, or similar\n+adding to elements using the syntax vec(i)=d or vec(i)+=d, or similar\n operations. There is one catch, however, that may lead to very confusing error\n messages: Trilinos requires application programs to call the _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\b(_\b)\n function when they switch from performing a set of operations that add to\n elements, to performing a set of operations that write to elements. The\n reasoning is that all processes might accumulate addition operations to\n elements, even if multiple processes write to the same elements. By the time we\n call _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\b(_\b) the next time, all these additions are executed. However, if\n@@ -395,15 +395,15 @@\n _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br _\bv_\be_\bc_\bt_\bo_\br;\n // do some write operations on the vector\n for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i=0; i<_\bv_\be_\bc_\bt_\bo_\br->size(); ++i)\n _\bv_\be_\bc_\bt_\bo_\br(i) = i;\n // do some additions to vector elements, but\n // only for some elements\n for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i=0; i<_\bv_\be_\bc_\bt_\bo_\br->size(); ++i)\n-if (_\bs_\bo_\bm_\be_\b__\bc_\bo_\bn_\bd_\bi_\bt_\bi_\bo_\bn(i) == true)\n+if (some_condition(i) == true)\n _\bv_\be_\bc_\bt_\bo_\br(i) += 1;\n // do another collective operation\n const double norm = _\bv_\be_\bc_\bt_\bo_\br->l2_norm();\n _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b4_\b0_\b5\n _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bv_\be_\bc_\bt_\bo_\br\n std::unique_ptr< Epetra_FEVector > vector\n@@ -462,62 +462,62 @@\n time results in data races and must be explicitly avoided by the user. However,\n it is possible to access d\bdi\bif\bff\bfe\ber\bre\ben\bnt\bt entries of the vector from several threads\n simultaneously when only one _\bM_\bP_\bI process is present or the vector has been\n constructed with an additional index set for ghost entries in write mode.\n Definition at line _\b4_\b0_\b4 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br T\bTy\byp\bpe\bed\bde\bef\bf D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n+using _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n Declare some of the standard types used in all containers. These types parallel\n those in the C standard libraries vector<...> class.\n Definition at line _\b4_\b1_\b2 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bea\bal\bl_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n+using _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be = _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n Definition at line _\b4_\b1_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+using _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be = _\bV_\be_\bc_\bt_\bo_\br_\bT_\br_\ba_\bi_\bt_\bs_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n Definition at line _\b4_\b1_\b4 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bit\bte\ber\bra\bat\bto\bor\br *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be *\n+using _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be *\n Definition at line _\b4_\b1_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bon\bns\bst\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bc_\bo_\bn_\bs_\bt _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be *\n+using _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = const _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be *\n Definition at line _\b4_\b1_\b6 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n+using _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = internal::VectorReference\n Definition at line _\b4_\b1_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bon\bns\bst\bt_\b_r\bre\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bc_\bo_\bn_\bs_\bt internal::\n+using _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const internal::\n VectorReference\n Definition at line _\b4_\b1_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bap\bp_\b_v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n+using _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n The data type used in _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp.\n Definition at line _\b2_\b2_\b9 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bma\bap\bp_\b_i\bit\bte\ber\bra\bat\bto\bor\br *\b**\b**\b**\b**\b*\n-_\bu_\bs_\bi_\bn_\bg _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = _\bd_\be_\bc_\bl_\bt_\by_\bp_\be(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n+using _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bp_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br = decltype(_\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp)_\b:_\b: privateinherited\n _\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n The iterator type used in _\bc_\bo_\bu_\bn_\bt_\be_\br_\b__\bm_\ba_\bp.\n Definition at line _\b2_\b3_\b4 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* C\bCo\bon\bns\bst\btr\bru\buc\bct\bto\bor\br &\b& D\bDe\bes\bst\btr\bru\buc\bct\bto\bor\br D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[1\b1/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( )\n Default constructor that generates an empty (zero size) vector. The function\n _\br_\be_\bi_\bn_\bi_\bt_\b(_\b) will have to give the vector the correct size and distribution among\n processes in case of an _\bM_\bP_\bI run.\n Definition at line _\b7_\b9 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[2\b2/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv )\n+_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv )\n Copy constructor using the given vector.\n Definition at line _\b9_\b9 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[3\b3/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br = explicit\n- _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD\u00a0\n+_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br = explicit\n+ MPI_COMM_WORLD\u00a0\n )\n This constructor takes an _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt that defines how to distribute the\n individual components among the _\bM_\bP_\bI processors. Since it also includes\n information about the size of the vector, this is all we need to generate a\n parallel vector.\n Depending on whether the parallel_partitioning argument uniquely subdivides\n elements among processors or not, the resulting vector may or may not have\n@@ -526,48 +526,48 @@\n In case the provided _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt forms an overlapping partitioning, it is not\n clear which elements are owned by which process and _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b)\n will return an _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt of size zero.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n Definition at line _\b9_\b0 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[4\b4/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bl,\n- _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 g\bgh\bho\bos\bst\bt,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD\u00a0\n+_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bl,\n+ const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 g\bgh\bho\bos\bst\bt,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br = MPI_COMM_WORLD\u00a0\n )\n Creates a ghosted parallel vector.\n Depending on whether the ghost argument uniquely subdivides elements among\n processors or not, the resulting vector may or may not have ghost elements. See\n the general documentation of this class for more information.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n Definition at line _\b1_\b3_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[5\b5/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD\u00a0\n+_\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br = MPI_COMM_WORLD\u00a0\n )\n Copy constructor from the _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs vector class. Since a vector of this\n class does not necessarily need to be distributed among processes, the user\n needs to supply us with an _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt and an _\bM_\bP_\bI communicator that set the\n partitioning details.\n Depending on whether the parallel_partitioning argument uniquely subdivides\n elements among processors or not, the resulting vector may or may not have\n ghost elements. See the general documentation of this class for more\n information.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n Definition at line _\b1_\b1_\b9 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0V\bVe\bec\bct\bto\bor\br(\b()\b) [\b[6\b6/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number >\n-TrilinosWrappers::MPI:: ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg,\n+template\n+TrilinosWrappers::MPI:: ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg,\n Vector::Vector\n- _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number > &\u00a0 v\bv,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br =\n- _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD\u00a0\n+ const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number > &\u00a0 v\bv,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br =\n+ MPI_COMM_WORLD\u00a0\n )\n Copy-constructor from deal.II vectors. Sets the dimension to that of the given\n vector, and copies all the elements.\n Depending on whether the parallel_partitioning argument uniquely subdivides\n elements among processors or not, the resulting vector may or may not have\n ghost elements. See the general documentation of this class for more\n information.\n@@ -589,17 +589,17 @@\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bn D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bcl\ble\bea\bar\br(\b()\b) *\b**\b**\b**\b**\b*\n void _\bV_\be_\bc_\bt_\bo_\br< Number >::clear ( )\n Release all memory and return to a state just like after having called the\n default constructor.\n Definition at line _\b1_\b4_\b9 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[1\b1/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = _\bf_\ba_\bl_\bs_\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 a\bal\bll\blo\bow\bw_\b_d\bdi\bif\bff\bfe\ber\bre\ben\bnt\bt_\b_m\bma\bap\bps\bs = _\bf_\ba_\bl_\bs_\be\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv,\n+ const _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = false,\n+ const _\bb_\bo_\bo_\bl\u00a0 a\bal\bll\blo\bow\bw_\b_d\bdi\bif\bff\bfe\ber\bre\ben\bnt\bt_\b_m\bma\bap\bps\bs = false\u00a0\n )\n Reinit functionality. This function sets the calling vector to the dimension\n and the parallel distribution of the input vector, but does not copy the\n elements in v. If omit_zeroing_entries is false, the elements in the vector are\n initialized with zero. If it is set to true, the vector entries are in an\n unspecified state and the user has to set all elements. In the current\n implementation, this method does not touch the vector entries in case the\n@@ -611,18 +611,18 @@\n generate a replication of a whole vector on each machine, when the calling\n vector is built with a map consisting of all indices on each process, and v is\n a distributed vector. In this case, the variable omit_zeroing_entries needs to\n be set to false, since it does not make sense to exchange data between\n differently parallelized vectors without touching the elements.\n Definition at line _\b2_\b0_\b4 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[2\b2/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br =\n- _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = _\bf_\ba_\bl_\bs_\be\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 p\bpa\bar\bra\bal\bll\ble\bel\bl_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br =\n+ MPI_COMM_WORLD,\n+ const _\bb_\bo_\bo_\bl\u00a0 o\bom\bmi\bit\bt_\b_z\bze\ber\bro\boi\bin\bng\bg_\b_e\ben\bnt\btr\bri\bie\bes\bs = false\u00a0\n )\n Reinit functionality. This function destroys the old vector content and\n generates a new one based on the input partitioning. The flag\n omit_zeroing_entries determines whether the vector should be filled with zero\n (false). If the flag is set to true, the vector entries are in an unspecified\n state and the user has to set all elements. In the current implementation, this\n method still sets the entries to zero, but this might change between releases\n@@ -634,19 +634,19 @@\n In case parallel_partitioning is overlapping, it is not clear which process\n should own which elements. Hence, _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) returns an empty\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt in this case.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n Definition at line _\b1_\b6_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[3\b3/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n reinit\n- _\bc_\bo_\bn_\bs_\bt _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_r\bre\bel\ble\bev\bva\ban\bnt\bt_\b_o\bor\br_\b_g\bgh\bho\bos\bst\bt_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 v\bve\bec\bct\bto\bor\br_\b_w\bwr\bri\bit\bta\bab\bbl\ble\be = _\bf_\ba_\bl_\bs_\be\u00a0\n+ const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &\u00a0 l\blo\boc\bca\bal\bll\bly\by_\b_r\bre\bel\ble\bev\bva\ban\bnt\bt_\b_o\bor\br_\b_g\bgh\bho\bos\bst\bt_\b_e\ben\bnt\btr\bri\bie\bes\bs,\n+ const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\u00a0 c\bco\bom\bmm\bmu\bun\bni\bic\bca\bat\bto\bor\br = MPI_COMM_WORLD,\n+ const _\bb_\bo_\bo_\bl\u00a0 v\bve\bec\bct\bto\bor\br_\b_w\bwr\bri\bit\bta\bab\bbl\ble\be = false\u00a0\n )\n Reinit functionality. This function destroys the old vector content and\n generates a new one based on the input partitioning. In addition to just\n specifying one index set as in all the other methods above, this method allows\n to supply an additional set of ghost entries.\n There are two different versions of a vector that can be created. If the flag\n vector_writable is set to false, the vector only allows read access to the\n@@ -667,30 +667,30 @@\n subdivides elements among processors or not, the resulting vector may or may\n not have ghost elements. See the general documentation of this class for more\n information.\n See also\n _\bv_\be_\bc_\bt_\bo_\br_\bs_\b _\bw_\bi_\bt_\bh_\b _\bg_\bh_\bo_\bs_\bt_\b _\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n Definition at line _\b3_\b6_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[4\b4/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >:: _\bc_\bo_\bn_\bs_\bt std::shared_ptr< _\bc_\bo_\bn_\bs_\bt\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >:: const std::shared_ptr< const\n reinit ( _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br,\n > &\u00a0\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 m\bma\bak\bke\be_\b_g\bgh\bho\bos\bst\bte\bed\bd = _\bt_\br_\bu_\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 v\bve\bec\bct\bto\bor\br_\b_w\bwr\bri\bit\bta\bab\bbl\ble\be = _\bf_\ba_\bl_\bs_\be\u00a0\n+ const _\bb_\bo_\bo_\bl\u00a0 m\bma\bak\bke\be_\b_g\bgh\bho\bos\bst\bte\bed\bd = true,\n+ const _\bb_\bo_\bo_\bl\u00a0 v\bve\bec\bct\bto\bor\br_\b_w\bwr\bri\bit\bta\bab\bbl\ble\be = false\u00a0\n )\n Initialize the vector given to the parallel partitioning described in\n partitioner using the function above.\n You can decide whether your vector will contain ghost elements with\n make_ghosted.\n The parameter vector_writable only has effect on ghosted vectors and is ignored\n for non-ghosted vectors.\n Definition at line _\b4_\b2_\b1 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bre\bei\bin\bni\bit\bt(\b()\b) [\b[5\b5/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( _\bc_\bo_\bn_\bs_\bt _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 i\bim\bmp\bpo\bor\brt\bt_\b_d\bda\bat\bta\ba = _\bf_\ba_\bl_\bs_\be\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::reinit ( const _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv,\n+ const _\bb_\bo_\bo_\bl\u00a0 i\bim\bmp\bpo\bor\brt\bt_\b_d\bda\bat\bta\ba = false\u00a0\n )\n Create vector by merging components from a block vector.\n Definition at line _\b2_\b8_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bom\bmp\bpr\bre\bes\bss\bs(\b()\b) *\b**\b**\b**\b**\b*\n void _\bV_\be_\bc_\bt_\bo_\br< Number >::compress ( _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn )\n Compress the underlying representation of the Trilinos object, i.e. flush the\n buffers of the vector object if it has any. This function is necessary after\n@@ -699,24 +699,24 @@\n The (defaulted) argument can be used to specify the compress mode (Add or\n Insert) in case the vector has not been written to since the last time this\n function was called. The argument is ignored if the vector has been added or\n written to since the last time _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\b(_\b) was called.\n See _\bC_\bo_\bm_\bp_\br_\be_\bs_\bs_\bi_\bn_\bg_\b _\bd_\bi_\bs_\bt_\br_\bi_\bb_\bu_\bt_\be_\bd_\b _\bo_\bb_\bj_\be_\bc_\bt_\bs for more information.\n Definition at line _\b6_\b0_\b8 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[1\b1/\b/4\b4]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br= ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 s\bs )\n+_\bV_\be_\bc_\bt_\bo_\br & TrilinosWrappers::MPI::Vector::operator= ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 s\bs )\n Set all components of the vector to the given number s. Simply pass this down\n to the base class, but we still need to declare this function to make the\n example given in the discussion about making the constructor explicit work. the\n constructor explicit work.\n Since the semantics of assigning a scalar to a vector are not immediately\n clear, this operator can only be used if you want to set the entire vector to\n zero. This allows the intuitive notation v=0.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[2\b2/\b/4\b4]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv )\n+_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >::operator= ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv )\n Copy the given vector. Resize the present vector if necessary. In this case,\n also the Epetra_Map that designs the parallel partitioning is taken from the\n input vector.\n The semantics of this operator are complex. If the two vectors have the same\n size, and if either the left or right hand side vector of the assignment (i.e.,\n either the input vector on the right hand side, or the calling vector to the\n left of the assignment operator) currently has ghost elements, then the left\n@@ -732,31 +732,31 @@\n simply a copy operation in the usual sense: In that case, if the right hand\n side has no ghost elements (i.e., is a completely distributed vector), then the\n left hand side will have no ghost elements either. And if the right hand side\n has ghost elements (and is consequently read-only), then the left hand side\n will have these same properties after the operation.\n Definition at line _\b4_\b4_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[3\b3/\b/4\b4]\b] *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b: ( _\bV_\be_\bc_\bt_\bo_\br &&\u00a0 v\bv ) noexcept\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br=\n+_\bV_\be_\bc_\bt_\bo_\br & _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( _\bV_\be_\bc_\bt_\bo_\br &&\u00a0 v\bv ) noexcept\n+operator=\n Move the given vector. This operator replaces the present vector with v by\n efficiently swapping the internal data structures.\n Definition at line _\b5_\b2_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) [\b[4\b4/\b/4\b4]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number >\n-_\bV_\be_\bc_\bt_\bo_\br & _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number > &\u00a0 v\bv )\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br=\n+template\n+_\bV_\be_\bc_\bt_\bo_\br & TrilinosWrappers::MPI::Vector:: ( const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number > &\u00a0 v\bv )\n+operator=\n Another copy function. This one takes a deal.II vector and copies it into a\n TrilinosWrapper vector. Note that since we do not provide any Epetra_map that\n tells about the partitioning of the vector among the _\bM_\bP_\bI processes, the size of\n the TrilinosWrapper vector has to be the same as the size of the input vector.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bim\bmp\bpo\bor\brt\bt_\b_n\bno\bon\bnl\blo\boc\bca\bal\bl_\b_d\bda\bat\bta\ba_\b_f\bfo\bor\br_\b_f\bfe\be(\b()\b) *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bS_\bp_\ba_\br_\bs_\be_\bM_\ba_\bt_\br_\bi_\bx &\u00a0 m\bma\bat\btr\bri\bix\bx,\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( const _\b:_\b:_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bS_\bp_\ba_\br_\bs_\be_\bM_\ba_\bt_\br_\bi_\bx &\u00a0 m\bma\bat\btr\bri\bix\bx,\n import_nonlocal_data_for_fe\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bve\bec\bct\bto\bor\br\u00a0\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bve\bec\bct\bto\bor\br\u00a0\n )\n This reinit function is meant to be used for parallel calculations where some\n non-local data has to be used. The typical situation where one needs this\n function is the call of the _\bF_\bE_\bV_\ba_\bl_\bu_\be_\bs_\b<_\bd_\bi_\bm_\b>_\b:_\b:_\bg_\be_\bt_\b__\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\b__\bv_\ba_\bl_\bu_\be_\bs function (or of\n some derivatives) in parallel. Since it is usually faster to retrieve the data\n in advance, this function can be called before the assembly forks out to the\n different processors. What this function does is the following: It takes the\n@@ -764,38 +764,38 @@\n between the different processors. That data is then queried from the input\n vector. Note that you should not write to the resulting vector any more, since\n the some data can be stored several times on different processors, leading to\n unpredictable results. In particular, such a vector cannot be used for matrix-\n vector products as for example done during the solution of linear systems.\n Definition at line _\b5_\b5_\b3 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bim\bmp\bpo\bor\brt\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( _\bc_\bo_\bn_\bs_\bt _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< r\brw\bwv\bv,\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >:: ( const _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< r\brw\bwv\bv,\n import_elements double > &\u00a0\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn\u00a0\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn\u00a0\n )\n Imports all the elements present in the vector's _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt from the input vector\n rwv. _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation is used to decide if the elements in rwv\n should be added to the current vector or replace the current elements.\n Definition at line _\b5_\b7_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bim\bmp\bpo\bor\brt\bt(\b()\b) *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI:: ( _\bc_\bo_\bn_\bs_\bt _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: r\brw\bwv\bv,\n+void TrilinosWrappers::MPI:: ( const _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b: r\brw\bwv\bv,\n Vector::import _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br< double > &\u00a0 inline\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn\u00a0\n+ const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\u00a0 o\bop\bpe\ber\bra\bat\bti\bio\bon\bn\u00a0\n )\n _\bD\bD_\be\be_\bp\bp_\br\br_\be\be_\bc\bc_\ba\ba_\bt\bt_\be\be_\bd\bd_\b:\b:\n Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n Definition at line _\b7_\b6_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bb_\bo_\bo_\bl _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br== ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv ) const\n+_\bb_\bo_\bo_\bl _\bV_\be_\bc_\bt_\bo_\br< Number >::operator== ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv ) const\n Test for equality. This function assumes that the present vector and the one to\n compare with have the same size already, since comparing vectors of different\n sizes makes not much sense anyway.\n Definition at line _\b7_\b6_\b0 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bb_\bo_\bo_\bl _\bV_\be_\bc_\bt_\bo_\br< Number >::operator!= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv ) const\n+_\bb_\bo_\bo_\bl _\bV_\be_\bc_\bt_\bo_\br< Number >::operator!= ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv ) const\n Test for inequality. This function assumes that the present vector and the one\n to compare with have the same size already, since comparing vectors of\n different sizes makes not much sense anyway.\n Definition at line _\b7_\b7_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsi\biz\bze\be(\b()\b) *\b**\b**\b**\b**\b*\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be TrilinosWrappers::MPI::Vector::size ( ) const overridevirtual\n Return the global dimension of the vector.\n@@ -821,30 +821,30 @@\n simply stores a particular subset, not necessarily contiguous. In this\n case, this function clearly makes no sense since it could, at best,\n return a range that includes all elements that are stored locally. Thus,\n the function only succeeds if the locally stored range is indeed\n contiguous. It will trigger an assertion if the local portion of the\n vector is not contiguous.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bn_\b_l\blo\boc\bca\bal\bl_\b_r\bra\ban\bng\bge\be(\b()\b) *\b**\b**\b**\b**\b*\n-_\bb_\bo_\bo_\bl TrilinosWrappers::MPI::Vector:: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n+_\bb_\bo_\bo_\bl TrilinosWrappers::MPI::Vector:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n in_local_range\n Return whether index is in the local range or not, see also _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be_\b(_\b).\n Note\n The same limitation for the applicability of this function applies as\n listed in the documentation of _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be_\b(_\b).\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blo\boc\bca\bal\bll\bly\by_\b_o\bow\bwn\bne\bed\bd_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt TrilinosWrappers::MPI::Vector::locally_owned_elements ( ) const\n Return an index set that describes which elements of this vector are owned by\n the current processor. Note that this index set does not include elements this\n vector may store locally as ghost elements but that are in fact owned by\n another processor. As a consequence, the index sets returned on different\n processors if this is a distributed vector will form disjoint sets that add up\n to the complete index set. Obviously, if a vector is created on only one\n processor, then the result would satisfy\n-_\bv_\be_\bc.locally_owned_elements() == _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt (_\bv_\be_\bc.size())\n+vec.locally_owned_elements() == _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt (vec.size())\n _\bc_\bo_\bm_\bp_\bl_\be_\bt_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt\n IndexSet complete_index_set(const IndexSet::size_type N)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b2_\b0_\b4\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0h\bha\bas\bs_\b_g\bgh\bho\bos\bst\bt_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n _\bb_\bo_\bo_\bl TrilinosWrappers::MPI::Vector::has_ghost_elements ( ) const\n Return if the vector contains ghost elements. This answer is true if there are\n ghost elements on at least one process.\n@@ -853,16 +853,16 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0u\bup\bpd\bda\bat\bte\be_\b_g\bgh\bho\bos\bst\bt_\b_v\bva\bal\blu\bue\bes\bs(\b()\b) *\b**\b**\b**\b**\b*\n void TrilinosWrappers::MPI::Vector::update_ghost_values ( ) const\n This function only exists for compatibility with the _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n _\bd_\bi_\bs_\bt_\br_\bi_\bb_\bu_\bt_\be_\bd_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br class and does nothing: this class implements ghost value\n updates in a different way that is a better fit with the underlying Trilinos\n vector object.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br*\b*(\b()\b) *\b**\b**\b**\b**\b*\n-_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bve\bec\bc ) const\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br*\n+_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br TrilinosWrappers::MPI::Vector:: ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bve\bec\bc ) const\n+operator*\n Return the scalar (inner) product of two vectors. The vectors must have the\n same size.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bno\bor\brm\bm_\b_s\bsq\bqr\br(\b()\b) *\b**\b**\b**\b**\b*\n _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be TrilinosWrappers::MPI::Vector::norm_sqr ( ) const\n Return the square of the \\(l_2\\)-norm.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bme\bea\ban\bn_\b_v\bva\bal\blu\bue\be(\b()\b) *\b**\b**\b**\b**\b*\n _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br TrilinosWrappers::MPI::Vector::mean_value ( ) const\n@@ -877,26 +877,26 @@\n _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be TrilinosWrappers::MPI::Vector::l1_norm ( ) const\n \\(l_1\\)-norm of the vector. The sum of the absolute values.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bl2\b2_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be TrilinosWrappers::MPI::Vector::l2_norm ( ) const\n \\(l_2\\)-norm of the vector. The square root of the sum of the squares of the\n elements.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\blp\bp_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n-_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be TrilinosWrappers::MPI::Vector:: ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 p\bp ) const\n+_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be TrilinosWrappers::MPI::Vector:: ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 p\bp ) const\n lp_norm\n \\(l_p\\)-norm of the vector. The p\bpth root of the sum of the p\bpth powers of the\n absolute values of the elements.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bin\bnf\bft\bty\by_\b_n\bno\bor\brm\bm(\b()\b) *\b**\b**\b**\b**\b*\n _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be TrilinosWrappers::MPI::Vector::linfty_norm ( ) const\n Maximum absolute value of the elements.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd_\b_a\ban\bnd\bd_\b_d\bdo\bot\bt(\b()\b) *\b**\b**\b**\b**\b*\n-_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br TrilinosWrappers::MPI::Vector:: ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 a\ba,\n+_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br TrilinosWrappers::MPI::Vector:: ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 a\ba,\n add_and_dot\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 W\bW\u00a0\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 W\bW\u00a0\n )\n Performs a combined operation of a vector addition and a subsequent inner\n product, returning the value of the inner product. In other words, the result\n of this function is the same as if the user called\n this->_\ba_\bd_\bd(a, V);\n return_value = *this * W;\n _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bd_\bd\n@@ -918,83 +918,83 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bis\bs_\b_n\bno\bon\bn_\b_n\bne\beg\bga\bat\bti\biv\bve\be(\b()\b) *\b**\b**\b**\b**\b*\n _\bb_\bo_\bo_\bl _\bV_\be_\bc_\bt_\bo_\br< Number >::is_non_negative ( ) const\n Return true if the vector has no negative entries, i.e. all entries are zero or\n positive. This function is used, for example, to check whether refinement\n indicators are really all positive (or zero).\n Definition at line _\b8_\b1_\b7 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br(\b()\b)(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br() ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx )\n+_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be TrilinosWrappers::MPI::Vector::operator() ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx )\n Provide access to a given element, both read and write.\n When using a vector distributed with _\bM_\bP_\bI, this operation only makes sense for\n elements that are actually present on the calling processor. Otherwise, an\n exception is thrown.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br(\b()\b)(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bV_\be_\bc_\bt_\bo_\br< Number >_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br() ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n+_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bV_\be_\bc_\bt_\bo_\br< Number >::operator() ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n Provide read-only access to an element.\n When using a vector distributed with _\bM_\bP_\bI, this operation only makes sense for\n elements that are actually present on the calling processor. Otherwise, an\n exception is thrown.\n Definition at line _\b6_\b9_\b1 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br[] ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx )\n+_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be TrilinosWrappers::MPI::Vector::operator[] ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx )\n Provide access to a given element, both read and write.\n-Exactly the same as _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b).\n+Exactly the same as operator().\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br[]\n+_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br TrilinosWrappers::MPI::Vector:: ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx ) const\n+operator[]\n Provide read-only access to an element.\n-Exactly the same as _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b).\n+Exactly the same as operator().\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\bex\bxt\btr\bra\bac\bct\bt_\b_s\bsu\bub\bbv\bve\bec\bct\bto\bor\br_\b_t\bto\bo(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+void TrilinosWrappers::MPI:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n Vector::extract_subvector_to\n std::vector< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n ) const\n-Instead of getting individual elements of a vector via _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b), this\n+Instead of getting individual elements of a vector via operator(), this\n function allows getting a whole set of elements at once. The indices of the\n elements to be read are stated in the first argument, the corresponding values\n are returned in the second.\n If the current vector is called v, then this function is the equivalent to the\n code\n for (unsigned int i=0; i &\u00a0\n extract_subvector_to overridevirtual\n _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > e\bel\ble\bem\bme\ben\bnt\bts\bs\u00a0\n &\u00a0\n ) const\n Extract a range of elements all at once.\n Implements _\bR_\be_\ba_\bd_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br_\b _\b>.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\bex\bxt\btr\bra\bac\bct\bt_\b_s\bsu\bub\bbv\bve\bec\bct\bto\bor\br_\b_t\bto\bo(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br >\n-void TrilinosWrappers::MPI::Vector:: ( _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_b\bbe\beg\bgi\bin\bn,\n+template\n+void TrilinosWrappers::MPI::Vector:: ( ForwardIterator\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_b\bbe\beg\bgi\bin\bn,\n extract_subvector_to\n- _\bc_\bo_\bn_\bs_\bt _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_e\ben\bnd\bd,\n- _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 v\bva\bal\blu\bue\bes\bs_\b_b\bbe\beg\bgi\bin\bn\u00a0\n+ const ForwardIterator\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs_\b_e\ben\bnd\bd,\n+ OutputIterator\u00a0 v\bva\bal\blu\bue\bes\bs_\b_b\bbe\beg\bgi\bin\bn\u00a0\n ) const\n-Instead of getting individual elements of a vector via _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b), this\n+Instead of getting individual elements of a vector via operator(), this\n function allows getting a whole set of elements at once. In contrast to the\n previous function, this function obtains the indices of the elements by\n dereferencing all elements of the iterator range provided by the first two\n arguments, and puts the vector values into memory locations obtained by\n dereferencing a range of iterators starting at the location pointed to by the\n third argument.\n If the current vector is called v, then this function is the equivalent to the\n code\n-_\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp = _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn;\n-_\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bv_\ba_\bl_\bu_\be_\bs_\b__\bp = _\bv_\ba_\bl_\bu_\be_\bs_\b__\bb_\be_\bg_\bi_\bn;\n-while (_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp != _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\be_\bn_\bd)\n+ForwardIterator indices_p = indices_begin;\n+OutputIterator values_p = values_begin;\n+while (indices_p != indices_end)\n {\n-*_\bv_\ba_\bl_\bu_\be_\bs_\b__\bp = v[*_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp];\n-++_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bp;\n-++_\bv_\ba_\bl_\bu_\be_\bs_\b__\bp;\n+*values_p = v[*indices_p];\n+++indices_p;\n+++values_p;\n }\n Precondition\n It must be possible to write into as many memory locations starting at\n values_begin as there are iterators between indices_begin and\n indices_end.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0b\bbe\beg\bgi\bin\bn(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n _\bi_\bt_\be_\br_\ba_\bt_\bo_\br TrilinosWrappers::MPI::Vector::begin ( )\n@@ -1013,142 +1013,142 @@\n Return an iterator pointing to the element past the end of the array of locally\n owned entries.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\ben\bnd\bd(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br TrilinosWrappers::MPI::Vector::end ( ) const\n Return a constant iterator pointing to the element past the end of the array of\n the locally owned entries.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\bet\bt(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+void TrilinosWrappers::MPI:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n Vector::set\n- _\bc_\bo_\bn_\bs_\bt std::vector< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > v\bva\bal\blu\bue\bes\bs\u00a0\n+ const std::vector< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > v\bva\bal\blu\bue\bes\bs\u00a0\n &\u00a0\n )\n A collective set operation: instead of setting individual elements of a vector,\n this function allows to set a whole set of elements at once. The indices of the\n elements to be set are stated in the first argument, the corresponding values\n in the second.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\bet\bt(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+void TrilinosWrappers::MPI:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n Vector::set\n- _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+ const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n This is a second collective set operation. As a difference, this function takes\n a deal.II vector of values.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\bet\bt(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI::Vector::set ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+void TrilinosWrappers::MPI::Vector::set ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+ const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n This collective set operation is of lower level and can handle anything else \u2014\n the only thing you have to provide is an address where all the indices are\n stored and the number of elements to be set.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[1\b1/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+void TrilinosWrappers::MPI:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n Vector::add\n- _\bc_\bo_\bn_\bs_\bt std::vector< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > v\bva\bal\blu\bue\bes\bs\u00a0\n+ const std::vector< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > v\bva\bal\blu\bue\bes\bs\u00a0\n &\u00a0\n )\n A collective add operation: This function adds a whole set of values stored in\n values to the vector components specified by indices.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[2\b2/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI:: ( _\bc_\bo_\bn_\bs_\bt std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+void TrilinosWrappers::MPI:: ( const std::vector< _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be > &\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n Vector::add\n- _\bc_\bo_\bn_\bs_\bt _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+ const _\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br > &\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n This is a second collective add operation. As a difference, this function takes\n a deal.II vector of values.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[3\b3/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI::Vector::add ( _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n+void TrilinosWrappers::MPI::Vector::add ( const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bn_\b_e\bel\ble\bem\bme\ben\bnt\bts\bs,\n+ const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *\u00a0 i\bin\bnd\bdi\bic\bce\bes\bs,\n+ const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *\u00a0 v\bva\bal\blu\bue\bes\bs\u00a0\n )\n Take an address where n_elements are stored contiguously and add them into the\n vector. Handles all cases which are not covered by the other two _\ba_\bd_\bd_\b(_\b)\n functions above.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br*\b*=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 f\bfa\bac\bct\bto\bor\br )\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br*=\n+_\bV_\be_\bc_\bt_\bo_\br & TrilinosWrappers::MPI::Vector:: ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 f\bfa\bac\bct\bto\bor\br )\n+operator*=\n Multiply the entire vector by a fixed factor.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br/\b/=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b: ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 f\bfa\bac\bct\bto\bor\br )\n-_\bo_\bp_\be_\br_\ba_\bt_\bo_\br/=\n+_\bV_\be_\bc_\bt_\bo_\br & TrilinosWrappers::MPI::Vector:: ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 f\bfa\bac\bct\bto\bor\br )\n+operator/=\n Divide the entire vector by a fixed factor.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br+\b+=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br+= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n+_\bV_\be_\bc_\bt_\bo_\br & TrilinosWrappers::MPI::Vector::operator+= ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n Add the given vector to the present one.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br-\b-=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\bV_\be_\bc_\bt_\bo_\br & _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br-= ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n+_\bV_\be_\bc_\bt_\bo_\br & TrilinosWrappers::MPI::Vector::operator-= ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV )\n Subtract the given vector from the present one.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[4\b4/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI::Vector::add ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 s\bs )\n+void TrilinosWrappers::MPI::Vector::add ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 s\bs )\n Addition of s to all components. Note that s is a scalar and not a vector.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[5\b5/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-void _\bV_\be_\bc_\bt_\bo_\br< Number >::add ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 a\bal\bll\blo\bow\bw_\b_d\bdi\bif\bff\bfe\ber\bre\ben\bnt\bt_\b_m\bma\bap\bps\bs = _\bf_\ba_\bl_\bs_\be\u00a0\n+void _\bV_\be_\bc_\bt_\bo_\br< Number >::add ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n+ const _\bb_\bo_\bo_\bl\u00a0 a\bal\bll\blo\bow\bw_\b_d\bdi\bif\bff\bfe\ber\bre\ben\bnt\bt_\b_m\bma\bap\bps\bs = false\u00a0\n )\n Simple vector addition, equal to the operator+=.\n Though, if the second argument allow_different_maps is set, then it is possible\n to add data from a vector that uses a different map, i.e., a vector whose\n elements are split across processors differently. This may include vectors with\n ghost elements, for example. In general, however, adding vectors with a\n different element-to-processor map requires communicating data among processors\n and, consequently, is a slower operation than when using vectors using the same\n map.\n Definition at line _\b7_\b2_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[6\b6/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI::Vector::add ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n+void TrilinosWrappers::MPI::Vector::add ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n )\n Simple addition of a multiple of a vector, i.e. *this += a*V.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bad\bdd\bd(\b()\b) [\b[7\b7/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI::Vector::add ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n- _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 b\bb,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 W\bW\u00a0\n+void TrilinosWrappers::MPI::Vector::add ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV,\n+ const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 b\bb,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 W\bW\u00a0\n )\n Multiple addition of scaled vectors, i.e. *this += a*V + b*W.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsa\bad\bdd\bd(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI::Vector::sadd ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 s\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n+void TrilinosWrappers::MPI::Vector::sadd ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 s\bs,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n )\n Scaling and simple vector addition, i.e. t\bth\bhi\bis\bs =\b= s\bs(*this) + V.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsa\bad\bdd\bd(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI::Vector::sadd ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 s\bs,\n- _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n+void TrilinosWrappers::MPI::Vector::sadd ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 s\bs,\n+ const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n )\n Scaling and simple addition, i.e. t\bth\bhi\bis\bs =\b= s\bs(*this) + a*V.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsc\bca\bal\ble\be(\b()\b) *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI::Vector::scale ( _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 s\bsc\bca\bal\bli\bin\bng\bg_\b_f\bfa\bac\bct\bto\bor\brs\bs )\n+void TrilinosWrappers::MPI::Vector::scale ( const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 s\bsc\bca\bal\bli\bin\bng\bg_\b_f\bfa\bac\bct\bto\bor\brs\bs )\n Scale each element of this vector by the corresponding element in the argument.\n This function is mostly meant to simulate multiplication (and immediate re-\n assignment) by a diagonal scaling matrix.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0e\beq\bqu\bu(\b()\b) *\b**\b**\b**\b**\b*\n-void TrilinosWrappers::MPI::Vector::equ ( _\bc_\bo_\bn_\bs_\bt _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 a\ba,\n- _\bc_\bo_\bn_\bs_\bt _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n+void TrilinosWrappers::MPI::Vector::equ ( const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\u00a0 a\ba,\n+ const _\bV_\be_\bc_\bt_\bo_\br &\u00a0 V\bV\u00a0\n )\n Assignment *this = a*V.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\btr\bri\bil\bli\bin\bno\bos\bs_\b_v\bve\bec\bct\bto\bor\br(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-_\bc_\bo_\bn_\bs_\bt Epetra_MultiVector & TrilinosWrappers::MPI::Vector:: ( ) const\n+const Epetra_MultiVector & TrilinosWrappers::MPI::Vector:: ( ) const\n trilinos_vector\n Return a const reference to the underlying Trilinos Epetra_MultiVector class.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\btr\bri\bil\bli\bin\bno\bos\bs_\b_v\bve\bec\bct\bto\bor\br(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n Epetra_FEVector & TrilinosWrappers::MPI::Vector::trilinos_vector ( )\n Return a (modifiable) reference to the underlying Trilinos Epetra_FEVector\n class.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\btr\bri\bil\bli\bin\bno\bos\bs_\b_p\bpa\bar\brt\bti\bit\bti\bio\bon\bne\ber\br(\b()\b) *\b**\b**\b**\b**\b*\n-_\bc_\bo_\bn_\bs_\bt _\bE_\bp_\be_\bt_\br_\ba_\b__\bB_\bl_\bo_\bc_\bk_\bM_\ba_\bp & TrilinosWrappers::MPI::Vector:: ( ) const\n+const Epetra_BlockMap & TrilinosWrappers::MPI::Vector:: ( ) const\n trilinos_partitioner\n Return a const reference to the underlying Trilinos Epetra_BlockMap that sets\n the parallel partitioning of the vector.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0p\bpr\bri\bin\bnt\bt(\b()\b) *\b**\b**\b**\b**\b*\n void _\bV_\be_\bc_\bt_\bo_\br< Number >::print ( std::ostream &\u00a0 o\bou\but\bt,\n- _\bc_\bo_\bn_\bs_\bt unsigned _\bi_\bn_\bt\u00a0 p\bpr\bre\bec\bci\bis\bsi\bio\bon\bn = 3,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 s\bsc\bci\bie\ben\bnt\bti\bif\bfi\bic\bc = _\bt_\br_\bu_\be,\n- _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 a\bac\bcr\bro\bos\bss\bs = _\bt_\br_\bu_\be\u00a0\n+ const unsigned _\bi_\bn_\bt\u00a0 p\bpr\bre\bec\bci\bis\bsi\bio\bon\bn = 3,\n+ const _\bb_\bo_\bo_\bl\u00a0 s\bsc\bci\bie\ben\bnt\bti\bif\bfi\bic\bc = true,\n+ const _\bb_\bo_\bo_\bl\u00a0 a\bac\bcr\bro\bos\bss\bs = true\u00a0\n ) const\n Print to a stream. precision denotes the desired precision with which values\n shall be printed, scientific whether scientific notation shall be used. If\n across is true then the vector is printed in a line, while if false then the\n elements are printed on a separate line each.\n Definition at line _\b8_\b4_\b5 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsw\bwa\bap\bp(\b()\b) *\b**\b**\b**\b**\b*\n@@ -1192,25 +1192,25 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_s\bsu\bub\bbs\bsc\bcr\bri\bip\bpt\bti\bio\bon\bns\bs(\b()\b) *\b**\b**\b**\b**\b*\n unsigned _\bi_\bn_\bt Subscriptor::n_subscriptions ( ) const inlineinherited\n Return the present number of subscriptions to this object. This allows to use\n this class for reference counted lifetime determination where the last one to\n unsubscribe also deletes the object.\n Definition at line _\b3_\b0_\b0 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\ber\brs\bs(\b()\b) [\b[1\b1/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be >\n+template\n void Subscriptor:: ( StreamType &\u00a0 s\bst\btr\bre\bea\bam\bm ) const inlineinherited\n list_subscribers\n List the subscribers to the input stream.\n Definition at line _\b3_\b1_\b7 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\ber\brs\bs(\b()\b) [\b[2\b2/\b/2\b2]\b] *\b**\b**\b**\b**\b*\n void Subscriptor::list_subscribers ( ) const inherited\n List the subscribers to deallog.\n Definition at line _\b2_\b0_\b3 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bse\ber\bri\bia\bal\bli\biz\bze\be(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bc_\bl_\ba_\bs_\bs _\bA_\br_\bc_\bh_\bi_\bv_\be >\n+template\n void Subscriptor::serialize ( Archive &\u00a0 a\bar\br,\n const unsigned _\bi_\bn_\bt\u00a0 v\bve\ber\brs\bsi\bio\bon\bn\u00a0 inlineinherited\n )\n Read or write the data of this object to or from a stream for the purpose of\n serialization using the _\bB_\bO_\bO_\bS_\bT_\b _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn_\b _\bl_\bi_\bb_\br_\ba_\br_\by.\n This function does not actually serialize any of the member variables of this\n class. The reason is that what this class stores is only who subscribes to this\n@@ -1231,15 +1231,15 @@\n release mode.\n If this function is called when there is an uncaught exception then,\n rather than aborting, this function prints an error message to the\n standard error stream and returns.\n Definition at line _\b5_\b2 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bc_\bc.\n *\b**\b**\b**\b**\b* F\bFr\bri\bie\ben\bnd\bds\bs A\bAn\bnd\bd R\bRe\bel\bla\bat\bte\bed\bd S\bSy\bym\bmb\bbo\bol\bl D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:V\bVe\bec\bct\bto\bor\brR\bRe\bef\bfe\ber\bre\ben\bnc\bce\be *\b**\b**\b**\b**\b*\n-_\bf_\br_\bi_\be_\bn_\bd _\bc_\bl_\ba_\bs_\bs internal::VectorReference friend\n+friend class internal::VectorReference friend\n Definition at line _\b1_\b4_\b0_\b6 of file _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsw\bwa\bap\bp(\b()\b) *\b**\b**\b**\b**\b*\n void swap ( _\bV_\be_\bc_\bt_\bo_\br &\u00a0 u\bu,\n _\bV_\be_\bc_\bt_\bo_\br &\u00a0 v\bv\u00a0 related\n )\n Global function swap which overloads the default implementation of the C++\n standard library which uses a temporary object. The function simply exchanges\n@@ -1305,15 +1305,15 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0v\bva\bal\bli\bid\bdi\bit\bty\by_\b_p\bpo\boi\bin\bnt\bte\ber\brs\bs *\b**\b**\b**\b**\b*\n std::vector *> Subscriptor:: mutableprivateinherited\n validity_pointers\n In this vector, we store pointers to the validity bool in the _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br\n objects that subscribe to this class.\n Definition at line _\b2_\b4_\b0 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bob\bbj\bje\bec\bct\bt_\b_i\bin\bnf\bfo\bo *\b**\b**\b**\b**\b*\n-_\bc_\bo_\bn_\bs_\bt std::type_info* Subscriptor::object_info mutableprivateinherited\n+const std::type_info* Subscriptor::object_info mutableprivateinherited\n Pointer to the typeinfo object of this object, from which we can later deduce\n the class name. Since this information on the derived class is neither\n available in the destructor, nor in the constructor, we obtain it in between\n and store it here.\n Definition at line _\b2_\b4_\b8 of file _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0m\bmu\but\bte\bex\bx *\b**\b**\b**\b**\b*\n std::mutex Subscriptor::mutex staticprivateinherited\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classUtilities_1_1MPI_1_1RemotePointEvaluation.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classUtilities_1_1MPI_1_1RemotePointEvaluation.html", "unified_diff": "@@ -293,15 +293,15 @@\n
    toleranceTolerance in terms of unit cell coordinates for determining all cells around a point passed to the class during reinit(). Depending on the problem, it might be necessary to adjust the tolerance in order to be able to identify a cell. Floating point arithmetic implies that a point will, in general, not lie exactly on a vertex, edge, or face.
    enforce_unique_mappingEnforce unique mapping, i.e., (one-to-one) relation of points and cells.
    rtree_levelRTree level to be used during the construction of the bounding boxes.
    marked_verticesFunction that marks relevant vertices to make search of active cells around point more efficient.
    \n \n \n-
    Deprecated:
    \n+
    Deprecated:
    \n \n

    Definition at line 61 of file mpi_remote_point_evaluation.cc.

    \n \n \n \n \n

    ◆ ~RemotePointEvaluation()

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classparallel_1_1DistributedTriangulationBase.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classparallel_1_1DistributedTriangulationBase.html", "unified_diff": "@@ -1294,15 +1294,15 @@\n
    \n pure virtual
    \n
    \n

    Same as the function above.

    \n-
    Deprecated:
    The autopartition parameter has been removed.
    \n+
    Deprecated:
    The autopartition parameter has been removed.
    \n \n

    Implemented in parallel::fullydistributed::Triangulation< dim, spacedim >, parallel::distributed::Triangulation< dim, spacedim >, and parallel::distributed::Triangulation< 1, spacedim >.

    \n \n
    \n
    \n \n

    ◆ get_communicator()

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classparallel_1_1distributed_1_1Triangulation.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classparallel_1_1distributed_1_1Triangulation.html", "unified_diff": "@@ -2008,15 +2008,15 @@\n
    \n
    \n \n

    \n

    Load the refinement information saved with save() back in. The mesh must contain the same coarse mesh that was used in save() before calling this function.

    \n

    You do not need to load with the same number of MPI processes that you saved with. Rather, if a mesh is loaded with a different number of MPI processes than used at the time of saving, the mesh is repartitioned so that the number of cells is balanced among all processes. Individual repartitioning with non-identical weights for each cell, e.g., based on the number of dofs or particles per cell, needs to be invoked manually by calling repartition() afterwards.

    \n

    Cell-based data that was saved with DistributedTriangulationBase::DataTransfer::register_data_attach() can be read in with DistributedTriangulationBase::DataTransfer::notify_ready_to_unpack() after calling load().

    \n-
    Deprecated:
    The autopartition parameter has been removed.
    \n+
    Deprecated:
    The autopartition parameter has been removed.
    \n \n

    Implements parallel::DistributedTriangulationBase< dim, spacedim >.

    \n \n

    Definition at line 2209 of file tria.cc.

    \n \n
    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classparallel_1_1fullydistributed_1_1Triangulation.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/classparallel_1_1fullydistributed_1_1Triangulation.html", "unified_diff": "@@ -1749,15 +1749,15 @@\n
    \n
    \n \n

    \n

    Load the triangulation saved with save() back in. The mesh must be empty before calling this function.

    \n

    You need to load with the same number of MPI processes that you saved with, hence autopartition is disabled.

    \n

    Cell-based data that was saved with register_data_attach() can be read in with notify_ready_to_unpack() after calling load().

    \n-
    Deprecated:
    The autopartition parameter has been removed.
    \n+
    Deprecated:
    The autopartition parameter has been removed.
    \n \n

    Implements parallel::DistributedTriangulationBase< dim, spacedim >.

    \n \n

    Definition at line 741 of file fully_distributed_tria.cc.

    \n \n
    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/deprecated.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/deprecated.html", "unified_diff": "@@ -93,231 +93,231 @@\n \n
    \n
    Deprecated List
    \n
    \n
    \n
    \n
    Member AffineConstraints< number >::add_selected_constraints (const AffineConstraints &constraints_in, const IndexSet &filter)
    \n-
    This function is a combination of the get_view() function and merge() in that it selects a subset of constraints from another constraints object that is then merged into the current one. But the current function does not deal well with index sets. Furthermore, it simply discards parts of constraints that constrain one degree of freedom against ones that are not selected in the filter – something that should probably be considered a bug. Use get_view() and merge() instead.
    \n+
    This function is a combination of the get_view() function and merge() in that it selects a subset of constraints from another constraints object that is then merged into the current one. But the current function does not deal well with index sets. Furthermore, it simply discards parts of constraints that constrain one degree of freedom against ones that are not selected in the filter – something that should probably be considered a bug. Use get_view() and merge() instead.
    \n
    Member AffineConstraints< number >::AffineConstraints (const IndexSet &locally_stored_constraints)
    \n-
    This constructor is equivalent to calling the following one with both of its arguments equal to the index set provided here. This is not wrong, but inefficient. Use the following constructor instead.
    \n+
    This constructor is equivalent to calling the following one with both of its arguments equal to the index set provided here. This is not wrong, but inefficient. Use the following constructor instead.
    \n
    Member AffineConstraints< number >::reinit (const IndexSet &locally_stored_constraints)
    \n-
    Use the reinit() function with two index set arguments instead.
    \n+
    Use the reinit() function with two index set arguments instead.
    \n
    Member CELL_COARSEN
    \n
    Use CellStatus::cell_will_be_coarsened instead
    \n
    Member CELL_INVALID
    \n
    Use CellStatus::cell_invalid instead
    \n
    Member CELL_PERSIST
    \n
    Use CellStatus::cell_will_persist instead
    \n
    Member CELL_REFINE
    \n
    Use CellStatus::cell_will_be_refined instead
    \n
    Member DataOutBase::default_suffix (const OutputFormat output_format)
    \n
    Using Tecplot binary output is deprecated.
    \n
    Member DataOutBase::VtkFlags::ZlibCompressionLevel
    \n
    Use DataOutBase::CompressionLevel instead.
    \n
    Member DoFHandler< dim, spacedim >::active_fe_index_type
    \n-
    Use types::fe_index instead.
    \n+
    Use types::fe_index instead.
    \n
    Member DoFHandler< dim, spacedim >::get_active_fe_indices (std::vector< unsigned int > &active_fe_indices) const
    \n-
    Use get_active_fe_indices() that returns the result vector.
    \n+
    Use get_active_fe_indices() that returns the result vector.
    \n
    Member DoFHandler< dim, spacedim >::invalid_active_fe_index
    \n-
    Use numbers::invalid_fe_index instead.
    \n-
    Member DoFHandler< dim, spacedim >::invalid_fe_index
    \n
    Use numbers::invalid_fe_index instead.
    \n+
    Member DoFHandler< dim, spacedim >::invalid_fe_index
    \n+
    Use numbers::invalid_fe_index instead.
    \n
    Member DoFHandler< dim, spacedim >::set_active_fe_indices (const std::vector< unsigned int > &active_fe_indices)
    \n-
    Use set_active_fe_indices() with the types::fe_index datatype.
    \n+
    Use set_active_fe_indices() with the types::fe_index datatype.
    \n
    Member DoFTools::extract_locally_active_dofs (const DoFHandler< dim, spacedim > &dof_handler, IndexSet &dof_set)
    \n-
    Use the previous function instead.
    \n+
    Use the previous function instead.
    \n
    Member DoFTools::extract_locally_active_level_dofs (const DoFHandler< dim, spacedim > &dof_handler, IndexSet &dof_set, const unsigned int level)
    \n-
    Use the previous function instead.
    \n+
    Use the previous function instead.
    \n
    Member DoFTools::extract_locally_relevant_dofs (const DoFHandler< dim, spacedim > &dof_handler, IndexSet &dof_set)
    \n-
    Use the previous function instead.
    \n+
    Use the previous function instead.
    \n
    Member DoFTools::extract_locally_relevant_level_dofs (const DoFHandler< dim, spacedim > &dof_handler, const unsigned int level, IndexSet &dof_set)
    \n-
    Use the previous function instead.
    \n+
    Use the previous function instead.
    \n
    Member DoFTools::get_active_fe_indices (const DoFHandler< dim, spacedim > &dof_handler, std::vector< unsigned int > &active_fe_indices)
    \n-
    Use DoFHandler::get_active_fe_indices() that returns the result vector.
    \n-
    Member DoFTools::map_dofs_to_support_points (const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof_handler, std::map< types::global_dof_index, Point< spacedim > > &support_points, const ComponentMask &mask={})
    \n-
    Use the function that returns the std::map instead.
    \n+
    Use DoFHandler::get_active_fe_indices() that returns the result vector.
    \n
    Member DoFTools::map_dofs_to_support_points (const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof_handler, std::map< types::global_dof_index, Point< spacedim > > &support_points, const ComponentMask &mask={})
    \n+
    Use the function that returns the std::map instead.
    \n+
    Member DoFTools::map_dofs_to_support_points (const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof_handler, std::map< types::global_dof_index, Point< spacedim > > &support_points, const ComponentMask &mask={})
    \n
    Use the function that returns the std::map instead.
    \n
    Member FEEvaluationData< dim, Number, is_face >::get_normal_vector (const unsigned int q_point) const
    \n
    Use normal_vector() instead.
    \n
    Member FEFaceEvaluation< dim, fe_degree, n_q_points_1d, n_components_, Number, VectorizedArrayType >::integrate_scatter (const bool integrate_values, const bool integrate_gradients, VectorType &output_vector)
    \n-
    Please use the integrate_scatter() function with the EvaluationFlags argument.
    \n+
    Please use the integrate_scatter() function with the EvaluationFlags argument.
    \n
    Member FEInterfaceViews::Vector< dim, spacedim >::average_hessian (const unsigned int interface_dof_index, const unsigned int q_point) const
    \n-
    Use the average_of_hessians() function instead.
    \n+
    Use the average_of_hessians() function instead.
    \n
    Member FEInterfaceViews::Vector< dim, spacedim >::jump_gradient (const unsigned int interface_dof_index, const unsigned int q_point) const
    \n-
    Use the average_of_gradients() function instead.
    \n+
    Use the average_of_gradients() function instead.
    \n
    Member FEInterfaceViews::Vector< dim, spacedim >::jump_hessian (const unsigned int interface_dof_index, const unsigned int q_point) const
    \n-
    Use the average_of_hessians() function instead.
    \n+
    Use the average_of_hessians() function instead.
    \n
    Member FEPointEvaluationBase< n_components_, dim, spacedim, Number >::real_point (const unsigned int point_index) const
    \n-
    Use the function quadrature_point() instead.
    \n+
    Use the function quadrature_point() instead.
    \n
    Member FETools::Compositing::compute_nonzero_components (const FiniteElement< dim, spacedim > *fe1, const unsigned int N1, const FiniteElement< dim, spacedim > *fe2=nullptr, const unsigned int N2=0, const FiniteElement< dim, spacedim > *fe3=nullptr, const unsigned int N3=0, const FiniteElement< dim, spacedim > *fe4=nullptr, const unsigned int N4=0, const FiniteElement< dim, spacedim > *fe5=nullptr, const unsigned int N5=0, const bool do_tensor_product=true)
    \n-
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n+
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n
    Member FETools::Compositing::compute_restriction_is_additive_flags (const FiniteElement< dim, spacedim > *fe1, const unsigned int N1, const FiniteElement< dim, spacedim > *fe2=nullptr, const unsigned int N2=0, const FiniteElement< dim, spacedim > *fe3=nullptr, const unsigned int N3=0, const FiniteElement< dim, spacedim > *fe4=nullptr, const unsigned int N4=0, const FiniteElement< dim, spacedim > *fe5=nullptr, const unsigned int N5=0)
    \n-
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n+
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n
    Member FETools::Compositing::multiply_dof_numbers (const FiniteElement< dim, spacedim > *fe1, const unsigned int N1, const FiniteElement< dim, spacedim > *fe2=nullptr, const unsigned int N2=0, const FiniteElement< dim, spacedim > *fe3=nullptr, const unsigned int N3=0, const FiniteElement< dim, spacedim > *fe4=nullptr, const unsigned int N4=0, const FiniteElement< dim, spacedim > *fe5=nullptr, const unsigned int N5=0)
    \n-
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n+
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n
    Member FiniteElement< dim, spacedim >::fill_fe_face_values (const typename Triangulation< dim, spacedim >::cell_iterator &cell, const unsigned int face_no, const Quadrature< dim - 1 > &quadrature, const Mapping< dim, spacedim > &mapping, const typename Mapping< dim, spacedim >::InternalDataBase &mapping_internal, const internal::FEValuesImplementation::MappingRelatedData< dim, spacedim > &mapping_data, const InternalDataBase &fe_internal, internal::FEValuesImplementation::FiniteElementRelatedData< dim, spacedim > &output_data) const
    \n-
    Use the version taking a hp::QCollection argument.
    \n-
    Member FiniteElement< dim, spacedim >::get_face_data (const UpdateFlags update_flags, const Mapping< dim, spacedim > &mapping, const Quadrature< dim - 1 > &quadrature, internal::FEValuesImplementation::FiniteElementRelatedData< dim, spacedim > &output_data) const
    \n
    Use the version taking a hp::QCollection argument.
    \n+
    Member FiniteElement< dim, spacedim >::get_face_data (const UpdateFlags update_flags, const Mapping< dim, spacedim > &mapping, const Quadrature< dim - 1 > &quadrature, internal::FEValuesImplementation::FiniteElementRelatedData< dim, spacedim > &output_data) const
    \n+
    Use the version taking a hp::QCollection argument.
    \n
    Member GridTools::fix_up_distorted_child_cells (const typename Triangulation< dim, spacedim >::DistortedCellList &distorted_cells, Triangulation< dim, spacedim > &triangulation)
    \n-
    This function predates deal.II's use of manifolds and use of cell-local transfinite interpolation to place new points and is no longer necessary. See Manifolds::get_default_points_and_weights() for more information.
    \n+
    This function predates deal.II's use of manifolds and use of cell-local transfinite interpolation to place new points and is no longer necessary. See Manifolds::get_default_points_and_weights() for more information.
    \n
    Member GridTools::rotate (const double angle, const unsigned int axis, Triangulation< dim, 3 > &triangulation)
    \n-
    Use the alternative with the unit vector instead.
    \n+
    Use the alternative with the unit vector instead.
    \n
    Member identity
    \n-
    Use std_cxx20::type_identity instead.
    \n+
    Use std_cxx20::type_identity instead.
    \n
    Member LinearAlgebra::CUDAWrappers::Vector< Number >::import (const ReadWriteVector< Number > &V, VectorOperation::values operation, std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > communication_pattern={})
    \n-
    Use import_elements() instead.
    \n+
    Use import_elements() instead.
    \n
    Member LinearAlgebra::distributed::BlockVector< Number >::import (const LinearAlgebra::ReadWriteVector< Number > &V, VectorOperation::values operation, std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > communication_pattern={})
    \n-
    Use import_elements() instead.
    \n+
    Use import_elements() instead.
    \n
    Member LinearAlgebra::distributed::Vector< Number, MemorySpace >::import (const LinearAlgebra::ReadWriteVector< Number > &V, VectorOperation::values operation, std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > communication_pattern={})
    \n
    Use import_elements() instead.
    \n
    Member LinearAlgebra::distributed::Vector< Number, MemorySpace >::import (const Vector< Number, MemorySpace2 > &src, VectorOperation::values operation)
    \n
    Use import_elements() instead.
    \n
    Member LinearAlgebra::EpetraWrappers::Vector::import (const ReadWriteVector< double > &V, const VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    \n-
    Use import_elements() instead.
    \n+
    Use import_elements() instead.
    \n+
    Member LinearAlgebra::ReadWriteVector< Number >::import (const CUDAWrappers::Vector< Number > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    \n+
    Use import_elements() instead.
    \n
    Member LinearAlgebra::ReadWriteVector< Number >::import (const EpetraWrappers::Vector &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    \n-
    Use import_elements() instead.
    \n+
    Use import_elements() instead.
    \n+
    Member LinearAlgebra::ReadWriteVector< Number >::import (const TpetraWrappers::Vector< Number, MemorySpace > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    \n+
    Use import_elements() instead.
    \n
    Member LinearAlgebra::ReadWriteVector< Number >::import (const TrilinosWrappers::MPI::Vector &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    \n-
    Use import_elements() instead.
    \n+
    Use import_elements() instead.
    \n
    Member LinearAlgebra::ReadWriteVector< Number >::import (const PETScWrappers::MPI::Vector &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    \n-
    Use import_elements() instead.
    \n+
    Use import_elements() instead.
    \n
    Member LinearAlgebra::ReadWriteVector< Number >::import (const distributed::Vector< Number, MemorySpace > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    \n-
    Use import_elements() instead.
    \n-
    Member LinearAlgebra::ReadWriteVector< Number >::import (const CUDAWrappers::Vector< Number > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    \n-
    Use import_elements() instead.
    \n-
    Member LinearAlgebra::ReadWriteVector< Number >::import (const TpetraWrappers::Vector< Number, MemorySpace > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    \n-
    Use import_elements() instead.
    \n+
    Use import_elements() instead.
    \n
    Member LinearAlgebra::ReadWriteVector< Number >::import (const ::Vector< Number > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})
    \n-
    Use import_elements() instead.
    \n+
    Use import_elements() instead.
    \n
    Member LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::import (const ReadWriteVector< Number > &V, VectorOperation::values operation, std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > communication_pattern={})
    \n-
    Use import_elements() instead.
    \n+
    Use import_elements() instead.
    \n
    Member LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::import_elements (const ReadWriteVector< Number > &V, VectorOperation::values operation, const std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > &communication_pattern)
    \n-
    Use Teuchos::RCP<> instead of std::shared_ptr<>.
    \n+
    Use Teuchos::RCP<> instead of std::shared_ptr<>.
    \n
    Member make_array_view (Tensor< rank, dim, Number > &tensor)
    \n
    This function suggests that the elements of a Tensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n
    Member make_array_view (SymmetricTensor< rank, dim, Number > &tensor)
    \n
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n
    Member make_array_view (const Tensor< rank, dim, Number > &tensor)
    \n
    This function suggests that the elements of a Tensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n
    Member make_array_view (const SymmetricTensor< rank, dim, Number > &tensor)
    \n
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n
    Member Mapping< dim, spacedim >::fill_fe_face_values (const typename Triangulation< dim, spacedim >::cell_iterator &cell, const unsigned int face_no, const Quadrature< dim - 1 > &quadrature, const typename Mapping< dim, spacedim >::InternalDataBase &internal_data, internal::FEValuesImplementation::MappingRelatedData< dim, spacedim > &output_data) const
    \n-
    Use the version taking a hp::QCollection argument.
    \n+
    Use the version taking a hp::QCollection argument.
    \n
    Member Mapping< dim, spacedim >::get_face_data (const UpdateFlags update_flags, const Quadrature< dim - 1 > &quadrature) const
    \n-
    Use the version taking a hp::QCollection argument.
    \n+
    Use the version taking a hp::QCollection argument.
    \n
    Member MeshWorker::integration_loop (IteratorType begin, std_cxx20::type_identity_t< IteratorType > end, DoFInfo< dim, spacedim > &dof_info, IntegrationInfoBox< dim, spacedim > &box, const LocalIntegrator< dim, spacedim > &integrator, AssemblerType &assembler, const LoopControl &lctrl=LoopControl())
    \n
    This function is deprecated, along with the LocalIntegrator class. Use the MeshWorker::loop() function directly, with three function objects that perform the cell, boundary, and interior face integration.
    \n
    Class MeshWorker::LocalIntegrator< dim, spacedim, number >
    \n
    This class is deprecated. It used to be the basis for integration via the MeshWorker::integration_loop() function, but the same functionality is available via MeshWorker::loop().
    \n
    Member MeshWorker::LocalIntegrator< dim, spacedim, number >::input_vector_names
    \n
    Because the library itself does not use this field, it is better placed in derived classes.
    \n
    Member MeshWorker::LocalIntegrator< dim, spacedim, number >::output_names
    \n
    Because the library itself does not use this field, it is better placed in derived classes.
    \n
    Member NonlinearSolverSelector< VectorType >::NonlinearSolverSelector (const AdditionalData &additional_data)
    \n-
    Use the other constructor with MPI_Comm instead.
    \n+
    Use the other constructor with MPI_Comm instead.
    \n
    Member parallel::distributed::Triangulation< dim, spacedim >::load (const std::string &filename, const bool autopartition) override
    \n-
    The autopartition parameter has been removed.
    \n-
    Member parallel::DistributedTriangulationBase< dim, spacedim >::load (const std::string &filename, const bool autopartition)=0
    \n
    The autopartition parameter has been removed.
    \n+
    Member parallel::DistributedTriangulationBase< dim, spacedim >::load (const std::string &filename, const bool autopartition)=0
    \n+
    The autopartition parameter has been removed.
    \n
    Member parallel::fullydistributed::Triangulation< dim, spacedim >::load (const std::string &filename, const bool autopartition) override
    \n-
    The autopartition parameter has been removed.
    \n+
    The autopartition parameter has been removed.
    \n
    Member ParameterHandler::ShortText
    \n-
    Use ShortPRM instead of ShortText.
    \n+
    Use ShortPRM instead of ShortText.
    \n
    Member ParameterHandler::Text
    \n-
    Use PRM instead of Text.
    \n+
    Use PRM instead of Text.
    \n
    Member Particles::ParticleAccessor< dim, spacedim >::set_property_pool (PropertyPool< dim, spacedim > &property_pool)
    \n-
    This function is only kept for backward compatibility and has no meaning any more. ParticleAccessors always use the property pool of the owning particle handler.
    \n+
    This function is only kept for backward compatibility and has no meaning any more. ParticleAccessors always use the property pool of the owning particle handler.
    \n
    Member Particles::ParticleHandler< dim, spacedim >::register_load_callback_function (const bool serialization)
    \n
    Please use unpack_after_coarsening_and_refinement() or deserialize() instead. See there for further information about the purpose of this function.
    \n
    Member Particles::ParticleHandler< dim, spacedim >::register_store_callback_function ()
    \n
    Please use prepare_for_coarsening_and_refinement() or prepare_for_serialization() instead. See there for further information about the purpose of this function.
    \n
    Class PathSearch
    \n
    Use the std::filesystem facilities instead.
    \n
    Member PETScWrappers::SolverBiCG::SolverBiCG (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverBicgstab::SolverBicgstab (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverCG::SolverCG (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverCGS::SolverCGS (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverChebychev::SolverChebychev (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverCR::SolverCR (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverGMRES::SolverGMRES (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverLSQR::SolverLSQR (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverPreOnly::SolverPreOnly (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverRichardson::SolverRichardson (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverTCQMR::SolverTCQMR (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SolverTFQMR::SolverTFQMR (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::SparseDirectMUMPS::SparseDirectMUMPS (SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
    \n-
    \n+
    \n
    Member PETScWrappers::TimeStepper< VectorType, PMatrixType, AMatrixType >::decide_for_coarsening_and_refinement
    \n-
    This callback is equivalent to decide_and_prepare_for_remeshing except that it returns the decision whether or not to stop operations via the last reference argument of the function object instead of a plain return value. This callback is deprecated. Use decide_and_prepare_for_remeshing instead.
    \n+
    This callback is equivalent to decide_and_prepare_for_remeshing except that it returns the decision whether or not to stop operations via the last reference argument of the function object instead of a plain return value. This callback is deprecated. Use decide_and_prepare_for_remeshing instead.
    \n
    Member PETScWrappers::TimeStepper< VectorType, PMatrixType, AMatrixType >::distribute
    \n-
    This callback is equivalent to update_constrained_components, but is deprecated. Use update_constrained_components instead.
    \n+
    This callback is equivalent to update_constrained_components, but is deprecated. Use update_constrained_components instead.
    \n
    Member PETScWrappers::TimeStepper< VectorType, PMatrixType, AMatrixType >::interpolate
    \n-
    This callback is equivalent to transfer_solution_vectors_to_new_mesh, but is deprecated. Use transfer_solution_vectors_to_new_mesh instead.
    \n+
    This callback is equivalent to transfer_solution_vectors_to_new_mesh, but is deprecated. Use transfer_solution_vectors_to_new_mesh instead.
    \n
    Member Physics::Transformations::Rotations::rotation_matrix_3d (const Point< 3, Number > &axis, const Number &angle)
    \n
    Use the variant with a Tensor as an axis.
    \n
    Member PolarManifold< dim, spacedim >::center
    \n-
    Use get_center() instead.
    \n-
    Member QProjector< dim >::DataSetDescriptor::face (const ReferenceCell &reference_cell, const unsigned int face_no, const bool face_orientation, const bool face_flip, const bool face_rotation, const hp::QCollection< dim - 1 > &quadrature)
    \n-
    Use the version of this function which takes a combined_orientation argument instead.
    \n+
    Use get_center() instead.
    \n
    Member QProjector< dim >::DataSetDescriptor::face (const ReferenceCell &reference_cell, const unsigned int face_no, const bool face_orientation, const bool face_flip, const bool face_rotation, const unsigned int n_quadrature_points)
    \n
    Use the version of this function which takes a combined_orientation argument instead.
    \n+
    Member QProjector< dim >::DataSetDescriptor::face (const ReferenceCell &reference_cell, const unsigned int face_no, const bool face_orientation, const bool face_flip, const bool face_rotation, const hp::QCollection< dim - 1 > &quadrature)
    \n+
    Use the version of this function which takes a combined_orientation argument instead.
    \n
    Member QProjector< dim >::DataSetDescriptor::subface (const ReferenceCell &reference_cell, const unsigned int face_no, const unsigned int subface_no, const bool face_orientation, const bool face_flip, const bool face_rotation, const unsigned int n_quadrature_points, const internal::SubfaceCase< dim > ref_case=internal::SubfaceCase< dim >::case_isotropic)
    \n
    Use the version of this function which takes a combined_orientation argument instead.
    \n
    Member ReferenceCell::compute_orientation (const std::array< T, N > &vertices_0, const std::array< T, N > &vertices_1) const
    \n-
    Use get_combined_orientation() instead.
    \n+
    Use get_combined_orientation() instead.
    \n
    Member ReferenceCell::permute_according_orientation (const std::array< T, N > &vertices, const unsigned int orientation) const
    \n-
    Use permute_by_combined_orientation() instead.
    \n+
    Use permute_by_combined_orientation() instead.
    \n
    Class SLEPcWrappers::TransformationSpectrumFolding
    \n-
    Since deal.II requires PETSc 3.7 or newer this class no longer does anything.
    \n+
    Since deal.II requires PETSc 3.7 or newer this class no longer does anything.
    \n
    Member SolverGMRES< VectorType >::AdditionalData::max_n_tmp_vectors
    \n-
    Use max_basis_size instead.
    \n+
    Use max_basis_size instead.
    \n
    Member SparsityTools::distribute_sparsity_pattern (BlockDynamicSparsityPattern &dsp, const std::vector< IndexSet > &owned_set_per_cpu, const MPI_Comm mpi_comm, const IndexSet &myrange)
    \n-
    Use the distribute_sparsity_pattern() with a single index set for the present MPI process only.
    \n+
    Use the distribute_sparsity_pattern() with a single index set for the present MPI process only.
    \n
    Member SphericalManifold< dim, spacedim >::center
    \n-
    Use get_center() instead.
    \n+
    Use get_center() instead.
    \n+
    Member SymmetricTensor< rank_, dim, Number >::begin_raw () const
    \n+
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n
    Member SymmetricTensor< rank_, dim, Number >::begin_raw ()
    \n+
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n+
    Member SymmetricTensor< rank_, dim, Number >::end_raw () const
    \n
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n-
    Member SymmetricTensor< rank_, dim, Number >::begin_raw () const
    \n-
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n
    Member SymmetricTensor< rank_, dim, Number >::end_raw ()
    \n-
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n-
    Member SymmetricTensor< rank_, dim, Number >::end_raw () const
    \n-
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n+
    This function suggests that the elements of a SymmetricTensor object are stored as a contiguous array, but this is not in fact true and one should not pretend that this so. As a consequence, this function is deprecated.
    \n
    Member Tensor< rank_, dim, Number >::unroll (Vector< OtherNumber > &result) const
    \n-
    Use the more general function that takes a pair of iterators instead.
    \n+
    Use the more general function that takes a pair of iterators instead.
    \n
    Member Triangulation< dim, spacedim >::CELL_COARSEN
    \n
    This is an alias for backward compatibility. Use CellStatus directly.
    \n
    Member Triangulation< dim, spacedim >::CELL_INVALID
    \n
    This is an alias for backward compatibility. Use CellStatus directly.
    \n
    Member Triangulation< dim, spacedim >::CELL_PERSIST
    \n
    This is an alias for backward compatibility. Use CellStatus directly.
    \n
    Member Triangulation< dim, spacedim >::CELL_REFINE
    \n
    This is an alias for backward compatibility. Use CellStatus directly.
    \n
    Member Triangulation< dim, spacedim >::CellStatus
    \n
    This is an alias for backward compatibility. Use CellStatus directly.
    \n
    Member TrilinosWrappers::MPI::Vector::import (const LinearAlgebra::ReadWriteVector< double > &rwv, const VectorOperation::values operation)
    \n-
    Use import_elements() instead.
    \n+
    Use import_elements() instead.
    \n
    Member Utilities::MPI::create_group (const MPI_Comm comm, const MPI_Group &group, const int tag, MPI_Comm *new_comm)
    \n
    Use MPI_Comm_create_group directly
    \n
    Member Utilities::MPI::RemotePointEvaluation< dim, spacedim >::RemotePointEvaluation (const double tolerance, const bool enforce_unique_mapping=false, const unsigned int rtree_level=0, const std::function< std::vector< bool >()> &marked_vertices={})
    \n-
    \n+
    \n
    Member XDMFEntry::get_xdmf_content (const unsigned int indent_level, const ReferenceCell &reference_cell) const
    \n
    Use the other function instead.
    \n
    Member XDMFEntry::XDMFEntry (const std::string &mesh_filename, const std::string &solution_filename, const double time, const std::uint64_t nodes, const std::uint64_t cells, const unsigned int dim, const unsigned int spacedim)
    \n
    Use the constructor that additionally takes a ReferenceCell.
    \n
    Member XDMFEntry::XDMFEntry (const std::string &mesh_filename, const std::string &solution_filename, const double time, const std::uint64_t nodes, const std::uint64_t cells, const unsigned int dim)
    \n
    Use the constructor that additionally takes a ReferenceCell.
    \n
    Member XDMFEntry::XDMFEntry (const std::string &filename, const double time, const std::uint64_t nodes, const std::uint64_t cells, const unsigned int dim)
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -59,24 +59,24 @@\n Use the previous function instead.\n Member _\bD_\bo_\bF_\bT_\bo_\bo_\bl_\bs_\b:_\b:_\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\br_\be_\bl_\be_\bv_\ba_\bn_\bt_\b__\bl_\be_\bv_\be_\bl_\b__\bd_\bo_\bf_\bs (const _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br_\b<_\b _\bd_\bi_\bm_\b,\n _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b> &dof_handler, const unsigned int level, _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &dof_set)\n Use the previous function instead.\n Member _\bD_\bo_\bF_\bT_\bo_\bo_\bl_\bs_\b:_\b:_\bg_\be_\bt_\b__\ba_\bc_\bt_\bi_\bv_\be_\b__\bf_\be_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs (const _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b>\n &dof_handler, std::vector< unsigned int > &active_fe_indices)\n Use _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br_\b:_\b:_\bg_\be_\bt_\b__\ba_\bc_\bt_\bi_\bv_\be_\b__\bf_\be_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs_\b(_\b) that returns the result vector.\n- Member _\bD_\bo_\bF_\bT_\bo_\bo_\bl_\bs_\b:_\b:_\bm_\ba_\bp_\b__\bd_\bo_\bf_\bs_\b__\bt_\bo_\b__\bs_\bu_\bp_\bp_\bo_\br_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs (const hp::MappingCollection<\n- dim, spacedim > &mapping, const _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b> &dof_handler,\n- std::map< _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx, _\bP_\bo_\bi_\bn_\bt_\b<_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b> > &support_points, const\n- _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bM_\ba_\bs_\bk &mask={})\n- Use the function that returns the std::map instead.\n Member _\bD_\bo_\bF_\bT_\bo_\bo_\bl_\bs_\b:_\b:_\bm_\ba_\bp_\b__\bd_\bo_\bf_\bs_\b__\bt_\bo_\b__\bs_\bu_\bp_\bp_\bo_\br_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs (const _\bM_\ba_\bp_\bp_\bi_\bn_\bg_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b>\n &mapping, const _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b> &dof_handler, std::map< _\bt_\by_\bp_\be_\bs_\b:_\b:\n _\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx, _\bP_\bo_\bi_\bn_\bt_\b<_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b> > &support_points, const _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bM_\ba_\bs_\bk\n &mask={})\n Use the function that returns the std::map instead.\n+ Member _\bD_\bo_\bF_\bT_\bo_\bo_\bl_\bs_\b:_\b:_\bm_\ba_\bp_\b__\bd_\bo_\bf_\bs_\b__\bt_\bo_\b__\bs_\bu_\bp_\bp_\bo_\br_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs (const hp::MappingCollection<\n+ dim, spacedim > &mapping, const _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b> &dof_handler,\n+ std::map< _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx, _\bP_\bo_\bi_\bn_\bt_\b<_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b> > &support_points, const\n+ _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bM_\ba_\bs_\bk &mask={})\n+ Use the function that returns the std::map instead.\n Member _\bF_\bE_\bE_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\bD_\ba_\bt_\ba_\b<_\b _\bd_\bi_\bm_\b,_\b _\bN_\bu_\bm_\bb_\be_\br_\b,_\b _\bi_\bs_\b__\bf_\ba_\bc_\be_\b _\b>_\b:_\b:_\bg_\be_\bt_\b__\bn_\bo_\br_\bm_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br (const\n unsigned int q_point) const\n Use _\bn_\bo_\br_\bm_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br_\b(_\b) instead.\n Member _\bF_\bE_\bF_\ba_\bc_\be_\bE_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b<_\b _\bd_\bi_\bm_\b,_\b _\bf_\be_\b__\bd_\be_\bg_\br_\be_\be_\b,_\b _\bn_\b__\bq_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\b1_\bd_\b,_\b _\bn_\b__\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs_\b__\b,\n _\bN_\bu_\bm_\bb_\be_\br_\b,_\b _\bV_\be_\bc_\bt_\bo_\br_\bi_\bz_\be_\bd_\bA_\br_\br_\ba_\by_\bT_\by_\bp_\be_\b _\b>_\b:_\b:_\bi_\bn_\bt_\be_\bg_\br_\ba_\bt_\be_\b__\bs_\bc_\ba_\bt_\bt_\be_\br (const bool\n integrate_values, const bool integrate_gradients, VectorType &output_vector)\n Please use the _\bi_\bn_\bt_\be_\bg_\br_\ba_\bt_\be_\b__\bs_\bc_\ba_\bt_\bt_\be_\br_\b(_\b) function with the _\bE_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\bF_\bl_\ba_\bg_\bs\n@@ -162,44 +162,44 @@\n (const Vector< Number, MemorySpace2 > &src, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n operation)\n Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt (const ReadWriteVector<\n double > &V, const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, const std::shared_ptr<\n const Utilities::MPI::CommunicationPatternBase > &communication_pattern={})\n Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n+ Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt (const CUDAWrappers::\n+ Vector< Number > &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, const std::\n+ shared_ptr< const Utilities::MPI::CommunicationPatternBase >\n+ &communication_pattern={})\n+ Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt (const\n _\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, const std::\n shared_ptr< const Utilities::MPI::CommunicationPatternBase >\n &communication_pattern={})\n Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt (const\n+ TpetraWrappers::Vector< Number, MemorySpace > &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n+ operation, const std::shared_ptr< const Utilities::MPI::\n+ CommunicationPatternBase > &communication_pattern={})\n+ Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n+ Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt (const\n _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, const\n std::shared_ptr< const Utilities::MPI::CommunicationPatternBase >\n &communication_pattern={})\n Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt (const\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, const std::\n shared_ptr< const Utilities::MPI::CommunicationPatternBase >\n &communication_pattern={})\n Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt (const distributed::\n Vector< Number, MemorySpace > &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, const\n std::shared_ptr< const Utilities::MPI::CommunicationPatternBase >\n &communication_pattern={})\n Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n- Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt (const CUDAWrappers::\n- Vector< Number > &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, const std::\n- shared_ptr< const Utilities::MPI::CommunicationPatternBase >\n- &communication_pattern={})\n- Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n- Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt (const\n- TpetraWrappers::Vector< Number, MemorySpace > &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n- operation, const std::shared_ptr< const Utilities::MPI::\n- CommunicationPatternBase > &communication_pattern={})\n- Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt (const ::Vector<\n Number > &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, const std::shared_ptr< const\n Utilities::MPI::CommunicationPatternBase > &communication_pattern={})\n Use _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b(_\b) instead.\n Member _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,_\b _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt\n (const ReadWriteVector< Number > &V, _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation, std::\n shared_ptr< const Utilities::MPI::CommunicationPatternBase >\n@@ -333,22 +333,22 @@\n Member _\bP_\bh_\by_\bs_\bi_\bc_\bs_\b:_\b:_\bT_\br_\ba_\bn_\bs_\bf_\bo_\br_\bm_\ba_\bt_\bi_\bo_\bn_\bs_\b:_\b:_\bR_\bo_\bt_\ba_\bt_\bi_\bo_\bn_\bs_\b:_\b:_\br_\bo_\bt_\ba_\bt_\bi_\bo_\bn_\b__\bm_\ba_\bt_\br_\bi_\bx_\b__\b3_\bd (const Point<\n 3, Number > &axis, const Number &angle)\n Use the variant with a _\bT_\be_\bn_\bs_\bo_\br as an axis.\n Member _\bP_\bo_\bl_\ba_\br_\bM_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b>_\b:_\b:_\bc_\be_\bn_\bt_\be_\br\n Use _\bg_\be_\bt_\b__\bc_\be_\bn_\bt_\be_\br_\b(_\b) instead.\n Member _\bQ_\bP_\br_\bo_\bj_\be_\bc_\bt_\bo_\br_\b<_\b _\bd_\bi_\bm_\b _\b>_\b:_\b:_\bD_\ba_\bt_\ba_\bS_\be_\bt_\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bf_\ba_\bc_\be (const _\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be_\bC_\be_\bl_\bl\n &reference_cell, const unsigned int face_no, const bool face_orientation,\n- const bool face_flip, const bool face_rotation, const _\bh_\bp_\b:_\b:_\bQ_\bC_\bo_\bl_\bl_\be_\bc_\bt_\bi_\bo_\bn< dim -\n- 1 > &quadrature)\n+ const bool face_flip, const bool face_rotation, const unsigned int\n+ n_quadrature_points)\n Use the version of this function which takes a combined_orientation\n argument instead.\n Member _\bQ_\bP_\br_\bo_\bj_\be_\bc_\bt_\bo_\br_\b<_\b _\bd_\bi_\bm_\b _\b>_\b:_\b:_\bD_\ba_\bt_\ba_\bS_\be_\bt_\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bf_\ba_\bc_\be (const _\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be_\bC_\be_\bl_\bl\n &reference_cell, const unsigned int face_no, const bool face_orientation,\n- const bool face_flip, const bool face_rotation, const unsigned int\n- n_quadrature_points)\n+ const bool face_flip, const bool face_rotation, const _\bh_\bp_\b:_\b:_\bQ_\bC_\bo_\bl_\bl_\be_\bc_\bt_\bi_\bo_\bn< dim -\n+ 1 > &quadrature)\n Use the version of this function which takes a combined_orientation\n argument instead.\n Member _\bQ_\bP_\br_\bo_\bj_\be_\bc_\bt_\bo_\br_\b<_\b _\bd_\bi_\bm_\b _\b>_\b:_\b:_\bD_\ba_\bt_\ba_\bS_\be_\bt_\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br_\b:_\b:_\bs_\bu_\bb_\bf_\ba_\bc_\be (const _\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be_\bC_\be_\bl_\bl\n &reference_cell, const unsigned int face_no, const unsigned int subface_no,\n const bool face_orientation, const bool face_flip, const bool face_rotation,\n const unsigned int n_quadrature_points, const internal::SubfaceCase< dim >\n ref_case=_\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bS_\bu_\bb_\bf_\ba_\bc_\be_\bC_\ba_\bs_\be_\b<_\b _\bd_\bi_\bm_\b _\b>_\b:_\b:_\bc_\ba_\bs_\be_\b__\bi_\bs_\bo_\bt_\br_\bo_\bp_\bi_\bc)\n@@ -368,27 +368,27 @@\n Member _\bS_\bp_\ba_\br_\bs_\bi_\bt_\by_\bT_\bo_\bo_\bl_\bs_\b:_\b:_\bd_\bi_\bs_\bt_\br_\bi_\bb_\bu_\bt_\be_\b__\bs_\bp_\ba_\br_\bs_\bi_\bt_\by_\b__\bp_\ba_\bt_\bt_\be_\br_\bn\n (_\bB_\bl_\bo_\bc_\bk_\bD_\by_\bn_\ba_\bm_\bi_\bc_\bS_\bp_\ba_\br_\bs_\bi_\bt_\by_\bP_\ba_\bt_\bt_\be_\br_\bn &dsp, const std::vector< IndexSet >\n &owned_set_per_cpu, const MPI_Comm mpi_comm, const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &myrange)\n Use the _\bd_\bi_\bs_\bt_\br_\bi_\bb_\bu_\bt_\be_\b__\bs_\bp_\ba_\br_\bs_\bi_\bt_\by_\b__\bp_\ba_\bt_\bt_\be_\br_\bn_\b(_\b) with a single index set for the\n present MPI process only.\n Member _\bS_\bp_\bh_\be_\br_\bi_\bc_\ba_\bl_\bM_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b>_\b:_\b:_\bc_\be_\bn_\bt_\be_\br\n Use _\bg_\be_\bt_\b__\bc_\be_\bn_\bt_\be_\br_\b(_\b) instead.\n- Member _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br_\b<_\b _\br_\ba_\bn_\bk_\b__\b,_\b _\bd_\bi_\bm_\b,_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bb_\be_\bg_\bi_\bn_\b__\br_\ba_\bw ()\n+ Member _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br_\b<_\b _\br_\ba_\bn_\bk_\b__\b,_\b _\bd_\bi_\bm_\b,_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bb_\be_\bg_\bi_\bn_\b__\br_\ba_\bw () const\n This function suggests that the elements of a _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br object are\n stored as a contiguous array, but this is not in fact true and one should\n not pretend that this so. As a consequence, this function is deprecated.\n- Member _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br_\b<_\b _\br_\ba_\bn_\bk_\b__\b,_\b _\bd_\bi_\bm_\b,_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bb_\be_\bg_\bi_\bn_\b__\br_\ba_\bw () const\n+ Member _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br_\b<_\b _\br_\ba_\bn_\bk_\b__\b,_\b _\bd_\bi_\bm_\b,_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bb_\be_\bg_\bi_\bn_\b__\br_\ba_\bw ()\n This function suggests that the elements of a _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br object are\n stored as a contiguous array, but this is not in fact true and one should\n not pretend that this so. As a consequence, this function is deprecated.\n- Member _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br_\b<_\b _\br_\ba_\bn_\bk_\b__\b,_\b _\bd_\bi_\bm_\b,_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\be_\bn_\bd_\b__\br_\ba_\bw ()\n+ Member _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br_\b<_\b _\br_\ba_\bn_\bk_\b__\b,_\b _\bd_\bi_\bm_\b,_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\be_\bn_\bd_\b__\br_\ba_\bw () const\n This function suggests that the elements of a _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br object are\n stored as a contiguous array, but this is not in fact true and one should\n not pretend that this so. As a consequence, this function is deprecated.\n- Member _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br_\b<_\b _\br_\ba_\bn_\bk_\b__\b,_\b _\bd_\bi_\bm_\b,_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\be_\bn_\bd_\b__\br_\ba_\bw () const\n+ Member _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br_\b<_\b _\br_\ba_\bn_\bk_\b__\b,_\b _\bd_\bi_\bm_\b,_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\be_\bn_\bd_\b__\br_\ba_\bw ()\n This function suggests that the elements of a _\bS_\by_\bm_\bm_\be_\bt_\br_\bi_\bc_\bT_\be_\bn_\bs_\bo_\br object are\n stored as a contiguous array, but this is not in fact true and one should\n not pretend that this so. As a consequence, this function is deprecated.\n Member _\bT_\be_\bn_\bs_\bo_\br_\b<_\b _\br_\ba_\bn_\bk_\b__\b,_\b _\bd_\bi_\bm_\b,_\b _\bN_\bu_\bm_\bb_\be_\br_\b _\b>_\b:_\b:_\bu_\bn_\br_\bo_\bl_\bl (Vector< OtherNumber > &result)\n const\n Use the more general function that takes a pair of iterators instead.\n Member _\bT_\br_\bi_\ba_\bn_\bg_\bu_\bl_\ba_\bt_\bi_\bo_\bn_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b>_\b:_\b:_\bC_\bE_\bL_\bL_\b__\bC_\bO_\bA_\bR_\bS_\bE_\bN\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_s.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_defs_s.html", "unified_diff": "@@ -92,15 +92,15 @@\n
    \n \n
    \n
    Here is a list of all macros with links to the files they belong to:
    \n \n

    - s -

    \n
    \n \n \n
    \n Generated by \"doxygen\"/ 1.9.8\n
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -13,15 +13,15 @@\n _\be_\br_\br_\bo_\br_\b__\be_\bs_\bt_\bi_\bm_\ba_\bt_\bo_\br_\b._\bc_\bc, _\bd_\ba_\bt_\ba_\b__\bo_\bu_\bt_\b__\bd_\bo_\bf_\b__\bd_\ba_\bt_\ba_\b__\bi_\bn_\bs_\bt_\b2_\b._\bc_\bc, _\bd_\ba_\bt_\ba_\b__\bo_\bu_\bt_\b__\bd_\bo_\bf_\b__\bd_\ba_\bt_\ba_\b._\bc_\bc,\n _\bm_\ba_\bp_\bp_\bi_\bn_\bg_\b__\bi_\bn_\bf_\bo_\b._\bc_\bc, _\be_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b__\bt_\be_\bm_\bp_\bl_\ba_\bt_\be_\b__\bf_\ba_\bc_\bt_\bo_\br_\by_\b._\bc_\bc,\n _\be_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b__\bt_\be_\bm_\bp_\bl_\ba_\bt_\be_\b__\bf_\ba_\bc_\be_\b__\bf_\ba_\bc_\bt_\bo_\br_\by_\b._\bc_\bc, _\bs_\bp_\ba_\br_\bs_\be_\b__\bm_\ba_\bt_\br_\bi_\bx_\b__\bi_\bn_\bs_\bt_\b2_\b._\bc_\bc\n * SPLIT_INSTANTIATIONS_INDEX\u00a0:\u00a0_\be_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b__\bt_\be_\bm_\bp_\bl_\ba_\bt_\be_\b__\bf_\ba_\bc_\bt_\bo_\br_\by_\b__\bi_\bn_\bs_\bt_\b6_\b._\bc_\bc,\n _\bs_\bo_\bl_\bu_\bt_\bi_\bo_\bn_\b__\bt_\br_\ba_\bn_\bs_\bf_\be_\br_\b__\bi_\bn_\bs_\bt_\b4_\b._\bc_\bc, _\bm_\ba_\bp_\bp_\bi_\bn_\bg_\b__\bi_\bn_\bf_\bo_\b._\bc_\bc, _\bm_\ba_\bp_\bp_\bi_\bn_\bg_\b__\bi_\bn_\bf_\bo_\b__\bi_\bn_\bs_\bt_\b2_\b._\bc_\bc,\n _\bm_\ba_\bp_\bp_\bi_\bn_\bg_\b__\bi_\bn_\bf_\bo_\b__\bi_\bn_\bs_\bt_\b3_\b._\bc_\bc, _\bd_\ba_\bt_\ba_\b__\bo_\bu_\bt_\b__\bd_\bo_\bf_\b__\bd_\ba_\bt_\ba_\b._\bc_\bc, _\bd_\ba_\bt_\ba_\b__\bo_\bu_\bt_\b__\bd_\bo_\bf_\b__\bd_\ba_\bt_\ba_\b__\bi_\bn_\bs_\bt_\b2_\b._\bc_\bc,\n _\be_\br_\br_\bo_\br_\b__\be_\bs_\bt_\bi_\bm_\ba_\bt_\bo_\br_\b._\bc_\bc, _\be_\br_\br_\bo_\br_\b__\be_\bs_\bt_\bi_\bm_\ba_\bt_\bo_\br_\b__\bi_\bn_\bs_\bt_\b2_\b._\bc_\bc, _\bm_\ba_\bt_\br_\bi_\bx_\b__\bc_\br_\be_\ba_\bt_\bo_\br_\b._\bc_\bc,\n- _\bm_\ba_\bt_\br_\bi_\bx_\b__\bc_\br_\be_\ba_\bt_\bo_\br_\b__\bi_\bn_\bs_\bt_\b2_\b._\bc_\bc, _\bm_\ba_\bt_\br_\bi_\bx_\b__\bc_\br_\be_\ba_\bt_\bo_\br_\b__\bi_\bn_\bs_\bt_\b3_\b._\bc_\bc,\n+ _\bm_\ba_\bt_\br_\bi_\bx_\b__\bc_\br_\be_\ba_\bt_\bo_\br_\b__\bi_\bn_\bs_\bt_\b2_\b._\bc_\bc, _\bm_\ba_\bt_\br_\bi_\bx_\b__\bc_\br_\be_\ba_\bt_\bo_\br_\b__\bi_\bn_\bs_\bt_\b3_\b._\bc_\bc, _\bs_\bo_\bl_\bu_\bt_\bi_\bo_\bn_\b__\bt_\br_\ba_\bn_\bs_\bf_\be_\br_\b._\bc_\bc,\n _\bs_\bo_\bl_\bu_\bt_\bi_\bo_\bn_\b__\bt_\br_\ba_\bn_\bs_\bf_\be_\br_\b__\bi_\bn_\bs_\bt_\b2_\b._\bc_\bc, _\bs_\bo_\bl_\bu_\bt_\bi_\bo_\bn_\b__\bt_\br_\ba_\bn_\bs_\bf_\be_\br_\b__\bi_\bn_\bs_\bt_\b3_\b._\bc_\bc,\n _\be_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b__\bt_\be_\bm_\bp_\bl_\ba_\bt_\be_\b__\bf_\ba_\bc_\bt_\bo_\br_\by_\b__\bi_\bn_\bs_\bt_\b5_\b._\bc_\bc,\n _\be_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b__\bt_\be_\bm_\bp_\bl_\ba_\bt_\be_\b__\bf_\ba_\bc_\bt_\bo_\br_\by_\b__\bi_\bn_\bs_\bt_\b4_\b._\bc_\bc,\n _\be_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b__\bt_\be_\bm_\bp_\bl_\ba_\bt_\be_\b__\bf_\ba_\bc_\bt_\bo_\br_\by_\b__\bi_\bn_\bs_\bt_\b3_\b._\bc_\bc,\n _\be_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b__\bt_\be_\bm_\bp_\bl_\ba_\bt_\be_\b__\bf_\ba_\bc_\bt_\bo_\br_\by_\b__\bi_\bn_\bs_\bt_\b2_\b._\bc_\bc, _\be_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b__\bt_\be_\bm_\bp_\bl_\ba_\bt_\be_\b__\bf_\ba_\bc_\bt_\bo_\br_\by_\b._\bc_\bc,\n _\be_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b__\bt_\be_\bm_\bp_\bl_\ba_\bt_\be_\b__\bf_\ba_\bc_\be_\b__\bf_\ba_\bc_\bt_\bo_\br_\by_\b__\bi_\bn_\bs_\bt_\b6_\b._\bc_\bc,\n _\be_\bv_\ba_\bl_\bu_\ba_\bt_\bi_\bo_\bn_\b__\bt_\be_\bm_\bp_\bl_\ba_\bt_\be_\b__\bf_\ba_\bc_\be_\b__\bf_\ba_\bc_\bt_\bo_\br_\by_\b__\bi_\bn_\bs_\bt_\b5_\b._\bc_\bc,\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_s.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/globals_s.html", "unified_diff": "@@ -97,16 +97,16 @@\n

    - s -

     
    static ::ExceptionBaseSparsityTools::ExcZOLTANNotInstalled ()
     
    static ::ExceptionBaseTrilinosWrappers::BlockSparseMatrix::ExcIncompatibleRowNumbers (int arg1, int arg2, int arg3, int arg4)
     
    static ::ExceptionBaseTrilinosWrappers::BlockSparseMatrix::ExcIncompatibleColNumbers (int arg1, int arg2, int arg3, int arg4)
     
    static ::ExceptionBaseLinearAlgebra::EpetraWrappers::Vector::ExcDifferentParallelPartitioning ()
    static ::ExceptionBaseLinearAlgebra::EpetraWrappers::Vector::ExcDifferentParallelPartitioning ()
     
    static ::ExceptionBaseLinearAlgebra::EpetraWrappers::Vector::ExcVectorTypeNotCompatible ()
    static ::ExceptionBaseLinearAlgebra::EpetraWrappers::Vector::ExcVectorTypeNotCompatible ()
     
    static ::ExceptionBaseLinearAlgebra::EpetraWrappers::Vector::ExcTrilinosError (int arg1)
    static ::ExceptionBaseLinearAlgebra::EpetraWrappers::Vector::ExcTrilinosError (int arg1)
     
    static ::ExceptionBaseTrilinosWrappers::MPI::BlockVector::ExcIteratorRangeDoesNotMatchVectorSize ()
     
    static ::ExceptionBaseTrilinosWrappers::MPI::BlockVector::ExcNonMatchingBlockVectors ()
     
    static ::ExceptionBaseTrilinosWrappers::PreconditionBase::ExcNonMatchingMaps (std::string arg1)
     
     
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::SparsityPattern< MemorySpace >::ExcInvalidIndex (size_type arg1, size_type arg2)
     
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::SparsityPattern< MemorySpace >::ExcAccessToNonLocalElement (size_type arg1, size_type arg2, size_type arg3, size_type arg4)
     
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::SparsityPattern< MemorySpace >::ExcAccessToNonPresentElement (size_type arg1, size_type arg2)
     
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcDifferentParallelPartitioning ()
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcDifferentParallelPartitioning ()
     
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcVectorTypeNotCompatible ()
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcVectorTypeNotCompatible ()
     
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcAccessToNonLocalElement (size_type arg1, size_type arg2, size_type arg3, size_type arg4)
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcAccessToNonLocalElement (size_type arg1, size_type arg2, size_type arg3, size_type arg4)
     
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcMissingIndexSet ()
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcMissingIndexSet ()
     
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcTrilinosError (int arg1)
    static ::ExceptionBaseLinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcTrilinosError (int arg1)
     
    static ::ExceptionBaseTrilinosWrappers::MPI::Vector::ExcDifferentParallelPartitioning ()
    static ::ExceptionBaseTrilinosWrappers::MPI::Vector::ExcDifferentParallelPartitioning ()
     
    static ::ExceptionBaseTrilinosWrappers::MPI::Vector::ExcTrilinosError (int arg1)
    static ::ExceptionBaseTrilinosWrappers::MPI::Vector::ExcTrilinosError (int arg1)
     
    static ::ExceptionBaseTrilinosWrappers::MPI::Vector::ExcAccessToNonLocalElement (size_type arg1, size_type arg2, size_type arg3, size_type arg4)
    static ::ExceptionBaseTrilinosWrappers::MPI::Vector::ExcAccessToNonLocalElement (size_type arg1, size_type arg2, size_type arg3, size_type arg4)
     
    static ::ExceptionBaseVectorMemory< VectorType >::ExcNotAllocatedHere ()
     
    static ::ExceptionBaseinternal::ExcAccessToUninitializedField ()
     
    static ::ExceptionBaseinternal::ExcMatrixFreeAccessToUninitializedMappingField (std::string arg1)
     
    \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n
    static ::ExceptionBase & LinearAlgebra::EpetraWrappers::Vector::ExcDifferentParallelPartitioning static ::ExceptionBase & LinearAlgebra::EpetraWrappers::Vector::ExcDifferentParallelPartitioning ()
    \n
    \n@@ -13672,15 +13672,15 @@\n
    \n
    \n \n \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n
    static ::ExceptionBase & LinearAlgebra::EpetraWrappers::Vector::ExcVectorTypeNotCompatible static ::ExceptionBase & LinearAlgebra::EpetraWrappers::Vector::ExcVectorTypeNotCompatible ()
    \n
    \n@@ -13698,15 +13698,15 @@\n
    \n
    \n \n \n \n@@ -15157,21 +15157,21 @@\n \n \n

    ◆ ExcDifferentParallelPartitioning() [2/3]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    \n \n \n- \n+ \n \n \n \n \n \n
    static ::ExceptionBase & LinearAlgebra::EpetraWrappers::Vector::ExcTrilinosError static ::ExceptionBase & LinearAlgebra::EpetraWrappers::Vector::ExcTrilinosError (int arg1)
    \n
    \n \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n
    static ::ExceptionBase & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcDifferentParallelPartitioning static ::ExceptionBase & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcDifferentParallelPartitioning ()
    \n
    \n@@ -15185,21 +15185,21 @@\n \n \n

    ◆ ExcVectorTypeNotCompatible() [5/5]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n
    static ::ExceptionBase & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcVectorTypeNotCompatible static ::ExceptionBase & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcVectorTypeNotCompatible ()
    \n
    \n@@ -15213,21 +15213,21 @@\n \n \n

    ◆ ExcAccessToNonLocalElement() [6/7]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -15264,21 +15264,21 @@\n \n \n

    ◆ ExcMissingIndexSet()

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n
    static ::ExceptionBase & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcAccessToNonLocalElement static ::ExceptionBase & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcAccessToNonLocalElement (size_type arg1,
    \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n
    static ::ExceptionBase & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcMissingIndexSet static ::ExceptionBase & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcMissingIndexSet ()
    \n
    \n@@ -15292,21 +15292,21 @@\n \n \n

    ◆ ExcTrilinosError() [9/10]

    \n \n
    \n
    \n
    \n-template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n+template<typename Number , typename MemorySpace = ::MemorySpace::Host>
    \n \n \n \n@@ -15325,15 +15325,15 @@\n
    \n
    \n
    \n \n \n- \n+ \n \n \n \n \n \n
    static ::ExceptionBase & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcTrilinosError static ::ExceptionBase & LinearAlgebra::TpetraWrappers::Vector< Number, MemorySpace >::ExcTrilinosError (int arg1)
    \n
    \n \n \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n
    static ::ExceptionBase & TrilinosWrappers::MPI::Vector::ExcDifferentParallelPartitioning static ::ExceptionBase & TrilinosWrappers::MPI::Vector::ExcDifferentParallelPartitioning ()
    \n
    \n@@ -15351,15 +15351,15 @@\n
    \n
    \n \n \n \n@@ -15378,15 +15378,15 @@\n
    \n
    \n
    \n \n \n- \n+ \n \n \n \n \n \n
    static ::ExceptionBase & TrilinosWrappers::MPI::Vector::ExcTrilinosError static ::ExceptionBase & TrilinosWrappers::MPI::Vector::ExcTrilinosError (int arg1)
    \n
    \n \n \n \n \n
    \n \n \n- \n+ \n \n \n \n \n \n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -985,22 +985,22 @@\n _\bE_\bx_\bc_\bI_\bn_\bc_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bl_\be_\bR_\bo_\bw_\bN_\bu_\bm_\bb_\be_\br_\bs (_\bi_\bn_\bt arg1, _\bi_\bn_\bt arg2, _\bi_\bn_\bt\n arg3, _\bi_\bn_\bt arg4)\n \u00a0\n static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bS_\bp_\ba_\br_\bs_\be_\bM_\ba_\bt_\br_\bi_\bx_\b:_\b:\n _\bE_\bx_\bc_\bI_\bn_\bc_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bl_\be_\bC_\bo_\bl_\bN_\bu_\bm_\bb_\be_\br_\bs (_\bi_\bn_\bt arg1, _\bi_\bn_\bt arg2, _\bi_\bn_\bt\n arg3, _\bi_\bn_\bt arg4)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n _\bE_\bx_\bc_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be_\bN_\bo_\bt_\bC_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bl_\be ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n- _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt _\ba_\br_\bg_\b1)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n+ _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt arg1)\n \u00a0\n static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n _\bE_\bx_\bc_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bR_\ba_\bn_\bg_\be_\bD_\bo_\be_\bs_\bN_\bo_\bt_\bM_\ba_\bt_\bc_\bh_\bV_\be_\bc_\bt_\bo_\br_\bS_\bi_\bz_\be ()\n \u00a0\n static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n _\bE_\bx_\bc_\bN_\bo_\bn_\bM_\ba_\bt_\bc_\bh_\bi_\bn_\bg_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\bs ()\n \u00a0\n@@ -1150,39 +1150,39 @@\n _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>_\b:_\b:_\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n arg1, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg2, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg3, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg4)\n \u00a0\n static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bS_\bp_\ba_\br_\bs_\bi_\bt_\by_\bP_\ba_\bt_\bt_\be_\br_\bn_\b<\n _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>_\b:_\b:_\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bP_\br_\be_\bs_\be_\bn_\bt_\bE_\bl_\be_\bm_\be_\bn_\bt\n (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg1, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg2)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,\n _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>_\b:_\b:_\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,\n _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>_\b:_\b:_\bE_\bx_\bc_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be_\bN_\bo_\bt_\bC_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bl_\be ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,\n _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>_\b:_\b:_\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n- _\ba_\br_\bg_\b1, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b2, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b3, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b4)\n+ arg1, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg2, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg3, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg4)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,\n _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>_\b:_\b:_\bE_\bx_\bc_\bM_\bi_\bs_\bs_\bi_\bn_\bg_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,\n- _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>_\b:_\b:_\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt _\ba_\br_\bg_\b1)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bN_\bu_\bm_\bb_\be_\br_\b,\n+ _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b _\b>_\b:_\b:_\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt arg1)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg ()\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt\n- _\ba_\br_\bg_\b1)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br (_\bi_\bn_\bt\n+ arg1)\n \u00a0\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n- _\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b1, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n- _\ba_\br_\bg_\b2, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b3, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\ba_\br_\bg_\b4)\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:\n+ _\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg1, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+ arg2, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg3, _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be arg4)\n \u00a0\n static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bV_\be_\bc_\bt_\bo_\br_\bM_\be_\bm_\bo_\br_\by_\b<_\b _\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be_\b _\b>_\b:_\b:_\bE_\bx_\bc_\bN_\bo_\bt_\bA_\bl_\bl_\bo_\bc_\ba_\bt_\be_\bd_\bH_\be_\br_\be ()\n \u00a0\n static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bU_\bn_\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\bd_\bF_\bi_\be_\bl_\bd ()\n \u00a0\n static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be &\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:\n _\bE_\bx_\bc_\bM_\ba_\bt_\br_\bi_\bx_\bF_\br_\be_\be_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bU_\bn_\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\bd_\bM_\ba_\bp_\bp_\bi_\bn_\bg_\bF_\bi_\be_\bl_\bd (std::\n@@ -5843,24 +5843,24 @@\n )\n Exception\n Note\n The message that will be printed by this exception reads:\n << \"The blocks [\" << arg1 << ',' << arg2 << \"] and [\" << arg3 << ',' <<\n arg4 << \"] have differing column numbers.\"\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcD\bDi\bif\bff\bfe\ber\bre\ben\bnt\btP\bPa\bar\bra\bal\bll\ble\bel\blP\bPa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg(\b()\b) [\b[1\b1/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & LinearAlgebra::EpetraWrappers:: ( ) static\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & LinearAlgebra::EpetraWrappers:: ( ) static\n Vector::ExcDifferentParallelPartitioning\n The vectors have different partitioning, i.e. their _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt objects don't\n represent the same indices.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcV\bVe\bec\bct\bto\bor\brT\bTy\byp\bpe\beN\bNo\bot\btC\bCo\bom\bmp\bpa\bat\bti\bib\bbl\ble\be(\b()\b) [\b[4\b4/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & LinearAlgebra::EpetraWrappers:: ( ) static\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & LinearAlgebra::EpetraWrappers:: ( ) static\n Vector::ExcVectorTypeNotCompatible\n Attempt to perform an operation between two incompatible vector types.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcT\bTr\bri\bil\bli\bin\bno\bos\bsE\bEr\brr\bro\bor\br(\b()\b) [\b[2\b2/\b/1\b10\b0]\b] *\b**\b**\b**\b**\b*\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & LinearAlgebra:: ( _\bi_\bn_\bt\u00a0 a\bar\brg\bg1\b1 ) static\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & LinearAlgebra:: ( _\bi_\bn_\bt\u00a0 a\bar\brg\bg1\b1 ) static\n EpetraWrappers::Vector::ExcTrilinosError\n Exception thrown by an error in Trilinos.\n Note\n The message that will be printed by this exception reads:\n << \"An error with error number \" << arg1 << \" occurred while calling a\n Trilinos function\"\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcI\bIt\bte\ber\bra\bat\bto\bor\brR\bRa\ban\bng\bge\beD\bDo\boe\bes\bsN\bNo\bot\btM\bMa\bat\btc\bch\bhV\bVe\bec\bct\bto\bor\brS\bSi\biz\bze\be(\b()\b) [\b[4\b4/\b/4\b4]\b] *\b**\b**\b**\b**\b*\n@@ -6304,28 +6304,28 @@\n Exception\n Note\n The message that will be printed by this exception reads:\n << \"You tried to access element (\" << arg1 << '/' << arg2 << ')' << \" of\n a sparse matrix, but it appears to not\" << \" exist in the Trilinos\n sparsity pattern.\"\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcD\bDi\bif\bff\bfe\ber\bre\ben\bnt\btP\bPa\bar\bra\bal\bll\ble\bel\blP\bPa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg(\b()\b) [\b[2\b2/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:\n+template\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: ( ) static\n ExcDifferentParallelPartitioning\n The vectors have different partitioning, i.e. their _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt objects don't\n represent the same indices.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcV\bVe\bec\bct\bto\bor\brT\bTy\byp\bpe\beN\bNo\bot\btC\bCo\bom\bmp\bpa\bat\bti\bib\bbl\ble\be(\b()\b) [\b[5\b5/\b/5\b5]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( ) static\n+template\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( ) static\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::ExcVectorTypeNotCompatible\n Attempt to perform an operation between two incompatible vector types.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcA\bAc\bcc\bce\bes\bss\bsT\bTo\boN\bNo\bon\bnL\bLo\boc\bca\bal\blE\bEl\ble\bem\bme\ben\bnt\bt(\b()\b) [\b[6\b6/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n+template\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: ( _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 a\bar\brg\bg1\b1,\n ExcAccessToNonLocalElement\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 a\bar\brg\bg2\b2, static\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 a\bar\brg\bg3\b3,\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 a\bar\brg\bg4\b4\u00a0\n )\n Note\n@@ -6339,48 +6339,48 @@\n stored locally.\" << \"\\n\\n\" << \"A common source for this kind of problem\n is that you \" << \"are passing a 'fully distributed' vector into a\n function \" << \"that needs read access to vector elements that correspond\n \" << \"to degrees of freedom on ghost cells (or at least to \" << \"'locally\n active' degrees of freedom that are not also \" << \"'locally owned'). You\n need to pass a vector that has these \" << \"elements as ghost entries.\"\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcM\bMi\bis\bss\bsi\bin\bng\bgI\bIn\bnd\bde\bex\bxS\bSe\bet\bt(\b()\b) *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( ) static\n+template\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b: ( ) static\n _\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >::ExcMissingIndexSet\n Missing index set.\n Note\n The message that will be printed by this exception reads:\n \"To compress a vector, a locally_relevant_dofs \" \"index set, and a\n locally_owned_dofs index set \" \"must be provided. These index sets must\n be \" \"provided either when the vector is initialized \" \"or when compress\n is called. See the documentation \" \"of compress() for more information.\"\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcT\bTr\bri\bil\bli\bin\bno\bos\bsE\bEr\brr\bro\bor\br(\b()\b) [\b[9\b9/\b/1\b10\b0]\b] *\b**\b**\b**\b**\b*\n-template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be Number , _\bt_\by_\bp_\be_\bn_\ba_\bm_\be MemorySpace = ::MemorySpace::Host>\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n+template\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:\n _\bT_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br< Number, MemorySpace >:: ( _\bi_\bn_\bt\u00a0 a\bar\brg\bg1\b1 ) static\n ExcTrilinosError\n Exception thrown by an error in Trilinos.\n Note\n The message that will be printed by this exception reads:\n << \"An error with error number \" << arg1 << \" occurred while calling a\n Trilinos function\"\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcD\bDi\bif\bff\bfe\ber\bre\ben\bnt\btP\bPa\bar\bra\bal\bll\ble\bel\blP\bPa\bar\brt\bti\bit\bti\bio\bon\bni\bin\bng\bg(\b()\b) [\b[3\b3/\b/3\b3]\b] *\b**\b**\b**\b**\b*\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & TrilinosWrappers::MPI:: ( ) static\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & TrilinosWrappers::MPI:: ( ) static\n Vector::ExcDifferentParallelPartitioning\n Exception\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcT\bTr\bri\bil\bli\bin\bno\bos\bsE\bEr\brr\bro\bor\br(\b()\b) [\b[1\b10\b0/\b/1\b10\b0]\b] *\b**\b**\b**\b**\b*\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & TrilinosWrappers::MPI:: ( _\bi_\bn_\bt\u00a0 a\bar\brg\bg1\b1 ) static\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & TrilinosWrappers::MPI:: ( _\bi_\bn_\bt\u00a0 a\bar\brg\bg1\b1 ) static\n Vector::ExcTrilinosError\n Exception\n Note\n The message that will be printed by this exception reads:\n << \"An error with error number \" << arg1 << \" occurred while calling a\n Trilinos function\"\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0E\bEx\bxc\bcA\bAc\bcc\bce\bes\bss\bsT\bTo\boN\bNo\bon\bnL\bLo\boc\bca\bal\blE\bEl\ble\bem\bme\ben\bnt\bt(\b()\b) [\b[7\b7/\b/7\b7]\b] *\b**\b**\b**\b**\b*\n-_\bs_\bt_\ba_\bt_\bi_\bc _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & TrilinosWrappers::MPI:: ( _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 a\bar\brg\bg1\b1,\n+static _\b:_\b:_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\bB_\ba_\bs_\be & TrilinosWrappers::MPI:: ( _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 a\bar\brg\bg1\b1,\n Vector::ExcAccessToNonLocalElement\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 a\bar\brg\bg2\b2, static\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 a\bar\brg\bg3\b3,\n _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 a\bar\brg\bg4\b4\u00a0\n )\n Exception\n Note\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2grid_2manifold_8h.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2grid_2manifold_8h.html", "unified_diff": "@@ -128,16 +128,16 @@\n \n
    static ::ExceptionBase & TrilinosWrappers::MPI::Vector::ExcAccessToNonLocalElement static ::ExceptionBase & TrilinosWrappers::MPI::Vector::ExcAccessToNonLocalElement (size_type arg1,
     
    \n \n \n \n \n-\n-\n+\n+\n \n

    \n Functions

    template<typename MeshIteratorType >
    constexpr std::size_t Manifolds::n_default_points_per_cell ()
     
    template<typename MeshIteratorType >
    std::pair< std::array< Point< MeshIteratorType::AccessorType::space_dimension >, n_default_points_per_cell< MeshIteratorType >()>, std::array< double, n_default_points_per_cell< MeshIteratorType >()> > Manifolds::get_default_points_and_weights (const MeshIteratorType &iterator, const bool with_interpolation=false)
    template<typename MeshIteratorType >
    std::pair< std::array< Point< MeshIteratorType::AccessorType::space_dimension >, n_default_points_per_cell< MeshIteratorType >()>, std::array< double, n_default_points_per_cell< MeshIteratorType >()> > Manifolds::get_default_points_and_weights (const MeshIteratorType &iterator, const bool with_interpolation=false)
     
    \n \n \n \n
    \n Generated by \"doxygen\"/ 1.9.8\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -29,18 +29,18 @@\n N\bNa\bam\bme\bes\bsp\bpa\bac\bce\bes\bs\n namespace \u00a0 _\bM_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\bs\n \u00a0\n F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n template\n constexpr std::size_t\u00a0 _\bM_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\bs_\b:_\b:_\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl ()\n \u00a0\n-template\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be >\n std::pair< std::array< _\bP_\bo_\bi_\bn_\bt<\n MeshIteratorType::AccessorType::\n space_dimension >,\n _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl<\n-MeshIteratorType >()>, std::array< _\bM_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\bs_\b:_\b:_\bg_\be_\bt_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\ba_\bn_\bd_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs\n-double, _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl< (const MeshIteratorType &iterator, const\n- MeshIteratorType >()> >\u00a0 _\bb_\bo_\bo_\bl with_interpolation=false)\n+_\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be >()>, std::array< _\bM_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\bs_\b:_\b:_\bg_\be_\bt_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\ba_\bn_\bd_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs\n+double, _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl< (_\bc_\bo_\bn_\bs_\bt _\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be &iterator, _\bc_\bo_\bn_\bs_\bt\n+ _\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be >()> >\u00a0 _\bb_\bo_\bo_\bl _\bw_\bi_\bt_\bh_\b__\bi_\bn_\bt_\be_\br_\bp_\bo_\bl_\ba_\bt_\bi_\bo_\bn=_\bf_\ba_\bl_\bs_\be)\n \u00a0\n ===============================================================================\n Generated by\u00a0_\b[_\bd_\bo_\bx_\by_\bg_\be_\bn_\b] 1.9.8\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2grid_2manifold_8h_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/include_2deal_8II_2grid_2manifold_8h_source.html", "unified_diff": "@@ -162,18 +162,18 @@\n
    64 hexes_per_cell -
    \n
    65 1; // don't count the cell itself, just the bounding objects
    \n
    66 }
    \n \n
    67
    \n
    110 template <typename MeshIteratorType>
    \n
    111 std::pair<std::array<Point<MeshIteratorType::AccessorType::space_dimension>,
    \n-
    112 n_default_points_per_cell<MeshIteratorType>()>,
    \n+\n
    113 std::array<double, n_default_points_per_cell<MeshIteratorType>()>>
    \n-
    114 get_default_points_and_weights(const MeshIteratorType &iterator,
    \n-
    115 const bool with_interpolation = false);
    \n+\n+
    115 const bool with_interpolation = false);
    \n
    116} // namespace Manifolds
    \n \n
    117
    \n
    118
    \n
    119
    \n
    284template <int dim, int spacedim = dim>
    \n
    \n@@ -421,134 +421,134 @@\n
    1148
    \n
    1149
    \n
    1150
    \n
    1151namespace Manifolds
    \n
    1152{
    \n
    1153 template <typename MeshIteratorType>
    \n
    1154 std::pair<std::array<Point<MeshIteratorType::AccessorType::space_dimension>,
    \n-
    1155 n_default_points_per_cell<MeshIteratorType>()>,
    \n+\n
    1156 std::array<double, n_default_points_per_cell<MeshIteratorType>()>>
    \n-
    1157 get_default_points_and_weights(const MeshIteratorType &iterator,
    \n-
    1158 const bool with_interpolation)
    \n+\n+
    1158 const bool with_interpolation)
    \n
    1159 {
    \n
    1160 const int dim = MeshIteratorType::AccessorType::structure_dimension;
    \n
    1161 const int spacedim = MeshIteratorType::AccessorType::space_dimension;
    \n-
    1162 constexpr std::size_t points_per_cell =
    \n-
    1163 n_default_points_per_cell<MeshIteratorType>();
    \n+
    1162 constexpr std::size_t points_per_cell =
    \n+\n
    1164
    \n-
    1165 std::pair<std::array<Point<spacedim>, points_per_cell>,
    \n+
    1165 std::pair<std::array<Point<spacedim>, points_per_cell>,
    \n
    1166 std::array<double, points_per_cell>>
    \n-
    1167 points_weights;
    \n+\n
    1168
    \n
    1169
    \n
    1170 // note that the exact weights are chosen such as to minimize the
    \n
    1171 // distortion of the four new quads from the optimal shape; their
    \n
    1172 // derivation and values is copied over from the
    \n
    1173 // interpolation function in the mapping
    \n
    1174 switch (dim)
    \n
    1175 {
    \n
    1176 case 1:
    \n-
    1177 Assert(points_weights.first.size() == 2, ExcInternalError());
    \n-
    1178 Assert(points_weights.second.size() == 2, ExcInternalError());
    \n-
    1179 points_weights.first[0] = iterator->vertex(0);
    \n-
    1180 points_weights.second[0] = .5;
    \n-
    1181 points_weights.first[1] = iterator->vertex(1);
    \n-
    1182 points_weights.second[1] = .5;
    \n+
    1177 Assert(points_weights.first.size() == 2, ExcInternalError());
    \n+
    1178 Assert(points_weights.second.size() == 2, ExcInternalError());
    \n+
    1179 points_weights.first[0] = iterator->vertex(0);
    \n+
    1180 points_weights.second[0] = .5;
    \n+
    1181 points_weights.first[1] = iterator->vertex(1);
    \n+
    1182 points_weights.second[1] = .5;
    \n
    1183 break;
    \n
    1184 case 2:
    \n-
    1185 Assert(points_weights.first.size() == 8, ExcInternalError());
    \n-
    1186 Assert(points_weights.second.size() == 8, ExcInternalError());
    \n+
    1185 Assert(points_weights.first.size() == 8, ExcInternalError());
    \n+
    1186 Assert(points_weights.second.size() == 8, ExcInternalError());
    \n
    1187
    \n
    1188 for (unsigned int i = 0; i < 4; ++i)
    \n
    1189 {
    \n-
    1190 points_weights.first[i] = iterator->vertex(i);
    \n-
    1191 points_weights.first[4 + i] =
    \n+
    1190 points_weights.first[i] = iterator->vertex(i);
    \n+
    1191 points_weights.first[4 + i] =
    \n
    1192 (iterator->line(i)->has_children() ?
    \n
    1193 iterator->line(i)->child(0)->vertex(1) :
    \n
    1194 iterator->line(i)->get_manifold().get_new_point_on_line(
    \n
    1195 iterator->line(i)));
    \n
    1196 }
    \n
    1197
    \n-
    1198 if (with_interpolation)
    \n+\n
    1199 {
    \n-
    1200 std::fill(points_weights.second.begin(),
    \n-
    1201 points_weights.second.begin() + 4,
    \n+
    1200 std::fill(points_weights.second.begin(),
    \n+
    1201 points_weights.second.begin() + 4,
    \n
    1202 -0.25);
    \n-
    1203 std::fill(points_weights.second.begin() + 4,
    \n-
    1204 points_weights.second.end(),
    \n+
    1203 std::fill(points_weights.second.begin() + 4,
    \n+
    1204 points_weights.second.end(),
    \n
    1205 0.5);
    \n
    1206 }
    \n
    1207 else
    \n-
    1208 std::fill(points_weights.second.begin(),
    \n-
    1209 points_weights.second.end(),
    \n+
    1208 std::fill(points_weights.second.begin(),
    \n+
    1209 points_weights.second.end(),
    \n
    1210 1.0 / 8.0);
    \n
    1211 break;
    \n
    1212 case 3:
    \n
    1213 {
    \n \n
    1215 static_cast<TriaIterator<TriaAccessor<3, 3, 3>>>(iterator);
    \n-
    1216 const unsigned int np = GeometryInfo<dim>::vertices_per_cell +
    \n+
    1216 const unsigned int np = GeometryInfo<dim>::vertices_per_cell +
    \n \n \n-
    1219 Assert(points_weights.first.size() == np, ExcInternalError());
    \n-
    1220 Assert(points_weights.second.size() == np, ExcInternalError());
    \n-
    1221 auto *sp3 = reinterpret_cast<
    \n-
    1222 std::array<Point<3>, n_default_points_per_cell<decltype(hex)>()>
    \n-
    1223 *>(&points_weights.first);
    \n+
    1219 Assert(points_weights.first.size() == np, ExcInternalError());
    \n+
    1220 Assert(points_weights.second.size() == np, ExcInternalError());
    \n+
    1221 auto *sp3 = reinterpret_cast<
    \n+
    1222 std::array<Point<3>, n_default_points_per_cell<decltype(hex)>()>
    \n+
    1223 *>(&points_weights.first);
    \n
    1224
    \n-
    1225 unsigned int j = 0;
    \n+
    1225 unsigned int j = 0;
    \n
    1226
    \n
    1227 // note that the exact weights are chosen such as to minimize the
    \n
    1228 // distortion of the eight new hexes from the optimal shape through
    \n
    1229 // transfinite interpolation from the faces and vertices, see
    \n
    1230 // TransfiniteInterpolationManifold for a deeper explanation of the
    \n
    1231 // mechanisms
    \n-
    1232 if (with_interpolation)
    \n+\n
    1233 {
    \n
    1234 for (unsigned int i = 0;
    \n-
    1235 i < GeometryInfo<dim>::vertices_per_cell;
    \n-
    1236 ++i, ++j)
    \n+\n+
    1236 ++i, ++j)
    \n
    1237 {
    \n-
    1238 (*sp3)[j] = hex->vertex(i);
    \n-
    1239 points_weights.second[j] = 1.0 / 8.0;
    \n+
    1238 (*sp3)[j] = hex->vertex(i);
    \n+
    1239 points_weights.second[j] = 1.0 / 8.0;
    \n
    1240 }
    \n-
    1241 for (unsigned int i = 0; i < GeometryInfo<dim>::lines_per_cell;
    \n-
    1242 ++i, ++j)
    \n+
    1241 for (unsigned int i = 0; i < GeometryInfo<dim>::lines_per_cell;
    \n+
    1242 ++i, ++j)
    \n
    1243 {
    \n-
    1244 (*sp3)[j] =
    \n+
    1244 (*sp3)[j] =
    \n
    1245 (hex->line(i)->has_children() ?
    \n
    1246 hex->line(i)->child(0)->vertex(1) :
    \n
    1247 hex->line(i)->get_manifold().get_new_point_on_line(
    \n
    1248 hex->line(i)));
    \n-
    1249 points_weights.second[j] = -1.0 / 4.0;
    \n+
    1249 points_weights.second[j] = -1.0 / 4.0;
    \n
    1250 }
    \n-
    1251 for (unsigned int i = 0; i < GeometryInfo<dim>::faces_per_cell;
    \n-
    1252 ++i, ++j)
    \n+
    1251 for (unsigned int i = 0; i < GeometryInfo<dim>::faces_per_cell;
    \n+
    1252 ++i, ++j)
    \n
    1253 {
    \n-
    1254 (*sp3)[j] =
    \n+
    1254 (*sp3)[j] =
    \n
    1255 (hex->quad(i)->has_children() ?
    \n
    1256 hex->quad(i)->isotropic_child(0)->vertex(3) :
    \n
    1257 hex->quad(i)->get_manifold().get_new_point_on_quad(
    \n
    1258 hex->quad(i)));
    \n-
    1259 points_weights.second[j] = 1.0 / 2.0;
    \n+
    1259 points_weights.second[j] = 1.0 / 2.0;
    \n
    1260 }
    \n
    1261 }
    \n
    1262 else
    \n
    1263 // Overwrite the weights with 1/np if we don't want to use
    \n
    1264 // interpolation.
    \n-
    1265 std::fill(points_weights.second.begin(),
    \n-
    1266 points_weights.second.end(),
    \n-
    1267 1.0 / np);
    \n+
    1265 std::fill(points_weights.second.begin(),
    \n+
    1266 points_weights.second.end(),
    \n+
    1267 1.0 / np);
    \n
    1268 }
    \n
    1269 break;
    \n
    1270 default:
    \n \n
    1272 break;
    \n
    1273 }
    \n-
    1274 return points_weights;
    \n+
    1274 return points_weights;
    \n
    1275 }
    \n
    1276} // namespace Manifolds
    \n
    1277
    \n
    1278#endif // DOXYGEN
    \n
    1279
    \n \n
    1281
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -67,18 +67,18 @@\n 64 hexes_per_cell -\n 65 1; // don't count the cell itself, just the bounding objects\n 66 }\n 67\n 110 template \n 111 std::pair,\n-112 n_default_points_per_cell()>,\n+112 _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl_\b<_\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be_\b>()>,\n 113 std::array()>>\n-_\b1_\b1_\b4 _\bg_\be_\bt_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\ba_\bn_\bd_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs(const MeshIteratorType &iterator,\n-115 const bool with_interpolation = false);\n+_\b1_\b1_\b4 _\bg_\be_\bt_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\ba_\bn_\bd_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs(const _\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be &iterator,\n+115 const bool _\bw_\bi_\bt_\bh_\b__\bi_\bn_\bt_\be_\br_\bp_\bo_\bl_\ba_\bt_\bi_\bo_\bn = false);\n 116} // namespace Manifolds\n 117\n 118\n 119\n 284template \n _\b2_\b8_\b5class _\bM_\ba_\bn_\bi_\bf_\bo_\bl_\bd : public _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br\n 286{\n@@ -322,134 +322,134 @@\n 1149\n 1150\n 1151namespace _\bM_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\bs\n 1152{\n 1153 template \n 1154 std::pair,\n-1155 n_default_points_per_cell()>,\n+1155 _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl_\b<_\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be_\b>()>,\n 1156 std::array()>>\n-1157 _\bg_\be_\bt_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\ba_\bn_\bd_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs(const MeshIteratorType &iterator,\n-1158 const bool with_interpolation)\n+1157 _\bg_\be_\bt_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\ba_\bn_\bd_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs(const _\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be &iterator,\n+1158 const bool _\bw_\bi_\bt_\bh_\b__\bi_\bn_\bt_\be_\br_\bp_\bo_\bl_\ba_\bt_\bi_\bo_\bn)\n 1159 {\n 1160 const int dim = MeshIteratorType::AccessorType::structure_dimension;\n 1161 const int spacedim = MeshIteratorType::AccessorType::space_dimension;\n-1162 constexpr std::size_t points_per_cell =\n-1163 n_default_points_per_cell();\n+1162 constexpr std::size_t _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl =\n+1163 _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl_\b<_\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be_\b>();\n 1164\n-1165 std::pair, points_per_cell>,\n+1165 std::pair, _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl>,\n 1166 std::array>\n-1167 points_weights;\n+1167 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs;\n 1168\n 1169\n 1170 // note that the exact weights are chosen such as to minimize the\n 1171 // distortion of the four new quads from the optimal shape; their\n 1172 // derivation and values is copied over from the\n 1173 // interpolation function in the mapping\n 1174 switch (dim)\n 1175 {\n 1176 case 1:\n-1177 _\bA_\bs_\bs_\be_\br_\bt(points_weights.first.size() == 2, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-1178 _\bA_\bs_\bs_\be_\br_\bt(points_weights.second.size() == 2, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-1179 points_weights.first[0] = iterator->vertex(0);\n-1180 points_weights.second[0] = .5;\n-1181 points_weights.first[1] = iterator->vertex(1);\n-1182 points_weights.second[1] = .5;\n+1177 _\bA_\bs_\bs_\be_\br_\bt(_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.first.size() == 2, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+1178 _\bA_\bs_\bs_\be_\br_\bt(_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.size() == 2, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+1179 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.first[0] = iterator->vertex(0);\n+1180 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second[0] = .5;\n+1181 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.first[1] = iterator->vertex(1);\n+1182 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second[1] = .5;\n 1183 break;\n 1184 case 2:\n-1185 _\bA_\bs_\bs_\be_\br_\bt(points_weights.first.size() == 8, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-1186 _\bA_\bs_\bs_\be_\br_\bt(points_weights.second.size() == 8, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+1185 _\bA_\bs_\bs_\be_\br_\bt(_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.first.size() == 8, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+1186 _\bA_\bs_\bs_\be_\br_\bt(_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.size() == 8, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n 1187\n 1188 for (unsigned int i = 0; i < 4; ++i)\n 1189 {\n-1190 points_weights.first[i] = iterator->vertex(i);\n-1191 points_weights.first[4 + i] =\n+1190 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.first[i] = iterator->vertex(i);\n+1191 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.first[4 + i] =\n 1192 (iterator->line(i)->has_children() ?\n 1193 iterator->line(i)->child(0)->vertex(1) :\n 1194 iterator->line(i)->get_manifold().get_new_point_on_line(\n 1195 iterator->line(i)));\n 1196 }\n 1197\n-1198 if (with_interpolation)\n+1198 if (_\bw_\bi_\bt_\bh_\b__\bi_\bn_\bt_\be_\br_\bp_\bo_\bl_\ba_\bt_\bi_\bo_\bn)\n 1199 {\n-1200 std::fill(points_weights.second.begin(),\n-1201 points_weights.second.begin() + 4,\n+1200 std::fill(_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.begin(),\n+1201 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.begin() + 4,\n 1202 -0.25);\n-1203 std::fill(points_weights.second.begin() + 4,\n-1204 points_weights.second.end(),\n+1203 std::fill(_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.begin() + 4,\n+1204 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.end(),\n 1205 0.5);\n 1206 }\n 1207 else\n-1208 std::fill(points_weights.second.begin(),\n-1209 points_weights.second.end(),\n+1208 std::fill(_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.begin(),\n+1209 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.end(),\n 1210 1.0 / 8.0);\n 1211 break;\n 1212 case 3:\n 1213 {\n 1214 _\bT_\br_\bi_\ba_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b<_\bT_\br_\bi_\ba_\bA_\bc_\bc_\be_\bs_\bs_\bo_\br_\b<_\b3_\b,_\b _\b3_\b,_\b _\b3_\b>> hex =\n 1215 static_cast<_\bT_\br_\bi_\ba_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b<_\bT_\br_\bi_\ba_\bA_\bc_\bc_\be_\bs_\bs_\bo_\br_\b<_\b3_\b,_\b _\b3_\b,_\b _\b3_\b>>>(iterator);\n-1216 const unsigned int np = _\bG_\be_\bo_\bm_\be_\bt_\br_\by_\bI_\bn_\bf_\bo_\b<_\bd_\bi_\bm_\b>_\b:_\b:_\bv_\be_\br_\bt_\bi_\bc_\be_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl +\n+1216 const unsigned int _\bn_\bp = _\bG_\be_\bo_\bm_\be_\bt_\br_\by_\bI_\bn_\bf_\bo_\b<_\bd_\bi_\bm_\b>_\b:_\b:_\bv_\be_\br_\bt_\bi_\bc_\be_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl +\n 1217 _\bG_\be_\bo_\bm_\be_\bt_\br_\by_\bI_\bn_\bf_\bo_\b<_\bd_\bi_\bm_\b>_\b:_\b:_\bl_\bi_\bn_\be_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl +\n 1218 _\bG_\be_\bo_\bm_\be_\bt_\br_\by_\bI_\bn_\bf_\bo_\b<_\bd_\bi_\bm_\b>_\b:_\b:_\bf_\ba_\bc_\be_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl;\n-1219 _\bA_\bs_\bs_\be_\br_\bt(points_weights.first.size() == np, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-1220 _\bA_\bs_\bs_\be_\br_\bt(points_weights.second.size() == np, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-1221 auto *sp3 = reinterpret_cast<\n-1222 std::array, _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl()>\n-1223 *>(&points_weights.first);\n+1219 _\bA_\bs_\bs_\be_\br_\bt(_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.first.size() == _\bn_\bp, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+1220 _\bA_\bs_\bs_\be_\br_\bt(_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.size() == _\bn_\bp, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+1221 auto *_\bs_\bp_\b3 = reinterpret_cast<\n+1222 std::array, _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl<_\bd_\be_\bc_\bl_\bt_\by_\bp_\be(hex)>()>\n+1223 *>(&_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.first);\n 1224\n-1225 unsigned int j = 0;\n+1225 unsigned int _\bj = 0;\n 1226\n 1227 // note that the exact weights are chosen such as to minimize the\n 1228 // distortion of the eight new hexes from the optimal shape through\n 1229 // transfinite interpolation from the faces and vertices, see\n 1230 // TransfiniteInterpolationManifold for a deeper explanation of the\n 1231 // mechanisms\n-1232 if (with_interpolation)\n+1232 if (_\bw_\bi_\bt_\bh_\b__\bi_\bn_\bt_\be_\br_\bp_\bo_\bl_\ba_\bt_\bi_\bo_\bn)\n 1233 {\n 1234 for (unsigned int i = 0;\n-1235 i < GeometryInfo::vertices_per_cell;\n-1236 ++i, ++j)\n+1235 _\bi_\b _\b<_\b _\bG_\be_\bo_\bm_\be_\bt_\br_\by_\bI_\bn_\bf_\bo_\b<_\bd_\bi_\bm_\b>_\b:_\b:_\bv_\be_\br_\bt_\bi_\bc_\be_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl;\n+1236 ++i, ++_\bj)\n 1237 {\n-1238 (*sp3)[j] = hex->vertex(i);\n-1239 points_weights.second[j] = 1.0 / 8.0;\n+1238 (*sp3)[_\bj] = hex->vertex(i);\n+1239 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second[_\bj] = 1.0 / 8.0;\n 1240 }\n-1241 for (unsigned int i = 0; i < GeometryInfo::lines_per_cell;\n-1242 ++i, ++j)\n+1241 for (unsigned int i = 0; _\bi_\b _\b<_\b _\bG_\be_\bo_\bm_\be_\bt_\br_\by_\bI_\bn_\bf_\bo_\b<_\bd_\bi_\bm_\b>_\b:_\b:_\bl_\bi_\bn_\be_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl;\n+1242 ++i, ++_\bj)\n 1243 {\n-1244 (*sp3)[j] =\n+1244 (*sp3)[_\bj] =\n 1245 (hex->line(i)->has_children() ?\n 1246 hex->line(i)->child(0)->vertex(1) :\n 1247 hex->line(i)->get_manifold().get_new_point_on_line(\n 1248 hex->line(i)));\n-1249 points_weights.second[j] = -1.0 / 4.0;\n+1249 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second[_\bj] = -1.0 / 4.0;\n 1250 }\n-1251 for (unsigned int i = 0; i < GeometryInfo::faces_per_cell;\n-1252 ++i, ++j)\n+1251 for (unsigned int i = 0; _\bi_\b _\b<_\b _\bG_\be_\bo_\bm_\be_\bt_\br_\by_\bI_\bn_\bf_\bo_\b<_\bd_\bi_\bm_\b>_\b:_\b:_\bf_\ba_\bc_\be_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl;\n+1252 ++i, ++_\bj)\n 1253 {\n-1254 (*sp3)[j] =\n+1254 (*sp3)[_\bj] =\n 1255 (hex->quad(i)->has_children() ?\n 1256 hex->quad(i)->isotropic_child(0)->vertex(3) :\n 1257 hex->quad(i)->get_manifold().get_new_point_on_quad(\n 1258 hex->quad(i)));\n-1259 points_weights.second[j] = 1.0 / 2.0;\n+1259 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second[_\bj] = 1.0 / 2.0;\n 1260 }\n 1261 }\n 1262 else\n 1263 // Overwrite the weights with 1/np if we don't want to use\n 1264 // interpolation.\n-1265 std::fill(points_weights.second.begin(),\n-1266 points_weights.second.end(),\n-1267 1.0 / np);\n+1265 std::fill(_\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.begin(),\n+1266 _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs.second.end(),\n+1267 1.0 / _\bn_\bp);\n 1268 }\n 1269 break;\n 1270 default:\n 1271 _\bD_\bE_\bA_\bL_\b__\bI_\bI_\b__\bA_\bS_\bS_\bE_\bR_\bT_\b__\bU_\bN_\bR_\bE_\bA_\bC_\bH_\bA_\bB_\bL_\bE();\n 1272 break;\n 1273 }\n-1274 return points_weights;\n+1274 return _\bp_\bo_\bi_\bn_\bt_\bs_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs;\n 1275 }\n 1276} // namespace Manifolds\n 1277\n 1278#endif // DOXYGEN\n 1279\n 1280_\bD_\bE_\bA_\bL_\b__\bI_\bI_\b__\bN_\bA_\bM_\bE_\bS_\bP_\bA_\bC_\bE_\b__\bC_\bL_\bO_\bS_\bE\n 1281\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/local__results_8h_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/local__results_8h_source.html", "unified_diff": "@@ -181,31 +181,31 @@\n
    136
    \n
    140 const BlockVector<number> &
    \n
    \n
    141 vector(const unsigned int i) const;
    \n
    142
    \n \n
    \n-
    150 matrix(const unsigned int i, const bool external = false);
    \n+
    150 matrix(const unsigned int i, const bool external = false);
    \n
    151
    \n \n
    \n-
    159 matrix(const unsigned int i, const bool external = false) const;
    \n+
    159 matrix(const unsigned int i, const bool external = false) const;
    \n
    160
    \n \n
    \n \n
    168
    \n
    172 number &
    \n
    \n-
    173 quadrature_value(const unsigned int k, const unsigned int i);
    \n+
    173 quadrature_value(const unsigned int k, const unsigned int i);
    \n
    174
    \n
    178 number
    \n
    \n-
    179 quadrature_value(const unsigned int k, const unsigned int i) const;
    \n+
    179 quadrature_value(const unsigned int k, const unsigned int i) const;
    \n
    180
    \n
    186 void
    \n
    \n
    187 initialize_numbers(const unsigned int n);
    \n
    188
    \n
    194 void
    \n
    \n@@ -225,23 +225,23 @@\n
    227 void
    \n
    \n \n
    229 bool both);
    \n
    230
    \n
    235 void
    \n
    \n-
    236 initialize_quadrature(const unsigned int np, const unsigned int nv);
    \n+
    236 initialize_quadrature(const unsigned int np, const unsigned int nv);
    \n
    237
    \n
    243 void
    \n-\n+
    244 reinit(const BlockIndices &local_sizes);
    \n
    245
    \n
    246 template <typename StreamType>
    \n
    247 void
    \n
    \n-\n+
    248 print_debug(StreamType &os) const;
    \n
    249
    \n
    253 std::size_t
    \n
    254 memory_consumption() const;
    \n
    255
    \n
    256 private:
    \n
    260 std::vector<number> J;
    \n
    261
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -77,27 +77,27 @@\n 134 _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\b<_\bn_\bu_\bm_\bb_\be_\br_\b> &\n _\b1_\b3_\b5 _\bv_\be_\bc_\bt_\bo_\br(const unsigned int i);\n 136\n 140 const _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\b<_\bn_\bu_\bm_\bb_\be_\br_\b> &\n _\b1_\b4_\b1 _\bv_\be_\bc_\bt_\bo_\br(const unsigned int i) const;\n 142\n 149 _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\b<_\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx_\b<_\bn_\bu_\bm_\bb_\be_\br_\b>> &\n-_\b1_\b5_\b0 _\bm_\ba_\bt_\br_\bi_\bx(const unsigned int i, const bool _\be_\bx_\bt_\be_\br_\bn_\ba_\bl = false);\n+_\b1_\b5_\b0 _\bm_\ba_\bt_\br_\bi_\bx(const unsigned int i, const bool external = false);\n 151\n 158 const _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\b<_\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx_\b<_\bn_\bu_\bm_\bb_\be_\br_\b>> &\n-_\b1_\b5_\b9 _\bm_\ba_\bt_\br_\bi_\bx(const unsigned int i, const bool _\be_\bx_\bt_\be_\br_\bn_\ba_\bl = false) const;\n+_\b1_\b5_\b9 _\bm_\ba_\bt_\br_\bi_\bx(const unsigned int i, const bool external = false) const;\n 160\n 166 _\bT_\ba_\bb_\bl_\be_\b<_\b2_\b,_\b _\bn_\bu_\bm_\bb_\be_\br_\b> &\n _\b1_\b6_\b7 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be_\bs();\n 168\n 172 number &\n-_\b1_\b7_\b3 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be(const unsigned int _\bk, const unsigned int i);\n+_\b1_\b7_\b3 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be(const unsigned int k, const unsigned int i);\n 174\n 178 number\n-_\b1_\b7_\b9 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be(const unsigned int _\bk, const unsigned int i) const;\n+_\b1_\b7_\b9 _\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be_\b__\bv_\ba_\bl_\bu_\be(const unsigned int k, const unsigned int i) const;\n 180\n 186 void\n _\b1_\b8_\b7 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bn_\bu_\bm_\bb_\be_\br_\bs(const unsigned int n);\n 188\n 194 void\n _\b1_\b9_\b5 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bv_\be_\bc_\bt_\bo_\br_\bs(const unsigned int n);\n 196\n@@ -111,22 +111,22 @@\n 218\n 226 template \n 227 void\n _\b2_\b2_\b8 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs(const _\bM_\bG_\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\b<_\bM_\ba_\bt_\br_\bi_\bx_\bT_\by_\bp_\be_\b> &matrices,\n 229 bool both);\n 230\n 235 void\n-_\b2_\b3_\b6 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be(const unsigned int _\bn_\bp, const unsigned int _\bn_\bv);\n+_\b2_\b3_\b6 _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\be_\b__\bq_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be(const unsigned int np, const unsigned int nv);\n 237\n 243 void\n-244 _\br_\be_\bi_\bn_\bi_\bt(const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs &_\bl_\bo_\bc_\ba_\bl_\b__\bs_\bi_\bz_\be_\bs);\n+244 _\br_\be_\bi_\bn_\bi_\bt(const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs &local_sizes);\n 245\n 246 template \n 247 void\n-_\b2_\b4_\b8 _\bp_\br_\bi_\bn_\bt_\b__\bd_\be_\bb_\bu_\bg(_\bS_\bt_\br_\be_\ba_\bm_\bT_\by_\bp_\be &os) const;\n+_\b2_\b4_\b8 _\bp_\br_\bi_\bn_\bt_\b__\bd_\be_\bb_\bu_\bg(StreamType &os) const;\n 249\n 253 std::size_t\n 254 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn() const;\n 255\n 256 private:\n _\b2_\b6_\b0 std::vector _\bJ;\n 261\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/meshworker_2dof__info_8h_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/meshworker_2dof__info_8h_source.html", "unified_diff": "@@ -164,38 +164,38 @@\n
    110
    \n \n
    115
    \n
    120 DoFInfo(const DoFHandler<dim, spacedim> &dof_handler);
    \n
    121
    \n
    125 template <class DHCellIterator>
    \n
    126 void
    \n-
    127 reinit(const DHCellIterator &c);
    \n+
    127 reinit(const DHCellIterator &c);
    \n
    128
    \n
    132 template <class DHCellIterator, class DHFaceIterator>
    \n
    133 void
    \n-
    134 reinit(const DHCellIterator &c,
    \n-
    135 const DHFaceIterator &f,
    \n-
    136 const unsigned int face_no);
    \n+
    134 reinit(const DHCellIterator &c,
    \n+
    135 const DHFaceIterator &f,
    \n+
    136 const unsigned int face_no);
    \n
    137
    \n
    141 template <class DHCellIterator, class DHFaceIterator>
    \n
    142 void
    \n-
    143 reinit(const DHCellIterator &c,
    \n-
    144 const DHFaceIterator &f,
    \n-
    145 const unsigned int face_no,
    \n-
    146 const unsigned int subface_no);
    \n+
    143 reinit(const DHCellIterator &c,
    \n+
    144 const DHFaceIterator &f,
    \n+
    145 const unsigned int face_no,
    \n+
    146 const unsigned int subface_no);
    \n
    147
    \n
    152 template <class DHFaceIterator>
    \n
    153 void
    \n-
    154 set_face(const DHFaceIterator &f, const unsigned int face_no);
    \n+
    154 set_face(const DHFaceIterator &f, const unsigned int face_no);
    \n
    155
    \n
    160 template <class DHFaceIterator>
    \n
    161 void
    \n-\n-
    163 const unsigned int face_no,
    \n-
    164 const unsigned int subface_no);
    \n+
    162 set_subface(const DHFaceIterator &f,
    \n+
    163 const unsigned int face_no,
    \n+
    164 const unsigned int subface_no);
    \n
    165
    \n
    166 const BlockIndices &
    \n
    167 local_indices() const;
    \n
    168
    \n
    169
    \n \n
    172
    \n@@ -205,15 +205,15 @@\n
    184 DoFInfo();
    \n
    185
    \n
    187 void
    \n \n
    189
    \n
    191 template <class DHCellIterator>
    \n
    192 void
    \n-
    193 get_indices(const DHCellIterator &c);
    \n+
    193 get_indices(const DHCellIterator &c);
    \n
    194
    \n
    196 std::vector<types::global_dof_index> indices_org;
    \n
    197
    \n \n
    204
    \n
    205 friend class DoFInfoBox<dim, DoFInfo<dim, spacedim, number>>;
    \n
    206 };
    \n@@ -545,15 +545,14 @@\n
    Triangulation< dim, spacedim >::face_iterator face
    The current face.
    Definition dof_info.h:81
    \n
    std::vector< std::vector< types::global_dof_index > > indices_by_block
    Definition dof_info.h:109
    \n
    SmartPointer< const BlockInfo, DoFInfo< dim, spacedim > > block_info
    The block structure of the system.
    Definition dof_info.h:171
    \n
    unsigned int face_number
    Definition dof_info.h:89
    \n
    void reinit(const DHCellIterator &c)
    Definition dof_info.h:331
    \n
    Triangulation< dim, spacedim >::cell_iterator cell
    The current cell.
    Definition dof_info.h:78
    \n \n-
    BlockVector< number > & vector(const unsigned int i)
    \n
    void reinit(const BlockIndices &local_sizes)
    \n \n \n \n
    #define DEAL_II_NAMESPACE_OPEN
    Definition config.h:501
    \n
    #define DEAL_II_NAMESPACE_CLOSE
    Definition config.h:502
    \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -70,38 +70,38 @@\n 110\n _\b1_\b1_\b4 _\bD_\bo_\bF_\bI_\bn_\bf_\bo(const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bf_\bo &_\bb_\bl_\bo_\bc_\bk_\b__\bi_\bn_\bf_\bo);\n 115\n 120 _\bD_\bo_\bF_\bI_\bn_\bf_\bo(const _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br_\b<_\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b> &dof_handler);\n 121\n 125 template \n 126 void\n-127 _\br_\be_\bi_\bn_\bi_\bt(const _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &c);\n+127 _\br_\be_\bi_\bn_\bi_\bt(const DHCellIterator &c);\n 128\n 132 template \n 133 void\n-134 _\br_\be_\bi_\bn_\bi_\bt(const _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &c,\n-135 const _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &f,\n-136 const unsigned int _\bf_\ba_\bc_\be_\b__\bn_\bo);\n+134 _\br_\be_\bi_\bn_\bi_\bt(const DHCellIterator &c,\n+135 const DHFaceIterator &f,\n+136 const unsigned int face_no);\n 137\n 141 template \n 142 void\n-143 _\br_\be_\bi_\bn_\bi_\bt(const _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &c,\n-144 const _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &f,\n-145 const unsigned int _\bf_\ba_\bc_\be_\b__\bn_\bo,\n-146 const unsigned int _\bs_\bu_\bb_\bf_\ba_\bc_\be_\b__\bn_\bo);\n+143 _\br_\be_\bi_\bn_\bi_\bt(const DHCellIterator &c,\n+144 const DHFaceIterator &f,\n+145 const unsigned int face_no,\n+146 const unsigned int subface_no);\n 147\n 152 template \n 153 void\n-154 _\bs_\be_\bt_\b__\bf_\ba_\bc_\be(const _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &f, const unsigned int _\bf_\ba_\bc_\be_\b__\bn_\bo);\n+154 _\bs_\be_\bt_\b__\bf_\ba_\bc_\be(const DHFaceIterator &f, const unsigned int face_no);\n 155\n 160 template \n 161 void\n-162 _\bs_\be_\bt_\b__\bs_\bu_\bb_\bf_\ba_\bc_\be(const _\bD_\bH_\bF_\ba_\bc_\be_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &f,\n-163 const unsigned int _\bf_\ba_\bc_\be_\b__\bn_\bo,\n-164 const unsigned int _\bs_\bu_\bb_\bf_\ba_\bc_\be_\b__\bn_\bo);\n+162 _\bs_\be_\bt_\b__\bs_\bu_\bb_\bf_\ba_\bc_\be(const DHFaceIterator &f,\n+163 const unsigned int face_no,\n+164 const unsigned int subface_no);\n 165\n 166 const _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs &\n 167 _\bl_\bo_\bc_\ba_\bl_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs() const;\n 168\n 169\n _\b1_\b7_\b1 _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br_\b<_\bc_\bo_\bn_\bs_\bt_\b _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bf_\bo_\b,_\b _\bD_\bo_\bF_\bI_\bn_\bf_\bo_\b<_\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b>> _\bb_\bl_\bo_\bc_\bk_\b__\bi_\bn_\bf_\bo;\n 172\n@@ -111,15 +111,15 @@\n 184 _\bD_\bo_\bF_\bI_\bn_\bf_\bo();\n 185\n 187 void\n _\b1_\b8_\b8 _\bs_\be_\bt_\b__\bb_\bl_\bo_\bc_\bk_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs();\n 189\n 191 template \n 192 void\n-193 _\bg_\be_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(const _\bD_\bH_\bC_\be_\bl_\bl_\bI_\bt_\be_\br_\ba_\bt_\bo_\br &c);\n+193 _\bg_\be_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(const DHCellIterator &c);\n 194\n _\b1_\b9_\b6 std::vector _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bo_\br_\bg;\n 197\n _\b2_\b0_\b3 _\bB_\bl_\bo_\bc_\bk_\bI_\bn_\bd_\bi_\bc_\be_\bs _\ba_\bu_\bx_\b__\bl_\bo_\bc_\ba_\bl_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs;\n 204\n 205 friend class _\bD_\bo_\bF_\bI_\bn_\bf_\bo_\bB_\bo_\bx>;\n 206 };\n@@ -497,17 +497,14 @@\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh_\b:_\b3_\b3_\b1\n _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bD_\bo_\bF_\bI_\bn_\bf_\bo_\b:_\b:_\bc_\be_\bl_\bl\n Triangulation< dim, spacedim >::cell_iterator cell\n The current cell.\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bd_\bo_\bf_\b__\bi_\bn_\bf_\bo_\b._\bh_\b:_\b7_\b8\n _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh_\b:_\b8_\b2\n-_\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs_\b:_\b:_\bv_\be_\bc_\bt_\bo_\br\n-BlockVector< number > & vector(const unsigned int i)\n-D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bl_\bo_\bc_\ba_\bl_\b__\br_\be_\bs_\bu_\bl_\bt_\bs_\b._\bh_\b:_\b4_\b4_\b0\n _\bM_\be_\bs_\bh_\bW_\bo_\br_\bk_\be_\br_\b:_\b:_\bL_\bo_\bc_\ba_\bl_\bR_\be_\bs_\bu_\bl_\bt_\bs_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt\n void reinit(const BlockIndices &local_sizes)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bm_\be_\bs_\bh_\b__\bw_\bo_\br_\bk_\be_\br_\b._\bc_\bc_\b:_\b2_\b7\n _\bS_\bm_\ba_\br_\bt_\bP_\bo_\bi_\bn_\bt_\be_\br\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bs_\bm_\ba_\br_\bt_\bp_\bo_\bi_\bn_\bt_\be_\br_\b._\bh_\b:_\b9_\b3\n _\bT_\br_\bi_\ba_\bI_\bt_\be_\br_\ba_\bt_\bo_\br\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bt_\br_\bi_\ba_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br_\b._\bh_\b:_\b5_\b7_\b4\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceDoFTools.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceDoFTools.html", "unified_diff": "@@ -1390,15 +1390,15 @@\n
    )
    \n
    \n

    Extract the set of global DoF indices that are active on the current DoFHandler. For regular DoFHandlers, these are all DoF indices, but for DoFHandler objects built on parallel::distributed::Triangulation this set is a superset of DoFHandler::locally_owned_dofs() and contains all DoF indices that live on all locally owned cells (including on the interface to ghost cells). However, it does not contain the DoF indices that are exclusively defined on ghost or artificial cells (see the glossary).

    \n

    The degrees of freedom identified by this function equal those obtained from the dof_indices_with_subdomain_association() function when called with the locally owned subdomain id.

    \n-
    Deprecated:
    Use the previous function instead.
    \n+
    Deprecated:
    Use the previous function instead.
    \n \n

    Definition at line 1105 of file dof_tools.cc.

    \n \n
    \n
    \n \n

    ◆ extract_locally_active_level_dofs() [1/2]

    \n@@ -1463,15 +1463,15 @@\n
    )
    \n
    \n

    Same function as above but for a certain (multigrid-)level. This function returns all DoF indices that live on all locally owned cells (including on the interface to ghost cells) on the given level.

    \n-
    Deprecated:
    Use the previous function instead.
    \n+
    Deprecated:
    Use the previous function instead.
    \n \n

    Definition at line 1152 of file dof_tools.cc.

    \n \n
    \n \n \n

    ◆ extract_locally_relevant_dofs() [1/2]

    \n@@ -1520,15 +1520,15 @@\n
    )
    \n
    \n

    Extract the set of global DoF indices that are active on the current DoFHandler. For regular DoFHandlers, these are all DoF indices, but for DoFHandler objects built on parallel::distributed::Triangulation this set is the union of DoFHandler::locally_owned_dofs() and the DoF indices on all ghost cells. In essence, it is the DoF indices on all cells that are not artificial (see the glossary).

    \n-
    Deprecated:
    Use the previous function instead.
    \n+
    Deprecated:
    Use the previous function instead.
    \n \n

    Definition at line 1202 of file dof_tools.cc.

    \n \n
    \n \n \n

    ◆ locally_owned_dofs_per_component()

    \n@@ -1674,15 +1674,15 @@\n
    )
    \n
    \n

    Same as extract_locally_relevant_dofs() but for multigrid DoFs for the given level.

    \n-
    Deprecated:
    Use the previous function instead.
    \n+
    Deprecated:
    Use the previous function instead.
    \n \n

    Definition at line 1258 of file dof_tools.cc.

    \n \n
    \n \n \n

    ◆ get_subdomain_association()

    \n@@ -2311,15 +2311,15 @@\n
    \n
    \n

    For each active cell of a DoFHandler, extract the active finite element index and fill the vector given as second argument. This vector is assumed to have as many entries as there are active cells.

    \n

    For DoFHandler objects without hp-capabilities given as first argument, the returned vector will consist of only zeros, indicating that all cells use the same finite element. In hp-mode, the values may be different, though.

    \n

    As we do not know the active FE index on artificial cells, we set them to the invalid value numbers::invalid_fe_index.

    \n-
    Deprecated:
    Use DoFHandler::get_active_fe_indices() that returns the result vector.
    \n+
    Deprecated:
    Use DoFHandler::get_active_fe_indices() that returns the result vector.
    \n \n

    Definition at line 1499 of file dof_tools.cc.

    \n \n
    \n \n \n

    ◆ count_dofs_on_patch()

    \n@@ -2652,15 +2652,15 @@\n
    )
    \n
    \n-

    A version of the function of same name that returns the map via its third argument. This function is deprecated.

    Deprecated:
    Use the function that returns the std::map instead.
    \n+

    A version of the function of same name that returns the map via its third argument. This function is deprecated.

    Deprecated:
    Use the function that returns the std::map instead.
    \n \n

    Definition at line 2430 of file dof_tools.cc.

    \n \n
    \n
    \n \n

    ◆ map_dofs_to_support_points() [6/6]

    \n@@ -2697,15 +2697,15 @@\n
    )
    \n
    \n-

    A version of the function of same name that returns the map via its third argument. This function is deprecated.

    Deprecated:
    Use the function that returns the std::map instead.
    \n+

    A version of the function of same name that returns the map via its third argument. This function is deprecated.

    Deprecated:
    Use the function that returns the std::map instead.
    \n \n

    Definition at line 2451 of file dof_tools.cc.

    \n \n
    \n
    \n \n

    ◆ map_support_points_to_dofs()

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceFETools_1_1Compositing.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceFETools_1_1Compositing.html", "unified_diff": "@@ -310,15 +310,15 @@\n
    )
    \n
    \n

    Same as above but for a specific number of sub-elements.

    \n-
    Deprecated:
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n+
    Deprecated:
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n \n
    \n \n \n

    ◆ compute_restriction_is_additive_flags() [1/3]

    \n \n
    \n@@ -444,15 +444,15 @@\n
    )
    \n
    \n

    Take a FiniteElement object and return a boolean vector describing the restriction_is_additive_flags (see the documentation of the FiniteElement class) for each shape function of the mixed element consisting of N1, N2, ... copies of the sub-elements fe1, fe2, ...

    \n

    The \"restriction is additive\" flags are properties of individual shape functions that do not depend on whether the composed element uses the tensor product or combination strategy outlined in the documentation of the FETools::Composition namespace. Consequently, this function does not have a do_tensor_product argument.

    \n-
    Deprecated:
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n+
    Deprecated:
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n \n
    \n \n \n

    ◆ compute_nonzero_components() [1/3]

    \n \n
    \n@@ -592,15 +592,15 @@\n
    \n
    \n

    Compute the non-zero vector components of a composed finite element. This function is similar to the previous one, except that the pointers indicate the elements to be composed, and the arguments N1, N2, ... the multiplicities. Null pointers indicate that an argument is to be skipped.

    \n

    If do_tensor_product is true, the number of components (and thus the size of the ComponentMask objects) is the sum over the product of the number of components in each of the finite elements times the corresponding multiplicity. Otherwise the number of components is taken from the first finite element with non-zero multiplicity, and all other elements with non-zero multiplicities need to have the same number of vector components.

    \n

    See the documentation of namespace FETools::Compositing for more information about the do_tensor_product argument.

    \n-
    Deprecated:
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n+
    Deprecated:
    Use the versions of this function that take a vector of elements or an initializer list as arguments.
    \n \n
    \n \n \n

    ◆ build_cell_tables()

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceGridTools.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceGridTools.html", "unified_diff": "@@ -747,15 +747,15 @@\n
    [in]angleAngle in radians to rotate the Triangulation by.
    [in]axisIndex of the coordinate axis to rotate around, keeping that coordinate fixed (0=x axis, 1=y axis, 2=z axis).
    [in,out]triangulationThe Triangulation object to rotate.
    \n \n \n
    Note
    Implemented for dim=1, 2, and 3.
    \n-
    Deprecated:
    Use the alternative with the unit vector instead.
    \n+
    Deprecated:
    Use the alternative with the unit vector instead.
    \n \n

    Definition at line 241 of file grid_tools.cc.

    \n \n \n \n \n

    ◆ laplace_transform() [1/2]

    \n@@ -2883,15 +2883,15 @@\n
    \n
    \n

    Given a triangulation and a list of cells whose children have become distorted as a result of mesh refinement, try to fix these cells up by moving the center node around.

    \n

    The function returns a list of cells with distorted children that couldn't be fixed up for whatever reason. The returned list is therefore a subset of the input argument.

    \n

    For a definition of the concept of distorted cells, see the glossary entry. The first argument passed to the current function is typically the exception thrown by the Triangulation::execute_coarsening_and_refinement function.

    \n-
    Deprecated:
    This function predates deal.II's use of manifolds and use of cell-local transfinite interpolation to place new points and is no longer necessary. See Manifolds::get_default_points_and_weights() for more information.
    \n+
    Deprecated:
    This function predates deal.II's use of manifolds and use of cell-local transfinite interpolation to place new points and is no longer necessary. See Manifolds::get_default_points_and_weights() for more information.
    \n \n

    Definition at line 2759 of file grid_tools.cc.

    \n \n
    \n \n \n

    ◆ get_patch_around_cell()

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceManifolds.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceManifolds.html", "unified_diff": "@@ -99,16 +99,16 @@\n
    \n \n \n \n \n \n-\n-\n+\n+\n \n

    \n Functions

    template<typename MeshIteratorType >
    constexpr std::size_t n_default_points_per_cell ()
     
    template<typename MeshIteratorType >
    std::pair< std::array< Point< MeshIteratorType::AccessorType::space_dimension >, n_default_points_per_cell< MeshIteratorType >()>, std::array< double, n_default_points_per_cell< MeshIteratorType >()> > get_default_points_and_weights (const MeshIteratorType &iterator, const bool with_interpolation=false)
    template<typename MeshIteratorType >
    std::pair< std::array< Point< MeshIteratorType::AccessorType::space_dimension >, n_default_points_per_cell< MeshIteratorType >()>, std::array< double, n_default_points_per_cell< MeshIteratorType >()> > get_default_points_and_weights (const MeshIteratorType &iterator, const bool with_interpolation=false)
     
    \n

    Detailed Description

    \n

    We collect here some helper functions used in the Manifold<dim,spacedim> classes.

    \n

    Function Documentation

    \n \n

    ◆ n_default_points_per_cell()

    \n@@ -142,27 +142,27 @@\n
    \n \n

    ◆ get_default_points_and_weights()

    \n \n
    \n
    \n
    \n-template<typename MeshIteratorType >
    \n+template<typename MeshIteratorType >
    \n \n \n- \n+ \n \n- \n+ \n \n \n \n \n \n- \n- \n+ \n+ \n \n \n \n \n \n \n
    std::pair< std::array< Point< MeshIteratorType::AccessorType::space_dimension >, n_default_points_per_cell< MeshIteratorType >()>, std::array< double, n_default_points_per_cell< MeshIteratorType >()> > Manifolds::get_default_points_and_weights std::pair< std::array< Point< MeshIteratorType::AccessorType::space_dimension >, n_default_points_per_cell< MeshIteratorType >()>, std::array< double, n_default_points_per_cell< MeshIteratorType >()> > Manifolds::get_default_points_and_weights (const MeshIteratorType & const MeshIteratorTypeiterator,
    const bool with_interpolation = false const bool with_interpolation = false 
    )
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -8,49 +8,49 @@\n No Matches\n _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\bs\n Manifolds Namespace Reference\n F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n template\n constexpr std::size_t\u00a0 _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl ()\n \u00a0\n-template\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be >\n std::pair< std::array< _\bP_\bo_\bi_\bn_\bt<\n MeshIteratorType::AccessorType::\n space_dimension >,\n _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl<\n-MeshIteratorType >()>, std::array< _\bg_\be_\bt_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\ba_\bn_\bd_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs (const\n-double, _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl< MeshIteratorType &iterator, const _\bb_\bo_\bo_\bl\n- MeshIteratorType >()> >\u00a0 with_interpolation=false)\n+_\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be >()>, std::array< _\bg_\be_\bt_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\ba_\bn_\bd_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs (_\bc_\bo_\bn_\bs_\bt\n+double, _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl< _\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be &iterator, _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\n+ _\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be >()> >\u00a0 _\bw_\bi_\bt_\bh_\b__\bi_\bn_\bt_\be_\br_\bp_\bo_\bl_\ba_\bt_\bi_\bo_\bn=_\bf_\ba_\bl_\bs_\be)\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n We collect here some helper functions used in the _\bM_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\b<_\bd_\bi_\bm_\b,_\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b>\n classes.\n *\b**\b**\b**\b**\b* F\bFu\bun\bnc\bct\bti\bio\bon\bn D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0n\bn_\b_d\bde\bef\bfa\bau\bul\blt\bt_\b_p\bpo\boi\bin\bnt\bts\bs_\b_p\bpe\ber\br_\b_c\bce\bel\bll\bl(\b()\b) *\b**\b**\b**\b**\b*\n template\n constexpr std::size_t Manifolds:: ( ) inlineconstexpr\n n_default_points_per_cell\n A constexpr helper function that returns the number of default points for the\n structure type pointed to by the given MeshIteratorType. See the documentation\n of _\bM_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\bs_\b:_\b:_\bg_\be_\bt_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\ba_\bn_\bd_\b__\bw_\be_\bi_\bg_\bh_\bt_\bs_\b(_\b) for more information.\n Definition at line _\b5_\b3 of file _\bm_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\b._\bh.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0g\bge\bet\bt_\b_d\bde\bef\bfa\bau\bul\blt\bt_\b_p\bpo\boi\bin\bnt\bts\bs_\b_a\ban\bnd\bd_\b_w\bwe\bei\big\bgh\bht\bts\bs(\b()\b) *\b**\b**\b**\b**\b*\n-template\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be >\n std::pair< std::array< _\bP_\bo_\bi_\bn_\bt<\n MeshIteratorType::\n AccessorType::space_dimension\n >, _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl<\n-MeshIteratorType >()>, std:: ( const MeshIteratorType &\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br,\n+_\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be >()>, std:: ( _\bc_\bo_\bn_\bs_\bt _\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be &\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br,\n array< double,\n _\bn_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bp_\bo_\bi_\bn_\bt_\bs_\b__\bp_\be_\br_\b__\bc_\be_\bl_\bl<\n-MeshIteratorType >()> >\n+_\bM_\be_\bs_\bh_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\bT_\by_\bp_\be >()> >\n Manifolds::\n get_default_points_and_weights\n- const _\bb_\bo_\bo_\bl\u00a0 w\bwi\bit\bth\bh_\b_i\bin\bnt\bte\ber\brp\bpo\bol\bla\bat\bti\bio\bon\bn =\n- false\u00a0\n+ _\bc_\bo_\bn_\bs_\bt _\bb_\bo_\bo_\bl\u00a0 w\bwi\bit\bth\bh_\b_i\bin\bnt\bte\ber\brp\bpo\bol\bla\bat\bti\bio\bon\bn =\n+ _\bf_\ba_\bl_\bs_\be\u00a0\n )\n Given a general mesh iterator, construct arrays of quadrature points and\n weights that contain the following points:\n * If the iterator points to a line, then the quadrature points are the two\n vertices of the line. This results in a point vector with two points.\n * If the iterator points to a quad, then the quadrature points are the\n vertices and line mid-points. This results in a point vector with eight\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMatrixCreator.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceMatrixCreator.html", "unified_diff": "@@ -743,15 +743,15 @@\n

    If the library is configured to use multithreading, this function works in parallel.

    \n
      \n
    • weight: an optional weight for the computation of the mass matrix. If no weight is given, it is set to one. In case you want to specify component_mapping and use the default argument for the coefficient you have to specify the (unused) coefficient argument as (const Function <spacedim,number> *const)nullptr.
    • \n
    \n
      \n
    • component_mapping: if the components in boundary_functions and dof do not coincide, this vector allows them to be remapped. If the vector is not empty, it has to have one entry for each component in dof. This entry is the component number in boundary_functions that should be used for this component in dof. By default, no remapping is applied.
    • \n
    \n-
    Todo:
    This function does not work for finite elements with cell-dependent shape functions.
    \n+
    Todo:
    This function does not work for finite elements with cell-dependent shape functions.
    \n \n
    \n \n \n

    ◆ create_boundary_mass_matrix() [2/4]

    \n \n
    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceSparsityTools.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/namespaceSparsityTools.html", "unified_diff": "@@ -571,15 +571,15 @@\n
    )
    \n
    \n-
    Deprecated:
    Use the distribute_sparsity_pattern() with a single index set for the present MPI process only.
    \n+
    Deprecated:
    Use the distribute_sparsity_pattern() with a single index set for the present MPI process only.
    \n \n

    Definition at line 1092 of file sparsity_tools.cc.

    \n \n
    \n \n \n

    ◆ gather_sparsity_pattern()

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2solution__transfer_8cc.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2solution__transfer_8cc.html", "unified_diff": "@@ -131,14 +131,16 @@\n
    namespace  internal
     
    \n \n \n \n+\n+\n

    \n Macros

    #define SPLIT_INSTANTIATIONS_COUNT   4
     
    #define SPLIT_INSTANTIATIONS_INDEX   0
     
    \n \n \n \n \n \n@@ -161,14 +163,30 @@\n

    \n Functions

    template<int dim, int spacedim>
    void internal::extract_interpolation_matrices (const DoFHandler< dim, spacedim > &dof, ::Table< 2, FullMatrix< double > > &matrices)
     
    template<int dim, int spacedim>
    \n
    \n \n

    Definition at line 639 of file solution_transfer.cc.

    \n \n
    \n \n+\n+

    ◆ SPLIT_INSTANTIATIONS_INDEX

    \n+\n+
    \n+
    \n+ \n+ \n+ \n+ \n+
    #define SPLIT_INSTANTIATIONS_INDEX   0
    \n+
    \n+\n+

    Definition at line 641 of file solution_transfer.cc.

    \n+\n+
    \n+
    \n \n \n \n
    \n Generated by \"doxygen\"/ 1.9.8\n
    \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -33,14 +33,16 @@\n _\bG_\bo_\b _\bt_\bo_\b _\bt_\bh_\be_\b _\bs_\bo_\bu_\br_\bc_\be_\b _\bc_\bo_\bd_\be_\b _\bo_\bf_\b _\bt_\bh_\bi_\bs_\b _\bf_\bi_\bl_\be_\b.\n N\bNa\bam\bme\bes\bsp\bpa\bac\bce\bes\bs\n namespace \u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl\n \u00a0\n M\bMa\bac\bcr\bro\bos\bs\n #define\u00a0 _\bS_\bP_\bL_\bI_\bT_\b__\bI_\bN_\bS_\bT_\bA_\bN_\bT_\bI_\bA_\bT_\bI_\bO_\bN_\bS_\b__\bC_\bO_\bU_\bN_\bT\u00a0\u00a0\u00a04\n \u00a0\n+#define\u00a0 _\bS_\bP_\bL_\bI_\bT_\b__\bI_\bN_\bS_\bT_\bA_\bN_\bT_\bI_\bA_\bT_\bI_\bO_\bN_\bS_\b__\bI_\bN_\bD_\bE_\bX\u00a0\u00a0\u00a00\n+\u00a0\n F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim>\n void\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bi_\bn_\bt_\be_\br_\bp_\bo_\bl_\ba_\bt_\bi_\bo_\bn_\b__\bm_\ba_\bt_\br_\bi_\bc_\be_\bs (const _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br< dim, spacedim\n > &dof, _\b:_\b:_\bT_\ba_\bb_\bl_\be< 2, _\bF_\bu_\bl_\bl_\bM_\ba_\bt_\br_\bi_\bx< double > > &matrices)\n \u00a0\n template<_\bi_\bn_\bt dim, _\bi_\bn_\bt spacedim>\n void\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\br_\be_\bs_\bt_\br_\bi_\bc_\bt_\bi_\bo_\bn_\b__\ba_\bd_\bd_\bi_\bt_\bi_\bv_\be (const _\bF_\bi_\bn_\bi_\bt_\be_\bE_\bl_\be_\bm_\be_\bn_\bt< dim, spacedim > &,\n@@ -50,9 +52,12 @@\n void\u00a0 _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\br_\be_\bs_\bt_\br_\bi_\bc_\bt_\bi_\bo_\bn_\b__\ba_\bd_\bd_\bi_\bt_\bi_\bv_\be (const _\b:_\b:_\bh_\bp_\b:_\b:_\bF_\bE_\bC_\bo_\bl_\bl_\be_\bc_\bt_\bi_\bo_\bn< dim, spacedim >\n &fe, std::vector< std::vector< _\bb_\bo_\bo_\bl > > &restriction_is_additive)\n \u00a0\n *\b**\b**\b**\b**\b* M\bMa\bac\bcr\bro\bo D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0S\bSP\bPL\bLI\bIT\bT_\b_I\bIN\bNS\bST\bTA\bAN\bNT\bTI\bIA\bAT\bTI\bIO\bON\bNS\bS_\b_C\bCO\bOU\bUN\bNT\bT *\b**\b**\b**\b**\b*\n #define SPLIT_INSTANTIATIONS_COUNT\u00a0\u00a0\u00a04\n Definition at line _\b6_\b3_\b9 of file _\bs_\bo_\bl_\bu_\bt_\bi_\bo_\bn_\b__\bt_\br_\ba_\bn_\bs_\bf_\be_\br_\b._\bc_\bc.\n+*\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0S\bSP\bPL\bLI\bIT\bT_\b_I\bIN\bNS\bST\bTA\bAN\bNT\bTI\bIA\bAT\bTI\bIO\bON\bNS\bS_\b_I\bIN\bND\bDE\bEX\bX *\b**\b**\b**\b**\b*\n+#define SPLIT_INSTANTIATIONS_INDEX\u00a0\u00a0\u00a00\n+Definition at line _\b6_\b4_\b1 of file _\bs_\bo_\bl_\bu_\bt_\bi_\bo_\bn_\b__\bt_\br_\ba_\bn_\bs_\bf_\be_\br_\b._\bc_\bc.\n ===============================================================================\n Generated by\u00a0_\b[_\bd_\bo_\bx_\by_\bg_\be_\bn_\b] 1.9.8\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2solution__transfer_8cc_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/numerics_2solution__transfer_8cc_source.html", "unified_diff": "@@ -755,15 +755,15 @@\n
    635}
    \n \n
    636
    \n
    637
    \n
    638/*-------------- Explicit Instantiations -------------------------------*/
    \n
    639#define SPLIT_INSTANTIATIONS_COUNT 4
    \n
    640#ifndef SPLIT_INSTANTIATIONS_INDEX
    \n-
    641# define SPLIT_INSTANTIATIONS_INDEX 0
    \n+
    641# define SPLIT_INSTANTIATIONS_INDEX 0
    \n
    642#endif
    \n
    643#include "solution_transfer.inst"
    \n
    644
    \n \n \n \n
    const hp::FECollection< dim, spacedim > & get_fe_collection() const
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -653,15 +653,15 @@\n 634 return sizeof(*this);\n 635}\n 636\n 637\n 638/*-------------- Explicit Instantiations -------------------------------*/\n _\b6_\b3_\b9#define SPLIT_INSTANTIATIONS_COUNT 4\n 640#ifndef SPLIT_INSTANTIATIONS_INDEX\n-641# define SPLIT_INSTANTIATIONS_INDEX 0\n+_\b6_\b4_\b1# define SPLIT_INSTANTIATIONS_INDEX 0\n 642#endif\n 643#include \"solution_transfer.inst\"\n 644\n 645_\bD_\bE_\bA_\bL_\b__\bI_\bI_\b__\bN_\bA_\bM_\bE_\bS_\bP_\bA_\bC_\bE_\b__\bC_\bL_\bO_\bS_\bE\n _\bb_\bl_\bo_\bc_\bk_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh\n _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bd_\bo_\bf_\b__\bh_\ba_\bn_\bd_\bl_\be_\br_\b._\bh_\b:_\b3_\b1_\b7\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__vector_8cc_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__parallel__vector_8cc_source.html", "unified_diff": "@@ -143,15 +143,15 @@\n
    37
    \n
    \n \n
    39 {
    \n
    40 // virtual functions called in constructors and destructors never use the
    \n
    41 // override in a derived class
    \n
    42 // for clarity be explicit on which function is called
    \n-\n+
    43 Vector::create_vector(MPI_COMM_SELF, 0, 0);
    \n
    44 }
    \n
    \n
    45
    \n
    46
    \n
    47
    \n
    \n
    48 Vector::Vector(const MPI_Comm communicator,
    \n@@ -168,21 +168,21 @@\n \n
    58 const IndexSet &ghost,
    \n
    59 const MPI_Comm communicator)
    \n
    60 {
    \n
    61 Assert(local.is_ascending_and_one_to_one(communicator),
    \n \n
    63
    \n-
    64 IndexSet ghost_set = ghost;
    \n-\n+
    64 IndexSet ghost_set = ghost;
    \n+
    65 ghost_set.subtract_set(local);
    \n
    66
    \n
    67 Vector::create_vector(communicator,
    \n
    68 local.size(),
    \n
    69 local.n_elements(),
    \n-
    70 ghost_set);
    \n+
    70 ghost_set);
    \n
    71 }
    \n
    \n
    72
    \n
    73
    \n
    74
    \n
    \n \n@@ -239,37 +239,37 @@\n
    122 else
    \n \n
    124 v.size(),
    \n \n
    126 true);
    \n
    127 }
    \n
    128
    \n-\n-\n+
    129 PetscErrorCode ierr = VecCopy(v.vector, vector);
    \n+
    130 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    131
    \n
    132 if (has_ghost_elements())
    \n
    133 {
    \n-\n-\n-\n-\n+
    134 ierr = VecGhostUpdateBegin(vector, INSERT_VALUES, SCATTER_FORWARD);
    \n+
    135 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    136 ierr = VecGhostUpdateEnd(vector, INSERT_VALUES, SCATTER_FORWARD);
    \n+
    137 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    138 }
    \n
    139 return *this;
    \n
    140 }
    \n
    \n
    141
    \n
    142
    \n
    143
    \n
    144 void
    \n
    \n \n
    146 {
    \n \n
    148
    \n-\n+
    149 create_vector(MPI_COMM_SELF, 0, 0);
    \n
    150 }
    \n
    \n
    151
    \n
    152
    \n
    153
    \n
    154 void
    \n
    \n@@ -277,41 +277,41 @@\n
    156 const size_type n,
    \n
    157 const size_type local_sz,
    \n
    158 const bool omit_zeroing_entries)
    \n
    159 {
    \n
    160 // only do something if the sizes
    \n
    161 // mismatch (may not be true for every proc)
    \n
    162
    \n-
    163 int k_global, k = ((size() != n) || (locally_owned_size() != local_sz));
    \n+
    163 int k_global, k = ((size() != n) || (locally_owned_size() != local_sz));
    \n
    164 {
    \n-
    165 const int ierr =
    \n-
    166 MPI_Allreduce(&k, &k_global, 1, MPI_INT, MPI_LOR, communicator);
    \n-\n+
    165 const int ierr =
    \n+
    166 MPI_Allreduce(&k, &k_global, 1, MPI_INT, MPI_LOR, communicator);
    \n+
    167 AssertThrowMPI(ierr);
    \n
    168 }
    \n
    169
    \n-\n+
    170 if (k_global || has_ghost_elements())
    \n
    171 {
    \n
    172 // FIXME: I'd like to use this here,
    \n
    173 // but somehow it leads to odd errors
    \n
    174 // somewhere down the line in some of
    \n
    175 // the tests:
    \n
    176 // const PetscErrorCode ierr = VecSetSizes (vector, n, n);
    \n
    177 // AssertThrow (ierr == 0, ExcPETScError(ierr));
    \n
    178
    \n
    179 // so let's go the slow way:
    \n
    180
    \n-\n-\n+
    181 const PetscErrorCode ierr = VecDestroy(&vector);
    \n+
    182 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    183
    \n-
    184 create_vector(communicator, n, local_sz);
    \n+
    184 create_vector(communicator, n, local_sz);
    \n
    185 }
    \n
    186
    \n
    187 // finally clear the new vector if so
    \n
    188 // desired
    \n-
    189 if (omit_zeroing_entries == false)
    \n+
    189 if (omit_zeroing_entries == false)
    \n
    190 *this = 0;
    \n
    191 }
    \n
    \n
    192
    \n
    193
    \n
    194
    \n
    195 void
    \n@@ -319,68 +319,68 @@\n
    196 Vector::reinit(const Vector &v, const bool omit_zeroing_entries)
    \n
    197 {
    \n
    198 if (v.has_ghost_elements())
    \n
    199 {
    \n \n \n \n-\n+
    203 if (!omit_zeroing_entries)
    \n
    204 {
    \n-
    205 const PetscErrorCode ierr = VecSet(vector, 0.0);
    \n-\n+
    205 const PetscErrorCode ierr = VecSet(vector, 0.0);
    \n+
    206 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    207 }
    \n
    208 }
    \n
    209 else
    \n \n
    211 v.size(),
    \n \n-\n+
    213 omit_zeroing_entries);
    \n
    214 }
    \n \n
    215
    \n
    216
    \n
    217
    \n
    218 void
    \n
    \n \n
    220 const IndexSet &ghost,
    \n
    221 const MPI_Comm comm)
    \n
    222 {
    \n-\n-\n+
    223 const PetscErrorCode ierr = VecDestroy(&vector);
    \n+
    224 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    225
    \n \n
    227
    \n-
    228 IndexSet ghost_set = ghost;
    \n-
    229 ghost_set.subtract_set(local);
    \n+
    228 IndexSet ghost_set = ghost;
    \n+
    229 ghost_set.subtract_set(local);
    \n
    230
    \n-
    231 create_vector(comm, local.size(), local.n_elements(), ghost_set);
    \n+
    231 create_vector(comm, local.size(), local.n_elements(), ghost_set);
    \n
    232 }
    \n
    \n
    233
    \n
    234 void
    \n
    \n
    235 Vector::reinit(const IndexSet &local, const MPI_Comm comm)
    \n
    236 {
    \n-\n-\n+
    237 const PetscErrorCode ierr = VecDestroy(&vector);
    \n+
    238 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    239
    \n \n
    241 Assert(local.size() > 0, ExcMessage("can not create vector of size 0."));
    \n
    242 create_vector(comm, local.size(), local.n_elements());
    \n
    243 }
    \n
    \n
    244
    \n
    245 void
    \n
    \n \n
    247 const std::shared_ptr<const Utilities::MPI::Partitioner> &partitioner,
    \n
    248 const bool make_ghosted)
    \n
    249 {
    \n-
    250 if (make_ghosted)
    \n+
    250 if (make_ghosted)
    \n
    251 {
    \n
    252 Assert(partitioner->ghost_indices_initialized(),
    \n
    253 ExcMessage("You asked to create a ghosted vector, but the "
    \n
    254 "partitioner does not provide ghost indices."));
    \n
    255
    \n
    256 this->reinit(partitioner->locally_owned_range(),
    \n
    257 partitioner->ghost_indices(),
    \n@@ -401,19 +401,19 @@\n
    270 const size_type n,
    \n
    271 const size_type locally_owned_size)
    \n
    272 {
    \n
    273 (void)n;
    \n \n
    275 ghosted = false;
    \n
    276
    \n-
    277 const PetscErrorCode ierr = VecCreateMPI(communicator,
    \n+
    277 const PetscErrorCode ierr = VecCreateMPI(communicator,
    \n \n-\n+
    279 PETSC_DETERMINE,
    \n
    280 &vector);
    \n-\n+
    281 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    282
    \n
    283 Assert(size() == n, ExcDimensionMismatch(size(), n));
    \n
    284 }
    \n
    \n
    285
    \n
    286
    \n
    287
    \n@@ -423,74 +423,74 @@\n
    290 const size_type n,
    \n
    291 const size_type locally_owned_size,
    \n
    292 const IndexSet &ghostnodes)
    \n
    293 {
    \n
    294 (void)n;
    \n \n
    296 ghosted = true;
    \n-\n+
    297 ghost_indices = ghostnodes;
    \n
    298
    \n-
    299 const std::vector<size_type> ghostindices = ghostnodes.get_index_vector();
    \n+
    299 const std::vector<size_type> ghostindices = ghostnodes.get_index_vector();
    \n
    300
    \n
    301 const PetscInt *ptr =
    \n-
    302 (ghostindices.size() > 0 ?
    \n-
    303 reinterpret_cast<const PetscInt *>(ghostindices.data()) :
    \n+
    302 (ghostindices.size() > 0 ?
    \n+
    303 reinterpret_cast<const PetscInt *>(ghostindices.data()) :
    \n
    304 nullptr);
    \n
    305
    \n-
    306 PetscErrorCode ierr = VecCreateGhost(communicator,
    \n+
    306 PetscErrorCode ierr = VecCreateGhost(communicator,
    \n \n-\n-
    309 ghostindices.size(),
    \n+
    308 PETSC_DETERMINE,
    \n+
    309 ghostindices.size(),
    \n
    310 ptr,
    \n
    311 &vector);
    \n-\n+
    312 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    313
    \n
    314 Assert(size() == n, ExcDimensionMismatch(size(), n));
    \n
    315
    \n
    316# ifdef DEBUG
    \n
    317 {
    \n
    318 // test ghost allocation in debug mode
    \n
    319 PetscInt begin, end;
    \n
    320
    \n-
    321 ierr = VecGetOwnershipRange(vector, &begin, &end);
    \n-\n+
    321 ierr = VecGetOwnershipRange(vector, &begin, &end);
    \n+
    322 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    323
    \n \n
    325 static_cast<size_type>(end - begin));
    \n
    326
    \n
    327 Vec l;
    \n-\n-\n+
    328 ierr = VecGhostGetLocalForm(vector, &l);
    \n+
    329 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    330
    \n-
    331 PetscInt lsize;
    \n-
    332 ierr = VecGetSize(l, &lsize);
    \n-\n+
    331 PetscInt lsize;
    \n+
    332 ierr = VecGetSize(l, &lsize);
    \n+
    333 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    334
    \n-\n-\n+
    335 ierr = VecGhostRestoreLocalForm(vector, &l);
    \n+
    336 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    337
    \n-\n+
    338 AssertDimension(lsize,
    \n
    339 end - begin +
    \n
    340 static_cast<PetscInt>(ghost_indices.n_elements()));
    \n
    341 }
    \n
    342# endif
    \n
    343 }
    \n \n
    344
    \n
    345
    \n
    346
    \n
    347 bool
    \n
    \n \n
    349 {
    \n-
    350 unsigned int has_nonzero = VectorBase::all_zero() ? 0 : 1;
    \n+
    350 unsigned int has_nonzero = VectorBase::all_zero() ? 0 : 1;
    \n
    351 // in parallel, check that the vector
    \n
    352 // is zero on _all_ processors.
    \n-
    353 unsigned int num_nonzero =
    \n-\n+
    353 unsigned int num_nonzero =
    \n+
    354 Utilities::MPI::sum(has_nonzero, this->get_mpi_communicator());
    \n
    355 return num_nonzero == 0;
    \n
    356 }
    \n
    \n
    357
    \n
    358
    \n
    359 void
    \n
    \n@@ -500,28 +500,28 @@\n
    363 const bool across) const
    \n
    364 {
    \n
    365 AssertThrow(out.fail() == false, ExcIO());
    \n
    366
    \n
    367 // get a representation of the vector and
    \n
    368 // loop over all the elements
    \n
    369 const PetscScalar *val;
    \n-
    370 PetscInt nlocal, istart, iend;
    \n+
    370 PetscInt nlocal, istart, iend;
    \n
    371
    \n-\n-\n+
    372 PetscErrorCode ierr = VecGetArrayRead(vector, &val);
    \n+
    373 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    374
    \n-\n-\n+
    375 ierr = VecGetLocalSize(vector, &nlocal);
    \n+
    376 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    377
    \n-\n-\n+
    378 ierr = VecGetOwnershipRange(vector, &istart, &iend);
    \n+
    379 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    380
    \n
    381 // save the state of out stream
    \n-
    382 std::ios::fmtflags old_flags = out.flags();
    \n-
    383 unsigned int old_precision = out.precision(precision);
    \n+
    382 std::ios::fmtflags old_flags = out.flags();
    \n+
    383 unsigned int old_precision = out.precision(precision);
    \n
    384
    \n
    385 out.precision(precision);
    \n
    386 if (scientific)
    \n
    387 out.setf(std::ios::scientific, std::ios::floatfield);
    \n
    388 else
    \n
    389 out.setf(std::ios::fixed, std::ios::floatfield);
    \n
    390
    \n@@ -531,44 +531,44 @@\n
    394 // matrix this way on a regular basis for production runs, so
    \n
    395 // the slowness of the barrier doesn't matter
    \n
    396 MPI_Comm communicator = this->get_mpi_communicator();
    \n
    397 for (unsigned int i = 0;
    \n
    398 i < Utilities::MPI::n_mpi_processes(communicator);
    \n
    399 i++)
    \n
    400 {
    \n-
    401 const int mpi_ierr = MPI_Barrier(communicator);
    \n-\n+
    401 const int mpi_ierr = MPI_Barrier(communicator);
    \n+
    402 AssertThrowMPI(mpi_ierr);
    \n
    403
    \n
    404 if (i == Utilities::MPI::this_mpi_process(communicator))
    \n
    405 {
    \n-
    406 if (across)
    \n+
    406 if (across)
    \n
    407 {
    \n-
    408 out << "[Proc" << i << " " << istart << "-" << iend - 1 << "]"
    \n+
    408 out << "[Proc" << i << " " << istart << "-" << iend - 1 << "]"
    \n
    409 << ' ';
    \n-
    410 for (PetscInt i = 0; i < nlocal; ++i)
    \n+
    410 for (PetscInt i = 0; i < nlocal; ++i)
    \n
    411 out << val[i] << ' ';
    \n
    412 }
    \n
    413 else
    \n
    414 {
    \n-
    415 out << "[Proc " << i << " " << istart << "-" << iend - 1
    \n+
    415 out << "[Proc " << i << " " << istart << "-" << iend - 1
    \n
    416 << "]" << std::endl;
    \n-
    417 for (PetscInt i = 0; i < nlocal; ++i)
    \n+
    417 for (PetscInt i = 0; i < nlocal; ++i)
    \n
    418 out << val[i] << std::endl;
    \n
    419 }
    \n
    420 out << std::endl;
    \n
    421 }
    \n
    422 }
    \n
    423 // reset output format
    \n-
    424 out.flags(old_flags);
    \n-
    425 out.precision(old_precision);
    \n+
    424 out.flags(old_flags);
    \n+
    425 out.precision(old_precision);
    \n
    426
    \n
    427 // restore the representation of the
    \n
    428 // vector
    \n-\n-\n+
    429 ierr = VecRestoreArrayRead(vector, &val);
    \n+
    430 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    431
    \n
    432 AssertThrow(out.fail() == false, ExcIO());
    \n
    433 }
    \n
    \n
    434
    \n
    435 } // namespace MPI
    \n
    436
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -48,15 +48,15 @@\n 36# endif\n 37\n _\b3_\b8 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br()\n 39 {\n 40 // virtual functions called in constructors and destructors never use the\n 41 // override in a derived class\n 42 // for clarity be explicit on which function is called\n-43 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bS_\bE_\bL_\bF, 0, 0);\n+43 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(MPI_COMM_SELF, 0, 0);\n 44 }\n 45\n 46\n 47\n _\b4_\b8 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br(const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator,\n 49 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n,\n 50 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be locally_owned_size)\n@@ -69,21 +69,21 @@\n _\b5_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local,\n 58 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost,\n 59 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator)\n 60 {\n 61 _\bA_\bs_\bs_\be_\br_\bt(local._\bi_\bs_\b__\ba_\bs_\bc_\be_\bn_\bd_\bi_\bn_\bg_\b__\ba_\bn_\bd_\b__\bo_\bn_\be_\b__\bt_\bo_\b__\bo_\bn_\be(communicator),\n 62 _\bE_\bx_\bc_\bN_\bo_\bt_\bI_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd());\n 63\n-64 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt _\bg_\bh_\bo_\bs_\bt_\b__\bs_\be_\bt = ghost;\n-65 _\bg_\bh_\bo_\bs_\bt_\b__\bs_\be_\bt._\bs_\bu_\bb_\bt_\br_\ba_\bc_\bt_\b__\bs_\be_\bt(local);\n+64 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ghost_set = ghost;\n+65 ghost_set._\bs_\bu_\bb_\bt_\br_\ba_\bc_\bt_\b__\bs_\be_\bt(local);\n 66\n 67 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(communicator,\n 68 local._\bs_\bi_\bz_\be(),\n 69 local._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(),\n-70 _\bg_\bh_\bo_\bs_\bt_\b__\bs_\be_\bt);\n+70 ghost_set);\n 71 }\n 72\n 73\n 74\n _\b7_\b5 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br(const _\bV_\be_\bc_\bt_\bo_\br &v)\n 76 : _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be()\n 77 {\n@@ -134,136 +134,136 @@\n 122 else\n 123 _\br_\be_\bi_\bn_\bi_\bt(v._\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br(),\n 124 v._\bs_\bi_\bz_\be(),\n 125 v._\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be(),\n 126 true);\n 127 }\n 128\n-129 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bC_\bo_\bp_\by(v._\bv_\be_\bc_\bt_\bo_\br, _\bv_\be_\bc_\bt_\bo_\br);\n-130 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+129 PetscErrorCode ierr = VecCopy(v._\bv_\be_\bc_\bt_\bo_\br, _\bv_\be_\bc_\bt_\bo_\br);\n+130 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 131\n 132 if (_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs())\n 133 {\n-134 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bU_\bp_\bd_\ba_\bt_\be_\bB_\be_\bg_\bi_\bn(_\bv_\be_\bc_\bt_\bo_\br, _\bI_\bN_\bS_\bE_\bR_\bT_\b__\bV_\bA_\bL_\bU_\bE_\bS, _\bS_\bC_\bA_\bT_\bT_\bE_\bR_\b__\bF_\bO_\bR_\bW_\bA_\bR_\bD);\n-135 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-136 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bU_\bp_\bd_\ba_\bt_\be_\bE_\bn_\bd(_\bv_\be_\bc_\bt_\bo_\br, _\bI_\bN_\bS_\bE_\bR_\bT_\b__\bV_\bA_\bL_\bU_\bE_\bS, _\bS_\bC_\bA_\bT_\bT_\bE_\bR_\b__\bF_\bO_\bR_\bW_\bA_\bR_\bD);\n-137 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+134 ierr = VecGhostUpdateBegin(_\bv_\be_\bc_\bt_\bo_\br, INSERT_VALUES, SCATTER_FORWARD);\n+135 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+136 ierr = VecGhostUpdateEnd(_\bv_\be_\bc_\bt_\bo_\br, INSERT_VALUES, SCATTER_FORWARD);\n+137 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 138 }\n 139 return *this;\n 140 }\n 141\n 142\n 143\n 144 void\n _\b1_\b4_\b5 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\bl_\be_\ba_\br()\n 146 {\n 147 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bc_\bl_\be_\ba_\br();\n 148\n-149 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bS_\bE_\bL_\bF, 0, 0);\n+149 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(MPI_COMM_SELF, 0, 0);\n 150 }\n 151\n 152\n 153\n 154 void\n _\b1_\b5_\b5 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator,\n 156 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n,\n 157 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be local_sz,\n 158 const bool omit_zeroing_entries)\n 159 {\n 160 // only do something if the sizes\n 161 // mismatch (may not be true for every proc)\n 162\n-163 int _\bk_\b__\bg_\bl_\bo_\bb_\ba_\bl, _\bk = ((_\bs_\bi_\bz_\be() != n) || (_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be() != _\bl_\bo_\bc_\ba_\bl_\b__\bs_\bz));\n+163 int k_global, k = ((_\bs_\bi_\bz_\be() != n) || (_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be() != local_sz));\n 164 {\n-165 const int _\bi_\be_\br_\br =\n-166 _\bM_\bP_\bI_\b__\bA_\bl_\bl_\br_\be_\bd_\bu_\bc_\be(&_\bk, &_\bk_\b__\bg_\bl_\bo_\bb_\ba_\bl, 1, _\bM_\bP_\bI_\b__\bI_\bN_\bT, _\bM_\bP_\bI_\b__\bL_\bO_\bR, communicator);\n-167 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw_\bM_\bP_\bI(_\bi_\be_\br_\br);\n+165 const int ierr =\n+166 MPI_Allreduce(&k, &k_global, 1, MPI_INT, MPI_LOR, communicator);\n+167 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw_\bM_\bP_\bI(ierr);\n 168 }\n 169\n-170 if (_\bk_\b__\bg_\bl_\bo_\bb_\ba_\bl || _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs())\n+170 if (k_global || _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs())\n 171 {\n 172 // FIXME: I'd like to use this here,\n 173 // but somehow it leads to odd errors\n 174 // somewhere down the line in some of\n 175 // the tests:\n 176 // const PetscErrorCode ierr = VecSetSizes (vector, n, n);\n 177 // AssertThrow (ierr == 0, ExcPETScError(ierr));\n 178\n 179 // so let's go the slow way:\n 180\n-181 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bD_\be_\bs_\bt_\br_\bo_\by(&_\bv_\be_\bc_\bt_\bo_\br);\n-182 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+181 const PetscErrorCode ierr = VecDestroy(&_\bv_\be_\bc_\bt_\bo_\br);\n+182 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 183\n-184 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(communicator, n, _\bl_\bo_\bc_\ba_\bl_\b__\bs_\bz);\n+184 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(communicator, n, local_sz);\n 185 }\n 186\n 187 // finally clear the new vector if so\n 188 // desired\n-189 if (_\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs == false)\n+189 if (omit_zeroing_entries == false)\n 190 *this = 0;\n 191 }\n 192\n 193\n 194\n 195 void\n _\b1_\b9_\b6 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(const _\bV_\be_\bc_\bt_\bo_\br &v, const bool omit_zeroing_entries)\n 197 {\n 198 if (v._\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs())\n 199 {\n 200 _\br_\be_\bi_\bn_\bi_\bt(v._\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(),\n 201 v._\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs,\n 202 v._\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br());\n-203 if (!_\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs)\n+203 if (!omit_zeroing_entries)\n 204 {\n-205 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bS_\be_\bt(_\bv_\be_\bc_\bt_\bo_\br, 0.0);\n-206 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+205 const PetscErrorCode ierr = VecSet(_\bv_\be_\bc_\bt_\bo_\br, 0.0);\n+206 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 207 }\n 208 }\n 209 else\n 210 _\br_\be_\bi_\bn_\bi_\bt(v._\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br(),\n 211 v._\bs_\bi_\bz_\be(),\n 212 v._\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be(),\n-213 _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs);\n+213 omit_zeroing_entries);\n 214 }\n 215\n 216\n 217\n 218 void\n _\b2_\b1_\b9 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local,\n 220 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost,\n 221 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm comm)\n 222 {\n-223 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bD_\be_\bs_\bt_\br_\bo_\by(&_\bv_\be_\bc_\bt_\bo_\br);\n-224 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+223 const PetscErrorCode ierr = VecDestroy(&_\bv_\be_\bc_\bt_\bo_\br);\n+224 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 225\n 226 _\bA_\bs_\bs_\be_\br_\bt(local._\bi_\bs_\b__\ba_\bs_\bc_\be_\bn_\bd_\bi_\bn_\bg_\b__\ba_\bn_\bd_\b__\bo_\bn_\be_\b__\bt_\bo_\b__\bo_\bn_\be(comm), _\bE_\bx_\bc_\bN_\bo_\bt_\bI_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd());\n 227\n-228 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt _\bg_\bh_\bo_\bs_\bt_\b__\bs_\be_\bt = ghost;\n-229 _\bg_\bh_\bo_\bs_\bt_\b__\bs_\be_\bt._\bs_\bu_\bb_\bt_\br_\ba_\bc_\bt_\b__\bs_\be_\bt(local);\n+228 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ghost_set = ghost;\n+229 ghost_set._\bs_\bu_\bb_\bt_\br_\ba_\bc_\bt_\b__\bs_\be_\bt(local);\n 230\n-231 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(comm, local._\bs_\bi_\bz_\be(), local._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bg_\bh_\bo_\bs_\bt_\b__\bs_\be_\bt);\n+231 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(comm, local._\bs_\bi_\bz_\be(), local._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), ghost_set);\n 232 }\n 233\n 234 void\n _\b2_\b3_\b5 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm comm)\n 236 {\n-237 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bD_\be_\bs_\bt_\br_\bo_\by(&_\bv_\be_\bc_\bt_\bo_\br);\n-238 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+237 const PetscErrorCode ierr = VecDestroy(&_\bv_\be_\bc_\bt_\bo_\br);\n+238 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 239\n 240 _\bA_\bs_\bs_\be_\br_\bt(local._\bi_\bs_\b__\ba_\bs_\bc_\be_\bn_\bd_\bi_\bn_\bg_\b__\ba_\bn_\bd_\b__\bo_\bn_\be_\b__\bt_\bo_\b__\bo_\bn_\be(comm), _\bE_\bx_\bc_\bN_\bo_\bt_\bI_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd());\n 241 _\bA_\bs_\bs_\be_\br_\bt(local._\bs_\bi_\bz_\be() > 0, _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\"can not create vector of size 0.\"));\n 242 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(comm, local._\bs_\bi_\bz_\be(), local._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs());\n 243 }\n 244\n 245 void\n _\b2_\b4_\b6 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(\n 247 const std::shared_ptr &partitioner,\n 248 const bool make_ghosted)\n 249 {\n-250 if (_\bm_\ba_\bk_\be_\b__\bg_\bh_\bo_\bs_\bt_\be_\bd)\n+250 if (make_ghosted)\n 251 {\n 252 _\bA_\bs_\bs_\be_\br_\bt(partitioner->ghost_indices_initialized(),\n 253 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\"You asked to create a ghosted vector, but the \"\n 254 \"partitioner does not provide ghost indices.\"));\n 255\n 256 this->_\br_\be_\bi_\bn_\bi_\bt(partitioner->locally_owned_range(),\n 257 partitioner->ghost_indices(),\n@@ -282,19 +282,19 @@\n 270 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n,\n 271 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be locally_owned_size)\n 272 {\n 273 (void)n;\n 274 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bn_\bd_\be_\bx_\bR_\ba_\bn_\bg_\be(_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be, n + 1);\n 275 _\bg_\bh_\bo_\bs_\bt_\be_\bd = false;\n 276\n-277 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bC_\br_\be_\ba_\bt_\be_\bM_\bP_\bI(communicator,\n+277 const PetscErrorCode ierr = VecCreateMPI(communicator,\n 278 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be,\n-279 _\bP_\bE_\bT_\bS_\bC_\b__\bD_\bE_\bT_\bE_\bR_\bM_\bI_\bN_\bE,\n+279 PETSC_DETERMINE,\n 280 &_\bv_\be_\bc_\bt_\bo_\br);\n-281 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+281 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 282\n 283 _\bA_\bs_\bs_\be_\br_\bt(_\bs_\bi_\bz_\be() == n, _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), n));\n 284 }\n 285\n 286\n 287\n 288 void\n@@ -302,72 +302,72 @@\n 290 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n,\n 291 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be locally_owned_size,\n 292 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghostnodes)\n 293 {\n 294 (void)n;\n 295 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bn_\bd_\be_\bx_\bR_\ba_\bn_\bg_\be(_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be, n + 1);\n 296 _\bg_\bh_\bo_\bs_\bt_\be_\bd = true;\n-297 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs = _\bg_\bh_\bo_\bs_\bt_\bn_\bo_\bd_\be_\bs;\n+297 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs = ghostnodes;\n 298\n-299 const std::vector _\bg_\bh_\bo_\bs_\bt_\bi_\bn_\bd_\bi_\bc_\be_\bs = _\bg_\bh_\bo_\bs_\bt_\bn_\bo_\bd_\be_\bs._\bg_\be_\bt_\b__\bi_\bn_\bd_\be_\bx_\b__\bv_\be_\bc_\bt_\bo_\br();\n+299 const std::vector ghostindices = ghostnodes._\bg_\be_\bt_\b__\bi_\bn_\bd_\be_\bx_\b__\bv_\be_\bc_\bt_\bo_\br();\n 300\n 301 const PetscInt *ptr =\n-302 (_\bg_\bh_\bo_\bs_\bt_\bi_\bn_\bd_\bi_\bc_\be_\bs.size() > 0 ?\n-303 reinterpret_cast(_\bg_\bh_\bo_\bs_\bt_\bi_\bn_\bd_\bi_\bc_\be_\bs.data()) :\n+302 (ghostindices.size() > 0 ?\n+303 reinterpret_cast(ghostindices.data()) :\n 304 nullptr);\n 305\n-306 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bC_\br_\be_\ba_\bt_\be_\bG_\bh_\bo_\bs_\bt(communicator,\n+306 PetscErrorCode ierr = VecCreateGhost(communicator,\n 307 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be,\n-308 _\bP_\bE_\bT_\bS_\bC_\b__\bD_\bE_\bT_\bE_\bR_\bM_\bI_\bN_\bE,\n-309 _\bg_\bh_\bo_\bs_\bt_\bi_\bn_\bd_\bi_\bc_\be_\bs.size(),\n+308 PETSC_DETERMINE,\n+309 ghostindices.size(),\n 310 ptr,\n 311 &_\bv_\be_\bc_\bt_\bo_\br);\n-312 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+312 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 313\n 314 _\bA_\bs_\bs_\be_\br_\bt(_\bs_\bi_\bz_\be() == n, _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), n));\n 315\n 316# ifdef DEBUG\n 317 {\n 318 // test ghost allocation in debug mode\n 319 PetscInt begin, end;\n 320\n-321 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bO_\bw_\bn_\be_\br_\bs_\bh_\bi_\bp_\bR_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br, &begin, &end);\n-322 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+321 ierr = VecGetOwnershipRange(_\bv_\be_\bc_\bt_\bo_\br, &begin, &end);\n+322 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 323\n 324 _\bA_\bs_\bs_\be_\br_\bt_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn(_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be,\n 325 static_cast<_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be>(end - begin));\n 326\n 327 Vec l;\n-328 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bG_\be_\bt_\bL_\bo_\bc_\ba_\bl_\bF_\bo_\br_\bm(_\bv_\be_\bc_\bt_\bo_\br, &l);\n-329 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+328 ierr = VecGhostGetLocalForm(_\bv_\be_\bc_\bt_\bo_\br, &l);\n+329 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 330\n-331 PetscInt _\bl_\bs_\bi_\bz_\be;\n-332 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bS_\bi_\bz_\be(l, &_\bl_\bs_\bi_\bz_\be);\n-333 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+331 PetscInt lsize;\n+332 ierr = VecGetSize(l, &lsize);\n+333 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 334\n-335 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bR_\be_\bs_\bt_\bo_\br_\be_\bL_\bo_\bc_\ba_\bl_\bF_\bo_\br_\bm(_\bv_\be_\bc_\bt_\bo_\br, &l);\n-336 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+335 ierr = VecGhostRestoreLocalForm(_\bv_\be_\bc_\bt_\bo_\br, &l);\n+336 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 337\n-338 _\bA_\bs_\bs_\be_\br_\bt_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn(_\bl_\bs_\bi_\bz_\be,\n+338 _\bA_\bs_\bs_\be_\br_\bt_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn(lsize,\n 339 end - begin +\n 340 static_cast(_\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs()));\n 341 }\n 342# endif\n 343 }\n 344\n 345\n 346\n 347 bool\n _\b3_\b4_\b8 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bl_\bl_\b__\bz_\be_\br_\bo() const\n 349 {\n-350 unsigned int _\bh_\ba_\bs_\b__\bn_\bo_\bn_\bz_\be_\br_\bo = _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\ba_\bl_\bl_\b__\bz_\be_\br_\bo() ? 0 : 1;\n+350 unsigned int has_nonzero = _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\ba_\bl_\bl_\b__\bz_\be_\br_\bo() ? 0 : 1;\n 351 // in parallel, check that the vector\n 352 // is zero on _all_ processors.\n-353 unsigned int _\bn_\bu_\bm_\b__\bn_\bo_\bn_\bz_\be_\br_\bo =\n-354 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(_\bh_\ba_\bs_\b__\bn_\bo_\bn_\bz_\be_\br_\bo, this->_\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br());\n+353 unsigned int num_nonzero =\n+354 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(has_nonzero, this->_\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br());\n 355 return num_nonzero == 0;\n 356 }\n 357\n 358\n 359 void\n _\b3_\b6_\b0 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bp_\br_\bi_\bn_\bt(std::ostream &out,\n 361 const unsigned int precision,\n@@ -375,28 +375,28 @@\n 363 const bool across) const\n 364 {\n 365 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(out.fail() == false, _\bE_\bx_\bc_\bI_\bO());\n 366\n 367 // get a representation of the vector and\n 368 // loop over all the elements\n 369 const PetscScalar *val;\n-370 PetscInt _\bn_\bl_\bo_\bc_\ba_\bl, _\bi_\bs_\bt_\ba_\br_\bt, _\bi_\be_\bn_\bd;\n+370 PetscInt nlocal, istart, iend;\n 371\n-372 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bv_\be_\bc_\bt_\bo_\br, &val);\n-373 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+372 PetscErrorCode ierr = VecGetArrayRead(_\bv_\be_\bc_\bt_\bo_\br, &val);\n+373 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 374\n-375 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bL_\bo_\bc_\ba_\bl_\bS_\bi_\bz_\be(_\bv_\be_\bc_\bt_\bo_\br, &_\bn_\bl_\bo_\bc_\ba_\bl);\n-376 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+375 ierr = VecGetLocalSize(_\bv_\be_\bc_\bt_\bo_\br, &nlocal);\n+376 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 377\n-378 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bO_\bw_\bn_\be_\br_\bs_\bh_\bi_\bp_\bR_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br, &_\bi_\bs_\bt_\ba_\br_\bt, &_\bi_\be_\bn_\bd);\n-379 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+378 ierr = VecGetOwnershipRange(_\bv_\be_\bc_\bt_\bo_\br, &istart, &iend);\n+379 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 380\n 381 // save the state of out stream\n-382 std::ios::fmtflags _\bo_\bl_\bd_\b__\bf_\bl_\ba_\bg_\bs = out.flags();\n-383 unsigned int _\bo_\bl_\bd_\b__\bp_\br_\be_\bc_\bi_\bs_\bi_\bo_\bn = out.precision(precision);\n+382 std::ios::fmtflags old_flags = out.flags();\n+383 unsigned int old_precision = out.precision(precision);\n 384\n 385 out.precision(precision);\n 386 if (scientific)\n 387 out.setf(std::ios::scientific, std::ios::floatfield);\n 388 else\n 389 out.setf(std::ios::fixed, std::ios::floatfield);\n 390\n@@ -406,44 +406,44 @@\n 394 // matrix this way on a regular basis for production runs, so\n 395 // the slowness of the barrier doesn't matter\n 396 _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = this->_\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br();\n 397 for (unsigned int i = 0;\n 398 i < _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bn_\b__\bm_\bp_\bi_\b__\bp_\br_\bo_\bc_\be_\bs_\bs_\be_\bs(communicator);\n 399 i++)\n 400 {\n-401 const int _\bm_\bp_\bi_\b__\bi_\be_\br_\br = _\bM_\bP_\bI_\b__\bB_\ba_\br_\br_\bi_\be_\br(communicator);\n-402 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw_\bM_\bP_\bI(_\bm_\bp_\bi_\b__\bi_\be_\br_\br);\n+401 const int mpi_ierr = MPI_Barrier(communicator);\n+402 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw_\bM_\bP_\bI(mpi_ierr);\n 403\n 404 if (i == _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bt_\bh_\bi_\bs_\b__\bm_\bp_\bi_\b__\bp_\br_\bo_\bc_\be_\bs_\bs(communicator))\n 405 {\n-406 if (_\ba_\bc_\br_\bo_\bs_\bs)\n+406 if (across)\n 407 {\n-408 out << \"[Proc\" << i << \" \" << _\bi_\bs_\bt_\ba_\br_\bt << \"-\" << _\bi_\be_\bn_\bd - 1 << \"]\"\n+408 out << \"[Proc\" << i << \" \" << istart << \"-\" << iend - 1 << \"]\"\n 409 << ' ';\n-410 for (PetscInt i = 0; i < _\bn_\bl_\bo_\bc_\ba_\bl; ++i)\n+410 for (PetscInt i = 0; i < nlocal; ++i)\n 411 out << val[i] << ' ';\n 412 }\n 413 else\n 414 {\n-415 out << \"[Proc \" << i << \" \" << _\bi_\bs_\bt_\ba_\br_\bt << \"-\" << _\bi_\be_\bn_\bd - 1\n+415 out << \"[Proc \" << i << \" \" << istart << \"-\" << iend - 1\n 416 << \"]\" << std::endl;\n-417 for (PetscInt i = 0; i < _\bn_\bl_\bo_\bc_\ba_\bl; ++i)\n+417 for (PetscInt i = 0; i < nlocal; ++i)\n 418 out << val[i] << std::endl;\n 419 }\n 420 out << std::endl;\n 421 }\n 422 }\n 423 // reset output format\n-424 out.flags(_\bo_\bl_\bd_\b__\bf_\bl_\ba_\bg_\bs);\n-425 out.precision(_\bo_\bl_\bd_\b__\bp_\br_\be_\bc_\bi_\bs_\bi_\bo_\bn);\n+424 out.flags(old_flags);\n+425 out.precision(old_precision);\n 426\n 427 // restore the representation of the\n 428 // vector\n-429 _\bi_\be_\br_\br = _\bV_\be_\bc_\bR_\be_\bs_\bt_\bo_\br_\be_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bv_\be_\bc_\bt_\bo_\br, &val);\n-430 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+429 ierr = VecRestoreArrayRead(_\bv_\be_\bc_\bt_\bo_\br, &val);\n+430 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 431\n 432 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(out.fail() == false, _\bE_\bx_\bc_\bI_\bO());\n 433 }\n 434\n 435 } // namespace MPI\n 436\n 437} // namespace PETScWrappers\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector_8h_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector_8h_source.html", "unified_diff": "@@ -185,37 +185,37 @@\n
    314
    \n
    315 using VectorBase::reinit;
    \n
    316
    \n
    333 void
    \n
    334 reinit(const MPI_Comm communicator,
    \n
    335 const size_type N,
    \n \n-
    337 const bool omit_zeroing_entries = false);
    \n+
    337 const bool omit_zeroing_entries = false);
    \n
    338
    \n
    348 void
    \n-
    349 reinit(const Vector &v, const bool omit_zeroing_entries = false);
    \n+
    349 reinit(const Vector &v, const bool omit_zeroing_entries = false);
    \n
    350
    \n
    358 void
    \n
    359 reinit(const IndexSet &local,
    \n
    360 const IndexSet &ghost,
    \n
    361 const MPI_Comm communicator);
    \n
    362
    \n
    370 void
    \n
    371 reinit(const IndexSet &local, const MPI_Comm communicator);
    \n
    372
    \n
    380 void
    \n
    381 reinit(
    \n
    382 const std::shared_ptr<const Utilities::MPI::Partitioner> &partitioner,
    \n-
    383 const bool make_ghosted = true);
    \n+
    383 const bool make_ghosted = true);
    \n
    384
    \n
    396 void
    \n
    397 print(std::ostream &out,
    \n
    398 const unsigned int precision = 3,
    \n
    399 const bool scientific = true,
    \n-
    400 const bool across = true) const;
    \n+
    400 const bool across = true) const;
    \n
    401
    \n
    408 bool
    \n
    409 all_zero() const;
    \n
    410
    \n
    411 protected:
    \n
    418 virtual void
    \n
    419 create_vector(const MPI_Comm comm,
    \n@@ -224,15 +224,15 @@\n
    422
    \n
    423
    \n
    424
    \n
    430 virtual void
    \n
    431 create_vector(const MPI_Comm comm,
    \n
    432 const size_type n,
    \n \n-
    434 const IndexSet &ghostnodes);
    \n+
    434 const IndexSet &ghostnodes);
    \n
    435 };
    \n \n
    436
    \n
    437
    \n
    438 // ------------------ template and inline functions -------------
    \n
    439
    \n
    440
    \n@@ -381,15 +381,14 @@\n
    virtual void create_vector(const MPI_Comm comm, const size_type n, const size_type locally_owned_size)
    \n
    Vector & operator=(const PetscScalar s)
    \n \n
    void reinit(const MPI_Comm communicator, const size_type N, const size_type locally_owned_size, const bool omit_zeroing_entries=false)
    \n
    Vector(const MPI_Comm communicator, const ::Vector< Number > &v, const size_type locally_owned_size)
    \n
    void swap(Vector &u, Vector &v)
    \n \n-\n \n
    void compress(const VectorOperation::values operation)
    \n \n
    size_type locally_owned_size() const
    \n
    VectorBase & operator=(const VectorBase &)
    \n
    size_type size() const override
    \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -91,37 +91,37 @@\n 314\n 315 using _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt;\n 316\n 333 void\n 334 _\br_\be_\bi_\bn_\bi_\bt(const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator,\n 335 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be N,\n 336 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be,\n-337 const bool _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs = false);\n+337 const bool omit_zeroing_entries = false);\n 338\n 348 void\n-349 _\br_\be_\bi_\bn_\bi_\bt(const _\bV_\be_\bc_\bt_\bo_\br &v, const bool _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs = false);\n+349 _\br_\be_\bi_\bn_\bi_\bt(const _\bV_\be_\bc_\bt_\bo_\br &v, const bool omit_zeroing_entries = false);\n 350\n 358 void\n 359 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local,\n 360 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost,\n 361 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator);\n 362\n 370 void\n 371 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local, const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator);\n 372\n 380 void\n 381 _\br_\be_\bi_\bn_\bi_\bt(\n 382 const std::shared_ptr &partitioner,\n-383 const bool _\bm_\ba_\bk_\be_\b__\bg_\bh_\bo_\bs_\bt_\be_\bd = true);\n+383 const bool make_ghosted = true);\n 384\n 396 void\n 397 _\bp_\br_\bi_\bn_\bt(std::ostream &out,\n 398 const unsigned int precision = 3,\n 399 const bool scientific = true,\n-400 const bool _\ba_\bc_\br_\bo_\bs_\bs = true) const;\n+400 const bool across = true) const;\n 401\n 408 bool\n 409 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo() const;\n 410\n 411 protected:\n 418 virtual void\n 419 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm comm,\n@@ -130,15 +130,15 @@\n 422\n 423\n 424\n 430 virtual void\n 431 _\bc_\br_\be_\ba_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br(const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm comm,\n 432 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n,\n 433 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be,\n-434 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bg_\bh_\bo_\bs_\bt_\bn_\bo_\bd_\be_\bs);\n+434 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghostnodes);\n 435 };\n 436\n 437\n 438 // ------------------ template and inline functions -------------\n 439\n 440\n 448 inline void\n@@ -304,17 +304,14 @@\n Vector(const MPI_Comm communicator, const ::Vector< Number > &v, const\n size_type locally_owned_size)\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\bw_\ba_\bp\n void swap(Vector &u, Vector &v)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b4_\b4_\b9\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh_\b:_\b2_\b5_\b3\n-_\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bv_\be_\bc_\bt_\bo_\br\n-Vec vector\n-D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bh_\b:_\b8_\b1_\b3\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be\n VectorBase()\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc_\b:_\b1_\b2_\b2\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bc_\bo_\bm_\bp_\br_\be_\bs_\bs\n void compress(const VectorOperation::values operation)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br_\b__\bb_\ba_\bs_\be_\b._\bc_\bc_\b:_\b5_\b4_\b0\n _\bP_\bE_\bT_\bS_\bc_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector__base_8cc_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector__base_8cc_source.html", "unified_diff": "@@ -240,63 +240,63 @@\n
    \n \n
    131 : Subscriptor()
    \n
    132 , ghosted(v.ghosted)
    \n
    133 , ghost_indices(v.ghost_indices)
    \n
    134 , last_action(VectorOperation::unknown)
    \n
    135 {
    \n-\n-\n+
    136 PetscErrorCode ierr = VecDuplicate(v.vector, &vector);
    \n+
    137 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    138
    \n-\n-\n+
    139 ierr = VecCopy(v.vector, vector);
    \n+
    140 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    141 }
    \n
    \n
    142
    \n
    143
    \n
    144
    \n
    \n \n
    146 : Subscriptor()
    \n
    147 , vector(v)
    \n
    148 , ghosted(false)
    \n
    149 , last_action(VectorOperation::unknown)
    \n
    150 {
    \n-
    151 const PetscErrorCode ierr =
    \n-
    152 PetscObjectReference(reinterpret_cast<PetscObject>(vector));
    \n-\n-
    154 (void)ierr;
    \n+
    151 const PetscErrorCode ierr =
    \n+
    152 PetscObjectReference(reinterpret_cast<PetscObject>(vector));
    \n+
    153 AssertNothrow(ierr == 0, ExcPETScError(ierr));
    \n+
    154 (void)ierr;
    \n \n
    156 }
    \n
    \n
    157
    \n
    158
    \n
    159
    \n
    \n \n
    161 {
    \n-\n-
    163 AssertNothrow(ierr == 0, ExcPETScError(ierr));
    \n-
    164 (void)ierr;
    \n+
    162 const PetscErrorCode ierr = VecDestroy(&vector);
    \n+
    163 AssertNothrow(ierr == 0, ExcPETScError(ierr));
    \n+
    164 (void)ierr;
    \n
    165 }
    \n
    \n
    166
    \n
    167
    \n
    168
    \n
    169 void
    \n
    \n \n
    171 {
    \n \n
    173 ExcMessage("Cannot assign a new Vec"));
    \n-\n-
    175 PetscObjectReference(reinterpret_cast<PetscObject>(v));
    \n-\n-\n-\n+
    174 PetscErrorCode ierr =
    \n+
    175 PetscObjectReference(reinterpret_cast<PetscObject>(v));
    \n+
    176 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    177 ierr = VecDestroy(&vector);
    \n+
    178 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    179 vector = v;
    \n \n
    181 }
    \n
    \n
    182
    \n
    183
    \n
    184
    \n@@ -364,116 +364,116 @@\n
    245 ghosted = false;
    \n \n
    247
    \n
    248 // There's no API to infer ghost indices from a PETSc Vec which
    \n
    249 // unfortunately doesn't allow integer entries. We use the
    \n
    250 // "ConvertingIterator" class above to do an implicit conversion when
    \n
    251 // sorting and adding ghost indices below.
    \n-\n-
    253 Vec ghosted_vec;
    \n-\n-\n-\n+
    252 PetscErrorCode ierr;
    \n+
    253 Vec ghosted_vec;
    \n+
    254 ierr = VecGhostGetLocalForm(vector, &ghosted_vec);
    \n+
    255 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    256 if (ghosted_vec && ghosted_vec != vector)
    \n
    257 {
    \n-
    258 Vec tvector;
    \n+
    258 Vec tvector;
    \n
    259 PetscScalar *array;
    \n-\n+
    260 PetscInt ghost_start_index, end_index, n_elements_stored_locally;
    \n
    261
    \n-\n-\n+
    262 ierr = VecGhostRestoreLocalForm(vector, &ghosted_vec);
    \n+
    263 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    264
    \n-\n-\n-\n-\n-
    269 ierr = VecGetArray(tvector, &array);
    \n+
    265 ierr = VecGetOwnershipRange(vector, &ghost_start_index, &end_index);
    \n+
    266 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    267 ierr = VecDuplicate(vector, &tvector);
    \n+
    268 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    269 ierr = VecGetArray(tvector, &array);
    \n
    \n-\n+
    270 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    271
    \n
    272 // Store the indices we care about in the vector, so that we can then
    \n
    273 // exchange this information between processes. It is unfortunate that
    \n
    274 // we have to store integers in floating point numbers. Let's at least
    \n
    275 // make sure we do that in a way that ensures that when we get these
    \n
    \n
    276 // numbers back as integers later on, we get the same thing.
    \n-
    277 for (PetscInt i = 0; i < end_index - ghost_start_index; i++)
    \n+
    277 for (PetscInt i = 0; i < end_index - ghost_start_index; i++)
    \n
    278 {
    \n
    279 Assert(static_cast<PetscInt>(std::real(static_cast<PetscScalar>(
    \n-
    280 ghost_start_index + i))) == (ghost_start_index + i),
    \n+
    280 ghost_start_index + i))) == (ghost_start_index + i),
    \n \n
    \n-
    282 array[i] = ghost_start_index + i;
    \n+
    282 array[i] = ghost_start_index + i;
    \n
    283 }
    \n
    284
    \n-
    285 ierr = VecRestoreArray(tvector, &array);
    \n-\n-\n-\n-\n-\n-\n-\n-\n-\n-
    295 ierr = VecGetArrayRead(ghosted_vec, (const PetscScalar **)&array);
    \n-\n+
    285 ierr = VecRestoreArray(tvector, &array);
    \n+
    286 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    287 ierr = VecGhostUpdateBegin(tvector, INSERT_VALUES, SCATTER_FORWARD);
    \n+
    288 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    289 ierr = VecGhostUpdateEnd(tvector, INSERT_VALUES, SCATTER_FORWARD);
    \n+
    290 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    291 ierr = VecGhostGetLocalForm(tvector, &ghosted_vec);
    \n+
    292 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    293 ierr = VecGetLocalSize(ghosted_vec, &n_elements_stored_locally);
    \n+
    294 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    295 ierr = VecGetArrayRead(ghosted_vec, (const PetscScalar **)&array);
    \n+
    296 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    297
    \n
    298 // Populate the 'ghosted' flag and the ghost_indices variable. The
    \n
    299 // latter is an index set that is most efficiently filled by
    \n
    300 // sorting the indices to add. At the same time, we don't want to
    \n
    301 // sort the indices stored in a PETSc-owned array; so if the array
    \n
    302 // is already sorted, pass that to the IndexSet variable, and if
    \n
    303 // not then copy the indices, sort them, and then add those.
    \n
    304 ghosted = true;
    \n
    305 ghost_indices.set_size(this->size());
    \n
    306
    \n-\n-
    308 &array[end_index - ghost_start_index]);
    \n-\n-\n-
    311 if (std::is_sorted(&array[end_index - ghost_start_index],
    \n-\n+
    307 ConvertingIterator<PetscScalar *, types::global_dof_index> begin_ghosts(
    \n+
    308 &array[end_index - ghost_start_index]);
    \n+
    309 ConvertingIterator<PetscScalar *, types::global_dof_index> end_ghosts(
    \n+
    310 &array[n_elements_stored_locally]);
    \n+
    311 if (std::is_sorted(&array[end_index - ghost_start_index],
    \n+
    312 &array[n_elements_stored_locally],
    \n
    313 [](PetscScalar left, PetscScalar right) {
    \n
    314 return static_cast<PetscInt>(std::real(left)) <
    \n
    315 static_cast<PetscInt>(std::real(right));
    \n
    316 }))
    \n
    317 {
    \n-\n+
    318 ghost_indices.add_indices(begin_ghosts, end_ghosts);
    \n
    319 }
    \n
    320 else
    \n
    321 {
    \n-
    322 std::vector<PetscInt> sorted_indices(begin_ghosts, end_ghosts);
    \n-
    323 std::sort(sorted_indices.begin(), sorted_indices.end());
    \n-\n-
    325 sorted_indices.end());
    \n+
    322 std::vector<PetscInt> sorted_indices(begin_ghosts, end_ghosts);
    \n+
    323 std::sort(sorted_indices.begin(), sorted_indices.end());
    \n+
    324 ghost_indices.add_indices(sorted_indices.begin(),
    \n+
    325 sorted_indices.end());
    \n
    326 }
    \n \n
    328
    \n-
    329 ierr = VecRestoreArrayRead(ghosted_vec, (const PetscScalar **)&array);
    \n-\n-\n-\n-\n-\n+
    329 ierr = VecRestoreArrayRead(ghosted_vec, (const PetscScalar **)&array);
    \n+
    330 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    331 ierr = VecGhostRestoreLocalForm(tvector, &ghosted_vec);
    \n+
    332 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    333 ierr = VecDestroy(&tvector);
    \n+
    334 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    335 }
    \n
    336 else
    \n
    337 {
    \n
    \n-\n-\n+
    338 ierr = VecGhostRestoreLocalForm(vector, &ghosted_vec);
    \n+
    339 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    340 }
    \n
    341 }
    \n
    342
    \n
    343
    \n
    344 void
    \n
    \n \n
    346 {
    \n-\n-\n+
    347 const PetscErrorCode ierr = VecDestroy(&vector);
    \n+
    348 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    349
    \n
    350 ghosted = false;
    \n \n \n
    353 }
    \n
    \n
    354
    \n@@ -481,16 +481,16 @@\n
    356
    \n
    357 VectorBase &
    \n
    \n \n
    359 {
    \n
    360 Assert(size() == v.size(), ExcDimensionMismatch(size(), v.size()));
    \n
    361
    \n-\n-\n+
    362 PetscErrorCode ierr = VecCopy(v, vector);
    \n+
    363 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    364
    \n
    365 return *this;
    \n
    366 }
    \n
    \n
    367
    \n
    368
    \n
    369
    \n@@ -498,104 +498,104 @@\n
    \n
    371 VectorBase::operator=(const PetscScalar s)
    \n
    372 {
    \n \n
    374
    \n
    375 // TODO[TH]: assert(is_compressed())
    \n
    376
    \n-\n-\n+
    377 PetscErrorCode ierr = VecSet(vector, s);
    \n+
    378 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    379
    \n
    380 if (has_ghost_elements())
    \n
    381 {
    \n
    382 Vec ghost = nullptr;
    \n-\n-\n+
    383 ierr = VecGhostGetLocalForm(vector, &ghost);
    \n+
    384 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    385
    \n-
    386 ierr = VecSet(ghost, s);
    \n-\n+
    386 ierr = VecSet(ghost, s);
    \n+
    387 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    388
    \n-\n-\n+
    389 ierr = VecGhostRestoreLocalForm(vector, &ghost);
    \n+
    390 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    391 }
    \n
    392
    \n
    393 return *this;
    \n
    394 }
    \n
    \n
    395
    \n
    396
    \n
    397
    \n
    398 bool
    \n
    \n \n
    400 {
    \n
    401 Assert(size() == v.size(), ExcDimensionMismatch(size(), v.size()));
    \n
    402
    \n-
    403 PetscBool flag;
    \n-
    404 const PetscErrorCode ierr = VecEqual(vector, v.vector, &flag);
    \n-\n+
    403 PetscBool flag;
    \n+
    404 const PetscErrorCode ierr = VecEqual(vector, v.vector, &flag);
    \n+
    405 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    406
    \n-
    407 return (flag == PETSC_TRUE);
    \n+
    407 return (flag == PETSC_TRUE);
    \n
    408 }
    \n
    \n
    409
    \n
    410
    \n
    411
    \n
    412 bool
    \n
    \n \n
    414 {
    \n
    415 Assert(size() == v.size(), ExcDimensionMismatch(size(), v.size()));
    \n
    416
    \n-
    417 PetscBool flag;
    \n-
    418 const PetscErrorCode ierr = VecEqual(vector, v.vector, &flag);
    \n-\n+
    417 PetscBool flag;
    \n+
    418 const PetscErrorCode ierr = VecEqual(vector, v.vector, &flag);
    \n+
    419 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    420
    \n-
    421 return (flag == PETSC_FALSE);
    \n+
    421 return (flag == PETSC_FALSE);
    \n
    422 }
    \n
    \n
    423
    \n
    424
    \n
    425
    \n \n
    \n \n
    428 {
    \n-
    429 PetscInt sz;
    \n-\n-\n+
    429 PetscInt sz;
    \n+
    430 const PetscErrorCode ierr = VecGetSize(vector, &sz);
    \n+
    431 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    432
    \n-
    433 return sz;
    \n+
    433 return sz;
    \n
    434 }
    \n
    \n
    435
    \n
    436
    \n
    437
    \n \n
    \n \n
    440 {
    \n-
    441 PetscInt sz;
    \n-\n-\n+
    441 PetscInt sz;
    \n+
    442 const PetscErrorCode ierr = VecGetLocalSize(vector, &sz);
    \n+
    443 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    444
    \n-
    445 return sz;
    \n+
    445 return sz;
    \n
    446 }
    \n
    \n
    447
    \n
    448
    \n
    449
    \n
    450 std::pair<VectorBase::size_type, VectorBase::size_type>
    \n
    \n \n
    452 {
    \n
    453 PetscInt begin, end;
    \n-
    454 const PetscErrorCode ierr =
    \n-
    455 VecGetOwnershipRange(static_cast<const Vec &>(vector), &begin, &end);
    \n-\n+
    454 const PetscErrorCode ierr =
    \n+
    455 VecGetOwnershipRange(static_cast<const Vec &>(vector), &begin, &end);
    \n+
    456 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    457
    \n
    458 return std::make_pair(begin, end);
    \n
    459 }
    \n
    \n
    460
    \n
    461
    \n
    462
    \n@@ -650,29 +650,29 @@\n
    503
    \n
    504
    \n
    505
    \n
    506 PetscScalar
    \n
    \n \n
    508 {
    \n-
    509 Assert(size() == vec.size(), ExcDimensionMismatch(size(), vec.size()));
    \n+
    509 Assert(size() == vec.size(), ExcDimensionMismatch(size(), vec.size()));
    \n
    510
    \n-
    511 PetscScalar result;
    \n+
    511 PetscScalar result;
    \n
    512
    \n
    513 // For complex vectors, VecDot() computes
    \n
    514 // val = (x,y) = y^H x,
    \n
    515 // where y^H denotes the conjugate transpose of y.
    \n
    516 // Note that this corresponds to the usual "mathematicians'"
    \n
    517 // complex inner product where the SECOND argument gets the
    \n
    518 // complex conjugate, which is also how we document this
    \n
    519 // operation.
    \n-
    520 const PetscErrorCode ierr = VecDot(vec.vector, vector, &result);
    \n-\n+
    520 const PetscErrorCode ierr = VecDot(vec.vector, vector, &result);
    \n+
    521 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    522
    \n-
    523 return result;
    \n+
    523 return result;
    \n
    524 }
    \n
    \n
    525
    \n
    526
    \n
    527
    \n
    528 PetscScalar
    \n
    \n@@ -698,26 +698,26 @@\n
    546 "not make sense to call compress() for such "
    \n
    547 "vectors."));
    \n
    548
    \n
    549 {
    \n
    550# ifdef DEBUG
    \n
    551 // Check that all processors agree that last_action is the same (or none!)
    \n
    552
    \n-\n-\n+
    553 int my_int_last_action = last_action;
    \n+
    554 int all_int_last_action;
    \n
    555
    \n-\n-\n+
    556 const int ierr = MPI_Allreduce(&my_int_last_action,
    \n+
    557 &all_int_last_action,
    \n
    558 1,
    \n-
    559 MPI_INT,
    \n-
    560 MPI_BOR,
    \n+
    559 MPI_INT,
    \n+
    560 MPI_BOR,
    \n \n-\n+
    562 AssertThrowMPI(ierr);
    \n
    563
    \n-\n+
    564 AssertThrow(all_int_last_action !=
    \n \n
    566 ExcMessage("Error: not all processors agree on the last "
    \n
    567 "VectorOperation before this compress() call."));
    \n
    568# endif
    \n
    569 }
    \n
    570
    \n \n@@ -735,18 +735,18 @@\n
    583 // situations where only one
    \n
    584 // processor (or a subset of
    \n
    585 // processors) actually writes
    \n
    586 // something into a vector, but
    \n
    587 // we still need to call
    \n
    588 // VecAssemblyBegin/End on all
    \n
    589 // processors.
    \n-\n-\n-\n-\n+
    590 PetscErrorCode ierr = VecAssemblyBegin(vector);
    \n+
    591 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    592 ierr = VecAssemblyEnd(vector);
    \n+
    593 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    594
    \n
    595 // reset the last action field to
    \n
    596 // indicate that we're back to a
    \n
    597 // pristine state
    \n \n
    599 }
    \n
    \n@@ -769,174 +769,174 @@\n \n
    614 {
    \n
    615 // We can only use our more efficient
    \n
    616 // routine in the serial case.
    \n
    617 if (dynamic_cast<const PETScWrappers::MPI::Vector *>(this) != nullptr)
    \n
    618 {
    \n
    619 PetscScalar sum;
    \n-
    620 const PetscErrorCode ierr = VecSum(vector, &sum);
    \n-\n+
    620 const PetscErrorCode ierr = VecSum(vector, &sum);
    \n+
    621 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    622 return sum / static_cast<PetscReal>(size());
    \n
    623 }
    \n
    624
    \n
    625 // get a representation of the vector and
    \n
    626 // loop over all the elements
    \n-
    627 const PetscScalar *start_ptr;
    \n-\n-\n+
    627 const PetscScalar *start_ptr;
    \n+
    628 PetscErrorCode ierr = VecGetArrayRead(vector, &start_ptr);
    \n+
    629 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    630
    \n
    631 PetscScalar mean = 0;
    \n
    632 {
    \n-
    633 PetscScalar sum0 = 0, sum1 = 0, sum2 = 0, sum3 = 0;
    \n+
    633 PetscScalar sum0 = 0, sum1 = 0, sum2 = 0, sum3 = 0;
    \n
    634
    \n
    635 // use modern processors better by
    \n
    636 // allowing pipelined commands to be
    \n
    637 // executed in parallel
    \n-
    638 const PetscScalar *ptr = start_ptr;
    \n-
    639 const PetscScalar *eptr = ptr + (size() / 4) * 4;
    \n-
    640 while (ptr != eptr)
    \n+
    638 const PetscScalar *ptr = start_ptr;
    \n+
    639 const PetscScalar *eptr = ptr + (size() / 4) * 4;
    \n+
    640 while (ptr != eptr)
    \n
    641 {
    \n-
    642 sum0 += *ptr++;
    \n-
    643 sum1 += *ptr++;
    \n-
    644 sum2 += *ptr++;
    \n-
    645 sum3 += *ptr++;
    \n+
    642 sum0 += *ptr++;
    \n+
    643 sum1 += *ptr++;
    \n+
    644 sum2 += *ptr++;
    \n+
    645 sum3 += *ptr++;
    \n
    646 }
    \n
    647 // add up remaining elements
    \n-
    648 while (ptr != start_ptr + size())
    \n-
    649 sum0 += *ptr++;
    \n+
    648 while (ptr != start_ptr + size())
    \n+
    649 sum0 += *ptr++;
    \n
    650
    \n-
    651 mean = (sum0 + sum1 + sum2 + sum3) / static_cast<PetscReal>(size());
    \n+
    651 mean = (sum0 + sum1 + sum2 + sum3) / static_cast<PetscReal>(size());
    \n
    652 }
    \n
    653
    \n
    654 // restore the representation of the
    \n
    655 // vector
    \n-\n-\n+
    656 ierr = VecRestoreArrayRead(vector, &start_ptr);
    \n+
    657 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    658
    \n
    659 return mean;
    \n
    660 }
    \n
    \n
    661
    \n
    662
    \n \n
    \n \n
    665 {
    \n
    666 real_type d;
    \n
    667
    \n-\n-\n+
    668 const PetscErrorCode ierr = VecNorm(vector, NORM_1, &d);
    \n+
    669 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    670
    \n
    671 return d;
    \n
    672 }
    \n
    \n
    673
    \n
    674
    \n
    675
    \n \n
    \n \n
    678 {
    \n
    679 real_type d;
    \n
    680
    \n-\n-\n+
    681 const PetscErrorCode ierr = VecNorm(vector, NORM_2, &d);
    \n+
    682 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    683
    \n
    684 return d;
    \n
    685 }
    \n
    \n
    686
    \n
    687
    \n
    688
    \n \n
    \n \n
    691 {
    \n
    692 // get a representation of the vector and
    \n
    693 // loop over all the elements
    \n-
    694 const PetscScalar *start_ptr;
    \n-\n-\n+
    694 const PetscScalar *start_ptr;
    \n+
    695 PetscErrorCode ierr = VecGetArrayRead(vector, &start_ptr);
    \n+
    696 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    697
    \n
    698 real_type norm = 0;
    \n
    699 {
    \n-
    700 real_type sum0 = 0, sum1 = 0, sum2 = 0, sum3 = 0;
    \n+
    700 real_type sum0 = 0, sum1 = 0, sum2 = 0, sum3 = 0;
    \n
    701
    \n
    702 // use modern processors better by
    \n
    703 // allowing pipelined commands to be
    \n
    704 // executed in parallel
    \n-
    705 const PetscScalar *ptr = start_ptr;
    \n-
    706 const PetscScalar *eptr = ptr + (size() / 4) * 4;
    \n-
    707 while (ptr != eptr)
    \n+
    705 const PetscScalar *ptr = start_ptr;
    \n+
    706 const PetscScalar *eptr = ptr + (size() / 4) * 4;
    \n+
    707 while (ptr != eptr)
    \n
    708 {
    \n-\n-\n-\n-\n+\n+\n+\n+\n
    713 }
    \n
    714 // add up remaining elements
    \n-
    715 while (ptr != start_ptr + size())
    \n-\n+
    715 while (ptr != start_ptr + size())
    \n+\n
    717
    \n-
    718 norm = std::pow(sum0 + sum1 + sum2 + sum3, 1. / p);
    \n+
    718 norm = std::pow(sum0 + sum1 + sum2 + sum3, 1. / p);
    \n
    719 }
    \n
    720
    \n
    721 // restore the representation of the
    \n
    722 // vector
    \n-\n-\n+
    723 ierr = VecRestoreArrayRead(vector, &start_ptr);
    \n+
    724 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    725
    \n
    726 return norm;
    \n
    727 }
    \n
    \n
    728
    \n
    729
    \n
    730
    \n \n
    \n \n
    733 {
    \n
    734 real_type d;
    \n
    735
    \n-\n-\n+
    736 const PetscErrorCode ierr = VecNorm(vector, NORM_INFINITY, &d);
    \n+
    737 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    738
    \n
    739 return d;
    \n
    740 }
    \n
    \n
    741
    \n
    742
    \n
    743
    \n
    744 bool
    \n
    \n \n
    746 {
    \n
    747 // get a representation of the vector and
    \n
    748 // loop over all the elements
    \n-
    749 const PetscScalar *start_ptr;
    \n-\n-\n+
    749 const PetscScalar *start_ptr;
    \n+
    750 PetscErrorCode ierr = VecGetArrayRead(vector, &start_ptr);
    \n+
    751 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    752
    \n-
    753 const PetscScalar *ptr = start_ptr,
    \n-\n+
    753 const PetscScalar *ptr = start_ptr,
    \n+
    754 *eptr = start_ptr + locally_owned_size();
    \n
    755 bool flag = true;
    \n-
    756 while (ptr != eptr)
    \n+
    756 while (ptr != eptr)
    \n
    757 {
    \n
    758 if (*ptr != value_type())
    \n
    759 {
    \n
    760 flag = false;
    \n
    761 break;
    \n
    762 }
    \n
    763 ++ptr;
    \n
    764 }
    \n
    765
    \n
    766 // restore the representation of the
    \n
    767 // vector
    \n-\n-\n+
    768 ierr = VecRestoreArrayRead(vector, &start_ptr);
    \n+
    769 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    770
    \n
    771 return flag;
    \n
    772 }
    \n
    \n
    773
    \n
    774
    \n
    775 namespace internal
    \n@@ -970,16 +970,16 @@\n
    799 VectorBase &
    \n
    \n
    800 VectorBase::operator*=(const PetscScalar a)
    \n
    801 {
    \n \n \n
    804
    \n-\n-\n+
    805 const PetscErrorCode ierr = VecScale(vector, a);
    \n+
    806 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    807
    \n
    808 return *this;
    \n
    809 }
    \n
    \n
    810
    \n
    811
    \n
    812
    \n@@ -989,74 +989,74 @@\n
    815 {
    \n \n \n
    818
    \n
    819 const PetscScalar factor = 1. / a;
    \n
    820 AssertIsFinite(factor);
    \n
    821
    \n-
    822 const PetscErrorCode ierr = VecScale(vector, factor);
    \n-\n+
    822 const PetscErrorCode ierr = VecScale(vector, factor);
    \n+
    823 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    824
    \n
    825 return *this;
    \n
    826 }
    \n
    \n
    827
    \n
    828
    \n
    829
    \n
    830 VectorBase &
    \n
    \n \n
    832 {
    \n \n-
    834 const PetscErrorCode ierr = VecAXPY(vector, 1, v);
    \n-\n+
    834 const PetscErrorCode ierr = VecAXPY(vector, 1, v);
    \n+
    835 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    836
    \n
    837 return *this;
    \n
    838 }
    \n
    \n
    839
    \n
    840
    \n
    841
    \n
    842 VectorBase &
    \n
    \n \n
    844 {
    \n \n-
    846 const PetscErrorCode ierr = VecAXPY(vector, -1, v);
    \n-\n+
    846 const PetscErrorCode ierr = VecAXPY(vector, -1, v);
    \n+
    847 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    848
    \n
    849 return *this;
    \n
    850 }
    \n
    \n
    851
    \n
    852
    \n
    853
    \n
    854 void
    \n
    \n
    855 VectorBase::add(const PetscScalar s)
    \n
    856 {
    \n \n \n
    859
    \n-\n-\n+
    860 const PetscErrorCode ierr = VecShift(vector, s);
    \n+
    861 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    862 }
    \n
    \n
    863
    \n
    864
    \n
    865
    \n
    866 void
    \n
    \n
    867 VectorBase::add(const PetscScalar a, const VectorBase &v)
    \n
    868 {
    \n \n \n
    871
    \n-
    872 const PetscErrorCode ierr = VecAXPY(vector, a, v);
    \n-\n+
    872 const PetscErrorCode ierr = VecAXPY(vector, a, v);
    \n+
    873 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    874 }
    \n
    \n
    875
    \n
    876
    \n
    877
    \n
    878 void
    \n
    \n@@ -1066,32 +1066,32 @@\n
    882 const VectorBase &w)
    \n
    883 {
    \n \n \n \n
    887
    \n
    888 const PetscScalar weights[2] = {a, b};
    \n-
    889 Vec addends[2] = {v.vector, w.vector};
    \n+
    889 Vec addends[2] = {v.vector, w.vector};
    \n
    890
    \n-
    891 const PetscErrorCode ierr = VecMAXPY(vector, 2, weights, addends);
    \n-\n+
    891 const PetscErrorCode ierr = VecMAXPY(vector, 2, weights, addends);
    \n+
    892 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    893 }
    \n
    \n
    894
    \n
    895
    \n
    896
    \n
    897 void
    \n
    \n
    898 VectorBase::sadd(const PetscScalar s, const VectorBase &v)
    \n
    899 {
    \n \n \n
    902
    \n-
    903 const PetscErrorCode ierr = VecAYPX(vector, s, v);
    \n-\n+
    903 const PetscErrorCode ierr = VecAYPX(vector, s, v);
    \n+
    904 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    905 }
    \n
    \n
    906
    \n
    907
    \n
    908
    \n
    909 void
    \n
    \n@@ -1114,54 +1114,54 @@\n
    925
    \n
    926
    \n
    927 void
    \n
    \n \n
    929 {
    \n \n-\n-\n+
    931 const PetscErrorCode ierr = VecPointwiseMult(vector, factors, vector);
    \n+
    932 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    933 }
    \n
    \n
    934
    \n
    935
    \n
    936
    \n
    937 void
    \n
    \n
    938 VectorBase::equ(const PetscScalar a, const VectorBase &v)
    \n
    939 {
    \n \n \n
    942
    \n
    943 Assert(size() == v.size(), ExcDimensionMismatch(size(), v.size()));
    \n
    944
    \n-
    945 const PetscErrorCode ierr = VecAXPBY(vector, a, 0.0, v.vector);
    \n-\n+
    945 const PetscErrorCode ierr = VecAXPBY(vector, a, 0.0, v.vector);
    \n+
    946 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    947 }
    \n
    \n
    948
    \n
    949
    \n
    950
    \n
    951 void
    \n
    \n
    952 VectorBase::write_ascii(const PetscViewerFormat format)
    \n
    953 {
    \n
    954 // TODO[TH]:assert(is_compressed())
    \n-\n+
    955 MPI_Comm comm = PetscObjectComm((PetscObject)vector);
    \n
    956
    \n
    957 // Set options
    \n-\n-\n-\n+
    958 PetscErrorCode ierr =
    \n+
    959 PetscViewerPushFormat(PETSC_VIEWER_STDOUT_(comm), format);
    \n+
    960 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    961
    \n
    962 // Write to screen
    \n-\n-\n-\n-\n+
    963 ierr = VecView(vector, PETSC_VIEWER_STDOUT_(comm));
    \n+
    964 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n+
    965 ierr = PetscViewerPopFormat(PETSC_VIEWER_STDOUT_(comm));
    \n+
    966 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    967 }
    \n
    \n
    968
    \n
    969
    \n
    970
    \n
    971 void
    \n
    \n@@ -1171,44 +1171,44 @@\n
    975 const bool across) const
    \n
    976 {
    \n
    977 AssertThrow(out.fail() == false, ExcIO());
    \n
    978
    \n
    979 // get a representation of the vector and
    \n
    980 // loop over all the elements
    \n
    981 const PetscScalar *val;
    \n-\n+
    982 PetscErrorCode ierr = VecGetArrayRead(vector, &val);
    \n
    983
    \n-\n+
    984 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    985
    \n
    986 // save the state of out stream
    \n-
    987 const std::ios::fmtflags old_flags = out.flags();
    \n-
    988 const unsigned int old_precision = out.precision(precision);
    \n+
    987 const std::ios::fmtflags old_flags = out.flags();
    \n+
    988 const unsigned int old_precision = out.precision(precision);
    \n
    989
    \n
    990 out.precision(precision);
    \n
    991 if (scientific)
    \n
    992 out.setf(std::ios::scientific, std::ios::floatfield);
    \n
    993 else
    \n
    994 out.setf(std::ios::fixed, std::ios::floatfield);
    \n
    995
    \n-
    996 if (across)
    \n+
    996 if (across)
    \n
    997 for (size_type i = 0; i < locally_owned_size(); ++i)
    \n
    998 out << val[i] << ' ';
    \n
    999 else
    \n
    1000 for (size_type i = 0; i < locally_owned_size(); ++i)
    \n
    1001 out << val[i] << std::endl;
    \n
    1002 out << std::endl;
    \n
    1003
    \n
    1004 // reset output format
    \n-
    1005 out.flags(old_flags);
    \n-
    1006 out.precision(old_precision);
    \n+
    1005 out.flags(old_flags);
    \n+
    1006 out.precision(old_precision);
    \n
    1007
    \n
    1008 // restore the representation of the
    \n
    1009 // vector
    \n-\n-\n+
    1010 ierr = VecRestoreArrayRead(vector, &val);
    \n+
    1011 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    1012
    \n
    1013 AssertThrow(out.fail() == false, ExcIO());
    \n
    1014 }
    \n
    \n
    1015
    \n
    1016
    \n
    1017
    \n@@ -1224,15 +1224,15 @@\n
    1026 this->ghost_indices = v.ghost_indices;
    \n
    1027 v.ghost_indices = t;
    \n
    1028 }
    \n
    \n
    1029
    \n
    1030
    \n
    \n-
    1031 VectorBase::operator const Vec &() const
    \n+
    1031 VectorBase::operator const Vec &() const
    \n
    1032 {
    \n
    1033 return vector;
    \n
    1034 }
    \n
    \n
    1035
    \n
    1036
    \n
    1037 Vec &
    \n@@ -1271,39 +1271,39 @@\n
    1066 void
    \n
    \n \n
    1068 const size_type *indices,
    \n
    1069 const PetscScalar *values,
    \n
    1070 const bool add_values)
    \n
    1071 {
    \n-\n-\n-\n-
    1075 internal::VectorReference::ExcWrongMode(action, last_action));
    \n+\n+\n+\n+
    1075 internal::VectorReference::ExcWrongMode(action, last_action));
    \n \n
    1077 // VecSetValues complains if we
    \n
    1078 // come with an empty
    \n
    1079 // vector. however, it is not a
    \n
    1080 // collective operation, so we
    \n
    1081 // can skip the call if necessary
    \n
    1082 // (unlike the above calls)
    \n
    1083 if (n_elements != 0)
    \n
    1084 {
    \n-
    1085 const PetscInt *petsc_indices =
    \n+
    1085 const PetscInt *petsc_indices =
    \n
    1086 reinterpret_cast<const PetscInt *>(indices);
    \n
    1087
    \n-
    1088 const InsertMode mode = (add_values ? ADD_VALUES : INSERT_VALUES);
    \n-
    1089 const PetscErrorCode ierr =
    \n-
    1090 VecSetValues(vector, n_elements, petsc_indices, values, mode);
    \n-\n+
    1088 const InsertMode mode = (add_values ? ADD_VALUES : INSERT_VALUES);
    \n+
    1089 const PetscErrorCode ierr =
    \n+
    1090 VecSetValues(vector, n_elements, petsc_indices, values, mode);
    \n+
    1091 AssertThrow(ierr == 0, ExcPETScError(ierr));
    \n
    1092 }
    \n
    1093
    \n
    1094 // set the mode here, independent of whether we have actually
    \n
    1095 // written elements or whether the list was empty
    \n-\n+
    1096 last_action = action;
    \n
    1097 }
    \n
    \n
    1098
    \n
    1099} // namespace PETScWrappers
    \n
    1100
    \n \n
    1102
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -141,57 +141,57 @@\n 129\n _\b1_\b3_\b0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n 131 : _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br()\n 132 , ghosted(v.ghosted)\n 133 , ghost_indices(v.ghost_indices)\n 134 , last_action(_\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn::unknown)\n 135 {\n-136 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bD_\bu_\bp_\bl_\bi_\bc_\ba_\bt_\be(v._\bv_\be_\bc_\bt_\bo_\br, &_\bv_\be_\bc_\bt_\bo_\br);\n-137 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+136 PetscErrorCode ierr = VecDuplicate(v._\bv_\be_\bc_\bt_\bo_\br, &_\bv_\be_\bc_\bt_\bo_\br);\n+137 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 138\n-139 _\bi_\be_\br_\br = _\bV_\be_\bc_\bC_\bo_\bp_\by(v._\bv_\be_\bc_\bt_\bo_\br, _\bv_\be_\bc_\bt_\bo_\br);\n-140 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+139 ierr = VecCopy(v._\bv_\be_\bc_\bt_\bo_\br, _\bv_\be_\bc_\bt_\bo_\br);\n+140 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 141 }\n 142\n 143\n 144\n _\b1_\b4_\b5 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be(const Vec &v)\n 146 : _\bS_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt_\bo_\br()\n 147 , vector(v)\n 148 , ghosted(false)\n 149 , last_action(_\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn::unknown)\n 150 {\n-151 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br =\n-152 _\bP_\be_\bt_\bs_\bc_\bO_\bb_\bj_\be_\bc_\bt_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be(reinterpret_cast<_\bP_\be_\bt_\bs_\bc_\bO_\bb_\bj_\be_\bc_\bt>(_\bv_\be_\bc_\bt_\bo_\br));\n-153 _\bA_\bs_\bs_\be_\br_\bt_\bN_\bo_\bt_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-154 (void)_\bi_\be_\br_\br;\n+151 const PetscErrorCode ierr =\n+152 PetscObjectReference(reinterpret_cast(_\bv_\be_\bc_\bt_\bo_\br));\n+153 _\bA_\bs_\bs_\be_\br_\bt_\bN_\bo_\bt_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+154 (void)ierr;\n 155 this->_\bd_\be_\bt_\be_\br_\bm_\bi_\bn_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs();\n 156 }\n 157\n 158\n 159\n _\b1_\b6_\b0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\b~_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be()\n 161 {\n-162 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bD_\be_\bs_\bt_\br_\bo_\by(&_\bv_\be_\bc_\bt_\bo_\br);\n-163 _\bA_\bs_\bs_\be_\br_\bt_\bN_\bo_\bt_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-164 (void)_\bi_\be_\br_\br;\n+162 const PetscErrorCode ierr = VecDestroy(&_\bv_\be_\bc_\bt_\bo_\br);\n+163 _\bA_\bs_\bs_\be_\br_\bt_\bN_\bo_\bt_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+164 (void)ierr;\n 165 }\n 166\n 167\n 168\n 169 void\n _\b1_\b7_\b0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(Vec v)\n 171 {\n 172 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bu_\bn_\bk_\bn_\bo_\bw_\bn,\n 173 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\"Cannot assign a new Vec\"));\n-174 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br =\n-175 _\bP_\be_\bt_\bs_\bc_\bO_\bb_\bj_\be_\bc_\bt_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be(reinterpret_cast<_\bP_\be_\bt_\bs_\bc_\bO_\bb_\bj_\be_\bc_\bt>(v));\n-176 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-177 _\bi_\be_\br_\br = _\bV_\be_\bc_\bD_\be_\bs_\bt_\br_\bo_\by(&_\bv_\be_\bc_\bt_\bo_\br);\n-178 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+174 PetscErrorCode ierr =\n+175 PetscObjectReference(reinterpret_cast(v));\n+176 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+177 ierr = VecDestroy(&_\bv_\be_\bc_\bt_\bo_\br);\n+178 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 179 _\bv_\be_\bc_\bt_\bo_\br = v;\n 180 this->_\bd_\be_\bt_\be_\br_\bm_\bi_\bn_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs();\n 181 }\n 182\n 183\n 184\n 185 namespace\n@@ -257,219 +257,219 @@\n 245 _\bg_\bh_\bo_\bs_\bt_\be_\bd = false;\n 246 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs._\bc_\bl_\be_\ba_\br();\n 247\n 248 // There's no API to infer ghost indices from a PETSc Vec which\n 249 // unfortunately doesn't allow integer entries. We use the\n 250 // \"ConvertingIterator\" class above to do an implicit conversion when\n 251 // sorting and adding ghost indices below.\n-252 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br;\n-253 Vec _\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc;\n-254 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bG_\be_\bt_\bL_\bo_\bc_\ba_\bl_\bF_\bo_\br_\bm(_\bv_\be_\bc_\bt_\bo_\br, &_\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc);\n-255 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-256 if (_\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc && _\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc != _\bv_\be_\bc_\bt_\bo_\br)\n+252 PetscErrorCode ierr;\n+253 Vec ghosted_vec;\n+254 ierr = VecGhostGetLocalForm(_\bv_\be_\bc_\bt_\bo_\br, &ghosted_vec);\n+255 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+256 if (ghosted_vec && ghosted_vec != _\bv_\be_\bc_\bt_\bo_\br)\n 257 {\n-258 Vec _\bt_\bv_\be_\bc_\bt_\bo_\br;\n+258 Vec tvector;\n 259 PetscScalar *array;\n-260 PetscInt _\bg_\bh_\bo_\bs_\bt_\b__\bs_\bt_\ba_\br_\bt_\b__\bi_\bn_\bd_\be_\bx, _\be_\bn_\bd_\b__\bi_\bn_\bd_\be_\bx, _\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\bl_\bo_\bc_\ba_\bl_\bl_\by;\n+260 PetscInt ghost_start_index, end_index, n_elements_stored_locally;\n 261\n-262 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bR_\be_\bs_\bt_\bo_\br_\be_\bL_\bo_\bc_\ba_\bl_\bF_\bo_\br_\bm(_\bv_\be_\bc_\bt_\bo_\br, &_\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc);\n-263 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+262 ierr = VecGhostRestoreLocalForm(_\bv_\be_\bc_\bt_\bo_\br, &ghosted_vec);\n+263 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 264\n-265 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bO_\bw_\bn_\be_\br_\bs_\bh_\bi_\bp_\bR_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br, &_\bg_\bh_\bo_\bs_\bt_\b__\bs_\bt_\ba_\br_\bt_\b__\bi_\bn_\bd_\be_\bx, &_\be_\bn_\bd_\b__\bi_\bn_\bd_\be_\bx);\n-266 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-267 _\bi_\be_\br_\br = _\bV_\be_\bc_\bD_\bu_\bp_\bl_\bi_\bc_\ba_\bt_\be(_\bv_\be_\bc_\bt_\bo_\br, &_\bt_\bv_\be_\bc_\bt_\bo_\br);\n-268 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-269 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bA_\br_\br_\ba_\by(_\bt_\bv_\be_\bc_\bt_\bo_\br, &array);\n-_\b2_\b7_\b0 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+265 ierr = VecGetOwnershipRange(_\bv_\be_\bc_\bt_\bo_\br, &ghost_start_index, &end_index);\n+266 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+267 ierr = VecDuplicate(_\bv_\be_\bc_\bt_\bo_\br, &tvector);\n+268 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+269 ierr = VecGetArray(tvector, &array);\n+_\b2_\b7_\b0 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 271\n 272 // Store the indices we care about in the vector, so that we can then\n 273 // exchange this information between processes. It is unfortunate that\n 274 // we have to store integers in floating point numbers. Let's at least\n 275 // make sure we do that in a way that ensures that when we get these\n _\b2_\b7_\b6 // numbers back as integers later on, we get the same thing.\n-277 for (PetscInt i = 0; i < _\be_\bn_\bd_\b__\bi_\bn_\bd_\be_\bx - _\bg_\bh_\bo_\bs_\bt_\b__\bs_\bt_\ba_\br_\bt_\b__\bi_\bn_\bd_\be_\bx; i++)\n+277 for (PetscInt i = 0; i < end_index - ghost_start_index; i++)\n 278 {\n 279 _\bA_\bs_\bs_\be_\br_\bt(static_cast(std::real(static_cast(\n-280 _\bg_\bh_\bo_\bs_\bt_\b__\bs_\bt_\ba_\br_\bt_\b__\bi_\bn_\bd_\be_\bx + i))) == (_\bg_\bh_\bo_\bs_\bt_\b__\bs_\bt_\ba_\br_\bt_\b__\bi_\bn_\bd_\be_\bx + i),\n+280 ghost_start_index + i))) == (ghost_start_index + i),\n 281 _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-_\b2_\b8_\b2 array[i] = _\bg_\bh_\bo_\bs_\bt_\b__\bs_\bt_\ba_\br_\bt_\b__\bi_\bn_\bd_\be_\bx + i;\n+_\b2_\b8_\b2 array[i] = ghost_start_index + i;\n 283 }\n 284\n-285 _\bi_\be_\br_\br = _\bV_\be_\bc_\bR_\be_\bs_\bt_\bo_\br_\be_\bA_\br_\br_\ba_\by(_\bt_\bv_\be_\bc_\bt_\bo_\br, &array);\n-286 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-287 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bU_\bp_\bd_\ba_\bt_\be_\bB_\be_\bg_\bi_\bn(_\bt_\bv_\be_\bc_\bt_\bo_\br, _\bI_\bN_\bS_\bE_\bR_\bT_\b__\bV_\bA_\bL_\bU_\bE_\bS, _\bS_\bC_\bA_\bT_\bT_\bE_\bR_\b__\bF_\bO_\bR_\bW_\bA_\bR_\bD);\n-288 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-289 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bU_\bp_\bd_\ba_\bt_\be_\bE_\bn_\bd(_\bt_\bv_\be_\bc_\bt_\bo_\br, _\bI_\bN_\bS_\bE_\bR_\bT_\b__\bV_\bA_\bL_\bU_\bE_\bS, _\bS_\bC_\bA_\bT_\bT_\bE_\bR_\b__\bF_\bO_\bR_\bW_\bA_\bR_\bD);\n-290 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-291 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bG_\be_\bt_\bL_\bo_\bc_\ba_\bl_\bF_\bo_\br_\bm(_\bt_\bv_\be_\bc_\bt_\bo_\br, &_\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc);\n-292 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-293 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bL_\bo_\bc_\ba_\bl_\bS_\bi_\bz_\be(_\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc, &_\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\bl_\bo_\bc_\ba_\bl_\bl_\by);\n-294 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-295 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc, (const PetscScalar **)&array);\n-296 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+285 ierr = VecRestoreArray(tvector, &array);\n+286 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+287 ierr = VecGhostUpdateBegin(tvector, INSERT_VALUES, SCATTER_FORWARD);\n+288 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+289 ierr = VecGhostUpdateEnd(tvector, INSERT_VALUES, SCATTER_FORWARD);\n+290 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+291 ierr = VecGhostGetLocalForm(tvector, &ghosted_vec);\n+292 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+293 ierr = VecGetLocalSize(ghosted_vec, &n_elements_stored_locally);\n+294 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+295 ierr = VecGetArrayRead(ghosted_vec, (const PetscScalar **)&array);\n+296 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 297\n 298 // Populate the 'ghosted' flag and the ghost_indices variable. The\n 299 // latter is an index set that is most efficiently filled by\n 300 // sorting the indices to add. At the same time, we don't want to\n 301 // sort the indices stored in a PETSc-owned array; so if the array\n 302 // is already sorted, pass that to the IndexSet variable, and if\n 303 // not then copy the indices, sort them, and then add those.\n 304 _\bg_\bh_\bo_\bs_\bt_\be_\bd = true;\n 305 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs._\bs_\be_\bt_\b__\bs_\bi_\bz_\be(this->_\bs_\bi_\bz_\be());\n 306\n-307 _\bC_\bo_\bn_\bv_\be_\br_\bt_\bi_\bn_\bg_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b<_\bP_\be_\bt_\bs_\bc_\bS_\bc_\ba_\bl_\ba_\br_\b _\b*_\b,_\b _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx_\b> _\bb_\be_\bg_\bi_\bn_\b__\bg_\bh_\bo_\bs_\bt_\bs(\n-308 &array[_\be_\bn_\bd_\b__\bi_\bn_\bd_\be_\bx - _\bg_\bh_\bo_\bs_\bt_\b__\bs_\bt_\ba_\br_\bt_\b__\bi_\bn_\bd_\be_\bx]);\n-309 _\bC_\bo_\bn_\bv_\be_\br_\bt_\bi_\bn_\bg_\bI_\bt_\be_\br_\ba_\bt_\bo_\br_\b<_\bP_\be_\bt_\bs_\bc_\bS_\bc_\ba_\bl_\ba_\br_\b _\b*_\b,_\b _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx_\b> _\be_\bn_\bd_\b__\bg_\bh_\bo_\bs_\bt_\bs(\n-310 &array[_\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\bl_\bo_\bc_\ba_\bl_\bl_\by]);\n-311 if (std::is_sorted(&array[_\be_\bn_\bd_\b__\bi_\bn_\bd_\be_\bx - _\bg_\bh_\bo_\bs_\bt_\b__\bs_\bt_\ba_\br_\bt_\b__\bi_\bn_\bd_\be_\bx],\n-312 &array[_\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\bl_\bo_\bc_\ba_\bl_\bl_\by],\n+307 ConvertingIterator begin_ghosts(\n+308 &array[end_index - ghost_start_index]);\n+309 ConvertingIterator end_ghosts(\n+310 &array[n_elements_stored_locally]);\n+311 if (std::is_sorted(&array[end_index - ghost_start_index],\n+312 &array[n_elements_stored_locally],\n 313 [](PetscScalar left, PetscScalar right) {\n 314 return static_cast(std::real(left)) <\n 315 static_cast(std::real(right));\n 316 }))\n 317 {\n-318 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs._\ba_\bd_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(_\bb_\be_\bg_\bi_\bn_\b__\bg_\bh_\bo_\bs_\bt_\bs, _\be_\bn_\bd_\b__\bg_\bh_\bo_\bs_\bt_\bs);\n+318 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs._\ba_\bd_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(begin_ghosts, end_ghosts);\n 319 }\n 320 else\n 321 {\n-322 std::vector _\bs_\bo_\br_\bt_\be_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(_\bb_\be_\bg_\bi_\bn_\b__\bg_\bh_\bo_\bs_\bt_\bs, _\be_\bn_\bd_\b__\bg_\bh_\bo_\bs_\bt_\bs);\n-323 std::sort(_\bs_\bo_\br_\bt_\be_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs.begin(), _\bs_\bo_\br_\bt_\be_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs.end());\n-324 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs._\ba_\bd_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(_\bs_\bo_\br_\bt_\be_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs.begin(),\n-325 _\bs_\bo_\br_\bt_\be_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs.end());\n+322 std::vector sorted_indices(begin_ghosts, end_ghosts);\n+323 std::sort(sorted_indices.begin(), sorted_indices.end());\n+324 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs._\ba_\bd_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(sorted_indices.begin(),\n+325 sorted_indices.end());\n 326 }\n 327 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs._\bc_\bo_\bm_\bp_\br_\be_\bs_\bs();\n 328\n-329 _\bi_\be_\br_\br = _\bV_\be_\bc_\bR_\be_\bs_\bt_\bo_\br_\be_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc, (const PetscScalar **)&array);\n-330 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-331 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bR_\be_\bs_\bt_\bo_\br_\be_\bL_\bo_\bc_\ba_\bl_\bF_\bo_\br_\bm(_\bt_\bv_\be_\bc_\bt_\bo_\br, &_\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc);\n-332 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-333 _\bi_\be_\br_\br = _\bV_\be_\bc_\bD_\be_\bs_\bt_\br_\bo_\by(&_\bt_\bv_\be_\bc_\bt_\bo_\br);\n-334 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+329 ierr = VecRestoreArrayRead(ghosted_vec, (const PetscScalar **)&array);\n+330 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+331 ierr = VecGhostRestoreLocalForm(tvector, &ghosted_vec);\n+332 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+333 ierr = VecDestroy(&tvector);\n+334 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 335 }\n 336 else\n 337 {\n-_\b3_\b3_\b8 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bR_\be_\bs_\bt_\bo_\br_\be_\bL_\bo_\bc_\ba_\bl_\bF_\bo_\br_\bm(_\bv_\be_\bc_\bt_\bo_\br, &_\bg_\bh_\bo_\bs_\bt_\be_\bd_\b__\bv_\be_\bc);\n-339 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+_\b3_\b3_\b8 ierr = VecGhostRestoreLocalForm(_\bv_\be_\bc_\bt_\bo_\br, &ghosted_vec);\n+339 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 340 }\n 341 }\n 342\n 343\n 344 void\n _\b3_\b4_\b5 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bc_\bl_\be_\ba_\br()\n 346 {\n-347 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bD_\be_\bs_\bt_\br_\bo_\by(&_\bv_\be_\bc_\bt_\bo_\br);\n-348 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+347 const PetscErrorCode ierr = VecDestroy(&_\bv_\be_\bc_\bt_\bo_\br);\n+348 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 349\n 350 _\bg_\bh_\bo_\bs_\bt_\be_\bd = false;\n 351 _\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs._\bc_\bl_\be_\ba_\br();\n 352 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bu_\bn_\bk_\bn_\bo_\bw_\bn;\n 353 }\n 354\n 355\n 356\n 357 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\n _\b3_\b5_\b8 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n 359 {\n 360 _\bA_\bs_\bs_\be_\br_\bt(_\bs_\bi_\bz_\be() == v._\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), v._\bs_\bi_\bz_\be()));\n 361\n-362 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bC_\bo_\bp_\by(v, _\bv_\be_\bc_\bt_\bo_\br);\n-363 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+362 PetscErrorCode ierr = VecCopy(v, _\bv_\be_\bc_\bt_\bo_\br);\n+363 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 364\n 365 return *this;\n 366 }\n 367\n 368\n 369\n 370 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\n _\b3_\b7_\b1 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=(const PetscScalar s)\n 372 {\n 373 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(s);\n 374\n 375 // TODO[TH]: assert(is_compressed())\n 376\n-377 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bS_\be_\bt(_\bv_\be_\bc_\bt_\bo_\br, s);\n-378 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+377 PetscErrorCode ierr = VecSet(_\bv_\be_\bc_\bt_\bo_\br, s);\n+378 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 379\n 380 if (_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs())\n 381 {\n 382 Vec ghost = nullptr;\n-383 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bG_\be_\bt_\bL_\bo_\bc_\ba_\bl_\bF_\bo_\br_\bm(_\bv_\be_\bc_\bt_\bo_\br, &ghost);\n-384 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+383 ierr = VecGhostGetLocalForm(_\bv_\be_\bc_\bt_\bo_\br, &ghost);\n+384 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 385\n-386 _\bi_\be_\br_\br = _\bV_\be_\bc_\bS_\be_\bt(ghost, s);\n-387 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+386 ierr = VecSet(ghost, s);\n+387 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 388\n-389 _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\bh_\bo_\bs_\bt_\bR_\be_\bs_\bt_\bo_\br_\be_\bL_\bo_\bc_\ba_\bl_\bF_\bo_\br_\bm(_\bv_\be_\bc_\bt_\bo_\br, &ghost);\n-390 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+389 ierr = VecGhostRestoreLocalForm(_\bv_\be_\bc_\bt_\bo_\br, &ghost);\n+390 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 391 }\n 392\n 393 return *this;\n 394 }\n 395\n 396\n 397\n 398 bool\n _\b3_\b9_\b9 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b=(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) const\n 400 {\n 401 _\bA_\bs_\bs_\be_\br_\bt(_\bs_\bi_\bz_\be() == v._\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), v._\bs_\bi_\bz_\be()));\n 402\n-403 _\bP_\be_\bt_\bs_\bc_\bB_\bo_\bo_\bl flag;\n-404 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bE_\bq_\bu_\ba_\bl(_\bv_\be_\bc_\bt_\bo_\br, v._\bv_\be_\bc_\bt_\bo_\br, &flag);\n-405 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+403 PetscBool flag;\n+404 const PetscErrorCode ierr = VecEqual(_\bv_\be_\bc_\bt_\bo_\br, v._\bv_\be_\bc_\bt_\bo_\br, &flag);\n+405 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 406\n-407 return (flag == _\bP_\bE_\bT_\bS_\bC_\b__\bT_\bR_\bU_\bE);\n+407 return (flag == PETSC_TRUE);\n 408 }\n 409\n 410\n 411\n 412 bool\n _\b4_\b1_\b3 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b!_\b=(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) const\n 414 {\n 415 _\bA_\bs_\bs_\be_\br_\bt(_\bs_\bi_\bz_\be() == v._\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), v._\bs_\bi_\bz_\be()));\n 416\n-417 _\bP_\be_\bt_\bs_\bc_\bB_\bo_\bo_\bl flag;\n-418 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bE_\bq_\bu_\ba_\bl(_\bv_\be_\bc_\bt_\bo_\br, v._\bv_\be_\bc_\bt_\bo_\br, &flag);\n-419 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+417 PetscBool flag;\n+418 const PetscErrorCode ierr = VecEqual(_\bv_\be_\bc_\bt_\bo_\br, v._\bv_\be_\bc_\bt_\bo_\br, &flag);\n+419 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 420\n-421 return (flag == _\bP_\bE_\bT_\bS_\bC_\b__\bF_\bA_\bL_\bS_\bE);\n+421 return (flag == PETSC_FALSE);\n 422 }\n 423\n 424\n 425\n 426 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n _\b4_\b2_\b7 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bs_\bi_\bz_\be() const\n 428 {\n-429 PetscInt _\bs_\bz;\n-430 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bS_\bi_\bz_\be(_\bv_\be_\bc_\bt_\bo_\br, &_\bs_\bz);\n-431 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+429 PetscInt sz;\n+430 const PetscErrorCode ierr = VecGetSize(_\bv_\be_\bc_\bt_\bo_\br, &sz);\n+431 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 432\n-433 return _\bs_\bz;\n+433 return sz;\n 434 }\n 435\n 436\n 437\n 438 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n _\b4_\b3_\b9 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be() const\n 440 {\n-441 PetscInt _\bs_\bz;\n-442 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bL_\bo_\bc_\ba_\bl_\bS_\bi_\bz_\be(_\bv_\be_\bc_\bt_\bo_\br, &_\bs_\bz);\n-443 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+441 PetscInt sz;\n+442 const PetscErrorCode ierr = VecGetLocalSize(_\bv_\be_\bc_\bt_\bo_\br, &sz);\n+443 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 444\n-445 return _\bs_\bz;\n+445 return sz;\n 446 }\n 447\n 448\n 449\n 450 std::pair\n _\b4_\b5_\b1 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be() const\n 452 {\n 453 PetscInt begin, end;\n-454 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br =\n-455 _\bV_\be_\bc_\bG_\be_\bt_\bO_\bw_\bn_\be_\br_\bs_\bh_\bi_\bp_\bR_\ba_\bn_\bg_\be(static_cast(_\bv_\be_\bc_\bt_\bo_\br), &begin, &end);\n-456 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+454 const PetscErrorCode ierr =\n+455 VecGetOwnershipRange(static_cast(_\bv_\be_\bc_\bt_\bo_\br), &begin, &end);\n+456 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 457\n 458 return std::make_pair(begin, end);\n 459 }\n 460\n 461\n 462\n 463 void\n@@ -514,29 +514,29 @@\n 502 }\n 503\n 504\n 505\n 506 PetscScalar\n _\b5_\b0_\b7 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &vec) const\n 508 {\n-509 _\bA_\bs_\bs_\be_\br_\bt(_\bs_\bi_\bz_\be() == _\bv_\be_\bc.size(), _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), _\bv_\be_\bc.size()));\n+509 _\bA_\bs_\bs_\be_\br_\bt(_\bs_\bi_\bz_\be() == vec._\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), vec._\bs_\bi_\bz_\be()));\n 510\n-511 PetscScalar _\br_\be_\bs_\bu_\bl_\bt;\n+511 PetscScalar result;\n 512\n 513 // For complex vectors, VecDot() computes\n 514 // val = (x,y) = y^H x,\n 515 // where y^H denotes the conjugate transpose of y.\n 516 // Note that this corresponds to the usual \"mathematicians'\"\n 517 // complex inner product where the SECOND argument gets the\n 518 // complex conjugate, which is also how we document this\n 519 // operation.\n-520 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bD_\bo_\bt(_\bv_\be_\bc.vector, _\bv_\be_\bc_\bt_\bo_\br, &_\br_\be_\bs_\bu_\bl_\bt);\n-521 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+520 const PetscErrorCode ierr = VecDot(vec._\bv_\be_\bc_\bt_\bo_\br, _\bv_\be_\bc_\bt_\bo_\br, &result);\n+521 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 522\n-523 return _\br_\be_\bs_\bu_\bl_\bt;\n+523 return result;\n 524 }\n 525\n 526\n 527\n 528 PetscScalar\n _\b5_\b2_\b9 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\ba_\bd_\bd_\b__\ba_\bn_\bd_\b__\bd_\bo_\bt(const PetscScalar a,\n 530 const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V,\n@@ -558,26 +558,26 @@\n 546 \"not make sense to call compress() for such \"\n 547 \"vectors.\"));\n 548\n 549 {\n 550# ifdef DEBUG\n 551 // Check that all processors agree that last_action is the same (or none!)\n 552\n-553 int _\bm_\by_\b__\bi_\bn_\bt_\b__\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn;\n-554 int _\ba_\bl_\bl_\b__\bi_\bn_\bt_\b__\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn;\n+553 int my_int_last_action = _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn;\n+554 int all_int_last_action;\n 555\n-556 const int _\bi_\be_\br_\br = _\bM_\bP_\bI_\b__\bA_\bl_\bl_\br_\be_\bd_\bu_\bc_\be(&_\bm_\by_\b__\bi_\bn_\bt_\b__\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn,\n-557 &_\ba_\bl_\bl_\b__\bi_\bn_\bt_\b__\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn,\n+556 const int ierr = MPI_Allreduce(&my_int_last_action,\n+557 &all_int_last_action,\n 558 1,\n-559 _\bM_\bP_\bI_\b__\bI_\bN_\bT,\n-560 _\bM_\bP_\bI_\b__\bB_\bO_\bR,\n+559 MPI_INT,\n+560 MPI_BOR,\n 561 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br());\n-562 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw_\bM_\bP_\bI(_\bi_\be_\br_\br);\n+562 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw_\bM_\bP_\bI(ierr);\n 563\n-564 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\ba_\bl_\bl_\b__\bi_\bn_\bt_\b__\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn !=\n+564 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(all_int_last_action !=\n 565 (_\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\ba_\bd_\bd | _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bi_\bn_\bs_\be_\br_\bt),\n 566 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\"Error: not all processors agree on the last \"\n 567 \"VectorOperation before this compress() call.\"));\n 568# endif\n 569 }\n 570\n 571 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(\n@@ -595,18 +595,18 @@\n 583 // situations where only one\n 584 // processor (or a subset of\n 585 // processors) actually writes\n 586 // something into a vector, but\n 587 // we still need to call\n 588 // VecAssemblyBegin/End on all\n 589 // processors.\n-590 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bA_\bs_\bs_\be_\bm_\bb_\bl_\by_\bB_\be_\bg_\bi_\bn(_\bv_\be_\bc_\bt_\bo_\br);\n-591 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-592 _\bi_\be_\br_\br = _\bV_\be_\bc_\bA_\bs_\bs_\be_\bm_\bb_\bl_\by_\bE_\bn_\bd(_\bv_\be_\bc_\bt_\bo_\br);\n-593 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+590 PetscErrorCode ierr = VecAssemblyBegin(_\bv_\be_\bc_\bt_\bo_\br);\n+591 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+592 ierr = VecAssemblyEnd(_\bv_\be_\bc_\bt_\bo_\br);\n+593 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 594\n 595 // reset the last action field to\n 596 // indicate that we're back to a\n 597 // pristine state\n 598 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bu_\bn_\bk_\bn_\bo_\bw_\bn;\n 599 }\n 600\n@@ -625,164 +625,164 @@\n _\b6_\b1_\b3 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be() const\n 614 {\n 615 // We can only use our more efficient\n 616 // routine in the serial case.\n 617 if (dynamic_cast(this) != nullptr)\n 618 {\n 619 PetscScalar sum;\n-620 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bS_\bu_\bm(_\bv_\be_\bc_\bt_\bo_\br, &sum);\n-621 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+620 const PetscErrorCode ierr = VecSum(_\bv_\be_\bc_\bt_\bo_\br, &sum);\n+621 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 622 return sum / static_cast(_\bs_\bi_\bz_\be());\n 623 }\n 624\n 625 // get a representation of the vector and\n 626 // loop over all the elements\n-627 const PetscScalar *_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br;\n-628 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bv_\be_\bc_\bt_\bo_\br, &_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br);\n-629 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+627 const PetscScalar *start_ptr;\n+628 PetscErrorCode ierr = VecGetArrayRead(_\bv_\be_\bc_\bt_\bo_\br, &start_ptr);\n+629 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 630\n 631 PetscScalar mean = 0;\n 632 {\n-633 PetscScalar _\bs_\bu_\bm_\b0 = 0, _\bs_\bu_\bm_\b1 = 0, _\bs_\bu_\bm_\b2 = 0, _\bs_\bu_\bm_\b3 = 0;\n+633 PetscScalar sum0 = 0, sum1 = 0, sum2 = 0, sum3 = 0;\n 634\n 635 // use modern processors better by\n 636 // allowing pipelined commands to be\n 637 // executed in parallel\n-638 const PetscScalar *ptr = _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br;\n-639 const PetscScalar *_\be_\bp_\bt_\br = ptr + (_\bs_\bi_\bz_\be() / 4) * 4;\n-640 while (ptr != _\be_\bp_\bt_\br)\n+638 const PetscScalar *ptr = start_ptr;\n+639 const PetscScalar *eptr = ptr + (_\bs_\bi_\bz_\be() / 4) * 4;\n+640 while (ptr != eptr)\n 641 {\n-642 _\bs_\bu_\bm_\b0 += *ptr++;\n-643 _\bs_\bu_\bm_\b1 += *ptr++;\n-644 _\bs_\bu_\bm_\b2 += *ptr++;\n-645 _\bs_\bu_\bm_\b3 += *ptr++;\n+642 sum0 += *ptr++;\n+643 sum1 += *ptr++;\n+644 sum2 += *ptr++;\n+645 sum3 += *ptr++;\n 646 }\n 647 // add up remaining elements\n-648 while (ptr != _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br + _\bs_\bi_\bz_\be())\n-649 _\bs_\bu_\bm_\b0 += *ptr++;\n+648 while (ptr != start_ptr + _\bs_\bi_\bz_\be())\n+649 sum0 += *ptr++;\n 650\n-651 mean = (_\bs_\bu_\bm_\b0 + _\bs_\bu_\bm_\b1 + _\bs_\bu_\bm_\b2 + _\bs_\bu_\bm_\b3) / static_cast(_\bs_\bi_\bz_\be());\n+651 mean = (sum0 + sum1 + sum2 + sum3) / static_cast(_\bs_\bi_\bz_\be());\n 652 }\n 653\n 654 // restore the representation of the\n 655 // vector\n-656 _\bi_\be_\br_\br = _\bV_\be_\bc_\bR_\be_\bs_\bt_\bo_\br_\be_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bv_\be_\bc_\bt_\bo_\br, &_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br);\n-657 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+656 ierr = VecRestoreArrayRead(_\bv_\be_\bc_\bt_\bo_\br, &start_ptr);\n+657 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 658\n 659 return mean;\n 660 }\n 661\n 662\n 663 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\n _\b6_\b6_\b4 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bl_\b1_\b__\bn_\bo_\br_\bm() const\n 665 {\n 666 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be d;\n 667\n-668 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bN_\bo_\br_\bm(_\bv_\be_\bc_\bt_\bo_\br, _\bN_\bO_\bR_\bM_\b__\b1, &d);\n-669 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+668 const PetscErrorCode ierr = VecNorm(_\bv_\be_\bc_\bt_\bo_\br, NORM_1, &d);\n+669 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 670\n 671 return d;\n 672 }\n 673\n 674\n 675\n 676 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\n _\b6_\b7_\b7 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bl_\b2_\b__\bn_\bo_\br_\bm() const\n 678 {\n 679 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be d;\n 680\n-681 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bN_\bo_\br_\bm(_\bv_\be_\bc_\bt_\bo_\br, _\bN_\bO_\bR_\bM_\b__\b2, &d);\n-682 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+681 const PetscErrorCode ierr = VecNorm(_\bv_\be_\bc_\bt_\bo_\br, NORM_2, &d);\n+682 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 683\n 684 return d;\n 685 }\n 686\n 687\n 688\n 689 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\n _\b6_\b9_\b0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bl_\bp_\b__\bn_\bo_\br_\bm(const _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be p) const\n 691 {\n 692 // get a representation of the vector and\n 693 // loop over all the elements\n-694 const PetscScalar *_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br;\n-695 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bv_\be_\bc_\bt_\bo_\br, &_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br);\n-696 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+694 const PetscScalar *start_ptr;\n+695 PetscErrorCode ierr = VecGetArrayRead(_\bv_\be_\bc_\bt_\bo_\br, &start_ptr);\n+696 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 697\n 698 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be norm = 0;\n 699 {\n-700 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be _\bs_\bu_\bm_\b0 = 0, _\bs_\bu_\bm_\b1 = 0, _\bs_\bu_\bm_\b2 = 0, _\bs_\bu_\bm_\b3 = 0;\n+700 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be sum0 = 0, sum1 = 0, sum2 = 0, sum3 = 0;\n 701\n 702 // use modern processors better by\n 703 // allowing pipelined commands to be\n 704 // executed in parallel\n-705 const PetscScalar *ptr = _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br;\n-706 const PetscScalar *_\be_\bp_\bt_\br = ptr + (_\bs_\bi_\bz_\be() / 4) * 4;\n-707 while (ptr != _\be_\bp_\bt_\br)\n+705 const PetscScalar *ptr = start_ptr;\n+706 const PetscScalar *eptr = ptr + (_\bs_\bi_\bz_\be() / 4) * 4;\n+707 while (ptr != eptr)\n 708 {\n-709 _\bs_\bu_\bm_\b0 += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs_\b<_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be_\b>_\b:_\b:_\ba_\bb_\bs(*ptr++), p);\n-710 _\bs_\bu_\bm_\b1 += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs_\b<_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be_\b>_\b:_\b:_\ba_\bb_\bs(*ptr++), p);\n-711 _\bs_\bu_\bm_\b2 += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs_\b<_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be_\b>_\b:_\b:_\ba_\bb_\bs(*ptr++), p);\n-712 _\bs_\bu_\bm_\b3 += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs_\b<_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be_\b>_\b:_\b:_\ba_\bb_\bs(*ptr++), p);\n+709 sum0 += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs_\b<_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be_\b>_\b:_\b:_\ba_\bb_\bs(*ptr++), p);\n+710 sum1 += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs_\b<_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be_\b>_\b:_\b:_\ba_\bb_\bs(*ptr++), p);\n+711 sum2 += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs_\b<_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be_\b>_\b:_\b:_\ba_\bb_\bs(*ptr++), p);\n+712 sum3 += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs_\b<_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be_\b>_\b:_\b:_\ba_\bb_\bs(*ptr++), p);\n 713 }\n 714 // add up remaining elements\n-715 while (ptr != _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br + _\bs_\bi_\bz_\be())\n-716 _\bs_\bu_\bm_\b0 += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs_\b<_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be_\b>_\b:_\b:_\ba_\bb_\bs(*ptr++), p);\n+715 while (ptr != start_ptr + _\bs_\bi_\bz_\be())\n+716 sum0 += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bn_\bu_\bm_\bb_\be_\br_\bs_\b:_\b:_\bN_\bu_\bm_\bb_\be_\br_\bT_\br_\ba_\bi_\bt_\bs_\b<_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be_\b>_\b:_\b:_\ba_\bb_\bs(*ptr++), p);\n 717\n-718 norm = _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(_\bs_\bu_\bm_\b0 + _\bs_\bu_\bm_\b1 + _\bs_\bu_\bm_\b2 + _\bs_\bu_\bm_\b3, 1. / p);\n+718 norm = _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(sum0 + sum1 + sum2 + sum3, 1. / p);\n 719 }\n 720\n 721 // restore the representation of the\n 722 // vector\n-723 _\bi_\be_\br_\br = _\bV_\be_\bc_\bR_\be_\bs_\bt_\bo_\br_\be_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bv_\be_\bc_\bt_\bo_\br, &_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br);\n-724 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+723 ierr = VecRestoreArrayRead(_\bv_\be_\bc_\bt_\bo_\br, &start_ptr);\n+724 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 725\n 726 return norm;\n 727 }\n 728\n 729\n 730\n 731 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\n _\b7_\b3_\b2 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm() const\n 733 {\n 734 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be d;\n 735\n-736 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bN_\bo_\br_\bm(_\bv_\be_\bc_\bt_\bo_\br, _\bN_\bO_\bR_\bM_\b__\bI_\bN_\bF_\bI_\bN_\bI_\bT_\bY, &d);\n-737 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+736 const PetscErrorCode ierr = VecNorm(_\bv_\be_\bc_\bt_\bo_\br, NORM_INFINITY, &d);\n+737 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 738\n 739 return d;\n 740 }\n 741\n 742\n 743\n 744 bool\n _\b7_\b4_\b5 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\ba_\bl_\bl_\b__\bz_\be_\br_\bo() const\n 746 {\n 747 // get a representation of the vector and\n 748 // loop over all the elements\n-749 const PetscScalar *_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br;\n-750 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bv_\be_\bc_\bt_\bo_\br, &_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br);\n-751 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+749 const PetscScalar *start_ptr;\n+750 PetscErrorCode ierr = VecGetArrayRead(_\bv_\be_\bc_\bt_\bo_\br, &start_ptr);\n+751 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 752\n-753 const PetscScalar *ptr = _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br,\n-754 *_\be_\bp_\bt_\br = _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br + _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be();\n+753 const PetscScalar *ptr = start_ptr,\n+754 *eptr = start_ptr + _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be();\n 755 bool flag = true;\n-756 while (ptr != _\be_\bp_\bt_\br)\n+756 while (ptr != eptr)\n 757 {\n 758 if (*ptr != _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be())\n 759 {\n 760 flag = false;\n 761 break;\n 762 }\n 763 ++ptr;\n 764 }\n 765\n 766 // restore the representation of the\n 767 // vector\n-768 _\bi_\be_\br_\br = _\bV_\be_\bc_\bR_\be_\bs_\bt_\bo_\br_\be_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bv_\be_\bc_\bt_\bo_\br, &_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br);\n-769 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+768 ierr = VecRestoreArrayRead(_\bv_\be_\bc_\bt_\bo_\br, &start_ptr);\n+769 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 770\n 771 return flag;\n 772 }\n 773\n 774\n 775 namespace _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl\n 776 {\n@@ -810,16 +810,16 @@\n 798\n 799 VectorBase &\n _\b8_\b0_\b0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b=(const PetscScalar a)\n 801 {\n 802 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 803 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 804\n-805 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bS_\bc_\ba_\bl_\be(_\bv_\be_\bc_\bt_\bo_\br, a);\n-806 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+805 const PetscErrorCode ierr = VecScale(_\bv_\be_\bc_\bt_\bo_\br, a);\n+806 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 807\n 808 return *this;\n 809 }\n 810\n 811\n 812\n 813 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\n@@ -827,66 +827,66 @@\n 815 {\n 816 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 817 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 818\n 819 const PetscScalar factor = 1. / a;\n 820 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(factor);\n 821\n-822 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bS_\bc_\ba_\bl_\be(_\bv_\be_\bc_\bt_\bo_\br, factor);\n-823 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+822 const PetscErrorCode ierr = VecScale(_\bv_\be_\bc_\bt_\bo_\br, factor);\n+823 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 824\n 825 return *this;\n 826 }\n 827\n 828\n 829\n 830 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\n _\b8_\b3_\b1 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b=(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n 832 {\n 833 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n-834 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bA_\bX_\bP_\bY(_\bv_\be_\bc_\bt_\bo_\br, 1, v);\n-835 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+834 const PetscErrorCode ierr = VecAXPY(_\bv_\be_\bc_\bt_\bo_\br, 1, v);\n+835 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 836\n 837 return *this;\n 838 }\n 839\n 840\n 841\n 842 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &\n _\b8_\b4_\b3 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b=(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n 844 {\n 845 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n-846 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bA_\bX_\bP_\bY(_\bv_\be_\bc_\bt_\bo_\br, -1, v);\n-847 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+846 const PetscErrorCode ierr = VecAXPY(_\bv_\be_\bc_\bt_\bo_\br, -1, v);\n+847 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 848\n 849 return *this;\n 850 }\n 851\n 852\n 853\n 854 void\n _\b8_\b5_\b5 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\ba_\bd_\bd(const PetscScalar s)\n 856 {\n 857 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 858 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(s);\n 859\n-860 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bS_\bh_\bi_\bf_\bt(_\bv_\be_\bc_\bt_\bo_\br, s);\n-861 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+860 const PetscErrorCode ierr = VecShift(_\bv_\be_\bc_\bt_\bo_\br, s);\n+861 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 862 }\n 863\n 864\n 865\n 866 void\n _\b8_\b6_\b7 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\ba_\bd_\bd(const PetscScalar a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n 868 {\n 869 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 870 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 871\n-872 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bA_\bX_\bP_\bY(_\bv_\be_\bc_\bt_\bo_\br, a, v);\n-873 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+872 const PetscErrorCode ierr = VecAXPY(_\bv_\be_\bc_\bt_\bo_\br, a, v);\n+873 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 874 }\n 875\n 876\n 877\n 878 void\n _\b8_\b7_\b9 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\ba_\bd_\bd(const PetscScalar a,\n 880 const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v,\n@@ -894,30 +894,30 @@\n 882 const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &w)\n 883 {\n 884 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 885 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 886 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(b);\n 887\n 888 const PetscScalar weights[2] = {a, b};\n-889 Vec _\ba_\bd_\bd_\be_\bn_\bd_\bs[2] = {v._\bv_\be_\bc_\bt_\bo_\br, w.vector};\n+889 Vec addends[2] = {v._\bv_\be_\bc_\bt_\bo_\br, w.vector};\n 890\n-891 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bM_\bA_\bX_\bP_\bY(_\bv_\be_\bc_\bt_\bo_\br, 2, weights, _\ba_\bd_\bd_\be_\bn_\bd_\bs);\n-892 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+891 const PetscErrorCode ierr = VecMAXPY(_\bv_\be_\bc_\bt_\bo_\br, 2, weights, addends);\n+892 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 893 }\n 894\n 895\n 896\n 897 void\n _\b8_\b9_\b8 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bs_\ba_\bd_\bd(const PetscScalar s, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n 899 {\n 900 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 901 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(s);\n 902\n-903 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bA_\bY_\bP_\bX(_\bv_\be_\bc_\bt_\bo_\br, s, v);\n-904 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+903 const PetscErrorCode ierr = VecAYPX(_\bv_\be_\bc_\bt_\bo_\br, s, v);\n+904 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 905 }\n 906\n 907\n 908\n 909 void\n _\b9_\b1_\b0 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bs_\ba_\bd_\bd(const PetscScalar s,\n 911 const PetscScalar a,\n@@ -936,50 +936,50 @@\n 924\n 925\n 926\n 927 void\n _\b9_\b2_\b8 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &factors)\n 929 {\n 930 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n-931 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bP_\bo_\bi_\bn_\bt_\bw_\bi_\bs_\be_\bM_\bu_\bl_\bt(_\bv_\be_\bc_\bt_\bo_\br, factors, _\bv_\be_\bc_\bt_\bo_\br);\n-932 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+931 const PetscErrorCode ierr = VecPointwiseMult(_\bv_\be_\bc_\bt_\bo_\br, factors, _\bv_\be_\bc_\bt_\bo_\br);\n+932 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 933 }\n 934\n 935\n 936\n 937 void\n _\b9_\b3_\b8 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\be_\bq_\bu(const PetscScalar a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v)\n 939 {\n 940 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 941 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 942\n 943 _\bA_\bs_\bs_\be_\br_\bt(_\bs_\bi_\bz_\be() == v._\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), v._\bs_\bi_\bz_\be()));\n 944\n-945 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bA_\bX_\bP_\bB_\bY(_\bv_\be_\bc_\bt_\bo_\br, a, 0.0, v._\bv_\be_\bc_\bt_\bo_\br);\n-946 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+945 const PetscErrorCode ierr = VecAXPBY(_\bv_\be_\bc_\bt_\bo_\br, a, 0.0, v._\bv_\be_\bc_\bt_\bo_\br);\n+946 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 947 }\n 948\n 949\n 950\n 951 void\n _\b9_\b5_\b2 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bw_\br_\bi_\bt_\be_\b__\ba_\bs_\bc_\bi_\bi(const PetscViewerFormat format)\n 953 {\n 954 // TODO[TH]:assert(is_compressed())\n-955 _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm comm = _\bP_\be_\bt_\bs_\bc_\bO_\bb_\bj_\be_\bc_\bt_\bC_\bo_\bm_\bm((_\bP_\be_\bt_\bs_\bc_\bO_\bb_\bj_\be_\bc_\bt)_\bv_\be_\bc_\bt_\bo_\br);\n+955 _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm comm = PetscObjectComm((PetscObject)_\bv_\be_\bc_\bt_\bo_\br);\n 956\n 957 // Set options\n-958 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br =\n-959 _\bP_\be_\bt_\bs_\bc_\bV_\bi_\be_\bw_\be_\br_\bP_\bu_\bs_\bh_\bF_\bo_\br_\bm_\ba_\bt(_\bP_\bE_\bT_\bS_\bC_\b__\bV_\bI_\bE_\bW_\bE_\bR_\b__\bS_\bT_\bD_\bO_\bU_\bT_\b_(comm), _\bf_\bo_\br_\bm_\ba_\bt);\n-960 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+958 PetscErrorCode ierr =\n+959 PetscViewerPushFormat(PETSC_VIEWER_STDOUT_(comm), format);\n+960 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 961\n 962 // Write to screen\n-963 _\bi_\be_\br_\br = _\bV_\be_\bc_\bV_\bi_\be_\bw(_\bv_\be_\bc_\bt_\bo_\br, _\bP_\bE_\bT_\bS_\bC_\b__\bV_\bI_\bE_\bW_\bE_\bR_\b__\bS_\bT_\bD_\bO_\bU_\bT_\b_(comm));\n-964 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-965 _\bi_\be_\br_\br = _\bP_\be_\bt_\bs_\bc_\bV_\bi_\be_\bw_\be_\br_\bP_\bo_\bp_\bF_\bo_\br_\bm_\ba_\bt(_\bP_\bE_\bT_\bS_\bC_\b__\bV_\bI_\bE_\bW_\bE_\bR_\b__\bS_\bT_\bD_\bO_\bU_\bT_\b_(comm));\n-966 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+963 ierr = VecView(_\bv_\be_\bc_\bt_\bo_\br, PETSC_VIEWER_STDOUT_(comm));\n+964 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n+965 ierr = PetscViewerPopFormat(PETSC_VIEWER_STDOUT_(comm));\n+966 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 967 }\n 968\n 969\n 970\n 971 void\n _\b9_\b7_\b2 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bp_\br_\bi_\bn_\bt(std::ostream &out,\n 973 const unsigned int precision,\n@@ -987,44 +987,44 @@\n 975 const bool across) const\n 976 {\n 977 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(out.fail() == false, _\bE_\bx_\bc_\bI_\bO());\n 978\n 979 // get a representation of the vector and\n 980 // loop over all the elements\n 981 const PetscScalar *val;\n-982 _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br = _\bV_\be_\bc_\bG_\be_\bt_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bv_\be_\bc_\bt_\bo_\br, &val);\n+982 PetscErrorCode ierr = VecGetArrayRead(_\bv_\be_\bc_\bt_\bo_\br, &val);\n 983\n-984 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+984 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 985\n 986 // save the state of out stream\n-987 const std::ios::fmtflags _\bo_\bl_\bd_\b__\bf_\bl_\ba_\bg_\bs = out.flags();\n-988 const unsigned int _\bo_\bl_\bd_\b__\bp_\br_\be_\bc_\bi_\bs_\bi_\bo_\bn = out.precision(precision);\n+987 const std::ios::fmtflags old_flags = out.flags();\n+988 const unsigned int old_precision = out.precision(precision);\n 989\n 990 out.precision(precision);\n 991 if (scientific)\n 992 out.setf(std::ios::scientific, std::ios::floatfield);\n 993 else\n 994 out.setf(std::ios::fixed, std::ios::floatfield);\n 995\n-996 if (_\ba_\bc_\br_\bo_\bs_\bs)\n+996 if (across)\n 997 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be(); ++i)\n 998 out << val[i] << ' ';\n 999 else\n 1000 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be(); ++i)\n 1001 out << val[i] << std::endl;\n 1002 out << std::endl;\n 1003\n 1004 // reset output format\n-1005 out.flags(_\bo_\bl_\bd_\b__\bf_\bl_\ba_\bg_\bs);\n-1006 out.precision(_\bo_\bl_\bd_\b__\bp_\br_\be_\bc_\bi_\bs_\bi_\bo_\bn);\n+1005 out.flags(old_flags);\n+1006 out.precision(old_precision);\n 1007\n 1008 // restore the representation of the\n 1009 // vector\n-1010 _\bi_\be_\br_\br = _\bV_\be_\bc_\bR_\be_\bs_\bt_\bo_\br_\be_\bA_\br_\br_\ba_\by_\bR_\be_\ba_\bd(_\bv_\be_\bc_\bt_\bo_\br, &val);\n-1011 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1010 ierr = VecRestoreArrayRead(_\bv_\be_\bc_\bt_\bo_\br, &val);\n+1011 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 1012\n 1013 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(out.fail() == false, _\bE_\bx_\bc_\bI_\bO());\n 1014 }\n 1015\n 1016\n 1017\n 1018 void\n@@ -1036,15 +1036,15 @@\n 1024 // missing swap for IndexSet\n 1025 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt t(this->ghost_indices);\n 1026 this->ghost_indices = v.ghost_indices;\n 1027 v.ghost_indices = t;\n 1028 }\n 1029\n 1030\n-_\b1_\b0_\b3_\b1 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br const Vec &() const\n+_\b1_\b0_\b3_\b1 VectorBase::operator const Vec &() const\n 1032 {\n 1033 return vector;\n 1034 }\n 1035\n 1036\n 1037 Vec &\n _\b1_\b0_\b3_\b8 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bp_\be_\bt_\bs_\bc_\b__\bv_\be_\bc_\bt_\bo_\br()\n@@ -1077,40 +1077,40 @@\n 1065\n 1066 void\n _\b1_\b0_\b6_\b7 _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bd_\bo_\b__\bs_\be_\bt_\b__\ba_\bd_\bd_\b__\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn(const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements,\n 1068 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices,\n 1069 const PetscScalar *values,\n 1070 const bool add_values)\n 1071 {\n-1072 _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs _\ba_\bc_\bt_\bi_\bo_\bn =\n-1073 (_\ba_\bd_\bd_\b__\bv_\ba_\bl_\bu_\be_\bs ? _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\ba_\bd_\bd : _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bi_\bn_\bs_\be_\br_\bt);\n-1074 _\bA_\bs_\bs_\be_\br_\bt((_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\ba_\bc_\bt_\bi_\bo_\bn) || (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:\n+1072 _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs action =\n+1073 (add_values ? _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\ba_\bd_\bd : _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bi_\bn_\bs_\be_\br_\bt);\n+1074 _\bA_\bs_\bs_\be_\br_\bt((_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == action) || (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:\n _\bu_\bn_\bk_\bn_\bo_\bw_\bn),\n-1075 internal::VectorReference::ExcWrongMode(_\ba_\bc_\bt_\bi_\bo_\bn, _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn));\n+1075 internal::VectorReference::ExcWrongMode(action, _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn));\n 1076 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 1077 // VecSetValues complains if we\n 1078 // come with an empty\n 1079 // vector. however, it is not a\n 1080 // collective operation, so we\n 1081 // can skip the call if necessary\n 1082 // (unlike the above calls)\n 1083 if (n_elements != 0)\n 1084 {\n-1085 const PetscInt *_\bp_\be_\bt_\bs_\bc_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs =\n+1085 const PetscInt *petsc_indices =\n 1086 reinterpret_cast(indices);\n 1087\n-1088 const _\bI_\bn_\bs_\be_\br_\bt_\bM_\bo_\bd_\be mode = (_\ba_\bd_\bd_\b__\bv_\ba_\bl_\bu_\be_\bs ? _\bA_\bD_\bD_\b__\bV_\bA_\bL_\bU_\bE_\bS : _\bI_\bN_\bS_\bE_\bR_\bT_\b__\bV_\bA_\bL_\bU_\bE_\bS);\n-1089 const _\bP_\be_\bt_\bs_\bc_\bE_\br_\br_\bo_\br_\bC_\bo_\bd_\be _\bi_\be_\br_\br =\n-1090 _\bV_\be_\bc_\bS_\be_\bt_\bV_\ba_\bl_\bu_\be_\bs(_\bv_\be_\bc_\bt_\bo_\br, n_elements, _\bp_\be_\bt_\bs_\bc_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs, values, mode);\n-1091 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1088 const InsertMode mode = (add_values ? ADD_VALUES : INSERT_VALUES);\n+1089 const PetscErrorCode ierr =\n+1090 VecSetValues(_\bv_\be_\bc_\bt_\bo_\br, n_elements, petsc_indices, values, mode);\n+1091 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bP_\bE_\bT_\bS_\bc_\bE_\br_\br_\bo_\br(ierr));\n 1092 }\n 1093\n 1094 // set the mode here, independent of whether we have actually\n 1095 // written elements or whether the list was empty\n-1096 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\ba_\bc_\bt_\bi_\bo_\bn;\n+1096 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = action;\n 1097 }\n 1098\n 1099} // namespace PETScWrappers\n 1100\n 1101_\bD_\bE_\bA_\bL_\b__\bI_\bI_\b__\bN_\bA_\bM_\bE_\bS_\bP_\bA_\bC_\bE_\b__\bC_\bL_\bO_\bS_\bE\n 1102\n 1103#endif // DEAL_II_WITH_PETSC\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector__base_8h_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/petsc__vector__base_8h_source.html", "unified_diff": "@@ -321,17 +321,17 @@\n
    488 virtual void
    \n \n \n
    491 ArrayView<PetscScalar> &elements) const override;
    \n
    492
    \n
    520 template <typename ForwardIterator, typename OutputIterator>
    \n
    521 void
    \n-\n-\n-\n+
    522 extract_subvector_to(const ForwardIterator indices_begin,
    \n+
    523 const ForwardIterator indices_end,
    \n+
    524 OutputIterator values_begin) const;
    \n
    525
    \n
    530 void
    \n
    531 add(const std::vector<size_type> &indices,
    \n
    532 const std::vector<PetscScalar> &values);
    \n
    533
    \n
    538 void
    \n
    539 add(const std::vector<size_type> &indices,
    \n@@ -339,15 +339,15 @@\n
    541
    \n
    547 void
    \n
    548 add(const size_type n_elements,
    \n
    549 const size_type *indices,
    \n
    550 const PetscScalar *values);
    \n
    551
    \n
    558 PetscScalar
    \n-
    559 operator*(const VectorBase &vec) const;
    \n+
    559 operator*(const VectorBase &vec) const;
    \n
    560
    \n \n
    565 norm_sqr() const;
    \n
    566
    \n
    570 PetscScalar
    \n
    571 mean_value() const;
    \n
    572
    \n@@ -396,44 +396,44 @@\n
    683 void
    \n
    684 sadd(const PetscScalar s, const VectorBase &V);
    \n
    685
    \n
    689 void
    \n
    690 sadd(const PetscScalar s, const PetscScalar a, const VectorBase &V);
    \n
    691
    \n
    697 void
    \n-\n+
    698 scale(const VectorBase &scaling_factors);
    \n
    699
    \n
    703 void
    \n
    704 equ(const PetscScalar a, const VectorBase &V);
    \n
    705
    \n
    713 void
    \n-\n+
    714 write_ascii(const PetscViewerFormat format = PETSC_VIEWER_DEFAULT);
    \n
    715
    \n
    723 void
    \n
    724 print(std::ostream &out,
    \n
    725 const unsigned int precision = 3,
    \n
    726 const bool scientific = true,
    \n-
    727 const bool across = true) const;
    \n+
    727 const bool across = true) const;
    \n
    728
    \n
    736 template <class Archive>
    \n
    737 void
    \n-
    738 save(Archive &ar, const unsigned int version) const;
    \n+
    738 save(Archive &ar, const unsigned int version) const;
    \n
    739
    \n
    745 template <class Archive>
    \n
    746 void
    \n-
    747 load(Archive &ar, const unsigned int version);
    \n+
    747 load(Archive &ar, const unsigned int version);
    \n
    748
    \n
    749# ifdef DOXYGEN
    \n
    755 template <class Archive>
    \n
    756 void
    \n-
    757 serialize(Archive &archive, const unsigned int version);
    \n+
    757 serialize(Archive &archive, const unsigned int version);
    \n
    758# else
    \n
    759 // This macro defines the serialize() method that is compatible with
    \n
    760 // the templated save() and load() method that have been implemented.
    \n-\n+
    761 BOOST_SERIALIZATION_SPLIT_MEMBER()
    \n
    762# endif
    \n
    763
    \n
    776 void
    \n
    777 swap(VectorBase &v) noexcept;
    \n
    778
    \n
    786 operator const Vec &() const;
    \n
    787
    \n@@ -458,15 +458,15 @@\n
    836 // Make the reference class a friend.
    \n \n
    838
    \n
    844 void
    \n
    845 do_set_add_operation(const size_type n_elements,
    \n
    846 const size_type *indices,
    \n
    847 const PetscScalar *values,
    \n-
    848 const bool add_values);
    \n+
    848 const bool add_values);
    \n
    849
    \n
    853 void
    \n \n
    855 };
    \n
    \n
    856
    \n
    857
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -227,17 +227,17 @@\n 488 virtual void\n _\b4_\b8_\b9 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo(\n 490 const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw_\b<_\bc_\bo_\bn_\bs_\bt_\b _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx_\b> &indices,\n 491 _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw_\b<_\bP_\be_\bt_\bs_\bc_\bS_\bc_\ba_\bl_\ba_\br_\b> &elements) const override;\n 492\n 520 template \n 521 void\n-_\b5_\b2_\b2 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo(const _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn,\n-523 const _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\be_\bn_\bd,\n-524 _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bv_\ba_\bl_\bu_\be_\bs_\b__\bb_\be_\bg_\bi_\bn) const;\n+_\b5_\b2_\b2 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo(const ForwardIterator indices_begin,\n+523 const ForwardIterator indices_end,\n+524 OutputIterator values_begin) const;\n 525\n 530 void\n 531 _\ba_\bd_\bd(const std::vector &indices,\n 532 const std::vector &values);\n 533\n 538 void\n 539 _\ba_\bd_\bd(const std::vector &indices,\n@@ -245,15 +245,15 @@\n 541\n 547 void\n 548 _\ba_\bd_\bd(const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements,\n 549 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices,\n 550 const PetscScalar *values);\n 551\n 558 PetscScalar\n-559 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &_\bv_\be_\bc) const;\n+559 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &vec) const;\n 560\n 564 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\n 565 _\bn_\bo_\br_\bm_\b__\bs_\bq_\br() const;\n 566\n 570 PetscScalar\n 571 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be() const;\n 572\n@@ -302,44 +302,44 @@\n 683 void\n 684 _\bs_\ba_\bd_\bd(const PetscScalar s, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V);\n 685\n 689 void\n 690 _\bs_\ba_\bd_\bd(const PetscScalar s, const PetscScalar a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V);\n 691\n 697 void\n-698 _\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &_\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs);\n+698 _\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &scaling_factors);\n 699\n 703 void\n 704 _\be_\bq_\bu(const PetscScalar a, const _\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &V);\n 705\n 713 void\n-714 _\bw_\br_\bi_\bt_\be_\b__\ba_\bs_\bc_\bi_\bi(const _\bP_\be_\bt_\bs_\bc_\bV_\bi_\be_\bw_\be_\br_\bF_\bo_\br_\bm_\ba_\bt _\bf_\bo_\br_\bm_\ba_\bt = _\bP_\bE_\bT_\bS_\bC_\b__\bV_\bI_\bE_\bW_\bE_\bR_\b__\bD_\bE_\bF_\bA_\bU_\bL_\bT);\n+714 _\bw_\br_\bi_\bt_\be_\b__\ba_\bs_\bc_\bi_\bi(const PetscViewerFormat format = PETSC_VIEWER_DEFAULT);\n 715\n 723 void\n 724 _\bp_\br_\bi_\bn_\bt(std::ostream &out,\n 725 const unsigned int precision = 3,\n 726 const bool scientific = true,\n-727 const bool _\ba_\bc_\br_\bo_\bs_\bs = true) const;\n+727 const bool across = true) const;\n 728\n 736 template \n 737 void\n-_\b7_\b3_\b8 _\bs_\ba_\bv_\be(_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br, const unsigned int version) const;\n+_\b7_\b3_\b8 _\bs_\ba_\bv_\be(Archive &ar, const unsigned int version) const;\n 739\n 745 template \n 746 void\n-_\b7_\b4_\b7 _\bl_\bo_\ba_\bd(_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br, const unsigned int version);\n+_\b7_\b4_\b7 _\bl_\bo_\ba_\bd(Archive &ar, const unsigned int version);\n 748\n 749# ifdef DOXYGEN\n 755 template \n 756 void\n-_\b7_\b5_\b7 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be(_\bA_\br_\bc_\bh_\bi_\bv_\be &_\ba_\br_\bc_\bh_\bi_\bv_\be, const unsigned int version);\n+_\b7_\b5_\b7 _\bs_\be_\br_\bi_\ba_\bl_\bi_\bz_\be(Archive &archive, const unsigned int version);\n 758# else\n 759 // This macro defines the serialize() method that is compatible with\n 760 // the templated save() and load() method that have been implemented.\n-761 _\bB_\bO_\bO_\bS_\bT_\b__\bS_\bE_\bR_\bI_\bA_\bL_\bI_\bZ_\bA_\bT_\bI_\bO_\bN_\b__\bS_\bP_\bL_\bI_\bT_\b__\bM_\bE_\bM_\bB_\bE_\bR()\n+761 BOOST_SERIALIZATION_SPLIT_MEMBER()\n 762# endif\n 763\n 776 void\n 777 _\bs_\bw_\ba_\bp(_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be &v) noexcept;\n 778\n 786 operator const Vec &() const;\n 787\n@@ -364,15 +364,15 @@\n 836 // Make the reference class a friend.\n _\b8_\b3_\b7 friend class _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be;\n 838\n 844 void\n 845 _\bd_\bo_\b__\bs_\be_\bt_\b__\ba_\bd_\bd_\b__\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn(const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements,\n 846 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices,\n 847 const PetscScalar *values,\n-848 const bool _\ba_\bd_\bd_\b__\bv_\ba_\bl_\bu_\be_\bs);\n+848 const bool add_values);\n 849\n 853 void\n 854 _\bd_\be_\bt_\be_\br_\bm_\bi_\bn_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs();\n 855 };\n 856\n 857\n 858\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_11.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_11.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -358,121 +358,121 @@\n ['../classinternal_1_1DoFHandlerImplementation_1_1DoFObjects.html#aa9236174e26c195aca11b8a8bb3a2a82', 1, 'internal::DoFHandlerImplementation::DoFObjects::fe_index_is_active()']\n ]],\n ['fe_5findex_5fvalid_189', ['fe_index_valid', ['../classMatrixFreeTools_1_1ElementActivationAndDeactivationMatrixFree.html#ad107d7319e4ba3ec4afbb6373d8d7a2e', 1, 'MatrixFreeTools::ElementActivationAndDeactivationMatrixFree']]],\n ['fe_5finterface_190', ['fe_interface', ['../classFEInterfaceViews_1_1Base.html#af8ecd3d8d3c7179087bf1bdb4a584d97', 1, 'FEInterfaceViews::Base']]],\n ['fe_5finterface_5fvalues_2eh_191', ['fe_interface_values.h', ['../fe__interface__values_8h.html', 1, '']]],\n ['fe_5fmask_192', ['fe_mask', ['../classMappingFEField.html#a0f6f8685e003abaecde8885c7e1d4617', 1, 'MappingFEField']]],\n ['fe_5fname_5fmap_5flock_193', ['fe_name_map_lock', ['../namespaceFETools_1_1internal_1_1FEToolsAddFENameHelper.html#a5681b612bb60d1267b4df3e5eefb5d78', 1, 'FETools::internal::FEToolsAddFENameHelper']]],\n- ['fe_5fnedelec_194', ['fe_nedelec', ['../classFE__Nedelec.html', 1, 'FE_Nedelec< dim >'],\n- ['../classFE__Nedelec.html#ae173be2027aa6827f8336ff5cd362e8f', 1, 'FE_Nedelec::FE_Nedelec'],\n- ['../classFE__Nedelec.html#ac88889abb6a6ef6210c7b49f1487038f', 1, 'FE_Nedelec::FE_Nedelec(const unsigned int order)']\n+ ['fe_5fnedelec_194', ['fe_nedelec', ['../classFE__Nedelec.html#ae173be2027aa6827f8336ff5cd362e8f', 1, 'FE_Nedelec::FE_Nedelec'],\n+ ['../classFE__Nedelec.html#ac88889abb6a6ef6210c7b49f1487038f', 1, 'FE_Nedelec::FE_Nedelec(const unsigned int order)'],\n+ ['../classFE__Nedelec.html', 1, 'FE_Nedelec< dim >']\n ]],\n ['fe_5fnedelec_2ecc_195', ['fe_nedelec.cc', ['../fe__nedelec_8cc.html', 1, '']]],\n ['fe_5fnedelec_2eh_196', ['fe_nedelec.h', ['../fe__nedelec_8h.html', 1, '']]],\n ['fe_5fnedelec_5fsz_2ecc_197', ['fe_nedelec_sz.cc', ['../fe__nedelec__sz_8cc.html', 1, '']]],\n ['fe_5fnedelec_5fsz_2eh_198', ['fe_nedelec_sz.h', ['../fe__nedelec__sz_8h.html', 1, '']]],\n- ['fe_5fnedelecsz_199', ['fe_nedelecsz', ['../classFE__NedelecSZ.html', 1, 'FE_NedelecSZ< dim, spacedim >'],\n- ['../classFE__NedelecSZ.html#a3b628f8d46a6010139d6641f1110c80f', 1, 'FE_NedelecSZ::FE_NedelecSZ()']\n+ ['fe_5fnedelecsz_199', ['fe_nedelecsz', ['../classFE__NedelecSZ.html#a3b628f8d46a6010139d6641f1110c80f', 1, 'FE_NedelecSZ::FE_NedelecSZ()'],\n+ ['../classFE__NedelecSZ.html', 1, 'FE_NedelecSZ< dim, spacedim >']\n ]],\n- ['fe_5fnothing_200', ['fe_nothing', ['../classFE__Nothing.html#adc059d476e456724d9431b35d6ed5547', 1, 'FE_Nothing::FE_Nothing()'],\n+ ['fe_5fnothing_200', ['fe_nothing', ['../classFE__Nothing.html#a69940158d653b46222943f09c6b25a4c', 1, 'FE_Nothing::FE_Nothing()'],\n+ ['../structColorEnriched_1_1Helper.html#a8d6152d5fc1ef14877cf1c10c596b20b', 1, 'ColorEnriched::Helper::fe_nothing'],\n ['../classFE__Nothing.html', 1, 'FE_Nothing< dim, spacedim >'],\n- ['../classFE__Nothing.html#a69940158d653b46222943f09c6b25a4c', 1, 'FE_Nothing::FE_Nothing()'],\n- ['../structColorEnriched_1_1Helper.html#a8d6152d5fc1ef14877cf1c10c596b20b', 1, 'ColorEnriched::Helper::fe_nothing']\n+ ['../classFE__Nothing.html#adc059d476e456724d9431b35d6ed5547', 1, 'FE_Nothing::FE_Nothing()']\n ]],\n ['fe_5fnothing_2ecc_201', ['fe_nothing.cc', ['../fe__nothing_8cc.html', 1, '']]],\n ['fe_5fnothing_2eh_202', ['fe_nothing.h', ['../fe__nothing_8h.html', 1, '']]],\n ['fe_5fnothing_3c_20dim_2c_20dim_20_3e_203', ['FE_Nothing< dim, dim >', ['../classFE__Nothing.html', 1, '']]],\n- ['fe_5fp1nc_204', ['fe_p1nc', ['../classFE__P1NC.html#a159959c63392b6b8fe4d63e0f0f454eb', 1, 'FE_P1NC::FE_P1NC()'],\n- ['../classFE__P1NC.html', 1, 'FE_P1NC']\n+ ['fe_5fp1nc_204', ['fe_p1nc', ['../classFE__P1NC.html', 1, 'FE_P1NC'],\n+ ['../classFE__P1NC.html#a159959c63392b6b8fe4d63e0f0f454eb', 1, 'FE_P1NC::FE_P1NC()']\n ]],\n ['fe_5fp1nc_2ecc_205', ['fe_p1nc.cc', ['../fe__p1nc_8cc.html', 1, '']]],\n ['fe_5fp1nc_2eh_206', ['fe_p1nc.h', ['../fe__p1nc_8h.html', 1, '']]],\n ['fe_5fp_5fbubblesimplementation_207', ['FE_P_BubblesImplementation', ['../namespaceFE__P__BubblesImplementation.html', 1, '']]],\n ['fe_5fpoint_5fevaluation_2ecc_208', ['fe_point_evaluation.cc', ['../fe__point__evaluation_8cc.html', 1, '']]],\n ['fe_5fpoint_5fevaluation_2eh_209', ['fe_point_evaluation.h', ['../fe__point__evaluation_8h.html', 1, '']]],\n ['fe_5fpointer_210', ['fe_pointer', ['../classMeshWorker_1_1IntegrationInfo.html#ad8104a9fbad9a17daf6b27a47d233f85', 1, 'MeshWorker::IntegrationInfo']]],\n- ['fe_5fpoly_211', ['fe_poly', ['../classFE__Poly.html#a0f7afbda20c71e4c0e9fd422137f9922', 1, 'FE_Poly::FE_Poly(const FE_Poly &fe)'],\n- ['../classFE__Poly.html#a3e3707af821b633b0938fc25af8e1d4e', 1, 'FE_Poly::FE_Poly(const ScalarPolynomialsBase< dim > &poly_space, const FiniteElementData< dim > &fe_data, const std::vector< bool > &restriction_is_additive_flags, const std::vector< ComponentMask > &nonzero_components)'],\n- ['../classFE__Poly.html', 1, 'FE_Poly< dim, spacedim >']\n+ ['fe_5fpoly_211', ['fe_poly', ['../classFE__Poly.html#a3e3707af821b633b0938fc25af8e1d4e', 1, 'FE_Poly::FE_Poly()'],\n+ ['../classFE__Poly.html', 1, 'FE_Poly< dim, spacedim >'],\n+ ['../classFE__Poly.html#a0f7afbda20c71e4c0e9fd422137f9922', 1, 'FE_Poly::FE_Poly()']\n ]],\n ['fe_5fpoly_2ecc_212', ['fe_poly.cc', ['../fe__poly_8cc.html', 1, '']]],\n ['fe_5fpoly_2eh_213', ['fe_poly.h', ['../fe__poly_8h.html', 1, '']]],\n ['fe_5fpoly_3c_20dim_2c_20dim_20_3e_214', ['FE_Poly< dim, dim >', ['../classFE__Poly.html', 1, '']]],\n ['fe_5fpoly_3c_20dim_2c_20spacedim_20_3e_215', ['FE_Poly< dim, spacedim >', ['../classFE__Poly.html', 1, '']]],\n ['fe_5fpoly_5fface_2eh_216', ['fe_poly_face.h', ['../fe__poly__face_8h.html', 1, '']]],\n ['fe_5fpoly_5ftensor_2ecc_217', ['fe_poly_tensor.cc', ['../fe__poly__tensor_8cc.html', 1, '']]],\n ['fe_5fpoly_5ftensor_2eh_218', ['fe_poly_tensor.h', ['../fe__poly__tensor_8h.html', 1, '']]],\n ['fe_5fpolyface_219', ['fe_polyface', ['../classFE__PolyFace.html', 1, 'FE_PolyFace< PolynomialType, dim, spacedim >'],\n ['../classFE__PolyFace.html#ab685c768c6b0b29273cd0abc402ad2a5', 1, 'FE_PolyFace::FE_PolyFace()']\n ]],\n ['fe_5fpolyface_3c_20polynomialspace_3c_20dim_20_2d_201_20_3e_2c_20dim_2c_20dim_20_3e_220', ['FE_PolyFace< PolynomialSpace< dim - 1 >, dim, dim >', ['../classFE__PolyFace.html', 1, '']]],\n ['fe_5fpolyface_3c_20tensorproductpolynomials_3c_20dim_20_2d_201_20_3e_2c_20dim_2c_20dim_20_3e_221', ['FE_PolyFace< TensorProductPolynomials< dim - 1 >, dim, dim >', ['../classFE__PolyFace.html', 1, '']]],\n- ['fe_5fpolytensor_222', ['fe_polytensor', ['../classFE__PolyTensor.html', 1, 'FE_PolyTensor< dim, spacedim >'],\n- ['../classFE__PolyTensor.html#a54aff4239f3728df60a6a87715764021', 1, 'FE_PolyTensor::FE_PolyTensor(const FE_PolyTensor &fe)'],\n- ['../classFE__PolyTensor.html#ad5b6ea2342b731bbabd2201b7e4ff44a', 1, 'FE_PolyTensor::FE_PolyTensor(const TensorPolynomialsBase< dim > &polynomials, const FiniteElementData< dim > &fe_data, const std::vector< bool > &restriction_is_additive_flags, const std::vector< ComponentMask > &nonzero_components)']\n+ ['fe_5fpolytensor_222', ['fe_polytensor', ['../classFE__PolyTensor.html#a54aff4239f3728df60a6a87715764021', 1, 'FE_PolyTensor::FE_PolyTensor()'],\n+ ['../classFE__PolyTensor.html', 1, 'FE_PolyTensor< dim, spacedim >'],\n+ ['../classFE__PolyTensor.html#ad5b6ea2342b731bbabd2201b7e4ff44a', 1, 'FE_PolyTensor::FE_PolyTensor()']\n ]],\n ['fe_5fpolytensor_3c_20dim_2c_20dim_20_3e_223', ['FE_PolyTensor< dim, dim >', ['../classFE__PolyTensor.html', 1, '']]],\n ['fe_5fpolytensor_3c_20dim_2c_20spacedim_20_3e_224', ['FE_PolyTensor< dim, spacedim >', ['../classFE__PolyTensor.html', 1, '']]],\n ['fe_5fpyramid_5fp_2ecc_225', ['fe_pyramid_p.cc', ['../fe__pyramid__p_8cc.html', 1, '']]],\n ['fe_5fpyramid_5fp_2eh_226', ['fe_pyramid_p.h', ['../fe__pyramid__p_8h.html', 1, '']]],\n- ['fe_5fpyramiddgp_227', ['fe_pyramiddgp', ['../classFE__PyramidDGP.html', 1, 'FE_PyramidDGP< dim, spacedim >'],\n- ['../classFE__PyramidDGP.html#ac2e6079eebe80fc15716298488dc5c63', 1, 'FE_PyramidDGP::FE_PyramidDGP()']\n+ ['fe_5fpyramiddgp_227', ['fe_pyramiddgp', ['../classFE__PyramidDGP.html#ac2e6079eebe80fc15716298488dc5c63', 1, 'FE_PyramidDGP::FE_PyramidDGP()'],\n+ ['../classFE__PyramidDGP.html', 1, 'FE_PyramidDGP< dim, spacedim >']\n ]],\n ['fe_5fpyramidp_228', ['fe_pyramidp', ['../classFE__PyramidP.html', 1, 'FE_PyramidP< dim, spacedim >'],\n ['../classFE__PyramidP.html#a10d9a9af391aa277a6196a53bcbca360', 1, 'FE_PyramidP::FE_PyramidP()']\n ]],\n ['fe_5fpyramidpoly_229', ['fe_pyramidpoly', ['../classFE__PyramidPoly.html', 1, 'FE_PyramidPoly< dim, spacedim >'],\n ['../classFE__PyramidPoly.html#a1b80a859611151754bfc1b1bfcdaaa78', 1, 'FE_PyramidPoly::FE_PyramidPoly()']\n ]],\n ['fe_5fpyramidpoly_3c_20dim_2c_20dim_20_3e_230', ['FE_PyramidPoly< dim, dim >', ['../classFE__PyramidPoly.html', 1, '']]],\n- ['fe_5fq_231', ['fe_q', ['../classFE__Q.html#ac36967b6e5de1ff1f4d54e0fa779d876', 1, 'FE_Q::FE_Q()'],\n- ['../classFE__Q.html', 1, 'FE_Q< dim, spacedim >'],\n- ['../classFE__TraceQ.html#a06b7dd7e3735c4a2882c8c8ef1833380', 1, 'FE_TraceQ::fe_q'],\n- ['../classFE__Q.html#a32ccedfe518cfe3fca02cdddf9e664f6', 1, 'FE_Q::FE_Q()']\n+ ['fe_5fq_231', ['fe_q', ['../classFE__Q.html', 1, 'FE_Q< dim, spacedim >'],\n+ ['../classFE__Q.html#a32ccedfe518cfe3fca02cdddf9e664f6', 1, 'FE_Q::FE_Q(const Quadrature< 1 > &points)'],\n+ ['../classFE__Q.html#ac36967b6e5de1ff1f4d54e0fa779d876', 1, 'FE_Q::FE_Q(const unsigned int p)'],\n+ ['../classFE__TraceQ.html#a06b7dd7e3735c4a2882c8c8ef1833380', 1, 'FE_TraceQ::fe_q']\n ]],\n ['fe_5fq_2ecc_232', ['fe_q.cc', ['../fe__q_8cc.html', 1, '']]],\n ['fe_5fq_2eh_233', ['fe_q.h', ['../fe__q_8h.html', 1, '']]],\n ['fe_5fq1_234', ['fe_q1', ['../classNonMatching_1_1internal_1_1DiscreteQuadratureGeneratorImplementation_1_1RefSpaceFEFieldFunction.html#ac577d9056dcf59c8463e54214c9be386', 1, 'NonMatching::internal::DiscreteQuadratureGeneratorImplementation::RefSpaceFEFieldFunction']]],\n ['fe_5fq_3c_20dim_2c_20dim_20_3e_235', ['FE_Q< dim, dim >', ['../classFE__Q.html', 1, '']]],\n ['fe_5fq_5fbase_236', ['fe_q_base', ['../classFE__Q__Base.html', 1, 'FE_Q_Base< dim, spacedim >'],\n ['../classFE__Q__Base.html#afd1a4a4c6b1df7cd57de66f78fe8ebf2', 1, 'FE_Q_Base::FE_Q_Base()']\n ]],\n ['fe_5fq_5fbase_2ecc_237', ['fe_q_base.cc', ['../fe__q__base_8cc.html', 1, '']]],\n ['fe_5fq_5fbase_2eh_238', ['fe_q_base.h', ['../fe__q__base_8h.html', 1, '']]],\n ['fe_5fq_5fbase_3c_20dim_2c_20dim_20_3e_239', ['FE_Q_Base< dim, dim >', ['../classFE__Q__Base.html', 1, '']]],\n ['fe_5fq_5fbase_3c_20dim_2c_20spacedim_20_3e_240', ['FE_Q_Base< dim, spacedim >', ['../classFE__Q__Base.html', 1, '']]],\n ['fe_5fq_5fbase_3c_20dim_2c_20spacedim_20_3e_3a_3aimplementation_241', ['Implementation', ['../classFE__Q__Base.html#aacf983582b2a026db5692d32e0057281', 1, 'FE_Q_Base']]],\n ['fe_5fq_5fbubbles_242', ['fe_q_bubbles', ['../classFE__Q__Bubbles.html', 1, 'FE_Q_Bubbles< dim, spacedim >'],\n- ['../classFE__Q__Bubbles.html#a63dc7e8541e0e0f447167cb5f25a2df7', 1, 'FE_Q_Bubbles::FE_Q_Bubbles(const Quadrature< 1 > &points)'],\n- ['../classFE__Q__Bubbles.html#acf702171c9122ac2e4678b9789eb7ab5', 1, 'FE_Q_Bubbles::FE_Q_Bubbles(const unsigned int p)']\n+ ['../classFE__Q__Bubbles.html#acf702171c9122ac2e4678b9789eb7ab5', 1, 'FE_Q_Bubbles::FE_Q_Bubbles(const unsigned int p)'],\n+ ['../classFE__Q__Bubbles.html#a63dc7e8541e0e0f447167cb5f25a2df7', 1, 'FE_Q_Bubbles::FE_Q_Bubbles(const Quadrature< 1 > &points)']\n ]],\n ['fe_5fq_5fbubbles_2ecc_243', ['fe_q_bubbles.cc', ['../fe__q__bubbles_8cc.html', 1, '']]],\n ['fe_5fq_5fbubbles_2eh_244', ['fe_q_bubbles.h', ['../fe__q__bubbles_8h.html', 1, '']]],\n- ['fe_5fq_5fdg0_245', ['fe_q_dg0', ['../classFE__Q__DG0.html', 1, 'FE_Q_DG0< dim, spacedim >'],\n- ['../classFE__Q__DG0.html#a3b48400953a225d0c489eadfa3682ce8', 1, 'FE_Q_DG0::FE_Q_DG0(const Quadrature< 1 > &points)'],\n- ['../classFE__Q__DG0.html#a6eb900705fd9dab7c55be04968ccb41b', 1, 'FE_Q_DG0::FE_Q_DG0(const unsigned int p)']\n+ ['fe_5fq_5fdg0_245', ['fe_q_dg0', ['../classFE__Q__DG0.html#a3b48400953a225d0c489eadfa3682ce8', 1, 'FE_Q_DG0::FE_Q_DG0()'],\n+ ['../classFE__Q__DG0.html', 1, 'FE_Q_DG0< dim, spacedim >'],\n+ ['../classFE__Q__DG0.html#a6eb900705fd9dab7c55be04968ccb41b', 1, 'FE_Q_DG0::FE_Q_DG0()']\n ]],\n ['fe_5fq_5fdg0_2ecc_246', ['fe_q_dg0.cc', ['../fe__q__dg0_8cc.html', 1, '']]],\n ['fe_5fq_5fdg0_2eh_247', ['fe_q_dg0.h', ['../fe__q__dg0_8h.html', 1, '']]],\n ['fe_5fq_5fhierarchical_248', ['fe_q_hierarchical', ['../classFE__Q__Hierarchical.html', 1, 'FE_Q_Hierarchical< dim >'],\n- ['../classFE__Q__Hierarchical.html#aad40d98a2231b45fe6a53be39614fa99', 1, 'FE_Q_Hierarchical::FE_Q_Hierarchical(const unsigned int p)'],\n- ['../classFE__Q__Hierarchical.html#a4bb9e1107f87e3a2d60df4ce7b8725fa', 1, 'FE_Q_Hierarchical::FE_Q_Hierarchical']\n+ ['../classFE__Q__Hierarchical.html#a4bb9e1107f87e3a2d60df4ce7b8725fa', 1, 'FE_Q_Hierarchical::FE_Q_Hierarchical'],\n+ ['../classFE__Q__Hierarchical.html#aad40d98a2231b45fe6a53be39614fa99', 1, 'FE_Q_Hierarchical::FE_Q_Hierarchical(const unsigned int p)']\n ]],\n ['fe_5fq_5fhierarchical_2ecc_249', ['fe_q_hierarchical.cc', ['../fe__q__hierarchical_8cc.html', 1, '']]],\n ['fe_5fq_5fhierarchical_2eh_250', ['fe_q_hierarchical.h', ['../fe__q__hierarchical_8h.html', 1, '']]],\n- ['fe_5fq_5fiso_5fq1_251', ['fe_q_iso_q1', ['../classFE__Q__iso__Q1.html#afb43b1ec080db8ae9a34addca748d25c', 1, 'FE_Q_iso_Q1::FE_Q_iso_Q1(const std::vector< Point< 1 > > &support_points)'],\n- ['../classFE__Q__iso__Q1.html#a917f8f0d90f3eaa78a96f60b4d1763b9', 1, 'FE_Q_iso_Q1::FE_Q_iso_Q1(const unsigned int n_subdivisions)'],\n- ['../classFE__Q__iso__Q1.html', 1, 'FE_Q_iso_Q1< dim, spacedim >']\n+ ['fe_5fq_5fiso_5fq1_251', ['fe_q_iso_q1', ['../classFE__Q__iso__Q1.html', 1, 'FE_Q_iso_Q1< dim, spacedim >'],\n+ ['../classFE__Q__iso__Q1.html#afb43b1ec080db8ae9a34addca748d25c', 1, 'FE_Q_iso_Q1::FE_Q_iso_Q1(const std::vector< Point< 1 > > &support_points)'],\n+ ['../classFE__Q__iso__Q1.html#a917f8f0d90f3eaa78a96f60b4d1763b9', 1, 'FE_Q_iso_Q1::FE_Q_iso_Q1(const unsigned int n_subdivisions)']\n ]],\n ['fe_5fq_5fiso_5fq1_2ecc_252', ['fe_q_iso_q1.cc', ['../fe__q__iso__q1_8cc.html', 1, '']]],\n ['fe_5fq_5fiso_5fq1_2eh_253', ['fe_q_iso_q1.h', ['../fe__q__iso__q1_8h.html', 1, '']]],\n ['fe_5frannacher_5fturek_2ecc_254', ['fe_rannacher_turek.cc', ['../fe__rannacher__turek_8cc.html', 1, '']]],\n ['fe_5frannacher_5fturek_2eh_255', ['fe_rannacher_turek.h', ['../fe__rannacher__turek_8h.html', 1, '']]],\n- ['fe_5frannacherturek_256', ['fe_rannacherturek', ['../classFE__RannacherTurek.html', 1, 'FE_RannacherTurek< dim >'],\n- ['../classFE__RannacherTurek.html#a8e9cb8c3884bef4e0f7e2364779eae34', 1, 'FE_RannacherTurek::FE_RannacherTurek()']\n+ ['fe_5frannacherturek_256', ['fe_rannacherturek', ['../classFE__RannacherTurek.html#a8e9cb8c3884bef4e0f7e2364779eae34', 1, 'FE_RannacherTurek::FE_RannacherTurek()'],\n+ ['../classFE__RannacherTurek.html', 1, 'FE_RannacherTurek< dim >']\n ]],\n ['fe_5fraviart_5fthomas_2ecc_257', ['fe_raviart_thomas.cc', ['../fe__raviart__thomas_8cc.html', 1, '']]],\n ['fe_5fraviart_5fthomas_2eh_258', ['fe_raviart_thomas.h', ['../fe__raviart__thomas_8h.html', 1, '']]],\n ['fe_5fraviart_5fthomas_5fnodal_2ecc_259', ['fe_raviart_thomas_nodal.cc', ['../fe__raviart__thomas__nodal_8cc.html', 1, '']]],\n ['fe_5fraviartthomas_260', ['fe_raviartthomas', ['../classFE__RaviartThomas.html', 1, 'FE_RaviartThomas< dim >'],\n ['../classFE__RaviartThomas.html#aae331958fb05a41f6a3443ddb1a2560b', 1, 'FE_RaviartThomas::FE_RaviartThomas'],\n ['../classFE__RaviartThomas.html#adc8e64d0cdb38af6e29dc9ac0279f121', 1, 'FE_RaviartThomas::FE_RaviartThomas(const unsigned int p)']\n@@ -491,22 +491,22 @@\n ['fe_5fseries_5ffourier_2ecc_268', ['fe_series_fourier.cc', ['../fe__series__fourier_8cc.html', 1, '']]],\n ['fe_5fseries_5flegendre_2ecc_269', ['fe_series_legendre.cc', ['../fe__series__legendre_8cc.html', 1, '']]],\n ['fe_5fsets_270', ['fe_sets', ['../structColorEnriched_1_1Helper.html#a316f866677048f17a21f1ecb299f0db6', 1, 'ColorEnriched::Helper']]],\n ['fe_5fsimplex_5fp_2ecc_271', ['fe_simplex_p.cc', ['../fe__simplex__p_8cc.html', 1, '']]],\n ['fe_5fsimplex_5fp_2eh_272', ['fe_simplex_p.h', ['../fe__simplex__p_8h.html', 1, '']]],\n ['fe_5fsimplex_5fp_5fbubbles_2ecc_273', ['fe_simplex_p_bubbles.cc', ['../fe__simplex__p__bubbles_8cc.html', 1, '']]],\n ['fe_5fsimplex_5fp_5fbubbles_2eh_274', ['fe_simplex_p_bubbles.h', ['../fe__simplex__p__bubbles_8h.html', 1, '']]],\n- ['fe_5fsimplexdgp_275', ['fe_simplexdgp', ['../classFE__SimplexDGP.html#a669fda85ea6f32fc81a255f7785a1bcc', 1, 'FE_SimplexDGP::FE_SimplexDGP()'],\n- ['../classFE__SimplexDGP.html', 1, 'FE_SimplexDGP< dim, spacedim >']\n+ ['fe_5fsimplexdgp_275', ['fe_simplexdgp', ['../classFE__SimplexDGP.html', 1, 'FE_SimplexDGP< dim, spacedim >'],\n+ ['../classFE__SimplexDGP.html#a669fda85ea6f32fc81a255f7785a1bcc', 1, 'FE_SimplexDGP::FE_SimplexDGP()']\n ]],\n- ['fe_5fsimplexp_276', ['fe_simplexp', ['../classFE__SimplexP.html#a6fe3fe16c25df1b363786df1bb6de98c', 1, 'FE_SimplexP::FE_SimplexP()'],\n- ['../classFE__SimplexP.html', 1, 'FE_SimplexP< dim, spacedim >']\n+ ['fe_5fsimplexp_276', ['fe_simplexp', ['../classFE__SimplexP.html', 1, 'FE_SimplexP< dim, spacedim >'],\n+ ['../classFE__SimplexP.html#a6fe3fe16c25df1b363786df1bb6de98c', 1, 'FE_SimplexP::FE_SimplexP()']\n ]],\n- ['fe_5fsimplexp_5fbubbles_277', ['fe_simplexp_bubbles', ['../classFE__SimplexP__Bubbles.html', 1, 'FE_SimplexP_Bubbles< dim, spacedim >'],\n- ['../classFE__SimplexP__Bubbles.html#a29c2891e4afc45e1560e8c3c3d088ef8', 1, 'FE_SimplexP_Bubbles::FE_SimplexP_Bubbles()']\n+ ['fe_5fsimplexp_5fbubbles_277', ['fe_simplexp_bubbles', ['../classFE__SimplexP__Bubbles.html#a29c2891e4afc45e1560e8c3c3d088ef8', 1, 'FE_SimplexP_Bubbles::FE_SimplexP_Bubbles()'],\n+ ['../classFE__SimplexP__Bubbles.html', 1, 'FE_SimplexP_Bubbles< dim, spacedim >']\n ]],\n ['fe_5fsimplexpoly_278', ['fe_simplexpoly', ['../classFE__SimplexPoly.html', 1, 'FE_SimplexPoly< dim, spacedim >'],\n ['../classFE__SimplexPoly.html#a15e847875e8310425d204854f68faa1e', 1, 'FE_SimplexPoly::FE_SimplexPoly()']\n ]],\n ['fe_5fsimplexpoly_3c_20dim_2c_20dim_20_3e_279', ['FE_SimplexPoly< dim, dim >', ['../classFE__SimplexPoly.html', 1, '']]],\n ['fe_5fsubface_5fvalues_280', ['fe_subface_values', ['../classMeshWorker_1_1ScratchData.html#af60a5f4083d426430fa98c5d443ca63b', 1, 'MeshWorker::ScratchData']]],\n ['fe_5fsystem_281', ['fe_system', ['../classFE__Enriched.html#aff941ea5b3cde27dee4dd9ddf458df7a', 1, 'FE_Enriched']]],\n@@ -517,47 +517,47 @@\n ['fe_5ftools_2eh_286', ['fe_tools.h', ['../fe__tools_8h.html', 1, '']]],\n ['fe_5ftools_5fextrapolate_287', ['fe_tools_extrapolate', ['../namespaceUtilities_1_1MPI_1_1internal_1_1Tags.html#a1c190e50dabbd9b60e230b843c6caa44a7128ae2e97c120a30d7e67922460b27e', 1, 'Utilities::MPI::internal::Tags']]],\n ['fe_5ftools_5fextrapolate_2ecc_288', ['fe_tools_extrapolate.cc', ['../fe__tools__extrapolate_8cc.html', 1, '']]],\n ['fe_5ftools_5fextrapolate_5fend_289', ['fe_tools_extrapolate_end', ['../namespaceUtilities_1_1MPI_1_1internal_1_1Tags.html#a1c190e50dabbd9b60e230b843c6caa44a78dd601ba3a7657c91d0b8413a18f558', 1, 'Utilities::MPI::internal::Tags']]],\n ['fe_5ftools_5finterpolate_2ecc_290', ['fe_tools_interpolate.cc', ['../fe__tools__interpolate_8cc.html', 1, '']]],\n ['fe_5ftrace_2ecc_291', ['fe_trace.cc', ['../fe__trace_8cc.html', 1, '']]],\n ['fe_5ftrace_2eh_292', ['fe_trace.h', ['../fe__trace_8h.html', 1, '']]],\n- ['fe_5ftraceq_293', ['fe_traceq', ['../classFE__TraceQ.html#aece0869ab7f5c84faae9e7b0b8598370', 1, 'FE_TraceQ::FE_TraceQ()'],\n+ ['fe_5ftraceq_293', ['fe_traceq', ['../classFE__TraceQ.html', 1, 'FE_TraceQ< dim, spacedim >'],\n ['../classFE__TraceQ_3_011_00_01spacedim_01_4.html#ab0cbe36ef1cc93a46049c9ba28687838', 1, 'FE_TraceQ< 1, spacedim >::FE_TraceQ()'],\n- ['../classFE__TraceQ.html', 1, 'FE_TraceQ< dim, spacedim >']\n+ ['../classFE__TraceQ.html#aece0869ab7f5c84faae9e7b0b8598370', 1, 'FE_TraceQ::FE_TraceQ()']\n ]],\n ['fe_5ftraceq_3c_201_2c_20spacedim_20_3e_294', ['FE_TraceQ< 1, spacedim >', ['../classFE__TraceQ_3_011_00_01spacedim_01_4.html', 1, '']]],\n ['fe_5fupdate_5fflags_2eh_295', ['fe_update_flags.h', ['../fe__update__flags_8h.html', 1, '']]],\n- ['fe_5fvalues_296', ['fe_values', ['../classFEPointEvaluationBase.html#a7b7ada069813f70ef59a824314599448', 1, 'FEPointEvaluationBase::fe_values'],\n- ['../classFEValuesViews_1_1Scalar.html#a9ed4266aebba6d4f5f450bd26f347d28', 1, 'FEValuesViews::Scalar::fe_values'],\n- ['../classFEValuesViews_1_1Vector.html#ae5e4a8341f23e6d693b31a280bdc5bf7', 1, 'FEValuesViews::Vector::fe_values'],\n- ['../classFEValuesViews_1_1SymmetricTensor_3_012_00_01dim_00_01spacedim_01_4.html#ad7d66bcb85af90ffe432fae91704ea91', 1, 'FEValuesViews::SymmetricTensor< 2, dim, spacedim >::fe_values'],\n- ['../classFEValuesViews_1_1Tensor_3_012_00_01dim_00_01spacedim_01_4.html#a6ec489ef498144c730c075615a28104f', 1, 'FEValuesViews::Tensor< 2, dim, spacedim >::fe_values'],\n- ['../classMappingFEField.html#af779241e66a9b294590887f424e20991', 1, 'MappingFEField::fe_values'],\n- ['../classMappingQEulerian.html#a04443806065969209c5ab1348b6b04ee', 1, 'MappingQEulerian::fe_values'],\n+ ['fe_5fvalues_296', ['fe_values', ['../classMappingQEulerian.html#a04443806065969209c5ab1348b6b04ee', 1, 'MappingQEulerian::fe_values'],\n+ ['../classMeshWorker_1_1IntegrationInfo.html#a1bc001a6c78e81ebefd105288f239c16', 1, 'MeshWorker::IntegrationInfo::fe_values()'],\n+ ['../classMeshWorker_1_1ScratchData.html#a4a71e4edb4ba4ea635d7be256247d854', 1, 'MeshWorker::ScratchData::fe_values'],\n ['../classGridTools_1_1MarchingCubeAlgorithm.html#a37fee30886e4c5727cf82f2c99ddd1fc', 1, 'GridTools::MarchingCubeAlgorithm::fe_values'],\n+ ['../classMappingFEField.html#af779241e66a9b294590887f424e20991', 1, 'MappingFEField::fe_values'],\n+ ['../classFEValuesViews_1_1Tensor_3_012_00_01dim_00_01spacedim_01_4.html#a6ec489ef498144c730c075615a28104f', 1, 'FEValuesViews::Tensor< 2, dim, spacedim >::fe_values'],\n+ ['../classFEValuesViews_1_1SymmetricTensor_3_012_00_01dim_00_01spacedim_01_4.html#ad7d66bcb85af90ffe432fae91704ea91', 1, 'FEValuesViews::SymmetricTensor< 2, dim, spacedim >::fe_values'],\n+ ['../classFEValuesViews_1_1Vector.html#ae5e4a8341f23e6d693b31a280bdc5bf7', 1, 'FEValuesViews::Vector::fe_values'],\n+ ['../classFEValuesViews_1_1Scalar.html#a9ed4266aebba6d4f5f450bd26f347d28', 1, 'FEValuesViews::Scalar::fe_values'],\n+ ['../classFEPointEvaluationBase.html#a7b7ada069813f70ef59a824314599448', 1, 'FEPointEvaluationBase::fe_values'],\n ['../classinternal_1_1MatrixFreeFunctions_1_1MappingDataOnTheFly.html#ac862a820ea9acc504e988c49d40f077e', 1, 'internal::MatrixFreeFunctions::MappingDataOnTheFly::fe_values'],\n- ['../classMeshWorker_1_1ScratchData.html#a4a71e4edb4ba4ea635d7be256247d854', 1, 'MeshWorker::ScratchData::fe_values'],\n- ['../classMeshWorker_1_1IntegrationInfo.html#a32fa7363be71ba320bcdc94f6d677843', 1, 'MeshWorker::IntegrationInfo::fe_values() const'],\n- ['../classMeshWorker_1_1IntegrationInfo.html#a1bc001a6c78e81ebefd105288f239c16', 1, 'MeshWorker::IntegrationInfo::fe_values(const unsigned int i) const']\n+ ['../classMeshWorker_1_1IntegrationInfo.html#a32fa7363be71ba320bcdc94f6d677843', 1, 'MeshWorker::IntegrationInfo::fe_values()']\n ]],\n ['fe_5fvalues_2ecc_297', ['fe_values.cc', ['../fe_2fe__values_8cc.html', 1, '(Global Namespace)'],\n- ['../non__matching_2fe__values_8cc.html', 1, '(Global Namespace)'],\n- ['../hp_2fe__values_8cc.html', 1, '(Global Namespace)']\n+ ['../hp_2fe__values_8cc.html', 1, '(Global Namespace)'],\n+ ['../non__matching_2fe__values_8cc.html', 1, '(Global Namespace)']\n ]],\n- ['fe_5fvalues_2eh_298', ['fe_values.h', ['../hp_2fe__values_8h.html', 1, '(Global Namespace)'],\n- ['../fe_2fe__values_8h.html', 1, '(Global Namespace)'],\n+ ['fe_5fvalues_2eh_298', ['fe_values.h', ['../fe_2fe__values_8h.html', 1, '(Global Namespace)'],\n+ ['../hp_2fe__values_8h.html', 1, '(Global Namespace)'],\n ['../non__matching_2fe__values_8h.html', 1, '(Global Namespace)']\n ]],\n ['fe_5fvalues_5fbase_2ecc_299', ['fe_values_base.cc', ['../fe__values__base_8cc.html', 1, '']]],\n ['fe_5fvalues_5fbase_2eh_300', ['fe_values_base.h', ['../fe__values__base_8h.html', 1, '']]],\n ['fe_5fvalues_5fextractors_2ecc_301', ['fe_values_extractors.cc', ['../fe__values__extractors_8cc.html', 1, '']]],\n ['fe_5fvalues_5fextractors_2eh_302', ['fe_values_extractors.h', ['../fe__values__extractors_8h.html', 1, '']]],\n- ['fe_5fvalues_5finside_303', ['fe_values_inside', ['../classNonMatching_1_1FEInterfaceValues.html#ad23c83611d679ce6d5a0e2587b9e415b', 1, 'NonMatching::FEInterfaceValues::fe_values_inside'],\n- ['../classNonMatching_1_1FEValues.html#a91928e063ab8107c31b7b4f3e4344209', 1, 'NonMatching::FEValues::fe_values_inside']\n+ ['fe_5fvalues_5finside_303', ['fe_values_inside', ['../classNonMatching_1_1FEValues.html#a91928e063ab8107c31b7b4f3e4344209', 1, 'NonMatching::FEValues::fe_values_inside'],\n+ ['../classNonMatching_1_1FEInterfaceValues.html#ad23c83611d679ce6d5a0e2587b9e415b', 1, 'NonMatching::FEInterfaceValues::fe_values_inside']\n ]],\n ['fe_5fvalues_5finside_5ffull_5fquadrature_304', ['fe_values_inside_full_quadrature', ['../classNonMatching_1_1FEInterfaceValues.html#a6185d0943b426f539f3acf02f1e95c8f', 1, 'NonMatching::FEInterfaceValues::fe_values_inside_full_quadrature'],\n ['../classNonMatching_1_1FEValues.html#a086321ca803c47de036f6f24511bce15', 1, 'NonMatching::FEValues::fe_values_inside_full_quadrature']\n ]],\n ['fe_5fvalues_5fmutex_305', ['fe_values_mutex', ['../classMappingQEulerian.html#a6afedf25e37bf90c28d883739f5ce994', 1, 'MappingQEulerian::fe_values_mutex'],\n ['../classMappingFEField.html#ac8f484f4d29e88848a8f2d29e98e2e15', 1, 'MappingFEField::fe_values_mutex']\n ]],\n@@ -573,64 +573,64 @@\n ['fe_5fvalues_5fviews_2eh_311', ['fe_values_views.h', ['../fe__values__views_8h.html', 1, '']]],\n ['fe_5fvalues_5fviews_5fcache_312', ['fe_values_views_cache', ['../classFEValuesBase.html#a22ef3bdf25af1cc1b3299556533da667', 1, 'FEValuesBase']]],\n ['fe_5fvalues_5fviews_5finternal_2ecc_313', ['fe_values_views_internal.cc', ['../fe__values__views__internal_8cc.html', 1, '']]],\n ['fe_5fvalues_5fviews_5finternal_2eh_314', ['fe_values_views_internal.h', ['../fe__values__views__internal_8h.html', 1, '']]],\n ['fe_5fvs_5fmapping_5fvs_5ffevalues_2eh_315', ['fe_vs_mapping_vs_fevalues.h', ['../fe__vs__mapping__vs__fevalues_8h.html', 1, '']]],\n ['fe_5fwedge_5fp_2ecc_316', ['fe_wedge_p.cc', ['../fe__wedge__p_8cc.html', 1, '']]],\n ['fe_5fwedge_5fp_2eh_317', ['fe_wedge_p.h', ['../fe__wedge__p_8h.html', 1, '']]],\n- ['fe_5fwedgedgp_318', ['fe_wedgedgp', ['../classFE__WedgeDGP.html#adc02bdf588283c6e94e961e66ae1994c', 1, 'FE_WedgeDGP::FE_WedgeDGP()'],\n- ['../classFE__WedgeDGP.html', 1, 'FE_WedgeDGP< dim, spacedim >']\n+ ['fe_5fwedgedgp_318', ['fe_wedgedgp', ['../classFE__WedgeDGP.html', 1, 'FE_WedgeDGP< dim, spacedim >'],\n+ ['../classFE__WedgeDGP.html#adc02bdf588283c6e94e961e66ae1994c', 1, 'FE_WedgeDGP::FE_WedgeDGP()']\n ]],\n ['fe_5fwedgep_319', ['fe_wedgep', ['../classFE__WedgeP.html#a822f9cc00406c6f6012001073715525b', 1, 'FE_WedgeP::FE_WedgeP()'],\n ['../classFE__WedgeP.html', 1, 'FE_WedgeP< dim, spacedim >']\n ]],\n ['fe_5fwedgepoly_320', ['fe_wedgepoly', ['../classFE__WedgePoly.html#a8550c7936f48a510dba374c127e39c09', 1, 'FE_WedgePoly::FE_WedgePoly()'],\n ['../classFE__WedgePoly.html', 1, 'FE_WedgePoly< dim, spacedim >']\n ]],\n ['fe_5fwedgepoly_3c_20dim_2c_20dim_20_3e_321', ['FE_WedgePoly< dim, dim >', ['../classFE__WedgePoly.html', 1, '']]],\n- ['fecollection_322', ['fecollection', ['../classhp_1_1FECollection.html#a451b4589792e0b1d3f4f2c2a80831c1f', 1, 'hp::FECollection::FECollection()'],\n- ['../classhp_1_1FECollection.html', 1, 'hp::FECollection< dim, spacedim >'],\n- ['../classhp_1_1FECollection.html#af94bc4d5c944da27c3e0189cd92e979c', 1, 'hp::FECollection::FECollection()'],\n- ['../classhp_1_1FECollection.html#a6b557e20b5abc09c7be5158c3f034955', 1, 'hp::FECollection::FECollection(const FiniteElement< dim, spacedim > &fe)'],\n+ ['fecollection_322', ['fecollection', ['../classhp_1_1FECollection.html#a451b4589792e0b1d3f4f2c2a80831c1f', 1, 'hp::FECollection::FECollection(const FETypes &...fes)'],\n ['../classhp_1_1FECollection.html#a19007fa91f9d36582dced84c5da191b1', 1, 'hp::FECollection::FECollection(const std::vector< const FiniteElement< dim, spacedim > * > &fes)'],\n ['../classhp_1_1FECollection.html#ad8f7b4ccf64ce616f22e046fabd215e6', 1, 'hp::FECollection::FECollection(const FECollection< dim, spacedim > &)=default'],\n- ['../classhp_1_1FECollection.html#a94e1d345ab26a5276b64ae8d8adf764b', 1, 'hp::FECollection::FECollection(FECollection< dim, spacedim > &&) noexcept(std::is_nothrow_move_constructible< std::vector< std::shared_ptr< const FiniteElement< dim, spacedim > > > >::value &&std::is_nothrow_move_constructible< std::function< unsigned int(const typename hp::FECollection< dim, spacedim > &, const unsigned int)> >::value)=default']\n+ ['../classhp_1_1FECollection.html#a94e1d345ab26a5276b64ae8d8adf764b', 1, 'hp::FECollection::FECollection(FECollection< dim, spacedim > &&) noexcept(std::is_nothrow_move_constructible< std::vector< std::shared_ptr< const FiniteElement< dim, spacedim > > > >::value &&std::is_nothrow_move_constructible< std::function< unsigned int(const typename hp::FECollection< dim, spacedim > &, const unsigned int)> >::value)=default'],\n+ ['../classhp_1_1FECollection.html#af94bc4d5c944da27c3e0189cd92e979c', 1, 'hp::FECollection::FECollection()'],\n+ ['../classhp_1_1FECollection.html#a6b557e20b5abc09c7be5158c3f034955', 1, 'hp::FECollection::FECollection(const FiniteElement< dim, spacedim > &fe)'],\n+ ['../classhp_1_1FECollection.html', 1, 'hp::FECollection< dim, spacedim >']\n ]],\n ['fecollection_3c_20dim_2c_20dim_20_3e_323', ['FECollection< dim, dim >', ['../classhp_1_1FECollection.html', 1, 'hp']]],\n ['fecollection_3c_20dim_2c_20fevaluestype_3a_3aspace_5fdimension_20_3e_324', ['FECollection< dim, FEValuesType::space_dimension >', ['../classhp_1_1FECollection.html', 1, 'hp']]],\n ['fecollection_3c_20dim_2c_20spacedim_20_3e_325', ['FECollection< dim, spacedim >', ['../classhp_1_1FECollection.html', 1, 'hp']]],\n- ['fecouplingvalues_326', ['fecouplingvalues', ['../classFECouplingValues.html#a43e48b6413bb2ac378d89b21eeb791ec', 1, 'FECouplingValues::FECouplingValues()'],\n- ['../classFECouplingValues.html', 1, 'FECouplingValues< dim1, dim2, spacedim >'],\n+ ['fecouplingvalues_326', ['fecouplingvalues', ['../classFECouplingValues.html', 1, 'FECouplingValues< dim1, dim2, spacedim >'],\n+ ['../classFECouplingValues.html#a43e48b6413bb2ac378d89b21eeb791ec', 1, 'FECouplingValues::FECouplingValues(const FEValuesBase< dim1, spacedim > &fe_values_1, const FEValuesBase< dim2, spacedim > &fe_values_2, const DoFCouplingType &dof_coupling_type=DoFCouplingType::independent, const QuadratureCouplingType &quadrature_coupling_type=QuadratureCouplingType::tensor_product)'],\n ['../classFECouplingValues.html#a257afb950c4bb77545558243bbab2e2d', 1, 'FECouplingValues::FECouplingValues()']\n ]],\n ['feevaltype_327', ['FEEvalType', ['../classMatrixFreeTools_1_1internal_1_1ComputeMatrixScratchData.html#a5b4216f9c66ddbfba6c6a40a01bb8937', 1, 'MatrixFreeTools::internal::ComputeMatrixScratchData']]],\n- ['feevaluation_328', ['feevaluation', ['../classFEEvaluationData.html#a23897beb0abef628653e437d6cb69f8a', 1, 'FEEvaluationData::FEEvaluation'],\n- ['../classFEEvaluation.html#ade40e452949cbefd4f7e6d5580af81c8', 1, 'FEEvaluation::FEEvaluation(const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free, const unsigned int dof_no=0, const unsigned int quad_no=0, const unsigned int first_selected_component=0, const unsigned int active_fe_index=numbers::invalid_unsigned_int, const unsigned int active_quad_index=numbers::invalid_unsigned_int)'],\n- ['../classFEEvaluation.html#a06293ee7aac4f62c80be6862aa1ae101', 1, 'FEEvaluation::FEEvaluation(const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free, const std::pair< unsigned int, unsigned int > &range, const unsigned int dof_no=0, const unsigned int quad_no=0, const unsigned int first_selected_component=0)'],\n- ['../classFEEvaluation.html#a1b0dc3f17c28f2db5fd4237b1bf04342', 1, 'FEEvaluation::FEEvaluation(const Mapping< dim > &mapping, const FiniteElement< dim > &fe, const Quadrature< 1 > &quadrature, const UpdateFlags update_flags, const unsigned int first_selected_component=0)'],\n- ['../classFEEvaluation.html#a43079434f0a4acc8907e7a6b2d9b541f', 1, 'FEEvaluation::FEEvaluation(const FiniteElement< dim > &fe, const Quadrature< 1 > &quadrature, const UpdateFlags update_flags, const unsigned int first_selected_component=0)'],\n- ['../classFEEvaluation.html#a5f2f32070ca17d5e9ad58b8f75ff608f', 1, 'FEEvaluation::FEEvaluation(const FiniteElement< dim > &fe, const FEEvaluationData< dim, VectorizedArrayType, false > &other, const unsigned int first_selected_component=0)'],\n- ['../classFEEvaluation.html#ae94191b8afd866e461d5ea241d59548d', 1, 'FEEvaluation::FEEvaluation(const FEEvaluation &other)'],\n+ ['feevaluation_328', ['feevaluation', ['../classFEEvaluation.html', 1, 'FEEvaluation< dim, fe_degree, n_q_points_1d, n_components_, Number, VectorizedArrayType >'],\n+ ['../classPortable_1_1FEEvaluation.html', 1, 'Portable::FEEvaluation< dim, fe_degree, n_q_points_1d, n_components_, Number >'],\n ['../classPortable_1_1FEEvaluation.html#a2bb4edef80927ee611573eca1772da77', 1, 'Portable::FEEvaluation::FEEvaluation()'],\n- ['../classFEEvaluation.html', 1, 'FEEvaluation< dim, fe_degree, n_q_points_1d, n_components_, Number, VectorizedArrayType >'],\n- ['../classPortable_1_1FEEvaluation.html', 1, 'Portable::FEEvaluation< dim, fe_degree, n_q_points_1d, n_components_, Number >']\n+ ['../classFEEvaluation.html#ae94191b8afd866e461d5ea241d59548d', 1, 'FEEvaluation::FEEvaluation(const FEEvaluation &other)'],\n+ ['../classFEEvaluation.html#a5f2f32070ca17d5e9ad58b8f75ff608f', 1, 'FEEvaluation::FEEvaluation(const FiniteElement< dim > &fe, const FEEvaluationData< dim, VectorizedArrayType, false > &other, const unsigned int first_selected_component=0)'],\n+ ['../classFEEvaluation.html#a43079434f0a4acc8907e7a6b2d9b541f', 1, 'FEEvaluation::FEEvaluation(const FiniteElement< dim > &fe, const Quadrature< 1 > &quadrature, const UpdateFlags update_flags, const unsigned int first_selected_component=0)'],\n+ ['../classFEEvaluation.html#a1b0dc3f17c28f2db5fd4237b1bf04342', 1, 'FEEvaluation::FEEvaluation(const Mapping< dim > &mapping, const FiniteElement< dim > &fe, const Quadrature< 1 > &quadrature, const UpdateFlags update_flags, const unsigned int first_selected_component=0)'],\n+ ['../classFEEvaluation.html#a06293ee7aac4f62c80be6862aa1ae101', 1, 'FEEvaluation::FEEvaluation(const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free, const std::pair< unsigned int, unsigned int > &range, const unsigned int dof_no=0, const unsigned int quad_no=0, const unsigned int first_selected_component=0)'],\n+ ['../classFEEvaluation.html#ade40e452949cbefd4f7e6d5580af81c8', 1, 'FEEvaluation::FEEvaluation(const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free, const unsigned int dof_no=0, const unsigned int quad_no=0, const unsigned int first_selected_component=0, const unsigned int active_fe_index=numbers::invalid_unsigned_int, const unsigned int active_quad_index=numbers::invalid_unsigned_int)'],\n+ ['../classFEEvaluationData.html#a23897beb0abef628653e437d6cb69f8a', 1, 'FEEvaluationData::FEEvaluation']\n ]],\n ['feevaluationaccess_329', ['FEEvaluationAccess', ['../fe__evaluation_8h.html#a6c8b72247f7e3846e2109b84f565af44', 1, 'fe_evaluation.h']]],\n- ['feevaluationbase_330', ['feevaluationbase', ['../classFEEvaluationBase.html#a913a638fc51bf06284b2ec0e2ef4eecf', 1, 'FEEvaluationBase::FEEvaluationBase()'],\n- ['../classFEEvaluationBase.html', 1, 'FEEvaluationBase< dim, n_components_, Number, is_face, VectorizedArrayType >'],\n- ['../classFEEvaluationData.html#a88f812ed680748c1e386337a68677d8c', 1, 'FEEvaluationData::FEEvaluationBase'],\n+ ['feevaluationbase_330', ['feevaluationbase', ['../classFEEvaluationData.html#a88f812ed680748c1e386337a68677d8c', 1, 'FEEvaluationData::FEEvaluationBase'],\n ['../classFEEvaluationBase.html#ad5a4f965f1159ecfdcac3b73d0757c63', 1, 'FEEvaluationBase::FEEvaluationBase(const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free, const unsigned int dof_no, const unsigned int first_selected_component, const unsigned int quad_no, const unsigned int fe_degree, const unsigned int n_q_points, const bool is_interior_face, const unsigned int active_fe_index, const unsigned int active_quad_index, const unsigned int face_type)'],\n- ['../classFEEvaluationBase.html#adc4401003cd075b72f8b308defb2aa8b', 1, 'FEEvaluationBase::FEEvaluationBase(const FEEvaluationBase &other)']\n+ ['../classFEEvaluationBase.html#a913a638fc51bf06284b2ec0e2ef4eecf', 1, 'FEEvaluationBase::FEEvaluationBase(const Mapping< dim > &mapping, const FiniteElement< dim > &fe, const Quadrature< 1 > &quadrature, const UpdateFlags update_flags, const unsigned int first_selected_component, const FEEvaluationData< dim, VectorizedArrayType, is_face > *other)'],\n+ ['../classFEEvaluationBase.html#adc4401003cd075b72f8b308defb2aa8b', 1, 'FEEvaluationBase::FEEvaluationBase(const FEEvaluationBase &other)'],\n+ ['../classFEEvaluationBase.html', 1, 'FEEvaluationBase< dim, n_components_, Number, is_face, VectorizedArrayType >']\n ]],\n ['feevaluationbase_3c_20dim_2c_201_2c_20double_2c_20false_2c_20vectorizedarray_3c_20double_20_3e_20_3e_331', ['FEEvaluationBase< dim, 1, double, false, VectorizedArray< double > >', ['../classFEEvaluationBase.html', 1, '']]],\n ['feevaluationbase_3c_20dim_2c_201_2c_20double_2c_20true_2c_20vectorizedarray_3c_20double_20_3e_20_3e_332', ['FEEvaluationBase< dim, 1, double, true, VectorizedArray< double > >', ['../classFEEvaluationBase.html', 1, '']]],\n ['feevaluationbase_3c_20dim_2c_20n_5fcomponents_5f_2c_20number_2c_20false_2c_20vectorizedarraytype_20_3e_333', ['FEEvaluationBase< dim, n_components_, Number, false, VectorizedArrayType >', ['../classFEEvaluationBase.html', 1, '']]],\n ['feevaluationbasedata_334', ['FEEvaluationBaseData', ['../fe__evaluation__data_8h.html#aa2d0940ddee5d91ec68fd27e2cb84320', 1, 'fe_evaluation_data.h']]],\n- ['feevaluationdata_335', ['feevaluationdata', ['../classFEEvaluationData.html#ae428f4fc00212ee84f29946be8d43b8f', 1, 'FEEvaluationData::FEEvaluationData(const InitializationData &initialization_data, const bool is_interior_face, const unsigned int quad_no, const unsigned int first_selected_component)'],\n- ['../classFEEvaluationData.html#abdc68bdb2a7546fa8362823697beb0dd', 1, 'FEEvaluationData::FEEvaluationData(const std::shared_ptr< internal::MatrixFreeFunctions::MappingDataOnTheFly< dim, Number > > &mapping_data, const unsigned int n_fe_components, const unsigned int first_selected_component)'],\n+ ['feevaluationdata_335', ['feevaluationdata', ['../classFEEvaluationData.html#abdc68bdb2a7546fa8362823697beb0dd', 1, 'FEEvaluationData::FEEvaluationData(const std::shared_ptr< internal::MatrixFreeFunctions::MappingDataOnTheFly< dim, Number > > &mapping_data, const unsigned int n_fe_components, const unsigned int first_selected_component)'],\n+ ['../classFEEvaluationData.html#ae428f4fc00212ee84f29946be8d43b8f', 1, 'FEEvaluationData::FEEvaluationData(const InitializationData &initialization_data, const bool is_interior_face, const unsigned int quad_no, const unsigned int first_selected_component)'],\n ['../classFEEvaluationData.html#a342c8e490d3dc4eb35fa8f13f4f178fd', 1, 'FEEvaluationData::FEEvaluationData(const FEEvaluationData &other)=default'],\n ['../classFEEvaluationData.html#ac52ce729b40fb062d0e8ab6bc9b64039', 1, 'FEEvaluationData::FEEvaluationData(const ShapeInfoType &shape_info, const bool is_interior_face=true)'],\n ['../classFEEvaluationData.html', 1, 'FEEvaluationData< dim, Number, is_face >']\n ]],\n ['feevaluationdata_3c_20dim_2c_20vectorizedarray_3c_20double_20_3e_2c_20is_5fface_20_3e_336', ['FEEvaluationData< dim, VectorizedArray< double >, is_face >', ['../classFEEvaluationData.html', 1, '']]],\n ['feevaluationdata_3c_20dim_2c_20vectorizedarraytype_2c_20is_5fface_20_3e_337', ['FEEvaluationData< dim, VectorizedArrayType, is_face >', ['../classFEEvaluationData.html', 1, '']]],\n ['feevaluationfactory_338', ['FEEvaluationFactory', ['../structinternal_1_1FEEvaluationFactory.html', 1, 'internal']]],\n@@ -644,296 +644,296 @@\n ['feevaluationimplhangingnodesrunner_346', ['FEEvaluationImplHangingNodesRunner', ['../classinternal_1_1FEEvaluationImplHangingNodesRunner.html', 1, 'internal']]],\n ['feevaluationimplhangingnodesrunner_3c_20feevaluationimplhangingnodesrunnertypes_3a_3ascalar_2c_20dim_2c_20fe_5fdegree_2c_20number_20_3e_347', ['FEEvaluationImplHangingNodesRunner< FEEvaluationImplHangingNodesRunnerTypes::scalar, dim, fe_degree, Number >', ['../classinternal_1_1FEEvaluationImplHangingNodesRunner_3_01FEEvaluationImplHangingNodesRunnerTypes_00966c5775d96ae2fc40b13af2d17791.html', 1, 'internal']]],\n ['feevaluationimplhangingnodesrunner_3c_20feevaluationimplhangingnodesrunnertypes_3a_3avectorized_2c_20dim_2c_20fe_5fdegree_2c_20number_20_3e_348', ['FEEvaluationImplHangingNodesRunner< FEEvaluationImplHangingNodesRunnerTypes::vectorized, dim, fe_degree, Number >', ['../classinternal_1_1FEEvaluationImplHangingNodesRunner_3_01FEEvaluationImplHangingNodesRunnerTypes_c1031c798c74e42da3548d1dbac7fe26.html', 1, 'internal']]],\n ['feevaluationimplhangingnodesrunnertypes_349', ['FEEvaluationImplHangingNodesRunnerTypes', ['../namespaceinternal.html#ada777fe0783c39ba1d4ca2aa043b7261', 1, 'internal']]],\n ['feevaluationimplselector_350', ['FEEvaluationImplSelector', ['../structinternal_1_1FEEvaluationImplSelector.html', 1, 'internal']]],\n ['feevaluationimpltransformtocollocation_351', ['FEEvaluationImplTransformToCollocation', ['../structinternal_1_1FEEvaluationImplTransformToCollocation.html', 1, 'internal']]],\n ['fefaceevaluation_352', ['fefaceevaluation', ['../classFEFaceEvaluation.html', 1, 'FEFaceEvaluation< dim, fe_degree, n_q_points_1d, n_components_, Number, VectorizedArrayType >'],\n- ['../classFEFaceEvaluation.html#acdaaf051d3f8f8ada47520efb0811acb', 1, 'FEFaceEvaluation::FEFaceEvaluation(const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free, const bool is_interior_face=true, const unsigned int dof_no=0, const unsigned int quad_no=0, const unsigned int first_selected_component=0, const unsigned int active_fe_index=numbers::invalid_unsigned_int, const unsigned int active_quad_index=numbers::invalid_unsigned_int, const unsigned int face_type=numbers::invalid_unsigned_int)'],\n- ['../classFEFaceEvaluation.html#a9fedfdec25287e183f1fb3d625a08cd6', 1, 'FEFaceEvaluation::FEFaceEvaluation(const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free, const std::pair< unsigned int, unsigned int > &range, const bool is_interior_face=true, const unsigned int dof_no=0, const unsigned int quad_no=0, const unsigned int first_selected_component=0)']\n+ ['../classFEFaceEvaluation.html#a9fedfdec25287e183f1fb3d625a08cd6', 1, 'FEFaceEvaluation::FEFaceEvaluation(const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free, const std::pair< unsigned int, unsigned int > &range, const bool is_interior_face=true, const unsigned int dof_no=0, const unsigned int quad_no=0, const unsigned int first_selected_component=0)'],\n+ ['../classFEFaceEvaluation.html#acdaaf051d3f8f8ada47520efb0811acb', 1, 'FEFaceEvaluation::FEFaceEvaluation(const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free, const bool is_interior_face=true, const unsigned int dof_no=0, const unsigned int quad_no=0, const unsigned int first_selected_component=0, const unsigned int active_fe_index=numbers::invalid_unsigned_int, const unsigned int active_quad_index=numbers::invalid_unsigned_int, const unsigned int face_type=numbers::invalid_unsigned_int)']\n ]],\n ['fefaceevaluationfactory_353', ['FEFaceEvaluationFactory', ['../structinternal_1_1FEFaceEvaluationFactory.html', 1, 'internal']]],\n ['fefaceevaluationgatherfactory_354', ['FEFaceEvaluationGatherFactory', ['../structinternal_1_1FEFaceEvaluationGatherFactory.html', 1, 'internal']]],\n ['fefaceevaluationimpl_355', ['FEFaceEvaluationImpl', ['../structinternal_1_1FEFaceEvaluationImpl.html', 1, 'internal']]],\n ['fefaceevaluationimplcollectfromfaceselector_356', ['FEFaceEvaluationImplCollectFromFaceSelector', ['../structinternal_1_1FEFaceEvaluationImplCollectFromFaceSelector.html', 1, 'internal']]],\n ['fefaceevaluationimplevaluateinfaceselector_357', ['FEFaceEvaluationImplEvaluateInFaceSelector', ['../structinternal_1_1FEFaceEvaluationImplEvaluateInFaceSelector.html', 1, 'internal']]],\n ['fefaceevaluationimplevaluateselector_358', ['FEFaceEvaluationImplEvaluateSelector', ['../structinternal_1_1FEFaceEvaluationImplEvaluateSelector.html', 1, 'internal']]],\n ['fefaceevaluationimplgatherevaluateselector_359', ['FEFaceEvaluationImplGatherEvaluateSelector', ['../structinternal_1_1FEFaceEvaluationImplGatherEvaluateSelector.html', 1, 'internal']]],\n ['fefaceevaluationimplintegrateinfaceselector_360', ['FEFaceEvaluationImplIntegrateInFaceSelector', ['../structinternal_1_1FEFaceEvaluationImplIntegrateInFaceSelector.html', 1, 'internal']]],\n ['fefaceevaluationimplintegratescatterselector_361', ['FEFaceEvaluationImplIntegrateScatterSelector', ['../structinternal_1_1FEFaceEvaluationImplIntegrateScatterSelector.html', 1, 'internal']]],\n ['fefaceevaluationimplintegrateselector_362', ['FEFaceEvaluationImplIntegrateSelector', ['../structinternal_1_1FEFaceEvaluationImplIntegrateSelector.html', 1, 'internal']]],\n ['fefaceevaluationimplprojecttofaceselector_363', ['FEFaceEvaluationImplProjectToFaceSelector', ['../structinternal_1_1FEFaceEvaluationImplProjectToFaceSelector.html', 1, 'internal']]],\n ['fefaceevaluationimplraviartthomas_364', ['FEFaceEvaluationImplRaviartThomas', ['../structinternal_1_1FEFaceEvaluationImplRaviartThomas.html', 1, 'internal']]],\n ['fefacenormalevaluationimpl_365', ['FEFaceNormalEvaluationImpl', ['../structinternal_1_1FEFaceNormalEvaluationImpl.html', 1, 'internal']]],\n- ['fefacepointevaluation_366', ['fefacepointevaluation', ['../classFEFacePointEvaluation.html#acaa3b12ed0be123b7fec21c7b8b6c492', 1, 'FEFacePointEvaluation::FEFacePointEvaluation()'],\n- ['../classFEFacePointEvaluation.html', 1, 'FEFacePointEvaluation< n_components_, dim, spacedim, Number >']\n+ ['fefacepointevaluation_366', ['fefacepointevaluation', ['../classFEFacePointEvaluation.html', 1, 'FEFacePointEvaluation< n_components_, dim, spacedim, Number >'],\n+ ['../classFEFacePointEvaluation.html#acaa3b12ed0be123b7fec21c7b8b6c492', 1, 'FEFacePointEvaluation::FEFacePointEvaluation()']\n ]],\n- ['fefacevalues_367', ['fefacevalues', ['../classFEFaceValues.html#aed42896401c2891bb1035fe75ee8459a', 1, 'FEFaceValues::FEFaceValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim - 1 > &quadrature, const UpdateFlags update_flags)'],\n+ ['fefacevalues_367', ['fefacevalues', ['../classFEFaceValues.html', 1, 'FEFaceValues< dim, spacedim >'],\n+ ['../classhp_1_1FEFaceValues.html', 1, 'hp::FEFaceValues< dim, spacedim >'],\n ['../classFEFaceValues.html#abcfcb8ef81bb6f01c4b287f31526d953', 1, 'FEFaceValues::FEFaceValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const Quadrature< dim - 1 > &quadrature, const UpdateFlags update_flags)'],\n- ['../classFEFaceValues.html#af2ab8538308210d688aed98079137fa7', 1, 'FEFaceValues::FEFaceValues(const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim - 1 > &quadrature, const UpdateFlags update_flags)'],\n+ ['../classFEFaceValues.html#aed42896401c2891bb1035fe75ee8459a', 1, 'FEFaceValues::FEFaceValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim - 1 > &quadrature, const UpdateFlags update_flags)'],\n ['../classFEFaceValues.html#a6ce740654d9732d36af87cd0eedc19be', 1, 'FEFaceValues::FEFaceValues(const FiniteElement< dim, spacedim > &fe, const Quadrature< dim - 1 > &quadrature, const UpdateFlags update_flags)'],\n- ['../classFEFaceValues.html', 1, 'FEFaceValues< dim, spacedim >'],\n+ ['../classhp_1_1FEFaceValues.html#a00504071c19f8e3b018317f7b40844b2', 1, 'hp::FEFaceValues::FEFaceValues(const hp::FECollection< dim, spacedim > &fe_collection, const std::vector< hp::QCollection< dim - 1 > > &q_collections, const UpdateFlags update_flags)'],\n+ ['../classhp_1_1FEFaceValues.html#a04201d625edfd550cdc20e6ae2c674a0', 1, 'hp::FEFaceValues::FEFaceValues(const hp::FECollection< dim, spacedim > &fe_collection, const hp::QCollection< dim - 1 > &q_collection, const UpdateFlags update_flags)'],\n ['../classhp_1_1FEFaceValues.html#aece25ce3af0dbb63e08d9e74b947cc6b', 1, 'hp::FEFaceValues::FEFaceValues(const hp::MappingCollection< dim, spacedim > &mapping_collection, const hp::FECollection< dim, spacedim > &fe_collection, const std::vector< hp::QCollection< dim - 1 > > &q_collections, const UpdateFlags update_flags)'],\n ['../classhp_1_1FEFaceValues.html#ace56530911651f0f28ba00ffd89c945c', 1, 'hp::FEFaceValues::FEFaceValues(const hp::MappingCollection< dim, spacedim > &mapping_collection, const hp::FECollection< dim, spacedim > &fe_collection, const hp::QCollection< dim - 1 > &q_collection, const UpdateFlags update_flags)'],\n- ['../classhp_1_1FEFaceValues.html#a04201d625edfd550cdc20e6ae2c674a0', 1, 'hp::FEFaceValues::FEFaceValues(const hp::FECollection< dim, spacedim > &fe_collection, const hp::QCollection< dim - 1 > &q_collection, const UpdateFlags update_flags)'],\n- ['../classhp_1_1FEFaceValues.html#a00504071c19f8e3b018317f7b40844b2', 1, 'hp::FEFaceValues::FEFaceValues(const hp::FECollection< dim, spacedim > &fe_collection, const std::vector< hp::QCollection< dim - 1 > > &q_collections, const UpdateFlags update_flags)'],\n- ['../classhp_1_1FEFaceValues.html', 1, 'hp::FEFaceValues< dim, spacedim >']\n+ ['../classFEFaceValues.html#af2ab8538308210d688aed98079137fa7', 1, 'FEFaceValues::FEFaceValues()']\n ]],\n ['fefacevalues_3c_20dim_2c_20dim_20_3e_368', ['FEFaceValues< dim, dim >', ['../classFEFaceValues.html', 1, '']]],\n ['fefacevalues_3c_20dim_2c_20spacedim_20_3e_369', ['fefacevalues< dim, spacedim >', ['../classFEFaceValues.html', 1, 'FEFaceValues< dim, spacedim >'],\n ['../classFiniteElement.html#a65a2ae7b2d193590c89e5a5f23d31f81', 1, 'FiniteElement::FEFaceValues< dim, spacedim >'],\n ['../classMapping.html#a65a2ae7b2d193590c89e5a5f23d31f81', 1, 'Mapping::FEFaceValues< dim, spacedim >']\n ]],\n- ['fefacevaluesbase_370', ['fefacevaluesbase', ['../classFEFaceValuesBase.html', 1, 'FEFaceValuesBase< dim, spacedim >'],\n- ['../classFEFaceValuesBase.html#ac4c2a4d2146f80654a710f0407616912', 1, 'FEFaceValuesBase::FEFaceValuesBase(const unsigned int dofs_per_cell, const UpdateFlags update_flags, const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const Quadrature< dim - 1 > &quadrature)'],\n- ['../classFEFaceValuesBase.html#aba75d5c7d31b92a8c1cd23a591adf930', 1, 'FEFaceValuesBase::FEFaceValuesBase(const unsigned int dofs_per_cell, const UpdateFlags update_flags, const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim - 1 > &quadrature)']\n+ ['fefacevaluesbase_370', ['fefacevaluesbase', ['../classFEFaceValuesBase.html#ac4c2a4d2146f80654a710f0407616912', 1, 'FEFaceValuesBase::FEFaceValuesBase(const unsigned int dofs_per_cell, const UpdateFlags update_flags, const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const Quadrature< dim - 1 > &quadrature)'],\n+ ['../classFEFaceValuesBase.html#aba75d5c7d31b92a8c1cd23a591adf930', 1, 'FEFaceValuesBase::FEFaceValuesBase(const unsigned int dofs_per_cell, const UpdateFlags update_flags, const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim - 1 > &quadrature)'],\n+ ['../classFEFaceValuesBase.html', 1, 'FEFaceValuesBase< dim, spacedim >']\n ]],\n ['fefacevaluesbase_3c_20dim_2c_20dim_20_3e_371', ['FEFaceValuesBase< dim, dim >', ['../classFEFaceValuesBase.html', 1, '']]],\n ['fefacevaluesbase_3c_20dim_2c_20spacedim_20_3e_372', ['FEFaceValuesBase< dim, spacedim >', ['../classFEFaceValuesBase.html', 1, '']]],\n ['fefactory_373', ['FEFactory', ['../classFETools_1_1FEFactory.html', 1, 'FETools']]],\n ['fefactorybase_374', ['FEFactoryBase', ['../classFETools_1_1FEFactoryBase.html', 1, 'FETools']]],\n ['fefactorybase_3c_20fe_3a_3adimension_2c_20fe_3a_3aspace_5fdimension_20_3e_375', ['FEFactoryBase< FE::dimension, FE::space_dimension >', ['../classFETools_1_1FEFactoryBase.html', 1, 'FETools']]],\n- ['fefieldfunction_376', ['fefieldfunction', ['../classFunctions_1_1FEFieldFunction.html', 1, 'Functions::FEFieldFunction< dim, VectorType, spacedim >'],\n- ['../classFunctions_1_1FEFieldFunction.html#ac25d965867c71d1139262cf383f9f593', 1, 'Functions::FEFieldFunction::FEFieldFunction()']\n+ ['fefieldfunction_376', ['fefieldfunction', ['../classFunctions_1_1FEFieldFunction.html#ac25d965867c71d1139262cf383f9f593', 1, 'Functions::FEFieldFunction::FEFieldFunction()'],\n+ ['../classFunctions_1_1FEFieldFunction.html', 1, 'Functions::FEFieldFunction< dim, VectorType, spacedim >']\n ]],\n ['fehlberg_377', ['FEHLBERG', ['../namespaceTimeStepping.html#abff97b5326e452552f108a379dd6cff4a617cb06295ff4fd24ebc9d2c3228da6e', 1, 'TimeStepping']]],\n- ['feimmersedsurfacevalues_378', ['feimmersedsurfacevalues', ['../classNonMatching_1_1FEImmersedSurfaceValues.html', 1, 'NonMatching::FEImmersedSurfaceValues< dim >'],\n- ['../classNonMatching_1_1FEImmersedSurfaceValues.html#ad0c498d43d99b9620f77b48b23aac74c', 1, 'NonMatching::FEImmersedSurfaceValues::FEImmersedSurfaceValues()']\n+ ['feimmersedsurfacevalues_378', ['feimmersedsurfacevalues', ['../classNonMatching_1_1FEImmersedSurfaceValues.html#ad0c498d43d99b9620f77b48b23aac74c', 1, 'NonMatching::FEImmersedSurfaceValues::FEImmersedSurfaceValues()'],\n+ ['../classNonMatching_1_1FEImmersedSurfaceValues.html', 1, 'NonMatching::FEImmersedSurfaceValues< dim >']\n ]],\n- ['feinterfacevalues_379', ['feinterfacevalues', ['../classFEInterfaceValues.html#a7752eee5bae62bdc70deefee21019dea', 1, 'FEInterfaceValues::FEInterfaceValues()'],\n- ['../classFEInterfaceValues.html', 1, 'FEInterfaceValues< dim, spacedim >'],\n- ['../classNonMatching_1_1FEInterfaceValues.html', 1, 'NonMatching::FEInterfaceValues< dim >'],\n- ['../classFEInterfaceValues.html#a3a79e1b34087e4d1177cad7f6330e101', 1, 'FEInterfaceValues::FEInterfaceValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const Quadrature< dim - 1 > &quadrature, const UpdateFlags update_flags)'],\n+ ['feinterfacevalues_379', ['feinterfacevalues', ['../classFEInterfaceValues.html#a3a79e1b34087e4d1177cad7f6330e101', 1, 'FEInterfaceValues::FEInterfaceValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const Quadrature< dim - 1 > &quadrature, const UpdateFlags update_flags)'],\n ['../classFEInterfaceValues.html#a8555d96ffb320d0ebc4c6a46b64339e4', 1, 'FEInterfaceValues::FEInterfaceValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim - 1 > &quadrature, const UpdateFlags update_flags)'],\n+ ['../classFEInterfaceValues.html#a7752eee5bae62bdc70deefee21019dea', 1, 'FEInterfaceValues::FEInterfaceValues(const hp::FECollection< dim, spacedim > &fe_collection, const hp::QCollection< dim - 1 > &quadrature_collection, const UpdateFlags update_flags)'],\n+ ['../classNonMatching_1_1FEInterfaceValues.html#a944ad04419222d78961f148b70c81233', 1, 'NonMatching::FEInterfaceValues::FEInterfaceValues(const hp::FECollection< dim > &fe_collection, const Quadrature< 1 > &quadrature, const RegionUpdateFlags region_update_flags, const MeshClassifier< dim > &mesh_classifier, const DoFHandler< dim > &dof_handler, const VectorType &level_set, const AdditionalData &additional_data=AdditionalData())'],\n+ ['../classNonMatching_1_1FEInterfaceValues.html#aa0193e922c90db4ece186a2277ed6dcc', 1, 'NonMatching::FEInterfaceValues::FEInterfaceValues(const hp::MappingCollection< dim > &mapping_collection, const hp::FECollection< dim > &fe_collection, const hp::QCollection< dim - 1 > &q_collection, const hp::QCollection< 1 > &q_collection_1d, const RegionUpdateFlags region_update_flags, const MeshClassifier< dim > &mesh_classifier, const DoFHandler< dim > &dof_handler, const VectorType &level_set, const AdditionalData &additional_data=AdditionalData())'],\n ['../classFEInterfaceValues.html#ad2e6710bcd7f59b0c904b21a617fafc8', 1, 'FEInterfaceValues::FEInterfaceValues(const FiniteElement< dim, spacedim > &fe, const Quadrature< dim - 1 > &quadrature, const UpdateFlags update_flags)'],\n ['../classFEInterfaceValues.html#a40d2b1785ac3d6290f2d9e56cc98779c', 1, 'FEInterfaceValues::FEInterfaceValues(const hp::MappingCollection< dim, spacedim > &mapping_collection, const hp::FECollection< dim, spacedim > &fe_collection, const hp::QCollection< dim - 1 > &quadrature_collection, const UpdateFlags update_flags)'],\n- ['../classNonMatching_1_1FEInterfaceValues.html#a944ad04419222d78961f148b70c81233', 1, 'NonMatching::FEInterfaceValues::FEInterfaceValues(const hp::FECollection< dim > &fe_collection, const Quadrature< 1 > &quadrature, const RegionUpdateFlags region_update_flags, const MeshClassifier< dim > &mesh_classifier, const DoFHandler< dim > &dof_handler, const VectorType &level_set, const AdditionalData &additional_data=AdditionalData())'],\n- ['../classNonMatching_1_1FEInterfaceValues.html#aa0193e922c90db4ece186a2277ed6dcc', 1, 'NonMatching::FEInterfaceValues::FEInterfaceValues(const hp::MappingCollection< dim > &mapping_collection, const hp::FECollection< dim > &fe_collection, const hp::QCollection< dim - 1 > &q_collection, const hp::QCollection< 1 > &q_collection_1d, const RegionUpdateFlags region_update_flags, const MeshClassifier< dim > &mesh_classifier, const DoFHandler< dim > &dof_handler, const VectorType &level_set, const AdditionalData &additional_data=AdditionalData())']\n+ ['../classFEInterfaceValues.html', 1, 'FEInterfaceValues< dim, spacedim >'],\n+ ['../classNonMatching_1_1FEInterfaceValues.html', 1, 'NonMatching::FEInterfaceValues< dim >']\n ]],\n ['feinterfacevalues_3c_20dim_2c_20dim_20_3e_380', ['FEInterfaceValues< dim, dim >', ['../classFEInterfaceValues.html', 1, '']]],\n ['feinterfacevalues_3c_20dim_2c_20spacedim_20_3e_381', ['FEInterfaceValues< dim, spacedim >', ['../classFEInterfaceValues.html', 1, '']]],\n ['feinterfaceviews_382', ['FEInterfaceViews', ['../namespaceFEInterfaceViews.html', 1, '']]],\n ['feinterfaceviews_3a_3ascalar_383', ['Scalar', ['../classFEInterfaceValues.html#a0278b47e1e26ec1a1371a50d161a44c8', 1, 'FEInterfaceValues']]],\n ['feinterfaceviews_3a_3avector_384', ['Vector', ['../classFEInterfaceValues.html#a1ffe0d0b91c28dffe3850e04aa187608', 1, 'FEInterfaceValues']]],\n ['fepointevaluation_385', ['fepointevaluation', ['../classFEPointEvaluation.html#a741f53047789880b9e668e17788e8c42', 1, 'FEPointEvaluation::FEPointEvaluation(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const UpdateFlags update_flags, const unsigned int first_selected_component=0)'],\n ['../classFEPointEvaluation.html#a3afb491f6c79cd43dbc9f5e8326c1be7', 1, 'FEPointEvaluation::FEPointEvaluation(NonMatching::MappingInfo< dim, spacedim, Number > &mapping_info, const FiniteElement< dim, spacedim > &fe, const unsigned int first_selected_component=0)'],\n ['../classFEPointEvaluation.html', 1, 'FEPointEvaluation< n_components_, dim, spacedim, Number >']\n ]],\n- ['fepointevaluationbase_386', ['fepointevaluationbase', ['../classFEPointEvaluationBase.html#a7d2954630ded9a97d9f1b6fce3900d0e', 1, 'FEPointEvaluationBase::FEPointEvaluationBase(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const UpdateFlags update_flags, const unsigned int first_selected_component=0)'],\n+ ['fepointevaluationbase_386', ['fepointevaluationbase', ['../classFEPointEvaluationBase.html#aced8ac77c1a362dd3fde2a357d9180bc', 1, 'FEPointEvaluationBase::FEPointEvaluationBase(FEPointEvaluationBase &other) noexcept'],\n+ ['../classFEPointEvaluationBase.html#a7d2954630ded9a97d9f1b6fce3900d0e', 1, 'FEPointEvaluationBase::FEPointEvaluationBase(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const UpdateFlags update_flags, const unsigned int first_selected_component=0)'],\n+ ['../classFEPointEvaluationBase.html', 1, 'FEPointEvaluationBase< n_components_, dim, spacedim, Number >'],\n ['../classFEPointEvaluationBase.html#abb230a61c49bafcd2af53537c9a91b5c', 1, 'FEPointEvaluationBase::FEPointEvaluationBase(NonMatching::MappingInfo< dim, spacedim, Number > &mapping_info, const FiniteElement< dim, spacedim > &fe, const unsigned int first_selected_component=0, const bool is_interior=true)'],\n- ['../classFEPointEvaluationBase.html#aced8ac77c1a362dd3fde2a357d9180bc', 1, 'FEPointEvaluationBase::FEPointEvaluationBase(FEPointEvaluationBase &other) noexcept'],\n- ['../classFEPointEvaluationBase.html#a46d9203795569e0b60944c3328fc8cba', 1, 'FEPointEvaluationBase::FEPointEvaluationBase(FEPointEvaluationBase &&other) noexcept'],\n- ['../classFEPointEvaluationBase.html', 1, 'FEPointEvaluationBase< n_components_, dim, spacedim, Number >']\n+ ['../classFEPointEvaluationBase.html#a46d9203795569e0b60944c3328fc8cba', 1, 'FEPointEvaluationBase::FEPointEvaluationBase(FEPointEvaluationBase &&other) noexcept']\n ]],\n ['fepointevaluationbase_3c_20n_5fcomponents_5f_2c_20dim_2c_20dim_2c_20double_20_3e_387', ['FEPointEvaluationBase< n_components_, dim, dim, double >', ['../classFEPointEvaluationBase.html', 1, '']]],\n ['feremotecommunicationobject_388', ['FERemoteCommunicationObject', ['../structFERemoteCommunicationObject.html', 1, '']]],\n ['feremotecommunicationobjectentitybatches_389', ['FERemoteCommunicationObjectEntityBatches', ['../structFERemoteCommunicationObjectEntityBatches.html', 1, '']]],\n ['feremotecommunicationobjecttwolevel_390', ['FERemoteCommunicationObjectTwoLevel', ['../structFERemoteCommunicationObjectTwoLevel.html', 1, '']]],\n- ['feremoteevaluation_391', ['feremoteevaluation', ['../classFERemoteEvaluation.html#a0e419a0a9dcfb9d6e040b78301c54bb9', 1, 'FERemoteEvaluation::FERemoteEvaluation()'],\n- ['../classFERemoteEvaluation.html', 1, 'FERemoteEvaluation< dim, n_components, value_type >']\n+ ['feremoteevaluation_391', ['feremoteevaluation', ['../classFERemoteEvaluation.html', 1, 'FERemoteEvaluation< dim, n_components, value_type >'],\n+ ['../classFERemoteEvaluation.html#a0e419a0a9dcfb9d6e040b78301c54bb9', 1, 'FERemoteEvaluation::FERemoteEvaluation()']\n ]],\n ['feremoteevaluationcommunicator_392', ['FERemoteEvaluationCommunicator', ['../classFERemoteEvaluationCommunicator.html', 1, '']]],\n ['feseries_393', ['FESeries', ['../namespaceFESeries.html', 1, '']]],\n- ['fesubfacevalues_394', ['fesubfacevalues', ['../classFESubfaceValues.html#a54f8264829d5608a245c225975353b57', 1, 'FESubfaceValues::FESubfaceValues()'],\n- ['../classhp_1_1FESubfaceValues.html#a780ecb6c6ef78db006f6551c3acf7f88', 1, 'hp::FESubfaceValues::FESubfaceValues(const hp::FECollection< dim, spacedim > &fe_collection, const hp::QCollection< dim - 1 > &q_collection, const UpdateFlags update_flags)'],\n- ['../classhp_1_1FESubfaceValues.html#ad0716a791fdc587a7ffb3e65de02c6f2', 1, 'hp::FESubfaceValues::FESubfaceValues(const hp::MappingCollection< dim, spacedim > &mapping_collection, const hp::FECollection< dim, spacedim > &fe_collection, const hp::QCollection< dim - 1 > &q_collection, const UpdateFlags update_flags)'],\n- ['../classFESubfaceValues.html#a7b3f8eb60063e6fa722c0359d1f56d0f', 1, 'FESubfaceValues::FESubfaceValues(const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim - 1 > &face_quadrature, const UpdateFlags update_flags)'],\n- ['../classFESubfaceValues.html#aa2e9ec08e15c710a3642c630b8b11a76', 1, 'FESubfaceValues::FESubfaceValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim - 1 > &face_quadrature, const UpdateFlags update_flags)'],\n- ['../classFESubfaceValues.html#a05c46b50d988b7de905890f7b40ca8e7', 1, 'FESubfaceValues::FESubfaceValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const Quadrature< dim - 1 > &face_quadrature, const UpdateFlags update_flags)'],\n+ ['fesubfacevalues_394', ['fesubfacevalues', ['../classFESubfaceValues.html#a7b3f8eb60063e6fa722c0359d1f56d0f', 1, 'FESubfaceValues::FESubfaceValues()'],\n+ ['../classhp_1_1FESubfaceValues.html', 1, 'hp::FESubfaceValues< dim, spacedim >'],\n ['../classFESubfaceValues.html', 1, 'FESubfaceValues< dim, spacedim >'],\n- ['../classhp_1_1FESubfaceValues.html', 1, 'hp::FESubfaceValues< dim, spacedim >']\n+ ['../classFESubfaceValues.html#a05c46b50d988b7de905890f7b40ca8e7', 1, 'FESubfaceValues::FESubfaceValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const Quadrature< dim - 1 > &face_quadrature, const UpdateFlags update_flags)'],\n+ ['../classFESubfaceValues.html#aa2e9ec08e15c710a3642c630b8b11a76', 1, 'FESubfaceValues::FESubfaceValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim - 1 > &face_quadrature, const UpdateFlags update_flags)'],\n+ ['../classFESubfaceValues.html#a54f8264829d5608a245c225975353b57', 1, 'FESubfaceValues::FESubfaceValues(const FiniteElement< dim, spacedim > &fe, const Quadrature< dim - 1 > &face_quadrature, const UpdateFlags update_flags)'],\n+ ['../classhp_1_1FESubfaceValues.html#ad0716a791fdc587a7ffb3e65de02c6f2', 1, 'hp::FESubfaceValues::FESubfaceValues(const hp::MappingCollection< dim, spacedim > &mapping_collection, const hp::FECollection< dim, spacedim > &fe_collection, const hp::QCollection< dim - 1 > &q_collection, const UpdateFlags update_flags)'],\n+ ['../classhp_1_1FESubfaceValues.html#a780ecb6c6ef78db006f6551c3acf7f88', 1, 'hp::FESubfaceValues::FESubfaceValues(const hp::FECollection< dim, spacedim > &fe_collection, const hp::QCollection< dim - 1 > &q_collection, const UpdateFlags update_flags)']\n ]],\n ['fesubfacevalues_3c_20dim_2c_20dim_20_3e_395', ['FESubfaceValues< dim, dim >', ['../classFESubfaceValues.html', 1, '']]],\n ['fesubfacevalues_3c_20dim_2c_20spacedim_20_3e_396', ['fesubfacevalues< dim, spacedim >', ['../classFESubfaceValues.html', 1, 'FESubfaceValues< dim, spacedim >'],\n ['../classFiniteElement.html#ad5ff73a151c0885be1f554c91eb9668b', 1, 'FiniteElement::FESubfaceValues< dim, spacedim >'],\n ['../classMapping.html#ad5ff73a151c0885be1f554c91eb9668b', 1, 'Mapping::FESubfaceValues< dim, spacedim >']\n ]],\n- ['fesystem_397', ['fesystem', ['../classFESystem.html#af422559e139959f2025124afba835c89', 1, 'FESystem::FESystem(const FiniteElement< dim, spacedim > &fe1, const unsigned int n1, const FiniteElement< dim, spacedim > &fe2, const unsigned int n2)'],\n- ['../classFESystem.html#ae4a5b073e0eb8197845ead711fa09ab2', 1, 'FESystem::FESystem(FESystem< dim, spacedim > &&other_fe_system) noexcept'],\n+ ['fesystem_397', ['fesystem', ['../classFESystem.html#ae4a5b073e0eb8197845ead711fa09ab2', 1, 'FESystem::FESystem(FESystem< dim, spacedim > &&other_fe_system) noexcept'],\n ['../classFESystem.html#a1305628a44a4a6318b4077ac0236fca7', 1, 'FESystem::FESystem(const FESystem< dim, spacedim > &)=delete'],\n- ['../classFESystem.html#a0e1cd6a3372fe23f3568114ae5d650ed', 1, 'FESystem::FESystem(const std::initializer_list< std::pair< std::unique_ptr< FiniteElement< dim, spacedim > >, unsigned int > > &fe_systems)'],\n- ['../classFESystem.html#a1572f6043dc6ed97fd3b541eff104827', 1, 'FESystem::FESystem(FEPairs &&...fe_pairs)'],\n- ['../classFESystem.html#a83c7bc44f43e75d7d3750cd6c3bce89b', 1, 'FESystem::FESystem(const std::vector< const FiniteElement< dim, spacedim > * > &fes, const std::vector< unsigned int > &multiplicities)'],\n- ['../classFESystem.html#aa01de107675f319789f2fa70fe6ecf55', 1, 'FESystem::FESystem(const FiniteElement< dim, spacedim > &fe1, const unsigned int n1, const FiniteElement< dim, spacedim > &fe2, const unsigned int n2, const FiniteElement< dim, spacedim > &fe3, const unsigned int n3, const FiniteElement< dim, spacedim > &fe4, const unsigned int n4, const FiniteElement< dim, spacedim > &fe5, const unsigned int n5)'],\n- ['../classFESystem.html#ac385e7885b5e9d9e26967a3fa783391b', 1, 'FESystem::FESystem(const FiniteElement< dim, spacedim > &fe1, const unsigned int n1, const FiniteElement< dim, spacedim > &fe2, const unsigned int n2, const FiniteElement< dim, spacedim > &fe3, const unsigned int n3, const FiniteElement< dim, spacedim > &fe4, const unsigned int n4)'],\n- ['../classFESystem.html#a51c67b7c8c1eb84175337c47d0b3afd3', 1, 'FESystem::FESystem(const FiniteElement< dim, spacedim > &fe1, const unsigned int n1, const FiniteElement< dim, spacedim > &fe2, const unsigned int n2, const FiniteElement< dim, spacedim > &fe3, const unsigned int n3)'],\n- ['../classFESystem.html#acd69b25bd2dab03bcd565930aceaea33', 1, 'FESystem::FESystem(const FiniteElement< dim, spacedim > &fe, const unsigned int n_elements)'],\n+ ['../classFESystem.html', 1, 'FESystem< dim, spacedim >'],\n ['../classFESystem.html#a158ced808c3e615b5a3413eea85e254a', 1, 'FESystem::FESystem()=delete'],\n- ['../classFESystem.html', 1, 'FESystem< dim, spacedim >']\n+ ['../classFESystem.html#acd69b25bd2dab03bcd565930aceaea33', 1, 'FESystem::FESystem(const FiniteElement< dim, spacedim > &fe, const unsigned int n_elements)'],\n+ ['../classFESystem.html#af422559e139959f2025124afba835c89', 1, 'FESystem::FESystem(const FiniteElement< dim, spacedim > &fe1, const unsigned int n1, const FiniteElement< dim, spacedim > &fe2, const unsigned int n2)'],\n+ ['../classFESystem.html#a51c67b7c8c1eb84175337c47d0b3afd3', 1, 'FESystem::FESystem(const FiniteElement< dim, spacedim > &fe1, const unsigned int n1, const FiniteElement< dim, spacedim > &fe2, const unsigned int n2, const FiniteElement< dim, spacedim > &fe3, const unsigned int n3)'],\n+ ['../classFESystem.html#ac385e7885b5e9d9e26967a3fa783391b', 1, 'FESystem::FESystem(const FiniteElement< dim, spacedim > &fe1, const unsigned int n1, const FiniteElement< dim, spacedim > &fe2, const unsigned int n2, const FiniteElement< dim, spacedim > &fe3, const unsigned int n3, const FiniteElement< dim, spacedim > &fe4, const unsigned int n4)'],\n+ ['../classFESystem.html#aa01de107675f319789f2fa70fe6ecf55', 1, 'FESystem::FESystem(const FiniteElement< dim, spacedim > &fe1, const unsigned int n1, const FiniteElement< dim, spacedim > &fe2, const unsigned int n2, const FiniteElement< dim, spacedim > &fe3, const unsigned int n3, const FiniteElement< dim, spacedim > &fe4, const unsigned int n4, const FiniteElement< dim, spacedim > &fe5, const unsigned int n5)'],\n+ ['../classFESystem.html#a83c7bc44f43e75d7d3750cd6c3bce89b', 1, 'FESystem::FESystem(const std::vector< const FiniteElement< dim, spacedim > * > &fes, const std::vector< unsigned int > &multiplicities)'],\n+ ['../classFESystem.html#a1572f6043dc6ed97fd3b541eff104827', 1, 'FESystem::FESystem(FEPairs &&...fe_pairs)'],\n+ ['../classFESystem.html#a0e1cd6a3372fe23f3568114ae5d650ed', 1, 'FESystem::FESystem(const std::initializer_list< std::pair< std::unique_ptr< FiniteElement< dim, spacedim > >, unsigned int > > &fe_systems)']\n ]],\n ['fesystem_3c_20dim_2c_20dim_20_3e_398', ['FESystem< dim, dim >', ['../classFESystem.html', 1, '']]],\n ['fesystem_3c_20dim_2c_20spacedim_20_3e_399', ['fesystem< dim, spacedim >', ['../classFiniteElement.html#a5d578244440ca7f2c5a25e1161e96f80', 1, 'FiniteElement::FESystem< dim, spacedim >'],\n ['../classFESystem.html', 1, 'FESystem< dim, spacedim >']\n ]],\n ['fesystem_5fdata_400', ['fesystem_data', ['../classFE__Enriched_1_1InternalData.html#ae158fde1c3c776f8c2fc8f7d1de0f2e3', 1, 'FE_Enriched::InternalData']]],\n ['fetools_401', ['FETools', ['../namespaceFETools.html', 1, '']]],\n ['fetools_3a_3acompositing_402', ['Compositing', ['../namespaceFETools_1_1Compositing.html', 1, 'FETools']]],\n ['fetools_3a_3ainternal_403', ['internal', ['../namespaceFETools_1_1internal.html', 1, 'FETools']]],\n ['fetools_3a_3ainternal_3a_3afetoolsaddfenamehelper_404', ['FEToolsAddFENameHelper', ['../namespaceFETools_1_1internal_1_1FEToolsAddFENameHelper.html', 1, 'FETools::internal']]],\n ['fevalues_405', ['fevalues', ['../classFEValues.html', 1, 'FEValues< dim, spacedim >'],\n ['../classhp_1_1FEValues.html', 1, 'hp::FEValues< dim, spacedim >'],\n ['../classNonMatching_1_1FEValues.html', 1, 'NonMatching::FEValues< dim >'],\n- ['../classFEValues.html#a051be8559fb1a35dff1ba230864d94b3', 1, 'FEValues::FEValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const Quadrature< dim > &quadrature, const UpdateFlags update_flags)'],\n- ['../classFEValues.html#a6e29a8987e36c016fa9e5c5ad68f0fda', 1, 'FEValues::FEValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim > &quadrature, const UpdateFlags update_flags)'],\n- ['../classFEValues.html#a80f982108aa0d834923a57fa328d1c7e', 1, 'FEValues::FEValues(const FiniteElement< dim, spacedim > &fe, const Quadrature< dim > &quadrature, const UpdateFlags update_flags)'],\n- ['../classFEValues.html#a5eb7498746ed379c23466e9de536c319', 1, 'FEValues::FEValues(const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim > &quadrature, const UpdateFlags update_flags)'],\n- ['../classhp_1_1FEValues.html#af91686dddf64a738f805fcf9047b4b66', 1, 'hp::FEValues::FEValues(const MappingCollection< dim, spacedim > &mapping_collection, const FECollection< dim, spacedim > &fe_collection, const QCollection< dim > &q_collection, const UpdateFlags update_flags)'],\n- ['../classhp_1_1FEValues.html#af5f32dbdded987d1956cfeeda204c073', 1, 'hp::FEValues::FEValues(const FECollection< dim, spacedim > &fe_collection, const QCollection< dim > &q_collection, const UpdateFlags update_flags)'],\n ['../classNonMatching_1_1FEValues.html#ae8f69afbc419c34c6674d159120827e6', 1, 'NonMatching::FEValues::FEValues(const hp::FECollection< dim > &fe_collection, const Quadrature< 1 > &quadrature, const RegionUpdateFlags region_update_flags, const MeshClassifier< dim > &mesh_classifier, const DoFHandler< dim > &dof_handler, const VectorType &level_set, const AdditionalData &additional_data=AdditionalData())'],\n ['../classNonMatching_1_1FEValues.html#a75bfcab8698ad2e4e16beaabc5144214', 1, 'NonMatching::FEValues::FEValues(const hp::MappingCollection< dim > &mapping_collection, const hp::FECollection< dim > &fe_collection, const hp::QCollection< dim > &q_collection, const hp::QCollection< 1 > &q_collection_1d, const RegionUpdateFlags region_update_flags, const MeshClassifier< dim > &mesh_classifier, const DoFHandler< dim > &dof_handler, const VectorType &level_set, const AdditionalData &additional_data=AdditionalData())'],\n+ ['../classhp_1_1FEValues.html#af5f32dbdded987d1956cfeeda204c073', 1, 'hp::FEValues::FEValues(const FECollection< dim, spacedim > &fe_collection, const QCollection< dim > &q_collection, const UpdateFlags update_flags)'],\n+ ['../classhp_1_1FEValues.html#af91686dddf64a738f805fcf9047b4b66', 1, 'hp::FEValues::FEValues(const MappingCollection< dim, spacedim > &mapping_collection, const FECollection< dim, spacedim > &fe_collection, const QCollection< dim > &q_collection, const UpdateFlags update_flags)'],\n+ ['../classFEValues.html#a5eb7498746ed379c23466e9de536c319', 1, 'FEValues::FEValues(const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim > &quadrature, const UpdateFlags update_flags)'],\n+ ['../classFEValues.html#a80f982108aa0d834923a57fa328d1c7e', 1, 'FEValues::FEValues(const FiniteElement< dim, spacedim > &fe, const Quadrature< dim > &quadrature, const UpdateFlags update_flags)'],\n+ ['../classFEValues.html#a6e29a8987e36c016fa9e5c5ad68f0fda', 1, 'FEValues::FEValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const hp::QCollection< dim > &quadrature, const UpdateFlags update_flags)'],\n+ ['../classFEValues.html#a051be8559fb1a35dff1ba230864d94b3', 1, 'FEValues::FEValues(const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const Quadrature< dim > &quadrature, const UpdateFlags update_flags)'],\n ['../group__UpdateFlags.html', 1, 'The interplay of UpdateFlags, Mapping, and FiniteElement in FEValues']\n ]],\n ['fevalues_20classes_406', ['Finite element access/FEValues classes', ['../group__feaccess.html', 1, '']]],\n ['fevalues_20work_20together_407', ['How Mapping, FiniteElement, and FEValues work together', ['../group__FE__vs__Mapping__vs__FEValues.html', 1, '']]],\n ['fevalues_3c_20dim_2c_20dim_20_3e_408', ['FEValues< dim, dim >', ['../classFEValues.html', 1, '']]],\n- ['fevalues_3c_20dim_2c_20spacedim_20_3e_409', ['fevalues< dim, spacedim >', ['../classMapping.html#a96dfe2e490e255ed133bf6289e47f46f', 1, 'Mapping::FEValues< dim, spacedim >'],\n- ['../classFiniteElement.html#a96dfe2e490e255ed133bf6289e47f46f', 1, 'FiniteElement::FEValues< dim, spacedim >'],\n- ['../classFEValues.html', 1, 'FEValues< dim, spacedim >']\n+ ['fevalues_3c_20dim_2c_20spacedim_20_3e_409', ['fevalues< dim, spacedim >', ['../classFEValues.html', 1, 'FEValues< dim, spacedim >'],\n+ ['../classMapping.html#a96dfe2e490e255ed133bf6289e47f46f', 1, 'Mapping::FEValues< dim, spacedim >'],\n+ ['../classFiniteElement.html#a96dfe2e490e255ed133bf6289e47f46f', 1, 'FiniteElement::FEValues< dim, spacedim >']\n ]],\n- ['fevaluesbase_410', ['fevaluesbase', ['../classhp_1_1FEValuesBase.html#aa7b15aff1d485d693d9d4abce89d333c', 1, 'hp::FEValuesBase::FEValuesBase(const FEValuesBase< dim, q_dim, FEValuesType > &other)'],\n- ['../classhp_1_1FEValuesBase.html#a5a949836e79210648b894a6b08ff0bb6', 1, 'hp::FEValuesBase::FEValuesBase(const FECollection< dim, FEValuesType::space_dimension > &fe_collection, const std::vector< QCollection< q_dim > > &q_collection, const UpdateFlags update_flags)'],\n- ['../classhp_1_1FEValuesBase.html', 1, 'hp::FEValuesBase< dim, q_dim, FEValuesType >'],\n+ ['fevaluesbase_410', ['fevaluesbase', ['../classFEValuesBase.html#a23ae1b07b99e3f5bd20c2624dc0a8e9c', 1, 'FEValuesBase::FEValuesBase()'],\n ['../classFEValuesBase.html', 1, 'FEValuesBase< dim, spacedim >'],\n- ['../classhp_1_1FEValuesBase.html#a42cc82649332f5d2e539178cb49f1df5', 1, 'hp::FEValuesBase::FEValuesBase(const FECollection< dim, FEValuesType::space_dimension > &fe_collection, const QCollection< q_dim > &q_collection, const UpdateFlags update_flags)'],\n+ ['../classhp_1_1FEValuesBase.html', 1, 'hp::FEValuesBase< dim, q_dim, FEValuesType >'],\n+ ['../classhp_1_1FEValuesBase.html#a213bdfae9bd231bf4599d1237977669c', 1, 'hp::FEValuesBase::FEValuesBase()'],\n+ ['../classFEValuesBase.html#a3adde03753e99c526bb323533faa25d2', 1, 'FEValuesBase::FEValuesBase()'],\n ['../classhp_1_1FEValuesBase.html#a7d0af43e308db69a2a823f07f4d66bdf', 1, 'hp::FEValuesBase::FEValuesBase(const MappingCollection< dim, FEValuesType::space_dimension > &mapping_collection, const FECollection< dim, FEValuesType::space_dimension > &fe_collection, const std::vector< QCollection< q_dim > > &q_collection, const UpdateFlags update_flags)'],\n- ['../classhp_1_1FEValuesBase.html#a213bdfae9bd231bf4599d1237977669c', 1, 'hp::FEValuesBase::FEValuesBase(const MappingCollection< dim, FEValuesType::space_dimension > &mapping_collection, const FECollection< dim, FEValuesType::space_dimension > &fe_collection, const QCollection< q_dim > &q_collection, const UpdateFlags update_flags)'],\n- ['../classFEValuesBase.html#a23ae1b07b99e3f5bd20c2624dc0a8e9c', 1, 'FEValuesBase::FEValuesBase(const FEValuesBase &)=delete'],\n- ['../classFEValuesBase.html#a3adde03753e99c526bb323533faa25d2', 1, 'FEValuesBase::FEValuesBase(const unsigned int n_q_points, const unsigned int dofs_per_cell, const UpdateFlags update_flags, const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe)']\n+ ['../classhp_1_1FEValuesBase.html#a42cc82649332f5d2e539178cb49f1df5', 1, 'hp::FEValuesBase::FEValuesBase(const FECollection< dim, FEValuesType::space_dimension > &fe_collection, const QCollection< q_dim > &q_collection, const UpdateFlags update_flags)'],\n+ ['../classhp_1_1FEValuesBase.html#a5a949836e79210648b894a6b08ff0bb6', 1, 'hp::FEValuesBase::FEValuesBase(const FECollection< dim, FEValuesType::space_dimension > &fe_collection, const std::vector< QCollection< q_dim > > &q_collection, const UpdateFlags update_flags)'],\n+ ['../classhp_1_1FEValuesBase.html#aa7b15aff1d485d693d9d4abce89d333c', 1, 'hp::FEValuesBase::FEValuesBase(const FEValuesBase< dim, q_dim, FEValuesType > &other)']\n ]],\n ['fevaluesbase_3c_20dim_2c_20dim_20_2d_201_2c_20_3a_3afefacevalues_3c_20dim_2c_20dim_20_3e_20_3e_411', ['FEValuesBase< dim, dim - 1, ::FEFaceValues< dim, dim > >', ['../classhp_1_1FEValuesBase.html', 1, 'hp']]],\n ['fevaluesbase_3c_20dim_2c_20dim_20_3e_412', ['FEValuesBase< dim, dim >', ['../classFEValuesBase.html', 1, '']]],\n ['fevaluesbase_3c_20dim_2c_20dim_2c_20_3a_3afevalues_3c_20dim_2c_20dim_20_3e_20_3e_413', ['FEValuesBase< dim, dim, ::FEValues< dim, dim > >', ['../classhp_1_1FEValuesBase.html', 1, 'hp']]],\n- ['fevaluesbase_3c_20dim_2c_20spacedim_20_3e_414', ['fevaluesbase< dim, spacedim >', ['../classFiniteElement.html#aaae1cf0eb77f09ffb83fe685445f8cd4', 1, 'FiniteElement::FEValuesBase< dim, spacedim >'],\n- ['../classMapping.html#aaae1cf0eb77f09ffb83fe685445f8cd4', 1, 'Mapping::FEValuesBase< dim, spacedim >']\n+ ['fevaluesbase_3c_20dim_2c_20spacedim_20_3e_414', ['fevaluesbase< dim, spacedim >', ['../classMapping.html#aaae1cf0eb77f09ffb83fe685445f8cd4', 1, 'Mapping::FEValuesBase< dim, spacedim >'],\n+ ['../classFiniteElement.html#aaae1cf0eb77f09ffb83fe685445f8cd4', 1, 'FiniteElement::FEValuesBase< dim, spacedim >']\n ]],\n ['fevaluesbase_3c_20dim1_2c_20dim1_20_3e_415', ['FEValuesBase< dim1, dim1 >', ['../classFEValuesBase.html', 1, '']]],\n ['fevaluesextractors_416', ['FEValuesExtractors', ['../namespaceFEValuesExtractors.html', 1, '']]],\n ['fevaluesviews_417', ['FEValuesViews', ['../namespaceFEValuesViews.html', 1, '']]],\n ['fevaluesviews_3a_3ainternal_418', ['internal', ['../namespaceFEValuesViews_1_1internal.html', 1, 'FEValuesViews']]],\n ['fevaluesviews_3a_3ascalar_419', ['Scalar', ['../classFEValuesBase.html#abd66d1380ef2e58a1e433bc1626c324e', 1, 'FEValuesBase']]],\n ['fevaluesviews_3a_3asymmetrictensor_420', ['SymmetricTensor', ['../classFEValuesBase.html#a1076f685e37ef85af297ce99125d8a1a', 1, 'FEValuesBase']]],\n ['fevaluesviews_3a_3atensor_421', ['Tensor', ['../classFEValuesBase.html#a741750605cc03e4b3ec0b456cf0f7631', 1, 'FEValuesBase']]],\n ['fevaluesviews_3a_3avector_422', ['Vector', ['../classFEValuesBase.html#ab7a6d19c4bc8339d65379e8f358cf5c5', 1, 'FEValuesBase']]],\n ['fevalv_423', ['fevalv', ['../classMeshWorker_1_1IntegrationInfo.html#ab84ac1f80fdc57d075693af38abe442e', 1, 'MeshWorker::IntegrationInfo']]],\n ['few_20instantiations_20most_20of_20which_20are_20known_424', ['A few instantiations, most of which are known', ['../Instantiations.html#Inst2', 1, '']]],\n ['fgmres_5fdata_425', ['fgmres_data', ['../classSolverSelector.html#a632b4f23006327773cea8e86d3f395a1', 1, 'SolverSelector']]],\n ['field_5ftransfer_2ecc_426', ['field_transfer.cc', ['../field__transfer_8cc.html', 1, '']]],\n ['field_5ftransfer_2eh_427', ['field_transfer.h', ['../field__transfer_8h.html', 1, '']]],\n- ['fieldtransfer_428', ['fieldtransfer', ['../classparallel_1_1distributed_1_1experimental_1_1FieldTransfer.html', 1, 'parallel::distributed::experimental::FieldTransfer< dim, VectorType, spacedim >'],\n- ['../classparallel_1_1distributed_1_1experimental_1_1FieldTransfer.html#a9516fe5f8954b9007c5eb1d4201f22e2', 1, 'parallel::distributed::experimental::FieldTransfer::FieldTransfer()']\n+ ['fieldtransfer_428', ['fieldtransfer', ['../classparallel_1_1distributed_1_1experimental_1_1FieldTransfer.html#a9516fe5f8954b9007c5eb1d4201f22e2', 1, 'parallel::distributed::experimental::FieldTransfer::FieldTransfer()'],\n+ ['../classparallel_1_1distributed_1_1experimental_1_1FieldTransfer.html', 1, 'parallel::distributed::experimental::FieldTransfer< dim, VectorType, spacedim >']\n ]],\n- ['file_429', ['file', ['../classHDF5_1_1File.html', 1, 'HDF5::File'],\n+ ['file_429', ['file', ['../classExceptionBase.html#a1d4ceba1d9d05c2e0f090c468ca66f9f', 1, 'ExceptionBase::file'],\n+ ['../classHDF5_1_1File.html', 1, 'HDF5::File'],\n ['../classHDF5_1_1File.html#ac57c2166633a0bd79e754c28c17a2f63', 1, 'HDF5::File::File(const std::string &name, const FileAccessMode mode, const bool mpi, const MPI_Comm mpi_communicator)'],\n ['../classHDF5_1_1File.html#a06a3657487b5a169235c44115c96921a', 1, 'HDF5::File::File(const std::string &name, const FileAccessMode mode, const MPI_Comm mpi_communicator)'],\n ['../classHDF5_1_1File.html#a360b2be6dd0f15627ecc329bf718dc71', 1, 'HDF5::File::File(const std::string &name, const FileAccessMode mode)'],\n- ['../classLogStream.html#acb78cddc6bd926a7ad7dd69ba49ebdde', 1, 'LogStream::file'],\n- ['../classExceptionBase.html#a1d4ceba1d9d05c2e0f090c468ca66f9f', 1, 'ExceptionBase::file']\n+ ['../classLogStream.html#acb78cddc6bd926a7ad7dd69ba49ebdde', 1, 'LogStream::file']\n ]],\n ['file_5fdepth_430', ['file_depth', ['../classLogStream.html#a28e6d2f51e7a36cd25c5225c7ecbe165', 1, 'LogStream']]],\n ['file_5fread_5fat_5fall_5fc_431', ['File_read_at_all_c', ['../namespaceUtilities_1_1MPI_1_1LargeCount.html#ae693ea83bde0c47bffa879ea79b73bef', 1, 'Utilities::MPI::LargeCount']]],\n ['file_5fread_5fat_5fc_432', ['File_read_at_c', ['../namespaceUtilities_1_1MPI_1_1LargeCount.html#ac2f16165e107a95c2670536eeda41683', 1, 'Utilities::MPI::LargeCount']]],\n ['file_5ftype_433', ['file_type', ['../classPatterns_1_1FileName.html#a02f19cd24f2e5cb8159742125cd91422', 1, 'Patterns::FileName']]],\n ['file_5fwrite_5fat_5fall_5fc_434', ['File_write_at_all_c', ['../namespaceUtilities_1_1MPI_1_1LargeCount.html#a7aba02f704d22ba101ebe0022500d4c5', 1, 'Utilities::MPI::LargeCount']]],\n ['file_5fwrite_5fat_5fc_435', ['File_write_at_c', ['../namespaceUtilities_1_1MPI_1_1LargeCount.html#a35c822f096db4f00d0b2e0392172fab6', 1, 'Utilities::MPI::LargeCount']]],\n ['file_5fwrite_5fordered_5fc_436', ['File_write_ordered_c', ['../namespaceUtilities_1_1MPI_1_1LargeCount.html#a6544878b68ff3c5137129b9b1399932b', 1, 'Utilities::MPI::LargeCount']]],\n ['fileaccessmode_437', ['FileAccessMode', ['../classHDF5_1_1File.html#ac3dc680d4e4ca3dd7139085c5056ff5f', 1, 'HDF5::File']]],\n ['filename_438', ['filename', ['../classPatterns_1_1FileName.html', 1, 'Patterns::FileName'],\n ['../classPatterns_1_1FileName.html#a4f420e25b4a3cce6f7fd9f133fbf705f', 1, 'Patterns::FileName::FileName()']\n ]],\n ['filename_5fbase_439', ['filename_base', ['../classAlgorithms_1_1DoFOutputOperator.html#a3f26425288596f9040de3914c24208d3', 1, 'Algorithms::DoFOutputOperator']]],\n ['filetype_440', ['FileType', ['../classPatterns_1_1FileName.html#a77b31b0cf4066796496f9d964e316777', 1, 'Patterns::FileName']]],\n- ['fill_441', ['fill', ['../classMeshWorker_1_1VectorDataBase.html#aaf09b449eb1b21a77882153248f9a1d3', 1, 'MeshWorker::VectorDataBase::fill()'],\n+ ['fill_441', ['fill', ['../classTableBase.html#ad54a19dddbed32640b977b4d7948b434', 1, 'TableBase::fill()'],\n ['../classMeshWorker_1_1VectorData.html#a1df239082d81a4b80b2f2579d28c5c25', 1, 'MeshWorker::VectorData::fill()'],\n+ ['../classMeshWorker_1_1VectorDataBase.html#aaf09b449eb1b21a77882153248f9a1d3', 1, 'MeshWorker::VectorDataBase::fill()'],\n ['../classLAPACKFullMatrix.html#af7a94112bbb40331fa4de8f2b502af8b', 1, 'LAPACKFullMatrix::fill()'],\n ['../classFullMatrix.html#ab65c7f313a4ce3432ea12e0f93145f23', 1, 'FullMatrix::fill(const number2 *)'],\n ['../classFullMatrix.html#a9bdf2b89ab7f7a0d5a7e988e43162361', 1, 'FullMatrix::fill(const FullMatrix< number2 > &src, const size_type dst_offset_i=0, const size_type dst_offset_j=0, const size_type src_offset_i=0, const size_type src_offset_j=0)'],\n- ['../classTableBase.html#a2a0d148a657080f22dc7c4f213c5a8ee', 1, 'TableBase::fill(const T &value)'],\n- ['../classTableBase.html#ad54a19dddbed32640b977b4d7948b434', 1, 'TableBase::fill(InputIterator entries, const bool C_style_indexing=true)'],\n+ ['../classTableBase.html#a2a0d148a657080f22dc7c4f213c5a8ee', 1, 'TableBase::fill()'],\n ['../classUtilities_1_1MPI_1_1internal_1_1ComputeIndexOwner_1_1FlexibleIndexStorage.html#a8c2e3784ce9f7671fc6fc1c703c0d892', 1, 'Utilities::MPI::internal::ComputeIndexOwner::FlexibleIndexStorage::fill()'],\n ['../classAlignedVector.html#a1d3f8d9637308d670fca25e85e39c80f', 1, 'AlignedVector::fill(const T &element)'],\n ['../classAlignedVector.html#a6d1805fd5c0824de60b496daa958b8a5', 1, 'AlignedVector::fill()']\n ]],\n- ['fill_5fand_5fcommunicate_5fcopy_5findices_442', ['fill_and_communicate_copy_indices', ['../classMGLevelGlobalTransfer_3_01LinearAlgebra_1_1distributed_1_1Vector_3_01Number_01_4_01_4.html#ad6cae6ab4723753c15530201dd141f5f', 1, 'MGLevelGlobalTransfer< LinearAlgebra::distributed::Vector< Number > >::fill_and_communicate_copy_indices()'],\n- ['../classMGLevelGlobalTransfer.html#a9da0461afd34f5c90e7a4d2ca630490e', 1, 'MGLevelGlobalTransfer::fill_and_communicate_copy_indices()']\n+ ['fill_5fand_5fcommunicate_5fcopy_5findices_442', ['fill_and_communicate_copy_indices', ['../classMGLevelGlobalTransfer.html#a9da0461afd34f5c90e7a4d2ca630490e', 1, 'MGLevelGlobalTransfer::fill_and_communicate_copy_indices()'],\n+ ['../classMGLevelGlobalTransfer_3_01LinearAlgebra_1_1distributed_1_1Vector_3_01Number_01_4_01_4.html#ad6cae6ab4723753c15530201dd141f5f', 1, 'MGLevelGlobalTransfer< LinearAlgebra::distributed::Vector< Number > >::fill_and_communicate_copy_indices()']\n ]],\n ['fill_5fand_5fcommunicate_5fcopy_5findices_5fglobal_5fcoarsening_443', ['fill_and_communicate_copy_indices_global_coarsening', ['../classMGTransferMF.html#ac69dc4b5f0f9a54367e1d70ea63e2782', 1, 'MGTransferMF']]],\n- ['fill_5fbinary_5fvector_444', ['fill_binary_vector', ['../classIndexSet.html#a309aa2408235350293adce28e489d0b1', 1, 'IndexSet::fill_binary_vector(Vector &vector) const'],\n- ['../classIndexSet.html#abeb838e6617d2a8edb889e643302a719', 1, 'IndexSet::fill_binary_vector(VectorType &vector) const']\n+ ['fill_5fbinary_5fvector_444', ['fill_binary_vector', ['../classIndexSet.html#abeb838e6617d2a8edb889e643302a719', 1, 'IndexSet::fill_binary_vector(VectorType &vector) const'],\n+ ['../classIndexSet.html#a309aa2408235350293adce28e489d0b1', 1, 'IndexSet::fill_binary_vector(Vector &vector) const']\n ]],\n ['fill_5fcell_5fdata_445', ['fill_cell_data', ['../classDataOutBase_1_1DataOutFilter.html#ad4847278ab6d4a6c0951e538d79b04ef', 1, 'DataOutBase::DataOutFilter']]],\n ['fill_5fconnectivity_446', ['fill_connectivity', ['../namespaceinternal_1_1MatrixFreeFunctions_1_1internal.html#a317a59770b78f307a1ceaddd5157345e', 1, 'internal::MatrixFreeFunctions::internal']]],\n ['fill_5fconnectivity_5fdofs_447', ['fill_connectivity_dofs', ['../namespaceinternal_1_1MatrixFreeFunctions_1_1internal.html#a02877e1140712ea39f3a22706c214da0', 1, 'internal::MatrixFreeFunctions::internal']]],\n ['fill_5fcopy_5findices_448', ['fill_copy_indices', ['../namespaceinternal_1_1MGTransfer.html#ac8f7f22a50c592460052cfa541680d95', 1, 'internal::MGTransfer']]],\n ['fill_5fedge_5fvalues_449', ['fill_edge_values', ['../classFE__NedelecSZ.html#aef8595b5050d5f5ffec3451b56119116', 1, 'FE_NedelecSZ']]],\n ['fill_5fentry_5fvalues_450', ['fill_entry_values', ['../classMultipleParameterLoop.html#a58138c82fb4fb1d75f5444baf26f4aed', 1, 'MultipleParameterLoop']]],\n ['fill_5fface_5fvalues_451', ['fill_face_values', ['../classFE__NedelecSZ.html#aef1d0477d0d86a73d7b3ffa13ea4e164', 1, 'FE_NedelecSZ']]],\n- ['fill_5ffe_5fface_5fvalues_452', ['fill_fe_face_values', ['../classFiniteElement.html#a5ec79e673d274e6c8a7c32ce771d7b92', 1, 'FiniteElement::fill_fe_face_values()'],\n+ ['fill_5ffe_5fface_5fvalues_452', ['fill_fe_face_values', ['../classFiniteElement.html#abd572e784ad8c26c2c41c9fc3ce86ed6', 1, 'FiniteElement::fill_fe_face_values()'],\n+ ['../classFE__PolyFace.html#a323973de787b9f3852d549ece54ff130', 1, 'FE_PolyFace::fill_fe_face_values()'],\n ['../classMappingQ.html#af4629cea9642d14655abbba2e6a5113e', 1, 'MappingQ::fill_fe_face_values()'],\n ['../classMappingManifold.html#a66ba9941d1754ba2c9daf2d486fb0db3', 1, 'MappingManifold::fill_fe_face_values()'],\n ['../classMappingFEField.html#ae4126a5f6efb9dbb5f26b2713a15936c', 1, 'MappingFEField::fill_fe_face_values()'],\n ['../classMappingFE.html#a4a5b64e15d99854eead25f92b8a1cf4e', 1, 'MappingFE::fill_fe_face_values()'],\n ['../classMappingCartesian.html#a13f640c37d5138ec35911c398be6478d', 1, 'MappingCartesian::fill_fe_face_values()'],\n ['../classMapping.html#aa51c964b1e51b69db3f4933b97bff8c8', 1, 'Mapping::fill_fe_face_values(const typename Triangulation< dim, spacedim >::cell_iterator &cell, const unsigned int face_no, const Quadrature< dim - 1 > &quadrature, const typename Mapping< dim, spacedim >::InternalDataBase &internal_data, internal::FEValuesImplementation::MappingRelatedData< dim, spacedim > &output_data) const'],\n ['../classMapping.html#a592a9196a0a0910bc5b46244933d816d', 1, 'Mapping::fill_fe_face_values(const typename Triangulation< dim, spacedim >::cell_iterator &cell, const unsigned int face_no, const hp::QCollection< dim - 1 > &quadrature, const typename Mapping< dim, spacedim >::InternalDataBase &internal_data, internal::FEValuesImplementation::MappingRelatedData< dim, spacedim > &output_data) const'],\n ['../classFESystem.html#a66ae6d53a443d66a29f4f897d5172be4', 1, 'FESystem::fill_fe_face_values()'],\n ['../classFE__PolyTensor.html#a7c5dd75ed051a427197f74f0fac1f6a8', 1, 'FE_PolyTensor::fill_fe_face_values()'],\n- ['../classFE__PolyFace.html#a323973de787b9f3852d549ece54ff130', 1, 'FE_PolyFace::fill_fe_face_values()'],\n ['../classFE__Poly.html#aa24528066d0371854c9b422ed551db90', 1, 'FE_Poly::fill_fe_face_values()'],\n ['../classFE__P1NC.html#a631848a5ad3ea54eea654a48477d8f47', 1, 'FE_P1NC::fill_fe_face_values()'],\n ['../classFE__Nothing.html#aa096a041aa280bed18b2c00561c8e9d7', 1, 'FE_Nothing::fill_fe_face_values()'],\n ['../classFE__NedelecSZ.html#a8fbb237d6dcd0fae5c4df6c36cfb9ce7', 1, 'FE_NedelecSZ::fill_fe_face_values()'],\n ['../classFE__Hermite.html#aad3efa09bf49b72623a57cc60fe0a2c4', 1, 'FE_Hermite::fill_fe_face_values()'],\n ['../classFE__FaceQ_3_011_00_01spacedim_01_4.html#a6cfa6022d21930da451549c3dc5bf2ae', 1, 'FE_FaceQ< 1, spacedim >::fill_fe_face_values()'],\n ['../classFE__Enriched.html#a44ab3be05eee784cd3b70b5d776a3f46', 1, 'FE_Enriched::fill_fe_face_values()'],\n ['../classFE__DGPNonparametric.html#a31e1c8287ddb44ffd6537c177a00f788', 1, 'FE_DGPNonparametric::fill_fe_face_values()'],\n- ['../classFiniteElement.html#abd572e784ad8c26c2c41c9fc3ce86ed6', 1, 'FiniteElement::fill_fe_face_values()']\n+ ['../classFiniteElement.html#a5ec79e673d274e6c8a7c32ce771d7b92', 1, 'FiniteElement::fill_fe_face_values()']\n ]],\n ['fill_5ffe_5fimmersed_5fsurface_5fvalues_453', ['fill_fe_immersed_surface_values', ['../classMapping.html#a4d120f691fd0fafb6e9cfb8034fdc521', 1, 'Mapping::fill_fe_immersed_surface_values()'],\n- ['../classMappingCartesian.html#a6e6c81880da9bf4e045e534fb27da687', 1, 'MappingCartesian::fill_fe_immersed_surface_values()'],\n ['../classMappingFEField.html#a5619a2816627d6d34b15af4e5af5df56', 1, 'MappingFEField::fill_fe_immersed_surface_values()'],\n- ['../classMappingQ.html#a8694e67ff511c2d48f2f9806c609ef2a', 1, 'MappingQ::fill_fe_immersed_surface_values()']\n+ ['../classMappingQ.html#a8694e67ff511c2d48f2f9806c609ef2a', 1, 'MappingQ::fill_fe_immersed_surface_values()'],\n+ ['../classMappingCartesian.html#a6e6c81880da9bf4e045e534fb27da687', 1, 'MappingCartesian::fill_fe_immersed_surface_values()']\n ]],\n- ['fill_5ffe_5fsubface_5fvalues_454', ['fill_fe_subface_values', ['../classMappingFE.html#aa6abacffbe6a35d7606fea80aaf1918a', 1, 'MappingFE::fill_fe_subface_values()'],\n+ ['fill_5ffe_5fsubface_5fvalues_454', ['fill_fe_subface_values', ['../classFE__NedelecSZ.html#a388ecdb16dbe8760bc52a36929394428', 1, 'FE_NedelecSZ::fill_fe_subface_values()'],\n+ ['../classFiniteElement.html#a6e391747328cb7feee87c1debfcf282e', 1, 'FiniteElement::fill_fe_subface_values()'],\n+ ['../classFE__DGPNonparametric.html#a1d07b800aa429f7f3df2ed5788f6b3b8', 1, 'FE_DGPNonparametric::fill_fe_subface_values()'],\n+ ['../classFE__FaceQ_3_011_00_01spacedim_01_4.html#a932509828b939e677d024887559f543a', 1, 'FE_FaceQ< 1, spacedim >::fill_fe_subface_values()'],\n+ ['../classFE__Enriched.html#a28b970b99878b876c7b61a8f8ddaafda', 1, 'FE_Enriched::fill_fe_subface_values()'],\n ['../classMappingQ.html#a55d26263547a910cae5c31026a4d1a3b', 1, 'MappingQ::fill_fe_subface_values()'],\n ['../classMappingManifold.html#a4ccfa0a5d8f88d7667dc6cda2ab05997', 1, 'MappingManifold::fill_fe_subface_values()'],\n ['../classMappingFEField.html#afb269cc5495e60edccebf5938156fd2b', 1, 'MappingFEField::fill_fe_subface_values()'],\n+ ['../classMappingFE.html#aa6abacffbe6a35d7606fea80aaf1918a', 1, 'MappingFE::fill_fe_subface_values()'],\n ['../classMappingCartesian.html#afe29b9ec9d8ad367c2b96d80cbdb854d', 1, 'MappingCartesian::fill_fe_subface_values()'],\n ['../classMapping.html#a3bd18876316cf71bb52b95664bf8718b', 1, 'Mapping::fill_fe_subface_values()'],\n ['../classFESystem.html#abeea22fe7b410885fd6491508a4ddc49', 1, 'FESystem::fill_fe_subface_values()'],\n ['../classFE__PolyTensor.html#abb6fa45bcee5a64d541c9942ca5f68be', 1, 'FE_PolyTensor::fill_fe_subface_values()'],\n+ ['../classFE__PolyFace.html#abbe38cc7980dcd4dbba4d99e25b2d254', 1, 'FE_PolyFace::fill_fe_subface_values()'],\n ['../classFE__Poly.html#aef37107da2f6beaecc46ac4a4f4b219f', 1, 'FE_Poly::fill_fe_subface_values()'],\n- ['../classFiniteElement.html#a6e391747328cb7feee87c1debfcf282e', 1, 'FiniteElement::fill_fe_subface_values()'],\n- ['../classFE__DGPNonparametric.html#a1d07b800aa429f7f3df2ed5788f6b3b8', 1, 'FE_DGPNonparametric::fill_fe_subface_values()'],\n- ['../classFE__Enriched.html#a28b970b99878b876c7b61a8f8ddaafda', 1, 'FE_Enriched::fill_fe_subface_values()'],\n- ['../classFE__FaceQ_3_011_00_01spacedim_01_4.html#a932509828b939e677d024887559f543a', 1, 'FE_FaceQ< 1, spacedim >::fill_fe_subface_values()'],\n- ['../classFE__NedelecSZ.html#a388ecdb16dbe8760bc52a36929394428', 1, 'FE_NedelecSZ::fill_fe_subface_values()'],\n- ['../classFE__Nothing.html#a6a7b2433a5ffb2430dbfba1bc9eb2983', 1, 'FE_Nothing::fill_fe_subface_values()'],\n ['../classFE__P1NC.html#a452da9292ed31cd5172e4aaa013ec544', 1, 'FE_P1NC::fill_fe_subface_values()'],\n- ['../classFE__PolyFace.html#abbe38cc7980dcd4dbba4d99e25b2d254', 1, 'FE_PolyFace::fill_fe_subface_values()']\n+ ['../classFE__Nothing.html#a6a7b2433a5ffb2430dbfba1bc9eb2983', 1, 'FE_Nothing::fill_fe_subface_values()']\n ]],\n- ['fill_5ffe_5fvalues_455', ['fill_fe_values', ['../classFE__PolyTensor.html#aa2c45807c35159a52796c74f03cb49bf', 1, 'FE_PolyTensor::fill_fe_values()'],\n+ ['fill_5ffe_5fvalues_455', ['fill_fe_values', ['../classMappingQ1Eulerian.html#ad8a5b7a83ed0166250d477518f55d5b5', 1, 'MappingQ1Eulerian::fill_fe_values()'],\n ['../classMappingQEulerian.html#a144001ee2a1e1f0933e6a4d748830688', 1, 'MappingQEulerian::fill_fe_values()'],\n- ['../classMappingQ1Eulerian.html#ad8a5b7a83ed0166250d477518f55d5b5', 1, 'MappingQ1Eulerian::fill_fe_values()'],\n ['../classMappingQ.html#a80c28ad911ada620b00f6f17c823ae38', 1, 'MappingQ::fill_fe_values()'],\n ['../classMappingManifold.html#af7c81a2033a13bb15b6907169fc806c0', 1, 'MappingManifold::fill_fe_values()'],\n ['../classMappingFEField.html#a7e9bac346ae5c5a75a90db89a440779c', 1, 'MappingFEField::fill_fe_values()'],\n ['../classMappingFE.html#a037a579a2bf2c280bf92deff6175484b', 1, 'MappingFE::fill_fe_values()'],\n ['../classMappingCartesian.html#a7c94f22344900afef287806ca24924e1', 1, 'MappingCartesian::fill_fe_values()'],\n ['../classMapping.html#add4a7af8fc07e6d15e4aafb4f372a9c7', 1, 'Mapping::fill_fe_values()'],\n ['../classFESystem.html#a2844ba01e1c682b85c73c156db23cf82', 1, 'FESystem::fill_fe_values()'],\n- ['../classFE__Poly.html#a49122ef128f0b013e3e6e9cb9b52cb48', 1, 'FE_Poly::fill_fe_values()'],\n+ ['../classFE__PolyTensor.html#aa2c45807c35159a52796c74f03cb49bf', 1, 'FE_PolyTensor::fill_fe_values()'],\n+ ['../classFE__PolyFace.html#a49f20953f2e9c18182e4aa04e7515b81', 1, 'FE_PolyFace::fill_fe_values()'],\n ['../classFE__P1NC.html#aa2861b0d02ea9f31ff9ecb6d463fab9b', 1, 'FE_P1NC::fill_fe_values()'],\n ['../classFE__Nothing.html#abfff861ff886fbd621fdc386dd2b03ad', 1, 'FE_Nothing::fill_fe_values()'],\n ['../classFE__NedelecSZ.html#a17ff299ec319d98e34699db43355950c', 1, 'FE_NedelecSZ::fill_fe_values()'],\n ['../classFE__Hermite.html#a4620c57ea871001f9e7cc1acbea00f2f', 1, 'FE_Hermite::fill_fe_values()'],\n ['../classFE__FaceQ_3_011_00_01spacedim_01_4.html#a1ae7d2d5c56ac327d5e68e02d7425249', 1, 'FE_FaceQ< 1, spacedim >::fill_fe_values()'],\n ['../classFE__Enriched.html#ab82ad4efdd9347df294e1d2f95d337a9', 1, 'FE_Enriched::fill_fe_values()'],\n ['../classFE__DGPNonparametric.html#ae8ad1d42c1dd29490774104d15d02bcd', 1, 'FE_DGPNonparametric::fill_fe_values()'],\n ['../classFiniteElement.html#a1ae4343ec757cd06ca8fb24c8487151e', 1, 'FiniteElement::fill_fe_values()'],\n- ['../classFE__PolyFace.html#a49f20953f2e9c18182e4aa04e7515b81', 1, 'FE_PolyFace::fill_fe_values()']\n+ ['../classFE__Poly.html#a49122ef128f0b013e3e6e9cb9b52cb48', 1, 'FE_Poly::fill_fe_values()']\n ]],\n ['fill_5findex_5fvector_456', ['fill_index_vector', ['../classIndexSet.html#a466dfb316d6475e548e19912eeda3a90', 1, 'IndexSet']]],\n ['fill_5finverse_5fjxw_5fvalues_457', ['fill_inverse_JxW_values', ['../classMatrixFreeOperators_1_1CellwiseInverseMassMatrix.html#a49ef5bebe20a8ebdf36c32a4ed3bc3bc', 1, 'MatrixFreeOperators::CellwiseInverseMassMatrix']]],\n ['fill_5flocal_5fdata_458', ['fill_local_data', ['../classMeshWorker_1_1IntegrationInfo.html#a9a100bcac58d1a53587930da369b744a', 1, 'MeshWorker::IntegrationInfo::fill_local_data(const DoFInfo< dim, spacedim, number > &info, bool split_fevalues)'],\n ['../classMeshWorker_1_1IntegrationInfo.html#a4725c36991d88944ee0a503929a085d2', 1, 'MeshWorker::IntegrationInfo::fill_local_data(std::vector< std::vector< std::vector< TYPE > > > &data, VectorSelector &selector, bool split_fevalues) const']\n ]],\n ['fill_5fmapping_5fdata_5ffor_5fface_5fquadrature_459', ['fill_mapping_data_for_face_quadrature', ['../classMappingQ.html#a373072e63b024d762b307865b8a5c87a', 1, 'MappingQ']]],\n@@ -941,18 +941,18 @@\n ['../classMappingQ.html#ab2c2d4cf3e9f9d30941fc87437bf9e6d', 1, 'MappingQ::fill_mapping_data_for_generic_points()']\n ]],\n ['fill_5fnode_5fdata_461', ['fill_node_data', ['../classDataOutBase_1_1DataOutFilter.html#a7bcf07906ce2277f9b56589a68ea0a0b', 1, 'DataOutBase::DataOutFilter']]],\n ['fill_5fpermutation_462', ['fill_permutation', ['../classFullMatrix.html#a15c1c072eb09809311fed47a03da2858', 1, 'FullMatrix']]],\n ['fill_5fstyle_463', ['fill_style', ['../structGridOutFlags_1_1XFig.html#a56e29c718f0e3e461f9cbc797d9d6da0', 1, 'GridOutFlags::XFig']]],\n ['filter_464', ['filter', ['../structPETScWrappers_1_1PreconditionParaSails_1_1AdditionalData.html#a935aa4cf6f84d52e4ba7584b295ab2bc', 1, 'PETScWrappers::PreconditionParaSails::AdditionalData']]],\n ['filter_5fduplicate_5fvertices_465', ['filter_duplicate_vertices', ['../structDataOutBase_1_1DataOutFilterFlags.html#ad5984d849f7de860591dfc4539c20f07', 1, 'DataOutBase::DataOutFilterFlags']]],\n- ['filter_5fiterators_466', ['filter_iterators', ['../group__CPP11.html#ga3948dd66d9e66ac55d89dc8f75fa4855', 1, 'FilteredIterator::filter_iterators(IteratorRange< BaseIterator > i, const Predicate &p)'],\n+ ['filter_5fiterators_466', ['filter_iterators', ['../group__CPP11.html#ga05713415704536e5b0e967d33c2c77c1', 1, 'filter_iterators(): filtered_iterator.h'],\n+ ['../group__CPP11.html#ga3948dd66d9e66ac55d89dc8f75fa4855', 1, 'FilteredIterator::filter_iterators(IteratorRange< BaseIterator > i, const Predicate &p)'],\n ['../group__CPP11.html#ga05713415704536e5b0e967d33c2c77c1', 1, 'FilteredIterator::filter_iterators(IteratorRange< BaseIterator > i, const Predicate &p, const Targs... args)'],\n- ['../group__CPP11.html#ga3948dd66d9e66ac55d89dc8f75fa4855', 1, 'filter_iterators(IteratorRange< BaseIterator > i, const Predicate &p): filtered_iterator.h'],\n- ['../group__CPP11.html#ga05713415704536e5b0e967d33c2c77c1', 1, 'filter_iterators(IteratorRange< BaseIterator > i, const Predicate &p, const Targs... args): filtered_iterator.h']\n+ ['../group__CPP11.html#ga3948dd66d9e66ac55d89dc8f75fa4855', 1, 'filter_iterators(): filtered_iterator.h']\n ]],\n ['filtered_5fcells_467', ['filtered_cells', ['../classDataOutBase_1_1DataOutFilter.html#aac0c8391641850d7df17352f607123ae', 1, 'DataOutBase::DataOutFilter']]],\n ['filtered_5fiterator_2eh_468', ['filtered_iterator.h', ['../filtered__iterator_8h.html', 1, '']]],\n ['filtered_5fpoints_469', ['filtered_points', ['../classDataOutBase_1_1DataOutFilter.html#a11c0ba92aeb7f86111f7022707e2bdf2', 1, 'DataOutBase::DataOutFilter']]],\n ['filterediterator_470', ['filterediterator', ['../classFilteredIterator.html', 1, 'FilteredIterator< BaseIterator >'],\n ['../classFilteredIterator.html#a5ab7a13002adffd786ae8862c9551d1b', 1, 'FilteredIterator::FilteredIterator(const FilteredIterator &fi)'],\n ['../classFilteredIterator.html#a60d5b3bb5eec9b464ea0ebce290aa610', 1, 'FilteredIterator::FilteredIterator(Predicate p, const BaseIterator &bi)'],\n@@ -971,23 +971,23 @@\n ['../classTensorProductMatrixSymmetricSumCollection.html#a907605c33823bd7ed19c7a7b2b528fce', 1, 'TensorProductMatrixSymmetricSumCollection::finalize()'],\n ['../classinternal_1_1MatrixFreeFunctions_1_1ConstraintInfo.html#ade7fa506321e86622d04abb506ae2f4d', 1, 'internal::MatrixFreeFunctions::ConstraintInfo::finalize()'],\n ['../classinternal_1_1MatrixFreeFunctions_1_1ConstraintInfo.html#a99a7532c92dd1cf46fcd4d9f4c4d6bdc', 1, 'internal::MatrixFreeFunctions::ConstraintInfo::finalize(const MPI_Comm comm)']\n ]],\n ['finalize_5fpetscslepc_476', ['finalize_petscslepc', ['../classInitFinalize.html#a73d6c25f01c08d01ae489c53bb7cd813', 1, 'InitFinalize']]],\n ['finalize_5fsensitive_5findependent_5fvariables_477', ['finalize_sensitive_independent_variables', ['../classDifferentiation_1_1AD_1_1HelperBase.html#adf6c9fe3b505f8572f940cb27b65e475', 1, 'Differentiation::AD::HelperBase']]],\n ['finalize_5fsetup_478', ['finalize_setup', ['../structGridTools_1_1internal_1_1DistributedComputePointLocationsInternal.html#af94887a76f164f81bd4783b39284723f', 1, 'GridTools::internal::DistributedComputePointLocationsInternal']]],\n- ['find_479', ['find', ['../classPathSearch.html#a00cdd1bd8bd3d96973aff558311ef6cb', 1, 'PathSearch::find(const std::string &filename, const char *open_mode="r")'],\n- ['../classPathSearch.html#a4133f1dfd007d512bed1fc4172623b6f', 1, 'PathSearch::find(const std::string &filename, const std::string &suffix, const char *open_mode="r")'],\n- ['../classAnyData.html#a4f99410c676515b34476e57583bf990d', 1, 'AnyData::find()']\n+ ['find_479', ['find', ['../classPathSearch.html#a00cdd1bd8bd3d96973aff558311ef6cb', 1, 'PathSearch::find()'],\n+ ['../classAnyData.html#a4f99410c676515b34476e57583bf990d', 1, 'AnyData::find()'],\n+ ['../classPathSearch.html#a4133f1dfd007d512bed1fc4172623b6f', 1, 'PathSearch::find()']\n ]],\n ['find_5factive_5fcell_5faround_5fpoint_480', ['find_active_cell_around_point', ['../namespaceGridTools.html#a2e10aeb1c8e76110a84b6945eac3aaf0', 1, 'GridTools::find_active_cell_around_point(const Mapping< dim, spacedim > &mapping, const MeshType< dim, spacedim > &mesh, const Point< spacedim > &p, const std::vector< bool > &marked_vertices={}, const double tolerance=1.e-10)'],\n+ ['../namespaceGridTools.html#af9559253d4aa8f002393dcac45c76fb7', 1, 'GridTools::find_active_cell_around_point(const Mapping< dim, spacedim > &mapping, const MeshType< dim, spacedim > &mesh, const Point< spacedim > &p, const std::vector< std::set< typename MeshType< dim, spacedim >::active_cell_iterator > > &vertex_to_cell_map, const std::vector< std::vector< Tensor< 1, spacedim > > > &vertex_to_cell_centers, const typename MeshType< dim, spacedim >::active_cell_iterator &cell_hint=typename MeshType< dim, spacedim >::active_cell_iterator(), const std::vector< bool > &marked_vertices={}, const RTree< std::pair< Point< spacedim >, unsigned int > > &used_vertices_rtree=RTree< std::pair< Point< spacedim >, unsigned int > >{}, const double tolerance=1.e-10, const RTree< std::pair< BoundingBox< spacedim >, typename Triangulation< dim, spacedim >::active_cell_iterator > > *relevant_cell_bounding_boxes_rtree=nullptr)'],\n ['../namespaceGridTools.html#a9df2272fe8a72156bc2628aa07c5123e', 1, 'GridTools::find_active_cell_around_point(const MeshType< dim, spacedim > &mesh, const Point< spacedim > &p, const std::vector< bool > &marked_vertices={}, const double tolerance=1.e-10)'],\n- ['../namespaceGridTools.html#a0f04de5b8fee18233b4a2dbb81eb64ea', 1, 'GridTools::find_active_cell_around_point(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &mesh, const Point< spacedim > &p, const double tolerance=1.e-10)'],\n ['../namespaceGridTools.html#a59f673ed723568e41c72a3634e4d12db', 1, 'GridTools::find_active_cell_around_point(const Cache< dim, spacedim > &cache, const Point< spacedim > &p, const typename Triangulation< dim, spacedim >::active_cell_iterator &cell_hint=typename Triangulation< dim, spacedim >::active_cell_iterator(), const std::vector< bool > &marked_vertices={}, const double tolerance=1.e-10)'],\n- ['../namespaceGridTools.html#af9559253d4aa8f002393dcac45c76fb7', 1, 'GridTools::find_active_cell_around_point(const Mapping< dim, spacedim > &mapping, const MeshType< dim, spacedim > &mesh, const Point< spacedim > &p, const std::vector< std::set< typename MeshType< dim, spacedim >::active_cell_iterator > > &vertex_to_cell_map, const std::vector< std::vector< Tensor< 1, spacedim > > > &vertex_to_cell_centers, const typename MeshType< dim, spacedim >::active_cell_iterator &cell_hint=typename MeshType< dim, spacedim >::active_cell_iterator(), const std::vector< bool > &marked_vertices={}, const RTree< std::pair< Point< spacedim >, unsigned int > > &used_vertices_rtree=RTree< std::pair< Point< spacedim >, unsigned int > >{}, const double tolerance=1.e-10, const RTree< std::pair< BoundingBox< spacedim >, typename Triangulation< dim, spacedim >::active_cell_iterator > > *relevant_cell_bounding_boxes_rtree=nullptr)']\n+ ['../namespaceGridTools.html#a0f04de5b8fee18233b4a2dbb81eb64ea', 1, 'GridTools::find_active_cell_around_point(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &mesh, const Point< spacedim > &p, const double tolerance=1.e-10)']\n ]],\n ['find_5fall_5factive_5fcells_5faround_5fpoint_481', ['find_all_active_cells_around_point', ['../namespaceGridTools.html#aca1f4144a243fb9a1aa16e15dd1f6f68', 1, 'GridTools::find_all_active_cells_around_point(const Mapping< dim, spacedim > &mapping, const MeshType< dim, spacedim > &mesh, const Point< spacedim > &p, const double tolerance, const std::pair< typename MeshType< dim, spacedim >::active_cell_iterator, Point< dim > > &first_cell, const std::vector< std::set< typename MeshType< dim, spacedim >::active_cell_iterator > > *vertex_to_cells=nullptr)'],\n ['../namespaceGridTools.html#af7daaed7cdd68d2b8f70d2dde1df3061', 1, 'GridTools::find_all_active_cells_around_point(const Mapping< dim, spacedim > &mapping, const MeshType< dim, spacedim > &mesh, const Point< spacedim > &p, const double tolerance=1e-10, const std::vector< bool > &marked_vertices={})']\n ]],\n ['find_5fall_5flocally_5fowned_5factive_5fcells_5faround_5fpoint_482', ['find_all_locally_owned_active_cells_around_point', ['../namespaceGridTools_1_1internal.html#a62913b6866784319011d10c195cf6c5f', 1, 'GridTools::internal']]],\n ['find_5fbest_5fheight_5fdirection_483', ['find_best_height_direction', ['../namespaceNonMatching_1_1internal_1_1QuadratureGeneratorImplementation.html#aac1581c92212a0dc485d516eeefc378b', 1, 'NonMatching::internal::QuadratureGeneratorImplementation']]],\n ['find_5fcells_5fadjacent_5fto_5fvertex_484', ['find_cells_adjacent_to_vertex', ['../namespaceGridTools.html#a4fffaf53ce623923fb5cb7770fe72d79', 1, 'GridTools']]],\n@@ -1003,16 +1003,16 @@\n ['find_5fdominating_5ffe_491', ['find_dominating_fe', ['../classhp_1_1FECollection.html#a6df6ca3a652ba86592d6ea0b94a03e1d', 1, 'hp::FECollection']]],\n ['find_5fdominating_5ffe_5fextended_492', ['find_dominating_fe_extended', ['../classhp_1_1FECollection.html#a1c4f34d801d827773a91ff539ffabadd', 1, 'hp::FECollection']]],\n ['find_5fenclosing_5ffes_493', ['find_enclosing_fes', ['../classhp_1_1FECollection.html#a6eba9b691c9f0b12f04b39fd2cac89ad', 1, 'hp::FECollection']]],\n ['find_5fextreme_5fvalues_494', ['find_extreme_values', ['../namespaceNonMatching_1_1internal_1_1QuadratureGeneratorImplementation.html#a9b0552dd43cb89d5a070ee4f0c3ec786', 1, 'NonMatching::internal::QuadratureGeneratorImplementation']]],\n ['find_5fpoint_5fowner_5frank_495', ['find_point_owner_rank', ['../classparallel_1_1distributed_1_1Triangulation.html#a877c9dd606fe0693a6351890161ae839', 1, 'parallel::distributed::Triangulation::find_point_owner_rank(const Point< dim > &p)'],\n ['../classparallel_1_1distributed_1_1Triangulation.html#aa30a29367e5179cf9e45fb5596a9b8fb', 1, 'parallel::distributed::Triangulation::find_point_owner_rank(const std::vector< Point< dim > > &points)']\n ]],\n- ['find_5froots_496', ['find_roots', ['../classNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1RootFinder.html#a5b27d8ad2120191c1226350686432501', 1, 'NonMatching::internal::QuadratureGeneratorImplementation::RootFinder::find_roots(const std::vector< std::reference_wrapper< const Function< 1 > > > &functions, const BoundingBox< 1 > &interval, std::vector< double > &roots)'],\n- ['../classNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1RootFinder.html#a3aabdb31d57922802d21ed5496588b8f', 1, 'NonMatching::internal::QuadratureGeneratorImplementation::RootFinder::find_roots(const Function< 1 > &function, const BoundingBox< 1 > &interval, const unsigned int recursion_depth, std::vector< double > &roots)']\n+ ['find_5froots_496', ['find_roots', ['../classNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1RootFinder.html#a3aabdb31d57922802d21ed5496588b8f', 1, 'NonMatching::internal::QuadratureGeneratorImplementation::RootFinder::find_roots(const Function< 1 > &function, const BoundingBox< 1 > &interval, const unsigned int recursion_depth, std::vector< double > &roots)'],\n+ ['../classNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1RootFinder.html#a5b27d8ad2120191c1226350686432501', 1, 'NonMatching::internal::QuadratureGeneratorImplementation::RootFinder::find_roots(const std::vector< std::reference_wrapper< const Function< 1 > > > &functions, const BoundingBox< 1 > &interval, std::vector< double > &roots)']\n ]],\n ['find_5funnumbered_5fstarting_5findex_497', ['find_unnumbered_starting_index', ['../namespaceSparsityTools_1_1internal.html#a08af5e83076134bbf9dcfd33530dfe7a', 1, 'SparsityTools::internal']]],\n ['fine_5fdof_5fhandler_5fview_5freinit_498', ['fine_dof_handler_view_reinit', ['../namespaceUtilities_1_1MPI_1_1internal_1_1Tags.html#a1c190e50dabbd9b60e230b843c6caa44ad9e3aaa68ce02bd204742414a15ebb54', 1, 'Utilities::MPI::internal::Tags']]],\n ['fine_5felement_5fis_5fcontinuous_499', ['fine_element_is_continuous', ['../classMGTwoLevelTransferBase.html#a67684b2de18c6ff5c4ff825792ad59ac', 1, 'MGTwoLevelTransferBase']]],\n ['finest_5flevel_500', ['finest_level', ['../classDoFHandler_1_1MGVertexDoFs.html#a93036658e0fabf580e202963e9bc2e76', 1, 'DoFHandler::MGVertexDoFs']]],\n ['finish_5fintegrate_5ffast_501', ['finish_integrate_fast', ['../classFEPointEvaluation.html#ab4cb2f71c69377ea908944dc8d7321ab', 1, 'FEPointEvaluation']]],\n ['finish_5fparameter_5fvalue_502', ['finish_parameter_value', ['../classDataOutStack.html#a65ba4c2d85d724d424da18ec748fb98f', 1, 'DataOutStack']]],\n@@ -1020,70 +1020,70 @@\n ['finite_20element_20space_20descriptions_504', ['Finite element space descriptions', ['../group__fe.html', 1, '']]],\n ['finite_20element_20support_505', ['hp-finite element support', ['../group__hp.html', 1, '']]],\n ['finite_20elements_506', ['Finite elements', ['../group__feall.html', 1, '']]],\n ['finite_5fdifference_5fstep_507', ['finite_difference_step', ['../classFunctionManifold.html#ab5acc07107fcb644d5f1e5eb40ba226b', 1, 'FunctionManifold']]],\n ['finite_5felement_508', ['finite_element', ['../classMeshWorker_1_1IntegrationInfo.html#a1e9e9a4605900da8b0a049c6fa7ed3a1', 1, 'MeshWorker::IntegrationInfo']]],\n ['finite_5felement_5foutput_509', ['finite_element_output', ['../classFEValuesBase.html#acfc8644fa994116af02667ddd6517ae3', 1, 'FEValuesBase']]],\n ['finite_5felements_510', ['finite_elements', ['../structinternal_1_1DataOutImplementation_1_1ParallelDataBase.html#a5627d159065d6c1eab685739cf63cf7d', 1, 'internal::DataOutImplementation::ParallelDataBase']]],\n- ['finiteelement_511', ['finiteelement', ['../classFiniteElement.html#a904941a97e1f4e87d2770c8e9fe455c1', 1, 'FiniteElement::FiniteElement(const FiniteElementData< dim > &fe_data, const std::vector< bool > &restriction_is_additive_flags, const std::vector< ComponentMask > &nonzero_components)'],\n- ['../classFiniteElement.html#a787057967c8d34a14cfdb422e4a7ff0c', 1, 'FiniteElement::FiniteElement(const FiniteElement< dim, spacedim > &)=default'],\n+ ['finiteelement_511', ['finiteelement', ['../classFiniteElement.html', 1, 'FiniteElement< dim, spacedim >'],\n+ ['../classFiniteElement.html#a904941a97e1f4e87d2770c8e9fe455c1', 1, 'FiniteElement::FiniteElement(const FiniteElementData< dim > &fe_data, const std::vector< bool > &restriction_is_additive_flags, const std::vector< ComponentMask > &nonzero_components)'],\n ['../classFiniteElement.html#ac1e42bc5295581db57e91ba1463b4de3', 1, 'FiniteElement::FiniteElement(FiniteElement< dim, spacedim > &&)=default'],\n- ['../classFiniteElement.html', 1, 'FiniteElement< dim, spacedim >']\n+ ['../classFiniteElement.html#a787057967c8d34a14cfdb422e4a7ff0c', 1, 'FiniteElement::FiniteElement(const FiniteElement< dim, spacedim > &)=default']\n ]],\n ['finiteelement_20and_20fevalues_20work_20together_512', ['How Mapping, FiniteElement, and FEValues work together', ['../group__FE__vs__Mapping__vs__FEValues.html', 1, '']]],\n ['finiteelement_20in_20fevalues_513', ['The interplay of UpdateFlags, Mapping, and FiniteElement in FEValues', ['../group__UpdateFlags.html', 1, '']]],\n ['finiteelement_3c_201_2c_20spacedim_20_3e_514', ['FiniteElement< 1, spacedim >', ['../classFiniteElement.html', 1, '']]],\n ['finiteelement_3c_202_2c_202_20_3e_515', ['FiniteElement< 2, 2 >', ['../classFiniteElement.html', 1, '']]],\n ['finiteelement_3c_20dim_2c_20dim_20_3e_516', ['FiniteElement< dim, dim >', ['../classFiniteElement.html', 1, '']]],\n ['finiteelement_3c_20dim_2c_20spacedim_20_3e_517', ['FiniteElement< dim, spacedim >', ['../classFiniteElement.html', 1, '']]],\n ['finiteelement_3c_20polynomialtype_3a_3adimension_2b1_2c_20polynomialtype_3a_3adimension_2b1_20_3e_518', ['FiniteElement< PolynomialType::dimension+1, PolynomialType::dimension+1 >', ['../classFiniteElement.html', 1, '']]],\n- ['finiteelementdata_519', ['finiteelementdata', ['../classFiniteElementData.html', 1, 'FiniteElementData< dim >'],\n- ['../classFiniteElementData.html#aed4ee7725473b22ec33757132e5f2520', 1, 'FiniteElementData::FiniteElementData(const internal::GenericDoFsPerObject &data, const ReferenceCell reference_cell, const unsigned int n_components, const unsigned int degree, const Conformity conformity=unknown, const BlockIndices &block_indices=BlockIndices())'],\n+ ['finiteelementdata_519', ['finiteelementdata', ['../classFiniteElementData.html#aed4ee7725473b22ec33757132e5f2520', 1, 'FiniteElementData::FiniteElementData()'],\n+ ['../classFiniteElementData.html', 1, 'FiniteElementData< dim >'],\n ['../classFiniteElementData.html#af3b48f48a9b4f61b1f54b9845d2e766b', 1, 'FiniteElementData::FiniteElementData(const std::vector< unsigned int > &dofs_per_object, const unsigned int n_components, const unsigned int degree, const Conformity conformity=unknown, const BlockIndices &block_indices=BlockIndices())'],\n ['../classFiniteElementData.html#ab1b8fa5572424f4ab8c6ebafe6a9627f', 1, 'FiniteElementData::FiniteElementData(const std::vector< unsigned int > &dofs_per_object, const ReferenceCell reference_cell, const unsigned int n_components, const unsigned int degree, const Conformity conformity=unknown, const BlockIndices &block_indices=BlockIndices())']\n ]],\n ['finiteelementdomination_520', ['FiniteElementDomination', ['../namespaceFiniteElementDomination.html', 1, '']]],\n ['finiteelementrelateddata_521', ['FiniteElementRelatedData', ['../classinternal_1_1FEValuesImplementation_1_1FiniteElementRelatedData.html', 1, 'internal::FEValuesImplementation']]],\n ['finiteelementrelateddata_3c_20dim_2c_20spacedim_20_3e_522', ['FiniteElementRelatedData< dim, spacedim >', ['../classinternal_1_1FEValuesImplementation_1_1FiniteElementRelatedData.html', 1, 'internal::FEValuesImplementation']]],\n- ['finitesizehistory_523', ['finitesizehistory', ['../classFiniteSizeHistory.html#a483343ac65e2574e28e702954438e568', 1, 'FiniteSizeHistory::FiniteSizeHistory()'],\n- ['../classFiniteSizeHistory.html', 1, 'FiniteSizeHistory< T >']\n+ ['finitesizehistory_523', ['finitesizehistory', ['../classFiniteSizeHistory.html', 1, 'FiniteSizeHistory< T >'],\n+ ['../classFiniteSizeHistory.html#a483343ac65e2574e28e702954438e568', 1, 'FiniteSizeHistory::FiniteSizeHistory()']\n ]],\n ['first_524', ['first', ['../grid__out_8cc.html#a827a345f29da7caeb588b11013869a01', 1, 'grid_out.cc']]],\n ['first_5fblock_5fof_5fbase_525', ['first_block_of_base', ['../classFiniteElement.html#afc49f8114f396b20b9a7fe9a3c058568', 1, 'FiniteElement']]],\n ['first_5fcell_526', ['first_cell', ['../classDataOutRotation.html#aa892a39bd99ef698b203fd3029fd0c54', 1, 'DataOutRotation']]],\n ['first_5fcell_5ffunction_527', ['first_cell_function', ['../classDataOut.html#ac375257e903ef002986cf9b81b2eeacb', 1, 'DataOut']]],\n- ['first_5fcomponent_528', ['first_component', ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1Tensor_3_012_01_4_01_4.html#a55c714e04ff9d382ee27b43bc6691aa1', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::Tensor< 2 > >::first_component()'],\n+ ['first_5fcomponent_528', ['first_component', ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1SymmetricTensor_3_012_01_4_01_4.html#a514826970e612f827ebd5b5722f07565', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::first_component()'],\n ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1Scalar_01_4.html#a23215f3ce51a3e2bc6d258916cdf78a1', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::Scalar >::first_component()'],\n ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1Vector_01_4.html#abb008e3cfc83498f4bf3e53278df6fb1', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::Vector >::first_component()'],\n ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1Tensor_3_011_01_4_01_4.html#a76696daaadcdc86d54acd26423dbc0d4', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::Tensor< 1 > >::first_component()'],\n- ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1SymmetricTensor_3_012_01_4_01_4.html#a514826970e612f827ebd5b5722f07565', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::first_component()']\n+ ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1Tensor_3_012_01_4_01_4.html#a55c714e04ff9d382ee27b43bc6691aa1', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::Tensor< 2 > >::first_component()']\n ]],\n ['first_5fdof_5findices_529', ['first_dof_indices', ['../classFECouplingValues.html#a4343fd7848763119463cb9e0ab240b19', 1, 'FECouplingValues']]],\n ['first_5fface_530', ['first_face', ['../classDataOutFaces.html#ae53579b046aa2618f92631a029fb7a14', 1, 'DataOutFaces']]],\n ['first_5fface_5fline_5findex_531', ['first_face_line_index', ['../classFiniteElementData.html#a70cf27d2dabe49e0c1f57954d7d08500', 1, 'FiniteElementData']]],\n ['first_5fface_5fquad_5findex_532', ['first_face_quad_index', ['../classFiniteElementData.html#a0f85f3eae2daee423441fce5e87fa2e6', 1, 'FiniteElementData']]],\n ['first_5ffe_5fvalues_533', ['first_fe_values', ['../classFECouplingValues.html#a5d4a370d1459f1e3f867258850e4dab0', 1, 'FECouplingValues']]],\n ['first_5fhex_5findex_534', ['first_hex_index', ['../classFiniteElementData.html#a649a135f376e3fba63ecf08c2b17cc64', 1, 'FiniteElementData']]],\n ['first_5findex_5fof_5fquads_535', ['first_index_of_quads', ['../classFiniteElementData.html#a14931dc40fe240f6a263639233bba7c8', 1, 'FiniteElementData']]],\n- ['first_5finvariant_536', ['first_invariant', ['../symmetric__tensor_8h.html#a42632a338dab99a6165188f7d5687dd0', 1, 'first_invariant(): symmetric_tensor.h'],\n- ['../classSymmetricTensor.html#a42632a338dab99a6165188f7d5687dd0', 1, 'SymmetricTensor::first_invariant()']\n+ ['first_5finvariant_536', ['first_invariant', ['../classSymmetricTensor.html#a42632a338dab99a6165188f7d5687dd0', 1, 'SymmetricTensor::first_invariant()'],\n+ ['../symmetric__tensor_8h.html#a42632a338dab99a6165188f7d5687dd0', 1, 'first_invariant(): symmetric_tensor.h']\n ]],\n ['first_5fkind_537', ['first_kind', ['../structPreconditionChebyshev_1_1AdditionalData.html#ad61a2becabcf56423f91b20b4fcfb1b3a6594e77ff709f068f4bf484f3a3441c7', 1, 'PreconditionChebyshev::AdditionalData']]],\n ['first_5fline_5findex_538', ['first_line_index', ['../classFiniteElementData.html#a8c172e26b87c60b3f7e5e3ebf155b62e', 1, 'FiniteElementData']]],\n ['first_5fline_5findex_5fof_5ffaces_539', ['first_line_index_of_faces', ['../classFiniteElementData.html#a19e774fd5a5e136153d9a5f86d2eb4df', 1, 'FiniteElementData']]],\n ['first_5fobject_5findex_5fon_5fface_540', ['first_object_index_on_face', ['../structinternal_1_1GenericDoFsPerObject.html#a4446fe6686945e0eb1461d659dc85b6b', 1, 'internal::GenericDoFsPerObject']]],\n ['first_5fprocess_5fcolumn_541', ['first_process_column', ['../classScaLAPACKMatrix.html#a15e893b58c1079c78ee094f8107f7ce4', 1, 'ScaLAPACKMatrix']]],\n ['first_5fprocess_5frow_542', ['first_process_row', ['../classScaLAPACKMatrix.html#a6b66eb11a9e96f925692a930bf98f8d6', 1, 'ScaLAPACKMatrix']]],\n ['first_5fquad_5findex_543', ['first_quad_index', ['../classFiniteElementData.html#aca9fc2a37fc1aa814ac73e93baca4bea', 1, 'FiniteElementData']]],\n ['first_5fquad_5findex_5fof_5ffaces_544', ['first_quad_index_of_faces', ['../classFiniteElementData.html#aab283db35ae16941e69937ccdba5f61b', 1, 'FiniteElementData']]],\n ['first_5frenumbering_5fdata_545', ['first_renumbering_data', ['../classFECouplingValues.html#aaa1e685bc2cea0880682c1908ee4e2ff', 1, 'FECouplingValues']]],\n ['first_5fselected_5fblock_546', ['first_selected_block', ['../classBlockMask.html#aa221ae8f9c5fb2a78f50d611e832bb6a', 1, 'BlockMask']]],\n- ['first_5fselected_5fcomponent_547', ['first_selected_component', ['../classFEEvaluationData.html#afa470fd6d8f94bb169e63626dff644c6', 1, 'FEEvaluationData::first_selected_component'],\n+ ['first_5fselected_5fcomponent_547', ['first_selected_component', ['../classComponentMask.html#addd3d8185168e4f8e147d5f6c24fad15', 1, 'ComponentMask::first_selected_component()'],\n ['../classFERemoteEvaluation.html#adf30099dcbc47403181987e2291772c7', 1, 'FERemoteEvaluation::first_selected_component'],\n- ['../classComponentMask.html#addd3d8185168e4f8e147d5f6c24fad15', 1, 'ComponentMask::first_selected_component()']\n+ ['../classFEEvaluationData.html#afa470fd6d8f94bb169e63626dff644c6', 1, 'FEEvaluationData::first_selected_component']\n ]],\n ['first_5fselected_5fcomponents_548', ['first_selected_components', ['../classMatrixFreeTools_1_1internal_1_1ComputeMatrixScratchData.html#a9402f759290c4c51425a04693796d71d', 1, 'MatrixFreeTools::internal::ComputeMatrixScratchData']]],\n ['first_5fsweep_5fwith_5fcorrection_549', ['first_sweep_with_correction', ['../structTimeStepBase__Tria__Flags_1_1RefinementFlags.html#a91ca1c1f1bf8a774eee335e65953fbb3', 1, 'TimeStepBase_Tria_Flags::RefinementFlags']]],\n ['first_5ftensor_5fcomponent_550', ['first_tensor_component', ['../structFEValuesExtractors_1_1SymmetricTensor.html#afa7f58a21f427f99871511d94b40a988', 1, 'FEValuesExtractors::SymmetricTensor::first_tensor_component'],\n ['../structFEValuesExtractors_1_1Tensor.html#adf5e4bb608a1c99afaff52715cabef92', 1, 'FEValuesExtractors::Tensor::first_tensor_component'],\n ['../classFEValuesViews_1_1SymmetricTensor_3_012_00_01dim_00_01spacedim_01_4.html#a8807beb97aad7e14cc9b55829ae96a7a', 1, 'FEValuesViews::SymmetricTensor< 2, dim, spacedim >::first_tensor_component'],\n ['../classFEValuesViews_1_1Tensor_3_012_00_01dim_00_01spacedim_01_4.html#a397ebe03a980cc711f38e7c937d13f6c', 1, 'FEValuesViews::Tensor< 2, dim, spacedim >::first_tensor_component']\n@@ -1091,74 +1091,74 @@\n ['first_5fvector_5fcomponent_551', ['first_vector_component', ['../structFEValuesExtractors_1_1Vector.html#a035b67115fcd9d8d16bf5f2d5312ba2b', 1, 'FEValuesExtractors::Vector::first_vector_component'],\n ['../classFEValuesViews_1_1Vector.html#a31e46451b41a7e033c47e6e9a49832bf', 1, 'FEValuesViews::Vector::first_vector_component']\n ]],\n ['firstcellfunctiontype_552', ['FirstCellFunctionType', ['../classDataOut.html#a19a12e8cf308de29f9d0861368bab16b', 1, 'DataOut']]],\n ['firstchildpolicy_553', ['firstchildpolicy', ['../classRepartitioningPolicyTools_1_1FirstChildPolicy.html#aa7215cd8307c3baf86af63e9f552922a', 1, 'RepartitioningPolicyTools::FirstChildPolicy::FirstChildPolicy()'],\n ['../classRepartitioningPolicyTools_1_1FirstChildPolicy.html', 1, 'RepartitioningPolicyTools::FirstChildPolicy< dim, spacedim >']\n ]],\n- ['firstcoupling_554', ['firstcoupling', ['../structFEValuesExtractors_1_1FirstCoupling.html', 1, 'FEValuesExtractors::FirstCoupling< Extractor >'],\n- ['../structFEValuesExtractors_1_1FirstCoupling.html#acdf1c75a8d513f1e8961f41cd7da2d57', 1, 'FEValuesExtractors::FirstCoupling::FirstCoupling()']\n+ ['firstcoupling_554', ['firstcoupling', ['../structFEValuesExtractors_1_1FirstCoupling.html#acdf1c75a8d513f1e8961f41cd7da2d57', 1, 'FEValuesExtractors::FirstCoupling::FirstCoupling()'],\n+ ['../structFEValuesExtractors_1_1FirstCoupling.html', 1, 'FEValuesExtractors::FirstCoupling< Extractor >']\n ]],\n ['fix_5fcoarsen_5fflags_555', ['fix_coarsen_flags', ['../classTriangulation.html#a37dc87bf8f3793947ba51f2da20b8442', 1, 'Triangulation']]],\n- ['fix_5fdiagonal_556', ['fix_diagonal', ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionSSOR_1_1AdditionalData.html#a2045c205dd573bfad666d063987937f0', 1, 'LinearAlgebra::TpetraWrappers::PreconditionSSOR::AdditionalData::fix_diagonal'],\n- ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionSOR_1_1AdditionalData.html#a17ddd94573506af68ca5bd020c06af07', 1, 'LinearAlgebra::TpetraWrappers::PreconditionSOR::AdditionalData::fix_diagonal'],\n- ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionL1GaussSeidel_1_1AdditionalData.html#a34588c6a4775d66bfe3510af73414ffc', 1, 'LinearAlgebra::TpetraWrappers::PreconditionL1GaussSeidel::AdditionalData::fix_diagonal'],\n+ ['fix_5fdiagonal_556', ['fix_diagonal', ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionSOR_1_1AdditionalData.html#a17ddd94573506af68ca5bd020c06af07', 1, 'LinearAlgebra::TpetraWrappers::PreconditionSOR::AdditionalData::fix_diagonal'],\n+ ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionJacobi_1_1AdditionalData.html#a562ea8e0300d5dd687e80d32a1f0f245', 1, 'LinearAlgebra::TpetraWrappers::PreconditionJacobi::AdditionalData::fix_diagonal'],\n ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionL1Jacobi_1_1AdditionalData.html#aa56e758a6df9389985781e7b0f955c0a', 1, 'LinearAlgebra::TpetraWrappers::PreconditionL1Jacobi::AdditionalData::fix_diagonal'],\n- ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionJacobi_1_1AdditionalData.html#a562ea8e0300d5dd687e80d32a1f0f245', 1, 'LinearAlgebra::TpetraWrappers::PreconditionJacobi::AdditionalData::fix_diagonal']\n+ ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionL1GaussSeidel_1_1AdditionalData.html#a34588c6a4775d66bfe3510af73414ffc', 1, 'LinearAlgebra::TpetraWrappers::PreconditionL1GaussSeidel::AdditionalData::fix_diagonal'],\n+ ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionSSOR_1_1AdditionalData.html#a2045c205dd573bfad666d063987937f0', 1, 'LinearAlgebra::TpetraWrappers::PreconditionSSOR::AdditionalData::fix_diagonal']\n ]],\n ['fix_5fup_5fdistorted_5fchild_5fcells_557', ['fix_up_distorted_child_cells', ['../namespaceGridTools.html#a1c7bb95bc2bbb09d6f02651d7be1527d', 1, 'GridTools']]],\n ['fix_5fup_5ffaces_558', ['fix_up_faces', ['../namespaceGridTools_1_1internal_1_1FixUpDistortedChildCells.html#a4cba5e02a46d0dd9c237fb518fd03d3b', 1, 'GridTools::internal::FixUpDistortedChildCells']]],\n ['fix_5fup_5fobject_559', ['fix_up_object', ['../namespaceGridTools_1_1internal_1_1FixUpDistortedChildCells.html#a2dd57753f9c69a125a04a71b0e596e86', 1, 'GridTools::internal::FixUpDistortedChildCells']]],\n ['fixed_20number_20of_20instantiations_560', ['Known and fixed number of instantiations', ['../Instantiations.html#Inst1', 1, '']]],\n ['fixed_5fpoint_561', ['fixed_point', ['../classSUNDIALS_1_1KINSOL_1_1AdditionalData.html#a6160e0cd736c36f42c25a05eeb7ec079a7954a4bfbcc46c31ebcbb062ec7cc746', 1, 'SUNDIALS::KINSOL::AdditionalData']]],\n ['fixed_5fpower_562', ['fixed_power', ['../namespaceUtilities.html#a4813ac116209fe4fb249bdde26bc649d', 1, 'Utilities']]],\n ['flag_563', ['flag', ['../structTableHandler_1_1Column.html#a510700c8677b3bdc733c276803ee4b27', 1, 'TableHandler::Column']]],\n ['flag_5ffor_5fface_5frefinement_564', ['flag_for_face_refinement', ['../classCellAccessor.html#a375a3010dcf7bd365a6d43429d64dcc1', 1, 'CellAccessor']]],\n ['flag_5ffor_5fline_5frefinement_565', ['flag_for_line_refinement', ['../classCellAccessor.html#aeb3fa84168f193c7877ff90b70bcee83', 1, 'CellAccessor']]],\n- ['flags_566', ['flags', ['../classDataOutBase_1_1DataOutFilter.html#af0dbc95d412100bca8ccb29bae534cc6', 1, 'DataOutBase::DataOutFilter::flags'],\n- ['../classAlgorithms_1_1Event.html#aaba5705a8ce1d9b94ac7c2b05461d888', 1, 'Algorithms::Event::flags'],\n- ['../classDifferentiation_1_1SD_1_1BatchOptimizer.html#a13b82189ec03bd610cc078fe6c5758a0', 1, 'Differentiation::SD::BatchOptimizer::flags'],\n- ['../classinternal_1_1TriangulationImplementation_1_1TriaObjectsOrientations.html#a4be0cb182eb838c1448e981c00aa8095', 1, 'internal::TriangulationImplementation::TriaObjectsOrientations::flags'],\n+ ['flags_566', ['flags', ['../classLogStream.html#a54ebaa057cb7062a2b6479f9016f187d', 1, 'LogStream::flags()'],\n ['../classTimeStepBase__Tria.html#ac04edd97dc168c49a2dd914d7540122a', 1, 'TimeStepBase_Tria::flags'],\n- ['../classLogStream.html#a54ebaa057cb7062a2b6479f9016f187d', 1, 'LogStream::flags()'],\n+ ['../classinternal_1_1TriangulationImplementation_1_1TriaObjectsOrientations.html#a4be0cb182eb838c1448e981c00aa8095', 1, 'internal::TriangulationImplementation::TriaObjectsOrientations::flags'],\n+ ['../classDifferentiation_1_1SD_1_1BatchOptimizer.html#a13b82189ec03bd610cc078fe6c5758a0', 1, 'Differentiation::SD::BatchOptimizer::flags'],\n+ ['../classAlgorithms_1_1Event.html#aaba5705a8ce1d9b94ac7c2b05461d888', 1, 'Algorithms::Event::flags'],\n+ ['../classDataOutBase_1_1DataOutFilter.html#af0dbc95d412100bca8ccb29bae534cc6', 1, 'DataOutBase::DataOutFilter::flags'],\n ['../classTimeStepBase__Tria.html#a0fa062dbe3e84eec6897ec334d10a98c', 1, 'TimeStepBase_Tria::Flags'],\n- ['../structTimeStepBase__Tria__Flags_1_1Flags.html#ab4182537da3e121d12e0760ad4441b32', 1, 'TimeStepBase_Tria_Flags::Flags::Flags()'],\n- ['../structTimeStepBase__Tria__Flags_1_1Flags.html', 1, 'TimeStepBase_Tria_Flags::Flags< dim >'],\n- ['../structTimeStepBase__Tria__Flags_1_1Flags.html#a1887bc33cce9cee5ca90ccf11e90b914', 1, 'TimeStepBase_Tria_Flags::Flags::Flags()']\n+ ['../structTimeStepBase__Tria__Flags_1_1Flags.html#a1887bc33cce9cee5ca90ccf11e90b914', 1, 'TimeStepBase_Tria_Flags::Flags::Flags()'],\n+ ['../structTimeStepBase__Tria__Flags_1_1Flags.html#ab4182537da3e121d12e0760ad4441b32', 1, 'TimeStepBase_Tria_Flags::Flags::Flags(const bool delete_and_rebuild_tria, const unsigned int wakeup_level_to_build_grid, const unsigned int sleep_level_to_delete_grid)'],\n+ ['../structTimeStepBase__Tria__Flags_1_1Flags.html', 1, 'TimeStepBase_Tria_Flags::Flags< dim >']\n ]],\n ['flat_5ffaces_567', ['flat_faces', ['../group__matrixfree.html#ggae024b29b6819e727d47016c6b6b53d8ca4b6c24f012945b366f42a81533bc1c8d', 1, 'internal::MatrixFreeFunctions']]],\n ['flat_5fmanifold_5fid_568', ['flat_manifold_id', ['../namespacenumbers.html#a9c39a5de95e4d11173378431dc2131fe', 1, 'numbers']]],\n ['flatmanifold_569', ['flatmanifold', ['../classFlatManifold.html', 1, 'FlatManifold< dim, spacedim >'],\n ['../classFlatManifold.html#aaf2b8e7f01f2d1aad68ce68e8920d790', 1, 'FlatManifold::FlatManifold()']\n ]],\n ['flatmanifold_3c_20chartdim_2c_20chartdim_20_3e_570', ['FlatManifold< chartdim, chartdim >', ['../classFlatManifold.html', 1, '']]],\n ['flatmanifold_3c_20dim_2c_20dim_20_3e_571', ['FlatManifold< dim, dim >', ['../classFlatManifold.html', 1, '']]],\n ['flatmanifold_3c_20dim_2c_20spacedim_20_3e_572', ['FlatManifold< dim, spacedim >', ['../classFlatManifold.html', 1, '']]],\n ['flatten_5ftriangulation_573', ['flatten_triangulation', ['../namespaceGridGenerator.html#afe86bf1a4502131ec811a6de41ab41e9', 1, 'GridGenerator']]],\n- ['flexibleindexstorage_574', ['flexibleindexstorage', ['../classUtilities_1_1MPI_1_1internal_1_1ComputeIndexOwner_1_1FlexibleIndexStorage.html', 1, 'Utilities::MPI::internal::ComputeIndexOwner::FlexibleIndexStorage'],\n- ['../classUtilities_1_1MPI_1_1internal_1_1ComputeIndexOwner_1_1FlexibleIndexStorage.html#a4f9fd88e3e02a11b3f71d9c425482947', 1, 'Utilities::MPI::internal::ComputeIndexOwner::FlexibleIndexStorage::FlexibleIndexStorage()']\n+ ['flexibleindexstorage_574', ['flexibleindexstorage', ['../classUtilities_1_1MPI_1_1internal_1_1ComputeIndexOwner_1_1FlexibleIndexStorage.html#a4f9fd88e3e02a11b3f71d9c425482947', 1, 'Utilities::MPI::internal::ComputeIndexOwner::FlexibleIndexStorage::FlexibleIndexStorage()'],\n+ ['../classUtilities_1_1MPI_1_1internal_1_1ComputeIndexOwner_1_1FlexibleIndexStorage.html', 1, 'Utilities::MPI::internal::ComputeIndexOwner::FlexibleIndexStorage']\n ]],\n ['flip_5fall_5fdirection_5fflags_575', ['flip_all_direction_flags', ['../classTriangulation.html#afdc34248a9ba0c38fd0020256a8def5c', 1, 'Triangulation']]],\n ['floating_5fpoint_5fcomparator_2eh_576', ['floating_point_comparator.h', ['../floating__point__comparator_8h.html', 1, '']]],\n- ['floatingpointcomparator_577', ['floatingpointcomparator', ['../structFloatingPointComparator.html#affe931c6740f07a168a5849533f4bb36', 1, 'FloatingPointComparator::FloatingPointComparator()'],\n- ['../structFloatingPointComparator.html', 1, 'FloatingPointComparator< Number >'],\n- ['../structFloatingPointComparator.html#a4bb370a08264089c5d4399eec8a89540', 1, 'FloatingPointComparator::FloatingPointComparator(FloatingPointComparator &&rhs) noexcept=default'],\n- ['../structFloatingPointComparator.html#a4940e00fbdacb6f018e88f18a727d7dd', 1, 'FloatingPointComparator::FloatingPointComparator(const FloatingPointComparator &rhs)=default']\n+ ['floatingpointcomparator_577', ['floatingpointcomparator', ['../structFloatingPointComparator.html', 1, 'FloatingPointComparator< Number >'],\n+ ['../structFloatingPointComparator.html#affe931c6740f07a168a5849533f4bb36', 1, 'FloatingPointComparator::FloatingPointComparator(const ScalarNumber tolerance, const bool use_absolute_tolerance=true, const std::bitset< width > &mask=std::bitset< width >().flip())'],\n+ ['../structFloatingPointComparator.html#a4940e00fbdacb6f018e88f18a727d7dd', 1, 'FloatingPointComparator::FloatingPointComparator(const FloatingPointComparator &rhs)=default'],\n+ ['../structFloatingPointComparator.html#a4bb370a08264089c5d4399eec8a89540', 1, 'FloatingPointComparator::FloatingPointComparator(FloatingPointComparator &&rhs) noexcept=default']\n ]],\n ['floor_578', ['floor', ['../namespaceDifferentiation_1_1SD.html#a860b730b2531e8c9adafc3e7bd7343fa', 1, 'Differentiation::SD']]],\n ['flow_5ffunction_2ecc_579', ['flow_function.cc', ['../flow__function_8cc.html', 1, '']]],\n ['flow_5ffunction_2eh_580', ['flow_function.h', ['../flow__function_8h.html', 1, '']]],\n ['flowfunction_581', ['flowfunction', ['../classFunctions_1_1FlowFunction.html#aedc729f898530da082dd900a5d64b391', 1, 'Functions::FlowFunction::FlowFunction()'],\n ['../classFunctions_1_1FlowFunction.html', 1, 'Functions::FlowFunction< dim >']\n ]],\n ['flowfunction_3c_202_20_3e_582', ['FlowFunction< 2 >', ['../classFunctions_1_1FlowFunction.html', 1, 'Functions']]],\n ['flush_5fcells_583', ['flush_cells', ['../classDataOutBase_1_1DataOutFilter.html#a0dbf9f800502bcb856b3633c24707866', 1, 'DataOutBase::DataOutFilter']]],\n ['flush_5fpoints_584', ['flush_points', ['../classDataOutBase_1_1DataOutFilter.html#a42c1bde8026776d09c562dae7cb6d4fc', 1, 'DataOutBase::DataOutFilter']]],\n- ['flux_5fdown_585', ['flux_down', ['../classMeshWorker_1_1Assembler_1_1MGMatrixSimple.html#a1d70dddbb87e8a24ba2b4957fc6ed52b', 1, 'MeshWorker::Assembler::MGMatrixSimple::flux_down'],\n- ['../classMeshWorker_1_1Assembler_1_1MGMatrixLocalBlocksToGlobalBlocks.html#abbb910522864112a630572652ed71722', 1, 'MeshWorker::Assembler::MGMatrixLocalBlocksToGlobalBlocks::flux_down']\n+ ['flux_5fdown_585', ['flux_down', ['../classMeshWorker_1_1Assembler_1_1MGMatrixLocalBlocksToGlobalBlocks.html#abbb910522864112a630572652ed71722', 1, 'MeshWorker::Assembler::MGMatrixLocalBlocksToGlobalBlocks::flux_down'],\n+ ['../classMeshWorker_1_1Assembler_1_1MGMatrixSimple.html#a1d70dddbb87e8a24ba2b4957fc6ed52b', 1, 'MeshWorker::Assembler::MGMatrixSimple::flux_down']\n ]],\n ['flux_5fmatrices_5fdown_586', ['flux_matrices_down', ['../classMGMatrixBlockVector.html#ab89e53cc2d30ba4d2a58bc1d98b01b66', 1, 'MGMatrixBlockVector']]],\n ['flux_5fmatrices_5fup_587', ['flux_matrices_up', ['../classMGMatrixBlockVector.html#a0784b6630d27e00c8fe3e77d56f4a145', 1, 'MGMatrixBlockVector']]],\n ['flux_5fup_588', ['flux_up', ['../classMeshWorker_1_1Assembler_1_1MGMatrixSimple.html#abddfd01674b41ec21f9527d82611fbbf', 1, 'MeshWorker::Assembler::MGMatrixSimple::flux_up'],\n ['../classMeshWorker_1_1Assembler_1_1MGMatrixLocalBlocksToGlobalBlocks.html#acb38c7b61e29a3204c3639815d0a1731', 1, 'MeshWorker::Assembler::MGMatrixLocalBlocksToGlobalBlocks::flux_up']\n ]],\n ['for_20triangulations_589', ['Manifold description for triangulations', ['../group__manifold.html', 1, '']]],\n@@ -1168,112 +1168,112 @@\n ['../structinternal_1_1p4est_1_1types_3_013_01_4.html#ad3d455ffc4b8f548b7e9750bdb11694c', 1, 'internal::p4est::types< 3 >::forest']\n ]],\n ['forest_5fmemory_5fused_593', ['forest_memory_used', ['../structinternal_1_1p4est_1_1functions_3_012_01_4.html#a6981b08b007b180fca312455ac385fa9', 1, 'internal::p4est::functions< 2 >::forest_memory_used'],\n ['../structinternal_1_1p4est_1_1functions_3_013_01_4.html#a032263636bdf56cb71f846e1f43070aa', 1, 'internal::p4est::functions< 3 >::forest_memory_used']\n ]],\n ['format_594', ['Format', ['../classGridIn.html#a017db4751bafb6b297fc3c96494133aa', 1, 'GridIn']]],\n ['format_5fversion_595', ['format_version', ['../structDataOutBase_1_1Deal__II__IntermediateFlags.html#a4893b5deebcbcc72061301465e274aec', 1, 'DataOutBase::Deal_II_IntermediateFlags']]],\n- ['formula_596', ['formula', ['../classFunctionDerivative.html#a943e1737c54ec91068669a6883bd51d4', 1, 'FunctionDerivative::formula'],\n- ['../classAutoDerivativeFunction.html#abf9fa4317f26a2be16b56a85ac4e050b', 1, 'AutoDerivativeFunction::formula']\n+ ['formula_596', ['formula', ['../classAutoDerivativeFunction.html#abf9fa4317f26a2be16b56a85ac4e050b', 1, 'AutoDerivativeFunction::formula'],\n+ ['../classFunctionDerivative.html#a943e1737c54ec91068669a6883bd51d4', 1, 'FunctionDerivative::formula']\n ]],\n ['formulas_597', ['Quadrature formulas', ['../group__Quadrature.html', 1, '']]],\n- ['forward_598', ['forward', ['../classPreconditionBlockSOR.html#a6e625822a49d0167ba005804635d4d90', 1, 'PreconditionBlockSOR::forward()'],\n+ ['forward_598', ['forward', ['../classTimeDependent.html#a55de3b5182ab608b2fb1f3f132d88f9ea43822403531b8faddaba4d2ed6773eef', 1, 'TimeDependent::forward'],\n ['../classFullMatrix.html#ad2241691e3b13448df6acbc37b39ab06', 1, 'FullMatrix::forward()'],\n- ['../classTimeDependent.html#a55de3b5182ab608b2fb1f3f132d88f9ea43822403531b8faddaba4d2ed6773eef', 1, 'TimeDependent::forward']\n+ ['../classPreconditionBlockSOR.html#a6e625822a49d0167ba005804635d4d90', 1, 'PreconditionBlockSOR::forward()']\n ]],\n ['forward_5feuler_599', ['FORWARD_EULER', ['../namespaceTimeStepping.html#abff97b5326e452552f108a379dd6cff4a037245063b5afdaf23a96ec566373613', 1, 'TimeStepping']]],\n ['forward_5fstep_600', ['forward_step', ['../classPreconditionBlock.html#a56626270a54bc9bbc088ba330f2044b7', 1, 'PreconditionBlock']]],\n- ['fourier_601', ['fourier', ['../classFESeries_1_1Fourier.html#ae06f7d093594a31ccaa9d085734551b9', 1, 'FESeries::Fourier::Fourier()'],\n- ['../classFESeries_1_1Fourier.html', 1, 'FESeries::Fourier< dim, spacedim >']\n+ ['fourier_601', ['fourier', ['../classFESeries_1_1Fourier.html', 1, 'FESeries::Fourier< dim, spacedim >'],\n+ ['../classFESeries_1_1Fourier.html#ae06f7d093594a31ccaa9d085734551b9', 1, 'FESeries::Fourier::Fourier()']\n ]],\n- ['fourier_5fcoefficients_602', ['fourier_coefficients', ['../classFunctions_1_1FourierSineSum.html#a698250a60c6b3cca898b13bd07a6e5ca', 1, 'Functions::FourierSineSum::fourier_coefficients'],\n+ ['fourier_5fcoefficients_602', ['fourier_coefficients', ['../classFunctions_1_1FourierSineFunction.html#a9734e37985c3daa3f97ee95a1e75d09b', 1, 'Functions::FourierSineFunction::fourier_coefficients'],\n ['../classFunctions_1_1FourierCosineFunction.html#af9f044129644a65aa21c0b58026ae50f', 1, 'Functions::FourierCosineFunction::fourier_coefficients'],\n- ['../classFunctions_1_1FourierSineFunction.html#a9734e37985c3daa3f97ee95a1e75d09b', 1, 'Functions::FourierSineFunction::fourier_coefficients'],\n- ['../classFunctions_1_1FourierCosineSum.html#a004c67ac120e32b7f1ed0587beb546f0', 1, 'Functions::FourierCosineSum::fourier_coefficients']\n+ ['../classFunctions_1_1FourierCosineSum.html#a004c67ac120e32b7f1ed0587beb546f0', 1, 'Functions::FourierCosineSum::fourier_coefficients'],\n+ ['../classFunctions_1_1FourierSineSum.html#a698250a60c6b3cca898b13bd07a6e5ca', 1, 'Functions::FourierSineSum::fourier_coefficients']\n ]],\n ['fourier_5ftransform_5fmatrices_603', ['fourier_transform_matrices', ['../classFESeries_1_1Fourier.html#ac99a476336e154c4cdf93e36f49b4ee5', 1, 'FESeries::Fourier']]],\n ['fouriercosinefunction_604', ['fouriercosinefunction', ['../classFunctions_1_1FourierCosineFunction.html#a25cb05abab98f9dbbeaecc77c0250819', 1, 'Functions::FourierCosineFunction::FourierCosineFunction()'],\n ['../classFunctions_1_1FourierCosineFunction.html', 1, 'Functions::FourierCosineFunction< dim >']\n ]],\n- ['fouriercosinesum_605', ['fouriercosinesum', ['../classFunctions_1_1FourierCosineSum.html#a7ea8afe41778a1b9f3bb3b8c9c3c0cc3', 1, 'Functions::FourierCosineSum::FourierCosineSum()'],\n- ['../classFunctions_1_1FourierCosineSum.html', 1, 'Functions::FourierCosineSum< dim >']\n+ ['fouriercosinesum_605', ['fouriercosinesum', ['../classFunctions_1_1FourierCosineSum.html', 1, 'Functions::FourierCosineSum< dim >'],\n+ ['../classFunctions_1_1FourierCosineSum.html#a7ea8afe41778a1b9f3bb3b8c9c3c0cc3', 1, 'Functions::FourierCosineSum::FourierCosineSum()']\n ]],\n- ['fouriersinefunction_606', ['fouriersinefunction', ['../classFunctions_1_1FourierSineFunction.html#a3b1c09016091248f0a5030e22668f9ce', 1, 'Functions::FourierSineFunction::FourierSineFunction()'],\n- ['../classFunctions_1_1FourierSineFunction.html', 1, 'Functions::FourierSineFunction< dim >']\n+ ['fouriersinefunction_606', ['fouriersinefunction', ['../classFunctions_1_1FourierSineFunction.html', 1, 'Functions::FourierSineFunction< dim >'],\n+ ['../classFunctions_1_1FourierSineFunction.html#a3b1c09016091248f0a5030e22668f9ce', 1, 'Functions::FourierSineFunction::FourierSineFunction()']\n ]],\n- ['fouriersinesum_607', ['fouriersinesum', ['../classFunctions_1_1FourierSineSum.html#aa4bda911c9648b3ab273295b3d7d9394', 1, 'Functions::FourierSineSum::FourierSineSum()'],\n- ['../classFunctions_1_1FourierSineSum.html', 1, 'Functions::FourierSineSum< dim >']\n+ ['fouriersinesum_607', ['fouriersinesum', ['../classFunctions_1_1FourierSineSum.html', 1, 'Functions::FourierSineSum< dim >'],\n+ ['../classFunctions_1_1FourierSineSum.html#aa4bda911c9648b3ab273295b3d7d9394', 1, 'Functions::FourierSineSum::FourierSineSum()']\n ]],\n- ['fourth_5fderivative_608', ['fourth_derivative', ['../classMappingFEField_1_1InternalData.html#a27b62c457ea9fb52cda47b52861cb69e', 1, 'MappingFEField::InternalData::fourth_derivative()'],\n- ['../classMappingFE_1_1InternalData.html#a30b72472323590549ce216b688ad281c', 1, 'MappingFE::InternalData::fourth_derivative(const unsigned int qpoint, const unsigned int shape_nr) const'],\n+ ['fourth_5fderivative_608', ['fourth_derivative', ['../classMappingFEField_1_1InternalData.html#a27b62c457ea9fb52cda47b52861cb69e', 1, 'MappingFEField::InternalData::fourth_derivative(const unsigned int qpoint, const unsigned int shape_nr)'],\n+ ['../classMappingFEField_1_1InternalData.html#a5f518b18373188a536643e81438deae3', 1, 'MappingFEField::InternalData::fourth_derivative(const unsigned int qpoint, const unsigned int shape_nr) const'],\n ['../classMappingFE_1_1InternalData.html#a642260467e6e687fe7ec6875d607f547', 1, 'MappingFE::InternalData::fourth_derivative(const unsigned int qpoint, const unsigned int shape_nr)'],\n- ['../classMappingFEField_1_1InternalData.html#a5f518b18373188a536643e81438deae3', 1, 'MappingFEField::InternalData::fourth_derivative()']\n+ ['../classMappingFE_1_1InternalData.html#a30b72472323590549ce216b688ad281c', 1, 'MappingFE::InternalData::fourth_derivative(const unsigned int qpoint, const unsigned int shape_nr) const']\n ]],\n ['fourth_5fkind_609', ['fourth_kind', ['../structPreconditionChebyshev_1_1AdditionalData.html#ad61a2becabcf56423f91b20b4fcfb1b3a8fa92a216ed241f7e5fe8db9abe064b4', 1, 'PreconditionChebyshev::AdditionalData']]],\n ['fourthderivativestype_610', ['FourthDerivativesType', ['../classBarycentricPolynomials.html#a470e1c396e2a729b0eee1c4af1451a8e', 1, 'BarycentricPolynomials']]],\n ['fourthorder_611', ['FourthOrder', ['../classAutoDerivativeFunction.html#a8e3a3152c1a97076b961dcb35a3bb36ba1d80de60e448c04501ec359c16b6c08d', 1, 'AutoDerivativeFunction']]],\n ['fraction_612', ['fraction', ['../classQGaussLogR.html#a2416720e40063b778648ad28522ed920', 1, 'QGaussLogR']]],\n- ['free_613', ['free', ['../classVectorMemory.html#ad4d9c709afba576301411b9205c0e73d', 1, 'VectorMemory::free()'],\n+ ['free_613', ['free', ['../classGrowingVectorMemory.html#a98e9fb7dba295e667ca46321227ab20f', 1, 'GrowingVectorMemory::free()'],\n+ ['../classVectorMemory.html#ad4d9c709afba576301411b9205c0e73d', 1, 'VectorMemory::free()'],\n ['../classPrimitiveVectorMemory.html#a1c07789f829815a3f57d312d2dba3144', 1, 'PrimitiveVectorMemory::free()'],\n- ['../classGrowingVectorMemory.html#a98e9fb7dba295e667ca46321227ab20f', 1, 'GrowingVectorMemory::free()'],\n ['../namespaceUtilities_1_1CUDA.html#afc505a095cc4c7600f65ecb99851312e', 1, 'Utilities::CUDA::free()']\n ]],\n ['free_20infrastructure_614', ['Matrix-free infrastructure', ['../group__matrixfree.html', 1, '']]],\n ['free_5fcommunicator_615', ['free_communicator', ['../namespaceUtilities_1_1MPI.html#ad9e62ba86d4ffacadb8374e468c11516', 1, 'Utilities::MPI']]],\n ['free_5fmemory_616', ['free_memory', ['../classTimeStepping_1_1EmbeddedExplicitRungeKutta.html#aeed1cd12e79892c79d6194c506632fc2', 1, 'TimeStepping::EmbeddedExplicitRungeKutta']]],\n ['free_5fproperties_617', ['free_properties', ['../classParticles_1_1Particle.html#af307e61f872fc0223939865c5725be7d', 1, 'Particles::Particle']]],\n ['freedom_618', ['freedom', ['../group__constraints.html', 1, 'Constraints on degrees of freedom'],\n ['../group__dofs.html', 1, 'Degrees of Freedom']\n ]],\n- ['frobenius_5fnorm_619', ['frobenius_norm', ['../classFullMatrix.html#ace5a8a1ea24b18624dc2ddcb6b88d03b', 1, 'FullMatrix::frobenius_norm()'],\n+ ['frobenius_5fnorm_619', ['frobenius_norm', ['../classCUDAWrappers_1_1SparseMatrix.html#a73e25d9689f4ff2167f1494011fcc62a', 1, 'CUDAWrappers::SparseMatrix::frobenius_norm()'],\n+ ['../classBlockMatrixBase.html#a40df5806b5d3cc3f19a31a7e11b36f51', 1, 'BlockMatrixBase::frobenius_norm()'],\n+ ['../classChunkSparseMatrix.html#aef82bc2e32be8901a4b8dac6242b72db', 1, 'ChunkSparseMatrix::frobenius_norm()'],\n+ ['../classFullMatrix.html#ace5a8a1ea24b18624dc2ddcb6b88d03b', 1, 'FullMatrix::frobenius_norm()'],\n+ ['../classLAPACKFullMatrix.html#a8b5fdc9d191f831817d706615cf5b334', 1, 'LAPACKFullMatrix::frobenius_norm()'],\n+ ['../classPETScWrappers_1_1MatrixBase.html#a5ab9e8f1061cef606eaeb0993ce3d887', 1, 'PETScWrappers::MatrixBase::frobenius_norm()'],\n+ ['../classScaLAPACKMatrix.html#a08c248dd3d7474ad88f01f361fb38763', 1, 'ScaLAPACKMatrix::frobenius_norm()'],\n ['../classSparseMatrix.html#ae403bf35656c6b5c075186b116e7f293', 1, 'SparseMatrix::frobenius_norm()'],\n ['../classTrilinosWrappers_1_1SparseMatrix.html#aa26df1c42b8f8973246287cfee4d20b4', 1, 'TrilinosWrappers::SparseMatrix::frobenius_norm()'],\n- ['../classScaLAPACKMatrix.html#a08c248dd3d7474ad88f01f361fb38763', 1, 'ScaLAPACKMatrix::frobenius_norm()'],\n- ['../classPETScWrappers_1_1MatrixBase.html#a5ab9e8f1061cef606eaeb0993ce3d887', 1, 'PETScWrappers::MatrixBase::frobenius_norm()'],\n- ['../classLAPACKFullMatrix.html#a8b5fdc9d191f831817d706615cf5b334', 1, 'LAPACKFullMatrix::frobenius_norm()'],\n- ['../classCUDAWrappers_1_1SparseMatrix.html#a73e25d9689f4ff2167f1494011fcc62a', 1, 'CUDAWrappers::SparseMatrix::frobenius_norm()'],\n- ['../classChunkSparseMatrix.html#aef82bc2e32be8901a4b8dac6242b72db', 1, 'ChunkSparseMatrix::frobenius_norm()'],\n- ['../classBlockMatrixBase.html#a40df5806b5d3cc3f19a31a7e11b36f51', 1, 'BlockMatrixBase::frobenius_norm()'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrix.html#a4f1a0a707de1278a44c99b9c7488fd1d', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrix::frobenius_norm()']\n ]],\n ['from_5fspherical_620', ['from_spherical', ['../namespaceGeometricUtilities_1_1Coordinates.html#aab6e92ea32b8a810bccbc911f7e9287f', 1, 'GeometricUtilities::Coordinates']]],\n ['front_621', ['front', ['../classPathSearch.html#ac7e770dd03b7d4228e840625e2f3dfb2afd25f30f5159f8ad850054c1a85f0c43', 1, 'PathSearch']]],\n- ['full_622', ['full', ['../structinternal_1_1MatrixFreeFunctions_1_1DoFInfo.html#a6369c97edd8ea0d2cd7c028b20ee8f39ae9dc924f238fa6cc29465942875fe8f0', 1, 'internal::MatrixFreeFunctions::DoFInfo::full'],\n+ ['full_622', ['full', ['../classinternal_1_1MatrixFreeFunctions_1_1VectorDataExchange_1_1Full.html', 1, 'internal::MatrixFreeFunctions::VectorDataExchange::Full'],\n ['../classinternal_1_1MatrixFreeFunctions_1_1VectorDataExchange_1_1Full.html#acf7e8d22fe427383b851587750ba9270', 1, 'internal::MatrixFreeFunctions::VectorDataExchange::Full::Full()'],\n- ['../classinternal_1_1MatrixFreeFunctions_1_1VectorDataExchange_1_1Full.html', 1, 'internal::MatrixFreeFunctions::VectorDataExchange::Full']\n+ ['../structinternal_1_1MatrixFreeFunctions_1_1DoFInfo.html#a6369c97edd8ea0d2cd7c028b20ee8f39ae9dc924f238fa6cc29465942875fe8f0', 1, 'internal::MatrixFreeFunctions::DoFInfo::full']\n ]],\n ['full_5fmatrix_2ecc_623', ['full_matrix.cc', ['../full__matrix_8cc.html', 1, '']]],\n ['full_5fmatrix_2eh_624', ['full_matrix.h', ['../full__matrix_8h.html', 1, '']]],\n ['full_5fp_5fadaptivity_625', ['full_p_adaptivity', ['../namespacehp_1_1Refinement.html#a4d357d9fb03508665d31c7024a8027c1', 1, 'hp::Refinement']]],\n- ['fullmatrix_626', ['fullmatrix', ['../classPETScWrappers_1_1FullMatrix.html#a2385e795181dba7e1f5eae259be0dcf4', 1, 'PETScWrappers::FullMatrix::FullMatrix(const size_type m, const size_type n)'],\n- ['../classPETScWrappers_1_1FullMatrix.html#aa7bf471489868baedb1d33438fcb50a3', 1, 'PETScWrappers::FullMatrix::FullMatrix()'],\n- ['../classFullMatrix.html#a8e195f7eda5b88bbc34dab0eeb17e3e8', 1, 'FullMatrix::FullMatrix(const IdentityMatrix &id)'],\n- ['../classFullMatrix.html#a7fc62a1da08095133fdd2515ca644c89', 1, 'FullMatrix::FullMatrix(const size_type rows, const size_type cols, const number *entries)'],\n- ['../classFullMatrix.html', 1, 'FullMatrix< number >'],\n+ ['fullmatrix_626', ['fullmatrix', ['../classFullMatrix.html', 1, 'FullMatrix< number >'],\n ['../classPETScWrappers_1_1FullMatrix.html', 1, 'PETScWrappers::FullMatrix'],\n+ ['../classFullMatrix.html#adc08a0718c9110770badd10b5a38892f', 1, 'FullMatrix::FullMatrix(const size_type n=0)'],\n ['../classFullMatrix.html#a0a45e5db015f8adc54f5f48f5376318d', 1, 'FullMatrix::FullMatrix(const size_type rows, const size_type cols)'],\n- ['../classFullMatrix.html#adc08a0718c9110770badd10b5a38892f', 1, 'FullMatrix::FullMatrix(const size_type n=0)']\n+ ['../classFullMatrix.html#a7fc62a1da08095133fdd2515ca644c89', 1, 'FullMatrix::FullMatrix(const size_type rows, const size_type cols, const number *entries)'],\n+ ['../classFullMatrix.html#a8e195f7eda5b88bbc34dab0eeb17e3e8', 1, 'FullMatrix::FullMatrix(const IdentityMatrix &id)'],\n+ ['../classPETScWrappers_1_1FullMatrix.html#aa7bf471489868baedb1d33438fcb50a3', 1, 'PETScWrappers::FullMatrix::FullMatrix()'],\n+ ['../classPETScWrappers_1_1FullMatrix.html#a2385e795181dba7e1f5eae259be0dcf4', 1, 'PETScWrappers::FullMatrix::FullMatrix(const size_type m, const size_type n)']\n ]],\n ['fullmatrix_3c_20coefficienttype_20_3e_627', ['FullMatrix< CoefficientType >', ['../classFullMatrix.html', 1, '']]],\n ['fullmatrix_3c_20double_20_3e_628', ['FullMatrix< double >', ['../classFullMatrix.html', 1, '']]],\n ['fullmatrix_3c_20float_20_3e_629', ['FullMatrix< float >', ['../classFullMatrix.html', 1, '']]],\n ['fullmatrix_3c_20inverse_5ftype_20_3e_630', ['FullMatrix< inverse_type >', ['../classFullMatrix.html', 1, '']]],\n ['fullmatrix_3c_20inversenumbertype_20_3e_631', ['FullMatrix< InverseNumberType >', ['../classFullMatrix.html', 1, '']]],\n ['fullmatrix_3c_20typename_20matrixtype_3a_3avalue_5ftype_20_3e_632', ['FullMatrix< typename MatrixType::value_type >', ['../classFullMatrix.html', 1, '']]],\n ['fully_5fdistributed_5fcreate_633', ['fully_distributed_create', ['../namespaceUtilities_1_1MPI_1_1internal_1_1Tags.html#a1c190e50dabbd9b60e230b843c6caa44a897c9198c19126a4d8e5a04255d2bea7', 1, 'Utilities::MPI::internal::Tags']]],\n ['fully_5fdistributed_5ftria_2ecc_634', ['fully_distributed_tria.cc', ['../fully__distributed__tria_8cc.html', 1, '']]],\n ['fully_5fdistributed_5ftria_2eh_635', ['fully_distributed_tria.h', ['../fully__distributed__tria_8h.html', 1, '']]],\n ['function_636', ['function', ['../classExceptionBase.html#a8725fb793a06c0fc79e191de62504e14', 1, 'ExceptionBase::function'],\n- ['../classFunctions_1_1CoordinateRestriction.html#a9743ab1caee903ab7d1388bddc85888d', 1, 'Functions::CoordinateRestriction::function'],\n- ['../classFunctions_1_1PointRestriction.html#a9f37f97645a8720999dc167482091621', 1, 'Functions::PointRestriction::function'],\n ['../classUtilities_1_1MutableBind.html#a878273f49cab44338e90b92d334625a5', 1, 'Utilities::MutableBind::function'],\n+ ['../classFunctions_1_1PointRestriction.html#a9f37f97645a8720999dc167482091621', 1, 'Functions::PointRestriction::function'],\n ['../classFunction.html', 1, 'Function< dim, RangeNumberType >'],\n- ['../classFunctions_1_1SymbolicFunction.html#ae26cd26bdfb22f8e38e368f3f0715150', 1, 'Functions::SymbolicFunction::function'],\n+ ['../classFunctions_1_1CoordinateRestriction.html#a9743ab1caee903ab7d1388bddc85888d', 1, 'Functions::CoordinateRestriction::function'],\n ['../classFunction.html#a8c6e33c27ac2c3c2be40af1f954b71a7', 1, 'Function::Function(const unsigned int n_components=1, const time_type initial_time=0.0)'],\n- ['../classFunction.html#af86ec3fa41f3cec9f9a5f98508793912', 1, 'Function::Function(const Function &f)=default']\n+ ['../classFunction.html#af86ec3fa41f3cec9f9a5f98508793912', 1, 'Function::Function(const Function &f)=default'],\n+ ['../classFunctions_1_1SymbolicFunction.html#ae26cd26bdfb22f8e38e368f3f0715150', 1, 'Functions::SymbolicFunction::function']\n ]],\n ['function_2ecc_637', ['function.cc', ['../function_8cc.html', 1, '']]],\n ['function_2eh_638', ['function.h', ['../function_8h.html', 1, '']]],\n ['function_3c_201_20_3e_639', ['Function< 1 >', ['../classFunction.html', 1, '']]],\n ['function_3c_202_20_3e_640', ['Function< 2 >', ['../classFunction.html', 1, '']]],\n ['function_3c_20dim_2b1_20_3e_641', ['Function< dim+1 >', ['../classFunction.html', 1, '']]],\n ['function_3c_20dim_2c_20double_20_3e_642', ['Function< dim, double >', ['../classFunction.html', 1, '']]],\n@@ -1309,66 +1309,66 @@\n ['../classSUNDIALS_1_1KINSOL_1_1AdditionalData.html#aed829f9ee40b418280e66533b9eeae85', 1, 'SUNDIALS::KINSOL::AdditionalData::function_tolerance']\n ]],\n ['function_5ftools_2ecc_669', ['function_tools.cc', ['../function__tools_8cc.html', 1, '']]],\n ['function_5ftools_2eh_670', ['function_tools.h', ['../function__tools_8h.html', 1, '']]],\n ['function_5fvalue_5fvector_671', ['function_value_vector', ['../classFunctions_1_1ConstantFunction.html#adadd4b8f8ec2cdef9797f8aeaaff6924', 1, 'Functions::ConstantFunction']]],\n ['function_5fvalues_672', ['function_values', ['../classFunctionFromFunctionObjects.html#ae6a502ade65566570ba312309991039b', 1, 'FunctionFromFunctionObjects']]],\n ['functional_673', ['Functional', ['../classMeshWorker_1_1Assembler_1_1Functional.html', 1, 'MeshWorker::Assembler']]],\n- ['functional_2eh_674', ['functional.h', ['../base_2std__cxx20_2functional_8h.html', 1, '(Global Namespace)'],\n- ['../meshworker_2functional_8h.html', 1, '(Global Namespace)']\n+ ['functional_2eh_674', ['functional.h', ['../meshworker_2functional_8h.html', 1, '(Global Namespace)'],\n+ ['../base_2std__cxx20_2functional_8h.html', 1, '(Global Namespace)']\n ]],\n ['functionality_675', ['Important Simplex Functionality', ['../group__simplex.html#simplex_functionality_list', 1, '']]],\n ['functionbounds_676', ['FunctionBounds', ['../structNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1FunctionBounds.html', 1, 'NonMatching::internal::QuadratureGeneratorImplementation']]],\n- ['functionderivative_677', ['functionderivative', ['../classFunctionDerivative.html#a7ae3a35dcbf85978f41f21189efbe09e', 1, 'FunctionDerivative::FunctionDerivative()'],\n- ['../classFunctionDerivative.html', 1, 'FunctionDerivative< dim >'],\n- ['../classFunctionDerivative.html#a7a4a6e9693f7ad4ef279ff0dc967e249', 1, 'FunctionDerivative::FunctionDerivative()']\n+ ['functionderivative_677', ['functionderivative', ['../classFunctionDerivative.html#a7ae3a35dcbf85978f41f21189efbe09e', 1, 'FunctionDerivative::FunctionDerivative(const Function< dim > &f, const Point< dim > &direction, const double h=1.e-6)'],\n+ ['../classFunctionDerivative.html#a7a4a6e9693f7ad4ef279ff0dc967e249', 1, 'FunctionDerivative::FunctionDerivative(const Function< dim > &f, const std::vector< Point< dim > > &direction, const double h=1.e-6)'],\n+ ['../classFunctionDerivative.html', 1, 'FunctionDerivative< dim >']\n ]],\n- ['functionfromfunctionobjects_678', ['functionfromfunctionobjects', ['../classFunctionFromFunctionObjects.html', 1, 'FunctionFromFunctionObjects< dim, RangeNumberType >'],\n- ['../classFunctionFromFunctionObjects.html#a76a6c33e13d7c816489421a41c1fbaa1', 1, 'FunctionFromFunctionObjects::FunctionFromFunctionObjects(const std::vector< std::function< RangeNumberType(const Point< dim > &)> > &values, const std::vector< std::function< Tensor< 1, dim, RangeNumberType >(const Point< dim > &)> > &gradients, const double initial_time=0.0)'],\n+ ['functionfromfunctionobjects_678', ['functionfromfunctionobjects', ['../classFunctionFromFunctionObjects.html#a76a6c33e13d7c816489421a41c1fbaa1', 1, 'FunctionFromFunctionObjects::FunctionFromFunctionObjects(const std::vector< std::function< RangeNumberType(const Point< dim > &)> > &values, const std::vector< std::function< Tensor< 1, dim, RangeNumberType >(const Point< dim > &)> > &gradients, const double initial_time=0.0)'],\n ['../classFunctionFromFunctionObjects.html#aa8c82127b4d50aeab027850631848a64', 1, 'FunctionFromFunctionObjects::FunctionFromFunctionObjects(const std::vector< std::function< RangeNumberType(const Point< dim > &)> > &values, const double initial_time=0.0)'],\n- ['../classFunctionFromFunctionObjects.html#adb531cdccacdb9034354e2a5a6b3486a', 1, 'FunctionFromFunctionObjects::FunctionFromFunctionObjects(const unsigned int n_components=1, const double initial_time=0)']\n+ ['../classFunctionFromFunctionObjects.html#adb531cdccacdb9034354e2a5a6b3486a', 1, 'FunctionFromFunctionObjects::FunctionFromFunctionObjects(const unsigned int n_components=1, const double initial_time=0)'],\n+ ['../classFunctionFromFunctionObjects.html', 1, 'FunctionFromFunctionObjects< dim, RangeNumberType >']\n ]],\n- ['functionmanifold_679', ['functionmanifold', ['../classFunctionManifold.html#ab7de04277216d0935c77281b0b340595', 1, 'FunctionManifold::FunctionManifold(const Function< chartdim > &push_forward_function, const Function< spacedim > &pull_back_function, const Tensor< 1, chartdim > &periodicity=Tensor< 1, chartdim >(), const double tolerance=1e-10)'],\n+ ['functionmanifold_679', ['functionmanifold', ['../classFunctionManifold.html', 1, 'FunctionManifold< dim, spacedim, chartdim >'],\n+ ['../classFunctionManifold.html#ab7de04277216d0935c77281b0b340595', 1, 'FunctionManifold::FunctionManifold(const Function< chartdim > &push_forward_function, const Function< spacedim > &pull_back_function, const Tensor< 1, chartdim > &periodicity=Tensor< 1, chartdim >(), const double tolerance=1e-10)'],\n ['../classFunctionManifold.html#a471482e5fd4557ad659cf17ff3e466bb', 1, 'FunctionManifold::FunctionManifold(std::unique_ptr< Function< chartdim > > push_forward, std::unique_ptr< Function< spacedim > > pull_back, const Tensor< 1, chartdim > &periodicity=Tensor< 1, chartdim >(), const double tolerance=1e-10)'],\n- ['../classFunctionManifold.html', 1, 'FunctionManifold< dim, spacedim, chartdim >'],\n- ['../classFunctionManifold.html#ab409aec34f0193fc21ab8f505953e628', 1, 'FunctionManifold::FunctionManifold()']\n+ ['../classFunctionManifold.html#ab409aec34f0193fc21ab8f505953e628', 1, 'FunctionManifold::FunctionManifold(const std::string push_forward_expression, const std::string pull_back_expression, const Tensor< 1, chartdim > &periodicity=Tensor< 1, chartdim >(), const typename FunctionParser< spacedim >::ConstMap=typename FunctionParser< spacedim >::ConstMap(), const std::string chart_vars=FunctionParser< chartdim >::default_variable_names(), const std::string space_vars=FunctionParser< spacedim >::default_variable_names(), const double tolerance=1e-10, const double h=1e-8)']\n ]],\n ['functionparser_680', ['functionparser', ['../classFunctionParser.html', 1, 'FunctionParser< dim >'],\n- ['../classFunctionParser.html#a4312d538a4c339c1d0aa92bd0e6c17cb', 1, 'FunctionParser::FunctionParser(FunctionParser &&)=delete'],\n- ['../classFunctionParser.html#a981060f088b43cdf6f9fac1b840d0346', 1, 'FunctionParser::FunctionParser(const FunctionParser &)=delete'],\n+ ['../classFunctionParser.html#a0d7c78097d8aa1799a81d74f429aaa34', 1, 'FunctionParser::FunctionParser(const unsigned int n_components=1, const double initial_time=0.0, const double h=1e-8)'],\n ['../classFunctionParser.html#a5a025a34dddf97b70fa604da253561e4', 1, 'FunctionParser::FunctionParser(const std::string &expression, const std::string &constants="", const std::string &variable_names=default_variable_names()+",t", const double h=1e-8)'],\n- ['../classFunctionParser.html#a0d7c78097d8aa1799a81d74f429aaa34', 1, 'FunctionParser::FunctionParser(const unsigned int n_components=1, const double initial_time=0.0, const double h=1e-8)']\n+ ['../classFunctionParser.html#a981060f088b43cdf6f9fac1b840d0346', 1, 'FunctionParser::FunctionParser(const FunctionParser &)=delete'],\n+ ['../classFunctionParser.html#a4312d538a4c339c1d0aa92bd0e6c17cb', 1, 'FunctionParser::FunctionParser(FunctionParser &&)=delete']\n ]],\n- ['functions_681', ['functions', ['../namespaceFunctions.html', 1, 'Functions'],\n+ ['functions_681', ['functions', ['../structinternal_1_1p4est_1_1functions.html', 1, 'internal::p4est::functions< dim >'],\n ['../group__functions.html', 1, 'Functions'],\n ['../namespaceinternal_1_1p4est.html#a4b980c7b4b4d9984e93d73c7d30173ea', 1, 'internal::p4est::functions'],\n ['../structinternal_1_1VectorOperations_1_1functions.html', 1, 'internal::VectorOperations::functions< Number, Number2, MemorySpace >'],\n- ['../structinternal_1_1p4est_1_1functions.html', 1, 'internal::p4est::functions< dim >']\n+ ['../namespaceFunctions.html', 1, 'Functions']\n ]],\n ['functions_20and_20classes_682', ['Utility functions and classes', ['../group__utilities.html', 1, '']]],\n ['functions_2eh_683', ['functions.h', ['../functions_8h.html', 1, '']]],\n ['functions_3a_3asigneddistance_684', ['SignedDistance', ['../namespaceFunctions_1_1SignedDistance.html', 1, 'Functions']]],\n ['functions_3c_202_20_3e_685', ['functions< 2 >', ['../structinternal_1_1p4est_1_1functions_3_012_01_4.html', 1, 'internal::p4est']]],\n ['functions_3c_203_20_3e_686', ['functions< 3 >', ['../structinternal_1_1p4est_1_1functions_3_013_01_4.html', 1, 'internal::p4est']]],\n ['functions_3c_20number_2c_20number_2c_20_3a_3amemoryspace_3a_3adefault_20_3e_687', ['functions< Number, Number, ::MemorySpace::Default >', ['../structinternal_1_1VectorOperations_1_1functions_3_01Number_00_01Number_00_01_1_1MemorySpace_1_1Default_01_4.html', 1, 'internal::VectorOperations']]],\n ['functions_3c_20number_2c_20number2_2c_20_3a_3amemoryspace_3a_3ahost_20_3e_688', ['functions< Number, Number2, ::MemorySpace::Host >', ['../structinternal_1_1VectorOperations_1_1functions_3_01Number_00_01Number2_00_01_1_1MemorySpace_1_1Host_01_4.html', 1, 'internal::VectorOperations']]],\n- ['functiontime_689', ['functiontime', ['../classFunctionTime.html', 1, 'FunctionTime< Number >'],\n- ['../classFunctionTime.html#afd664d1ab89910d8cffb428a9e9777fc', 1, 'FunctionTime::FunctionTime()']\n+ ['functiontime_689', ['functiontime', ['../classFunctionTime.html#afd664d1ab89910d8cffb428a9e9777fc', 1, 'FunctionTime::FunctionTime()'],\n+ ['../classFunctionTime.html', 1, 'FunctionTime< Number >']\n ]],\n ['functiontime_3c_20numbers_3a_3anumbertraits_3c_20double_20_3e_3a_3areal_5ftype_20_3e_690', ['FunctionTime< numbers::NumberTraits< double >::real_type >', ['../classFunctionTime.html', 1, '']]],\n ['functiontime_3c_20numbers_3a_3anumbertraits_3c_20vectortype_3a_3avalue_5ftype_20_3e_3a_3areal_5ftype_20_3e_691', ['FunctionTime< numbers::NumberTraits< VectorType::value_type >::real_type >', ['../classFunctionTime.html', 1, '']]],\n ['functiontools_692', ['FunctionTools', ['../namespaceFunctionTools.html', 1, '']]],\n ['functor_693', ['functor', ['../classLinearAlgebra_1_1ReadWriteVector_1_1FunctorTemplate.html#aeeb220d0b08318d41b09d3c4f1337d78', 1, 'LinearAlgebra::ReadWriteVector::FunctorTemplate::functor'],\n ['../structinternal_1_1VectorOperations_1_1TBBForFunctor.html#ab71484cb012c19ec4a37b4f160428bce', 1, 'internal::VectorOperations::TBBForFunctor::functor']\n ]],\n ['functortemplate_694', ['functortemplate', ['../classLinearAlgebra_1_1ReadWriteVector_1_1FunctorTemplate.html', 1, 'LinearAlgebra::ReadWriteVector< Number >::FunctorTemplate< Functor >'],\n ['../classLinearAlgebra_1_1ReadWriteVector_1_1FunctorTemplate.html#a3c695d004ca539667dca8f1f220c67da', 1, 'LinearAlgebra::ReadWriteVector::FunctorTemplate::FunctorTemplate()']\n ]],\n ['future_695', ['future', ['../classUtilities_1_1MPI_1_1Future.html', 1, 'Utilities::MPI::Future< T >'],\n- ['../classUtilities_1_1MPI_1_1Future.html#a16cf12a7ef7636995b56c35099c9b584', 1, 'Utilities::MPI::Future::Future(const Future &)=delete'],\n ['../classUtilities_1_1MPI_1_1Future.html#af03496a6537ac0e674ebe01b023b144c', 1, 'Utilities::MPI::Future::Future(W &&wait_operation, G &&get_and_cleanup_operation)'],\n- ['../classThreads_1_1Task_1_1TaskData.html#a6348d0197a096a92d8f1602faa995268', 1, 'Threads::Task::TaskData::future'],\n- ['../classUtilities_1_1MPI_1_1Future.html#a4ca327b0ed8e2a575227415185a6ed42', 1, 'Utilities::MPI::Future::Future()']\n+ ['../classUtilities_1_1MPI_1_1Future.html#a16cf12a7ef7636995b56c35099c9b584', 1, 'Utilities::MPI::Future::Future(const Future &)=delete'],\n+ ['../classUtilities_1_1MPI_1_1Future.html#a4ca327b0ed8e2a575227415185a6ed42', 1, 'Utilities::MPI::Future::Future(Future &&) noexcept=default'],\n+ ['../classThreads_1_1Task_1_1TaskData.html#a6348d0197a096a92d8f1602faa995268', 1, 'Threads::Task::TaskData::future']\n ]],\n ['future_5ffe_5findex_696', ['future_fe_index', ['../classDoFCellAccessor.html#a1d7fdb7cf80d59396b205e2faf58ed92', 1, 'DoFCellAccessor']]],\n ['future_5ffe_5findex_5fset_697', ['future_fe_index_set', ['../classDoFCellAccessor.html#ae7949017e7a76aa15c2dcff7871401e1', 1, 'DoFCellAccessor']]]\n ];\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_12.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_12.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -1669,30 +1669,30 @@\n ['ginkgowrappers_671', ['GinkgoWrappers', ['../namespaceGinkgoWrappers.html', 1, '']]],\n ['given_5fdegree_672', ['given_degree', ['../classinternal_1_1HelperBase.html#a8eb01e3eca82f668f8d472bf01ffc65f', 1, 'internal::HelperBase']]],\n ['givens_5frotation_673', ['givens_rotation', ['../namespaceUtilities_1_1LinearAlgebra.html#a33aa7919799a8f798916c463aa88096a', 1, 'Utilities::LinearAlgebra']]],\n ['givens_5frotations_674', ['givens_rotations', ['../classinternal_1_1SolverGMRESImplementation_1_1ArnoldiProcess.html#aac9acdf63f8a9a52bb1410bb1c47c95f', 1, 'internal::SolverGMRESImplementation::ArnoldiProcess']]],\n ['givens_5fsignal_675', ['givens_signal', ['../classBaseQR.html#a8af1fce48fab4ae55e91c9a220b5e88d', 1, 'BaseQR']]],\n ['global_676', ['global', ['../classBlockInfo.html#ab9c42d6e2e1fb8bfc0f55ecd938b2f2b', 1, 'BlockInfo']]],\n ['global_5factive_5fcell_5findex_677', ['global_active_cell_index', ['../classCellAccessor.html#a13e7c4a89332133d5ce71a1a5aa8f64f', 1, 'CellAccessor']]],\n- ['global_5factive_5fcell_5findex_5fpartitioner_678', ['global_active_cell_index_partitioner', ['../classTriangulation.html#a214a4a1e9e7893a482b2dd983fa96502', 1, 'Triangulation::global_active_cell_index_partitioner()'],\n- ['../classparallel_1_1TriangulationBase.html#ac2caf65a56ee58460c9fcf77c7051f9f', 1, 'parallel::TriangulationBase::global_active_cell_index_partitioner()']\n+ ['global_5factive_5fcell_5findex_5fpartitioner_678', ['global_active_cell_index_partitioner', ['../classparallel_1_1TriangulationBase.html#ac2caf65a56ee58460c9fcf77c7051f9f', 1, 'parallel::TriangulationBase::global_active_cell_index_partitioner()'],\n+ ['../classTriangulation.html#a214a4a1e9e7893a482b2dd983fa96502', 1, 'Triangulation::global_active_cell_index_partitioner()']\n ]],\n ['global_5factive_5fcell_5findices_679', ['global_active_cell_indices', ['../classinternal_1_1TriangulationImplementation_1_1TriaLevel.html#a4ce37ecbacae2d0ffa3b69a4bb936cbc', 1, 'internal::TriangulationImplementation::TriaLevel']]],\n ['global_5fbase_5felement_5foffset_680', ['global_base_element_offset', ['../structinternal_1_1MatrixFreeFunctions_1_1DoFInfo.html#a36a52e6cac05be6d4c9782f3375beef0', 1, 'internal::MatrixFreeFunctions::DoFInfo']]],\n ['global_5fcell_5findex_681', ['global_cell_index', ['../namespacetypes.html#a88f8129eb3e40ecc8022e92a1e15d70e', 1, 'types']]],\n ['global_5fcolumn_682', ['global_column', ['../classScaLAPACKMatrix.html#ae10eacb6dbdb705df9683564f03ee525', 1, 'ScaLAPACKMatrix']]],\n ['global_5fcolumn_5findex_683', ['global_column_index', ['../namespaceTrilinosWrappers.html#a7aaea400039264486162b4c5f798c9fb', 1, 'TrilinosWrappers']]],\n ['global_5fdata_684', ['global_data', ['../classMeshWorker_1_1IntegrationInfo.html#a5141cc25519af7790f4e4b4c6f24cb92', 1, 'MeshWorker::IntegrationInfo']]],\n ['global_5fdof_5findex_685', ['global_dof_index', ['../namespacetypes.html#a3543786f7dc7c57385fc923a6afd5917', 1, 'types::global_dof_index'],\n ['../structinternal_1_1MGTransfer_1_1DoFPair.html#a0a65e606a57cb3e6f113c905a97f60c0', 1, 'internal::MGTransfer::DoFPair::global_dof_index']\n ]],\n ['global_5fdof_5findex_2eh_686', ['global_dof_index.h', ['../global__dof__index_8h.html', 1, '']]],\n ['global_5fdof_5fvalues_687', ['global_dof_values', ['../classNonMatching_1_1internal_1_1DiscreteQuadratureGeneratorImplementation_1_1RefSpaceFEFieldFunction.html#aea140d71d93864b24b365cd0d049acdf', 1, 'NonMatching::internal::DiscreteQuadratureGeneratorImplementation::RefSpaceFEFieldFunction']]],\n- ['global_5findex_688', ['global_index', ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#a49f1c385f5da45f441e8c99724c841e1', 1, 'internal::BlockVectorIterators::Iterator::global_index'],\n- ['../namespaceTrilinosWrappers.html#a0fa35a38e466d9c3b2dab8beca1df5b2', 1, 'TrilinosWrappers::global_index()'],\n+ ['global_5findex_688', ['global_index', ['../namespaceTrilinosWrappers.html#a0fa35a38e466d9c3b2dab8beca1df5b2', 1, 'TrilinosWrappers::global_index()'],\n+ ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#a49f1c385f5da45f441e8c99724c841e1', 1, 'internal::BlockVectorIterators::Iterator::global_index'],\n ['../classSparsityPatternIterators_1_1Accessor.html#a6358815e9f89a7706975c9fdc3890aa4', 1, 'SparsityPatternIterators::Accessor::global_index()']\n ]],\n ['global_5flength_689', ['global_length', ['../namespaceTrilinosWrappers.html#a1fc7a95abc642e46a4f3d3fe8d6f1d20', 1, 'TrilinosWrappers']]],\n ['global_5flevel_5fcell_5findex_690', ['global_level_cell_index', ['../classCellAccessor.html#ae8e84609c2c6afbeefdaa9096ff50dae', 1, 'CellAccessor']]],\n ['global_5flevel_5fcell_5findex_5fpartitioner_691', ['global_level_cell_index_partitioner', ['../classTriangulation.html#a6bd15347c12fa08b59fbd29551b25962', 1, 'Triangulation::global_level_cell_index_partitioner()'],\n ['../classparallel_1_1TriangulationBase.html#a22320eb97b1adcab2d0fb8482edc580b', 1, 'parallel::TriangulationBase::global_level_cell_index_partitioner()']\n ]],\n@@ -1703,20 +1703,20 @@\n ['global_5fparameter_5frepresentation_696', ['global_parameter_representation', ['../structDoFTools_1_1internal_1_1Assembler_1_1CopyData.html#a1785d066eaff462e8b396e7828f1b0ce', 1, 'DoFTools::internal::Assembler::CopyData']]],\n ['global_5fproperty_5fpool_697', ['global_property_pool', ['../classParticles_1_1Particle.html#a3c969b5bc292d02c5d4f288f12b42ce9', 1, 'Particles::Particle']]],\n ['global_5frow_698', ['global_row', ['../classScaLAPACKMatrix.html#ae2c72bf2945cab1cd8050371520629ed', 1, 'ScaLAPACKMatrix']]],\n ['global_5frow_5findex_699', ['global_row_index', ['../namespaceTrilinosWrappers.html#aaaa4a2dda466bdbb27775c45f7f82d1c', 1, 'TrilinosWrappers']]],\n ['global_5fsize_700', ['global_size', ['../classUtilities_1_1MPI_1_1Partitioner.html#a85a845b1a3a1a35329cd57858dd2f2d3', 1, 'Utilities::MPI::Partitioner']]],\n ['global_5fsymbol_5f42_701', ['global_symbol_42', ['../dummy_8cc.html#a06218cf7864c1dd433cc4e8e62bf9035', 1, 'dummy.cc']]],\n ['global_5fto_5flocal_702', ['global_to_local', ['../classBlockIndices.html#af8f0338eeb4dd28fb8cdf74b46c85f3d', 1, 'BlockIndices::global_to_local()'],\n- ['../classUtilities_1_1MPI_1_1Partitioner.html#a11316c010d3d51912cdfe1939651ad72', 1, 'Utilities::MPI::Partitioner::global_to_local()'],\n- ['../classLinearAlgebra_1_1ReadWriteVector.html#a6f246ddfbf22f0f8a54274a6540228d7', 1, 'LinearAlgebra::ReadWriteVector::global_to_local()']\n+ ['../classLinearAlgebra_1_1ReadWriteVector.html#a6f246ddfbf22f0f8a54274a6540228d7', 1, 'LinearAlgebra::ReadWriteVector::global_to_local()'],\n+ ['../classUtilities_1_1MPI_1_1Partitioner.html#a11316c010d3d51912cdfe1939651ad72', 1, 'Utilities::MPI::Partitioner::global_to_local()']\n ]],\n- ['global_5fvertex_5findex_703', ['global_vertex_index', ['../classTriaAccessor_3_010_00_01dim_00_01spacedim_01_4.html#a4583dc1605e3c727e723de66d63069b1', 1, 'TriaAccessor< 0, dim, spacedim >::global_vertex_index'],\n+ ['global_5fvertex_5findex_703', ['global_vertex_index', ['../namespacetypes.html#a2510b6835b1ec4a277ef342b5db6aee0', 1, 'types::global_vertex_index'],\n ['../classTriaAccessor_3_010_00_011_00_01spacedim_01_4.html#a21c20f6143a24e5f578e9413f525b6b3', 1, 'TriaAccessor< 0, 1, spacedim >::global_vertex_index'],\n- ['../namespacetypes.html#a2510b6835b1ec4a277ef342b5db6aee0', 1, 'types::global_vertex_index']\n+ ['../classTriaAccessor_3_010_00_01dim_00_01spacedim_01_4.html#a4583dc1605e3c727e723de66d63069b1', 1, 'TriaAccessor< 0, dim, spacedim >::global_vertex_index']\n ]],\n ['gloidx_704', ['gloidx', ['../structinternal_1_1p4est_1_1types_3_013_01_4.html#ac5cb9381f13803f7641416bc0ea5e2e5', 1, 'internal::p4est::types< 3 >::gloidx'],\n ['../structinternal_1_1p4est_1_1types_3_012_01_4.html#a712adc879560f4685424f25814aca15c', 1, 'internal::p4est::types< 2 >::gloidx']\n ]],\n ['glossary_705', ['Glossary', ['../DEALGlossary.html', 1, '']]],\n ['glossary_2eh_706', ['glossary.h', ['../glossary_8h.html', 1, '']]],\n ['gmres_707', ['gmres', ['../classTrilinosWrappers_1_1SolverBelos.html#a9f38d6d3139d6f3ebc8d11df949acf99af7b33458b897d1294a241f9dd609832e', 1, 'TrilinosWrappers::SolverBelos::gmres'],\n@@ -1725,126 +1725,126 @@\n ['gmres_5fdata_708', ['gmres_data', ['../classSolverSelector.html#a0c6e82d3ec3b17e8ff938edc787e2e28', 1, 'SolverSelector']]],\n ['gmres_5frestart_5fparameter_709', ['gmres_restart_parameter', ['../structTrilinosWrappers_1_1SolverBase_1_1AdditionalData.html#a05567d5e6ac16d6cd84257415124301e', 1, 'TrilinosWrappers::SolverBase::AdditionalData']]],\n ['gmsh_710', ['Gmsh', ['../namespaceGmsh.html', 1, '']]],\n ['gmsh_5felement_5ftype_711', ['gmsh_element_type', ['../classReferenceCell.html#a9d31423874e8e5e3e25ada9bc8193555', 1, 'ReferenceCell']]],\n ['gmv_712', ['gmv', ['../namespaceDataOutBase.html#aa3cbced9f1d4ae661f13018f4c980aa1a958eea3b2724c76d1c1ff20d69f7da4e', 1, 'DataOutBase']]],\n ['gmv_5fflags_713', ['gmv_flags', ['../classDataOutInterface.html#a62aad8dd9acbe017b15757d419d356ae', 1, 'DataOutInterface']]],\n ['gmvflags_714', ['GmvFlags', ['../structDataOutBase_1_1GmvFlags.html', 1, 'DataOutBase']]],\n- ['gnuplot_715', ['gnuplot', ['../namespaceDataOutBase.html#aa3cbced9f1d4ae661f13018f4c980aa1a025233c1a8124e5521952c7c7cd78df1', 1, 'DataOutBase::gnuplot'],\n- ['../structGridOutFlags_1_1Gnuplot.html', 1, 'GridOutFlags::Gnuplot'],\n+ ['gnuplot_715', ['gnuplot', ['../structGridOutFlags_1_1Gnuplot.html', 1, 'GridOutFlags::Gnuplot'],\n ['../structGridOutFlags_1_1Gnuplot.html#ae631c5fd2087d6efce628a2e0c7fbe21', 1, 'GridOutFlags::Gnuplot::Gnuplot()'],\n- ['../classGridOut.html#af24aadcd00f93b7f428f44ecd40c44d9a9becaeaa34ee67f9686fef40075176e6', 1, 'GridOut::gnuplot']\n+ ['../classGridOut.html#af24aadcd00f93b7f428f44ecd40c44d9a9becaeaa34ee67f9686fef40075176e6', 1, 'GridOut::gnuplot'],\n+ ['../namespaceDataOutBase.html#aa3cbced9f1d4ae661f13018f4c980aa1a025233c1a8124e5521952c7c7cd78df1', 1, 'DataOutBase::gnuplot']\n ]],\n- ['gnuplot_5fflags_716', ['gnuplot_flags', ['../classDataOutInterface.html#a8466681c18e24c0b3c7af7eae5e0997e', 1, 'DataOutInterface::gnuplot_flags'],\n- ['../classGridOut.html#a7446a2fd3ff7eebc06063371a4a94684', 1, 'GridOut::gnuplot_flags']\n+ ['gnuplot_5fflags_716', ['gnuplot_flags', ['../classGridOut.html#a7446a2fd3ff7eebc06063371a4a94684', 1, 'GridOut::gnuplot_flags'],\n+ ['../classDataOutInterface.html#a8466681c18e24c0b3c7af7eae5e0997e', 1, 'DataOutInterface::gnuplot_flags']\n ]],\n- ['gnuplotflags_717', ['gnuplotflags', ['../structDataOutBase_1_1GnuplotFlags.html#ad35b84198f0ef1de6d34ebce204afd4b', 1, 'DataOutBase::GnuplotFlags::GnuplotFlags(const std::vector< std::string > &space_dimension_labels)'],\n+ ['gnuplotflags_717', ['gnuplotflags', ['../structDataOutBase_1_1GnuplotFlags.html', 1, 'DataOutBase::GnuplotFlags'],\n ['../structDataOutBase_1_1GnuplotFlags.html#afdd33b3b9d2f0f67cf9d2e4a6b9f0cc1', 1, 'DataOutBase::GnuplotFlags::GnuplotFlags()'],\n- ['../structDataOutBase_1_1GnuplotFlags.html', 1, 'DataOutBase::GnuplotFlags']\n+ ['../structDataOutBase_1_1GnuplotFlags.html#ad35b84198f0ef1de6d34ebce204afd4b', 1, 'DataOutBase::GnuplotFlags::GnuplotFlags(const std::vector< std::string > &space_dimension_labels)']\n ]],\n- ['gnuplotpatch_718', ['gnuplotpatch', ['../classMeshWorker_1_1Assembler_1_1GnuplotPatch.html#a783e2178d20f552f5c113058d4376793', 1, 'MeshWorker::Assembler::GnuplotPatch::GnuplotPatch()'],\n- ['../classMeshWorker_1_1Assembler_1_1GnuplotPatch.html', 1, 'MeshWorker::Assembler::GnuplotPatch']\n+ ['gnuplotpatch_718', ['gnuplotpatch', ['../classMeshWorker_1_1Assembler_1_1GnuplotPatch.html', 1, 'MeshWorker::Assembler::GnuplotPatch'],\n+ ['../classMeshWorker_1_1Assembler_1_1GnuplotPatch.html#a783e2178d20f552f5c113058d4376793', 1, 'MeshWorker::Assembler::GnuplotPatch::GnuplotPatch()']\n ]],\n ['go_719', ['GO', ['../namespaceLinearAlgebra_1_1TpetraWrappers_1_1TpetraTypes.html#a12dcc4b4f9f4d4dc1b77e2f619099942', 1, 'LinearAlgebra::TpetraWrappers::TpetraTypes']]],\n ['go_5fto_5fone_720', ['go_to_one', ['../namespaceMGTransferGlobalCoarseningTools.html#a0b3ae7f7ace3aef7bdcbca73ae07c126a4700af23eb58d665b1bffa9b2d8bd01a', 1, 'MGTransferGlobalCoarseningTools']]],\n ['grad_5fdiv_2eh_721', ['grad_div.h', ['../grad__div_8h.html', 1, '']]],\n- ['gradient_722', ['gradient', ['../classFunctions_1_1CosineFunction.html#aebd93b4e32d3eba6d9ac05e4eec7d3a8', 1, 'Functions::CosineFunction::gradient()'],\n+ ['gradient_722', ['gradient', ['../classFunctions_1_1FourierCosineSum.html#ab8feb7179d0d83c32848a010e2f68da3', 1, 'Functions::FourierCosineSum::gradient()'],\n+ ['../classFunctions_1_1CutOffFunctionTensorProduct.html#ab6a9cdfd34309b8235d3192208000e7c', 1, 'Functions::CutOffFunctionTensorProduct::gradient()'],\n+ ['../classDerivativeApproximation_1_1internal_1_1Gradient.html', 1, 'DerivativeApproximation::internal::Gradient< dim >'],\n+ ['../classFunctions_1_1CutOffFunctionC1.html#ab875bab3fadc6409fd0cb614e6803634', 1, 'Functions::CutOffFunctionC1::gradient()'],\n+ ['../classFunctions_1_1FourierCosineFunction.html#ae932a6127e44639cfde188ad2f689d08', 1, 'Functions::FourierCosineFunction::gradient()'],\n+ ['../classFunctions_1_1FourierSineSum.html#a98b52849e8b87e7c64ac808daf4de5fb', 1, 'Functions::FourierSineSum::gradient()'],\n+ ['../classFunctions_1_1JumpFunction.html#a998f60b6fd8cff1a39cfcf93108c4491', 1, 'Functions::JumpFunction::gradient()'],\n+ ['../classFunctions_1_1SlitHyperSingularityFunction.html#ad4a51adc97ffbaeb072beafbadc03499', 1, 'Functions::SlitHyperSingularityFunction::gradient()'],\n ['../classFunctions_1_1SlitSingularityFunction.html#a5acef6578d995278e3a59fb4d72027cf', 1, 'Functions::SlitSingularityFunction::gradient()'],\n ['../classFunctions_1_1LSingularityGradFunction.html#af78fcfa5ce9295e029f9fe490435f656', 1, 'Functions::LSingularityGradFunction::gradient()'],\n ['../classFunctions_1_1LSingularityFunction.html#a5ecbe28dfb30b7b199699c92715eeab1', 1, 'Functions::LSingularityFunction::gradient()'],\n ['../classFunctions_1_1ExpFunction.html#a58c87396123fb892cf53ba0ec8024884', 1, 'Functions::ExpFunction::gradient()'],\n ['../classFunctions_1_1CosineGradFunction.html#a2a4a8b5be2033e435d239d5b68d3c8d6', 1, 'Functions::CosineGradFunction::gradient()'],\n- ['../classFunctions_1_1CutOffFunctionC1.html#ab875bab3fadc6409fd0cb614e6803634', 1, 'Functions::CutOffFunctionC1::gradient()'],\n- ['../classFunctions_1_1SlitHyperSingularityFunction.html#ad4a51adc97ffbaeb072beafbadc03499', 1, 'Functions::SlitHyperSingularityFunction::gradient()'],\n- ['../classFunctions_1_1JumpFunction.html#a998f60b6fd8cff1a39cfcf93108c4491', 1, 'Functions::JumpFunction::gradient()'],\n- ['../classFunctions_1_1FourierCosineFunction.html#ae932a6127e44639cfde188ad2f689d08', 1, 'Functions::FourierCosineFunction::gradient()'],\n- ['../classFunctions_1_1FourierSineFunction.html#af9fa95e62c08fa7b31e790bd47010cae', 1, 'Functions::FourierSineFunction::gradient()'],\n- ['../classFunctions_1_1FourierCosineSum.html#ab8feb7179d0d83c32848a010e2f68da3', 1, 'Functions::FourierCosineSum::gradient()'],\n- ['../classFunctions_1_1CutOffFunctionTensorProduct.html#ab6a9cdfd34309b8235d3192208000e7c', 1, 'Functions::CutOffFunctionTensorProduct::gradient()'],\n- ['../classFunctions_1_1FourierSineSum.html#a98b52849e8b87e7c64ac808daf4de5fb', 1, 'Functions::FourierSineSum::gradient()'],\n+ ['../classFunctions_1_1CosineFunction.html#aebd93b4e32d3eba6d9ac05e4eec7d3a8', 1, 'Functions::CosineFunction::gradient()'],\n ['../classFunctions_1_1PillowFunction.html#af8734c7c65977ac719b8dc2c20cfc4dd', 1, 'Functions::PillowFunction::gradient()'],\n ['../classFunctions_1_1Q1WedgeFunction.html#ad85fbdb2787f73a7d4fb68fcdee24d14', 1, 'Functions::Q1WedgeFunction::gradient()'],\n ['../classFunctions_1_1SquareFunction.html#ad83c2f3d5e293c683e53543e3455473e', 1, 'Functions::SquareFunction::gradient()'],\n ['../classFunctions_1_1CSpline.html#a8b0b05a47a4b95d0930716deccd3dc8f', 1, 'Functions::CSpline::gradient()'],\n ['../classFunctions_1_1Bessel1.html#a287c9ab516bafab96725eed9c80502f2', 1, 'Functions::Bessel1::gradient()'],\n ['../classVectorFunctionFromTensorFunction.html#a0955df9497c8389c22e932622e6ebf61', 1, 'VectorFunctionFromTensorFunction::gradient()'],\n ['../classFunctionFromFunctionObjects.html#a4a60bd11d54ca7a28d53c2b096e4a03b', 1, 'FunctionFromFunctionObjects::gradient()'],\n+ ['../classFunctions_1_1FourierSineFunction.html#af9fa95e62c08fa7b31e790bd47010cae', 1, 'Functions::FourierSineFunction::gradient()'],\n ['../namespaceinternal.html#aa5bef221c94bc6b9c5441c306a72cdbaae2b6dfb8a5c48206992d8310d176c37c', 1, 'internal::gradient'],\n ['../structNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1FunctionBounds.html#a190a2dff3c0dbdfe0fdc9c9283d4236b', 1, 'NonMatching::internal::QuadratureGeneratorImplementation::FunctionBounds::gradient'],\n ['../classAutoDerivativeFunction.html#a699fef370c63619a08aa94433f34136b', 1, 'AutoDerivativeFunction::gradient()'],\n ['../classFunction.html#a60dfaf4b27fbbf86e2e9b40b8836b57f', 1, 'Function::gradient()'],\n ['../classFunctions_1_1ConstantFunction.html#ab4e412532f460fe04c8d9224f5b4dd90', 1, 'Functions::ConstantFunction::gradient()'],\n ['../classFunctions_1_1IdentityFunction.html#ae1b182714c7a42a9db0547bfcced7649', 1, 'Functions::IdentityFunction::gradient()'],\n- ['../classDerivativeApproximation_1_1internal_1_1Gradient.html', 1, 'DerivativeApproximation::internal::Gradient< dim >'],\n ['../classFunctions_1_1Monomial.html#a3a572c2af7c1174ce2ff316dd77aafe5', 1, 'Functions::Monomial::gradient()'],\n ['../classFunctions_1_1Spherical.html#a578a604ff2b45b4261cc40eca64f20e0', 1, 'Functions::Spherical::gradient()'],\n ['../classNonMatching_1_1internal_1_1DiscreteQuadratureGeneratorImplementation_1_1RefSpaceFEFieldFunction.html#a169fce204d6f37defaab6c87721aebc2', 1, 'NonMatching::internal::DiscreteQuadratureGeneratorImplementation::RefSpaceFEFieldFunction::gradient()'],\n ['../classFunctions_1_1FEFieldFunction.html#a298269556af8667b9adbfef322c4ae57', 1, 'Functions::FEFieldFunction::gradient()'],\n ['../classFEValuesViews_1_1Tensor_3_012_00_01dim_00_01spacedim_01_4.html#aa58cffa16a48be95e37cd76f8f416555', 1, 'FEValuesViews::Tensor< 2, dim, spacedim >::gradient()'],\n ['../classFEValuesViews_1_1Vector.html#a749be2d4827bdfb9c3df8f8e3ba1b066', 1, 'FEValuesViews::Vector::gradient()'],\n ['../classFEValuesViews_1_1Scalar.html#a2c9a7415cea23e0d3e9b405f30fc56ac', 1, 'FEValuesViews::Scalar::gradient()'],\n ['../classFEValuesViews_1_1RenumberedView.html#a1a4b604451ecf9331b29473fb3c5cab5', 1, 'FEValuesViews::RenumberedView::gradient()'],\n ['../structDifferentiation_1_1AD_1_1TapelessDrivers.html#a092dfc71f6a8dc3a23a29c683ca0f19c', 1, 'Differentiation::AD::TapelessDrivers::gradient()'],\n ['../structDifferentiation_1_1AD_1_1TapedDrivers.html#a24835c2c731a7d4d69d90d95bdaae270', 1, 'Differentiation::AD::TapedDrivers::gradient()'],\n ['../classConstantTensorFunction.html#aab6a061147fdc853dea510e931bb4f30', 1, 'ConstantTensorFunction::gradient()'],\n ['../classTensorFunction.html#a49064481c7e7a64525109f030ad43cd7', 1, 'TensorFunction::gradient()'],\n ['../classFunctions_1_1Spherical.html#a6d63ed3ec94f9fbaab1f107e1bf19af1', 1, 'Functions::Spherical::gradient()'],\n- ['../classFunctions_1_1SymbolicFunction.html#ab2eeb7da7fe4944fad9f4d3da5a9933f', 1, 'Functions::SymbolicFunction::gradient()'],\n- ['../classFunctions_1_1InterpolatedTensorProductGridData.html#ab559d17f99e63ef67574a21f83372c84', 1, 'Functions::InterpolatedTensorProductGridData::gradient()'],\n- ['../classFunctions_1_1InterpolatedUniformGridData.html#a601c763590643a75e85a41ee4c3a56a0', 1, 'Functions::InterpolatedUniformGridData::gradient()'],\n+ ['../classFunctions_1_1SignedDistance_1_1Ellipsoid.html#a0d8df3f2111460fb60aa5bc990af801e', 1, 'Functions::SignedDistance::Ellipsoid::gradient()'],\n+ ['../classFunctions_1_1SignedDistance_1_1Plane.html#ab85307507c3055d4584fe0aa0104d8ae', 1, 'Functions::SignedDistance::Plane::gradient()'],\n+ ['../classFunctions_1_1SignedDistance_1_1Sphere.html#afaec76137ca08a84aea6dd11682cb1f9', 1, 'Functions::SignedDistance::Sphere::gradient()'],\n+ ['../classFunctions_1_1PointRestriction.html#a4d63b6319eb9ad77a25584cb38f695b2', 1, 'Functions::PointRestriction::gradient()'],\n+ ['../classFunctions_1_1CoordinateRestriction.html#a8185d25e0428169386e22b98c9fd9963', 1, 'Functions::CoordinateRestriction::gradient()'],\n ['../classFunctions_1_1CutOffFunctionCinfty.html#a615ce24fea527714e0d261b8a4d0c452', 1, 'Functions::CutOffFunctionCinfty::gradient()'],\n ['../classFunctions_1_1Polynomial.html#a77d0c30da2bf5d122ca6f05c4c84009c', 1, 'Functions::Polynomial::gradient()'],\n- ['../classFunctions_1_1CoordinateRestriction.html#a8185d25e0428169386e22b98c9fd9963', 1, 'Functions::CoordinateRestriction::gradient()'],\n- ['../classFunctions_1_1PointRestriction.html#a4d63b6319eb9ad77a25584cb38f695b2', 1, 'Functions::PointRestriction::gradient()'],\n- ['../classFunctions_1_1SignedDistance_1_1Sphere.html#afaec76137ca08a84aea6dd11682cb1f9', 1, 'Functions::SignedDistance::Sphere::gradient()'],\n- ['../classFunctions_1_1SignedDistance_1_1Plane.html#ab85307507c3055d4584fe0aa0104d8ae', 1, 'Functions::SignedDistance::Plane::gradient()'],\n- ['../classFunctions_1_1SignedDistance_1_1Ellipsoid.html#a0d8df3f2111460fb60aa5bc990af801e', 1, 'Functions::SignedDistance::Ellipsoid::gradient()']\n+ ['../classFunctions_1_1InterpolatedUniformGridData.html#a601c763590643a75e85a41ee4c3a56a0', 1, 'Functions::InterpolatedUniformGridData::gradient()'],\n+ ['../classFunctions_1_1InterpolatedTensorProductGridData.html#ab559d17f99e63ef67574a21f83372c84', 1, 'Functions::InterpolatedTensorProductGridData::gradient()'],\n+ ['../classFunctions_1_1SymbolicFunction.html#ab2eeb7da7fe4944fad9f4d3da5a9933f', 1, 'Functions::SymbolicFunction::gradient()']\n ]],\n ['gradient_5findex_723', ['gradient_index', ['../classMeshWorker_1_1VectorSelector.html#affc53cab05328d7fc666524b21fc7f42', 1, 'MeshWorker::VectorSelector']]],\n- ['gradient_5flist_724', ['gradient_list', ['../classFunctions_1_1PillowFunction.html#a4e96cefde0b80abe20e5ed8bc3ab1e56', 1, 'Functions::PillowFunction::gradient_list()'],\n- ['../classFunctions_1_1CosineFunction.html#affdb0def2e5b8550676051db6bb72f97', 1, 'Functions::CosineFunction::gradient_list()'],\n- ['../classFunctions_1_1CosineGradFunction.html#a73a866f092b490be9573655e89676c0e', 1, 'Functions::CosineGradFunction::gradient_list()'],\n- ['../classFunctions_1_1ExpFunction.html#af45d5d1815cd6f751926ea6cf5d28570', 1, 'Functions::ExpFunction::gradient_list()'],\n- ['../classFunctions_1_1LSingularityFunction.html#ade0770ece16df13dff4e532f49a6e28a', 1, 'Functions::LSingularityFunction::gradient_list()'],\n- ['../classFunctions_1_1LSingularityGradFunction.html#aeefc4e750fc67ae8f1ba7bd02c556748', 1, 'Functions::LSingularityGradFunction::gradient_list()'],\n- ['../classFunctions_1_1SlitSingularityFunction.html#a7fc24669069be569636f1c225f60c971', 1, 'Functions::SlitSingularityFunction::gradient_list()'],\n- ['../classFunctions_1_1SlitHyperSingularityFunction.html#a6e145f8c858ab4947e55a76df5b81996', 1, 'Functions::SlitHyperSingularityFunction::gradient_list()'],\n- ['../classFunctions_1_1JumpFunction.html#ababedd6fc8d17aa80220f439f3946e5b', 1, 'Functions::JumpFunction::gradient_list()'],\n+ ['gradient_5flist_724', ['gradient_list', ['../classFunctions_1_1JumpFunction.html#ababedd6fc8d17aa80220f439f3946e5b', 1, 'Functions::JumpFunction::gradient_list()'],\n ['../classTensorFunction.html#ac2b9389efaf1690f7e7b25d6dbbf654c', 1, 'TensorFunction::gradient_list()'],\n ['../classConstantTensorFunction.html#ad32663adb2d5cfd7c3980f40df2ea3e1', 1, 'ConstantTensorFunction::gradient_list()'],\n- ['../classFunctions_1_1Bessel1.html#a5ac9affe25ecfcfeeb016aca46177122', 1, 'Functions::Bessel1::gradient_list()'],\n ['../classFunctions_1_1FEFieldFunction.html#a7c6bf60f93ffffd446db9f2b16f002f3', 1, 'Functions::FEFieldFunction::gradient_list()'],\n+ ['../classFunctions_1_1SlitHyperSingularityFunction.html#a6e145f8c858ab4947e55a76df5b81996', 1, 'Functions::SlitHyperSingularityFunction::gradient_list()'],\n+ ['../classFunctions_1_1SlitSingularityFunction.html#a7fc24669069be569636f1c225f60c971', 1, 'Functions::SlitSingularityFunction::gradient_list()'],\n+ ['../classFunctions_1_1LSingularityGradFunction.html#aeefc4e750fc67ae8f1ba7bd02c556748', 1, 'Functions::LSingularityGradFunction::gradient_list()'],\n+ ['../classFunctions_1_1LSingularityFunction.html#ade0770ece16df13dff4e532f49a6e28a', 1, 'Functions::LSingularityFunction::gradient_list()'],\n+ ['../classFunctions_1_1ExpFunction.html#af45d5d1815cd6f751926ea6cf5d28570', 1, 'Functions::ExpFunction::gradient_list()'],\n+ ['../classFunctions_1_1CosineGradFunction.html#a73a866f092b490be9573655e89676c0e', 1, 'Functions::CosineGradFunction::gradient_list()'],\n+ ['../classFunctions_1_1CosineFunction.html#affdb0def2e5b8550676051db6bb72f97', 1, 'Functions::CosineFunction::gradient_list()'],\n+ ['../classFunctions_1_1PillowFunction.html#a4e96cefde0b80abe20e5ed8bc3ab1e56', 1, 'Functions::PillowFunction::gradient_list()'],\n ['../classFunctions_1_1Q1WedgeFunction.html#a007ee4fdcae68b911c59636132600f4c', 1, 'Functions::Q1WedgeFunction::gradient_list()'],\n- ['../classAutoDerivativeFunction.html#aefb93d9e7a78678fb9b31239841c3ab0', 1, 'AutoDerivativeFunction::gradient_list()'],\n- ['../classFunction.html#a4603183dfa66622a4dc428aeb32a4452', 1, 'Function::gradient_list()'],\n- ['../classFunctions_1_1ConstantFunction.html#a5a42d62ced01537957099fc15fcc48bd', 1, 'Functions::ConstantFunction::gradient_list()'],\n+ ['../classFunctions_1_1SquareFunction.html#a83c5fd2ee3398f36c891081473d062d7', 1, 'Functions::SquareFunction::gradient_list()'],\n+ ['../classFunctions_1_1Bessel1.html#a5ac9affe25ecfcfeeb016aca46177122', 1, 'Functions::Bessel1::gradient_list()'],\n ['../classVectorFunctionFromTensorFunction.html#a9d3ebb52ed20ba65c5d0edf641e16ed5', 1, 'VectorFunctionFromTensorFunction::gradient_list()'],\n- ['../classFunctions_1_1SquareFunction.html#a83c5fd2ee3398f36c891081473d062d7', 1, 'Functions::SquareFunction::gradient_list()']\n+ ['../classFunctions_1_1ConstantFunction.html#a5a42d62ced01537957099fc15fcc48bd', 1, 'Functions::ConstantFunction::gradient_list()'],\n+ ['../classFunction.html#a4603183dfa66622a4dc428aeb32a4452', 1, 'Function::gradient_list()'],\n+ ['../classAutoDerivativeFunction.html#aefb93d9e7a78678fb9b31239841c3ab0', 1, 'AutoDerivativeFunction::gradient_list()']\n ]],\n ['gradient_5fmatrix_725', ['gradient_matrix', ['../namespaceLocalIntegrators_1_1Divergence.html#ad708d69e74c34829387629c5d770bd1c', 1, 'LocalIntegrators::Divergence']]],\n ['gradient_5fresidual_726', ['gradient_residual', ['../namespaceLocalIntegrators_1_1Divergence.html#ab7fd6d21f74e11f38386f415527c1721', 1, 'LocalIntegrators::Divergence::gradient_residual(Vector< number > &result, const FEValuesBase< dim > &fetest, const std::vector< double > &input, const double factor=1.)'],\n ['../namespaceLocalIntegrators_1_1Divergence.html#a49b84c8d36c4c8800cd63b7a3b184299', 1, 'LocalIntegrators::Divergence::gradient_residual(Vector< number > &result, const FEValuesBase< dim > &fetest, const std::vector< Tensor< 1, dim > > &input, const double factor=1.)']\n ]],\n ['gradient_5fselection_727', ['gradient_selection', ['../classMeshWorker_1_1VectorSelector.html#ab7f18113d9f7d9900506f2e2b46df483', 1, 'MeshWorker::VectorSelector']]],\n- ['gradient_5ftype_728', ['gradient_type', ['../classFEInterfaceViews_1_1Scalar.html#a76d9164cdeaf79c291bf322fe1abe758', 1, 'FEInterfaceViews::Scalar::gradient_type'],\n- ['../classFEPointEvaluation.html#a6e4f8061b480e0831faac8a5a2318922', 1, 'FEPointEvaluation::gradient_type'],\n+ ['gradient_5ftype_728', ['gradient_type', ['../classFEValuesViews_1_1Scalar.html#a365b47766d644b4c6a50ad941e8ece6e', 1, 'FEValuesViews::Scalar::gradient_type'],\n ['../classFEInterfaceViews_1_1Vector.html#ac9411ad24b0d5836374a90f5c47968ae', 1, 'FEInterfaceViews::Vector::gradient_type'],\n- ['../classFEValuesViews_1_1Scalar.html#a365b47766d644b4c6a50ad941e8ece6e', 1, 'FEValuesViews::Scalar::gradient_type'],\n+ ['../classFEInterfaceViews_1_1Scalar.html#a76d9164cdeaf79c291bf322fe1abe758', 1, 'FEInterfaceViews::Scalar::gradient_type'],\n+ ['../classFEValuesViews_1_1RenumberedView.html#aa0a3f0825797a6cc0b29bca28b920a0d', 1, 'FEValuesViews::RenumberedView::gradient_type'],\n+ ['../classFEFaceEvaluation.html#ad5ac66f58cec9630c76cc0f29f9d497e', 1, 'FEFaceEvaluation::gradient_type'],\n+ ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1SymmetricTensor_3_012_01_4_01_4.html#a808c6e31a2c9c0892c49a49cf9f2febb', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::gradient_type'],\n ['../classFEValuesViews_1_1Vector.html#a3136b8a6daa13014856ba61f290aba58', 1, 'FEValuesViews::Vector::gradient_type'],\n ['../classFEValuesViews_1_1Tensor_3_012_00_01dim_00_01spacedim_01_4.html#a89ee7d04e0b843012317e1bd8c3d8265', 1, 'FEValuesViews::Tensor< 2, dim, spacedim >::gradient_type'],\n ['../classFEEvaluationBase.html#a5e13ff564ace863c84f87940e255f41d', 1, 'FEEvaluationBase::gradient_type'],\n- ['../classinternal_1_1PrecomputedEvaluationDataAccessor.html#ad0f084ad37ae702dc49679fbefeead7b', 1, 'internal::PrecomputedEvaluationDataAccessor::gradient_type'],\n ['../classPortable_1_1FEEvaluation.html#a71fd2cf86193d5940fd3f662f7290d5d', 1, 'Portable::FEEvaluation::gradient_type'],\n+ ['../classinternal_1_1PrecomputedEvaluationDataAccessor.html#ad0f084ad37ae702dc49679fbefeead7b', 1, 'internal::PrecomputedEvaluationDataAccessor::gradient_type'],\n ['../structinternal_1_1PrecomputedEvaluationData.html#ad0a460380c778dd1164026084dbf872d', 1, 'internal::PrecomputedEvaluationData::gradient_type'],\n ['../classFEFacePointEvaluation.html#a71fb8499099a290bca360aedd44b8f97', 1, 'FEFacePointEvaluation::gradient_type'],\n- ['../classFEFaceEvaluation.html#ad5ac66f58cec9630c76cc0f29f9d497e', 1, 'FEFaceEvaluation::gradient_type'],\n+ ['../classFEPointEvaluation.html#a6e4f8061b480e0831faac8a5a2318922', 1, 'FEPointEvaluation::gradient_type'],\n ['../classFEPointEvaluationBase.html#ad7b179b70c640ab282b1bd58dd2b0fd2', 1, 'FEPointEvaluationBase::gradient_type'],\n- ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1SymmetricTensor_3_012_01_4_01_4.html#a808c6e31a2c9c0892c49a49cf9f2febb', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::gradient_type'],\n ['../classFEEvaluation.html#a8a40f0bccb9db6ed543f7800a824f930', 1, 'FEEvaluation::gradient_type'],\n- ['../classFEValuesViews_1_1RenumberedView.html#aa0a3f0825797a6cc0b29bca28b920a0d', 1, 'FEValuesViews::RenumberedView::gradient_type'],\n ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1Tensor_3_012_01_4_01_4.html#a23a4be2a20b4a45c61f217e92f0d7ec7', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::Tensor< 2 > >::gradient_type'],\n ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1Tensor_3_011_01_4_01_4.html#ad6d4eee86c4c861aac2e08662b7e0b9e', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::Tensor< 1 > >::gradient_type'],\n ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1Vector_01_4.html#a816d68b7911faef5026583c3e75ba83f', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::Vector >::gradient_type'],\n ['../structDifferentiation_1_1AD_1_1internal_1_1Extractor_3_01dim_00_01FEValuesExtractors_1_1Scalar_01_4.html#a565de2667cc147db27b0f221fecf9d4a', 1, 'Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::Scalar >::gradient_type'],\n ['../classTensorFunction.html#a1560a439470c14b426e28a72fc08e252', 1, 'TensorFunction::gradient_type']\n ]],\n ['gradients_729', ['gradients', ['../structPortable_1_1internal_1_1EvaluatorTensorProduct_3_01evaluate__general_00_01dim_00_01fe__dega8134ecf00d3c979bab5bfb2c3980f13.html#ae9965c122a68910e50079a74941541c2', 1, 'Portable::internal::EvaluatorTensorProduct< evaluate_general, dim, fe_degree, n_q_points_1d, Number >::gradients()'],\n@@ -1865,18 +1865,18 @@\n ]],\n ['gradients_5fquad_733', ['gradients_quad', ['../classFEEvaluationData.html#a11c94c5e2492db775df00631b99f2c3c', 1, 'FEEvaluationData']]],\n ['gradients_5fquad_5finitialized_734', ['gradients_quad_initialized', ['../classFEEvaluationData.html#a6118052e91b09cf12d5051e1b29b49f7', 1, 'FEEvaluationData']]],\n ['gradients_5fquad_5fsubmitted_735', ['gradients_quad_submitted', ['../classFEEvaluationData.html#a980080cfd9249384b4cafaf4261b7654', 1, 'FEEvaluationData']]],\n ['gradients_5fwithin_5fsubface_736', ['gradients_within_subface', ['../structinternal_1_1MatrixFreeFunctions_1_1UnivariateShapeData.html#affbc72772c45175bf7e1f303477b6c53', 1, 'internal::MatrixFreeFunctions::UnivariateShapeData']]],\n ['gradientvector_737', ['GradientVector', ['../classinternal_1_1FEValuesImplementation_1_1FiniteElementRelatedData.html#a435a591d936013e27b62ab3d95300edb', 1, 'internal::FEValuesImplementation::FiniteElementRelatedData']]],\n ['gradtype_738', ['GradType', ['../classBarycentricPolynomials.html#a21c692d805e173963b9f36e51990bc4e', 1, 'BarycentricPolynomials']]],\n- ['graph_739', ['graph', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a0b86c71fdbfa142a0681c8a7b6365237', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::graph'],\n- ['../classPortable_1_1MatrixFree.html#a1b061d43e6028b803dcfb85ab6f13c1c', 1, 'Portable::MatrixFree::graph'],\n- ['../namespaceDoFRenumbering_1_1boost_1_1boosttypes.html#acaee4366d1567663daae1e81b7716233', 1, 'DoFRenumbering::boost::boosttypes::Graph'],\n- ['../classTrilinosWrappers_1_1SparsityPattern.html#a35f91d854cbcbfea97bf753ef967a704', 1, 'TrilinosWrappers::SparsityPattern::graph']\n+ ['graph_739', ['graph', ['../classPortable_1_1MatrixFree.html#a1b061d43e6028b803dcfb85ab6f13c1c', 1, 'Portable::MatrixFree::graph'],\n+ ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a0b86c71fdbfa142a0681c8a7b6365237', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::graph'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#a35f91d854cbcbfea97bf753ef967a704', 1, 'TrilinosWrappers::SparsityPattern::graph'],\n+ ['../namespaceDoFRenumbering_1_1boost_1_1boosttypes.html#acaee4366d1567663daae1e81b7716233', 1, 'DoFRenumbering::boost::boosttypes::Graph']\n ]],\n ['graph_5fcoloring_2ecc_740', ['graph_coloring.cc', ['../graph__coloring_8cc.html', 1, '']]],\n ['graph_5fcoloring_2eh_741', ['graph_coloring.h', ['../graph__coloring_8h.html', 1, '']]],\n ['graphcoloring_742', ['GraphColoring', ['../namespaceGraphColoring.html', 1, '']]],\n ['graphcoloring_3a_3ainternal_743', ['internal', ['../namespaceGraphColoring_1_1internal.html', 1, 'GraphColoring']]],\n ['graphical_20output_744', ['Graphical output', ['../group__output.html', 1, '']]],\n ['graphtype_745', ['GraphType', ['../namespaceLinearAlgebra_1_1TpetraWrappers_1_1TpetraTypes.html#a948048ee43686de403afa46220b5f0a9', 1, 'LinearAlgebra::TpetraWrappers::TpetraTypes']]],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_14.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_14.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -1025,72 +1025,72 @@\n ['../classMappingQ_1_1InternalData.html#ab6a3cd35b6df7ebfd05e0716edc446e2', 1, 'MappingQ::InternalData::InternalData()'],\n ['../classMappingManifold_1_1InternalData.html#ae6e3d5a53388e275316b5d6e29c5223e', 1, 'MappingManifold::InternalData::InternalData()'],\n ['../classMappingFEField_1_1InternalData.html#a0e23014b669cda12b5ac4fd0ee97e89c', 1, 'MappingFEField::InternalData::InternalData()'],\n ['../classFE__DGVector_1_1InternalData.html', 1, 'FE_DGVector< PolynomialType, dim, spacedim >::InternalData'],\n ['../classMappingFE_1_1InternalData.html#ac66ada38acc5c803a1f92bf45877650c', 1, 'MappingFE::InternalData::InternalData()'],\n ['../classMappingCartesian_1_1InternalData.html#a97f8c638680f94d985c124114300f86e', 1, 'MappingCartesian::InternalData::InternalData()'],\n ['../classFE__ABF_1_1InternalData.html', 1, 'FE_ABF< dim >::InternalData'],\n+ ['../classFESystem_1_1InternalData.html', 1, 'FESystem< dim, spacedim >::InternalData'],\n+ ['../classMappingCartesian_1_1InternalData.html', 1, 'MappingCartesian< dim, spacedim >::InternalData'],\n+ ['../classMappingFE_1_1InternalData.html', 1, 'MappingFE< dim, spacedim >::InternalData'],\n ['../classMappingFEField_1_1InternalData.html', 1, 'MappingFEField< dim, spacedim, VectorType >::InternalData'],\n ['../classMappingManifold_1_1InternalData.html', 1, 'MappingManifold< dim, spacedim >::InternalData'],\n ['../classMappingQ_1_1InternalData.html', 1, 'MappingQ< dim, spacedim >::InternalData'],\n- ['../classMappingFE_1_1InternalData.html', 1, 'MappingFE< dim, spacedim >::InternalData'],\n- ['../classMappingCartesian_1_1InternalData.html', 1, 'MappingCartesian< dim, spacedim >::InternalData'],\n- ['../classFESystem_1_1InternalData.html', 1, 'FESystem< dim, spacedim >::InternalData'],\n- ['../classFE__PolyFace_1_1InternalData.html', 1, 'FE_PolyFace< PolynomialType, dim, spacedim >::InternalData'],\n- ['../classFE__Enriched_1_1InternalData.html', 1, 'FE_Enriched< dim, spacedim >::InternalData'],\n- ['../classFE__NedelecSZ_1_1InternalData.html', 1, 'FE_NedelecSZ< dim, spacedim >::InternalData'],\n ['../classFE__PolyTensor_1_1InternalData.html', 1, 'FE_PolyTensor< dim, spacedim >::InternalData'],\n- ['../classFE__Poly_1_1InternalData.html', 1, 'FE_Poly< dim, spacedim >::InternalData']\n+ ['../classFE__Poly_1_1InternalData.html', 1, 'FE_Poly< dim, spacedim >::InternalData'],\n+ ['../classFE__NedelecSZ_1_1InternalData.html', 1, 'FE_NedelecSZ< dim, spacedim >::InternalData'],\n+ ['../classFE__Enriched_1_1InternalData.html', 1, 'FE_Enriched< dim, spacedim >::InternalData'],\n+ ['../classFE__PolyFace_1_1InternalData.html', 1, 'FE_PolyFace< PolynomialType, dim, spacedim >::InternalData']\n ]],\n- ['internaldatabase_422', ['internaldatabase', ['../classFiniteElement_1_1InternalDataBase.html#a068e65d57293631bc7c4afa208f2f88c', 1, 'FiniteElement::InternalDataBase::InternalDataBase()'],\n+ ['internaldatabase_422', ['internaldatabase', ['../classFiniteElement.html#ad9550b58ee4f8712411e9f795e7baebd', 1, 'FiniteElement::InternalDataBase'],\n+ ['../classFiniteElement_1_1InternalDataBase.html#a068e65d57293631bc7c4afa208f2f88c', 1, 'FiniteElement::InternalDataBase::InternalDataBase()'],\n ['../classFiniteElement_1_1InternalDataBase.html#a7b2a087515c04cf619431bdb9468b955', 1, 'FiniteElement::InternalDataBase::InternalDataBase(const InternalDataBase &)=delete'],\n ['../classMapping_1_1InternalDataBase.html#acefbd21af8fc1074dc65922db9a7bad6', 1, 'Mapping::InternalDataBase::InternalDataBase()'],\n ['../classMapping_1_1InternalDataBase.html#a4accbdc665fa79f54c5459374eab4426', 1, 'Mapping::InternalDataBase::InternalDataBase(const InternalDataBase &)=delete'],\n- ['../classMapping_1_1InternalDataBase.html', 1, 'Mapping< dim, spacedim >::InternalDataBase'],\n ['../classFiniteElement_1_1InternalDataBase.html', 1, 'FiniteElement< dim, spacedim >::InternalDataBase'],\n- ['../classFiniteElement.html#ad9550b58ee4f8712411e9f795e7baebd', 1, 'FiniteElement::InternalDataBase']\n+ ['../classMapping_1_1InternalDataBase.html', 1, 'Mapping< dim, spacedim >::InternalDataBase']\n ]],\n ['internalnode_423', ['InternalNode', ['../structExtractLevelVisitor.html#ac7d31e173b67362fe72e6a385117f6d1', 1, 'ExtractLevelVisitor']]],\n ['internals_424', ['internals', ['../namespaceinternals.html', 1, 'internals'],\n ['../group__Iterators.html#IteratorAccessorInternals', 1, 'Iterator and accessor internals']\n ]],\n ['internals_3a_3asparsitypatterntools_425', ['SparsityPatternTools', ['../namespaceinternals_1_1SparsityPatternTools.html', 1, 'internals']]],\n ['interplay_20of_20updateflags_20mapping_20and_20finiteelement_20in_20fevalues_426', ['The interplay of UpdateFlags, Mapping, and FiniteElement in FEValues', ['../group__UpdateFlags.html', 1, '']]],\n ['interpolate_427', ['interpolate', ['../classMGTwoLevelTransferNonNested.html#ade3781c63d453952bb6e61cb9bdaadaf', 1, 'MGTwoLevelTransferNonNested::interpolate()'],\n ['../classPETScWrappers_1_1TimeStepper.html#af725533fec154d5be87afcfb60d1bb26', 1, 'PETScWrappers::TimeStepper::interpolate'],\n ['../classparallel_1_1distributed_1_1ContinuousQuadratureDataTransfer.html#a99c1cc60e9eb704b4c11a07a76d1a98d', 1, 'parallel::distributed::ContinuousQuadratureDataTransfer::interpolate()'],\n ['../classparallel_1_1distributed_1_1experimental_1_1FieldTransfer.html#ad0a82d968ad0aff62e852bb999001e8c', 1, 'parallel::distributed::experimental::FieldTransfer::interpolate()'],\n- ['../classparallel_1_1distributed_1_1SolutionTransfer.html#ad987a4f47805b271e882ca4533348f8c', 1, 'parallel::distributed::SolutionTransfer::interpolate(std::vector< VectorType * > &all_out)'],\n- ['../classparallel_1_1distributed_1_1SolutionTransfer.html#ae5abfde68fb2dc24e5c4690c8e5e247f', 1, 'parallel::distributed::SolutionTransfer::interpolate(VectorType &out)'],\n+ ['../classparallel_1_1distributed_1_1SolutionTransfer.html#ad987a4f47805b271e882ca4533348f8c', 1, 'parallel::distributed::SolutionTransfer::interpolate()'],\n ['../namespaceFETools.html#ad29759cb8c51f8d369a371f63be8dde0', 1, 'FETools::interpolate(const DoFHandler< dim, spacedim > &dof1, const InVector &u1, const DoFHandler< dim, spacedim > &dof2, OutVector &u2)'],\n ['../namespaceFETools.html#a7e304ff8b98435584fb57adeefdd1cc9', 1, 'FETools::interpolate(const DoFHandler< dim, spacedim > &dof1, const InVector &u1, const DoFHandler< dim, spacedim > &dof2, const AffineConstraints< typename OutVector::value_type > &constraints, OutVector &u2)'],\n ['../namespaceVectorTools.html#a35950c839da51812962d41ee4075b3b8', 1, 'VectorTools::interpolate(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const Function< spacedim, typename VectorType::value_type > &function, VectorType &vec, const ComponentMask &component_mask={})'],\n ['../namespaceVectorTools.html#a21b8eb0c4404cee4761f76fca5cdd83c', 1, 'VectorTools::interpolate(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const Function< spacedim, typename VectorType::value_type > &function, VectorType &vec, const ComponentMask &component_mask={})'],\n ['../namespaceVectorTools.html#ada52a414bdfae1d622a85fa44960afcd', 1, 'VectorTools::interpolate(const DoFHandler< dim, spacedim > &dof, const Function< spacedim, typename VectorType::value_type > &function, VectorType &vec, const ComponentMask &component_mask={})'],\n ['../namespaceVectorTools.html#a5e3af70a47cedfaf361cf5c621e94e3d', 1, 'VectorTools::interpolate(const DoFHandler< dim, spacedim > &dof_1, const DoFHandler< dim, spacedim > &dof_2, const FullMatrix< double > &transfer, const InVector &data_1, OutVector &data_2)'],\n+ ['../classparallel_1_1distributed_1_1SolutionTransfer.html#ae5abfde68fb2dc24e5c4690c8e5e247f', 1, 'parallel::distributed::SolutionTransfer::interpolate()'],\n ['../structinternal_1_1FEFaceNormalEvaluationImpl.html#ae040f5043bdd291ee2ed3794a404ce6a', 1, 'internal::FEFaceNormalEvaluationImpl::interpolate()'],\n ['../classinternal_1_1FEEvaluationImplHangingNodesRunner_3_01FEEvaluationImplHangingNodesRunnerTypes_c1031c798c74e42da3548d1dbac7fe26.html#affe1a90286c658b200c5fac397abd750', 1, 'internal::FEEvaluationImplHangingNodesRunner< FEEvaluationImplHangingNodesRunnerTypes::vectorized, dim, fe_degree, Number >::interpolate()'],\n ['../classMGTwoLevelTransferBase.html#ae58b9a94018c540e2feb5d78302756f9', 1, 'MGTwoLevelTransferBase::interpolate()'],\n ['../classSolutionTransfer.html#afefd5237a9dd772c9705f48472dd25de', 1, 'SolutionTransfer::interpolate(const VectorType &in, VectorType &out) const'],\n ['../classSolutionTransfer.html#a1171abf820e35e02304017ef3daeeaa5', 1, 'SolutionTransfer::interpolate(const std::vector< VectorType > &all_in, std::vector< VectorType > &all_out) const'],\n ['../classMGTwoLevelTransfer.html#a7ae104a3bd5b39b0802200a8e5c37a32', 1, 'MGTwoLevelTransfer::interpolate()']\n ]],\n ['interpolate_5f2d_428', ['interpolate_2D', ['../classinternal_1_1FEEvaluationImplHangingNodesRunner_3_01FEEvaluationImplHangingNodesRunnerTypes_00966c5775d96ae2fc40b13af2d17791.html#ad9b67c5fed0ad1a1d0d149c66eba5013', 1, 'internal::FEEvaluationImplHangingNodesRunner< FEEvaluationImplHangingNodesRunnerTypes::scalar, dim, fe_degree, Number >']]],\n ['interpolate_5f3d_5fedge_429', ['interpolate_3D_edge', ['../classinternal_1_1HelperBase.html#a780c767c08478b7d561fa7b9870dc8f7', 1, 'internal::HelperBase']]],\n ['interpolate_5f3d_5fface_430', ['interpolate_3D_face', ['../classinternal_1_1HelperBase.html#aec51b41ca3ebe28c6d7a9b14b4559649', 1, 'internal::HelperBase']]],\n ['interpolate_5fbased_5fon_5fmaterial_5fid_431', ['interpolate_based_on_material_id', ['../namespaceVectorTools.html#a3e7437fa3b2619e21514713c607a6fdd', 1, 'VectorTools']]],\n ['interpolate_5fboundary_5f2d_432', ['interpolate_boundary_2d', ['../namespacePortable_1_1internal.html#a282e2278b0463492850ce7f8dadd1c9a', 1, 'Portable::internal']]],\n ['interpolate_5fboundary_5f3d_433', ['interpolate_boundary_3d', ['../namespacePortable_1_1internal.html#ab00b19d19e4b79683310f16a151c9866', 1, 'Portable::internal']]],\n- ['interpolate_5fboundary_5fvalues_434', ['interpolate_boundary_values', ['../namespaceVectorTools.html#a281b15d5f86e71fc14d4a1a73a8a29d0', 1, 'VectorTools::interpolate_boundary_values(const DoFHandler< dim, spacedim > &dof, const types::boundary_id boundary_indicator, const Function< spacedim, number > &boundary_function, std::map< types::global_dof_index, number > &boundary_values, const ComponentMask &component_mask={})'],\n- ['../group__constraints.html#ga5fa6662d3fb090b8d7454d81abcff678', 1, 'VectorTools::interpolate_boundary_values(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const std::map< types::boundary_id, const Function< spacedim, number > * > &function_map, AffineConstraints< number > &constraints, const ComponentMask &component_mask={})'],\n- ['../group__constraints.html#ga99654197f6310b63a6974f74cf868995', 1, 'VectorTools::interpolate_boundary_values(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const std::map< types::boundary_id, const Function< spacedim, number > * > &function_map, AffineConstraints< number > &constraints, const ComponentMask &component_mask={})'],\n- ['../group__constraints.html#ga07c44d9d66467bf2184e1251d6713924', 1, 'VectorTools::interpolate_boundary_values(const DoFHandler< dim, spacedim > &dof, const std::map< types::boundary_id, const Function< spacedim, number > * > &function_map, AffineConstraints< number > &constraints, const ComponentMask &component_mask={})'],\n- ['../group__constraints.html#ga360afb8a757eba8504172d754d36d047', 1, 'VectorTools::interpolate_boundary_values(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const types::boundary_id boundary_indicator, const Function< spacedim, number > &boundary_function, AffineConstraints< number > &constraints, const ComponentMask &component_mask={})'],\n+ ['interpolate_5fboundary_5fvalues_434', ['interpolate_boundary_values', ['../group__constraints.html#ga360afb8a757eba8504172d754d36d047', 1, 'VectorTools::interpolate_boundary_values(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const types::boundary_id boundary_indicator, const Function< spacedim, number > &boundary_function, AffineConstraints< number > &constraints, const ComponentMask &component_mask={})'],\n ['../group__constraints.html#ga1465e31e8cb73b6ad0a7b946ef996ff7', 1, 'VectorTools::interpolate_boundary_values(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const types::boundary_id boundary_indicator, const Function< spacedim, number > &boundary_function, AffineConstraints< number > &constraints, const ComponentMask &component_mask={})'],\n ['../group__constraints.html#ga218e99116a58ab6364da2c204e3c0188', 1, 'VectorTools::interpolate_boundary_values(const DoFHandler< dim, spacedim > &dof, const types::boundary_id boundary_indicator, const Function< spacedim, number > &boundary_function, AffineConstraints< number > &constraints, const ComponentMask &component_mask={})'],\n+ ['../group__constraints.html#ga07c44d9d66467bf2184e1251d6713924', 1, 'VectorTools::interpolate_boundary_values(const DoFHandler< dim, spacedim > &dof, const std::map< types::boundary_id, const Function< spacedim, number > * > &function_map, AffineConstraints< number > &constraints, const ComponentMask &component_mask={})'],\n+ ['../group__constraints.html#ga99654197f6310b63a6974f74cf868995', 1, 'VectorTools::interpolate_boundary_values(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const std::map< types::boundary_id, const Function< spacedim, number > * > &function_map, AffineConstraints< number > &constraints, const ComponentMask &component_mask={})'],\n+ ['../group__constraints.html#ga5fa6662d3fb090b8d7454d81abcff678', 1, 'VectorTools::interpolate_boundary_values(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const std::map< types::boundary_id, const Function< spacedim, number > * > &function_map, AffineConstraints< number > &constraints, const ComponentMask &component_mask={})'],\n+ ['../namespaceVectorTools.html#a281b15d5f86e71fc14d4a1a73a8a29d0', 1, 'VectorTools::interpolate_boundary_values(const DoFHandler< dim, spacedim > &dof, const types::boundary_id boundary_indicator, const Function< spacedim, number > &boundary_function, std::map< types::global_dof_index, number > &boundary_values, const ComponentMask &component_mask={})'],\n ['../namespaceVectorTools.html#add3084213ae20d864cfc32cfcebc7870', 1, 'VectorTools::interpolate_boundary_values(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const types::boundary_id boundary_indicator, const Function< spacedim, number > &boundary_function, std::map< types::global_dof_index, number > &boundary_values, const ComponentMask &component_mask={})'],\n ['../namespaceVectorTools.html#af32b7918d1e58b6a86d10ec1e67e1d9e', 1, 'VectorTools::interpolate_boundary_values(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const types::boundary_id boundary_indicator, const Function< spacedim, number > &boundary_function, std::map< types::global_dof_index, number > &boundary_values, const ComponentMask &component_mask={})'],\n ['../namespaceVectorTools.html#a69ce7290821f383f915286d09b715caf', 1, 'VectorTools::interpolate_boundary_values(const DoFHandler< dim, spacedim > &dof, const std::map< types::boundary_id, const Function< spacedim, number > * > &function_map, std::map< types::global_dof_index, number > &boundary_values, const ComponentMask &component_mask={})'],\n ['../namespaceVectorTools.html#a82b41c7fc1ad59fdba29826e3fa6d01d', 1, 'VectorTools::interpolate_boundary_values(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const std::map< types::boundary_id, const Function< spacedim, number > * > &function_map, std::map< types::global_dof_index, number > &boundary_values, const ComponentMask &component_mask={})'],\n ['../namespaceVectorTools.html#a41e94ecf8f78d1fbefe6678f2350530a', 1, 'VectorTools::interpolate_boundary_values(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const std::map< types::boundary_id, const Function< spacedim, number > * > &function_map, std::map< types::global_dof_index, number > &boundary_values, const ComponentMask &component_mask={})']\n ]],\n ['interpolate_5ffield_5fon_5fparticles_435', ['interpolate_field_on_particles', ['../namespaceParticles_1_1Utilities.html#af8262c92cb80790acafaec37ec8d6a6b', 1, 'Particles::Utilities']]],\n@@ -1106,54 +1106,54 @@\n ['../namespaceinternal.html#aaeb8bc686b48d968538f3e3e67113687', 1, 'internal::interpolate_to_face(const Number2 *shape_values, const std::array< int, 2 > &n_blocks, const std::array< int, 2 > &steps, const Number *input, Number *DEAL_II_RESTRICT output, const int n_rows_runtime=0, const int stride_runtime=1)']\n ]],\n ['interpolate_5fto_5ffiner_5fmesh_442', ['interpolate_to_finer_mesh', ['../namespaceVectorTools.html#a8de20459536d8f9bb587a99eba006006', 1, 'VectorTools']]],\n ['interpolate_5fto_5fmg_443', ['interpolate_to_mg', ['../classMGTransferMF.html#afedd536be0c09346c02bd12a5139051a', 1, 'MGTransferMF::interpolate_to_mg(MGLevelObject< VectorType > &dst, const InVector &src) const'],\n ['../classMGTransferMF.html#a40e2e8e3e1c2adcc6a2eb5c3abd5d7a9', 1, 'MGTransferMF::interpolate_to_mg(const DoFHandler< dim > &dof_handler, MGLevelObject< VectorType > &dst, const InVector &src) const'],\n ['../classMGTransferMatrixFree.html#a6d96b63fdd3c1a344a83ae43c7ed5a28', 1, 'MGTransferMatrixFree::interpolate_to_mg()']\n ]],\n- ['interpolatedtensorproductgriddata_444', ['interpolatedtensorproductgriddata', ['../classFunctions_1_1InterpolatedTensorProductGridData.html#a0c92601cfd0029fd6f8ad4385add0fc5', 1, 'Functions::InterpolatedTensorProductGridData::InterpolatedTensorProductGridData(const std::array< std::vector< double >, dim > &coordinate_values, const Table< dim, double > &data_values)'],\n- ['../classFunctions_1_1InterpolatedTensorProductGridData.html#ac15af1d68b17812fb922b688159b31a1', 1, 'Functions::InterpolatedTensorProductGridData::InterpolatedTensorProductGridData(std::array< std::vector< double >, dim > &&coordinate_values, Table< dim, double > &&data_values)'],\n+ ['interpolatedtensorproductgriddata_444', ['interpolatedtensorproductgriddata', ['../classFunctions_1_1InterpolatedTensorProductGridData.html#ac15af1d68b17812fb922b688159b31a1', 1, 'Functions::InterpolatedTensorProductGridData::InterpolatedTensorProductGridData(std::array< std::vector< double >, dim > &&coordinate_values, Table< dim, double > &&data_values)'],\n+ ['../classFunctions_1_1InterpolatedTensorProductGridData.html#a0c92601cfd0029fd6f8ad4385add0fc5', 1, 'Functions::InterpolatedTensorProductGridData::InterpolatedTensorProductGridData(const std::array< std::vector< double >, dim > &coordinate_values, const Table< dim, double > &data_values)'],\n ['../classFunctions_1_1InterpolatedTensorProductGridData.html', 1, 'Functions::InterpolatedTensorProductGridData< dim >']\n ]],\n- ['interpolateduniformgriddata_445', ['interpolateduniformgriddata', ['../classFunctions_1_1InterpolatedUniformGridData.html#a69c2d56cc365e20e019e83013095a80f', 1, 'Functions::InterpolatedUniformGridData::InterpolatedUniformGridData(std::array< std::pair< double, double >, dim > &&interval_endpoints, std::array< unsigned int, dim > &&n_subintervals, Table< dim, double > &&data_values)'],\n+ ['interpolateduniformgriddata_445', ['interpolateduniformgriddata', ['../classFunctions_1_1InterpolatedUniformGridData.html', 1, 'Functions::InterpolatedUniformGridData< dim >'],\n ['../classFunctions_1_1InterpolatedUniformGridData.html#a83f8bcf5263dd6deb0a8cc035aa1eefc', 1, 'Functions::InterpolatedUniformGridData::InterpolatedUniformGridData(const std::array< std::pair< double, double >, dim > &interval_endpoints, const std::array< unsigned int, dim > &n_subintervals, const Table< dim, double > &data_values)'],\n- ['../classFunctions_1_1InterpolatedUniformGridData.html', 1, 'Functions::InterpolatedUniformGridData< dim >']\n+ ['../classFunctions_1_1InterpolatedUniformGridData.html#a69c2d56cc365e20e019e83013095a80f', 1, 'Functions::InterpolatedUniformGridData::InterpolatedUniformGridData(std::array< std::pair< double, double >, dim > &&interval_endpoints, std::array< unsigned int, dim > &&n_subintervals, Table< dim, double > &&data_values)']\n ]],\n ['interpolation_5fcurve_446', ['interpolation_curve', ['../namespaceOpenCASCADE.html#a136755a93a03457dbe6ca6c57de3e4f5', 1, 'OpenCASCADE']]],\n ['interpolation_5fdifference_447', ['interpolation_difference', ['../namespaceFETools.html#a0f2e45e9f0117e1ae3ca704885c96ebc', 1, 'FETools::interpolation_difference(const DoFHandler< dim, spacedim > &dof1, const InVector &z1, const FiniteElement< dim, spacedim > &fe2, OutVector &z1_difference)'],\n ['../namespaceFETools.html#a4c95cb15c14873edca68d26be66c1330', 1, 'FETools::interpolation_difference(const DoFHandler< dim, spacedim > &dof1, const AffineConstraints< typename OutVector::value_type > &constraints1, const InVector &z1, const DoFHandler< dim, spacedim > &dof2, const AffineConstraints< typename OutVector::value_type > &constraints2, OutVector &z1_difference)']\n ]],\n ['interpolation_5fmatrices_448', ['interpolation_matrices', ['../classinternal_1_1HelperBase.html#a236b54c951bc78895df667ca6b815aae', 1, 'internal::HelperBase']]],\n ['interpolation_5fpoints_449', ['interpolation_points', ['../classFunctions_1_1CSpline.html#a4052758fbd5f008175244ac391814a25', 1, 'Functions::CSpline']]],\n- ['interpolation_5ftype_450', ['interpolation_type', ['../structinternal_1_1Trait_3_01T1_00_01VectorizationTypes_1_1mask_01_4.html#a02427ec00cc3eb99ebd64e15a3fa7099', 1, 'internal::Trait< T1, VectorizationTypes::mask >::interpolation_type'],\n- ['../structinternal_1_1Trait_3_01T1_00_01VectorizationTypes_1_1index_01_4.html#a7a0811d6a2c1db4d6415fc643e23655b', 1, 'internal::Trait< T1, VectorizationTypes::index >::interpolation_type'],\n+ ['interpolation_5ftype_450', ['interpolation_type', ['../structinternal_1_1Trait_3_01T1_00_01VectorizationTypes_1_1group_01_4.html#a7ebc949ce08b1885abd7ee05725d35e5', 1, 'internal::Trait< T1, VectorizationTypes::group >::interpolation_type'],\n ['../structinternal_1_1Trait_3_01T1_00_01VectorizationTypes_1_1sorted_01_4.html#aa5f079ebb1c94856f9a39872a5ec162b', 1, 'internal::Trait< T1, VectorizationTypes::sorted >::interpolation_type'],\n- ['../structinternal_1_1Trait_3_01T1_00_01VectorizationTypes_1_1group_01_4.html#a7ebc949ce08b1885abd7ee05725d35e5', 1, 'internal::Trait< T1, VectorizationTypes::group >::interpolation_type']\n+ ['../structinternal_1_1Trait_3_01T1_00_01VectorizationTypes_1_1index_01_4.html#a7a0811d6a2c1db4d6415fc643e23655b', 1, 'internal::Trait< T1, VectorizationTypes::index >::interpolation_type'],\n+ ['../structinternal_1_1Trait_3_01T1_00_01VectorizationTypes_1_1mask_01_4.html#a02427ec00cc3eb99ebd64e15a3fa7099', 1, 'internal::Trait< T1, VectorizationTypes::mask >::interpolation_type']\n ]],\n ['interpolation_5fvalues_451', ['interpolation_values', ['../classFunctions_1_1CSpline.html#a594ba09508accb2d4c81ce2e21f1e5bd', 1, 'Functions::CSpline']]],\n ['intersect_5fplane_452', ['intersect_plane', ['../namespaceOpenCASCADE.html#ad7143020c8f7d45356e6fe0b347f73d7', 1, 'OpenCASCADE']]],\n ['intersected_453', ['intersected', ['../namespaceNonMatching.html#a1bfa77fdc53dc7bf833ff01c4f7967daaf69530b3c7f90e64329350dd71ccc939', 1, 'NonMatching']]],\n ['intersections_2ecc_454', ['intersections.cc', ['../intersections_8cc.html', 1, '']]],\n ['intersections_2eh_455', ['intersections.h', ['../intersections_8h.html', 1, '']]],\n ['intersectiontype_456', ['IntersectionType', ['../structGridTools_1_1internal_1_1DistributedComputeIntersectionLocationsInternal.html#afe51714eacd8646b60c0e8e4973bd9df', 1, 'GridTools::internal::DistributedComputeIntersectionLocationsInternal']]],\n- ['interval_457', ['interval', ['../structHistogram_1_1Interval.html#a865ec541103bf1a2738b11d80d50e998', 1, 'Histogram::Interval::Interval()'],\n- ['../classPolynomials_1_1PiecewisePolynomial.html#a39aed3b0d567c8d05234dc53c4acffe1', 1, 'Polynomials::PiecewisePolynomial::interval'],\n- ['../structHistogram_1_1Interval.html', 1, 'Histogram::Interval']\n+ ['interval_457', ['interval', ['../structHistogram_1_1Interval.html', 1, 'Histogram::Interval'],\n+ ['../structHistogram_1_1Interval.html#a865ec541103bf1a2738b11d80d50e998', 1, 'Histogram::Interval::Interval()'],\n+ ['../classPolynomials_1_1PiecewisePolynomial.html#a39aed3b0d567c8d05234dc53c4acffe1', 1, 'Polynomials::PiecewisePolynomial::interval']\n ]],\n ['interval_5fendpoints_458', ['interval_endpoints', ['../classFunctions_1_1InterpolatedUniformGridData.html#aa8522fd1ba4e5e53ca915fe1723643f6', 1, 'Functions::InterpolatedUniformGridData']]],\n ['intervalaccessor_459', ['intervalaccessor', ['../classIndexSet_1_1IntervalAccessor.html#a080268e02032b8fb38bba734c0e3aea0', 1, 'IndexSet::IntervalAccessor::IntervalAccessor(const IntervalAccessor &other)'],\n ['../classIndexSet_1_1IntervalAccessor.html#ad5b08305e9d854c24530db001eaa96b0', 1, 'IndexSet::IntervalAccessor::IntervalAccessor(const IndexSet *idxset, const size_type range_idx)'],\n- ['../classIndexSet_1_1IntervalAccessor.html#a9c1fa9f50f0eb73b3fecc41e0ece796c', 1, 'IndexSet::IntervalAccessor::IntervalAccessor(const IndexSet *idxset)'],\n- ['../classIndexSet_1_1IntervalAccessor.html', 1, 'IndexSet::IntervalAccessor']\n+ ['../classIndexSet_1_1IntervalAccessor.html', 1, 'IndexSet::IntervalAccessor'],\n+ ['../classIndexSet_1_1IntervalAccessor.html#a9c1fa9f50f0eb73b3fecc41e0ece796c', 1, 'IndexSet::IntervalAccessor::IntervalAccessor()']\n ]],\n- ['intervaliterator_460', ['intervaliterator', ['../classIndexSet_1_1IntervalIterator.html#abce252fd149e6a0849d5d552035e9fed', 1, 'IndexSet::IntervalIterator::IntervalIterator()'],\n- ['../classIndexSet_1_1IntervalIterator.html', 1, 'IndexSet::IntervalIterator'],\n+ ['intervaliterator_460', ['intervaliterator', ['../classIndexSet_1_1IntervalIterator.html', 1, 'IndexSet::IntervalIterator'],\n ['../classIndexSet_1_1IntervalIterator.html#a3b991dbe954b2fe2b3ca72df31791421', 1, 'IndexSet::IntervalIterator::IntervalIterator(const IntervalIterator &other)=default'],\n ['../classIndexSet_1_1IntervalIterator.html#a4aa05ec99a5b872200fb8c694a958e1d', 1, 'IndexSet::IntervalIterator::IntervalIterator()'],\n ['../classIndexSet_1_1IntervalIterator.html#a55d6295ba8368fdd3138a351ae6f27ec', 1, 'IndexSet::IntervalIterator::IntervalIterator(const IndexSet *idxset)'],\n+ ['../classIndexSet_1_1IntervalIterator.html#abce252fd149e6a0849d5d552035e9fed', 1, 'IndexSet::IntervalIterator::IntervalIterator(const IndexSet *idxset, const size_type range_idx)'],\n ['../classIndexSet_1_1IntervalAccessor.html#a323c6247cea0ece5a100fb4e59f36ae8', 1, 'IndexSet::IntervalAccessor::IntervalIterator']\n ]],\n ['intervals_461', ['intervals', ['../classHistogram.html#aafa1c1be8d290234485138fccc42b31f', 1, 'Histogram']]],\n ['intervalspacing_462', ['IntervalSpacing', ['../classHistogram.html#a12964ce72e3ac687da460af0b73b067c', 1, 'Histogram']]],\n ['into_20deal_20ii_463', ['How automatic differentiation is integrated into deal.II', ['../group__auto__symb__diff.html#auto_diff_1_2', 1, '']]],\n ['into_20sets_20of_20objects_464', ['Iterators as pointers into sets of objects', ['../group__Iterators.html#IteratorsAndSets', 1, '']]],\n ['inv_5fdiag_465', ['inv_diag', ['../classSparseMIC.html#a435307b1f00e2f4ec6b08842a424e550', 1, 'SparseMIC']]],\n@@ -1161,37 +1161,37 @@\n ['../classPortable_1_1MatrixFree.html#a548f0cc6c79bda0e5ccc51397c0ad409', 1, 'Portable::MatrixFree::inv_jacobian'],\n ['../structPortable_1_1DataHost.html#aebf9361320d5cfbb403aca87f0a02162', 1, 'Portable::DataHost::inv_jacobian']\n ]],\n ['inv_5fsqr_5fradius_467', ['inv_sqr_radius', ['../classFunctions_1_1PoisseuilleFlow.html#a4831d2a18033c508ebb5aac75b97df99', 1, 'Functions::PoisseuilleFlow']]],\n ['inv_5ftvmult_468', ['inv_Tvmult', ['../classTrilinosWrappers_1_1internal_1_1LinearOperatorImplementation_1_1TrilinosPayload.html#a0f51b6ed3e3cf186787cba0fa35d9d12', 1, 'TrilinosWrappers::internal::LinearOperatorImplementation::TrilinosPayload']]],\n ['inv_5fvmult_469', ['inv_vmult', ['../classTrilinosWrappers_1_1internal_1_1LinearOperatorImplementation_1_1TrilinosPayload.html#aa06bc4c12fd499b788c8eba7b33460b6', 1, 'TrilinosWrappers::internal::LinearOperatorImplementation::TrilinosPayload']]],\n ['inv_5fwork_470', ['inv_work', ['../classLAPACKFullMatrix.html#a853c11243a5dfb5092fa9337f21a383c', 1, 'LAPACKFullMatrix']]],\n- ['invalid_471', ['invalid', ['../structSparseMatrixEZ_1_1Entry.html#a57528225f308a32fe6fb333d50730d90', 1, 'SparseMatrixEZ::Entry::invalid'],\n- ['../classNonMatching_1_1MappingInfo.html#aaf3068c0f56126e4b78432b3a36b5daeafedb2d84cafe20862cb4399751a8a7e3', 1, 'NonMatching::MappingInfo::invalid'],\n- ['../namespaceReferenceCells.html#a32ce1a7bd91dbfce6a50f6a0889b67cb', 1, 'ReferenceCells::Invalid'],\n+ ['invalid_471', ['invalid', ['../namespaceTimeStepping.html#abff97b5326e452552f108a379dd6cff4ada4f4134184b4c28b2aab01dc3afba40', 1, 'TimeStepping::invalid'],\n ['../namespaceIteratorState.html#a4e92f4a9d339ff987cc3eb5b0a1ac507af98b08616d77cbf04efaaa8b02bacae9', 1, 'IteratorState::invalid'],\n- ['../namespaceTimeStepping.html#abff97b5326e452552f108a379dd6cff4ada4f4134184b4c28b2aab01dc3afba40', 1, 'TimeStepping::invalid']\n+ ['../namespaceReferenceCells.html#a32ce1a7bd91dbfce6a50f6a0889b67cb', 1, 'ReferenceCells::Invalid'],\n+ ['../classNonMatching_1_1MappingInfo.html#aaf3068c0f56126e4b78432b3a36b5daeafedb2d84cafe20862cb4399751a8a7e3', 1, 'NonMatching::MappingInfo::invalid'],\n+ ['../structSparseMatrixEZ_1_1Entry.html#a57528225f308a32fe6fb333d50730d90', 1, 'SparseMatrixEZ::Entry::invalid']\n ]],\n ['invalid_5factive_5ffe_5findex_472', ['invalid_active_fe_index', ['../classDoFHandler.html#acd3446bec6df16554f7a4fe152dc3b12', 1, 'DoFHandler']]],\n ['invalid_5fboundary_5fid_473', ['invalid_boundary_id', ['../namespacenumbers.html#a1745778880e38cde9ef045471f4757fd', 1, 'numbers']]],\n ['invalid_5fcoarse_5fcell_5fid_474', ['invalid_coarse_cell_id', ['../namespacenumbers.html#a66235d056dbb97cedc56a6764f3f9c4c', 1, 'numbers']]],\n ['invalid_5fdiagonal_475', ['invalid_diagonal', ['../structSparseMatrixEZ_1_1RowInfo.html#a6f0f45e70019f794316df72a14d1455d', 1, 'SparseMatrixEZ::RowInfo']]],\n ['invalid_5fdof_5findex_476', ['invalid_dof_index', ['../namespacenumbers.html#ae99f39edfc25decfbafd43b65e95860d', 1, 'numbers']]],\n- ['invalid_5felement_477', ['invalid_element', ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01Point_3_01dim_00_01T_01_4_01_4.html#a857482605554d347d85ec89713ebc7e6', 1, 'numbers::internal::SignalingNaN::NaNInitializer< Point< dim, T > >::invalid_element()'],\n+ ['invalid_5felement_477', ['invalid_element', ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01DerivativeForm_3_01order_00_01di87089fd00726167f9f5c9a33aed9f099.html#a233d52ef815c47d3bceb4aa570b2a69a', 1, 'numbers::internal::SignalingNaN::NaNInitializer< DerivativeForm< order, dim, spacedim, T > >::invalid_element()'],\n ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01SymmetricTensor_3_01rank_00_01dim_00_01T_01_4_01_4.html#a1e558a6d74312cfe492afc95904a34f7', 1, 'numbers::internal::SignalingNaN::NaNInitializer< SymmetricTensor< rank, dim, T > >::invalid_element()'],\n- ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01VectorizedArray_3_01T_00_01width_01_4_01_4.html#ae27d2c66dce2443262ce569f5dc95269', 1, 'numbers::internal::SignalingNaN::NaNInitializer< VectorizedArray< T, width > >::invalid_element()'],\n- ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01DerivativeForm_3_01order_00_01di87089fd00726167f9f5c9a33aed9f099.html#a233d52ef815c47d3bceb4aa570b2a69a', 1, 'numbers::internal::SignalingNaN::NaNInitializer< DerivativeForm< order, dim, spacedim, T > >::invalid_element()'],\n- ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01float_01_4.html#abb0ea1e95844e90b940a4124930c38e0', 1, 'numbers::internal::SignalingNaN::NaNInitializer< float >::invalid_element()'],\n+ ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01Point_3_01dim_00_01T_01_4_01_4.html#a857482605554d347d85ec89713ebc7e6', 1, 'numbers::internal::SignalingNaN::NaNInitializer< Point< dim, T > >::invalid_element()'],\n ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01Tensor_3_01rank_00_01dim_00_01T_01_4_01_4.html#ac8db0bce727af54c94d4cf6fc124f955', 1, 'numbers::internal::SignalingNaN::NaNInitializer< Tensor< rank, dim, T > >::invalid_element()'],\n+ ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01Tensor_3_011_00_01dim_00_01T_01_4_01_4.html#a5657f85d77f604490bf59cdfcd33920a', 1, 'numbers::internal::SignalingNaN::NaNInitializer< Tensor< 1, dim, T > >::invalid_element()'],\n+ ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01VectorizedArray_3_01T_00_01width_01_4_01_4.html#ae27d2c66dce2443262ce569f5dc95269', 1, 'numbers::internal::SignalingNaN::NaNInitializer< VectorizedArray< T, width > >::invalid_element()'],\n ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01double_01_4.html#aeddf638d65de20d893c6cc724355fa11', 1, 'numbers::internal::SignalingNaN::NaNInitializer< double >::invalid_element()'],\n- ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01Tensor_3_011_00_01dim_00_01T_01_4_01_4.html#a5657f85d77f604490bf59cdfcd33920a', 1, 'numbers::internal::SignalingNaN::NaNInitializer< Tensor< 1, dim, T > >::invalid_element()']\n+ ['../structnumbers_1_1internal_1_1SignalingNaN_1_1NaNInitializer_3_01float_01_4.html#abb0ea1e95844e90b940a4124930c38e0', 1, 'numbers::internal::SignalingNaN::NaNInitializer< float >::invalid_element()']\n ]],\n- ['invalid_5fentry_478', ['invalid_entry', ['../classChunkSparsityPattern.html#a3ca9bb0275e701da071c154bb48c1bd4', 1, 'ChunkSparsityPattern::invalid_entry'],\n- ['../classBlockSparsityPatternBase.html#a037bc82d660e920fcc8db195b34ed2e8', 1, 'BlockSparsityPatternBase::invalid_entry'],\n- ['../classSparsityPattern.html#a96c251799dc875433cfaf6784d32b362', 1, 'SparsityPattern::invalid_entry']\n+ ['invalid_5fentry_478', ['invalid_entry', ['../classBlockSparsityPatternBase.html#a037bc82d660e920fcc8db195b34ed2e8', 1, 'BlockSparsityPatternBase::invalid_entry'],\n+ ['../classSparsityPattern.html#a96c251799dc875433cfaf6784d32b362', 1, 'SparsityPattern::invalid_entry'],\n+ ['../classChunkSparsityPattern.html#a3ca9bb0275e701da071c154bb48c1bd4', 1, 'ChunkSparsityPattern::invalid_entry']\n ]],\n ['invalid_5fface_5fnumber_479', ['invalid_face_number', ['../classFESystem.html#a8db3bc88ad730296f67027e1e5f4cd59', 1, 'FESystem']]],\n ['invalid_5ffe_5findex_480', ['invalid_fe_index', ['../classDoFHandler.html#ace4661e523ce36db7d0abac804ed64c8', 1, 'DoFHandler::invalid_fe_index'],\n ['../namespacenumbers.html#a68833f614e75335310483b7aada89f80', 1, 'numbers::invalid_fe_index']\n ]],\n ['invalid_5fhandle_481', ['invalid_handle', ['../classParticles_1_1PropertyPool.html#ae1f1c7f6806887e295c306f72e2e35d8', 1, 'Particles::PropertyPool']]],\n ['invalid_5findex_5fvalue_482', ['invalid_index_value', ['../classUtilities_1_1MPI_1_1internal_1_1ComputeIndexOwner_1_1FlexibleIndexStorage.html#a7e01f5760a055ecf934d4f306eb351be', 1, 'Utilities::MPI::internal::ComputeIndexOwner::FlexibleIndexStorage']]],\n@@ -1199,17 +1199,17 @@\n ['invalid_5fnext_5fcell_484', ['invalid_next_cell', ['../namespaceCellSimilarity.html#abbf8aa4eab099bd2356cb51200494c13a7f198f2b5a71e522022c13ddf9fe2e70', 1, 'CellSimilarity']]],\n ['invalid_5fpull_5fback_5fcoordinate_485', ['invalid_pull_back_coordinate', ['../namespaceinternal.html#ae3be03772bd0621714b49743d82112ba', 1, 'internal']]],\n ['invalid_5fsize_5ftype_486', ['invalid_size_type', ['../namespacenumbers.html#aed814969c852ea1a9aa050cf02b73b80', 1, 'numbers']]],\n ['invalid_5fsubdomain_5fid_487', ['invalid_subdomain_id', ['../namespacenumbers.html#a6fe5acece133d890bee8cc49ccd8ebfb', 1, 'numbers']]],\n ['invalid_5ftape_5findex_488', ['invalid_tape_index', ['../structDifferentiation_1_1AD_1_1Numbers.html#ac0aa6c3f6feede63dc004867e43cf5f0', 1, 'Differentiation::AD::Numbers']]],\n ['invalid_5funsigned_5fint_489', ['invalid_unsigned_int', ['../namespacenumbers.html#a8ae36952c7e0cc778b47b5371b3aeff1', 1, 'numbers']]],\n ['invalidaccessor_490', ['invalidaccessor', ['../classInvalidAccessor.html', 1, 'InvalidAccessor< structdim, dim, spacedim >'],\n- ['../classInvalidAccessor.html#abd8b379268861e288a20bb3850742cce', 1, 'InvalidAccessor::InvalidAccessor(const void *parent=nullptr, const int level=-1, const int index=-1, const AccessorData *local_data=nullptr)'],\n ['../classInvalidAccessor.html#a1a7fcaf64906d8f59ca8ac2081059ae2', 1, 'InvalidAccessor::InvalidAccessor(const InvalidAccessor &)'],\n- ['../classInvalidAccessor.html#af185a7653f4056f7d2f691f663bd2021', 1, 'InvalidAccessor::InvalidAccessor(const OtherAccessor &)']\n+ ['../classInvalidAccessor.html#af185a7653f4056f7d2f691f663bd2021', 1, 'InvalidAccessor::InvalidAccessor(const OtherAccessor &)'],\n+ ['../classInvalidAccessor.html#abd8b379268861e288a20bb3850742cce', 1, 'InvalidAccessor::InvalidAccessor(const void *parent=nullptr, const int level=-1, const int index=-1, const AccessorData *local_data=nullptr)']\n ]],\n ['invalidaccessor_3c_20structdim_2c_20dim_2c_20dim_20_3e_491', ['InvalidAccessor< structdim, dim, dim >', ['../classInvalidAccessor.html', 1, '']]],\n ['invalidate_5fcache_492', ['invalidate_cache', ['../structTableHandler_1_1Column.html#a368bc76ca2e9c9de54e5f22d616b025c', 1, 'TableHandler::Column']]],\n ['invalidate_5fdof_5findices_5fon_5fweaker_5fghost_5fcells_5ffor_5frenumbering_493', ['invalidate_dof_indices_on_weaker_ghost_cells_for_renumbering', ['../structinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Implementation.html#aaefe0a77ca053c4a44f8747aea6b81af', 1, 'internal::DoFHandlerImplementation::Policy::Implementation']]],\n ['invalidate_5fpresent_5fcell_494', ['invalidate_present_cell', ['../classFEValuesBase.html#aaf01126d2e3b926fecbaf122357add53', 1, 'FEValuesBase']]],\n ['inverse_495', ['inverse', ['../classPreconditionBlockBase.html#a8df8b6cbca282217b9d3d62f51b710d8', 1, 'PreconditionBlockBase::inverse()'],\n ['../structinternal_1_1SymmetricTensorImplementation_1_1Inverse.html', 1, 'internal::SymmetricTensorImplementation::Inverse< rank, dim, Number >'],\n@@ -1272,24 +1272,24 @@\n ['inversion_522', ['inversion', ['../classPreconditionBlock_1_1AdditionalData.html#ad6058d4095135e5c461576464b964c7c', 1, 'PreconditionBlock::AdditionalData::inversion'],\n ['../classPreconditionBlockBase.html#abf06e8a642d97a430f6fd013619f29a0', 1, 'PreconditionBlockBase::inversion'],\n ['../classRelaxationBlock_1_1AdditionalData.html#a324ea69813619b47afedf65f355edb48', 1, 'RelaxationBlock::AdditionalData::inversion'],\n ['../classPreconditionBlockBase.html#a0eb89cc35edc5ec8ef14baed1bbe9c66', 1, 'PreconditionBlockBase::Inversion']\n ]],\n ['invert_523', ['invert', ['../classSymmetricTensor.html#a5ad9e8889f1abd456762e501ebcaa130', 1, 'SymmetricTensor::invert(const SymmetricTensor< 2, dim, Number > &t)'],\n ['../classSymmetricTensor.html#aa6c2e287491dd0d8c3f9ffc41af111bd', 1, 'SymmetricTensor::invert(const SymmetricTensor< 4, dim, Number > &t)'],\n- ['../symmetric__tensor_8h.html#a2f3fc129680e6162fc0c58b2633d1bd8', 1, 'invert(const SymmetricTensor< 4, dim, Number > &): symmetric_tensor.h'],\n- ['../symmetric__tensor_8h.html#a3c55ee67c6ff751ca15b94e1435c2fa5', 1, 'invert(const SymmetricTensor< 2, dim, Number > &): symmetric_tensor.h'],\n+ ['../symmetric__tensor_8h.html#a2f3fc129680e6162fc0c58b2633d1bd8', 1, 'invert(): symmetric_tensor.h'],\n ['../classScaLAPACKMatrix.html#a5f723f324b1c7c22941f33034b652eec', 1, 'ScaLAPACKMatrix::invert()'],\n- ['../classLAPACKFullMatrix.html#a343a049bac2912f2242b6166d7df5480', 1, 'LAPACKFullMatrix::invert()'],\n- ['../classFullMatrix.html#a940ea10266174ad366d10bd806177ace', 1, 'FullMatrix::invert()']\n+ ['../classFullMatrix.html#a940ea10266174ad366d10bd806177ace', 1, 'FullMatrix::invert()'],\n+ ['../symmetric__tensor_8h.html#a3c55ee67c6ff751ca15b94e1435c2fa5', 1, 'invert(): symmetric_tensor.h'],\n+ ['../classLAPACKFullMatrix.html#a343a049bac2912f2242b6166d7df5480', 1, 'LAPACKFullMatrix::invert()']\n ]],\n ['invert_5fall_5fnegative_5fmeasure_5fcells_524', ['invert_all_negative_measure_cells', ['../namespaceGridTools.html#ada6ca52e6cdaa937d025a303f0294ef0', 1, 'GridTools']]],\n ['invert_5fcells_5fwith_5fnegative_5fmeasure_525', ['invert_cells_with_negative_measure', ['../namespaceGridTools.html#a6f2f6dd5b219c63b165c787db310c8d9', 1, 'GridTools']]],\n- ['invert_5fdiagblocks_526', ['invert_diagblocks', ['../classPreconditionBlock.html#a78fdbf5ea38afa565cebb10e519c5741', 1, 'PreconditionBlock::invert_diagblocks()'],\n- ['../classRelaxationBlock.html#af66712df952c8d4bb52e4a4c160acbc1', 1, 'RelaxationBlock::invert_diagblocks()']\n+ ['invert_5fdiagblocks_526', ['invert_diagblocks', ['../classRelaxationBlock.html#af66712df952c8d4bb52e4a4c160acbc1', 1, 'RelaxationBlock::invert_diagblocks()'],\n+ ['../classPreconditionBlock.html#a78fdbf5ea38afa565cebb10e519c5741', 1, 'PreconditionBlock::invert_diagblocks()']\n ]],\n ['invert_5fdiagonal_527', ['invert_diagonal', ['../classPreconditionBlock_1_1AdditionalData.html#a8c0fd0f19ae17cf555886db195b651c6', 1, 'PreconditionBlock::AdditionalData::invert_diagonal'],\n ['../classRelaxationBlock_1_1AdditionalData.html#a53cb7d83e70897a6e5729a7350c5c1bd', 1, 'RelaxationBlock::AdditionalData::invert_diagonal']\n ]],\n ['invert_5fpermutation_528', ['invert_permutation', ['../namespaceUtilities.html#ae17441dc4ee67526f51da147f5653a38', 1, 'Utilities']]],\n ['invert_5fpermuted_5fdiagblocks_529', ['invert_permuted_diagblocks', ['../classPreconditionBlock.html#a89478d110533863e5bee21a45d8f2383', 1, 'PreconditionBlock']]],\n ['inverted_5feigenvalues_530', ['inverted_eigenvalues', ['../classTensorProductMatrixSymmetricSumCollection.html#abf531c1eb2a4354a326d3ed9ddc093c7', 1, 'TensorProductMatrixSymmetricSumCollection']]],\n@@ -1299,31 +1299,31 @@\n ['iota_5fview_534', ['iota_view', ['../namespacestd__cxx20_1_1ranges.html#a109956a09689ca9e1379724719a2c4c4', 1, 'std_cxx20::ranges']]],\n ['iota_5fview_2eh_535', ['iota_view.h', ['../iota__view_8h.html', 1, '']]],\n ['ip_5fcurl_5fmatrix_536', ['ip_curl_matrix', ['../namespaceLocalIntegrators_1_1Maxwell.html#ad9204d68fedde92b875ebe5aad82c825', 1, 'LocalIntegrators::Maxwell']]],\n ['ip_5fmatrix_537', ['ip_matrix', ['../namespaceLocalIntegrators_1_1Laplace.html#acf43744b2ca29cbf871cf63054bd3436', 1, 'LocalIntegrators::Laplace::ip_matrix()'],\n ['../namespaceLocalIntegrators_1_1GradDiv.html#aa98b467ff61f73467bf37f61cd809eda', 1, 'LocalIntegrators::GradDiv::ip_matrix()'],\n ['../namespaceLocalIntegrators_1_1Elasticity.html#a2908a709fd59a130a0026f4934a8e81e', 1, 'LocalIntegrators::Elasticity::ip_matrix()']\n ]],\n- ['ip_5fresidual_538', ['ip_residual', ['../namespaceLocalIntegrators_1_1Laplace.html#a11f3bebee7a598a15f6d84ce354e61cf', 1, 'LocalIntegrators::Laplace::ip_residual(Vector< double > &result1, Vector< double > &result2, const FEValuesBase< dim > &fe1, const FEValuesBase< dim > &fe2, const ArrayView< const std::vector< double > > &input1, const ArrayView< const std::vector< Tensor< 1, dim > > > &Dinput1, const ArrayView< const std::vector< double > > &input2, const ArrayView< const std::vector< Tensor< 1, dim > > > &Dinput2, double pen, double int_factor=1., double ext_factor=-1.)'],\n- ['../namespaceLocalIntegrators_1_1Laplace.html#aef84799129587b5de69beac4d24b220a', 1, 'LocalIntegrators::Laplace::ip_residual(Vector< double > &result1, Vector< double > &result2, const FEValuesBase< dim > &fe1, const FEValuesBase< dim > &fe2, const std::vector< double > &input1, const std::vector< Tensor< 1, dim > > &Dinput1, const std::vector< double > &input2, const std::vector< Tensor< 1, dim > > &Dinput2, double pen, double int_factor=1., double ext_factor=-1.)'],\n+ ['ip_5fresidual_538', ['ip_residual', ['../namespaceLocalIntegrators_1_1Laplace.html#a11f3bebee7a598a15f6d84ce354e61cf', 1, 'LocalIntegrators::Laplace::ip_residual()'],\n+ ['../namespaceLocalIntegrators_1_1Elasticity.html#a6f6c2953e8be315f07fd2d64e8aa3a7e', 1, 'LocalIntegrators::Elasticity::ip_residual()'],\n ['../namespaceLocalIntegrators_1_1GradDiv.html#a8ea8263fb06e7efb2465d5c58f84ba63', 1, 'LocalIntegrators::GradDiv::ip_residual()'],\n- ['../namespaceLocalIntegrators_1_1Elasticity.html#a6f6c2953e8be315f07fd2d64e8aa3a7e', 1, 'LocalIntegrators::Elasticity::ip_residual()']\n+ ['../namespaceLocalIntegrators_1_1Laplace.html#aef84799129587b5de69beac4d24b220a', 1, 'LocalIntegrators::Laplace::ip_residual(Vector< double > &result1, Vector< double > &result2, const FEValuesBase< dim > &fe1, const FEValuesBase< dim > &fe2, const std::vector< double > &input1, const std::vector< Tensor< 1, dim > > &Dinput1, const std::vector< double > &input2, const std::vector< Tensor< 1, dim > > &Dinput2, double pen, double int_factor=1., double ext_factor=-1.)']\n ]],\n ['ip_5ftangential_5fmatrix_539', ['ip_tangential_matrix', ['../namespaceLocalIntegrators_1_1Laplace.html#a2c13fd92d12d482b79a788e2d55bbafb', 1, 'LocalIntegrators::Laplace']]],\n- ['ipiv_540', ['ipiv', ['../classScaLAPACKMatrix.html#ad6ba99b7ee9d41099239aab8c912007e', 1, 'ScaLAPACKMatrix::ipiv'],\n- ['../classLAPACKFullMatrix.html#adacc986c707e3d9d7af2728236040ea6', 1, 'LAPACKFullMatrix::ipiv']\n+ ['ipiv_540', ['ipiv', ['../classLAPACKFullMatrix.html#adacc986c707e3d9d7af2728236040ea6', 1, 'LAPACKFullMatrix::ipiv'],\n+ ['../classScaLAPACKMatrix.html#ad6ba99b7ee9d41099239aab8c912007e', 1, 'ScaLAPACKMatrix::ipiv']\n ]],\n ['irecv_541', ['irecv', ['../namespaceUtilities_1_1MPI.html#a43e0675ec5c67150ccf38b98b8147471', 1, 'Utilities::MPI']]],\n ['is_20integrated_20into_20deal_20ii_542', ['How automatic differentiation is integrated into deal.II', ['../group__auto__symb__diff.html#auto_diff_1_2', 1, '']]],\n- ['is_5factive_543', ['is_active', ['../classCellAccessor.html#a5096c47dd02a264799a1b7b18fd45b3c', 1, 'CellAccessor::is_active()'],\n- ['../classConditionalOStream.html#ae73efe8c9206472ede4a06731c9a7aba', 1, 'ConditionalOStream::is_active()']\n+ ['is_5factive_543', ['is_active', ['../classConditionalOStream.html#ae73efe8c9206472ede4a06731c9a7aba', 1, 'ConditionalOStream::is_active()'],\n+ ['../classCellAccessor.html#a5096c47dd02a264799a1b7b18fd45b3c', 1, 'CellAccessor::is_active()']\n ]],\n- ['is_5factive_5fiterator_544', ['is_active_iterator', ['../namespaceinternal.html#a43d17ad28db4a56fb7b8be1a1b348669', 1, 'internal::is_active_iterator(const DI &)'],\n- ['../namespaceinternal.html#a030d3248e2433948453eeee9d6f5e186', 1, 'internal::is_active_iterator(const TriaActiveIterator< AccessorType > &)'],\n- ['../namespaceinternal.html#a74e55221218f17d9a8632187363202ab', 1, 'internal::is_active_iterator(const ::FilteredIterator< TriaActiveIterator< AccessorType > > &)']\n+ ['is_5factive_5fiterator_544', ['is_active_iterator', ['../namespaceinternal.html#a030d3248e2433948453eeee9d6f5e186', 1, 'internal::is_active_iterator(const TriaActiveIterator< AccessorType > &)'],\n+ ['../namespaceinternal.html#a74e55221218f17d9a8632187363202ab', 1, 'internal::is_active_iterator(const ::FilteredIterator< TriaActiveIterator< AccessorType > > &)'],\n+ ['../namespaceinternal.html#a43d17ad28db4a56fb7b8be1a1b348669', 1, 'internal::is_active_iterator(const DI &)']\n ]],\n ['is_5fad_5fnumber_545', ['is_ad_number', ['../structDifferentiation_1_1AD_1_1is__ad__number.html', 1, 'Differentiation::AD']]],\n ['is_5fadolc_5fnumber_546', ['is_adolc_number', ['../structDifferentiation_1_1AD_1_1is__adolc__number.html', 1, 'Differentiation::AD']]],\n ['is_5fadolc_5ftaped_5fnumber_547', ['is_adolc_taped_number', ['../structDifferentiation_1_1AD_1_1is__adolc__taped__number.html', 1, 'Differentiation::AD']]],\n ['is_5fadolc_5ftapeless_5fnumber_548', ['is_adolc_tapeless_number', ['../structDifferentiation_1_1AD_1_1is__adolc__tapeless__number.html', 1, 'Differentiation::AD']]],\n ['is_5faffine_549', ['is_affine', ['../classinternal_1_1MappingQImplementation_1_1InverseQuadraticApproximation.html#aabb103ae34b92f9825e6b0e2a520f507', 1, 'internal::MappingQImplementation::InverseQuadraticApproximation']]],\n ['is_5fancestor_5fof_550', ['is_ancestor_of', ['../classCellId.html#a32470c316b390614196f8204242573f2', 1, 'CellId']]],\n@@ -1336,33 +1336,33 @@\n ['is_5fblock_5fvector_557', ['is_block_vector', ['../namespaceinternal.html#ae43412a6f3aaad47579c153fbd2cf122', 1, 'internal']]],\n ['is_5fboundary_5findex_558', ['is_boundary_index', ['../classMGConstrainedDoFs.html#a4f0418cc7cdae3184a978dd11f944a31', 1, 'MGConstrainedDoFs']]],\n ['is_5fcartesian_559', ['is_cartesian', ['../mapping__cartesian_8cc.html#a7a0f5692fc2690245d4b207a26629d0c', 1, 'mapping_cartesian.cc']]],\n ['is_5fclosed_560', ['is_closed', ['../classAffineConstraints.html#a07f37b08a9a6cc3b078f2a741b02ee54', 1, 'AffineConstraints::is_closed() const'],\n ['../classAffineConstraints.html#a5106bdb08568a3eca98e2739b4085a31', 1, 'AffineConstraints::is_closed(const MPI_Comm comm) const']\n ]],\n ['is_5fcompatible_561', ['is_compatible', ['../classUtilities_1_1MPI_1_1Partitioner.html#aec126befa3eaa12723033cf3a2c44373', 1, 'Utilities::MPI::Partitioner']]],\n- ['is_5fcompatible_5fwith_562', ['is_compatible_with', ['../classMappingQ.html#afda09e02a3ee5ec03dfa0eb91e1c98ea', 1, 'MappingQ::is_compatible_with()'],\n- ['../classMapping.html#a0d8ac8be12bd87c4e7f529778ec317de', 1, 'Mapping::is_compatible_with()'],\n+ ['is_5fcompatible_5fwith_562', ['is_compatible_with', ['../classMapping.html#a0d8ac8be12bd87c4e7f529778ec317de', 1, 'Mapping::is_compatible_with()'],\n ['../classMappingCartesian.html#aac4d9b3eeb8eb3dfc6a97c034f716122', 1, 'MappingCartesian::is_compatible_with()'],\n ['../classMappingFE.html#a96031287093bb9d5410e18533d15eeb5', 1, 'MappingFE::is_compatible_with()'],\n ['../classMappingFEField.html#a74e5185c1892552bf08c2a9d90f355b8', 1, 'MappingFEField::is_compatible_with()'],\n- ['../classMappingManifold.html#a3da5c2cd7b695373009b04941e0bdfe6', 1, 'MappingManifold::is_compatible_with()']\n+ ['../classMappingManifold.html#a3da5c2cd7b695373009b04941e0bdfe6', 1, 'MappingManifold::is_compatible_with()'],\n+ ['../classMappingQ.html#afda09e02a3ee5ec03dfa0eb91e1c98ea', 1, 'MappingQ::is_compatible_with()']\n ]],\n ['is_5fcomplex_563', ['is_complex', ['../structnumbers_1_1NumberTraits_3_01std_1_1complex_3_01number_01_4_01_4.html#ae2d36eec5de74c4266e131a6d2339e27', 1, 'numbers::NumberTraits< std::complex< number > >::is_complex'],\n ['../structnumbers_1_1NumberTraits.html#a364e4ed0e63dbc42da243041daaaac73', 1, 'numbers::NumberTraits::is_complex']\n ]],\n ['is_5fcomplex_5fvalued_564', ['is_complex_valued', ['../classinternal_1_1DataOutImplementation_1_1DataEntryBase.html#a89e900129c26a79110e28c5280717184', 1, 'internal::DataOutImplementation::DataEntryBase']]],\n ['is_5fcomplex_5fvalued_5fad_5fnumber_565', ['is_complex_valued_ad_number', ['../structDifferentiation_1_1AD_1_1is__complex__valued__ad__number.html', 1, 'Differentiation::AD']]],\n- ['is_5fcompressed_566', ['is_compressed', ['../classTrilinosWrappers_1_1BlockSparseMatrix.html#a327512b5a16599e84636703ac008648c', 1, 'TrilinosWrappers::BlockSparseMatrix::is_compressed()'],\n+ ['is_5fcompressed_566', ['is_compressed', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrix.html#af913e381cb23a21333303654c652025b', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrix::is_compressed()'],\n+ ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a5f9523ed24195a560da20003a0a03613', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::is_compressed()'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1Vector.html#a689fb861b9a4e4482f7d27880b486b0f', 1, 'LinearAlgebra::TpetraWrappers::Vector::is_compressed()'],\n- ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrix.html#af913e381cb23a21333303654c652025b', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrix::is_compressed()'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1BlockSparseMatrix.html#a567ca858db9596eb21bcd8c712b314b6', 1, 'LinearAlgebra::TpetraWrappers::BlockSparseMatrix::is_compressed()'],\n ['../classTrilinosWrappers_1_1SparsityPattern.html#a935abd1908d1ed387625143f305daa2b', 1, 'TrilinosWrappers::SparsityPattern::is_compressed()'],\n ['../classTrilinosWrappers_1_1SparseMatrix.html#a91a559b1529540ca031728b25f63962c', 1, 'TrilinosWrappers::SparseMatrix::is_compressed()'],\n- ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a5f9523ed24195a560da20003a0a03613', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::is_compressed()'],\n+ ['../classTrilinosWrappers_1_1BlockSparseMatrix.html#a327512b5a16599e84636703ac008648c', 1, 'TrilinosWrappers::BlockSparseMatrix::is_compressed()'],\n ['../classSparsityPattern.html#a6c6478d4920fa7fe565ee8c1821d42b6', 1, 'SparsityPattern::is_compressed()'],\n ['../classChunkSparsityPattern.html#a9996952cc5704f6cdb8a62a7d4674d7a', 1, 'ChunkSparsityPattern::is_compressed()'],\n ['../classBlockSparsityPattern.html#ae7dd4eb031f4ce92d2b48e11c55cb49e', 1, 'BlockSparsityPattern::is_compressed()'],\n ['../classIndexSet.html#aa971e41b981640576254569d9a75530f', 1, 'IndexSet::is_compressed']\n ]],\n ['is_5fconsistent_5fin_5fparallel_567', ['is_consistent_in_parallel', ['../classAffineConstraints.html#ad5fb8d3ca686a76ba33eb82d7f52b5fd', 1, 'AffineConstraints']]],\n ['is_5fconstrained_568', ['is_constrained', ['../classAffineConstraints.html#a885d18f0044979873f5e5a6f33772f73', 1, 'AffineConstraints']]],\n@@ -1573,101 +1573,101 @@\n ['../classSolverBicgstab.html#ae6fcc5687187d5fdb026015d6401275d', 1, 'SolverBicgstab::iterate()'],\n ['../structinternal_1_1p4est_1_1functions_3_012_01_4.html#a9251a112ba917c20c72000ff9e21ed2b', 1, 'internal::p4est::functions< 2 >::iterate()'],\n ['../classSolverControl.html#afcdeab4b55513dbd766b56e35efecbaaa0df2bbb86c9c456f02c3d69739be394c', 1, 'SolverControl::iterate']\n ]],\n ['iterating_20over_20objects_709', ['Iterating over objects', ['../group__Iterators.html#IteratorsLoops', 1, '']]],\n ['iteration_5ffunction_710', ['iteration_function', ['../classSUNDIALS_1_1KINSOL.html#a778592e2a827800595a21a44a1d882c3', 1, 'SUNDIALS::KINSOL']]],\n ['iteration_5fstatus_711', ['iteration_status', ['../classSolverBase.html#a222a7dd9d6f5297eb2f702fa7d95857f', 1, 'SolverBase']]],\n- ['iterationnumbercontrol_712', ['iterationnumbercontrol', ['../classIterationNumberControl.html', 1, 'IterationNumberControl'],\n+ ['iterationnumbercontrol_712', ['iterationnumbercontrol', ['../classIterationNumberControl.html#aa70d84468035b6555f9f095b35b12ba1', 1, 'IterationNumberControl::IterationNumberControl(const SolverControl &c)'],\n ['../classIterationNumberControl.html#a818c13e3f1dae25a16298236c1661bea', 1, 'IterationNumberControl::IterationNumberControl(const unsigned int maxiter=100, const double tolerance=1e-12, const bool log_history=false, const bool log_result=true)'],\n- ['../classIterationNumberControl.html#aa70d84468035b6555f9f095b35b12ba1', 1, 'IterationNumberControl::IterationNumberControl(const SolverControl &c)']\n+ ['../classIterationNumberControl.html', 1, 'IterationNumberControl']\n ]],\n ['iterationresult_713', ['iterationresult', ['../structSolverBicgstab_1_1IterationResult.html#ad52d3fad9b4de0ea23df8e729cca9e46', 1, 'SolverBicgstab::IterationResult::IterationResult()'],\n ['../structSolverQMRS_1_1IterationResult.html#af4d3ada9ce012e9e02b5ac37fffa3b6d', 1, 'SolverQMRS::IterationResult::IterationResult()'],\n ['../structSolverQMRS_1_1IterationResult.html', 1, 'SolverQMRS< VectorType >::IterationResult'],\n ['../structSolverBicgstab_1_1IterationResult.html', 1, 'SolverBicgstab< VectorType >::IterationResult']\n ]],\n ['iterative_5frefinement_714', ['iterative_refinement', ['../structLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectKLU2_1_1AdditionalData.html#a8f8931ca932beffe4c56407e62f4803f', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectKLU2::AdditionalData']]],\n ['iterator_715', ['iterator', ['../classLinearAlgebra_1_1ReadWriteVector.html#a5e28f8f12865657afed81936ca9308ac', 1, 'LinearAlgebra::ReadWriteVector::iterator'],\n- ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#a82cbb244c2ae9eb411fbaeeff6ab6e53', 1, 'internal::BlockVectorIterators::Iterator::Iterator()'],\n+ ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#a9ec9730a429aaea74edebb4f3c346155', 1, 'internal::BlockVectorIterators::Iterator::Iterator()'],\n+ ['../classChunkSparseMatrixIterators_1_1Accessor_3_01number_00_01true_01_4.html#ac648045af534027b42582d90aee6a37f', 1, 'ChunkSparseMatrixIterators::Accessor< number, true >::Iterator'],\n+ ['../classChunkSparseMatrixIterators_1_1Accessor_3_01number_00_01false_01_4.html#ac648045af534027b42582d90aee6a37f', 1, 'ChunkSparseMatrixIterators::Accessor< number, false >::Iterator'],\n ['../classChunkSparsityPatternIterators_1_1Accessor.html#a9830fc407400559db7e7783cc10a9394', 1, 'ChunkSparsityPatternIterators::Accessor::Iterator'],\n ['../classDynamicSparsityPatternIterators_1_1Accessor.html#a9830fc407400559db7e7783cc10a9394', 1, 'DynamicSparsityPatternIterators::Accessor::Iterator'],\n ['../classSparseMatrixIterators_1_1Accessor_3_01number_00_01true_01_4.html#ac648045af534027b42582d90aee6a37f', 1, 'SparseMatrixIterators::Accessor< number, true >::Iterator'],\n ['../classSparseMatrixIterators_1_1Accessor_3_01number_00_01false_01_4.html#ac648045af534027b42582d90aee6a37f', 1, 'SparseMatrixIterators::Accessor< number, false >::Iterator'],\n ['../classTrilinosWrappers_1_1SparseMatrixIterators_1_1Accessor_3_01true_01_4.html#ade6ce99c1c6680cd228fe1aa6927bdaf', 1, 'TrilinosWrappers::SparseMatrixIterators::Accessor< true >::Iterator'],\n ['../classTrilinosWrappers_1_1SparseMatrixIterators_1_1Accessor_3_01false_01_4.html#ade6ce99c1c6680cd228fe1aa6927bdaf', 1, 'TrilinosWrappers::SparseMatrixIterators::Accessor< false >::Iterator'],\n ['../classTrilinosWrappers_1_1SparseMatrixIterators_1_1Iterator.html#ade6ce99c1c6680cd228fe1aa6927bdaf', 1, 'TrilinosWrappers::SparseMatrixIterators::Iterator::Iterator()'],\n ['../classTrilinosWrappers_1_1SparsityPatternIterators_1_1Accessor.html#a9830fc407400559db7e7783cc10a9394', 1, 'TrilinosWrappers::SparsityPatternIterators::Accessor::Iterator'],\n ['../classMatrixTableIterators_1_1Iterator.html#a2e159da9c69f7751e4d4ae86a6e09721', 1, 'MatrixTableIterators::Iterator::Iterator(const Accessor< TableType, Constness, storage_order > &accessor)'],\n ['../classMatrixTableIterators_1_1Iterator.html#a7d612e686f6402551c853d48a6bbffe6', 1, 'MatrixTableIterators::Iterator::Iterator(const container_pointer_type object)'],\n ['../classMatrixTableIterators_1_1Iterator.html#a02a6178c96663851150158d0e420b487', 1, 'MatrixTableIterators::Iterator::Iterator(const container_pointer_type object, const size_type row, const size_type column)'],\n ['../classMatrixTableIterators_1_1Iterator.html#ac0bb4f4c43ee29c383a1ab3339cb93e0', 1, 'MatrixTableIterators::Iterator::Iterator(const Iterator< TableType, false, storage_order > &i)'],\n ['../classMatrixTableIterators_1_1Iterator.html#ae52a198eaa0d823cc885bff45f4b1698', 1, 'MatrixTableIterators::Iterator::Iterator(const container_pointer_type container, const std::ptrdiff_t linear_index)'],\n- ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#a9ec9730a429aaea74edebb4f3c346155', 1, 'internal::BlockVectorIterators::Iterator::Iterator()'],\n- ['../classChunkSparseMatrixIterators_1_1Accessor_3_01number_00_01false_01_4.html#ac648045af534027b42582d90aee6a37f', 1, 'ChunkSparseMatrixIterators::Accessor< number, false >::Iterator'],\n+ ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#ac648045af534027b42582d90aee6a37f', 1, 'internal::BlockVectorIterators::Iterator::Iterator'],\n+ ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#a82cbb244c2ae9eb411fbaeeff6ab6e53', 1, 'internal::BlockVectorIterators::Iterator::Iterator(const Iterator< BlockVectorType, !Constness > &c)'],\n ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#a850782f06274933fe5177fdc3b3036f7', 1, 'internal::BlockVectorIterators::Iterator::Iterator(const Iterator &c)'],\n ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#a73e4d9e0541196fdaa17c604e6a648bc', 1, 'internal::BlockVectorIterators::Iterator::Iterator(BlockVector &parent, const size_type global_index, const size_type current_block, const size_type index_within_block, const size_type next_break_forward, const size_type next_break_backward)'],\n ['../classChunkSparseMatrixIterators_1_1Iterator.html#a156e6dd50e1b31cd779a1a1c5d479ff1', 1, 'ChunkSparseMatrixIterators::Iterator::Iterator(MatrixType *matrix, const unsigned int row)'],\n ['../classChunkSparseMatrixIterators_1_1Iterator.html#aedf7b62d4e788ae24bbb7ec5c918eda3', 1, 'ChunkSparseMatrixIterators::Iterator::Iterator(MatrixType *matrix)'],\n ['../classChunkSparseMatrixIterators_1_1Iterator.html#a04f57d9193e4a271841cf23d315e81f0', 1, 'ChunkSparseMatrixIterators::Iterator::Iterator(const ChunkSparseMatrixIterators::Iterator< number, false > &i)'],\n ['../classChunkSparsityPatternIterators_1_1Iterator.html#a653df8fcec158df8eaad041e727f78bc', 1, 'ChunkSparsityPatternIterators::Iterator::Iterator()'],\n ['../classDynamicSparsityPatternIterators_1_1Iterator.html#a3158717e4bf78ee0fbd06e20629d00aa', 1, 'DynamicSparsityPatternIterators::Iterator::Iterator(const DynamicSparsityPattern *sp, const size_type row, const unsigned int index_within_row)'],\n ['../classDynamicSparsityPatternIterators_1_1Iterator.html#ac2f09dc9ac73c9b3ac9442f448b82e7f', 1, 'DynamicSparsityPatternIterators::Iterator::Iterator(const DynamicSparsityPattern *sp)'],\n ['../classDynamicSparsityPatternIterators_1_1Iterator.html#acd5b3f18a9e780fb5e5ac3b8d0fa37e3', 1, 'DynamicSparsityPatternIterators::Iterator::Iterator()=default'],\n ['../classSparseMatrixIterators_1_1Iterator.html#aa2d5eff76031abe8a47d61af83de8a51', 1, 'SparseMatrixIterators::Iterator::Iterator(MatrixType *matrix, const std::size_t index_within_matrix)'],\n ['../classSparseMatrixIterators_1_1Iterator.html#a629801b4d3d2fd0a34b608e91e100f2b', 1, 'SparseMatrixIterators::Iterator::Iterator(MatrixType *matrix)'],\n ['../classSparseMatrixIterators_1_1Iterator.html#a94c3621b04faa347a5b7556afd392ce0', 1, 'SparseMatrixIterators::Iterator::Iterator(const SparseMatrixIterators::Iterator< number, false > &i)'],\n ['../classSparsityPatternIterators_1_1Iterator.html#a5abad53f720285a049624d34b4d65ca8', 1, 'SparsityPatternIterators::Iterator::Iterator()'],\n- ['../classTrilinosWrappers_1_1SparseMatrixIterators_1_1Iterator.html#aae5053fc00dee8786543af8cffed9952', 1, 'TrilinosWrappers::SparseMatrixIterators::Iterator::Iterator()'],\n+ ['../classPETScWrappers_1_1MPI_1_1BlockSparseMatrix.html#a87c619d491397ad3d0ff5a5d80815064', 1, 'PETScWrappers::MPI::BlockSparseMatrix::iterator'],\n+ ['../classinternal_1_1TableBaseAccessors_1_1Accessor.html#a7a5d13ffc75cb0992be5f74311369d40', 1, 'internal::TableBaseAccessors::Accessor::iterator'],\n ['../classinternal_1_1TableBaseAccessors_1_1Accessor_3_01N_00_01T_00_01C_00_011_01_4.html#a5b1f6b5768002a48dca713cb422667ee', 1, 'internal::TableBaseAccessors::Accessor< N, T, C, 1 >::iterator'],\n+ ['../classTable_3_012_00_01T_01_4.html#a8400e38cef181be1023321ef1b75e85f', 1, 'Table< 2, T >::iterator'],\n ['../classTransposeTable.html#a38906966a208171e373d9568bdefed95', 1, 'TransposeTable::iterator'],\n ['../classBlockMatrixBase.html#a9676f6127d493633bb4b66ee1952ad24', 1, 'BlockMatrixBase::iterator'],\n ['../classBlockSparseMatrix.html#a055fa7cf1762dbaf74131f2186d9186f', 1, 'BlockSparseMatrix::iterator'],\n- ['../classTable_3_012_00_01T_01_4.html#a8400e38cef181be1023321ef1b75e85f', 1, 'Table< 2, T >::iterator'],\n ['../classBlockVector.html#a99f27555dfea7b98585d12d963cb4c29', 1, 'BlockVector::iterator'],\n ['../classBlockVectorBase.html#a38316f0d1b9b1e4fa4dc3e0b4e15655e', 1, 'BlockVectorBase::iterator'],\n ['../classChunkSparseMatrix.html#a54a9b7b6c1696c99915d83c0dd1786d5', 1, 'ChunkSparseMatrix::iterator'],\n ['../classChunkSparsityPattern.html#a10e66cf5c0ef12063c3f5d5b0404bc4e', 1, 'ChunkSparsityPattern::iterator'],\n ['../classDynamicSparsityPattern.html#a18ab16f163487d426b3ecb653a0ad927', 1, 'DynamicSparsityPattern::iterator'],\n ['../classFullMatrix.html#a5e14c99dc6090be77b76ac9cfc8b63e6', 1, 'FullMatrix::iterator'],\n ['../classLinearAlgebra_1_1distributed_1_1BlockVector.html#a6f9a7abde54c56cd458765868a4a6da3', 1, 'LinearAlgebra::distributed::BlockVector::iterator'],\n ['../classLinearAlgebra_1_1distributed_1_1Vector.html#a35abed3e6b898142990cecf00e8387da', 1, 'LinearAlgebra::distributed::Vector::iterator'],\n- ['../classPETScWrappers_1_1MPI_1_1BlockSparseMatrix.html#a87c619d491397ad3d0ff5a5d80815064', 1, 'PETScWrappers::MPI::BlockSparseMatrix::iterator'],\n- ['../classPETScWrappers_1_1MPI_1_1BlockVector.html#a96a8852ddc34b2313ded272f0416143e', 1, 'PETScWrappers::MPI::BlockVector::iterator'],\n ['../classSparsityPatternIterators_1_1Iterator.html#acd8f413087919c54a805c022128c19c7', 1, 'SparsityPatternIterators::Iterator::Iterator()'],\n- ['../classinternal_1_1TableBaseAccessors_1_1Accessor.html#a7a5d13ffc75cb0992be5f74311369d40', 1, 'internal::TableBaseAccessors::Accessor::iterator'],\n+ ['../classPETScWrappers_1_1MPI_1_1BlockVector.html#a96a8852ddc34b2313ded272f0416143e', 1, 'PETScWrappers::MPI::BlockVector::iterator'],\n+ ['../structinternal_1_1TableBaseAccessors_1_1Types_3_01N_00_01T_00_01false_01_4.html#a07117d6df1c8a7ff4b9a02f08d94e37a', 1, 'internal::TableBaseAccessors::Types< N, T, false >::iterator'],\n+ ['../structinternal_1_1TableBaseAccessors_1_1Types_3_01N_00_01T_00_01true_01_4.html#abb284a83f9e8296902384c5212f4b5ae', 1, 'internal::TableBaseAccessors::Types< N, T, true >::iterator'],\n ['../classSparseMatrix.html#ac94776653684705604fea3dae0af35f4', 1, 'SparseMatrix::iterator'],\n ['../classSparsityPattern.html#a20e9b9dde21ceae113d5179c6ba919cf', 1, 'SparsityPattern::iterator'],\n ['../classTrilinosWrappers_1_1BlockSparseMatrix.html#a214fbdb9d2e869134bd9c49c4064bb18', 1, 'TrilinosWrappers::BlockSparseMatrix::iterator'],\n- ['../structinternal_1_1TableBaseAccessors_1_1Types_3_01N_00_01T_00_01false_01_4.html#a07117d6df1c8a7ff4b9a02f08d94e37a', 1, 'internal::TableBaseAccessors::Types< N, T, false >::iterator'],\n+ ['../classIteratorRange.html#a8fe90ee9e30cb2857191a1b15d8f32e7', 1, 'IteratorRange::iterator'],\n ['../classTrilinosWrappers_1_1MPI_1_1BlockVector.html#a21375e78623bec2ecfc3480730370c17', 1, 'TrilinosWrappers::MPI::BlockVector::iterator'],\n ['../classTrilinosWrappers_1_1SparseMatrix.html#a1d7757ad30700692bed81a328a4b6ee1', 1, 'TrilinosWrappers::SparseMatrix::iterator'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1BlockSparseMatrix.html#ab0ad4bf27a6b73c18a8674248ce0ed2b', 1, 'LinearAlgebra::TpetraWrappers::BlockSparseMatrix::iterator'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1BlockVector.html#a42a5e137dd7438c10e132355c78f34e6', 1, 'LinearAlgebra::TpetraWrappers::BlockVector::iterator'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrix.html#a1822ffb7bc572b30a90ea4e57966ae3c', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrix::iterator'],\n ['../classTrilinosWrappers_1_1MPI_1_1Vector.html#a96d5260bbf09c1f64d74d19f50fa0ab4', 1, 'TrilinosWrappers::MPI::Vector::iterator'],\n ['../classVector.html#acb8006e49918faaffeccd151669d0934', 1, 'Vector::iterator'],\n- ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#ac648045af534027b42582d90aee6a37f', 1, 'internal::BlockVectorIterators::Iterator::Iterator()'],\n- ['../classChunkSparseMatrixIterators_1_1Accessor_3_01number_00_01true_01_4.html#ac648045af534027b42582d90aee6a37f', 1, 'ChunkSparseMatrixIterators::Accessor< number, true >::Iterator'],\n- ['../classChunkSparseMatrixIterators_1_1Iterator.html', 1, 'ChunkSparseMatrixIterators::Iterator< number, Constness >'],\n+ ['../classTrilinosWrappers_1_1SparseMatrixIterators_1_1Iterator.html#aae5053fc00dee8786543af8cffed9952', 1, 'TrilinosWrappers::SparseMatrixIterators::Iterator::Iterator()'],\n ['../classSparseMatrixIterators_1_1Iterator.html', 1, 'SparseMatrixIterators::Iterator< number, Constness >'],\n ['../classMatrixTableIterators_1_1Iterator.html', 1, 'MatrixTableIterators::Iterator< TableType, Constness, storage_order >'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPatternIterators_1_1Iterator.html', 1, 'LinearAlgebra::TpetraWrappers::SparsityPatternIterators::Iterator< MemorySpace >'],\n ['../classSparsityPatternIterators_1_1Iterator.html', 1, 'SparsityPatternIterators::Iterator'],\n ['../classTrilinosWrappers_1_1SparseMatrixIterators_1_1Iterator.html', 1, 'TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >'],\n ['../classTrilinosWrappers_1_1SparsityPatternIterators_1_1Iterator.html', 1, 'TrilinosWrappers::SparsityPatternIterators::Iterator'],\n+ ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1_1Iterator.html', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrixIterators::Iterator< Number, MemorySpace, Constness >'],\n ['../classAlignedVector.html#aff5254e23b73ee1494467758418e8caf', 1, 'AlignedVector::iterator'],\n ['../classArrayView.html#a2d38642cd251bae73946069e9bc99645', 1, 'ArrayView::iterator'],\n- ['../classIteratorRange.html#a8fe90ee9e30cb2857191a1b15d8f32e7', 1, 'IteratorRange::iterator'],\n- ['../structinternal_1_1TableBaseAccessors_1_1Types_3_01N_00_01T_00_01true_01_4.html#abb284a83f9e8296902384c5212f4b5ae', 1, 'internal::TableBaseAccessors::Types< N, T, true >::iterator'],\n- ['../classTrilinosWrappers_1_1SparseMatrixIterators_1_1Iterator.html#a7d807156d67ec688772a0fc638302631', 1, 'TrilinosWrappers::SparseMatrixIterators::Iterator::Iterator()'],\n- ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1_1Iterator.html', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrixIterators::Iterator< Number, MemorySpace, Constness >'],\n ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html', 1, 'internal::BlockVectorIterators::Iterator< BlockVectorType, Constness >'],\n ['../classDynamicSparsityPatternIterators_1_1Iterator.html', 1, 'DynamicSparsityPatternIterators::Iterator'],\n ['../classChunkSparsityPatternIterators_1_1Iterator.html', 1, 'ChunkSparsityPatternIterators::Iterator'],\n+ ['../classChunkSparseMatrixIterators_1_1Iterator.html', 1, 'ChunkSparseMatrixIterators::Iterator< number, Constness >'],\n+ ['../classTrilinosWrappers_1_1SparseMatrixIterators_1_1Iterator.html#a7d807156d67ec688772a0fc638302631', 1, 'TrilinosWrappers::SparseMatrixIterators::Iterator::Iterator()'],\n ['../classTrilinosWrappers_1_1SparsityPatternIterators_1_1Iterator.html#a9952db0dd1d457abfdfbafc5c6afd5f4', 1, 'TrilinosWrappers::SparsityPatternIterators::Iterator::Iterator(const SparsityPattern *sparsity_pattern, const size_type row, const size_type index)'],\n ['../classTrilinosWrappers_1_1SparsityPatternIterators_1_1Iterator.html#add9866ef652f29acaf735bd1416ecf17', 1, 'TrilinosWrappers::SparsityPatternIterators::Iterator::Iterator(const Iterator &i)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1_1Iterator.html#a90f730865afe29b366516e968c2634aa', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrixIterators::Iterator::Iterator(MatrixType *matrix, const size_type row, const size_type index)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1_1Iterator.html#af2a5bd06793ac71899751548d36601c7', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrixIterators::Iterator::Iterator(const Iterator< Number, MemorySpace, Other > &other)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPatternIterators_1_1Iterator.html#a4c3d53fb32b783bb4c92cab10fe7e564', 1, 'LinearAlgebra::TpetraWrappers::SparsityPatternIterators::Iterator::Iterator(const SparsityPattern< MemorySpace > *sparsity_pattern, const size_type row, const size_type index)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPatternIterators_1_1Iterator.html#a46a65187274e075f1a491166e6b2bb52', 1, 'LinearAlgebra::TpetraWrappers::SparsityPatternIterators::Iterator::Iterator(const Iterator< MemorySpace > &i)']\n ]],\n@@ -1675,28 +1675,28 @@\n ['iterator_3c_20memoryspace_20_3e_717', ['Iterator< MemorySpace >', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPatternIterators_1_1Accessor.html#a8ba9f0496c3f1b5e5c13be953e9f7494', 1, 'LinearAlgebra::TpetraWrappers::SparsityPatternIterators::Accessor']]],\n ['iterator_3c_20number_2c_20memoryspace_2c_20false_20_3e_718', ['iterator< number, memoryspace, false >', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1_1AccessorBase.html#a173e86949726035e4dc72edd5082f8fa', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrixIterators::AccessorBase::Iterator< Number, MemorySpace, false >'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1_1Iterator.html#a173e86949726035e4dc72edd5082f8fa', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrixIterators::Iterator::Iterator< Number, MemorySpace, false >']\n ]],\n ['iterator_3c_20number_2c_20memoryspace_2c_20true_20_3e_719', ['iterator< number, memoryspace, true >', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1_1AccessorBase.html#a7b7e209c83c09a3bd78a930cef59af0c', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrixIterators::AccessorBase::Iterator< Number, MemorySpace, true >'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1_1Iterator.html#a7b7e209c83c09a3bd78a930cef59af0c', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrixIterators::Iterator::Iterator< Number, MemorySpace, true >']\n ]],\n- ['iterator_5fcategory_720', ['iterator_category', ['../structstd_1_1iterator__traits_3_1_1VectorizedArrayIterator_3_01T_01_4_01_4.html#a40dc5ad012012f052621247876247b0f', 1, 'std::iterator_traits<::VectorizedArrayIterator< T > >::iterator_category'],\n- ['../classIndexSet_1_1ElementIterator.html#ad299513f7557d901d9c3b364d4c9c952', 1, 'IndexSet::ElementIterator::iterator_category'],\n+ ['iterator_5fcategory_720', ['iterator_category', ['../classIndexSet_1_1ElementIterator.html#ad299513f7557d901d9c3b364d4c9c952', 1, 'IndexSet::ElementIterator::iterator_category'],\n ['../classIteratorOverIterators.html#aaa734ef6d22a15d7703e58b5719916e3', 1, 'IteratorOverIterators::iterator_category'],\n- ['../classParticles_1_1ParticleIterator.html#a7b5799895460640ee85ea07e35831be9', 1, 'Particles::ParticleIterator::iterator_category'],\n- ['../structstd_1_1iterator__traits_3_01_1_1LinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1e111f4803b88d5256becdda1625f8892.html#a5b3fc1ac50becd8e57bc1b6fc3425bc4', 1, 'std::iterator_traits< ::LinearAlgebra::TpetraWrappers::SparseMatrixIterators::Iterator< Number, MemorySpace, Constness > >::iterator_category'],\n- ['../structstd_1_1iterator__traits_3_01_1_1TrilinosWrappers_1_1SparseMatrixIterators_1_1Iterator_3_01Constness_01_4_01_4.html#ac152d025c56b0a7772443e7a5f75f5e9', 1, 'std::iterator_traits< ::TrilinosWrappers::SparseMatrixIterators::Iterator< Constness > >::iterator_category'],\n- ['../structstd_1_1iterator__traits_3_01_1_1SparseMatrixIterators_1_1Iterator_3_01number_00_01Constness_01_4_01_4.html#a628f747a1c9225c41b5f2472ab4e508c', 1, 'std::iterator_traits< ::SparseMatrixIterators::Iterator< number, Constness > >::iterator_category'],\n- ['../classLinearIndexIterator.html#ac560cff51a87a2f30f753cc15fa80ee7', 1, 'LinearIndexIterator::iterator_category'],\n+ ['../structstd_1_1iterator__traits_3_1_1VectorizedArrayIterator_3_01T_01_4_01_4.html#a40dc5ad012012f052621247876247b0f', 1, 'std::iterator_traits<::VectorizedArrayIterator< T > >::iterator_category'],\n ['../classTriaRawIterator.html#ab02a38b84b358c0ca185819f3ca4b0f8', 1, 'TriaRawIterator::iterator_category'],\n ['../classTriaIterator.html#a1b7f07312d948f3fb5727edaa37f3073', 1, 'TriaIterator::iterator_category'],\n+ ['../classLinearIndexIterator.html#ac560cff51a87a2f30f753cc15fa80ee7', 1, 'LinearIndexIterator::iterator_category'],\n+ ['../classTriaActiveIterator.html#aeb5ac4e8d133e6b221b5462799ed8a07', 1, 'TriaActiveIterator::iterator_category'],\n ['../classIndexSet_1_1IntervalIterator.html#a6f5ca02bfc47573d57188950f57ddf67', 1, 'IndexSet::IntervalIterator::iterator_category'],\n- ['../structstd_1_1iterator__traits_3_01_1_1ChunkSparseMatrixIterators_1_1Iterator_3_01number_00_01Constness_01_4_01_4.html#ab3494130f1f9b3a4c4f718ac77c55820', 1, 'std::iterator_traits< ::ChunkSparseMatrixIterators::Iterator< number, Constness > >::iterator_category'],\n ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#a9c81e1ee0ea6ba9bbc812a704d45669e', 1, 'internal::BlockVectorIterators::Iterator::iterator_category'],\n- ['../classTriaActiveIterator.html#aeb5ac4e8d133e6b221b5462799ed8a07', 1, 'TriaActiveIterator::iterator_category']\n+ ['../structstd_1_1iterator__traits_3_01_1_1ChunkSparseMatrixIterators_1_1Iterator_3_01number_00_01Constness_01_4_01_4.html#ab3494130f1f9b3a4c4f718ac77c55820', 1, 'std::iterator_traits< ::ChunkSparseMatrixIterators::Iterator< number, Constness > >::iterator_category'],\n+ ['../structstd_1_1iterator__traits_3_01_1_1SparseMatrixIterators_1_1Iterator_3_01number_00_01Constness_01_4_01_4.html#a628f747a1c9225c41b5f2472ab4e508c', 1, 'std::iterator_traits< ::SparseMatrixIterators::Iterator< number, Constness > >::iterator_category'],\n+ ['../structstd_1_1iterator__traits_3_01_1_1TrilinosWrappers_1_1SparseMatrixIterators_1_1Iterator_3_01Constness_01_4_01_4.html#ac152d025c56b0a7772443e7a5f75f5e9', 1, 'std::iterator_traits< ::TrilinosWrappers::SparseMatrixIterators::Iterator< Constness > >::iterator_category'],\n+ ['../structstd_1_1iterator__traits_3_01_1_1LinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1e111f4803b88d5256becdda1625f8892.html#a5b3fc1ac50becd8e57bc1b6fc3425bc4', 1, 'std::iterator_traits< ::LinearAlgebra::TpetraWrappers::SparseMatrixIterators::Iterator< Number, MemorySpace, Constness > >::iterator_category'],\n+ ['../classParticles_1_1ParticleIterator.html#a7b5799895460640ee85ea07e35831be9', 1, 'Particles::ParticleIterator::iterator_category']\n ]],\n ['iterator_5frange_2eh_721', ['iterator_range.h', ['../iterator__range_8h.html', 1, '']]],\n ['iterator_5ftraits_722', ['iterator_traits', ['../classiterator__traits.html', 1, '']]],\n ['iterator_5ftraits_3c_20_3a_3achunksparsematrixiterators_3a_3aiterator_3c_20number_2c_20constness_20_3e_20_3e_723', ['iterator_traits< ::ChunkSparseMatrixIterators::Iterator< number, Constness > >', ['../structstd_1_1iterator__traits_3_01_1_1ChunkSparseMatrixIterators_1_1Iterator_3_01number_00_01Constness_01_4_01_4.html', 1, 'std']]],\n ['iterator_5ftraits_3c_20_3a_3alinearalgebra_3a_3atpetrawrappers_3a_3asparsematrixiterators_3a_3aiterator_3c_20number_2c_20memoryspace_2c_20constness_20_3e_20_3e_724', ['iterator_traits< ::LinearAlgebra::TpetraWrappers::SparseMatrixIterators::Iterator< Number, MemorySpace, Constness > >', ['../structstd_1_1iterator__traits_3_01_1_1LinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1e111f4803b88d5256becdda1625f8892.html', 1, 'std']]],\n ['iterator_5ftraits_3c_20_3a_3asparsematrixiterators_3a_3aiterator_3c_20number_2c_20constness_20_3e_20_3e_725', ['iterator_traits< ::SparseMatrixIterators::Iterator< number, Constness > >', ['../structstd_1_1iterator__traits_3_01_1_1SparseMatrixIterators_1_1Iterator_3_01number_00_01Constness_01_4_01_4.html', 1, 'std']]],\n ['iterator_5ftraits_3c_20_3a_3atrilinoswrappers_3a_3asparsematrixiterators_3a_3aiterator_3c_20constness_20_3e_20_3e_726', ['iterator_traits< ::TrilinosWrappers::SparseMatrixIterators::Iterator< Constness > >', ['../structstd_1_1iterator__traits_3_01_1_1TrilinosWrappers_1_1SparseMatrixIterators_1_1Iterator_3_01Constness_01_4_01_4.html', 1, 'std']]],\n@@ -1707,16 +1707,16 @@\n ['../classIteratorOverIterators.html#a13d2c536ff446d3f16fb18f3300fb8ee', 1, 'IteratorOverIterators::IteratorOverIterators()'],\n ['../classIteratorRange.html#a65d98f6512b127334bf0e0ef048378a1', 1, 'IteratorRange::IteratorOverIterators']\n ]],\n ['iteratorrange_731', ['iteratorrange', ['../classIteratorRange.html', 1, 'IteratorRange< Iterator >'],\n ['../classIteratorRange.html#a9f86287141994f6d6d9a4d5344e26757', 1, 'IteratorRange::IteratorRange(const iterator begin, const iterator end)'],\n ['../classIteratorRange.html#a5f75c1f90d1192051ba275480001c8c7', 1, 'IteratorRange::IteratorRange()']\n ]],\n- ['iteratorrangetoitemstream_732', ['iteratorrangetoitemstream', ['../classWorkStream_1_1internal_1_1tbb__no__coloring_1_1IteratorRangeToItemStream.html#a5fae88084b61e93aff8116f7435210b1', 1, 'WorkStream::internal::tbb_no_coloring::IteratorRangeToItemStream::IteratorRangeToItemStream()'],\n- ['../classWorkStream_1_1internal_1_1tbb__no__coloring_1_1IteratorRangeToItemStream.html', 1, 'WorkStream::internal::tbb_no_coloring::IteratorRangeToItemStream< Iterator, ScratchData, CopyData >']\n+ ['iteratorrangetoitemstream_732', ['iteratorrangetoitemstream', ['../classWorkStream_1_1internal_1_1tbb__no__coloring_1_1IteratorRangeToItemStream.html', 1, 'WorkStream::internal::tbb_no_coloring::IteratorRangeToItemStream< Iterator, ScratchData, CopyData >'],\n+ ['../classWorkStream_1_1internal_1_1tbb__no__coloring_1_1IteratorRangeToItemStream.html#a5fae88084b61e93aff8116f7435210b1', 1, 'WorkStream::internal::tbb_no_coloring::IteratorRangeToItemStream::IteratorRangeToItemStream()']\n ]],\n ['iterators_733', ['iterators', ['../group__Accessors.html', 1, 'Accessor classes of the mesh iterators'],\n ['../group__Iterators.html#IteratorsDifferences', 1, 'Different kinds of iterators'],\n ['../structinternal_1_1DoFHandlerImplementation_1_1Iterators.html', 1, 'internal::DoFHandlerImplementation::Iterators< dim, spacedim, lda >'],\n ['../structinternal_1_1TriangulationImplementation_1_1Iterators.html', 1, 'internal::TriangulationImplementation::Iterators< dim, spacedim >'],\n ['../structSynchronousIterators.html#ace88f94ed337c387971f8d59c79678b5', 1, 'SynchronousIterators::iterators'],\n ['../structWorkStream_1_1internal_1_1tbb__no__coloring_1_1IteratorRangeToItemStream_1_1ItemType.html#aae49f453854da092eaf9022c488d7a8d', 1, 'WorkStream::internal::tbb_no_coloring::IteratorRangeToItemStream::ItemType::iterators']\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_16.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_16.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -13,31 +13,31 @@\n ['key_5fvalue_5fseparator_11', ['key_value_separator', ['../classPatterns_1_1Map.html#af7e1e7fcf27e14abef21b138750f5b7d', 1, 'Patterns::Map']]],\n ['kind_12', ['kind', ['../classReferenceCell.html#aa6de517a09acfe6431c25e10f69e8e88', 1, 'ReferenceCell']]],\n ['kinds_20of_20accessors_13', ['Kinds of accessors', ['../group__Iterators.html#IteratorsTypedefs', 1, '']]],\n ['kinds_20of_20iterators_14', ['Different kinds of iterators', ['../group__Iterators.html#IteratorsDifferences', 1, '']]],\n ['kinematics_2ecc_15', ['kinematics.cc', ['../kinematics_8cc.html', 1, '']]],\n ['kinematics_2eh_16', ['kinematics.h', ['../kinematics_8h.html', 1, '']]],\n ['king_5fordering_17', ['king_ordering', ['../namespaceDoFRenumbering_1_1boost.html#a76fd1dc3212aeeca4294c358248e46d5', 1, 'DoFRenumbering::boost']]],\n- ['kinsol_18', ['kinsol', ['../classSUNDIALS_1_1KINSOL.html#a79e61e84af403eb5e5429d053f579822', 1, 'SUNDIALS::KINSOL::KINSOL(const AdditionalData &data, const MPI_Comm mpi_comm)'],\n+ ['kinsol_18', ['kinsol', ['../classSUNDIALS_1_1KINSOL.html', 1, 'SUNDIALS::KINSOL< VectorType >'],\n+ ['../classSUNDIALS_1_1KINSOL.html#a79e61e84af403eb5e5429d053f579822', 1, 'SUNDIALS::KINSOL::KINSOL(const AdditionalData &data, const MPI_Comm mpi_comm)'],\n ['../classSUNDIALS_1_1KINSOL.html#acf2dfd38812321750b174be317050f37', 1, 'SUNDIALS::KINSOL::KINSOL(const AdditionalData &data=AdditionalData())'],\n- ['../classNonlinearSolverSelector_1_1AdditionalData.html#a458e4d6fb204a1aacf159665e4b7d810a40bdc8874ce09cd7d695cd621857e3e2', 1, 'NonlinearSolverSelector::AdditionalData::kinsol'],\n- ['../classSUNDIALS_1_1KINSOL.html', 1, 'SUNDIALS::KINSOL< VectorType >']\n+ ['../classNonlinearSolverSelector_1_1AdditionalData.html#a458e4d6fb204a1aacf159665e4b7d810a40bdc8874ce09cd7d695cd621857e3e2', 1, 'NonlinearSolverSelector::AdditionalData::kinsol']\n ]],\n ['kinsol_2ecc_19', ['kinsol.cc', ['../kinsol_8cc.html', 1, '']]],\n ['kinsol_2eh_20', ['kinsol.h', ['../kinsol_8h.html', 1, '']]],\n ['kinsol_3c_20vector_3c_20double_20_3e_20_3e_21', ['KINSOL< Vector< double > >', ['../classSUNDIALS_1_1KINSOL.html', 1, 'SUNDIALS']]],\n ['kinsol_5fctx_22', ['kinsol_ctx', ['../classSUNDIALS_1_1KINSOL.html#a6af5646fb9c5d198c9a93c60717401d4', 1, 'SUNDIALS::KINSOL']]],\n ['kinsol_5fmem_23', ['kinsol_mem', ['../classSUNDIALS_1_1KINSOL.html#af60479a46e6972eea3bd9381be07787b', 1, 'SUNDIALS::KINSOL']]],\n ['known_24', ['A few instantiations, most of which are known', ['../Instantiations.html#Inst2', 1, '']]],\n ['known_20and_20fixed_20number_20of_20instantiations_25', ['Known and fixed number of instantiations', ['../Instantiations.html#Inst1', 1, '']]],\n ['kokkos_26', ['Kokkos', ['../init__finalize_8h.html#afa0632b171b89c99789b77f976818df0a8f76b9cae77c98519b9d797b65f0d965', 1, 'init_finalize.h']]],\n ['kokkos_2ecc_27', ['kokkos.cc', ['../kokkos_8cc.html', 1, '']]],\n ['kokkos_2eh_28', ['kokkos.h', ['../kokkos_8h.html', 1, '']]],\n ['kokkos_5fspace_29', ['kokkos_space', ['../structMemorySpace_1_1Default.html#ae01abbb11512c19589484acbc619f082', 1, 'MemorySpace::Default::kokkos_space'],\n ['../structMemorySpace_1_1Host.html#aa63d288307878e4cc6e91920e0c6f070', 1, 'MemorySpace::Host::kokkos_space']\n ]],\n- ['kovasznay_30', ['kovasznay', ['../classFunctions_1_1Kovasznay.html', 1, 'Functions::Kovasznay'],\n- ['../classFunctions_1_1Kovasznay.html#a082166be0e076803fed98a61450e05a5', 1, 'Functions::Kovasznay::Kovasznay()']\n+ ['kovasznay_30', ['kovasznay', ['../classFunctions_1_1Kovasznay.html#a082166be0e076803fed98a61450e05a5', 1, 'Functions::Kovasznay::Kovasznay()'],\n+ ['../classFunctions_1_1Kovasznay.html', 1, 'Functions::Kovasznay']\n ]],\n ['krylov_5fspace_5fsignal_31', ['krylov_space_signal', ['../classSolverGMRES.html#a420bf7dc093c87df4ae351fe75ddfe2a', 1, 'SolverGMRES']]],\n ['ksp_32', ['ksp', ['../classPETScWrappers_1_1SolverBase.html#a39b73cb5a671d1db18f370c18e50da6a', 1, 'PETScWrappers::SolverBase']]]\n ];\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_18.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_18.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -941,33 +941,33 @@\n ['mean_434', ['mean', ['../namespaceAdaptationStrategies_1_1Coarsening.html#afe3e3e5f14a4ab4109ef8c9144fdc70e', 1, 'AdaptationStrategies::Coarsening::mean()'],\n ['../namespaceVectorTools.html#a69967cb7a148a7169963126249213db1a485d4198c1f422388b80cadb98af1f27', 1, 'VectorTools::mean']\n ]],\n ['mean_5fand_5fstandard_5fdeviation_435', ['mean_and_standard_deviation', ['../namespaceUtilities_1_1MPI.html#a48cb1a27486655e883c015854b5550d6', 1, 'Utilities::MPI']]],\n ['mean_5fpressure_436', ['mean_pressure', ['../classFunctions_1_1FlowFunction.html#a9e8b2ef1af30fda19f98684f3f0d853a', 1, 'Functions::FlowFunction']]],\n ['mean_5fvalue_437', ['mean_value', ['../classTrilinosWrappers_1_1MPI_1_1Vector.html#a15bcdfb5d20d5372131575898e42685a', 1, 'TrilinosWrappers::MPI::Vector::mean_value()'],\n ['../classBlockVectorBase.html#a257aa3f5c8cb9fe9723edccfec3f95e4', 1, 'BlockVectorBase::mean_value()'],\n+ ['../classLinearAlgebra_1_1CUDAWrappers_1_1Vector.html#a7d8bcc5615f5f9b476d85d36c0186d75', 1, 'LinearAlgebra::CUDAWrappers::Vector::mean_value()'],\n+ ['../classLinearAlgebra_1_1distributed_1_1BlockVector.html#a8f0860052c7c6e4529c13c67806f188e', 1, 'LinearAlgebra::distributed::BlockVector::mean_value()'],\n+ ['../classLinearAlgebra_1_1distributed_1_1Vector.html#a20e23bae2058a2d5f12a4f2dc068b3bf', 1, 'LinearAlgebra::distributed::Vector::mean_value()'],\n+ ['../classPETScWrappers_1_1VectorBase.html#a232af54220bbbc75b6d1fcee45bac178', 1, 'PETScWrappers::VectorBase::mean_value()'],\n+ ['../classLinearAlgebra_1_1EpetraWrappers_1_1Vector.html#acf7552baa5eded1f3a3378f140a9d450', 1, 'LinearAlgebra::EpetraWrappers::Vector::mean_value()'],\n+ ['../classLinearAlgebra_1_1TpetraWrappers_1_1Vector.html#ad7e2d8ef83e2d0bd08fc3d81cacb6e04', 1, 'LinearAlgebra::TpetraWrappers::Vector::mean_value()'],\n ['../structinternal_1_1VectorOperations_1_1functions_3_01Number_00_01Number_00_01_1_1MemorySpace_1_1Default_01_4.html#a2ac154e433acfb2d725cde02018a608e', 1, 'internal::VectorOperations::functions< Number, Number, ::MemorySpace::Default >::mean_value()'],\n- ['../structinternal_1_1VectorOperations_1_1functions_3_01Number_00_01Number2_00_01_1_1MemorySpace_1_1Host_01_4.html#a560d7d087e6f61298f61377118e8e242', 1, 'internal::VectorOperations::functions< Number, Number2, ::MemorySpace::Host >::mean_value()'],\n- ['../structinternal_1_1VectorOperations_1_1functions.html#a049b5c2a06591bcf550d55d43ca854e4', 1, 'internal::VectorOperations::functions::mean_value()'],\n ['../classVector.html#a33d47f6cd8a2b9ec62f133e7d303b745', 1, 'Vector::mean_value()'],\n- ['../classLinearAlgebra_1_1TpetraWrappers_1_1Vector.html#ad7e2d8ef83e2d0bd08fc3d81cacb6e04', 1, 'LinearAlgebra::TpetraWrappers::Vector::mean_value()'],\n- ['../classLinearAlgebra_1_1EpetraWrappers_1_1Vector.html#acf7552baa5eded1f3a3378f140a9d450', 1, 'LinearAlgebra::EpetraWrappers::Vector::mean_value()'],\n- ['../classPETScWrappers_1_1VectorBase.html#a232af54220bbbc75b6d1fcee45bac178', 1, 'PETScWrappers::VectorBase::mean_value()'],\n- ['../classLinearAlgebra_1_1distributed_1_1Vector.html#a20e23bae2058a2d5f12a4f2dc068b3bf', 1, 'LinearAlgebra::distributed::Vector::mean_value()'],\n- ['../classLinearAlgebra_1_1distributed_1_1BlockVector.html#a8f0860052c7c6e4529c13c67806f188e', 1, 'LinearAlgebra::distributed::BlockVector::mean_value()'],\n- ['../classLinearAlgebra_1_1CUDAWrappers_1_1Vector.html#a7d8bcc5615f5f9b476d85d36c0186d75', 1, 'LinearAlgebra::CUDAWrappers::Vector::mean_value()']\n+ ['../structinternal_1_1VectorOperations_1_1functions_3_01Number_00_01Number2_00_01_1_1MemorySpace_1_1Host_01_4.html#a560d7d087e6f61298f61377118e8e242', 1, 'internal::VectorOperations::functions< Number, Number2, ::MemorySpace::Host >::mean_value()'],\n+ ['../structinternal_1_1VectorOperations_1_1functions.html#a049b5c2a06591bcf550d55d43ca854e4', 1, 'internal::VectorOperations::functions::mean_value()']\n ]],\n- ['mean_5fvalue_5ffilter_438', ['mean_value_filter', ['../group__LAOperators.html#ga6cedb0a75c51801a6052bf7343b90685', 1, 'mean_value_filter(const LinearOperator< Range, Domain, Payload > &op): linear_operator.h'],\n- ['../group__LAOperators.html#gacad49906c99b700ca6cafdef67977d0c', 1, 'mean_value_filter(const std::function< void(Range &, bool)> &reinit_vector): linear_operator.h'],\n+ ['mean_5fvalue_5ffilter_438', ['mean_value_filter', ['../group__LAOperators.html#gacad49906c99b700ca6cafdef67977d0c', 1, 'LinearOperator::mean_value_filter(const std::function< void(Range &, bool)> &reinit_vector)'],\n ['../group__LAOperators.html#ga6cedb0a75c51801a6052bf7343b90685', 1, 'LinearOperator::mean_value_filter(const LinearOperator< Range, Domain, Payload > &op)'],\n- ['../group__LAOperators.html#gacad49906c99b700ca6cafdef67977d0c', 1, 'LinearOperator::mean_value_filter(const std::function< void(Range &, bool)> &reinit_vector)']\n+ ['../group__LAOperators.html#gacad49906c99b700ca6cafdef67977d0c', 1, 'mean_value_filter(const std::function< void(Range &, bool)> &reinit_vector): linear_operator.h'],\n+ ['../group__LAOperators.html#ga6cedb0a75c51801a6052bf7343b90685', 1, 'mean_value_filter(const LinearOperator< Range, Domain, Payload > &op): linear_operator.h']\n ]],\n ['mean_5fvalue_5flocal_439', ['mean_value_local', ['../classLinearAlgebra_1_1distributed_1_1Vector.html#a0cab16fed261f1579c11ea5c81cb0eb7', 1, 'LinearAlgebra::distributed::Vector']]],\n- ['meanvalue_440', ['meanvalue', ['../structinternal_1_1VectorOperations_1_1MeanValue.html', 1, 'internal::VectorOperations::MeanValue< Number >'],\n- ['../structinternal_1_1VectorOperations_1_1MeanValue.html#ab6e04e5c67275b686421e50ae295f086', 1, 'internal::VectorOperations::MeanValue::MeanValue()']\n+ ['meanvalue_440', ['meanvalue', ['../structinternal_1_1VectorOperations_1_1MeanValue.html#ab6e04e5c67275b686421e50ae295f086', 1, 'internal::VectorOperations::MeanValue::MeanValue()'],\n+ ['../structinternal_1_1VectorOperations_1_1MeanValue.html', 1, 'internal::VectorOperations::MeanValue< Number >']\n ]],\n ['measure_441', ['measure', ['../classTriaAccessor.html#a9cecb2b7c9a1644fb5fd44bbba40ab0c', 1, 'TriaAccessor::measure()'],\n ['../classTriaAccessor_3_010_00_01dim_00_01spacedim_01_4.html#aafcd4075ed7bb769645463af109eee99', 1, 'TriaAccessor< 0, dim, spacedim >::measure()']\n ]],\n ['mem_442', ['mem', ['../classinternal_1_1SolverGMRESImplementation_1_1TmpVectors.html#a0254a02af04ae76ee080696f844ebd4e', 1, 'internal::SolverGMRESImplementation::TmpVectors::mem'],\n ['../classinternal_1_1SolverIDRImplementation_1_1TmpVectors.html#ad25d4ff8c895ebfd2b395dbf9b0c59fd', 1, 'internal::SolverIDRImplementation::TmpVectors::mem'],\n ['../classSUNDIALS_1_1IDA.html#ac88b7fa23845ada839700f552f910cfd', 1, 'SUNDIALS::IDA::mem'],\n@@ -1072,185 +1072,185 @@\n ['../classTimeDependent.html#a145fa0199ac7c678cc3f28f84f757af6', 1, 'TimeDependent::memory_consumption()'],\n ['../classTimeStepBase.html#a0465b25cf82cdd8355d2b686a681d2c5', 1, 'TimeStepBase::memory_consumption()'],\n ['../classTimeStepBase__Tria.html#a515841d9996c51ea6430548dac3af6f6', 1, 'TimeStepBase_Tria::memory_consumption()'],\n ['../classMGTransferBlock.html#af0df8734d98b82562879864989e4d969', 1, 'MGTransferBlock::memory_consumption()'],\n ['../namespaceMemoryConsumption.html#a34f3bc5ab5164e98443627b89ee0f424', 1, 'MemoryConsumption::memory_consumption(const T &t)'],\n ['../namespaceMemoryConsumption.html#a9d7607b7215aa41c14f91a94d179103b', 1, 'MemoryConsumption::memory_consumption(const T &t)'],\n ['../namespaceMemoryConsumption.html#aa8bf98d150e2c9dc7cb70f5b9494fef1', 1, 'MemoryConsumption::memory_consumption(const char *string)'],\n- ['../classFiniteElement_1_1InternalDataBase.html#aa572d4ba6b3bb1955b80862f9f7779a3', 1, 'FiniteElement::InternalDataBase::memory_consumption()'],\n- ['../classIndexSet.html#aeba0ce6187639b3c253cb8d9379aaf9d', 1, 'IndexSet::memory_consumption()'],\n- ['../classinternal_1_1SubfaceCase.html#a547f66e93c1b7ed539764abbb8a3e8a4', 1, 'internal::SubfaceCase::memory_consumption()'],\n+ ['../structinternal_1_1DoFHandlerImplementation_1_1NumberCache.html#a848d277fc574278ab7c0b98a1a69a279', 1, 'internal::DoFHandlerImplementation::NumberCache::memory_consumption()'],\n+ ['../classTensor.html#aa684a29980c5e7787414e35636b5d0dc', 1, 'Tensor::memory_consumption()'],\n+ ['../classTensorProductPolynomials.html#a15d0a5bf5b373b508703f802b8ecc2ef', 1, 'TensorProductPolynomials::memory_consumption()'],\n+ ['../classFunctions_1_1InterpolatedTensorProductGridData.html#a996a3f8871bc5a626b78f9933a25efe9', 1, 'Functions::InterpolatedTensorProductGridData::memory_consumption()'],\n+ ['../classFunctions_1_1JumpFunction.html#a6b2746bc10c623cdc8a13c1e6b6652eb', 1, 'Functions::JumpFunction::memory_consumption()'],\n+ ['../classFunctionDerivative.html#a046459a557118c1bb97f457b52b056bb', 1, 'FunctionDerivative::memory_consumption()'],\n ['../classparallel_1_1fullydistributed_1_1Triangulation.html#af3462af3709c558b158e3a1abba439ad', 1, 'parallel::fullydistributed::Triangulation::memory_consumption()'],\n ['../classparallel_1_1distributed_1_1Triangulation.html#af3462af3709c558b158e3a1abba439ad', 1, 'parallel::distributed::Triangulation::memory_consumption()'],\n ['../classparallel_1_1TriangulationBase.html#a0ad3703ebbac4468e07b74c3ca595747', 1, 'parallel::TriangulationBase::memory_consumption()'],\n ['../classBlockInfo.html#a851e03280c25f1f2c5ff9080f41511a1', 1, 'BlockInfo::memory_consumption()'],\n ['../classinternal_1_1DoFHandlerImplementation_1_1DoFFaces_3_011_01_4.html#a11300def90965e60f6b82bf6bd9648ed', 1, 'internal::DoFHandlerImplementation::DoFFaces< 1 >::memory_consumption()'],\n ['../classinternal_1_1DoFHandlerImplementation_1_1DoFFaces_3_012_01_4.html#aa9c3be068a61127becf7f607abce290e', 1, 'internal::DoFHandlerImplementation::DoFFaces< 2 >::memory_consumption()'],\n ['../classinternal_1_1DoFHandlerImplementation_1_1DoFFaces_3_013_01_4.html#a76294499c92b1b539232566e6c6d87e4', 1, 'internal::DoFHandlerImplementation::DoFFaces< 3 >::memory_consumption()'],\n ['../classDoFHandler.html#a0d68887248d68ed36a63460f376e7af3', 1, 'DoFHandler::memory_consumption()'],\n ['../classinternal_1_1DoFHandlerImplementation_1_1DoFLevel.html#ad7cfffa49c2712a30de034744f8cbad7', 1, 'internal::DoFHandlerImplementation::DoFLevel::memory_consumption()'],\n ['../classinternal_1_1DoFHandlerImplementation_1_1DoFObjects.html#a67bc3368bafa805d2245ed6c6063079e', 1, 'internal::DoFHandlerImplementation::DoFObjects::memory_consumption()'],\n- ['../structinternal_1_1DoFHandlerImplementation_1_1NumberCache.html#a848d277fc574278ab7c0b98a1a69a279', 1, 'internal::DoFHandlerImplementation::NumberCache::memory_consumption()'],\n+ ['../classTableBase.html#a2c63db9ae49e0e3b099f0244801016f2', 1, 'TableBase::memory_consumption()'],\n ['../classBlockMask.html#a5ded99e27c06ac4dab36cda8250a2c51', 1, 'BlockMask::memory_consumption()'],\n ['../classComponentMask.html#a871066e308c2d0607db84f624f356b30', 1, 'ComponentMask::memory_consumption()'],\n- ['../structIndexSet_1_1Range.html#a7cbbc077df994e2da419dd932366f54a', 1, 'IndexSet::Range::memory_consumption()'],\n+ ['../classFiniteElement_1_1InternalDataBase.html#aa572d4ba6b3bb1955b80862f9f7779a3', 1, 'FiniteElement::InternalDataBase::memory_consumption()'],\n ['../classFiniteElement.html#adccc5f8ac313d3e7182599a01e6353a5', 1, 'FiniteElement::memory_consumption()'],\n ['../classFE__ABF.html#a4dbd8cf26be8590919a1c3990aaa5220', 1, 'FE_ABF::memory_consumption()'],\n ['../classFE__DGVector.html#afcdf31566f4c83b3910e5323f0a40dd9', 1, 'FE_DGVector::memory_consumption()'],\n ['../classFE__DGP.html#ae56daa338de73f7a6f9c8d9eeaca9271', 1, 'FE_DGP::memory_consumption()'],\n ['../classFunctions_1_1CSpline.html#a1b1d3c8a4c22b615efcb4e8cc143d13e', 1, 'Functions::CSpline::memory_consumption()'],\n ['../classComponentSelectFunction.html#a3b9e5888ca567c8503d6d73bcd179b3d', 1, 'ComponentSelectFunction::memory_consumption()'],\n ['../classFunctions_1_1ConstantFunction.html#a0ac3088e3ac73b2d9d3f585c06497b99', 1, 'Functions::ConstantFunction::memory_consumption()'],\n ['../classFunction.html#a45e07b63ee34bd7e7ab2492be5213377', 1, 'Function::memory_consumption()'],\n ['../classSparseMIC.html#a5feb4b9d38d4a2cb13a2738bceeb1903', 1, 'SparseMIC::memory_consumption()'],\n- ['../classFunctions_1_1Polynomial.html#a2e1af7bafbf4f480c5cf6638ef669d8d', 1, 'Functions::Polynomial::memory_consumption()'],\n- ['../classRefinementCase.html#a23583691b2b42d0f71e2154c53a4b0d9', 1, 'RefinementCase::memory_consumption()'],\n- ['../classFunctions_1_1Spherical.html#aa8d6fac9ab77af568c3641c0392c428f', 1, 'Functions::Spherical::memory_consumption()'],\n ['../classFE__DGPMonomial.html#a9ffec3c0e63bbf8ce9b179f2934594ce', 1, 'FE_DGPMonomial::memory_consumption()'],\n ['../classFE__DGPNonparametric.html#aee63a8a21ebb84e0f1914e209221bb8c', 1, 'FE_DGPNonparametric::memory_consumption()'],\n ['../classFE__Nedelec.html#aab2f64056d8e6a53af6bbe51c486913f', 1, 'FE_Nedelec::memory_consumption()'],\n- ['../classPolynomials_1_1Polynomial.html#af791d9aba7d4e85ec303ea1e46ef2ee9', 1, 'Polynomials::Polynomial::memory_consumption()'],\n+ ['../classUtilities_1_1MPI_1_1Partitioner.html#a0f154243f694679910f605359a739fa1', 1, 'Utilities::MPI::Partitioner::memory_consumption()'],\n+ ['../classFunctions_1_1Polynomial.html#a2e1af7bafbf4f480c5cf6638ef669d8d', 1, 'Functions::Polynomial::memory_consumption()'],\n+ ['../classFunctions_1_1Spherical.html#aa8d6fac9ab77af568c3641c0392c428f', 1, 'Functions::Spherical::memory_consumption()'],\n+ ['../classRefinementCase.html#a23583691b2b42d0f71e2154c53a4b0d9', 1, 'RefinementCase::memory_consumption()'],\n+ ['../classinternal_1_1SubfaceCase.html#a547f66e93c1b7ed539764abbb8a3e8a4', 1, 'internal::SubfaceCase::memory_consumption()'],\n+ ['../classIndexSet.html#aeba0ce6187639b3c253cb8d9379aaf9d', 1, 'IndexSet::memory_consumption()'],\n+ ['../classFunctions_1_1InterpolatedUniformGridData.html#aeedef0a7c09f521c5e16bbcbd4951289', 1, 'Functions::InterpolatedUniformGridData::memory_consumption()'],\n+ ['../structIndexSet_1_1Range.html#a7cbbc077df994e2da419dd932366f54a', 1, 'IndexSet::Range::memory_consumption()'],\n ['../classLazy.html#a642b35e64ca63c7379af568669371d51', 1, 'Lazy::memory_consumption()'],\n ['../classLogStream.html#a293da71d4d7eafa68cf1e3c710f673ae', 1, 'LogStream::memory_consumption()'],\n ['../classMGLevelObject.html#aa3c71ff83605bb8d6a6ea83709d68d02', 1, 'MGLevelObject::memory_consumption()'],\n ['../classUtilities_1_1MPI_1_1NoncontiguousPartitioner.html#a591e95028bf89c7147c8987ed1a2148b', 1, 'Utilities::MPI::NoncontiguousPartitioner::memory_consumption()'],\n ['../classMultithreadInfo.html#ae2e1b8a8027409936bda14b561d62a8f', 1, 'MultithreadInfo::memory_consumption()'],\n ['../classParameterHandler.html#a0342139603da3b30b132446d94a17b25', 1, 'ParameterHandler::memory_consumption()'],\n ['../classMultipleParameterLoop.html#aa76c74f48e073e6ff96fa9d788d2b0bd', 1, 'MultipleParameterLoop::memory_consumption()'],\n ['../classMultipleParameterLoop_1_1Entry.html#af3b0125f0fdaa6f15865e8b45a330998', 1, 'MultipleParameterLoop::Entry::memory_consumption()'],\n- ['../classUtilities_1_1MPI_1_1Partitioner.html#a0f154243f694679910f605359a739fa1', 1, 'Utilities::MPI::Partitioner::memory_consumption()'],\n+ ['../classSparseMatrixEZ.html#a907582d7f53774456f6847ff688a805e', 1, 'SparseMatrixEZ::memory_consumption()'],\n ['../classPatterns_1_1PatternBase.html#a0b788dcb34695b8a4e6ee6421eef75fb', 1, 'Patterns::PatternBase::memory_consumption()'],\n ['../classPatterns_1_1Selection.html#a88b2178431dc7d0648dca34461853b2d', 1, 'Patterns::Selection::memory_consumption()'],\n ['../classPatterns_1_1List.html#a54ea5779ae6e2117447fcbd49e789e11', 1, 'Patterns::List::memory_consumption()'],\n ['../classPatterns_1_1Map.html#ac7d885facebc53f94a2a1891eab21444', 1, 'Patterns::Map::memory_consumption()'],\n ['../classPatterns_1_1Tuple.html#a0f6bae2e6bf5f7cca8d51460cc207ced', 1, 'Patterns::Tuple::memory_consumption()'],\n ['../classPatterns_1_1MultipleSelection.html#a9bc298d0bcf11ac66bdf00c39a3a1686', 1, 'Patterns::MultipleSelection::memory_consumption()'],\n- ['../classSparseMatrixEZ.html#a907582d7f53774456f6847ff688a805e', 1, 'SparseMatrixEZ::memory_consumption()'],\n+ ['../classPolynomials_1_1Polynomial.html#af791d9aba7d4e85ec303ea1e46ef2ee9', 1, 'Polynomials::Polynomial::memory_consumption()'],\n ['../classBarycentricPolynomial.html#a21a061f15d848a3b46e90a77834b7ae7', 1, 'BarycentricPolynomial::memory_consumption()'],\n ['../classBarycentricPolynomials.html#a22606fbf9575fc965f782fba91d05f78', 1, 'BarycentricPolynomials::memory_consumption()'],\n ['../classPolynomials_1_1PiecewisePolynomial.html#aa7def5f70dc84e9e5529709975c8b998', 1, 'Polynomials::PiecewisePolynomial::memory_consumption()'],\n ['../classQuadrature.html#a2bf320fb4bcb0b047d568f66147d2f9f', 1, 'Quadrature::memory_consumption()'],\n ['../classScalarPolynomialsBase.html#aea426c67195b05f20be188da176be01f', 1, 'ScalarPolynomialsBase::memory_consumption()'],\n ['../classSmartPointer.html#ac050a2ec21d5b3c7d70571a6b99e3ae8', 1, 'SmartPointer::memory_consumption()'],\n ['../classSymmetricTensor.html#a23a947df6f8459a131d87225c94aeb1a', 1, 'SymmetricTensor::memory_consumption()'],\n- ['../classTableBase.html#a2c63db9ae49e0e3b099f0244801016f2', 1, 'TableBase::memory_consumption()'],\n- ['../classTensor.html#aa684a29980c5e7787414e35636b5d0dc', 1, 'Tensor::memory_consumption()'],\n- ['../classTensorProductPolynomials.html#a15d0a5bf5b373b508703f802b8ecc2ef', 1, 'TensorProductPolynomials::memory_consumption()'],\n- ['../classFunctions_1_1InterpolatedUniformGridData.html#aeedef0a7c09f521c5e16bbcbd4951289', 1, 'Functions::InterpolatedUniformGridData::memory_consumption()'],\n- ['../classFunctions_1_1InterpolatedTensorProductGridData.html#a996a3f8871bc5a626b78f9933a25efe9', 1, 'Functions::InterpolatedTensorProductGridData::memory_consumption()'],\n- ['../classFunctions_1_1JumpFunction.html#a6b2746bc10c623cdc8a13c1e6b6652eb', 1, 'Functions::JumpFunction::memory_consumption()'],\n- ['../classFunctionDerivative.html#a046459a557118c1bb97f457b52b056bb', 1, 'FunctionDerivative::memory_consumption()'],\n- ['../structinternal_1_1TriangulationImplementation_1_1TriaObjects_1_1BoundaryOrMaterialId.html#ab735cb2a7ad10955001293ff10b715e4', 1, 'internal::TriangulationImplementation::TriaObjects::BoundaryOrMaterialId::memory_consumption()'],\n+ ['../structinternal_1_1TriangulationImplementation_1_1NumberCache_3_012_01_4.html#aeb30e346019b1cc069e392739625d661', 1, 'internal::TriangulationImplementation::NumberCache< 2 >::memory_consumption()'],\n+ ['../classLinearAlgebra_1_1distributed_1_1Vector.html#ab2c9d66b88b4f6cc49efcf31714cd70c', 1, 'LinearAlgebra::distributed::Vector::memory_consumption()'],\n+ ['../classMatrixBlock.html#a333bcdbfb77e9fc6a1c0372c4e4f8e81', 1, 'MatrixBlock::memory_consumption()'],\n+ ['../classMatrixBlockVector.html#ab7e0ef2ade03e5cc43f1ab17c93e803a', 1, 'MatrixBlockVector::memory_consumption()'],\n+ ['../classMGMatrixBlockVector.html#ab6784d1c51de85038224c7e5d23c561d', 1, 'MGMatrixBlockVector::memory_consumption()'],\n+ ['../classPArpackSolver.html#aaa32562cd1f1073587fbe447c219d184', 1, 'PArpackSolver::memory_consumption()'],\n+ ['../classFE__Poly.html#aecf803c7afc41d6923006fcce75030a7', 1, 'FE_Poly::memory_consumption()'],\n+ ['../classPETScWrappers_1_1MatrixBase.html#a0af7a8873fc01cd20682e079dbb8f225', 1, 'PETScWrappers::MatrixBase::memory_consumption()'],\n+ ['../classinternal_1_1TriangulationImplementation_1_1TriaFaces.html#a7d34736969ff82c87964394bf999136c', 1, 'internal::TriangulationImplementation::TriaFaces::memory_consumption()'],\n+ ['../classTriangulation.html#a4a63bdde5124e79a1370f29499128518', 1, 'Triangulation::memory_consumption()'],\n+ ['../structinternal_1_1TriangulationImplementation_1_1NumberCache_3_013_01_4.html#a483bb5fe076954ea55ae613416915e15', 1, 'internal::TriangulationImplementation::NumberCache< 3 >::memory_consumption()'],\n+ ['../classLinearAlgebra_1_1distributed_1_1BlockVector.html#a6cab0923a6ac1a75a825d64aee16217c', 1, 'LinearAlgebra::distributed::BlockVector::memory_consumption()'],\n+ ['../structinternal_1_1TriangulationImplementation_1_1NumberCache_3_011_01_4.html#a83cbd32ee5f0b8f5f7185a94a8743515', 1, 'internal::TriangulationImplementation::NumberCache< 1 >::memory_consumption()'],\n+ ['../classReferenceCell.html#ad7d724296b249fb034bb6434241f46a3', 1, 'ReferenceCell::memory_consumption()'],\n+ ['../classPersistentTriangulation.html#a70e1c08d9b42c0c8246049f0f5a90ac5', 1, 'PersistentTriangulation::memory_consumption()'],\n+ ['../classInterGridMap.html#a457c93488d99d449ca7e5fa2ed215b41', 1, 'InterGridMap::memory_consumption()'],\n+ ['../structGridTools_1_1PeriodicFacePair.html#a25f5c9851264f7872e96858e75e56a85', 1, 'GridTools::PeriodicFacePair::memory_consumption()'],\n+ ['../classGridOut.html#aa6acf2f12ea704d18c211514fb1937d1', 1, 'GridOut::memory_consumption()'],\n+ ['../classinternal_1_1FEValuesImplementation_1_1MappingRelatedData.html#ae768e88ff57dfe210cd8cac217ae266a', 1, 'internal::FEValuesImplementation::MappingRelatedData::memory_consumption()'],\n+ ['../classMappingQCache.html#a2ec1b572003e45fbd23c03009b2bcd7d', 1, 'MappingQCache::memory_consumption()'],\n+ ['../classMappingQ_1_1InternalData.html#a38af12857d878cd5e48d4178e61c063a', 1, 'MappingQ::InternalData::memory_consumption()'],\n+ ['../classBlockIndices.html#af2912535b1fd6771b30b8f33488c4d7d', 1, 'BlockIndices::memory_consumption()'],\n+ ['../structDynamicSparsityPattern_1_1Line.html#a8ce1ea0b380414c764fa476e00f06fe8', 1, 'DynamicSparsityPattern::Line::memory_consumption()'],\n+ ['../classDynamicSparsityPattern.html#a4ea4e31b3e4790ef4ba31c687567a032', 1, 'DynamicSparsityPattern::memory_consumption()'],\n+ ['../classDiagonalMatrix.html#a8179c0423836bceec9fe3f159184ecf2', 1, 'DiagonalMatrix::memory_consumption()'],\n+ ['../classLinearAlgebra_1_1CUDAWrappers_1_1Vector.html#aea73d2cb54e87b69a9b7cdb17ed274df', 1, 'LinearAlgebra::CUDAWrappers::Vector::memory_consumption()'],\n+ ['../classChunkSparsityPattern.html#a3ec280990051f39f9a2e72fc9904f298', 1, 'ChunkSparsityPattern::memory_consumption()'],\n+ ['../classChunkSparseMatrix.html#ade39cbfa1db0d00d455a7497790918cd', 1, 'ChunkSparseMatrix::memory_consumption()'],\n ['../classBlockVectorBase.html#a5111c67df76150d72e1cbd528988bdf3', 1, 'BlockVectorBase::memory_consumption()'],\n ['../classBlockSparsityPatternBase.html#a7a1be5be9406b2bfcd9898b875c7105c', 1, 'BlockSparsityPatternBase::memory_consumption()'],\n ['../classBlockSparseMatrix.html#a33c4f17dc23a7ca73d167f34450e1db1', 1, 'BlockSparseMatrix::memory_consumption()'],\n ['../classBlockMatrixBase.html#a9e0ef9c39b0f6e1e5f69ca8eb58e9ac9', 1, 'BlockMatrixBase::memory_consumption()'],\n- ['../classBlockIndices.html#af2912535b1fd6771b30b8f33488c4d7d', 1, 'BlockIndices::memory_consumption()'],\n+ ['../classMappingManifold_1_1InternalData.html#a6728f8e5d1b93e2684adc3d7fb88ad3f', 1, 'MappingManifold::InternalData::memory_consumption()'],\n ['../structAffineConstraints_1_1ConstraintLine.html#aa40b2fe498b6bdb28b6d6560f0de57de', 1, 'AffineConstraints::ConstraintLine::memory_consumption()'],\n ['../classAffineConstraints.html#a418e2721b2f0be9d5ac15babb407e9ac', 1, 'AffineConstraints::memory_consumption()'],\n ['../classhp_1_1Collection.html#aa8900b5562cbfa4523e0aff131ad3190', 1, 'hp::Collection::memory_consumption()'],\n ['../classinternal_1_1TriangulationImplementation_1_1TriaObjectsOrientations.html#ad6fa46d3091368ab9ac318d975ad2bb7', 1, 'internal::TriangulationImplementation::TriaObjectsOrientations::memory_consumption()'],\n ['../classinternal_1_1TriangulationImplementation_1_1TriaObjects.html#a3e1855286e4c2febfdde9b67f69da8a8', 1, 'internal::TriangulationImplementation::TriaObjects::memory_consumption()'],\n- ['../classChunkSparseMatrix.html#ade39cbfa1db0d00d455a7497790918cd', 1, 'ChunkSparseMatrix::memory_consumption()'],\n+ ['../classFullMatrix.html#a0d7fe46def6d7eada6e4bae55e2778ef', 1, 'FullMatrix::memory_consumption()'],\n+ ['../structinternal_1_1TriangulationImplementation_1_1TriaObjects_1_1BoundaryOrMaterialId.html#ab735cb2a7ad10955001293ff10b715e4', 1, 'internal::TriangulationImplementation::TriaObjects::BoundaryOrMaterialId::memory_consumption()'],\n ['../classinternal_1_1TriangulationImplementation_1_1TriaLevel.html#a5d2b4a827f49c2adcf159e334675c31a', 1, 'internal::TriangulationImplementation::TriaLevel::memory_consumption()'],\n ['../classTriaRawIterator.html#a25ead0f86e2ca288e50844f0b1f8100f', 1, 'TriaRawIterator::memory_consumption()'],\n- ['../classinternal_1_1TriangulationImplementation_1_1TriaFaces.html#a7d34736969ff82c87964394bf999136c', 1, 'internal::TriangulationImplementation::TriaFaces::memory_consumption()'],\n- ['../classTriangulation.html#a4a63bdde5124e79a1370f29499128518', 1, 'Triangulation::memory_consumption()'],\n- ['../structinternal_1_1TriangulationImplementation_1_1NumberCache_3_013_01_4.html#a483bb5fe076954ea55ae613416915e15', 1, 'internal::TriangulationImplementation::NumberCache< 3 >::memory_consumption()'],\n- ['../structinternal_1_1TriangulationImplementation_1_1NumberCache_3_012_01_4.html#aeb30e346019b1cc069e392739625d661', 1, 'internal::TriangulationImplementation::NumberCache< 2 >::memory_consumption()'],\n- ['../structinternal_1_1TriangulationImplementation_1_1NumberCache_3_011_01_4.html#a83cbd32ee5f0b8f5f7185a94a8743515', 1, 'internal::TriangulationImplementation::NumberCache< 1 >::memory_consumption()'],\n- ['../classReferenceCell.html#ad7d724296b249fb034bb6434241f46a3', 1, 'ReferenceCell::memory_consumption()'],\n- ['../classPersistentTriangulation.html#a70e1c08d9b42c0c8246049f0f5a90ac5', 1, 'PersistentTriangulation::memory_consumption()'],\n- ['../classInterGridMap.html#a457c93488d99d449ca7e5fa2ed215b41', 1, 'InterGridMap::memory_consumption()'],\n- ['../classMGMatrixBlockVector.html#ab6784d1c51de85038224c7e5d23c561d', 1, 'MGMatrixBlockVector::memory_consumption()'],\n+ ['../classMappingFEField_1_1InternalData.html#a5f02898bccf7e9c9ed5696995a48d186', 1, 'MappingFEField::InternalData::memory_consumption()'],\n+ ['../classFE__Q__Hierarchical.html#acb138b4b17544e57a08056f1d7d9d23e', 1, 'FE_Q_Hierarchical::memory_consumption()'],\n+ ['../classFE__RaviartThomas.html#a06211371bfe08ec6e6b7910706f9def4', 1, 'FE_RaviartThomas::memory_consumption()'],\n ['../classSparseMatrix.html#a78ec5962de50e44c1101ac48bd277b75', 1, 'SparseMatrix::memory_consumption()'],\n ['../classSparseILU.html#acae03317cb1ef19e319d0196f8c2bf69', 1, 'SparseILU::memory_consumption()'],\n ['../classSparseLUDecomposition.html#aae34cbd15aa13aba61e33aa1e23a5729', 1, 'SparseLUDecomposition::memory_consumption()'],\n ['../classRelaxationBlock_1_1AdditionalData.html#ac72f73e394b54fed87270a80a595a14e', 1, 'RelaxationBlock::AdditionalData::memory_consumption()'],\n ['../classLinearAlgebra_1_1ReadWriteVector.html#a2457ff17e4f00e2a964769dfcefebdb3', 1, 'LinearAlgebra::ReadWriteVector::memory_consumption()'],\n ['../classPreconditionBlockBase.html#a12097d9d1a25190c639d74dd3ddc5b9a', 1, 'PreconditionBlockBase::memory_consumption()'],\n ['../classPreconditionBlock.html#a92c61ba3ca1164efcc1d0874ec32111d', 1, 'PreconditionBlock::memory_consumption()'],\n ['../classPETScWrappers_1_1VectorBase.html#a49cd6e2cf47c7d44cbcbb9bdd44613fd', 1, 'PETScWrappers::VectorBase::memory_consumption()'],\n- ['../classPETScWrappers_1_1MatrixBase.html#a0af7a8873fc01cd20682e079dbb8f225', 1, 'PETScWrappers::MatrixBase::memory_consumption()'],\n- ['../classPArpackSolver.html#aaa32562cd1f1073587fbe447c219d184', 1, 'PArpackSolver::memory_consumption()'],\n- ['../classFE__Q__Hierarchical.html#acb138b4b17544e57a08056f1d7d9d23e', 1, 'FE_Q_Hierarchical::memory_consumption()'],\n- ['../classMatrixBlockVector.html#ab7e0ef2ade03e5cc43f1ab17c93e803a', 1, 'MatrixBlockVector::memory_consumption()'],\n- ['../classMatrixBlock.html#a333bcdbfb77e9fc6a1c0372c4e4f8e81', 1, 'MatrixBlock::memory_consumption()'],\n- ['../classLinearAlgebra_1_1distributed_1_1Vector.html#ab2c9d66b88b4f6cc49efcf31714cd70c', 1, 'LinearAlgebra::distributed::Vector::memory_consumption()'],\n- ['../classLinearAlgebra_1_1distributed_1_1BlockVector.html#a6cab0923a6ac1a75a825d64aee16217c', 1, 'LinearAlgebra::distributed::BlockVector::memory_consumption()'],\n- ['../classFullMatrix.html#a0d7fe46def6d7eada6e4bae55e2778ef', 1, 'FullMatrix::memory_consumption()'],\n- ['../structDynamicSparsityPattern_1_1Line.html#a8ce1ea0b380414c764fa476e00f06fe8', 1, 'DynamicSparsityPattern::Line::memory_consumption()'],\n- ['../classDynamicSparsityPattern.html#a4ea4e31b3e4790ef4ba31c687567a032', 1, 'DynamicSparsityPattern::memory_consumption()'],\n- ['../classDiagonalMatrix.html#a8179c0423836bceec9fe3f159184ecf2', 1, 'DiagonalMatrix::memory_consumption()'],\n- ['../classLinearAlgebra_1_1CUDAWrappers_1_1Vector.html#aea73d2cb54e87b69a9b7cdb17ed274df', 1, 'LinearAlgebra::CUDAWrappers::Vector::memory_consumption()'],\n- ['../classChunkSparsityPattern.html#a3ec280990051f39f9a2e72fc9904f298', 1, 'ChunkSparsityPattern::memory_consumption()'],\n- ['../classGridOut.html#aa6acf2f12ea704d18c211514fb1937d1', 1, 'GridOut::memory_consumption()'],\n- ['../classFESystem.html#aee119185633ea5d7c1c94f1ff29dea1b', 1, 'FESystem::memory_consumption()'],\n- ['../structGridTools_1_1PeriodicFacePair.html#a25f5c9851264f7872e96858e75e56a85', 1, 'GridTools::PeriodicFacePair::memory_consumption()'],\n ['../classinternal_1_1FEValuesImplementation_1_1FiniteElementRelatedData.html#ab0076ea8b1a829e55174c10b982fc2ec', 1, 'internal::FEValuesImplementation::FiniteElementRelatedData::memory_consumption()'],\n ['../classFEValues.html#af649ad9baf7e58a6d43e266dec5523d9', 1, 'FEValues::memory_consumption()'],\n+ ['../classMappingFE_1_1InternalData.html#ab52cbcb9a0043bd6905f140f866cddfa', 1, 'MappingFE::InternalData::memory_consumption()'],\n ['../classFEFaceValuesBase.html#acfca7db5920e079dd40f21a17f4aae89', 1, 'FEFaceValuesBase::memory_consumption()'],\n- ['../classFE__RaviartThomas.html#a06211371bfe08ec6e6b7910706f9def4', 1, 'FE_RaviartThomas::memory_consumption()'],\n- ['../classFE__Poly.html#aecf803c7afc41d6923006fcce75030a7', 1, 'FE_Poly::memory_consumption()'],\n ['../classFEValuesBase.html#a821f21ed0d993cae6df69f41d99f68a2', 1, 'FEValuesBase::memory_consumption()'],\n ['../classMappingCartesian_1_1InternalData.html#afa3e547d78645ca80f37bbc1f2b828a7', 1, 'MappingCartesian::InternalData::memory_consumption()'],\n- ['../classMappingFE_1_1InternalData.html#ab52cbcb9a0043bd6905f140f866cddfa', 1, 'MappingFE::InternalData::memory_consumption()'],\n- ['../classMappingFEField_1_1InternalData.html#a5f02898bccf7e9c9ed5696995a48d186', 1, 'MappingFEField::InternalData::memory_consumption()'],\n- ['../classMapping_1_1InternalDataBase.html#ab7b920cdcb2c10bc4d1df0515c20d7c8', 1, 'Mapping::InternalDataBase::memory_consumption()'],\n- ['../classinternal_1_1FEValuesImplementation_1_1MappingRelatedData.html#ae768e88ff57dfe210cd8cac217ae266a', 1, 'internal::FEValuesImplementation::MappingRelatedData::memory_consumption()'],\n- ['../classMappingManifold_1_1InternalData.html#a6728f8e5d1b93e2684adc3d7fb88ad3f', 1, 'MappingManifold::InternalData::memory_consumption()'],\n- ['../classMappingQCache.html#a2ec1b572003e45fbd23c03009b2bcd7d', 1, 'MappingQCache::memory_consumption()'],\n- ['../classMappingQ_1_1InternalData.html#a38af12857d878cd5e48d4178e61c063a', 1, 'MappingQ::InternalData::memory_consumption()']\n+ ['../classFESystem.html#aee119185633ea5d7c1c94f1ff29dea1b', 1, 'FESystem::memory_consumption()'],\n+ ['../classMapping_1_1InternalDataBase.html#ab7b920cdcb2c10bc4d1df0515c20d7c8', 1, 'Mapping::InternalDataBase::memory_consumption()']\n ]],\n ['memory_5fconsumption_2eh_448', ['memory_consumption.h', ['../memory__consumption_8h.html', 1, '']]],\n ['memory_5fconsumption_5fp4est_449', ['memory_consumption_p4est', ['../classparallel_1_1distributed_1_1Triangulation.html#acab8b83719be2541acc3c2197b3cbe05', 1, 'parallel::distributed::Triangulation']]],\n- ['memory_5fspace_450', ['memory_space', ['../classLinearAlgebra_1_1distributed_1_1Vector.html#ae018e039c0ca78a063c6a075be461283', 1, 'LinearAlgebra::distributed::Vector::memory_space'],\n- ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1PointIntersectPredicate_00_01PredicatesTag_01_4.html#af81addd355ed7378b53f9692657ba1a3', 1, 'ArborX::AccessTraits<::ArborXWrappers::PointIntersectPredicate, PredicatesTag >::memory_space'],\n- ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1PointNearestPredicate_00_01PredicatesTag_01_4.html#a8ab15d71c41b64b7b2a1878b865fe76d', 1, 'ArborX::AccessTraits<::ArborXWrappers::PointNearestPredicate, PredicatesTag >::memory_space'],\n- ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1BoundingBoxIntersectPredicate_00_01PredicatesTag_01_4.html#aef4a076c7f086a26d56e5a15b768b613', 1, 'ArborX::AccessTraits<::ArborXWrappers::BoundingBoxIntersectPredicate, PredicatesTag >::memory_space'],\n- ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1BoundingBoxNearestPredicate_00_01PredicatesTag_01_4.html#aa0101fc92b2252363439d87940bab991', 1, 'ArborX::AccessTraits<::ArborXWrappers::BoundingBoxNearestPredicate, PredicatesTag >::memory_space'],\n- ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1SphereIntersectPredicate_00_01PredicatesTag_01_4.html#a118d857e5e5ff26480dfd681193eeab2', 1, 'ArborX::AccessTraits<::ArborXWrappers::SphereIntersectPredicate, PredicatesTag >::memory_space'],\n- ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1SphereNearestPredicate_00_01PredicatesTag_01_4.html#a665aa087cd0849edba399e7b0baa511c', 1, 'ArborX::AccessTraits<::ArborXWrappers::SphereNearestPredicate, PredicatesTag >::memory_space'],\n+ ['memory_5fspace_450', ['memory_space', ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1SphereNearestPredicate_00_01PredicatesTag_01_4.html#a665aa087cd0849edba399e7b0baa511c', 1, 'ArborX::AccessTraits<::ArborXWrappers::SphereNearestPredicate, PredicatesTag >::memory_space'],\n ['../structArborX_1_1AccessTraits_3_01std_1_1vector_3_01std_1_1pair_3_1_1Point_3_01dim_00_01Number_01638372801dad5ec1738e0cef00bf18d8.html#a6f0569f773c85c2224d25bdfe249d9db', 1, 'ArborX::AccessTraits< std::vector< std::pair<::Point< dim, Number >, Number > >, PrimitivesTag >::memory_space'],\n+ ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1SphereIntersectPredicate_00_01PredicatesTag_01_4.html#a118d857e5e5ff26480dfd681193eeab2', 1, 'ArborX::AccessTraits<::ArborXWrappers::SphereIntersectPredicate, PredicatesTag >::memory_space'],\n+ ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1BoundingBoxNearestPredicate_00_01PredicatesTag_01_4.html#aa0101fc92b2252363439d87940bab991', 1, 'ArborX::AccessTraits<::ArborXWrappers::BoundingBoxNearestPredicate, PredicatesTag >::memory_space'],\n+ ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1BoundingBoxIntersectPredicate_00_01PredicatesTag_01_4.html#aef4a076c7f086a26d56e5a15b768b613', 1, 'ArborX::AccessTraits<::ArborXWrappers::BoundingBoxIntersectPredicate, PredicatesTag >::memory_space'],\n+ ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1PointNearestPredicate_00_01PredicatesTag_01_4.html#a8ab15d71c41b64b7b2a1878b865fe76d', 1, 'ArborX::AccessTraits<::ArborXWrappers::PointNearestPredicate, PredicatesTag >::memory_space'],\n+ ['../structArborX_1_1AccessTraits_3_1_1ArborXWrappers_1_1PointIntersectPredicate_00_01PredicatesTag_01_4.html#af81addd355ed7378b53f9692657ba1a3', 1, 'ArborX::AccessTraits<::ArborXWrappers::PointIntersectPredicate, PredicatesTag >::memory_space'],\n+ ['../classLinearAlgebra_1_1distributed_1_1Vector.html#ae018e039c0ca78a063c6a075be461283', 1, 'LinearAlgebra::distributed::Vector::memory_space'],\n ['../structArborX_1_1AccessTraits_3_01std_1_1vector_3_1_1BoundingBox_3_01dim_00_01Number_01_4_01_4_00_01PrimitivesTag_01_4.html#ad09166bab83cdd96b0e439b7129157d3', 1, 'ArborX::AccessTraits< std::vector<::BoundingBox< dim, Number > >, PrimitivesTag >::memory_space'],\n ['../structArborX_1_1AccessTraits_3_01std_1_1vector_3_1_1Point_3_01dim_00_01Number_01_4_01_4_00_01PrimitivesTag_01_4.html#a90bbd2096484285b341b6a1306ca4d1a', 1, 'ArborX::AccessTraits< std::vector<::Point< dim, Number > >, PrimitivesTag >::memory_space']\n ]],\n ['memory_5fspace_2eh_451', ['memory_space.h', ['../memory__space_8h.html', 1, '']]],\n ['memory_5fspace_5fdata_2eh_452', ['memory_space_data.h', ['../memory__space__data_8h.html', 1, '']]],\n ['memoryconsumption_453', ['MemoryConsumption', ['../namespaceMemoryConsumption.html', 1, '']]],\n ['memoryspace_454', ['MemorySpace', ['../namespaceMemorySpace.html', 1, '']]],\n ['memoryspacedata_455', ['memoryspacedata', ['../structMemorySpace_1_1MemorySpaceData.html', 1, 'MemorySpace::MemorySpaceData< T, MemorySpace >'],\n ['../structMemorySpace_1_1MemorySpaceData.html#a67935c581850826e767a66bc9c842ed0', 1, 'MemorySpace::MemorySpaceData::MemorySpaceData()']\n ]],\n ['memoryspacedata_3c_20double_2c_20memoryspace_3a_3ahost_20_3e_456', ['MemorySpaceData< double, MemorySpace::Host >', ['../structMemorySpace_1_1MemorySpaceData.html', 1, 'MemorySpace']]],\n ['memoryspacedata_3c_20number_2c_20memoryspace_3a_3ahost_20_3e_457', ['MemorySpaceData< Number, MemorySpace::Host >', ['../structMemorySpace_1_1MemorySpaceData.html', 1, 'MemorySpace']]],\n ['memorystats_458', ['MemoryStats', ['../structUtilities_1_1System_1_1MemoryStats.html', 1, 'Utilities::System']]],\n- ['merge_459', ['merge', ['../classAnyData.html#a8153b8b6e7595586dd950fc9dc83a05b', 1, 'AnyData::merge()'],\n- ['../classGeneralDataStorage.html#a35455a2d6cb06887738e7a4baf6cc3cc', 1, 'GeneralDataStorage::merge()'],\n- ['../classDataOutReader.html#a2eff9f62f603ce196fc4681fcd5535dc', 1, 'DataOutReader::merge()'],\n+ ['merge_459', ['merge', ['../namespaceinternal_1_1SymmetricTensorAccessors.html#a0aad8d81ea6c0e4cc2345436d11c2025', 1, 'internal::SymmetricTensorAccessors::merge()'],\n+ ['../classAnyData.html#a8153b8b6e7595586dd950fc9dc83a05b', 1, 'AnyData::merge()'],\n ['../classAffineConstraints.html#a27c4ad2b7a23985308ec224f7e0528af', 1, 'AffineConstraints::merge()'],\n- ['../namespaceinternal_1_1SymmetricTensorAccessors.html#a0aad8d81ea6c0e4cc2345436d11c2025', 1, 'internal::SymmetricTensorAccessors::merge(const TableIndices< 4 > &previous_indices, const unsigned int new_index, const unsigned int position)'],\n- ['../namespaceinternal_1_1SymmetricTensorAccessors.html#ab31d9d284c3f3dc3fe3d307d996da197', 1, 'internal::SymmetricTensorAccessors::merge(const TableIndices< 2 > &previous_indices, const unsigned int new_index, const unsigned int position)']\n+ ['../classDataOutReader.html#a2eff9f62f603ce196fc4681fcd5535dc', 1, 'DataOutReader::merge()'],\n+ ['../classGeneralDataStorage.html#a35455a2d6cb06887738e7a4baf6cc3cc', 1, 'GeneralDataStorage::merge()'],\n+ ['../namespaceinternal_1_1SymmetricTensorAccessors.html#ab31d9d284c3f3dc3fe3d307d996da197', 1, 'internal::SymmetricTensorAccessors::merge()']\n ]],\n ['merge_5fconstraints_460', ['merge_constraints', ['../classMGConstrainedDoFs.html#a533c19ed862c009ead87ae84f6e9f1e5', 1, 'MGConstrainedDoFs']]],\n ['merge_5finvalid_5fdof_5findices_5fon_5fghost_5finterfaces_461', ['merge_invalid_dof_indices_on_ghost_interfaces', ['../structinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Implementation.html#a5897d179d651d2d0b724d9a5bf564666', 1, 'internal::DoFHandlerImplementation::Policy::Implementation']]],\n ['merge_5finvalid_5fline_5fdofs_5fon_5fghost_5finterfaces_462', ['merge_invalid_line_dofs_on_ghost_interfaces', ['../structinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Implementation.html#a7a5263a84a2492240861118cb6bbfcaa', 1, 'internal::DoFHandlerImplementation::Policy::Implementation::merge_invalid_line_dofs_on_ghost_interfaces(DoFHandler< 1, spacedim > &dof_handler)'],\n ['../structinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Implementation.html#a47cbf89dd956ec099801531f38453b0f', 1, 'internal::DoFHandlerImplementation::Policy::Implementation::merge_invalid_line_dofs_on_ghost_interfaces(DoFHandler< dim, spacedim > &dof_handler)']\n ]],\n ['merge_5finvalid_5fquad_5fdofs_5fon_5fghost_5finterfaces_463', ['merge_invalid_quad_dofs_on_ghost_interfaces', ['../structinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Implementation.html#a1b59996bfdacb89b3ace6b10a0dee43e', 1, 'internal::DoFHandlerImplementation::Policy::Implementation::merge_invalid_quad_dofs_on_ghost_interfaces(DoFHandler< 3, spacedim > &dof_handler)'],\n ['../structinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Implementation.html#ad4da192fa097209fff32abbf5b362f35', 1, 'internal::DoFHandlerImplementation::Policy::Implementation::merge_invalid_quad_dofs_on_ghost_interfaces(DoFHandler< dim, spacedim > &dof_handler)']\n ]],\n ['merge_5finvalid_5fvertex_5fdofs_5fon_5fghost_5finterfaces_464', ['merge_invalid_vertex_dofs_on_ghost_interfaces', ['../structinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Implementation.html#a69a642fba4629c524c20f584baf32f71', 1, 'internal::DoFHandlerImplementation::Policy::Implementation']]],\n ['merge_5fpatches_465', ['merge_patches', ['../classDataOut__DoFData.html#a3c7605d51f91376a851ec77b0a7003aa', 1, 'DataOut_DoFData']]],\n- ['merge_5fsubstitution_5fmaps_466', ['merge_substitution_maps', ['../namespaceDifferentiation_1_1SD.html#acdb17fa362a5c250b1d37a705d4b0655', 1, 'Differentiation::SD::merge_substitution_maps(const types::substitution_map &substitution_map_in, const Args &...other_substitution_maps_in)'],\n- ['../namespaceDifferentiation_1_1SD.html#a0a4b28220f9831603fc18a94bff2e435', 1, 'Differentiation::SD::merge_substitution_maps(types::substitution_map &substitution_map_out, const types::substitution_map &substitution_map_in, const Args &...other_substitution_maps_in)'],\n- ['../namespaceDifferentiation_1_1SD.html#a2a5ba04d787e659f4b72565d82da814f', 1, 'Differentiation::SD::merge_substitution_maps(types::substitution_map &substitution_map_out, const types::substitution_map &substitution_map_in)']\n+ ['merge_5fsubstitution_5fmaps_466', ['merge_substitution_maps', ['../namespaceDifferentiation_1_1SD.html#a0a4b28220f9831603fc18a94bff2e435', 1, 'Differentiation::SD::merge_substitution_maps(types::substitution_map &substitution_map_out, const types::substitution_map &substitution_map_in, const Args &...other_substitution_maps_in)'],\n+ ['../namespaceDifferentiation_1_1SD.html#a2a5ba04d787e659f4b72565d82da814f', 1, 'Differentiation::SD::merge_substitution_maps(types::substitution_map &substitution_map_out, const types::substitution_map &substitution_map_in)'],\n+ ['../namespaceDifferentiation_1_1SD.html#acdb17fa362a5c250b1d37a705d4b0655', 1, 'Differentiation::SD::merge_substitution_maps(const types::substitution_map &substitution_map_in, const Args &...other_substitution_maps_in)']\n ]],\n- ['merge_5ftriangulations_467', ['merge_triangulations', ['../namespaceGridGenerator.html#abb67c840011f54ff21f183cad97e4b68', 1, 'GridGenerator::merge_triangulations(const std::vector< const Triangulation< dim, spacedim > * > &triangulations, Triangulation< dim, spacedim > &result, const double duplicated_vertex_tolerance=1.0e-12, const bool copy_manifold_ids=false, const bool copy_boundary_ids=false)'],\n- ['../namespaceGridGenerator.html#ae6b11dc96dd9165e25495f74def3655d', 1, 'GridGenerator::merge_triangulations(const Triangulation< dim, spacedim > &triangulation_1, const Triangulation< dim, spacedim > &triangulation_2, Triangulation< dim, spacedim > &result, const double duplicated_vertex_tolerance=1.0e-12, const bool copy_manifold_ids=false, const bool copy_boundary_ids=false)']\n+ ['merge_5ftriangulations_467', ['merge_triangulations', ['../namespaceGridGenerator.html#ae6b11dc96dd9165e25495f74def3655d', 1, 'GridGenerator::merge_triangulations(const Triangulation< dim, spacedim > &triangulation_1, const Triangulation< dim, spacedim > &triangulation_2, Triangulation< dim, spacedim > &result, const double duplicated_vertex_tolerance=1.0e-12, const bool copy_manifold_ids=false, const bool copy_boundary_ids=false)'],\n+ ['../namespaceGridGenerator.html#abb67c840011f54ff21f183cad97e4b68', 1, 'GridGenerator::merge_triangulations(const std::vector< const Triangulation< dim, spacedim > * > &triangulations, Triangulation< dim, spacedim > &result, const double duplicated_vertex_tolerance=1.0e-12, const bool copy_manifold_ids=false, const bool copy_boundary_ids=false)']\n ]],\n ['merge_5fwith_468', ['merge_with', ['../classBoundingBox.html#a42c078e3aed8dee5059089bebe26d854', 1, 'BoundingBox']]],\n ['mergeable_5fneighbors_469', ['mergeable_neighbors', ['../base_2bounding__box_8h.html#a47fe320df2963aca0fe0ef0cc918bf3fa994dd787bbee1e6a25f771c4bdae7cf2', 1, 'bounding_box.h']]],\n ['mergeconflictbehavior_470', ['MergeConflictBehavior', ['../classAffineConstraints.html#a3b54f13f985552be5a78ac928258daed', 1, 'AffineConstraints']]],\n ['mesh_471', ['mesh', ['../group__simplex.html#simplex_reference_example_mixed', 1, 'Example: mixed mesh'],\n ['../group__simplex.html#simplex_reference_example_simplex', 1, 'Example: simplex mesh']\n ]],\n@@ -1637,17 +1637,17 @@\n ['mpi_5fcommunicator_676', ['mpi_communicator', ['../classSUNDIALS_1_1IDA.html#a2096cd038c7a2a1c3b4d150c9e6a8cf1', 1, 'SUNDIALS::IDA::mpi_communicator'],\n ['../classUtilities_1_1MPI_1_1ProcessGrid.html#a008060e7491aa63e8038f6098b1908e4', 1, 'Utilities::MPI::ProcessGrid::mpi_communicator'],\n ['../classTimer.html#a7c73b79c2b7c36b430491ab1016ffe99', 1, 'Timer::mpi_communicator'],\n ['../classSUNDIALS_1_1ARKode.html#a63a3be391429def0384ebf67d4b8e956', 1, 'SUNDIALS::ARKode::mpi_communicator'],\n ['../classSUNDIALS_1_1KINSOL.html#a32411db34b25d0ffd1910fc1561531a7', 1, 'SUNDIALS::KINSOL::mpi_communicator'],\n ['../classTimerOutput.html#a0e9b67a6573bfbe4a820a019d7c824e4', 1, 'TimerOutput::mpi_communicator'],\n ['../classparallel_1_1TriangulationBase.html#a55959d63f6a4e18cae86f005df8605ec', 1, 'parallel::TriangulationBase::mpi_communicator'],\n- ['../classPArpackSolver.html#a116dc1ee5bc0db8f06083a5d0439f0ce', 1, 'PArpackSolver::mpi_communicator'],\n ['../classNonlinearSolverSelector.html#ac656d2d6ba1df2ee82c905c1fe8039dc', 1, 'NonlinearSolverSelector::mpi_communicator'],\n- ['../classSLEPcWrappers_1_1SolverBase.html#a3ec98bb2955c5521f06ee42ca210b2f8', 1, 'SLEPcWrappers::SolverBase::mpi_communicator']\n+ ['../classSLEPcWrappers_1_1SolverBase.html#a3ec98bb2955c5521f06ee42ca210b2f8', 1, 'SLEPcWrappers::SolverBase::mpi_communicator'],\n+ ['../classPArpackSolver.html#a116dc1ee5bc0db8f06083a5d0439f0ce', 1, 'PArpackSolver::mpi_communicator']\n ]],\n ['mpi_5fcommunicator_5ffortran_677', ['mpi_communicator_fortran', ['../classPArpackSolver.html#ab10a005b027a53c953e1518699705c06', 1, 'PArpackSolver']]],\n ['mpi_5fcommunicator_5finactive_5fwith_5froot_678', ['mpi_communicator_inactive_with_root', ['../classUtilities_1_1MPI_1_1ProcessGrid.html#a52f9cdeea2b23224c0e7c736e19b16be', 1, 'Utilities::MPI::ProcessGrid']]],\n ['mpi_5fcompute_5findex_5fowner_5finternal_2ecc_679', ['mpi_compute_index_owner_internal.cc', ['../mpi__compute__index__owner__internal_8cc.html', 1, '']]],\n ['mpi_5fcompute_5findex_5fowner_5finternal_2eh_680', ['mpi_compute_index_owner_internal.h', ['../mpi__compute__index__owner__internal_8h.html', 1, '']]],\n ['mpi_5fconsensus_5falgorithms_2eh_681', ['mpi_consensus_algorithms.h', ['../mpi__consensus__algorithms_8h.html', 1, '']]],\n ['mpi_5finitfinalize_682', ['mpi_initfinalize', ['../classUtilities_1_1MPI_1_1MPI__InitFinalize.html', 1, 'Utilities::MPI::MPI_InitFinalize'],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1b.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1b.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -558,22 +558,22 @@\n ['petscwrappers_300', ['petscwrappers', ['../namespacePETScWrappers.html', 1, 'PETScWrappers'],\n ['../group__PETScWrappers.html', 1, 'PETScWrappers']\n ]],\n ['petscwrappers_3a_3ainternal_301', ['internal', ['../namespacePETScWrappers_1_1internal.html', 1, 'PETScWrappers']]],\n ['petscwrappers_3a_3ainternals_302', ['internals', ['../namespacePETScWrappers_1_1internals.html', 1, 'PETScWrappers']]],\n ['petscwrappers_3a_3amatrixiterators_303', ['MatrixIterators', ['../namespacePETScWrappers_1_1MatrixIterators.html', 1, 'PETScWrappers']]],\n ['petscwrappers_3a_3ampi_304', ['MPI', ['../namespacePETScWrappers_1_1MPI.html', 1, 'PETScWrappers']]],\n- ['pex_305', ['pex', ['../namespaceUtilities_1_1MPI_1_1ConsensusAlgorithms.html#ae25940905d374060a91ad2ea5f93b894', 1, 'Utilities::MPI::ConsensusAlgorithms::pex(const std::vector< unsigned int > &targets, const std::function< RequestType(const unsigned int)> &create_request, const std::function< AnswerType(const unsigned int, const RequestType &)> &answer_request, const std::function< void(const unsigned int, const AnswerType &)> &process_answer, const MPI_Comm comm)'],\n- ['../classUtilities_1_1MPI_1_1ConsensusAlgorithms_1_1PEX.html', 1, 'Utilities::MPI::ConsensusAlgorithms::PEX< RequestType, AnswerType >'],\n- ['../classUtilities_1_1MPI_1_1ConsensusAlgorithms_1_1PEX.html#a8cc4e471cdb7ce9c8f6d040069b740a1', 1, 'Utilities::MPI::ConsensusAlgorithms::PEX::PEX()'],\n- ['../namespaceUtilities_1_1MPI_1_1ConsensusAlgorithms.html#af8bb38892767188ade0256558b119bfc', 1, 'Utilities::MPI::ConsensusAlgorithms::pex()']\n+ ['pex_305', ['pex', ['../classUtilities_1_1MPI_1_1ConsensusAlgorithms_1_1PEX.html#a8cc4e471cdb7ce9c8f6d040069b740a1', 1, 'Utilities::MPI::ConsensusAlgorithms::PEX::PEX()'],\n+ ['../namespaceUtilities_1_1MPI_1_1ConsensusAlgorithms.html#ae25940905d374060a91ad2ea5f93b894', 1, 'Utilities::MPI::ConsensusAlgorithms::pex(const std::vector< unsigned int > &targets, const std::function< RequestType(const unsigned int)> &create_request, const std::function< AnswerType(const unsigned int, const RequestType &)> &answer_request, const std::function< void(const unsigned int, const AnswerType &)> &process_answer, const MPI_Comm comm)'],\n+ ['../namespaceUtilities_1_1MPI_1_1ConsensusAlgorithms.html#af8bb38892767188ade0256558b119bfc', 1, 'Utilities::MPI::ConsensusAlgorithms::pex(const std::vector< unsigned int > &targets, const std::function< RequestType(const unsigned int)> &create_request, const std::function< void(const unsigned int, const RequestType &)> &process_request, const MPI_Comm comm)'],\n+ ['../classUtilities_1_1MPI_1_1ConsensusAlgorithms_1_1PEX.html', 1, 'Utilities::MPI::ConsensusAlgorithms::PEX< RequestType, AnswerType >']\n ]],\n ['physical_5funits_306', ['physical_units', ['../structDataOutBase_1_1VtkFlags.html#a6edd0f24133d33ae6ec4964dd7661b2a', 1, 'DataOutBase::VtkFlags']]],\n- ['physics_307', ['physics', ['../group__physics.html', 1, 'Physics'],\n- ['../namespacePhysics.html', 1, 'Physics']\n+ ['physics_307', ['physics', ['../namespacePhysics.html', 1, 'Physics'],\n+ ['../group__physics.html', 1, 'Physics']\n ]],\n ['physics_2eh_308', ['physics.h', ['../physics_8h.html', 1, '']]],\n ['physics_3a_3aelasticity_309', ['Elasticity', ['../namespacePhysics_1_1Elasticity.html', 1, 'Physics']]],\n ['physics_3a_3aelasticity_3a_3akinematics_310', ['Kinematics', ['../namespacePhysics_1_1Elasticity_1_1Kinematics.html', 1, 'Physics::Elasticity']]],\n ['physics_3a_3anotation_311', ['Notation', ['../namespacePhysics_1_1Notation.html', 1, 'Physics']]],\n ['physics_3a_3anotation_3a_3akelvin_312', ['Kelvin', ['../namespacePhysics_1_1Notation_1_1Kelvin.html', 1, 'Physics::Notation']]],\n ['physics_3a_3atransformations_313', ['Transformations', ['../namespacePhysics_1_1Transformations.html', 1, 'Physics']]],\n@@ -584,66 +584,66 @@\n ['physics_3a_3avectorrelations_318', ['VectorRelations', ['../namespacePhysics_1_1VectorRelations.html', 1, 'Physics']]],\n ['pi_319', ['PI', ['../namespacenumbers.html#a3e24f194a9cb9b6ff4442b8a7a877d4a', 1, 'numbers']]],\n ['pi_5f2_320', ['PI_2', ['../namespacenumbers.html#a05c8aa45b7cf3c1c746cdf79e44dcffe', 1, 'numbers']]],\n ['pi_5f4_321', ['PI_4', ['../namespacenumbers.html#aa36e80e99e5c662879bd3f89c8b9f0e4', 1, 'numbers']]],\n ['picard_322', ['picard', ['../classNonlinearSolverSelector_1_1AdditionalData.html#a2dd69fb6550aa48fecc20a58123869a0a189283de8e82751183a7c21be498f4eb', 1, 'NonlinearSolverSelector::AdditionalData::picard'],\n ['../classSUNDIALS_1_1KINSOL_1_1AdditionalData.html#a6160e0cd736c36f42c25a05eeb7ec079a3b45671a6573d03b922841a3b16b9dbb', 1, 'SUNDIALS::KINSOL::AdditionalData::picard']\n ]],\n- ['piecewisepolynomial_323', ['piecewisepolynomial', ['../classPolynomials_1_1PiecewisePolynomial.html#a1e98b7fabac18e3ac0a95c4487682a47', 1, 'Polynomials::PiecewisePolynomial::PiecewisePolynomial()'],\n- ['../classPolynomials_1_1PiecewisePolynomial.html', 1, 'Polynomials::PiecewisePolynomial< number >'],\n- ['../classPolynomials_1_1PiecewisePolynomial.html#aa87f48bdebc569ac84076a1defb80909', 1, 'Polynomials::PiecewisePolynomial::PiecewisePolynomial()']\n+ ['piecewisepolynomial_323', ['piecewisepolynomial', ['../classPolynomials_1_1PiecewisePolynomial.html', 1, 'Polynomials::PiecewisePolynomial< number >'],\n+ ['../classPolynomials_1_1PiecewisePolynomial.html#aa87f48bdebc569ac84076a1defb80909', 1, 'Polynomials::PiecewisePolynomial::PiecewisePolynomial(const std::vector< Point< 1, number > > &points, const unsigned int index)'],\n+ ['../classPolynomials_1_1PiecewisePolynomial.html#a1e98b7fabac18e3ac0a95c4487682a47', 1, 'Polynomials::PiecewisePolynomial::PiecewisePolynomial(const Polynomial< number > &coefficients_on_interval, const unsigned int n_intervals, const unsigned int interval, const bool spans_next_interval)']\n ]],\n ['pillowfunction_324', ['pillowfunction', ['../classFunctions_1_1PillowFunction.html', 1, 'Functions::PillowFunction< dim >'],\n ['../classFunctions_1_1PillowFunction.html#ada5b2f3bfbb10e5e3484a359a3664145', 1, 'Functions::PillowFunction::PillowFunction()']\n ]],\n ['pipe_5fjunction_325', ['pipe_junction', ['../namespaceGridGenerator.html#a673c458200304475d60b98ae389a309b', 1, 'GridGenerator']]],\n ['pipesegment_326', ['PipeSegment', ['../namespacePipeSegment.html', 1, '']]],\n ['pivoting_327', ['pivoting', ['../structPETScWrappers_1_1PreconditionLU_1_1AdditionalData.html#ad3b4930e350d425af5e27c1c6045c8f4', 1, 'PETScWrappers::PreconditionLU::AdditionalData']]],\n ['plain_5fdof_5findices_328', ['plain_dof_indices', ['../structinternal_1_1MatrixFreeFunctions_1_1DoFInfo.html#ac8a3ff65aba921897310b903e288ceb2', 1, 'internal::MatrixFreeFunctions::DoFInfo::plain_dof_indices'],\n ['../classinternal_1_1MatrixFreeFunctions_1_1ConstraintInfo.html#a64f011a9343bf2806eba66109c841fa1', 1, 'internal::MatrixFreeFunctions::ConstraintInfo::plain_dof_indices']\n ]],\n ['plain_5fdof_5findices_5fper_5fcell_329', ['plain_dof_indices_per_cell', ['../classinternal_1_1MatrixFreeFunctions_1_1ConstraintInfo.html#a4b26f3a8e9d8fa63ff70d4cdc0110669', 1, 'internal::MatrixFreeFunctions::ConstraintInfo']]],\n ['plain_5ftext_330', ['plain_text', ['../namespaceDataOutBase.html#af036f347f3e7f48a0e602577905fb3c9a10504904240f7c7a24587ef9209b3f55', 1, 'DataOutBase']]],\n- ['plane_331', ['plane', ['../classFunctions_1_1SignedDistance_1_1Plane.html', 1, 'Functions::SignedDistance::Plane< dim >'],\n- ['../classFunctions_1_1SignedDistance_1_1Plane.html#a6e14ae85193bd3575b1a3ecb48edf38a', 1, 'Functions::SignedDistance::Plane::Plane()']\n+ ['plane_331', ['plane', ['../classFunctions_1_1SignedDistance_1_1Plane.html#a6e14ae85193bd3575b1a3ecb48edf38a', 1, 'Functions::SignedDistance::Plane::Plane()'],\n+ ['../classFunctions_1_1SignedDistance_1_1Plane.html', 1, 'Functions::SignedDistance::Plane< dim >']\n ]],\n ['plate_5fwith_5fa_5fhole_332', ['plate_with_a_hole', ['../namespaceGridGenerator.html#a1cef2def7a0b1ce88eef4ec630b1e3b8', 1, 'GridGenerator']]],\n ['plus_333', ['plus', ['../classRol_1_1VectorAdaptor.html#ad38d3d8ef95463debbb0165f7c22d704', 1, 'Rol::VectorAdaptor']]],\n- ['pocon_334', ['pocon', ['../lapack__templates_8h.html#a40dff1d35b2a0f5b27f6297bcdc437af', 1, 'pocon(const char *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, const number2 *, number3 *, number4 *, ::types::blas_int *, ::types::blas_int *): lapack_templates.h'],\n- ['../lapack__templates_8h.html#aef431a4db93d812efe1000c00a0ccd45', 1, 'pocon(const char *uplo, const ::types::blas_int *n, const std::complex< double > *a, const ::types::blas_int *lda, const double *anorm, double *rcond, std::complex< double > *work, double *rwork, ::types::blas_int *info): lapack_templates.h'],\n- ['../lapack__templates_8h.html#a4420399a6c63b889cadb9bf82246d559', 1, 'pocon(const char *uplo, const ::types::blas_int *n, const std::complex< float > *a, const ::types::blas_int *lda, const float *anorm, float *rcond, std::complex< float > *work, float *rwork, ::types::blas_int *info): lapack_templates.h'],\n+ ['pocon_334', ['pocon', ['../lapack__templates_8h.html#a4420399a6c63b889cadb9bf82246d559', 1, 'pocon(const char *uplo, const ::types::blas_int *n, const std::complex< float > *a, const ::types::blas_int *lda, const float *anorm, float *rcond, std::complex< float > *work, float *rwork, ::types::blas_int *info): lapack_templates.h'],\n ['../lapack__templates_8h.html#aa3c24b5c257f22b94abebb8248b59c6c', 1, 'pocon(const char *uplo, const ::types::blas_int *n, const double *a, const ::types::blas_int *lda, const double *anorm, double *rcond, double *work, ::types::blas_int *iwork, ::types::blas_int *info): lapack_templates.h'],\n- ['../lapack__templates_8h.html#a4f39ac546c9115f24754d365028eae6a', 1, 'pocon(const char *uplo, const ::types::blas_int *n, const float *a, const ::types::blas_int *lda, const float *anorm, float *rcond, float *work, ::types::blas_int *iwork, ::types::blas_int *info): lapack_templates.h']\n+ ['../lapack__templates_8h.html#a4f39ac546c9115f24754d365028eae6a', 1, 'pocon(const char *uplo, const ::types::blas_int *n, const float *a, const ::types::blas_int *lda, const float *anorm, float *rcond, float *work, ::types::blas_int *iwork, ::types::blas_int *info): lapack_templates.h'],\n+ ['../lapack__templates_8h.html#a40dff1d35b2a0f5b27f6297bcdc437af', 1, 'pocon(const char *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, const number2 *, number3 *, number4 *, ::types::blas_int *, ::types::blas_int *): lapack_templates.h'],\n+ ['../lapack__templates_8h.html#aef431a4db93d812efe1000c00a0ccd45', 1, 'pocon(const char *uplo, const ::types::blas_int *n, const std::complex< double > *a, const ::types::blas_int *lda, const double *anorm, double *rcond, std::complex< double > *work, double *rwork, ::types::blas_int *info): lapack_templates.h']\n ]],\n- ['point_335', ['point', ['../classPoint.html#a776e6e3d8f28d1d462b222924b2b648b', 1, 'Point::Point()'],\n- ['../namespaceOpenCASCADE.html#aa3c9ea93645e89d325289cb9d8b14788', 1, 'OpenCASCADE::point()'],\n- ['../classFunctions_1_1PointRestriction.html#a8931a676106b37def1bf548060274a49', 1, 'Functions::PointRestriction::point'],\n- ['../classQuadrature.html#a6c4d059aebcd62ba03c70c1a11cc2053', 1, 'Quadrature::point()'],\n- ['../classPoint.html#a90772f600d22f6e2f580f58111055b49', 1, 'Point::Point()'],\n+ ['point_335', ['point', ['../classPoint.html#a90772f600d22f6e2f580f58111055b49', 1, 'Point::Point()'],\n ['../classPoint.html#a84324443e6024fb48cf3d1732620b7d0', 1, 'Point::Point(const Tensor< 1, dim, Number > &)'],\n- ['../namespaceOpenCASCADE.html#a7b0b2393711bae58d859be1bb9761781', 1, 'OpenCASCADE::point()'],\n+ ['../classPoint.html#a776e6e3d8f28d1d462b222924b2b648b', 1, 'Point::Point(const Number x)'],\n ['../classPoint.html#a4a4b14271d1a830a7007d63e4e5ec9a3', 1, 'Point::Point(const Number x, const Number y)'],\n ['../classPoint.html#a62d4135b23cae2e3d112783d03486f1a', 1, 'Point::Point(const Number x, const Number y, const Number z)'],\n- ['../classPoint.html#a298faf034066a5a5ae78449170b4f276', 1, 'Point::Point(const boost::geometry::model::point< Number, dummy_dim, boost::geometry::cs::cartesian > &boost_pt)'],\n- ['../classPoint.html', 1, 'Point< dim, Number >']\n+ ['../classPoint.html', 1, 'Point< dim, Number >'],\n+ ['../classQuadrature.html#a6c4d059aebcd62ba03c70c1a11cc2053', 1, 'Quadrature::point()'],\n+ ['../classFunctions_1_1PointRestriction.html#a8931a676106b37def1bf548060274a49', 1, 'Functions::PointRestriction::point'],\n+ ['../classPoint.html#a298faf034066a5a5ae78449170b4f276', 1, 'Point::Point()'],\n+ ['../namespaceOpenCASCADE.html#aa3c9ea93645e89d325289cb9d8b14788', 1, 'OpenCASCADE::point(const Point< spacedim > &p)'],\n+ ['../namespaceOpenCASCADE.html#a7b0b2393711bae58d859be1bb9761781', 1, 'OpenCASCADE::point(const gp_Pnt &p, const double tolerance=1e-10)']\n ]],\n ['point_2eh_336', ['point.h', ['../base_2point_8h.html', 1, '(Global Namespace)'],\n ['../boost__adaptors_2point_8h.html', 1, '(Global Namespace)']\n ]],\n ['point3comp_337', ['Point3Comp', ['../structDataOutBase_1_1DataOutFilter_1_1Point3Comp.html', 1, 'DataOutBase::DataOutFilter']]],\n ['point_3c_200_20_3e_338', ['Point< 0 >', ['../classPoint.html', 1, '']]],\n ['point_3c_201_20_3e_339', ['Point< 1 >', ['../classPoint.html', 1, '']]],\n ['point_3c_202_20_3e_340', ['Point< 2 >', ['../classPoint.html', 1, '']]],\n ['point_3c_202_2c_20double_20_3e_341', ['Point< 2, double >', ['../classPoint.html', 1, '']]],\n ['point_3c_203_20_3e_342', ['Point< 3 >', ['../classPoint.html', 1, '']]],\n ['point_3c_203_2c_20float_20_3e_343', ['Point< 3, float >', ['../classPoint.html', 1, '']]],\n ['point_3c_20dim_20_2d_201_2c_20vectorizedarraytype_20_3e_344', ['Point< dim - 1, VectorizedArrayType >', ['../classPoint.html', 1, '']]],\n ['point_3c_20dim_2c_20double_20_3e_345', ['Point< dim, double >', ['../classPoint.html', 1, '']]],\n- ['point_3c_20dim_2c_20number_20_3e_346', ['point< dim, number >', ['../classTensor.html#aa03297e722be020f98fc14aafcab34a7', 1, 'Tensor::Point< dim, Number >'],\n- ['../classPoint.html', 1, 'Point< dim, Number >']\n+ ['point_3c_20dim_2c_20number_20_3e_346', ['point< dim, number >', ['../classPoint.html', 1, 'Point< dim, Number >'],\n+ ['../classTensor.html#aa03297e722be020f98fc14aafcab34a7', 1, 'Tensor::Point< dim, Number >']\n ]],\n ['point_3c_20dim_2c_20vectorizedarray_3c_20double_20_3e_20_3e_347', ['Point< dim, VectorizedArray< double > >', ['../classPoint.html', 1, '']]],\n ['point_3c_20dim_2c_20vectorizedarraytype_20_3e_348', ['Point< dim, VectorizedArrayType >', ['../classPoint.html', 1, '']]],\n ['point_3c_20spacedim_20_3e_349', ['Point< spacedim >', ['../classPoint.html', 1, '']]],\n ['point_3c_20spacedim_2c_20double_20_3e_350', ['Point< spacedim, double >', ['../classPoint.html', 1, '']]],\n ['point_3c_20spacedim_2c_20number_20_3e_351', ['Point< spacedim, Number >', ['../classPoint.html', 1, '']]],\n ['point_3c_20spacedim_2c_20vectorizedarray_3c_20double_20_3e_20_3e_352', ['Point< spacedim, VectorizedArray< double > >', ['../classPoint.html', 1, '']]],\n@@ -653,23 +653,23 @@\n ['point_5fcompare_356', ['point_compare', ['../namespaceOpenCASCADE.html#a7a919a5ebb75e67a4baa0ddd0caf8f15', 1, 'OpenCASCADE']]],\n ['point_5fconversion_2eh_357', ['point_conversion.h', ['../point__conversion_8h.html', 1, '']]],\n ['point_5fdifference_358', ['point_difference', ['../namespaceVectorTools.html#abf62ca21c24dbb459266851cb234e8bf', 1, 'VectorTools::point_difference(const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Function< spacedim, typename VectorType::value_type > &exact_solution, Vector< typename VectorType::value_type > &difference, const Point< spacedim, double > &point)'],\n ['../namespaceVectorTools.html#a07907666e2000a6e8a6c0118f5d82b9f', 1, 'VectorTools::point_difference(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Function< spacedim, typename VectorType::value_type > &exact_solution, Vector< typename VectorType::value_type > &difference, const Point< spacedim, double > &point)']\n ]],\n ['point_5ffound_359', ['point_found', ['../classUtilities_1_1MPI_1_1RemotePointEvaluation.html#af500b74c1b221de1168dabaabb885a6a', 1, 'Utilities::MPI::RemotePointEvaluation']]],\n ['point_5fgeometry_5fdata_360', ['point_geometry_data', ['../classPointValueHistory.html#a16afe6ce81de54b61bb92d8ade45467b', 1, 'PointValueHistory']]],\n- ['point_5fgradient_361', ['point_gradient', ['../namespaceVectorTools.html#aff3a34b2d2d46fef05df4ab9f72dc5f2', 1, 'VectorTools::point_gradient(const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point, std::vector< Tensor< 1, spacedim, typename VectorType::value_type > > &value)'],\n- ['../namespaceVectorTools.html#a078534e0dfc25a7893805fc1385da132', 1, 'VectorTools::point_gradient(const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point)'],\n- ['../namespaceVectorTools.html#aad595520f8639976523a3d83a3e079de', 1, 'VectorTools::point_gradient(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point, std::vector< Tensor< 1, spacedim, typename VectorType::value_type > > &value)'],\n- ['../namespaceVectorTools.html#a76788c65b86b01f4ab915036da3624b7', 1, 'VectorTools::point_gradient(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point, std::vector< Tensor< 1, spacedim, typename VectorType::value_type > > &value)'],\n+ ['point_5fgradient_361', ['point_gradient', ['../namespaceVectorTools.html#ad45ffee55254ed05b67883151f60af87', 1, 'VectorTools::point_gradient(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point)'],\n ['../namespaceVectorTools.html#a0e1901873f1cd477040b075af82edb07', 1, 'VectorTools::point_gradient(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point)'],\n- ['../namespaceVectorTools.html#ad45ffee55254ed05b67883151f60af87', 1, 'VectorTools::point_gradient(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point)']\n+ ['../namespaceVectorTools.html#a76788c65b86b01f4ab915036da3624b7', 1, 'VectorTools::point_gradient(const hp::MappingCollection< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point, std::vector< Tensor< 1, spacedim, typename VectorType::value_type > > &value)'],\n+ ['../namespaceVectorTools.html#aad595520f8639976523a3d83a3e079de', 1, 'VectorTools::point_gradient(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point, std::vector< Tensor< 1, spacedim, typename VectorType::value_type > > &value)'],\n+ ['../namespaceVectorTools.html#a078534e0dfc25a7893805fc1385da132', 1, 'VectorTools::point_gradient(const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point)'],\n+ ['../namespaceVectorTools.html#aff3a34b2d2d46fef05df4ab9f72dc5f2', 1, 'VectorTools::point_gradient(const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point, std::vector< Tensor< 1, spacedim, typename VectorType::value_type > > &value)']\n ]],\n- ['point_5fgradients_362', ['point_gradients', ['../namespaceVectorTools.html#aa96d29e9f7275de7556d6222d8023849', 1, 'VectorTools::point_gradients(const Mapping< dim > &mapping, const MeshType< dim, spacedim > &mesh, const VectorType &vector, const std::vector< Point< spacedim > > &evaluation_points, Utilities::MPI::RemotePointEvaluation< dim, spacedim > &cache, const EvaluationFlags::EvaluationFlags flags=EvaluationFlags::avg, const unsigned int first_selected_component=0)'],\n- ['../namespaceVectorTools.html#a7e0432da0056b4ced193d2501684363b', 1, 'VectorTools::point_gradients(const Utilities::MPI::RemotePointEvaluation< dim, spacedim > &cache, const MeshType< dim, spacedim > &mesh, const VectorType &vector, const EvaluationFlags::EvaluationFlags flags=EvaluationFlags::avg, const unsigned int first_selected_component=0)']\n+ ['point_5fgradients_362', ['point_gradients', ['../namespaceVectorTools.html#a7e0432da0056b4ced193d2501684363b', 1, 'VectorTools::point_gradients(const Utilities::MPI::RemotePointEvaluation< dim, spacedim > &cache, const MeshType< dim, spacedim > &mesh, const VectorType &vector, const EvaluationFlags::EvaluationFlags flags=EvaluationFlags::avg, const unsigned int first_selected_component=0)'],\n+ ['../namespaceVectorTools.html#aa96d29e9f7275de7556d6222d8023849', 1, 'VectorTools::point_gradients(const Mapping< dim > &mapping, const MeshType< dim, spacedim > &mesh, const VectorType &vector, const std::vector< Point< spacedim > > &evaluation_points, Utilities::MPI::RemotePointEvaluation< dim, spacedim > &cache, const EvaluationFlags::EvaluationFlags flags=EvaluationFlags::avg, const unsigned int first_selected_component=0)']\n ]],\n ['point_5fin_5fplane_363', ['point_in_plane', ['../classFunctions_1_1SignedDistance_1_1Plane.html#a535b7f391e3121866644d968b60b35af', 1, 'Functions::SignedDistance::Plane']]],\n ['point_5finside_364', ['point_inside', ['../classCellAccessor.html#ac2b2737b807db65267bcf69085076383', 1, 'CellAccessor::point_inside(const Point< 2 > &p) const'],\n ['../classCellAccessor.html#a419a58c7dc8980434ebbef1ad5d5ebe7', 1, 'CellAccessor::point_inside(const Point< 3 > &p) const'],\n ['../classCellAccessor.html#a3f47557759ff655acc0a454c40e0b563', 1, 'CellAccessor::point_inside(const Point< 2 > &p) const'],\n ['../classCellAccessor.html#a956125786970f7352ff136b52f3f7014', 1, 'CellAccessor::point_inside(const Point< 1 > &p) const'],\n ['../classCellAccessor.html#adb8a0465d3d7145513463b6a4a215fbc', 1, 'CellAccessor::point_inside(const Point< spacedim > &p) const'],\n@@ -1923,16 +1923,16 @@\n ['property_5fpool_851', ['property_pool', ['../classParticles_1_1ParticleAccessor.html#aeddb7eaa8b258783fcbacd2a6e9811c9', 1, 'Particles::ParticleAccessor::property_pool'],\n ['../classParticles_1_1ParticleHandler.html#a8b1e3a6c49a29635e5d4b8919a1bd5d7', 1, 'Particles::ParticleHandler::property_pool'],\n ['../classParticles_1_1Particle.html#a074d6cc8b4aef38ba5863d4057f2e027', 1, 'Particles::Particle::property_pool']\n ]],\n ['property_5fpool_2ecc_852', ['property_pool.cc', ['../property__pool_8cc.html', 1, '']]],\n ['property_5fpool_2eh_853', ['property_pool.h', ['../property__pool_8h.html', 1, '']]],\n ['property_5fpool_5fhandle_854', ['property_pool_handle', ['../classParticles_1_1Particle.html#abd576c55180793e9782834452aa16c53', 1, 'Particles::Particle']]],\n- ['propertypool_855', ['propertypool', ['../classParticles_1_1PropertyPool.html', 1, 'Particles::PropertyPool< dim, spacedim >'],\n- ['../classParticles_1_1PropertyPool.html#ab0c874d8a7391f7cfd35772688c04b67', 1, 'Particles::PropertyPool::PropertyPool()']\n+ ['propertypool_855', ['propertypool', ['../classParticles_1_1PropertyPool.html#ab0c874d8a7391f7cfd35772688c04b67', 1, 'Particles::PropertyPool::PropertyPool()'],\n+ ['../classParticles_1_1PropertyPool.html', 1, 'Particles::PropertyPool< dim, spacedim >']\n ]],\n ['propertypool_3c_20dim_2c_20dim_20_3e_856', ['PropertyPool< dim, dim >', ['../classParticles_1_1PropertyPool.html', 1, 'Particles']]],\n ['propertypool_3c_20dim_2c_20spacedim_20_3e_857', ['PropertyPool< dim, spacedim >', ['../classParticles_1_1PropertyPool.html', 1, 'Particles']]],\n ['provided_20instances_858', ['Provided instances', ['../Instantiations.html#Inst2p', 1, '']]],\n ['pseudoinverse_859', ['pseudoinverse', ['../classScaLAPACKMatrix.html#a0a17919a2ff3b9c8dc1f76beca7f57b4', 1, 'ScaLAPACKMatrix']]],\n ['psi_860', ['Psi', ['../classFunctions_1_1StokesLSingularity.html#a6adb5cd23fb23d3e9c4ea28130a321ab', 1, 'Functions::StokesLSingularity']]],\n ['psi_5f1_861', ['Psi_1', ['../classFunctions_1_1StokesLSingularity.html#a60013495c1e5d5eaa7b585b4dd485c69', 1, 'Functions::StokesLSingularity']]],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1e.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1e.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -1768,77 +1768,77 @@\n ['../classSUNDIALS_1_1KINSOL_1_1AdditionalData.html#a6160e0cd736c36f42c25a05eeb7ec079', 1, 'SUNDIALS::KINSOL::AdditionalData::SolutionStrategy']\n ]],\n ['solutiontransfer_721', ['solutiontransfer', ['../classSolutionTransfer.html#ad33057265bf051ae9972df33c54b892e', 1, 'SolutionTransfer::SolutionTransfer()'],\n ['../classSolutionTransfer.html', 1, 'SolutionTransfer< dim, VectorType, spacedim >'],\n ['../classparallel_1_1distributed_1_1SolutionTransfer.html#aebd38d82f946a96118f73e4e26defd61', 1, 'parallel::distributed::SolutionTransfer::SolutionTransfer()'],\n ['../classparallel_1_1distributed_1_1SolutionTransfer.html', 1, 'parallel::distributed::SolutionTransfer< dim, VectorType, spacedim >']\n ]],\n- ['solve_722', ['solve', ['../classEigenPower.html#a5d1b4586ee7d951a30f204961068aed1', 1, 'EigenPower::solve()'],\n+ ['solve_722', ['solve', ['../classCUDAWrappers_1_1SolverDirect.html#ae287a55668ca67d194d8f459b937fad8', 1, 'CUDAWrappers::SolverDirect::solve()'],\n+ ['../classBaseQR.html#a6fda22779712cb578b129b659590aff0', 1, 'BaseQR::solve()'],\n ['../classPETScWrappers_1_1TimeStepper.html#a99da12e36485bbb20a947b14a862c90a', 1, 'PETScWrappers::TimeStepper::solve(VectorType &y, AMatrixType &A, PMatrixType &P)'],\n ['../classPETScWrappers_1_1TimeStepper.html#a133eb65b9dfa87f113062d2e6722dfda', 1, 'PETScWrappers::TimeStepper::solve(VectorType &y, PMatrixType &P)'],\n ['../classPETScWrappers_1_1TimeStepper.html#ad62bfc86d9b0f3d52797e0ceb752e517', 1, 'PETScWrappers::TimeStepper::solve(VectorType &y)'],\n ['../classPETScWrappers_1_1SparseDirectMUMPS.html#a08d73453888955bd5a9863be32f3b347', 1, 'PETScWrappers::SparseDirectMUMPS::solve()'],\n ['../classPETScWrappers_1_1SolverBase.html#abfc375c07a38e1314a79c6a1093edb53', 1, 'PETScWrappers::SolverBase::solve()'],\n ['../classPETScWrappers_1_1NonlinearSolver.html#a6824521a044f81e3c214d31dbddfd95e', 1, 'PETScWrappers::NonlinearSolver::solve()'],\n- ['../classSLEPcWrappers_1_1SolverBase.html#abc2d8de73b05bf8bf59615e9459e912a', 1, 'SLEPcWrappers::SolverBase::solve()'],\n+ ['../classSLEPcWrappers_1_1SolverBase.html#a853fa13eb1a29f59335250475d39433b', 1, 'SLEPcWrappers::SolverBase::solve()'],\n ['../classArpackSolver.html#ae49067a1359b8d6794b92e1d0b405df6', 1, 'ArpackSolver::solve()'],\n- ['../classCUDAWrappers_1_1SolverDirect.html#ae287a55668ca67d194d8f459b937fad8', 1, 'CUDAWrappers::SolverDirect::solve()'],\n+ ['../classEigenPower.html#a5d1b4586ee7d951a30f204961068aed1', 1, 'EigenPower::solve()'],\n ['../classEigenInverse.html#ae9a92ea1e8cbb04af2a7a95ddbee7c05', 1, 'EigenInverse::solve()'],\n ['../classPETScWrappers_1_1NonlinearSolver.html#aad0cf7e52853d0921d45db1aed0628b5', 1, 'PETScWrappers::NonlinearSolver::solve(VectorType &x, PMatrixType &P)'],\n ['../classPETScWrappers_1_1NonlinearSolver.html#a7d31a59c610ed0e48a6392865828b88c', 1, 'PETScWrappers::NonlinearSolver::solve(VectorType &x)'],\n ['../classPArpackSolver.html#a8462215d8b273ec58f255ce1f2856dec', 1, 'PArpackSolver::solve(const MatrixType1 &A, const MatrixType2 &B, const INVERSE &inverse, std::vector< std::complex< double > > &eigenvalues, std::vector< VectorType * > &eigenvectors, const unsigned int n_eigenvalues)'],\n ['../classPArpackSolver.html#a6b11d2a4ee3046ace276667be420c15c', 1, 'PArpackSolver::solve(const MatrixType1 &A, const MatrixType2 &B, const INVERSE &inverse, std::vector< std::complex< double > > &eigenvalues, std::vector< VectorType > &eigenvectors, const unsigned int n_eigenvalues)'],\n ['../classLAPACKFullMatrix.html#a7446f061d01a871d110b8bb2594f32a6', 1, 'LAPACKFullMatrix::solve(LAPACKFullMatrix< number > &B, const bool transposed=false) const'],\n ['../classLAPACKFullMatrix.html#a7bf80811306c4cdddd287c295e2f096c', 1, 'LAPACKFullMatrix::solve(Vector< number > &v, const bool transposed=false) const'],\n ['../classGinkgoWrappers_1_1SolverBase.html#ab10de093fe9cfb3829820f41adb95108', 1, 'GinkgoWrappers::SolverBase::solve()'],\n ['../classTrilinosWrappers_1_1SolverBase.html#acaba6101091a8853b7e429a00026a872', 1, 'TrilinosWrappers::SolverBase::solve()'],\n- ['../classBaseQR.html#a6fda22779712cb578b129b659590aff0', 1, 'BaseQR::solve()'],\n- ['../classSparseDirectUMFPACK.html#a8f5481014ce2e160eb5c4fd7fdb2324b', 1, 'SparseDirectUMFPACK::solve(const Matrix &matrix, Vector< double > &rhs_and_solution, const bool transpose=false)'],\n+ ['../classSLEPcWrappers_1_1SolverBase.html#acca4f79c1dd845716a3f7cfa0cff0b82', 1, 'SLEPcWrappers::SolverBase::solve()'],\n ['../classSparseDirectUMFPACK.html#ac581d1ba43cee9de89cf7217584980a3', 1, 'SparseDirectUMFPACK::solve(const Matrix &matrix, Vector< std::complex< double > > &rhs_and_solution, const bool transpose=false)'],\n ['../classSparseDirectUMFPACK.html#a044f8fa5b6cdf89fb30d410d2fb1b059', 1, 'SparseDirectUMFPACK::solve(const Matrix &matrix, BlockVector< double > &rhs_and_solution, const bool transpose=false)'],\n ['../classSparseDirectUMFPACK.html#a61cad1ea0d95008b49ba1e90bdfaf5f4', 1, 'SparseDirectUMFPACK::solve(const Matrix &matrix, BlockVector< std::complex< double > > &rhs_and_solution, const bool transpose=false)'],\n ['../classTrilinosWrappers_1_1SolverBase.html#a3dfbf75de5fe13880fa2ad2455a89f67', 1, 'TrilinosWrappers::SolverBase::solve(const SparseMatrix &A, MPI::Vector &x, const MPI::Vector &b, const PreconditionBase &preconditioner)'],\n ['../classTrilinosWrappers_1_1SolverBase.html#aa9423586774003f660e66ad2233f1d1a', 1, 'TrilinosWrappers::SolverBase::solve(const Epetra_Operator &A, MPI::Vector &x, const MPI::Vector &b, const PreconditionBase &preconditioner)'],\n ['../classTrilinosWrappers_1_1SolverBase.html#a4d5e95dfd3e6822975d2058e3ee42312', 1, 'TrilinosWrappers::SolverBase::solve(const Epetra_Operator &A, MPI::Vector &x, const MPI::Vector &b, const Epetra_Operator &preconditioner)'],\n ['../classTrilinosWrappers_1_1SolverBase.html#a35c0fa046fc4301abfcf476c471a4b31', 1, 'TrilinosWrappers::SolverBase::solve(const Epetra_Operator &A, Epetra_MultiVector &x, const Epetra_MultiVector &b, const PreconditionBase &preconditioner)'],\n ['../classTrilinosWrappers_1_1SolverBase.html#a04c074ad4fd75cda3535d684dc43696c', 1, 'TrilinosWrappers::SolverBase::solve(const Epetra_Operator &A, Epetra_MultiVector &x, const Epetra_MultiVector &b, const Epetra_Operator &preconditioner)'],\n ['../classTrilinosWrappers_1_1SolverBase.html#a6725d424fb97e9f7653f0a4f0c9bf18d', 1, 'TrilinosWrappers::SolverBase::solve(const SparseMatrix &A, ::Vector< double > &x, const ::Vector< double > &b, const PreconditionBase &preconditioner)'],\n ['../classTrilinosWrappers_1_1SolverBase.html#a0519ecc7eeb3fdfccd984706690ea6b4', 1, 'TrilinosWrappers::SolverBase::solve(Epetra_Operator &A, ::Vector< double > &x, const ::Vector< double > &b, const PreconditionBase &preconditioner)'],\n ['../classTrilinosWrappers_1_1SolverBase.html#afbfc3ed2437eb983582a753e965c2791', 1, 'TrilinosWrappers::SolverBase::solve(const SparseMatrix &A, ::LinearAlgebra::distributed::Vector< double > &x, const ::LinearAlgebra::distributed::Vector< double > &b, const PreconditionBase &preconditioner)'],\n- ['../classSLEPcWrappers_1_1SolverBase.html#acca4f79c1dd845716a3f7cfa0cff0b82', 1, 'SLEPcWrappers::SolverBase::solve()'],\n+ ['../classSLEPcWrappers_1_1SolverBase.html#a3ecd2668303b48f5a3d664e3c5002449', 1, 'SLEPcWrappers::SolverBase::solve()'],\n ['../classTrilinosWrappers_1_1SolverDirect.html#ab5cbe8c03c6e291d4cdd63759d5e7ea8', 1, 'TrilinosWrappers::SolverDirect::solve(MPI::Vector &x, const MPI::Vector &b)'],\n ['../classTrilinosWrappers_1_1SolverDirect.html#ac2d25993a2373a19b2126aad6f077b21', 1, 'TrilinosWrappers::SolverDirect::solve(::LinearAlgebra::distributed::Vector< double > &x, const ::LinearAlgebra::distributed::Vector< double > &b)'],\n ['../classTrilinosWrappers_1_1SolverDirect.html#a3f5b443a3182544ddb6c017c34a7532a', 1, 'TrilinosWrappers::SolverDirect::solve(const SparseMatrix &A, MPI::Vector &x, const MPI::Vector &b)'],\n ['../classTrilinosWrappers_1_1SolverDirect.html#a9856f025368e82f4a7178b2c370ca3f3', 1, 'TrilinosWrappers::SolverDirect::solve(const SparseMatrix &A, ::Vector< double > &x, const ::Vector< double > &b)'],\n ['../classTrilinosWrappers_1_1SolverDirect.html#a0c67280102776497dbc878bae3e8c8fd', 1, 'TrilinosWrappers::SolverDirect::solve(const SparseMatrix &A, ::LinearAlgebra::distributed::Vector< double > &x, const ::LinearAlgebra::distributed::Vector< double > &b)'],\n ['../classTrilinosWrappers_1_1SolverBelos.html#a8fc356a14c5fafc24b7010816e5af7cf', 1, 'TrilinosWrappers::SolverBelos::solve()'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectBase.html#ab9301bd7fb14a9e8fd021d860bfb42e6', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectBase::solve(Vector< Number, MemorySpace > &x, const Vector< Number, MemorySpace > &b)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectBase.html#a15a9bd30bff87f50cef3dbd39532dd68', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectBase::solve(const SparseMatrix< Number, MemorySpace > &A, Vector< Number, MemorySpace > &x, const Vector< Number, MemorySpace > &b)'],\n ['../classNonlinearSolverSelector.html#acf70fcef0b92c228b59ac65058b019f1', 1, 'NonlinearSolverSelector::solve()'],\n ['../classSolverBFGS.html#a9538d3ef980c946b0b622f497bed8f97', 1, 'SolverBFGS::solve()'],\n ['../classSUNDIALS_1_1KINSOL.html#a4b68ab01a5e74ecfd08e37ab4dc3e454', 1, 'SUNDIALS::KINSOL::solve()'],\n ['../classTrilinosWrappers_1_1NOXSolver.html#a9e3a6db09c51585703477cb70d9dceeb', 1, 'TrilinosWrappers::NOXSolver::solve()'],\n- ['../classSparseDirectUMFPACK.html#a962d748f01a1d92a928e9e0101911707', 1, 'SparseDirectUMFPACK::solve()'],\n- ['../classSolverCG.html#aa52469650d9b9ef2f4cb4884caeb0723', 1, 'SolverCG::solve()'],\n+ ['../classSparseDirectUMFPACK.html#a44b62341a313440a035bf558c2f3a99a', 1, 'SparseDirectUMFPACK::solve()'],\n ['../classSolverFIRE.html#aab56cccbf56b8aaa5e0236367cb158ba', 1, 'SolverFIRE::solve(const std::function< double(VectorType &, const VectorType &)> &compute, VectorType &x, const PreconditionerType &inverse_mass_matrix)'],\n ['../classSolverFIRE.html#aca76bb11fca8398a79a8043d3ed03fe5', 1, 'SolverFIRE::solve(const MatrixType &A, VectorType &x, const VectorType &b, const PreconditionerType &preconditioner)'],\n- ['../classSolverBicgstab.html#af82b2b5313f0a9bae82490be231ddfcc', 1, 'SolverBicgstab::solve()'],\n ['../classSolverGMRES.html#aeb490cfb46f2708ba7e7c5b0fb09b646', 1, 'SolverGMRES::solve()'],\n+ ['../classSolverCG.html#aa52469650d9b9ef2f4cb4884caeb0723', 1, 'SolverCG::solve()'],\n ['../classSolverFGMRES.html#a218482f683ccdcfa0fc3435ecbb231ae', 1, 'SolverFGMRES::solve()'],\n ['../classSolverIDR.html#aa4ee703ec594a1eecbfbe08d9f1c2294', 1, 'SolverIDR::solve()'],\n ['../classSolverMinRes.html#abcef00eb7b9beefe563159e47f9953f8', 1, 'SolverMinRes::solve()'],\n ['../classSolverQMRS.html#a47e535b15d08409f52afea02ec2f1f20', 1, 'SolverQMRS::solve()'],\n ['../classSolverRelaxation.html#af26e8a12dfaaf4dc60009af4bb1f00a6', 1, 'SolverRelaxation::solve()'],\n ['../classSolverRichardson.html#a81173bb9d8a80c2eedd67a70be6f1e7f', 1, 'SolverRichardson::solve()'],\n ['../classSolverSelector.html#ad90f7655f15b05b14312e197e8683742', 1, 'SolverSelector::solve()'],\n ['../classSparseDirectUMFPACK.html#a713849cd6eeacc629a2b621c19857242', 1, 'SparseDirectUMFPACK::solve(Vector< double > &rhs_and_solution, const bool transpose=false) const'],\n- ['../classSparseDirectUMFPACK.html#a44b62341a313440a035bf558c2f3a99a', 1, 'SparseDirectUMFPACK::solve(BlockVector< double > &rhs_and_solution, const bool transpose=false) const'],\n+ ['../classSparseDirectUMFPACK.html#a962d748f01a1d92a928e9e0101911707', 1, 'SparseDirectUMFPACK::solve(Vector< std::complex< double > > &rhs_and_solution, const bool transpose=false) const'],\n ['../classSparseDirectUMFPACK.html#aa33c09f1a6a5eeb54885d3423485a143', 1, 'SparseDirectUMFPACK::solve(BlockVector< std::complex< double > > &rhs_and_solution, const bool transpose=false) const'],\n- ['../classSLEPcWrappers_1_1SolverBase.html#a853fa13eb1a29f59335250475d39433b', 1, 'SLEPcWrappers::SolverBase::solve(const unsigned int n_eigenpairs, unsigned int *n_converged)'],\n- ['../classSLEPcWrappers_1_1SolverBase.html#a3ecd2668303b48f5a3d664e3c5002449', 1, 'SLEPcWrappers::SolverBase::solve(const PETScWrappers::MatrixBase &A, const PETScWrappers::MatrixBase &B, std::vector< PetscScalar > &eigenvalues, std::vector< OutputVector > &eigenvectors, const unsigned int n_eigenpairs=1)']\n+ ['../classSparseDirectUMFPACK.html#a8f5481014ce2e160eb5c4fd7fdb2324b', 1, 'SparseDirectUMFPACK::solve(const Matrix &matrix, Vector< double > &rhs_and_solution, const bool transpose=false)'],\n+ ['../classSolverBicgstab.html#af82b2b5313f0a9bae82490be231ddfcc', 1, 'SolverBicgstab::solve()'],\n+ ['../classSLEPcWrappers_1_1SolverBase.html#abc2d8de73b05bf8bf59615e9459e912a', 1, 'SLEPcWrappers::SolverBase::solve()']\n ]],\n ['solve_5fdae_723', ['solve_dae', ['../classSUNDIALS_1_1IDA.html#a1bf08b8f950f0ceae93e36572fe68f6c', 1, 'SUNDIALS::IDA']]],\n ['solve_5fdual_5fproblem_724', ['solve_dual_problem', ['../classTimeDependent.html#a56c5cf6247dea796e4eec7c3b6eec943', 1, 'TimeDependent::solve_dual_problem()'],\n ['../classTimeStepBase.html#af6d981ff91d243d14ddcf58d656a8b01', 1, 'TimeStepBase::solve_dual_problem()']\n ]],\n ['solve_5flinearized_5fsystem_725', ['solve_linearized_system', ['../classSUNDIALS_1_1ARKode.html#a481da5fd5c766f5f0e799c0bbc052837', 1, 'SUNDIALS::ARKode']]],\n ['solve_5fmass_726', ['solve_mass', ['../classSUNDIALS_1_1ARKode.html#ac2a7fcfde476976db3c04314f1f98eac', 1, 'SUNDIALS::ARKode']]],\n@@ -1867,126 +1867,126 @@\n ]],\n ['solver_20classes_736', ['Linear solver classes', ['../group__Solvers.html', 1, '']]],\n ['solver_2ecc_737', ['solver.cc', ['../solver_8cc.html', 1, '']]],\n ['solver_2eh_738', ['solver.h', ['../solver_8h.html', 1, '']]],\n ['solver_5fbfgs_2eh_739', ['solver_bfgs.h', ['../solver__bfgs_8h.html', 1, '']]],\n ['solver_5fbicgstab_2eh_740', ['solver_bicgstab.h', ['../solver__bicgstab_8h.html', 1, '']]],\n ['solver_5fcg_2eh_741', ['solver_cg.h', ['../solver__cg_8h.html', 1, '']]],\n- ['solver_5fcontrol_742', ['solver_control', ['../classGinkgoWrappers_1_1SolverBase.html#a187dacd4cba633827fd7e41bbd6e0880', 1, 'GinkgoWrappers::SolverBase::solver_control'],\n+ ['solver_5fcontrol_742', ['solver_control', ['../classPArpackSolver.html#a0f060de1be8ec677c1a05f3f87b561ca', 1, 'PArpackSolver::solver_control'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectBase.html#a7be93fcec530c768e1684837ccc66339', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectBase::solver_control'],\n ['../classTrilinosWrappers_1_1SolverBelos.html#aa05144c773f74e66b92350bef6cdb300', 1, 'TrilinosWrappers::SolverBelos::solver_control'],\n ['../classTrilinosWrappers_1_1SolverDirect.html#aa6d5cbf7ccf7688b30bba6dd5090344c', 1, 'TrilinosWrappers::SolverDirect::solver_control'],\n- ['../classTrilinosWrappers_1_1SolverBase.html#a9f9216b0a045f643bc46af9384d6355f', 1, 'TrilinosWrappers::SolverBase::solver_control'],\n ['../classCUDAWrappers_1_1SolverDirect.html#a0ecb7dd66c70e79aaa4fe163272cdc34', 1, 'CUDAWrappers::SolverDirect::solver_control'],\n- ['../classSolverGMRES.html#a6ccb224a44f8a986c76b605ebfd8eb3d', 1, 'SolverGMRES::solver_control'],\n- ['../classPArpackSolver.html#a0f060de1be8ec677c1a05f3f87b561ca', 1, 'PArpackSolver::solver_control'],\n+ ['../classGinkgoWrappers_1_1SolverBase.html#a187dacd4cba633827fd7e41bbd6e0880', 1, 'GinkgoWrappers::SolverBase::solver_control'],\n+ ['../classTrilinosWrappers_1_1SolverBase.html#a9f9216b0a045f643bc46af9384d6355f', 1, 'TrilinosWrappers::SolverBase::solver_control'],\n ['../classPETScWrappers_1_1SolverBase.html#a895d24890db2c09d705e25eb8da13565', 1, 'PETScWrappers::SolverBase::solver_control'],\n ['../classSLEPcWrappers_1_1SolverBase.html#ab23353b0d62383f7e5b2a3f98df5af79', 1, 'SLEPcWrappers::SolverBase::solver_control'],\n+ ['../classSolverGMRES.html#a6ccb224a44f8a986c76b605ebfd8eb3d', 1, 'SolverGMRES::solver_control'],\n ['../classArpackSolver.html#aa55ed3dd9b50c86e637be3d6159239b6', 1, 'ArpackSolver::solver_control']\n ]],\n ['solver_5fcontrol_2ecc_743', ['solver_control.cc', ['../solver__control_8cc.html', 1, '']]],\n ['solver_5fcontrol_2eh_744', ['solver_control.h', ['../solver__control_8h.html', 1, '']]],\n ['solver_5fcontrol_5fown_745', ['solver_control_own', ['../classTrilinosWrappers_1_1SolverDirect.html#adc01d09397be29727fb1644156fb456d', 1, 'TrilinosWrappers::SolverDirect']]],\n ['solver_5ffire_2eh_746', ['solver_fire.h', ['../solver__fire_8h.html', 1, '']]],\n ['solver_5fgen_747', ['solver_gen', ['../classGinkgoWrappers_1_1SolverBase.html#aaaf8047b3461f0ac6c13030e8eb5e857', 1, 'GinkgoWrappers::SolverBase']]],\n ['solver_5fgmres_2eh_748', ['solver_gmres.h', ['../solver__gmres_8h.html', 1, '']]],\n ['solver_5fidr_2eh_749', ['solver_idr.h', ['../solver__idr_8h.html', 1, '']]],\n ['solver_5fminres_2eh_750', ['solver_minres.h', ['../solver__minres_8h.html', 1, '']]],\n- ['solver_5fname_751', ['solver_name', ['../classTrilinosWrappers_1_1SolverBase.html#af5606e35981bb5303be8ea4a82410fa5', 1, 'TrilinosWrappers::SolverBase::solver_name'],\n- ['../classSolverSelector.html#ab580eda9d34cc36e0d0fbecfdd67b5a1', 1, 'SolverSelector::solver_name'],\n- ['../classTrilinosWrappers_1_1SolverBelos.html#a77f1434ce6219e2bd46cca1dc1b0c36c', 1, 'TrilinosWrappers::SolverBelos::solver_name'],\n+ ['solver_5fname_751', ['solver_name', ['../structLinearAlgebra_1_1TpetraWrappers_1_1SolverDirect_1_1AdditionalData.html#a11293b43cd1e11612a3dfbd8ded331d2', 1, 'LinearAlgebra::TpetraWrappers::SolverDirect::AdditionalData::solver_name'],\n ['../structTrilinosWrappers_1_1SolverBelos_1_1AdditionalData.html#af0ed494f5624866277588e72f61e56dd', 1, 'TrilinosWrappers::SolverBelos::AdditionalData::solver_name'],\n- ['../structLinearAlgebra_1_1TpetraWrappers_1_1SolverDirect_1_1AdditionalData.html#a11293b43cd1e11612a3dfbd8ded331d2', 1, 'LinearAlgebra::TpetraWrappers::SolverDirect::AdditionalData::solver_name']\n+ ['../classTrilinosWrappers_1_1SolverBelos.html#a77f1434ce6219e2bd46cca1dc1b0c36c', 1, 'TrilinosWrappers::SolverBelos::solver_name'],\n+ ['../classTrilinosWrappers_1_1SolverBase.html#af5606e35981bb5303be8ea4a82410fa5', 1, 'TrilinosWrappers::SolverBase::solver_name'],\n+ ['../classSolverSelector.html#ab580eda9d34cc36e0d0fbecfdd67b5a1', 1, 'SolverSelector::solver_name']\n ]],\n ['solver_5fqmrs_2eh_752', ['solver_qmrs.h', ['../solver__qmrs_8h.html', 1, '']]],\n ['solver_5frelaxation_2eh_753', ['solver_relaxation.h', ['../solver__relaxation_8h.html', 1, '']]],\n ['solver_5frichardson_2eh_754', ['solver_richardson.h', ['../solver__richardson_8h.html', 1, '']]],\n ['solver_5fselector_2eh_755', ['solver_selector.h', ['../solver__selector_8h.html', 1, '']]],\n ['solver_5fshould_5frestart_756', ['solver_should_restart', ['../classSUNDIALS_1_1ARKode.html#a9d3bd452bc13970e9af93810d3d3beff', 1, 'SUNDIALS::ARKode::solver_should_restart'],\n ['../classSUNDIALS_1_1IDA.html#a88e30f20f68db8208a5095dac8b55c06', 1, 'SUNDIALS::IDA::solver_should_restart']\n ]],\n ['solver_5ftolerance_757', ['solver_tolerance', ['../structSolverQMRS_1_1AdditionalData.html#a1ce48390ccbbba0b521a7279731fe0da', 1, 'SolverQMRS::AdditionalData']]],\n- ['solver_5ftype_758', ['solver_type', ['../structCUDAWrappers_1_1SolverDirect_1_1AdditionalData.html#aed75fb21e5ab3151cf698349849828b8', 1, 'CUDAWrappers::SolverDirect::AdditionalData::solver_type'],\n- ['../structTrilinosWrappers_1_1SolverDirect_1_1AdditionalData.html#a22a275c6fa139cd8bf86cea54ff8f045', 1, 'TrilinosWrappers::SolverDirect::AdditionalData::solver_type'],\n+ ['solver_5ftype_758', ['solver_type', ['../structTrilinosWrappers_1_1SolverDirect_1_1AdditionalData.html#a22a275c6fa139cd8bf86cea54ff8f045', 1, 'TrilinosWrappers::SolverDirect::AdditionalData::solver_type'],\n+ ['../structCUDAWrappers_1_1SolverDirect_1_1AdditionalData.html#aed75fb21e5ab3151cf698349849828b8', 1, 'CUDAWrappers::SolverDirect::AdditionalData::solver_type'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectBase.html#a451beba21d364414417e948b5ced77c2', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectBase::solver_type'],\n ['../classNonlinearSolverSelector_1_1AdditionalData.html#a0963f005667c67a46a8683dfd576ebfb', 1, 'NonlinearSolverSelector::AdditionalData::solver_type']\n ]],\n ['solverarnoldi_759', ['solverarnoldi', ['../classSLEPcWrappers_1_1SolverArnoldi.html', 1, 'SLEPcWrappers::SolverArnoldi'],\n ['../classSLEPcWrappers_1_1SolverArnoldi.html#a45349a612eab8bb5a2b816b3b4021ae4', 1, 'SLEPcWrappers::SolverArnoldi::SolverArnoldi()']\n ]],\n- ['solverbase_760', ['solverbase', ['../classPETScWrappers_1_1SolverBase.html#a9a78eb111747d2d1c25114f4bd4aa2c6', 1, 'PETScWrappers::SolverBase::SolverBase()'],\n+ ['solverbase_760', ['solverbase', ['../classSolverBase.html#a4a143bf73d81bbeca24fae7cabfb4681', 1, 'SolverBase::SolverBase()'],\n+ ['../classSLEPcWrappers_1_1SolverBase.html', 1, 'SLEPcWrappers::SolverBase'],\n ['../classSolverBase.html', 1, 'SolverBase< VectorType >'],\n ['../classTrilinosWrappers_1_1SolverBase.html', 1, 'TrilinosWrappers::SolverBase'],\n ['../classTrilinosWrappers_1_1SolverBase.html#aead248f1c75b8f5abd065fcaf80d0138', 1, 'TrilinosWrappers::SolverBase::SolverBase(const enum SolverName solver_name, SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n ['../classTrilinosWrappers_1_1SolverBase.html#ae483428f4a0f6aadb3d857f9e2955bba', 1, 'TrilinosWrappers::SolverBase::SolverBase(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n- ['../classSolverBase.html#afb4d18a7f1c760114f85dd246de8379d', 1, 'SolverBase::SolverBase(SolverControl &solver_control)'],\n- ['../classSolverBase.html#a4a143bf73d81bbeca24fae7cabfb4681', 1, 'SolverBase::SolverBase(SolverControl &solver_control, VectorMemory< VectorType > &vector_memory)'],\n+ ['../classSolverBase.html#afb4d18a7f1c760114f85dd246de8379d', 1, 'SolverBase::SolverBase()'],\n ['../classSLEPcWrappers_1_1SolverBase.html#a714599091f65e260339c0b18e45f867e', 1, 'SLEPcWrappers::SolverBase::SolverBase()'],\n- ['../classPETScWrappers_1_1SolverBase.html#a6eb5a81aa2666cce5af8b78e6792bcc5', 1, 'PETScWrappers::SolverBase::SolverBase()'],\n+ ['../classPETScWrappers_1_1SolverBase.html#a6eb5a81aa2666cce5af8b78e6792bcc5', 1, 'PETScWrappers::SolverBase::SolverBase(SolverControl &cn)'],\n+ ['../classPETScWrappers_1_1SolverBase.html#a9a78eb111747d2d1c25114f4bd4aa2c6', 1, 'PETScWrappers::SolverBase::SolverBase()'],\n ['../classGinkgoWrappers_1_1SolverBase.html#a694d19f6272e96517a1c3b07791a12cd', 1, 'GinkgoWrappers::SolverBase::SolverBase()'],\n ['../classTrilinosWrappers_1_1PreconditionBase.html#a5c542cb3b4ae6879ca3ab46caac1e7e8', 1, 'TrilinosWrappers::PreconditionBase::SolverBase'],\n ['../classSLEPcWrappers_1_1TransformationShiftInvert.html#a5c542cb3b4ae6879ca3ab46caac1e7e8', 1, 'SLEPcWrappers::TransformationShiftInvert::SolverBase'],\n ['../classSLEPcWrappers_1_1TransformationBase.html#a5c542cb3b4ae6879ca3ab46caac1e7e8', 1, 'SLEPcWrappers::TransformationBase::SolverBase'],\n ['../classGinkgoWrappers_1_1SolverBase.html', 1, 'GinkgoWrappers::SolverBase< ValueType, IndexType >'],\n- ['../classPETScWrappers_1_1SolverBase.html', 1, 'PETScWrappers::SolverBase'],\n- ['../classSLEPcWrappers_1_1SolverBase.html', 1, 'SLEPcWrappers::SolverBase']\n+ ['../classPETScWrappers_1_1SolverBase.html', 1, 'PETScWrappers::SolverBase']\n ]],\n ['solverbase_3c_20double_2c_20int32_5ft_20_3e_761', ['SolverBase< double, int32_t >', ['../classGinkgoWrappers_1_1SolverBase.html', 1, 'GinkgoWrappers']]],\n ['solverbase_3c_20vector_3c_20double_20_3e_20_3e_762', ['SolverBase< Vector< double > >', ['../classSolverBase.html', 1, '']]],\n ['solverbase_3c_20vectortype_20_3e_763', ['SolverBase< VectorType >', ['../classSolverBase.html', 1, '']]],\n ['solverbelos_764', ['solverbelos', ['../classTrilinosWrappers_1_1SolverBelos.html#a26f84f7d03dd723238128e5159939f01', 1, 'TrilinosWrappers::SolverBelos::SolverBelos()'],\n ['../classTrilinosWrappers_1_1SolverBelos.html', 1, 'TrilinosWrappers::SolverBelos< VectorType >']\n ]],\n ['solverbfgs_765', ['solverbfgs', ['../classSolverBFGS.html', 1, 'SolverBFGS< VectorType >'],\n ['../classSolverBFGS.html#af845c8ca17ef205a52c816f7c7ed784e', 1, 'SolverBFGS::SolverBFGS()']\n ]],\n- ['solverbicg_766', ['solverbicg', ['../classPETScWrappers_1_1SolverBiCG.html#a04b96862b829942163c67ee9263d5f6b', 1, 'PETScWrappers::SolverBiCG::SolverBiCG()'],\n- ['../classPETScWrappers_1_1SolverBiCG.html', 1, 'PETScWrappers::SolverBiCG'],\n- ['../classPETScWrappers_1_1SolverBiCG.html#a62e5f715492d1268c5988845d2a38410', 1, 'PETScWrappers::SolverBiCG::SolverBiCG()']\n+ ['solverbicg_766', ['solverbicg', ['../classPETScWrappers_1_1SolverBiCG.html', 1, 'PETScWrappers::SolverBiCG'],\n+ ['../classPETScWrappers_1_1SolverBiCG.html#a62e5f715492d1268c5988845d2a38410', 1, 'PETScWrappers::SolverBiCG::SolverBiCG(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n+ ['../classPETScWrappers_1_1SolverBiCG.html#a04b96862b829942163c67ee9263d5f6b', 1, 'PETScWrappers::SolverBiCG::SolverBiCG(SolverControl &cn, const AdditionalData &data=AdditionalData())']\n ]],\n- ['solverbicgstab_767', ['solverbicgstab', ['../classTrilinosWrappers_1_1SolverBicgstab.html#acc2c5edb8f0a83c4f5f86dc2ab456f0d', 1, 'TrilinosWrappers::SolverBicgstab::SolverBicgstab()'],\n- ['../classTrilinosWrappers_1_1SolverBicgstab.html', 1, 'TrilinosWrappers::SolverBicgstab'],\n- ['../classSolverBicgstab.html', 1, 'SolverBicgstab< VectorType >'],\n- ['../classPETScWrappers_1_1SolverBicgstab.html', 1, 'PETScWrappers::SolverBicgstab'],\n- ['../classGinkgoWrappers_1_1SolverBicgstab.html', 1, 'GinkgoWrappers::SolverBicgstab< ValueType, IndexType >'],\n- ['../classGinkgoWrappers_1_1SolverBicgstab.html#a47b1bc47fdaf96d295673465ec19c56c', 1, 'GinkgoWrappers::SolverBicgstab::SolverBicgstab(SolverControl &solver_control, const std::string &exec_type, const AdditionalData &data=AdditionalData())'],\n- ['../classGinkgoWrappers_1_1SolverBicgstab.html#a5078db1911515d9691957b1951249581', 1, 'GinkgoWrappers::SolverBicgstab::SolverBicgstab(SolverControl &solver_control, const std::string &exec_type, const std::shared_ptr< gko::LinOpFactory > &preconditioner, const AdditionalData &data=AdditionalData())'],\n+ ['solverbicgstab_767', ['solverbicgstab', ['../classGinkgoWrappers_1_1SolverBicgstab.html', 1, 'GinkgoWrappers::SolverBicgstab< ValueType, IndexType >'],\n+ ['../classGinkgoWrappers_1_1SolverBicgstab.html#a5078db1911515d9691957b1951249581', 1, 'GinkgoWrappers::SolverBicgstab::SolverBicgstab()'],\n ['../classPETScWrappers_1_1SolverBicgstab.html#acc2c5edb8f0a83c4f5f86dc2ab456f0d', 1, 'PETScWrappers::SolverBicgstab::SolverBicgstab(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n ['../classPETScWrappers_1_1SolverBicgstab.html#a61b4ba406c953af30beb5881887c14dc', 1, 'PETScWrappers::SolverBicgstab::SolverBicgstab(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n ['../classSolverBicgstab.html#aaf09f398aa1f28216f8dcf8696b9509d', 1, 'SolverBicgstab::SolverBicgstab(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())'],\n- ['../classSolverBicgstab.html#acc2c5edb8f0a83c4f5f86dc2ab456f0d', 1, 'SolverBicgstab::SolverBicgstab(SolverControl &cn, const AdditionalData &data=AdditionalData())']\n+ ['../classSolverBicgstab.html#acc2c5edb8f0a83c4f5f86dc2ab456f0d', 1, 'SolverBicgstab::SolverBicgstab(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n+ ['../classGinkgoWrappers_1_1SolverBicgstab.html#a47b1bc47fdaf96d295673465ec19c56c', 1, 'GinkgoWrappers::SolverBicgstab::SolverBicgstab()'],\n+ ['../classPETScWrappers_1_1SolverBicgstab.html', 1, 'PETScWrappers::SolverBicgstab'],\n+ ['../classSolverBicgstab.html', 1, 'SolverBicgstab< VectorType >'],\n+ ['../classTrilinosWrappers_1_1SolverBicgstab.html', 1, 'TrilinosWrappers::SolverBicgstab'],\n+ ['../classTrilinosWrappers_1_1SolverBicgstab.html#acc2c5edb8f0a83c4f5f86dc2ab456f0d', 1, 'TrilinosWrappers::SolverBicgstab::SolverBicgstab()']\n ]],\n ['solverbicgstab_3c_20vector_3c_20double_20_3e_20_3e_768', ['SolverBicgstab< Vector< double > >', ['../classSolverBicgstab.html', 1, '']]],\n- ['solvercg_769', ['solvercg', ['../classPETScWrappers_1_1SolverCG.html#a709f22978412ced9c1984b31811de13e', 1, 'PETScWrappers::SolverCG::SolverCG()'],\n- ['../classPETScWrappers_1_1SolverCG.html', 1, 'PETScWrappers::SolverCG'],\n- ['../classGinkgoWrappers_1_1SolverCG.html', 1, 'GinkgoWrappers::SolverCG< ValueType, IndexType >'],\n- ['../classGinkgoWrappers_1_1SolverCG.html#aaf068d334271911d21cdee2e56cc8f32', 1, 'GinkgoWrappers::SolverCG::SolverCG(SolverControl &solver_control, const std::string &exec_type, const AdditionalData &data=AdditionalData())'],\n- ['../classGinkgoWrappers_1_1SolverCG.html#aaa19465f906060b111c39819f1cab58a', 1, 'GinkgoWrappers::SolverCG::SolverCG(SolverControl &solver_control, const std::string &exec_type, const std::shared_ptr< gko::LinOpFactory > &preconditioner, const AdditionalData &data=AdditionalData())'],\n- ['../classPETScWrappers_1_1SolverCG.html#ac718f419a97ebc6d5106582f0d9b9c24', 1, 'PETScWrappers::SolverCG::SolverCG()'],\n+ ['solvercg_769', ['solvercg', ['../classGinkgoWrappers_1_1SolverCG.html#aaf068d334271911d21cdee2e56cc8f32', 1, 'GinkgoWrappers::SolverCG::SolverCG()'],\n ['../namespaceLinearAlgebraPETSc.html#a9d2c129d77c89b40badfb65d94c5b955', 1, 'LinearAlgebraPETSc::SolverCG'],\n ['../namespaceLinearAlgebraTrilinos.html#a35ee62c1750ac815314b2bf20ea5ef96', 1, 'LinearAlgebraTrilinos::SolverCG'],\n- ['../classSolverCG.html#a2187c160f9c9110225216269fba54636', 1, 'SolverCG::SolverCG(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())'],\n- ['../classSolverCG.html#ac718f419a97ebc6d5106582f0d9b9c24', 1, 'SolverCG::SolverCG(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n- ['../classTrilinosWrappers_1_1SolverCG.html#ac718f419a97ebc6d5106582f0d9b9c24', 1, 'TrilinosWrappers::SolverCG::SolverCG()'],\n+ ['../classGinkgoWrappers_1_1SolverCG.html', 1, 'GinkgoWrappers::SolverCG< ValueType, IndexType >'],\n+ ['../classPETScWrappers_1_1SolverCG.html', 1, 'PETScWrappers::SolverCG'],\n ['../classSolverCG.html', 1, 'SolverCG< VectorType >'],\n- ['../classTrilinosWrappers_1_1SolverCG.html', 1, 'TrilinosWrappers::SolverCG']\n+ ['../classTrilinosWrappers_1_1SolverCG.html', 1, 'TrilinosWrappers::SolverCG'],\n+ ['../classGinkgoWrappers_1_1SolverCG.html#aaa19465f906060b111c39819f1cab58a', 1, 'GinkgoWrappers::SolverCG::SolverCG()'],\n+ ['../classPETScWrappers_1_1SolverCG.html#ac718f419a97ebc6d5106582f0d9b9c24', 1, 'PETScWrappers::SolverCG::SolverCG(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n+ ['../classPETScWrappers_1_1SolverCG.html#a709f22978412ced9c1984b31811de13e', 1, 'PETScWrappers::SolverCG::SolverCG(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n+ ['../classTrilinosWrappers_1_1SolverCG.html#ac718f419a97ebc6d5106582f0d9b9c24', 1, 'TrilinosWrappers::SolverCG::SolverCG()'],\n+ ['../classSolverCG.html#ac718f419a97ebc6d5106582f0d9b9c24', 1, 'SolverCG::SolverCG(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n+ ['../classSolverCG.html#a2187c160f9c9110225216269fba54636', 1, 'SolverCG::SolverCG(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())']\n ]],\n ['solvercg_3c_20vector_3c_20double_20_3e_20_3e_770', ['SolverCG< Vector< double > >', ['../classSolverCG.html', 1, '']]],\n ['solvercgs_771', ['solvercgs', ['../classTrilinosWrappers_1_1SolverCGS.html', 1, 'TrilinosWrappers::SolverCGS'],\n- ['../classGinkgoWrappers_1_1SolverCGS.html', 1, 'GinkgoWrappers::SolverCGS< ValueType, IndexType >'],\n ['../classPETScWrappers_1_1SolverCGS.html', 1, 'PETScWrappers::SolverCGS'],\n- ['../classPETScWrappers_1_1SolverCGS.html#a8e5e61c71e20287f1d536eede3c80250', 1, 'PETScWrappers::SolverCGS::SolverCGS()'],\n+ ['../classGinkgoWrappers_1_1SolverCGS.html', 1, 'GinkgoWrappers::SolverCGS< ValueType, IndexType >'],\n ['../classGinkgoWrappers_1_1SolverCGS.html#a22d134ccb3c8f6e3117f605eb8c8cdb0', 1, 'GinkgoWrappers::SolverCGS::SolverCGS(SolverControl &solver_control, const std::string &exec_type, const AdditionalData &data=AdditionalData())'],\n ['../classGinkgoWrappers_1_1SolverCGS.html#ab81c201db2651bd6147720b0a860678c', 1, 'GinkgoWrappers::SolverCGS::SolverCGS(SolverControl &solver_control, const std::string &exec_type, const std::shared_ptr< gko::LinOpFactory > &preconditioner, const AdditionalData &data=AdditionalData())'],\n- ['../classTrilinosWrappers_1_1SolverCGS.html#a7660c43c2126fd7b11407628a8af5452', 1, 'TrilinosWrappers::SolverCGS::SolverCGS()'],\n- ['../classPETScWrappers_1_1SolverCGS.html#af0038d79c2c4d9a103fb69ec8041b8eb', 1, 'PETScWrappers::SolverCGS::SolverCGS()']\n- ]],\n- ['solverchebychev_772', ['solverchebychev', ['../classPETScWrappers_1_1SolverChebychev.html#af2db283409bc62e3e567ac510b43f2fe', 1, 'PETScWrappers::SolverChebychev::SolverChebychev()'],\n- ['../classPETScWrappers_1_1SolverChebychev.html', 1, 'PETScWrappers::SolverChebychev'],\n- ['../classPETScWrappers_1_1SolverChebychev.html#a76ed2eea2a7769290acd5c2e12298ce7', 1, 'PETScWrappers::SolverChebychev::SolverChebychev()']\n+ ['../classPETScWrappers_1_1SolverCGS.html#a8e5e61c71e20287f1d536eede3c80250', 1, 'PETScWrappers::SolverCGS::SolverCGS(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n+ ['../classPETScWrappers_1_1SolverCGS.html#af0038d79c2c4d9a103fb69ec8041b8eb', 1, 'PETScWrappers::SolverCGS::SolverCGS(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n+ ['../classTrilinosWrappers_1_1SolverCGS.html#a7660c43c2126fd7b11407628a8af5452', 1, 'TrilinosWrappers::SolverCGS::SolverCGS()']\n+ ]],\n+ ['solverchebychev_772', ['solverchebychev', ['../classPETScWrappers_1_1SolverChebychev.html', 1, 'PETScWrappers::SolverChebychev'],\n+ ['../classPETScWrappers_1_1SolverChebychev.html#a76ed2eea2a7769290acd5c2e12298ce7', 1, 'PETScWrappers::SolverChebychev::SolverChebychev(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n+ ['../classPETScWrappers_1_1SolverChebychev.html#af2db283409bc62e3e567ac510b43f2fe', 1, 'PETScWrappers::SolverChebychev::SolverChebychev(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())']\n ]],\n ['solvercontrol_773', ['solvercontrol', ['../classSolverControl.html', 1, 'SolverControl'],\n ['../classSolverControl.html#ac9a5ec4ae55d86114eb7610f21d9a792', 1, 'SolverControl::SolverControl()']\n ]],\n ['solvercr_774', ['solvercr', ['../classPETScWrappers_1_1SolverCR.html#a6f11bd17232d1a2c958c1ddc4a15ae0d', 1, 'PETScWrappers::SolverCR::SolverCR(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n ['../classPETScWrappers_1_1SolverCR.html#adbfb52be98571d686fc99aed3aa6bae0', 1, 'PETScWrappers::SolverCR::SolverCR(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n ['../classPETScWrappers_1_1SolverCR.html', 1, 'PETScWrappers::SolverCR']\n@@ -1999,175 +1999,175 @@\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirect.html', 1, 'LinearAlgebra::TpetraWrappers::SolverDirect< Number, MemorySpace >'],\n ['../classTrilinosWrappers_1_1SolverDirect.html', 1, 'TrilinosWrappers::SolverDirect']\n ]],\n ['solverdirectbase_776', ['solverdirectbase', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectBase.html#a64e35ad0ac12c39a105b4b99a7aee51f', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectBase::SolverDirectBase()'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectBase.html', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectBase< Number, MemorySpace >']\n ]],\n ['solverdirectbase_3c_20number_2c_20_3a_3amemoryspace_3a_3ahost_20_3e_777', ['SolverDirectBase< Number, ::MemorySpace::Host >', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectBase.html', 1, 'LinearAlgebra::TpetraWrappers']]],\n- ['solverdirectklu2_778', ['solverdirectklu2', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectKLU2.html', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectKLU2< Number, MemorySpace >'],\n- ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectKLU2.html#ab3a76c2c5a453cb54efcbc7434c7cb82', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectKLU2::SolverDirectKLU2()']\n+ ['solverdirectklu2_778', ['solverdirectklu2', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectKLU2.html#ab3a76c2c5a453cb54efcbc7434c7cb82', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectKLU2::SolverDirectKLU2()'],\n+ ['../classLinearAlgebra_1_1TpetraWrappers_1_1SolverDirectKLU2.html', 1, 'LinearAlgebra::TpetraWrappers::SolverDirectKLU2< Number, MemorySpace >']\n ]],\n- ['solverfcg_779', ['solverfcg', ['../classGinkgoWrappers_1_1SolverFCG.html', 1, 'GinkgoWrappers::SolverFCG< ValueType, IndexType >'],\n- ['../classGinkgoWrappers_1_1SolverFCG.html#ab0a0de9f505021b179488333a21e4594', 1, 'GinkgoWrappers::SolverFCG::SolverFCG(SolverControl &solver_control, const std::string &exec_type, const AdditionalData &data=AdditionalData())'],\n- ['../classGinkgoWrappers_1_1SolverFCG.html#afd741d566294831fac6b06ec16437a0b', 1, 'GinkgoWrappers::SolverFCG::SolverFCG(SolverControl &solver_control, const std::string &exec_type, const std::shared_ptr< gko::LinOpFactory > &preconditioner, const AdditionalData &data=AdditionalData())']\n- ]],\n- ['solverfgmres_780', ['solverfgmres', ['../classSolverFGMRES.html', 1, 'SolverFGMRES< VectorType >'],\n- ['../classSolverFGMRES.html#a1fdfa99be49ee8ca02c00b1ee021a7ea', 1, 'SolverFGMRES::SolverFGMRES(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())'],\n- ['../classSolverFGMRES.html#a5710da72286b4b24181be839b23c9320', 1, 'SolverFGMRES::SolverFGMRES(SolverControl &cn, const AdditionalData &data=AdditionalData())']\n+ ['solverfcg_779', ['solverfcg', ['../classGinkgoWrappers_1_1SolverFCG.html#ab0a0de9f505021b179488333a21e4594', 1, 'GinkgoWrappers::SolverFCG::SolverFCG(SolverControl &solver_control, const std::string &exec_type, const AdditionalData &data=AdditionalData())'],\n+ ['../classGinkgoWrappers_1_1SolverFCG.html#afd741d566294831fac6b06ec16437a0b', 1, 'GinkgoWrappers::SolverFCG::SolverFCG(SolverControl &solver_control, const std::string &exec_type, const std::shared_ptr< gko::LinOpFactory > &preconditioner, const AdditionalData &data=AdditionalData())'],\n+ ['../classGinkgoWrappers_1_1SolverFCG.html', 1, 'GinkgoWrappers::SolverFCG< ValueType, IndexType >']\n+ ]],\n+ ['solverfgmres_780', ['solverfgmres', ['../classSolverFGMRES.html#a1fdfa99be49ee8ca02c00b1ee021a7ea', 1, 'SolverFGMRES::SolverFGMRES(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())'],\n+ ['../classSolverFGMRES.html#a5710da72286b4b24181be839b23c9320', 1, 'SolverFGMRES::SolverFGMRES(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n+ ['../classSolverFGMRES.html', 1, 'SolverFGMRES< VectorType >']\n ]],\n ['solverfgmres_3c_20vector_3c_20double_20_3e_20_3e_781', ['SolverFGMRES< Vector< double > >', ['../classSolverFGMRES.html', 1, '']]],\n- ['solverfire_782', ['solverfire', ['../classSolverFIRE.html', 1, 'SolverFIRE< VectorType >'],\n- ['../classSolverFIRE.html#a0e3e9a3aff48c7ad602e536a66c67b35', 1, 'SolverFIRE::SolverFIRE(SolverControl &solver_control, VectorMemory< VectorType > &vector_memory, const AdditionalData &data=AdditionalData())'],\n- ['../classSolverFIRE.html#aa728a90d310d39eb529261110064b44d', 1, 'SolverFIRE::SolverFIRE(SolverControl &solver_control, const AdditionalData &data=AdditionalData())']\n- ]],\n- ['solverflexiblecg_783', ['solverflexiblecg', ['../classSolverFlexibleCG.html#aea3a3daf1f09ac464a8525de8b7234c9', 1, 'SolverFlexibleCG::SolverFlexibleCG(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n- ['../classSolverFlexibleCG.html#aea5e0e9e656bb8cead918dbc359a9965', 1, 'SolverFlexibleCG::SolverFlexibleCG(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())'],\n- ['../classSolverFlexibleCG.html', 1, 'SolverFlexibleCG< VectorType >']\n+ ['solverfire_782', ['solverfire', ['../classSolverFIRE.html#aa728a90d310d39eb529261110064b44d', 1, 'SolverFIRE::SolverFIRE()'],\n+ ['../classSolverFIRE.html', 1, 'SolverFIRE< VectorType >'],\n+ ['../classSolverFIRE.html#a0e3e9a3aff48c7ad602e536a66c67b35', 1, 'SolverFIRE::SolverFIRE()']\n+ ]],\n+ ['solverflexiblecg_783', ['solverflexiblecg', ['../classSolverFlexibleCG.html', 1, 'SolverFlexibleCG< VectorType >'],\n+ ['../classSolverFlexibleCG.html#aea3a3daf1f09ac464a8525de8b7234c9', 1, 'SolverFlexibleCG::SolverFlexibleCG(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n+ ['../classSolverFlexibleCG.html#aea5e0e9e656bb8cead918dbc359a9965', 1, 'SolverFlexibleCG::SolverFlexibleCG(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())']\n ]],\n ['solvergeneralizeddavidson_784', ['solvergeneralizeddavidson', ['../classSLEPcWrappers_1_1SolverGeneralizedDavidson.html#a9cdc4915c3ec61614738ccb4e4fd3b2e', 1, 'SLEPcWrappers::SolverGeneralizedDavidson::SolverGeneralizedDavidson()'],\n ['../classSLEPcWrappers_1_1SolverGeneralizedDavidson.html', 1, 'SLEPcWrappers::SolverGeneralizedDavidson']\n ]],\n- ['solvergmres_785', ['solvergmres', ['../classGinkgoWrappers_1_1SolverGMRES.html', 1, 'GinkgoWrappers::SolverGMRES< ValueType, IndexType >'],\n- ['../classPETScWrappers_1_1SolverGMRES.html', 1, 'PETScWrappers::SolverGMRES'],\n- ['../classSolverGMRES.html', 1, 'SolverGMRES< VectorType >'],\n+ ['solvergmres_785', ['solvergmres', ['../classGinkgoWrappers_1_1SolverGMRES.html#a68dde65089c8c0100212acabbaf8a7ae', 1, 'GinkgoWrappers::SolverGMRES::SolverGMRES()'],\n ['../classTrilinosWrappers_1_1SolverGMRES.html', 1, 'TrilinosWrappers::SolverGMRES'],\n+ ['../classSolverGMRES.html', 1, 'SolverGMRES< VectorType >'],\n+ ['../namespaceLinearAlgebraPETSc.html#a9b3a0b860cbd543367526766a589aa6f', 1, 'LinearAlgebraPETSc::SolverGMRES'],\n+ ['../namespaceLinearAlgebraTrilinos.html#a15dc1560501d6bec5adadd22d3401a12', 1, 'LinearAlgebraTrilinos::SolverGMRES'],\n+ ['../classPETScWrappers_1_1SolverGMRES.html', 1, 'PETScWrappers::SolverGMRES'],\n+ ['../classGinkgoWrappers_1_1SolverGMRES.html', 1, 'GinkgoWrappers::SolverGMRES< ValueType, IndexType >'],\n+ ['../classGinkgoWrappers_1_1SolverGMRES.html#a0ec5b512f67d96e0792348c5088b4f16', 1, 'GinkgoWrappers::SolverGMRES::SolverGMRES()'],\n ['../classTrilinosWrappers_1_1SolverGMRES.html#ad9eab644dfb3f3cb2f7aaea962310ff8', 1, 'TrilinosWrappers::SolverGMRES::SolverGMRES()'],\n ['../classSolverGMRES.html#a20fea69602a523fdb4314ad8d58f22eb', 1, 'SolverGMRES::SolverGMRES(const SolverGMRES< VectorType > &)=delete'],\n ['../classSolverGMRES.html#ad9eab644dfb3f3cb2f7aaea962310ff8', 1, 'SolverGMRES::SolverGMRES(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n ['../classSolverGMRES.html#a7daabdaa13f77bfd0af4b3c3079f2caf', 1, 'SolverGMRES::SolverGMRES(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())'],\n ['../classPETScWrappers_1_1SolverGMRES.html#a0f3a37da80ddd43051e58d68b0265110', 1, 'PETScWrappers::SolverGMRES::SolverGMRES(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n- ['../classPETScWrappers_1_1SolverGMRES.html#ad9eab644dfb3f3cb2f7aaea962310ff8', 1, 'PETScWrappers::SolverGMRES::SolverGMRES(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n- ['../classGinkgoWrappers_1_1SolverGMRES.html#a0ec5b512f67d96e0792348c5088b4f16', 1, 'GinkgoWrappers::SolverGMRES::SolverGMRES(SolverControl &solver_control, const std::string &exec_type, const std::shared_ptr< gko::LinOpFactory > &preconditioner, const AdditionalData &data=AdditionalData())'],\n- ['../classGinkgoWrappers_1_1SolverGMRES.html#a68dde65089c8c0100212acabbaf8a7ae', 1, 'GinkgoWrappers::SolverGMRES::SolverGMRES(SolverControl &solver_control, const std::string &exec_type, const AdditionalData &data=AdditionalData())'],\n- ['../namespaceLinearAlgebraPETSc.html#a9b3a0b860cbd543367526766a589aa6f', 1, 'LinearAlgebraPETSc::SolverGMRES'],\n- ['../namespaceLinearAlgebraTrilinos.html#a15dc1560501d6bec5adadd22d3401a12', 1, 'LinearAlgebraTrilinos::SolverGMRES']\n+ ['../classPETScWrappers_1_1SolverGMRES.html#ad9eab644dfb3f3cb2f7aaea962310ff8', 1, 'PETScWrappers::SolverGMRES::SolverGMRES(SolverControl &cn, const AdditionalData &data=AdditionalData())']\n ]],\n ['solvergmres_3c_20vector_3c_20double_20_3e_20_3e_786', ['SolverGMRES< Vector< double > >', ['../classSolverGMRES.html', 1, '']]],\n ['solveridr_787', ['solveridr', ['../classSolverIDR.html#ab6b7070d69acdaed22f1cdfec8069d1c', 1, 'SolverIDR::SolverIDR(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())'],\n ['../classSolverIDR.html#a1f59609cde6d24bb4d267d5ce75cf07e', 1, 'SolverIDR::SolverIDR(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n ['../classSolverIDR.html', 1, 'SolverIDR< VectorType >']\n ]],\n- ['solverir_788', ['solverir', ['../classGinkgoWrappers_1_1SolverIR.html', 1, 'GinkgoWrappers::SolverIR< ValueType, IndexType >'],\n- ['../classGinkgoWrappers_1_1SolverIR.html#a68b92f260afbe96579654dff037578a3', 1, 'GinkgoWrappers::SolverIR::SolverIR(SolverControl &solver_control, const std::string &exec_type, const AdditionalData &data=AdditionalData())'],\n- ['../classGinkgoWrappers_1_1SolverIR.html#a6772e1507a4403a1a401fa24b9aed2e2', 1, 'GinkgoWrappers::SolverIR::SolverIR(SolverControl &solver_control, const std::string &exec_type, const std::shared_ptr< gko::LinOpFactory > &inner_solver, const AdditionalData &data=AdditionalData())']\n+ ['solverir_788', ['solverir', ['../classGinkgoWrappers_1_1SolverIR.html#a68b92f260afbe96579654dff037578a3', 1, 'GinkgoWrappers::SolverIR::SolverIR()'],\n+ ['../classGinkgoWrappers_1_1SolverIR.html', 1, 'GinkgoWrappers::SolverIR< ValueType, IndexType >'],\n+ ['../classGinkgoWrappers_1_1SolverIR.html#a6772e1507a4403a1a401fa24b9aed2e2', 1, 'GinkgoWrappers::SolverIR::SolverIR()']\n ]],\n ['solverjacobidavidson_789', ['solverjacobidavidson', ['../classSLEPcWrappers_1_1SolverJacobiDavidson.html', 1, 'SLEPcWrappers::SolverJacobiDavidson'],\n ['../classSLEPcWrappers_1_1SolverJacobiDavidson.html#a2d45b7b83bd93a833f987e0677d53502', 1, 'SLEPcWrappers::SolverJacobiDavidson::SolverJacobiDavidson()']\n ]],\n- ['solverkrylovschur_790', ['solverkrylovschur', ['../classSLEPcWrappers_1_1SolverKrylovSchur.html#af8e7bf5848b9ad9b4e8fd36981d570d2', 1, 'SLEPcWrappers::SolverKrylovSchur::SolverKrylovSchur()'],\n- ['../classSLEPcWrappers_1_1SolverKrylovSchur.html', 1, 'SLEPcWrappers::SolverKrylovSchur']\n+ ['solverkrylovschur_790', ['solverkrylovschur', ['../classSLEPcWrappers_1_1SolverKrylovSchur.html', 1, 'SLEPcWrappers::SolverKrylovSchur'],\n+ ['../classSLEPcWrappers_1_1SolverKrylovSchur.html#af8e7bf5848b9ad9b4e8fd36981d570d2', 1, 'SLEPcWrappers::SolverKrylovSchur::SolverKrylovSchur()']\n ]],\n ['solverlanczos_791', ['solverlanczos', ['../classSLEPcWrappers_1_1SolverLanczos.html', 1, 'SLEPcWrappers::SolverLanczos'],\n ['../classSLEPcWrappers_1_1SolverLanczos.html#afe01b4f89ef310e7fc5da80306433930', 1, 'SLEPcWrappers::SolverLanczos::SolverLanczos()']\n ]],\n ['solverlapack_792', ['solverlapack', ['../classSLEPcWrappers_1_1SolverLAPACK.html#a02d84c27e448f9ac014c8c3988031da9', 1, 'SLEPcWrappers::SolverLAPACK::SolverLAPACK()'],\n ['../classSLEPcWrappers_1_1SolverLAPACK.html', 1, 'SLEPcWrappers::SolverLAPACK']\n ]],\n- ['solverlsqr_793', ['solverlsqr', ['../classPETScWrappers_1_1SolverLSQR.html#a83916ac11c4e456b9c714c972535099a', 1, 'PETScWrappers::SolverLSQR::SolverLSQR(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n- ['../classPETScWrappers_1_1SolverLSQR.html#af0562adb7a3192d66d7ba66aa211addd', 1, 'PETScWrappers::SolverLSQR::SolverLSQR(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n+ ['solverlsqr_793', ['solverlsqr', ['../classPETScWrappers_1_1SolverLSQR.html#af0562adb7a3192d66d7ba66aa211addd', 1, 'PETScWrappers::SolverLSQR::SolverLSQR(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n+ ['../classPETScWrappers_1_1SolverLSQR.html#a83916ac11c4e456b9c714c972535099a', 1, 'PETScWrappers::SolverLSQR::SolverLSQR(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n ['../classPETScWrappers_1_1SolverLSQR.html', 1, 'PETScWrappers::SolverLSQR']\n ]],\n- ['solverminres_794', ['solverminres', ['../classSolverMinRes.html#af40c973a8d6a619b1f77a014135551e7', 1, 'SolverMinRes::SolverMinRes()'],\n- ['../classSolverMinRes.html', 1, 'SolverMinRes< VectorType >'],\n- ['../classSolverMinRes.html#a7271274e0ae6165786c16cedb56e190d', 1, 'SolverMinRes::SolverMinRes()']\n+ ['solverminres_794', ['solverminres', ['../classSolverMinRes.html#a7271274e0ae6165786c16cedb56e190d', 1, 'SolverMinRes::SolverMinRes(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n+ ['../classSolverMinRes.html#af40c973a8d6a619b1f77a014135551e7', 1, 'SolverMinRes::SolverMinRes(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())'],\n+ ['../classSolverMinRes.html', 1, 'SolverMinRes< VectorType >']\n ]],\n ['solverminres_3c_20vector_3c_20double_20_3e_20_3e_795', ['SolverMinRes< Vector< double > >', ['../classSolverMinRes.html', 1, '']]],\n- ['solvername_796', ['solvername', ['../classTrilinosWrappers_1_1SolverBelos.html#a9f38d6d3139d6f3ebc8d11df949acf99', 1, 'TrilinosWrappers::SolverBelos::SolverName'],\n- ['../classTrilinosWrappers_1_1SolverBase.html#afdefddba07cdfc566bfb749bcb5b0840', 1, 'TrilinosWrappers::SolverBase::SolverName']\n+ ['solvername_796', ['solvername', ['../classTrilinosWrappers_1_1SolverBase.html#afdefddba07cdfc566bfb749bcb5b0840', 1, 'TrilinosWrappers::SolverBase::SolverName'],\n+ ['../classTrilinosWrappers_1_1SolverBelos.html#a9f38d6d3139d6f3ebc8d11df949acf99', 1, 'TrilinosWrappers::SolverBelos::SolverName']\n ]],\n ['solverpower_797', ['solverpower', ['../classSLEPcWrappers_1_1SolverPower.html#ae14fba5d7247099fae0330574ede25b3', 1, 'SLEPcWrappers::SolverPower::SolverPower()'],\n ['../classSLEPcWrappers_1_1SolverPower.html', 1, 'SLEPcWrappers::SolverPower']\n ]],\n- ['solverpreonly_798', ['solverpreonly', ['../classPETScWrappers_1_1SolverPreOnly.html#ab952eb3be00bb170dba7eda3481cd53c', 1, 'PETScWrappers::SolverPreOnly::SolverPreOnly(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n- ['../classPETScWrappers_1_1SolverPreOnly.html#a56978231e8a37364c38841ea29569346', 1, 'PETScWrappers::SolverPreOnly::SolverPreOnly(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n- ['../classPETScWrappers_1_1SolverPreOnly.html', 1, 'PETScWrappers::SolverPreOnly']\n+ ['solverpreonly_798', ['solverpreonly', ['../classPETScWrappers_1_1SolverPreOnly.html#a56978231e8a37364c38841ea29569346', 1, 'PETScWrappers::SolverPreOnly::SolverPreOnly()'],\n+ ['../classPETScWrappers_1_1SolverPreOnly.html', 1, 'PETScWrappers::SolverPreOnly'],\n+ ['../classPETScWrappers_1_1SolverPreOnly.html#ab952eb3be00bb170dba7eda3481cd53c', 1, 'PETScWrappers::SolverPreOnly::SolverPreOnly()']\n ]],\n- ['solverqmrs_799', ['solverqmrs', ['../classSolverQMRS.html', 1, 'SolverQMRS< VectorType >'],\n+ ['solverqmrs_799', ['solverqmrs', ['../classSolverQMRS.html#a8201dc99bc89a5ccc43334c0691d2f33', 1, 'SolverQMRS::SolverQMRS(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())'],\n ['../classSolverQMRS.html#ada0b6490b76d98824b9b426ba54a6004', 1, 'SolverQMRS::SolverQMRS(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n- ['../classSolverQMRS.html#a8201dc99bc89a5ccc43334c0691d2f33', 1, 'SolverQMRS::SolverQMRS(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())']\n+ ['../classSolverQMRS.html', 1, 'SolverQMRS< VectorType >']\n ]],\n ['solverrelaxation_800', ['solverrelaxation', ['../classSolverRelaxation.html#a4b0fd7a74033570e6b621398d7e35d28', 1, 'SolverRelaxation::SolverRelaxation()'],\n ['../classSolverRelaxation.html', 1, 'SolverRelaxation< VectorType >']\n ]],\n- ['solverrichardson_801', ['solverrichardson', ['../classPETScWrappers_1_1SolverRichardson.html#af4b2589f5d94f28bd8cd2f46c96fb148', 1, 'PETScWrappers::SolverRichardson::SolverRichardson(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n- ['../classPETScWrappers_1_1SolverRichardson.html#ab4e9021a5e0605b90f705add33642b26', 1, 'PETScWrappers::SolverRichardson::SolverRichardson(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n+ ['solverrichardson_801', ['solverrichardson', ['../classSolverRichardson.html#af4b2589f5d94f28bd8cd2f46c96fb148', 1, 'SolverRichardson::SolverRichardson(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n ['../classSolverRichardson.html#ab8a731576438f1175595037583b11d7b', 1, 'SolverRichardson::SolverRichardson(SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData())'],\n- ['../classSolverRichardson.html#af4b2589f5d94f28bd8cd2f46c96fb148', 1, 'SolverRichardson::SolverRichardson(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n+ ['../classPETScWrappers_1_1SolverRichardson.html#af4b2589f5d94f28bd8cd2f46c96fb148', 1, 'PETScWrappers::SolverRichardson::SolverRichardson()'],\n ['../classSolverRichardson.html', 1, 'SolverRichardson< VectorType >'],\n+ ['../classPETScWrappers_1_1SolverRichardson.html#ab4e9021a5e0605b90f705add33642b26', 1, 'PETScWrappers::SolverRichardson::SolverRichardson()'],\n ['../classPETScWrappers_1_1SolverRichardson.html', 1, 'PETScWrappers::SolverRichardson']\n ]],\n ['solverrichardson_3c_20vector_3c_20double_20_3e_20_3e_802', ['SolverRichardson< Vector< double > >', ['../classSolverRichardson.html', 1, '']]],\n ['solvers_2eh_803', ['solvers.h', ['../solvers_8h.html', 1, '']]],\n- ['solverselector_804', ['solverselector', ['../classSolverSelector.html#adfb445fd78a4d060a9e5c3dd7b78131a', 1, 'SolverSelector::SolverSelector(const std::string &name, SolverControl &control)'],\n- ['../classSolverSelector.html#ab703bd437df4bb59a7d6b031b8ba6824', 1, 'SolverSelector::SolverSelector()=default'],\n- ['../classSolverSelector.html', 1, 'SolverSelector< VectorType >']\n- ]],\n- ['solvertcqmr_805', ['solvertcqmr', ['../classPETScWrappers_1_1SolverTCQMR.html', 1, 'PETScWrappers::SolverTCQMR'],\n- ['../classPETScWrappers_1_1SolverTCQMR.html#a7814d604dc03de6e9ca40e2477c087ef', 1, 'PETScWrappers::SolverTCQMR::SolverTCQMR(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n- ['../classPETScWrappers_1_1SolverTCQMR.html#ae32fe5a5a99c2f1271a5158bd35c2255', 1, 'PETScWrappers::SolverTCQMR::SolverTCQMR(SolverControl &cn, const AdditionalData &data=AdditionalData())']\n+ ['solverselector_804', ['solverselector', ['../classSolverSelector.html#adfb445fd78a4d060a9e5c3dd7b78131a', 1, 'SolverSelector::SolverSelector()'],\n+ ['../classSolverSelector.html', 1, 'SolverSelector< VectorType >'],\n+ ['../classSolverSelector.html#ab703bd437df4bb59a7d6b031b8ba6824', 1, 'SolverSelector::SolverSelector()']\n+ ]],\n+ ['solvertcqmr_805', ['solvertcqmr', ['../classPETScWrappers_1_1SolverTCQMR.html#ae32fe5a5a99c2f1271a5158bd35c2255', 1, 'PETScWrappers::SolverTCQMR::SolverTCQMR()'],\n+ ['../classPETScWrappers_1_1SolverTCQMR.html', 1, 'PETScWrappers::SolverTCQMR'],\n+ ['../classPETScWrappers_1_1SolverTCQMR.html#a7814d604dc03de6e9ca40e2477c087ef', 1, 'PETScWrappers::SolverTCQMR::SolverTCQMR()']\n ]],\n- ['solvertfqmr_806', ['solvertfqmr', ['../classTrilinosWrappers_1_1SolverTFQMR.html#aa472b93bb7f412ec5f543ec0768f1634', 1, 'TrilinosWrappers::SolverTFQMR::SolverTFQMR()'],\n- ['../classPETScWrappers_1_1SolverTFQMR.html#a915b832900f25c6b0e533ac414f765dc', 1, 'PETScWrappers::SolverTFQMR::SolverTFQMR(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n- ['../classPETScWrappers_1_1SolverTFQMR.html#ae3b70779943b2d6b151f500662a56f68', 1, 'PETScWrappers::SolverTFQMR::SolverTFQMR(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n+ ['solvertfqmr_806', ['solvertfqmr', ['../classTrilinosWrappers_1_1SolverTFQMR.html', 1, 'TrilinosWrappers::SolverTFQMR'],\n ['../classPETScWrappers_1_1SolverTFQMR.html', 1, 'PETScWrappers::SolverTFQMR'],\n- ['../classTrilinosWrappers_1_1SolverTFQMR.html', 1, 'TrilinosWrappers::SolverTFQMR']\n+ ['../classTrilinosWrappers_1_1SolverTFQMR.html#aa472b93bb7f412ec5f543ec0768f1634', 1, 'TrilinosWrappers::SolverTFQMR::SolverTFQMR()'],\n+ ['../classPETScWrappers_1_1SolverTFQMR.html#a915b832900f25c6b0e533ac414f765dc', 1, 'PETScWrappers::SolverTFQMR::SolverTFQMR(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n+ ['../classPETScWrappers_1_1SolverTFQMR.html#ae3b70779943b2d6b151f500662a56f68', 1, 'PETScWrappers::SolverTFQMR::SolverTFQMR(SolverControl &cn, const AdditionalData &data=AdditionalData())']\n ]],\n ['solvertype_807', ['SolverType', ['../classNonlinearSolverSelector_1_1AdditionalData.html#a458e4d6fb204a1aacf159665e4b7d810', 1, 'NonlinearSolverSelector::AdditionalData']]],\n ['some_5fto_5fsome_808', ['some_to_some', ['../namespaceUtilities_1_1MPI.html#a45c66d6552aa01199a863a77221b64b3', 1, 'Utilities::MPI']]],\n ['sor_809', ['sor', ['../classSparseMatrix.html#ab0c29bffd5a8424e4fe12e0bde814b5b', 1, 'SparseMatrix::SOR()'],\n ['../classChunkSparseMatrix.html#ad53944dc7b09001d11ed026255cb358f', 1, 'ChunkSparseMatrix::SOR()']\n ]],\n ['sor_5fstep_810', ['sor_step', ['../classSparseMatrix.html#a198be3a66b3160777c2b511636dc17c7', 1, 'SparseMatrix::SOR_step()'],\n ['../classChunkSparseMatrix.html#afbed725005ae31c2043903c5528ba60a', 1, 'ChunkSparseMatrix::SOR_step()']\n ]],\n ['sorjacobi_811', ['SORJacobi', ['../structPETScWrappers_1_1PreconditionBoomerAMG_1_1AdditionalData.html#a5d92688a1fdd10088cddaf971b84e987a532f235785ea593b4cb5310addde46d0', 1, 'PETScWrappers::PreconditionBoomerAMG::AdditionalData']]],\n ['sort_812', ['sort', ['../classTableIndices.html#a8749a68bcfa5ab2892017dcfd95b9122', 1, 'TableIndices']]],\n- ['sort_5farrays_813', ['sort_arrays', ['../classSparseDirectUMFPACK.html#a89de20908e57f7b8b3761d18441f131d', 1, 'SparseDirectUMFPACK::sort_arrays(const BlockSparseMatrix< number > &)'],\n+ ['sort_5farrays_813', ['sort_arrays', ['../classSparseDirectUMFPACK.html#a8f08924b9c05dbc4c4794d61ee23fb82', 1, 'SparseDirectUMFPACK::sort_arrays(const SparseMatrixEZ< number > &)'],\n ['../classSparseDirectUMFPACK.html#ab2aa3b8eefe3c7dab0423e024538a085', 1, 'SparseDirectUMFPACK::sort_arrays(const SparseMatrix< number > &)'],\n- ['../classSparseDirectUMFPACK.html#a8f08924b9c05dbc4c4794d61ee23fb82', 1, 'SparseDirectUMFPACK::sort_arrays(const SparseMatrixEZ< number > &)']\n+ ['../classSparseDirectUMFPACK.html#a89de20908e57f7b8b3761d18441f131d', 1, 'SparseDirectUMFPACK::sort_arrays(const BlockSparseMatrix< number > &)']\n ]],\n ['sort_5fmemory_5fslots_814', ['sort_memory_slots', ['../classParticles_1_1PropertyPool.html#ab5269448f493a363138fe8f90cc0ecd5', 1, 'Particles::PropertyPool']]],\n ['sort_5fparticles_5finto_5fsubdomains_5fand_5fcells_815', ['sort_particles_into_subdomains_and_cells', ['../classParticles_1_1ParticleHandler.html#ad817e16828f2355b0cad6fef8db7df81', 1, 'Particles::ParticleHandler']]],\n- ['sort_5fselected_5fdofs_5fback_816', ['sort_selected_dofs_back', ['../namespaceDoFRenumbering.html#a443837e68de5c74cd84475034852aa2b', 1, 'DoFRenumbering::sort_selected_dofs_back(DoFHandler< dim, spacedim > &dof_handler, const std::vector< bool > &selected_dofs, const unsigned int level)'],\n- ['../namespaceDoFRenumbering.html#a7879b1de6248876edccd07c9b37d84c8', 1, 'DoFRenumbering::sort_selected_dofs_back(DoFHandler< dim, spacedim > &dof_handler, const std::vector< bool > &selected_dofs)']\n+ ['sort_5fselected_5fdofs_5fback_816', ['sort_selected_dofs_back', ['../namespaceDoFRenumbering.html#a7879b1de6248876edccd07c9b37d84c8', 1, 'DoFRenumbering::sort_selected_dofs_back(DoFHandler< dim, spacedim > &dof_handler, const std::vector< bool > &selected_dofs)'],\n+ ['../namespaceDoFRenumbering.html#a443837e68de5c74cd84475034852aa2b', 1, 'DoFRenumbering::sort_selected_dofs_back(DoFHandler< dim, spacedim > &dof_handler, const std::vector< bool > &selected_dofs, const unsigned int level)']\n ]],\n- ['sorted_817', ['sorted', ['../classAffineConstraints.html#a2cacb6fdc27f68b1db0766faff484604', 1, 'AffineConstraints::sorted'],\n- ['../namespaceinternal.html#aa1c66592673b9ca3c1f4adecdc7897cea26decc94d83c358f67f11c3cbd99b126', 1, 'internal::sorted']\n+ ['sorted_817', ['sorted', ['../namespaceinternal.html#aa1c66592673b9ca3c1f4adecdc7897cea26decc94d83c358f67f11c3cbd99b126', 1, 'internal::sorted'],\n+ ['../classAffineConstraints.html#a2cacb6fdc27f68b1db0766faff484604', 1, 'AffineConstraints::sorted']\n ]],\n ['sorteigenvaluesvectors_818', ['SortEigenValuesVectors', ['../structinternal_1_1SymmetricTensorImplementation_1_1SortEigenValuesVectors.html', 1, 'internal::SymmetricTensorImplementation']]],\n ['source_5f_819', ['source_', ['../classinternal_1_1AlignedVectorCopyConstruct.html#a059b579e814df28d5b93c9b0571df9dc', 1, 'internal::AlignedVectorCopyConstruct::source_'],\n ['../classinternal_1_1AlignedVectorMoveConstruct.html#a2223e1d503e4d732aa098eb7c1657efe', 1, 'internal::AlignedVectorMoveConstruct::source_']\n ]],\n ['source_5fgrid_820', ['source_grid', ['../classInterGridMap.html#a2b6f6a7b0ee53442d031e4bc83456195', 1, 'InterGridMap']]],\n ['source_5fstored_5felements_821', ['source_stored_elements', ['../classLinearAlgebra_1_1ReadWriteVector.html#abc229cf3f043c2d7ecc0ecacc2f39f2e', 1, 'LinearAlgebra::ReadWriteVector::source_stored_elements'],\n ['../classLinearAlgebra_1_1EpetraWrappers_1_1Vector.html#ad4eadb0393c133e24740e28c56fd1439', 1, 'LinearAlgebra::EpetraWrappers::Vector::source_stored_elements'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1Vector.html#a8fe4f215c6e5af20fa4cede83b6748e6', 1, 'LinearAlgebra::TpetraWrappers::Vector::source_stored_elements']\n ]],\n ['sourceclass_822', ['SourceClass', ['../classSourceClass.html', 1, '']]],\n ['sp_5fdescr_823', ['sp_descr', ['../classCUDAWrappers_1_1SparseMatrix.html#a9a8531c5bf108f2d7b44a7d30fa5866d', 1, 'CUDAWrappers::SparseMatrix']]],\n ['space_20descriptions_824', ['Finite element space descriptions', ['../group__fe.html', 1, '']]],\n- ['space_5fdim_825', ['space_dim', ['../structDataOutBase_1_1Patch_3_010_00_01spacedim_01_4.html#ad3ffd4adda353c536ea341c02520d251', 1, 'DataOutBase::Patch< 0, spacedim >::space_dim'],\n- ['../structDataOutBase_1_1Patch.html#a97333e18dad880741c9330f2d7be9fce', 1, 'DataOutBase::Patch::space_dim']\n+ ['space_5fdim_825', ['space_dim', ['../structDataOutBase_1_1Patch.html#a97333e18dad880741c9330f2d7be9fce', 1, 'DataOutBase::Patch::space_dim'],\n+ ['../structDataOutBase_1_1Patch_3_010_00_01spacedim_01_4.html#ad3ffd4adda353c536ea341c02520d251', 1, 'DataOutBase::Patch< 0, spacedim >::space_dim']\n ]],\n- ['space_5fdimension_826', ['space_dimension', ['../classTriaAccessorBase.html#a2131ba12ea4f87124032394f029e1ae7', 1, 'TriaAccessorBase::space_dimension'],\n- ['../classTriaAccessor_3_010_00_01dim_00_01spacedim_01_4.html#a05dc3108a2aa95039b63732034829d19', 1, 'TriaAccessor< 0, dim, spacedim >::space_dimension'],\n- ['../classInvalidAccessor.html#a2adb54058528be1e896c7a4a6e26d3f9', 1, 'InvalidAccessor::space_dimension'],\n- ['../classTriaAccessor_3_010_00_011_00_01spacedim_01_4.html#ac528d364fd6ca159bff216bdeb6852fe', 1, 'TriaAccessor< 0, 1, spacedim >::space_dimension'],\n+ ['space_5fdimension_826', ['space_dimension', ['../classMeshWorker_1_1IntegrationInfo.html#a1257b4a22d587f626f2fe83f3779721f', 1, 'MeshWorker::IntegrationInfo::space_dimension'],\n+ ['../classXDMFEntry.html#aecd2cf7afcf617f2576a9f7755d99d27', 1, 'XDMFEntry::space_dimension'],\n ['../classhp_1_1FEValues.html#ac1b163f9344510cc3ada47b87de95430', 1, 'hp::FEValues::space_dimension'],\n- ['../classMeshWorker_1_1IntegrationInfo.html#a1257b4a22d587f626f2fe83f3779721f', 1, 'MeshWorker::IntegrationInfo::space_dimension'],\n- ['../classFEValuesBase.html#a6541820cb52f78a4d43de18be0352002', 1, 'FEValuesBase::space_dimension'],\n- ['../classFEFaceValues.html#ac33217b956de1217f5009db6593f6174', 1, 'FEFaceValues::space_dimension'],\n- ['../classFiniteElement.html#a60f0839966450e669d1a6d4c6789e960', 1, 'FiniteElement::space_dimension'],\n- ['../classDoFHandler.html#a487655c6f995924828ebac2b002d9441', 1, 'DoFHandler::space_dimension'],\n- ['../classDoFAccessor_3_010_00_011_00_01spacedim_00_01level__dof__access_01_4.html#ab75512c4886db880024d402485f4ccca', 1, 'DoFAccessor< 0, 1, spacedim, level_dof_access >::space_dimension'],\n- ['../classDoFAccessor.html#a0ebf5625b40e2ecedaaeef5f684d3fab', 1, 'DoFAccessor::space_dimension'],\n ['../classCellDataStorage.html#aaf369129aeac25da22a15bdb2faadf0c', 1, 'CellDataStorage::space_dimension'],\n- ['../classXDMFEntry.html#aecd2cf7afcf617f2576a9f7755d99d27', 1, 'XDMFEntry::space_dimension'],\n+ ['../classDoFAccessor.html#a0ebf5625b40e2ecedaaeef5f684d3fab', 1, 'DoFAccessor::space_dimension'],\n+ ['../classDoFAccessor_3_010_00_011_00_01spacedim_00_01level__dof__access_01_4.html#ab75512c4886db880024d402485f4ccca', 1, 'DoFAccessor< 0, 1, spacedim, level_dof_access >::space_dimension'],\n+ ['../classDoFHandler.html#a487655c6f995924828ebac2b002d9441', 1, 'DoFHandler::space_dimension'],\n+ ['../classFiniteElement.html#a60f0839966450e669d1a6d4c6789e960', 1, 'FiniteElement::space_dimension'],\n+ ['../classFEFaceValues.html#ac33217b956de1217f5009db6593f6174', 1, 'FEFaceValues::space_dimension'],\n ['../classFESubfaceValues.html#a1a0da8b5685d0986f53208b1efad8849', 1, 'FESubfaceValues::space_dimension'],\n- ['../classTriangulation.html#a93d0da28b11e60e2efe59a24ebb3eb23', 1, 'Triangulation::space_dimension']\n+ ['../classTriangulation.html#a93d0da28b11e60e2efe59a24ebb3eb23', 1, 'Triangulation::space_dimension'],\n+ ['../classTriaAccessorBase.html#a2131ba12ea4f87124032394f029e1ae7', 1, 'TriaAccessorBase::space_dimension'],\n+ ['../classInvalidAccessor.html#a2adb54058528be1e896c7a4a6e26d3f9', 1, 'InvalidAccessor::space_dimension'],\n+ ['../classTriaAccessor_3_010_00_01dim_00_01spacedim_01_4.html#a05dc3108a2aa95039b63732034829d19', 1, 'TriaAccessor< 0, dim, spacedim >::space_dimension'],\n+ ['../classTriaAccessor_3_010_00_011_00_01spacedim_01_4.html#ac528d364fd6ca159bff216bdeb6852fe', 1, 'TriaAccessor< 0, 1, spacedim >::space_dimension'],\n+ ['../classFEValuesBase.html#a6541820cb52f78a4d43de18be0352002', 1, 'FEValuesBase::space_dimension']\n ]],\n ['space_5fdimension_5flabels_827', ['space_dimension_labels', ['../structDataOutBase_1_1GnuplotFlags.html#a1d7b4326557caa5cf7a04988fef96306', 1, 'DataOutBase::GnuplotFlags']]],\n ['space_5fvars_828', ['space_vars', ['../classFunctionManifold.html#a765a33128fca25cd021429a33b2fe967', 1, 'FunctionManifold']]],\n ['spacedim_829', ['spacedim', ['../classDoFCellAccessor.html#a8b0e36ef5665c0ad1921049acb84604e', 1, 'DoFCellAccessor::spacedim'],\n ['../classTorusManifold.html#a235b1553d95cd5dd1fc9ad90d59e4990', 1, 'TorusManifold::spacedim'],\n ['../classTensorProductManifold.html#a837ba00d9a8940603373132ec9d7e191', 1, 'TensorProductManifold::spacedim']\n ]],\n@@ -2187,38 +2187,38 @@\n ['sparse_5fmatrix_5fez_2eh_843', ['sparse_matrix_ez.h', ['../sparse__matrix__ez_8h.html', 1, '']]],\n ['sparse_5fmatrix_5finst2_2ecc_844', ['sparse_matrix_inst2.cc', ['../sparse__matrix__inst2_8cc.html', 1, '']]],\n ['sparse_5fmatrix_5ftools_2eh_845', ['sparse_matrix_tools.h', ['../sparse__matrix__tools_8h.html', 1, '']]],\n ['sparse_5fmic_2ecc_846', ['sparse_mic.cc', ['../sparse__mic_8cc.html', 1, '']]],\n ['sparse_5fmic_2eh_847', ['sparse_mic.h', ['../sparse__mic_8h.html', 1, '']]],\n ['sparse_5fvanka_2ecc_848', ['sparse_vanka.cc', ['../sparse__vanka_8cc.html', 1, '']]],\n ['sparse_5fvanka_2eh_849', ['sparse_vanka.h', ['../sparse__vanka_8h.html', 1, '']]],\n- ['sparseblockvanka_850', ['sparseblockvanka', ['../classSparseVanka.html#a124076b34c9c5c998b7d5b64ffb0cfc7', 1, 'SparseVanka::SparseBlockVanka'],\n+ ['sparseblockvanka_850', ['sparseblockvanka', ['../classSparseBlockVanka.html', 1, 'SparseBlockVanka< number >'],\n ['../classSparseBlockVanka.html#aaa8cdd87a01a0d331978494d4678f433', 1, 'SparseBlockVanka::SparseBlockVanka()'],\n- ['../classSparseBlockVanka.html', 1, 'SparseBlockVanka< number >']\n+ ['../classSparseVanka.html#a124076b34c9c5c998b7d5b64ffb0cfc7', 1, 'SparseVanka::SparseBlockVanka']\n ]],\n- ['sparsedirectmumps_851', ['sparsedirectmumps', ['../classPETScWrappers_1_1SparseDirectMUMPS.html#a90f3c6be5ff5a7a88d941e02d48167db', 1, 'PETScWrappers::SparseDirectMUMPS::SparseDirectMUMPS(SolverControl &cn, const AdditionalData &data=AdditionalData())'],\n- ['../classPETScWrappers_1_1SparseDirectMUMPS.html#a80b441683f6ff89891028e4cda7b63f5', 1, 'PETScWrappers::SparseDirectMUMPS::SparseDirectMUMPS(SolverControl &cn, const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())'],\n- ['../classPETScWrappers_1_1SparseDirectMUMPS.html', 1, 'PETScWrappers::SparseDirectMUMPS']\n+ ['sparsedirectmumps_851', ['sparsedirectmumps', ['../classPETScWrappers_1_1SparseDirectMUMPS.html#a90f3c6be5ff5a7a88d941e02d48167db', 1, 'PETScWrappers::SparseDirectMUMPS::SparseDirectMUMPS()'],\n+ ['../classPETScWrappers_1_1SparseDirectMUMPS.html', 1, 'PETScWrappers::SparseDirectMUMPS'],\n+ ['../classPETScWrappers_1_1SparseDirectMUMPS.html#a80b441683f6ff89891028e4cda7b63f5', 1, 'PETScWrappers::SparseDirectMUMPS::SparseDirectMUMPS()']\n ]],\n ['sparsedirectumfpack_852', ['sparsedirectumfpack', ['../classSparseDirectUMFPACK.html#adb7961d3df78499fd885763482a77ecc', 1, 'SparseDirectUMFPACK::SparseDirectUMFPACK()'],\n ['../classSparseDirectUMFPACK.html', 1, 'SparseDirectUMFPACK']\n ]],\n ['sparseilu_853', ['sparseilu', ['../classSparseMatrix.html#a821b53e73219682e8d8efdacd3571e62', 1, 'SparseMatrix::SparseILU'],\n- ['../classSparsityPattern.html#a821b53e73219682e8d8efdacd3571e62', 1, 'SparsityPattern::SparseILU'],\n ['../classSparseILU.html#aeb4b4012fc1d9d2e47a6a3de3adbe696', 1, 'SparseILU::SparseILU()'],\n+ ['../classSparsityPattern.html#a821b53e73219682e8d8efdacd3571e62', 1, 'SparsityPattern::SparseILU'],\n ['../classSparseILU.html', 1, 'SparseILU< number >']\n ]],\n- ['sparseludecomposition_854', ['sparseludecomposition', ['../classSparseLUDecomposition.html', 1, 'SparseLUDecomposition< number >'],\n- ['../classSparseMatrix.html#ab3b41703cc0d0eea14c99c2bac2c5149', 1, 'SparseMatrix::SparseLUDecomposition'],\n+ ['sparseludecomposition_854', ['sparseludecomposition', ['../classSparseMatrix.html#ab3b41703cc0d0eea14c99c2bac2c5149', 1, 'SparseMatrix::SparseLUDecomposition'],\n ['../classSparsityPattern.html#ab3b41703cc0d0eea14c99c2bac2c5149', 1, 'SparsityPattern::SparseLUDecomposition'],\n- ['../classSparseLUDecomposition.html#a03cf23744ef3cd8739e4c9d696b7bf44', 1, 'SparseLUDecomposition::SparseLUDecomposition()']\n+ ['../classSparseLUDecomposition.html#a03cf23744ef3cd8739e4c9d696b7bf44', 1, 'SparseLUDecomposition::SparseLUDecomposition()'],\n+ ['../classSparseLUDecomposition.html', 1, 'SparseLUDecomposition< number >']\n ]],\n- ['sparsematrix_855', ['sparsematrix', ['../classPETScWrappers_1_1SparseMatrix.html#a7e03b379abb85784d95e98fc788b0aa2', 1, 'PETScWrappers::SparseMatrix::SparseMatrix()'],\n- ['../classPETScWrappers_1_1MPI_1_1SparseMatrix.html#acaff145e57c38a32b03f8b3fcf869abc', 1, 'PETScWrappers::MPI::SparseMatrix::SparseMatrix()'],\n+ ['sparsematrix_855', ['sparsematrix', ['../classPETScWrappers_1_1MPI_1_1SparseMatrix.html#acaff145e57c38a32b03f8b3fcf869abc', 1, 'PETScWrappers::MPI::SparseMatrix::SparseMatrix()'],\n ['../classPETScWrappers_1_1SparseMatrix.html#a56ce532c27689c8f9946598a07351506', 1, 'PETScWrappers::SparseMatrix::SparseMatrix(const size_type m, const size_type n, const std::vector< size_type > &row_lengths, const bool is_symmetric=false)'],\n+ ['../classPETScWrappers_1_1SparseMatrix.html#a7e03b379abb85784d95e98fc788b0aa2', 1, 'PETScWrappers::SparseMatrix::SparseMatrix(const SparsityPatternType &sparsity_pattern, const bool preset_nonzero_locations=true)'],\n ['../classPETScWrappers_1_1SparseMatrix.html#ad8f059452b7c5929c91973f9ad3741d8', 1, 'PETScWrappers::SparseMatrix::SparseMatrix(const SparseMatrix &)=delete'],\n ['../classPETScWrappers_1_1MPI_1_1SparseMatrix.html#a637dbbd4e8ca9fc07a447c8f31e21647', 1, 'PETScWrappers::MPI::SparseMatrix::SparseMatrix()'],\n ['../classPETScWrappers_1_1MPI_1_1SparseMatrix.html#a4b5fe1f433acf6d5492e9f18dc57a758', 1, 'PETScWrappers::MPI::SparseMatrix::SparseMatrix(const Mat &)'],\n ['../classSparseMatrix.html#a0fd7c8660c196bb350961307b29cc9da', 1, 'SparseMatrix::SparseMatrix()'],\n ['../classPETScWrappers_1_1SparseMatrix.html#abdba8e5ef1db617093c727ac293c43a4', 1, 'PETScWrappers::SparseMatrix::SparseMatrix(const size_type m, const size_type n, const size_type n_nonzero_per_row, const bool is_symmetric=false)'],\n ['../classPETScWrappers_1_1SparseMatrix.html#a4b5fe1f433acf6d5492e9f18dc57a758', 1, 'PETScWrappers::SparseMatrix::SparseMatrix(const Mat &)'],\n ['../classPETScWrappers_1_1SparseMatrix.html#a637dbbd4e8ca9fc07a447c8f31e21647', 1, 'PETScWrappers::SparseMatrix::SparseMatrix()'],\n@@ -2248,21 +2248,21 @@\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrix.html#aa257d97525db14d396592ad2acaa2758', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrix::SparseMatrix(const IndexSet &parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD, const unsigned int n_max_entries_per_row=0)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrix.html#aafb6511f06c884f7945e88cfcb8ec000', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrix::SparseMatrix(const IndexSet &parallel_partitioning, const MPI_Comm communicator, const std::vector< unsigned int > &n_entries_per_row)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrix.html#a1979f1159e8b8d11dc899b14ed2c2ae2', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrix::SparseMatrix(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD, const size_type n_max_entries_per_row=0)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrix.html#a99a9d03993bf67f72550d3b375b57a98', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrix::SparseMatrix(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const MPI_Comm communicator, const std::vector< unsigned int > &n_entries_per_row)'],\n ['../classTrilinosWrappers_1_1SparseMatrix.html#ab3900dae374f5a71e5134840682662d8', 1, 'TrilinosWrappers::SparseMatrix::SparseMatrix()'],\n ['../classSparseMatrix.html#a637dbbd4e8ca9fc07a447c8f31e21647', 1, 'SparseMatrix::SparseMatrix()'],\n ['../classSparseMatrix.html#a59917a056d39a6e30a73db7d790f6a31', 1, 'SparseMatrix::SparseMatrix(SparseMatrix< number > &&m) noexcept'],\n+ ['../classSparseMatrix.html#a713953af05d18bdb920a4905fb412793', 1, 'SparseMatrix::SparseMatrix(const SparsityPattern &sparsity, const IdentityMatrix &id)'],\n ['../classCUDAWrappers_1_1SparseMatrix.html', 1, 'CUDAWrappers::SparseMatrix< Number >'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrix.html', 1, 'LinearAlgebra::TpetraWrappers::SparseMatrix< Number, MemorySpace >'],\n ['../classPETScWrappers_1_1MPI_1_1SparseMatrix.html', 1, 'PETScWrappers::MPI::SparseMatrix'],\n ['../classPETScWrappers_1_1SparseMatrix.html', 1, 'PETScWrappers::SparseMatrix'],\n ['../classSparseMatrix.html', 1, 'SparseMatrix< number >'],\n ['../classTrilinosWrappers_1_1SparseMatrix.html', 1, 'TrilinosWrappers::SparseMatrix'],\n- ['../classSparseMatrix.html#a713953af05d18bdb920a4905fb412793', 1, 'SparseMatrix::SparseMatrix()'],\n ['../classTrilinosWrappers_1_1SparseMatrix.html#a637dbbd4e8ca9fc07a447c8f31e21647', 1, 'TrilinosWrappers::SparseMatrix::SparseMatrix()'],\n ['../classTrilinosWrappers_1_1SparseMatrix.html#a944e51f3f5f0202024e04b679172ec9e', 1, 'TrilinosWrappers::SparseMatrix::SparseMatrix(const size_type m, const size_type n, const std::vector< unsigned int > &n_entries_per_row)']\n ]],\n ['sparsematrix_3c_20double_20_3e_856', ['SparseMatrix< double >', ['../classSparseMatrix.html', 1, '']]],\n ['sparsematrix_3c_20double_2c_20memoryspace_20_3e_857', ['SparseMatrix< double, MemorySpace >', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a92be1c0c41e397bf6a8ea409634ae4c9', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern']]],\n ['sparsematrix_3c_20number_2c_20memoryspace_20_3e_858', ['SparseMatrix< Number, MemorySpace >', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparseMatrix.html', 1, 'LinearAlgebra::TpetraWrappers']]],\n ['sparsematrixcollection_859', ['SparseMatrixCollection', ['../classmg_1_1SparseMatrixCollection.html', 1, 'mg']]],\n@@ -2304,59 +2304,59 @@\n ['sparsity_5fpattern_2ecc_873', ['sparsity_pattern.cc', ['../sparsity__pattern_8cc.html', 1, '']]],\n ['sparsity_5fpattern_2eh_874', ['sparsity_pattern.h', ['../sparsity__pattern_8h.html', 1, '']]],\n ['sparsity_5fpattern_5fbase_2ecc_875', ['sparsity_pattern_base.cc', ['../sparsity__pattern__base_8cc.html', 1, '']]],\n ['sparsity_5fpattern_5fbase_2eh_876', ['sparsity_pattern_base.h', ['../sparsity__pattern__base_8h.html', 1, '']]],\n ['sparsity_5ftools_2ecc_877', ['sparsity_tools.cc', ['../sparsity__tools_8cc.html', 1, '']]],\n ['sparsity_5ftools_2eh_878', ['sparsity_tools.h', ['../sparsity__tools_8h.html', 1, '']]],\n ['sparsity_5ftools_5fdistribute_5fsparsity_5fpattern_879', ['sparsity_tools_distribute_sparsity_pattern', ['../namespaceUtilities_1_1MPI_1_1internal_1_1Tags.html#a1c190e50dabbd9b60e230b843c6caa44ae1d92bd53ca292557fe5a61178591824', 1, 'Utilities::MPI::internal::Tags']]],\n- ['sparsitypattern_880', ['sparsitypattern', ['../classTrilinosWrappers_1_1SparsityPattern.html#ae11df72241b9b3e9c690270dec120df5', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const size_type m, const size_type n, const std::vector< size_type > &n_entries_per_row)'],\n- ['../classTrilinosWrappers_1_1SparsityPattern.html#a482d103575519d5452127c16d2030056', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const IndexSet &writable_rows, const MPI_Comm communicator=MPI_COMM_WORLD, const size_type n_entries_per_row=0)'],\n- ['../classTrilinosWrappers_1_1SparsityPattern.html#a399db7ace99b2ed859fb1a9fc31c2f3b', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const MPI_Comm communicator, const std::vector< size_type > &n_entries_per_row)'],\n- ['../classTrilinosWrappers_1_1SparsityPattern.html#a8e49f29725002e89db6d5b5e1b7d2bff', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD, const size_type n_entries_per_row=0)'],\n- ['../classTrilinosWrappers_1_1SparsityPattern.html#ad8f9ff6f2da166aed7e9728f1b1a8a87', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const IndexSet &parallel_partitioning, const MPI_Comm communicator, const std::vector< size_type > &n_entries_per_row)'],\n- ['../classTrilinosWrappers_1_1SparsityPattern.html#a6200d5744bccb61336123bbe6168f384', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const IndexSet &parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD, const size_type n_entries_per_row=0)'],\n+ ['sparsitypattern_880', ['sparsitypattern', ['../classSparsityPattern.html#a1e3d417090f12ad51343a170d11e1841', 1, 'SparsityPattern::SparsityPattern()'],\n+ ['../classSparsityPattern.html#aa175c9c0b7561a1ddd86088c5aa3cde8', 1, 'SparsityPattern::SparsityPattern(const SparsityPattern &)'],\n+ ['../classSparsityPattern.html#a202aef8aed4602c4bd37a849ff2d4ed7', 1, 'SparsityPattern::SparsityPattern(const size_type m, const size_type n, const unsigned int max_per_row)'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#a1e3d417090f12ad51343a170d11e1841', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern()'],\n+ ['../classSparsityPattern.html#a5b8f9958915c6541ad12ccff61fe0e82', 1, 'SparsityPattern::SparsityPattern()'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#ace3646f098f0c942f72da148212a1819', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const size_type m, const size_type n, const size_type n_entries_per_row=0)'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#ae11df72241b9b3e9c690270dec120df5', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const size_type m, const size_type n, const std::vector< size_type > &n_entries_per_row)'],\n+ ['../classSparsityPattern.html#a02a4a82617d345075a649db5e4a5d3bd', 1, 'SparsityPattern::SparsityPattern(const size_type m, const unsigned int max_per_row)'],\n+ ['../classSparsityPattern.html#a83b45c190f4cf1d8e2c4036bf73f0778', 1, 'SparsityPattern::SparsityPattern(const size_type m, const std::vector< unsigned int > &row_lengths)'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#aec851eaaeffd3b67c31741f59a856003', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(SparsityPattern &&other) noexcept'],\n ['../classTrilinosWrappers_1_1SparsityPattern.html#a0f3e1e19863631ed6dc013a5f627f8e6', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const SparsityPattern &input_sparsity_pattern)'],\n ['../classSparsityPattern.html#ac6e9b3b669e3f732872d104791040c7b', 1, 'SparsityPattern::SparsityPattern()'],\n- ['../classTrilinosWrappers_1_1SparsityPattern.html#aec851eaaeffd3b67c31741f59a856003', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern()'],\n- ['../classSparsityPattern.html#a1e3d417090f12ad51343a170d11e1841', 1, 'SparsityPattern::SparsityPattern()'],\n- ['../classSparsityPattern.html#a83b45c190f4cf1d8e2c4036bf73f0778', 1, 'SparsityPattern::SparsityPattern(const size_type m, const std::vector< unsigned int > &row_lengths)'],\n- ['../classSparsityPattern.html#a02a4a82617d345075a649db5e4a5d3bd', 1, 'SparsityPattern::SparsityPattern(const size_type m, const unsigned int max_per_row)'],\n- ['../classTrilinosWrappers_1_1SparsityPattern.html#ace3646f098f0c942f72da148212a1819', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern()'],\n- ['../classSparsityPattern.html#a5b8f9958915c6541ad12ccff61fe0e82', 1, 'SparsityPattern::SparsityPattern()'],\n- ['../classTrilinosWrappers_1_1SparsityPattern.html#a1e3d417090f12ad51343a170d11e1841', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern()'],\n- ['../classSparsityPattern.html#a202aef8aed4602c4bd37a849ff2d4ed7', 1, 'SparsityPattern::SparsityPattern(const size_type m, const size_type n, const unsigned int max_per_row)'],\n- ['../classSparsityPattern.html#aa175c9c0b7561a1ddd86088c5aa3cde8', 1, 'SparsityPattern::SparsityPattern(const SparsityPattern &)'],\n- ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a399db7ace99b2ed859fb1a9fc31c2f3b', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const MPI_Comm communicator, const std::vector< size_type > &n_entries_per_row)'],\n- ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#ace3646f098f0c942f72da148212a1819', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(const size_type m, const size_type n, const size_type n_entries_per_row=0)'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#a6200d5744bccb61336123bbe6168f384', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const IndexSet &parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD, const size_type n_entries_per_row=0)'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#ad8f9ff6f2da166aed7e9728f1b1a8a87', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const IndexSet &parallel_partitioning, const MPI_Comm communicator, const std::vector< size_type > &n_entries_per_row)'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#a8e49f29725002e89db6d5b5e1b7d2bff', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD, const size_type n_entries_per_row=0)'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#a399db7ace99b2ed859fb1a9fc31c2f3b', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const MPI_Comm communicator, const std::vector< size_type > &n_entries_per_row)'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#a482d103575519d5452127c16d2030056', 1, 'TrilinosWrappers::SparsityPattern::SparsityPattern(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const IndexSet &writable_rows, const MPI_Comm communicator=MPI_COMM_WORLD, const size_type n_entries_per_row=0)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#ae11df72241b9b3e9c690270dec120df5', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(const size_type m, const size_type n, const std::vector< size_type > &n_entries_per_row)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#af7b88dfa03257db27f656b6f4cff2beb', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(SparsityPattern< MemorySpace > &&other) noexcept'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a603c3fa1985d160b48770c81aedc0130', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(const SparsityPattern< MemorySpace > &input_sparsity_pattern)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a6200d5744bccb61336123bbe6168f384', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(const IndexSet &parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD, const size_type n_entries_per_row=0)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#ad8f9ff6f2da166aed7e9728f1b1a8a87', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(const IndexSet &parallel_partitioning, const MPI_Comm communicator, const std::vector< size_type > &n_entries_per_row)'],\n- ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a1e3d417090f12ad51343a170d11e1841', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern()'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a8e49f29725002e89db6d5b5e1b7d2bff', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const MPI_Comm communicator=MPI_COMM_WORLD, const size_type n_entries_per_row=0)'],\n+ ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#ace3646f098f0c942f72da148212a1819', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(const size_type m, const size_type n, const size_type n_entries_per_row=0)'],\n+ ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a1e3d417090f12ad51343a170d11e1841', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern()'],\n+ ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a399db7ace99b2ed859fb1a9fc31c2f3b', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const MPI_Comm communicator, const std::vector< size_type > &n_entries_per_row)'],\n+ ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a482d103575519d5452127c16d2030056', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern(const IndexSet &row_parallel_partitioning, const IndexSet &col_parallel_partitioning, const IndexSet &writable_rows, const MPI_Comm communicator=MPI_COMM_WORLD, const size_type n_entries_per_row=0)'],\n ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern< MemorySpace >'],\n ['../classSparsityPattern.html', 1, 'SparsityPattern'],\n- ['../classTrilinosWrappers_1_1SparsityPattern.html', 1, 'TrilinosWrappers::SparsityPattern'],\n- ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a482d103575519d5452127c16d2030056', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern::SparsityPattern()']\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html', 1, 'TrilinosWrappers::SparsityPattern']\n ]],\n ['sparsitypattern_3c_20_3a_3amemoryspace_3a_3ahost_20_3e_881', ['SparsityPattern< ::MemorySpace::Host >', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html', 1, 'LinearAlgebra::TpetraWrappers']]],\n ['sparsitypatternbase_882', ['sparsitypatternbase', ['../classSparsityPatternBase.html#a008b4b17e5c6850849d59f36179decac', 1, 'SparsityPatternBase::SparsityPatternBase()'],\n ['../classSparsityPatternBase.html', 1, 'SparsityPatternBase'],\n ['../classSparsityPatternBase.html#abd231cc10a5192d97adf3547ee781b1f', 1, 'SparsityPatternBase::SparsityPatternBase()'],\n ['../classSparsityPatternBase.html#aef501bc8949c27165263a336c3173c1d', 1, 'SparsityPatternBase::SparsityPatternBase(const size_type rows, const size_type cols)'],\n ['../classSparsityPatternBase.html#a7743f3f50ef051ed052982496e7804f4', 1, 'SparsityPatternBase::SparsityPatternBase(const SparsityPatternBase &sparsity_pattern)=default']\n ]],\n ['sparsitypatterniterators_883', ['SparsityPatternIterators', ['../namespaceSparsityPatternIterators.html', 1, '']]],\n ['sparsitypatterniterators_3a_3aaccessor_884', ['sparsitypatterniterators::accessor', ['../classTrilinosWrappers_1_1SparsityPattern.html#ab1f9cdd2797ea0f1ebbec7878d2cd1be', 1, 'TrilinosWrappers::SparsityPattern::Accessor'],\n ['../classSparsityPattern.html#ab1f9cdd2797ea0f1ebbec7878d2cd1be', 1, 'SparsityPattern::Accessor']\n ]],\n ['sparsitypatterniterators_3a_3aaccessor_3c_20memoryspace_20_3e_885', ['Accessor< MemorySpace >', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#a6690f214e4db1ea276c05b24b9e61f7d', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern']]],\n- ['sparsitypatterniterators_3a_3aiterator_886', ['sparsitypatterniterators::iterator', ['../classTrilinosWrappers_1_1SparsityPattern.html#a788687eb290f58f6accdff6098d5f492', 1, 'TrilinosWrappers::SparsityPattern::Iterator'],\n- ['../classSparsityPattern.html#a788687eb290f58f6accdff6098d5f492', 1, 'SparsityPattern::Iterator']\n+ ['sparsitypatterniterators_3a_3aiterator_886', ['sparsitypatterniterators::iterator', ['../classSparsityPattern.html#a788687eb290f58f6accdff6098d5f492', 1, 'SparsityPattern::Iterator'],\n+ ['../classTrilinosWrappers_1_1SparsityPattern.html#a788687eb290f58f6accdff6098d5f492', 1, 'TrilinosWrappers::SparsityPattern::Iterator']\n ]],\n ['sparsitypatterniterators_3a_3aiterator_3c_20memoryspace_20_3e_887', ['Iterator< MemorySpace >', ['../classLinearAlgebra_1_1TpetraWrappers_1_1SparsityPattern.html#adf1c6053682e2bd88bdd042df2b5565f', 1, 'LinearAlgebra::TpetraWrappers::SparsityPattern']]],\n ['sparsitytools_888', ['SparsityTools', ['../namespaceSparsityTools.html', 1, '']]],\n ['sparsitytools_3a_3ainternal_889', ['internal', ['../namespaceSparsityTools_1_1internal.html', 1, 'SparsityTools']]],\n ['sphere_890', ['sphere', ['../classFunctions_1_1SignedDistance_1_1ZalesakDisk.html#a343f8ac94393a34da22e749339a77ee0', 1, 'Functions::SignedDistance::ZalesakDisk::sphere'],\n ['../classFunctions_1_1SignedDistance_1_1Sphere.html#a031f46139c620cd65b5148e942254866', 1, 'Functions::SignedDistance::Sphere::Sphere()'],\n ['../classFunctions_1_1SignedDistance_1_1Sphere.html', 1, 'Functions::SignedDistance::Sphere< dim >']\n@@ -2371,90 +2371,91 @@\n ['../classArborXWrappers_1_1SpherePredicate.html#ae8a8382335bff8a78c875d1efcc8a5ba', 1, 'ArborXWrappers::SpherePredicate::SpherePredicate(const std::vector< std::pair<::Point< dim, Number >, Number > > &spheres)']\n ]],\n ['spheres_894', ['spheres', ['../classArborXWrappers_1_1SpherePredicate.html#a44e1fbee42e65b4a62bb0ef4a0c774a4', 1, 'ArborXWrappers::SpherePredicate']]],\n ['spherical_895', ['spherical', ['../classFunctions_1_1Spherical.html#a1f308e8998c751d5cc57fc61191bda72', 1, 'Functions::Spherical::Spherical()'],\n ['../classFunctions_1_1Spherical.html', 1, 'Functions::Spherical< dim >']\n ]],\n ['sphericalazimuth_896', ['SphericalAzimuth', ['../group__Exceptions.html#ga08889f6f080a6db6928174f45296bcd3', 1, 'GeometricUtilities::Coordinates']]],\n- ['sphericalmanifold_897', ['sphericalmanifold', ['../classSphericalManifold.html', 1, 'SphericalManifold< dim, spacedim >'],\n- ['../classSphericalManifold.html#ad64992c5cbbf4b9c933c7dc810d331a4', 1, 'SphericalManifold::SphericalManifold()']\n+ ['sphericalmanifold_897', ['sphericalmanifold', ['../classSphericalManifold.html#ad64992c5cbbf4b9c933c7dc810d331a4', 1, 'SphericalManifold::SphericalManifold()'],\n+ ['../classSphericalManifold.html', 1, 'SphericalManifold< dim, spacedim >']\n ]],\n ['sphericalpolar_898', ['SphericalPolar', ['../group__Exceptions.html#gac3187ed5866a79d05b76cd2f4cf4b93c', 1, 'GeometricUtilities::Coordinates']]],\n ['split_899', ['split', ['../namespaceAdaptationStrategies_1_1Refinement.html#afe44b495ad391c5bdd359977bdd6124d', 1, 'AdaptationStrategies::Refinement']]],\n ['split_5fbox_5fand_5frecurse_900', ['split_box_and_recurse', ['../classNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1QGenerator.html#a597ccd7c9be0605d393ce134769a267b', 1, 'NonMatching::internal::QuadratureGeneratorImplementation::QGenerator']]],\n ['split_5fby_5fblock_901', ['split_by_block', ['../classIndexSet.html#a4e65ac88f057604a7777f2fe12bf3c8c', 1, 'IndexSet']]],\n ['split_5fdifferent_5fvalues_902', ['split_different_values', ['../classMultipleParameterLoop_1_1Entry.html#aefc4a246bd4e8dd8103ea73d7513ad3f', 1, 'MultipleParameterLoop::Entry']]],\n ['split_5fface_5forientation_903', ['split_face_orientation', ['../namespaceinternal.html#a25a5e1a80e523f468f2f8e0ee401ac71', 1, 'internal']]],\n ['split_5fin_5fhalf_904', ['split_in_half', ['../structNonMatching_1_1AdditionalQGeneratorData.html#a2fe8738b7fec403e0525496520513988', 1, 'NonMatching::AdditionalQGeneratorData']]],\n- ['split_5finstantiations_5fcount_905', ['split_instantiations_count', ['../error__estimator__inst2_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: error_estimator_inst2.cc'],\n- ['../mapping__fe__field_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: mapping_fe_field.cc'],\n+ ['split_5finstantiations_5fcount_905', ['split_instantiations_count', ['../mapping__fe__field_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: mapping_fe_field.cc'],\n ['../sparse__matrix_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: sparse_matrix.cc'],\n+ ['../matrix__creator_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: matrix_creator.cc'],\n ['../sparse__matrix__inst2_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: sparse_matrix_inst2.cc'],\n ['../evaluation__template__face__factory_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: evaluation_template_face_factory.cc'],\n ['../evaluation__template__factory_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: evaluation_template_factory.cc'],\n ['../mapping__info_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: mapping_info.cc'],\n ['../data__out__dof__data_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: data_out_dof_data.cc'],\n ['../data__out__dof__data__inst2_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: data_out_dof_data_inst2.cc'],\n ['../error__estimator_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: error_estimator.cc'],\n- ['../matrix__creator_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: matrix_creator.cc'],\n+ ['../error__estimator__inst2_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: error_estimator_inst2.cc'],\n ['../numerics_2solution__transfer_8cc.html#a0b51f3ab18bbe95a551cb39fd1f18ceb', 1, 'SPLIT_INSTANTIATIONS_COUNT: solution_transfer.cc']\n ]],\n ['split_5finstantiations_5findex_906', ['split_instantiations_index', ['../matrix__creator_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: matrix_creator.cc'],\n ['../matrix__creator__inst3_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: matrix_creator_inst3.cc'],\n+ ['../numerics_2solution__transfer_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: solution_transfer.cc'],\n ['../solution__transfer__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: solution_transfer_inst2.cc'],\n ['../solution__transfer__inst3_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: solution_transfer_inst3.cc'],\n ['../solution__transfer__inst4_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: solution_transfer_inst4.cc'],\n+ ['../mapping__fe__field_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: mapping_fe_field.cc'],\n+ ['../data__out__dof__data_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: data_out_dof_data.cc'],\n+ ['../mapping__info__inst3_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: mapping_info_inst3.cc'],\n+ ['../mapping__info__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: mapping_info_inst2.cc'],\n+ ['../mapping__info_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: mapping_info.cc'],\n+ ['../evaluation__template__factory__inst6_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst6.cc'],\n+ ['../evaluation__template__factory__inst5_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst5.cc'],\n ['../evaluation__template__factory__inst4_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst4.cc'],\n+ ['../data__out__dof__data__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: data_out_dof_data_inst2.cc'],\n ['../error__estimator_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: error_estimator.cc'],\n ['../error__estimator__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: error_estimator_inst2.cc'],\n ['../matrix__creator__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: matrix_creator_inst2.cc'],\n- ['../data__out__dof__data__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: data_out_dof_data_inst2.cc'],\n- ['../data__out__dof__data_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: data_out_dof_data.cc'],\n- ['../evaluation__template__factory__inst5_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst5.cc'],\n- ['../evaluation__template__factory__inst6_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst6.cc'],\n- ['../mapping__info_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: mapping_info.cc'],\n- ['../mapping__info__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: mapping_info_inst2.cc'],\n- ['../mapping__info__inst3_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: mapping_info_inst3.cc'],\n ['../evaluation__template__factory__inst3_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst3.cc'],\n ['../evaluation__template__factory__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst2.cc'],\n- ['../evaluation__template__face__factory__inst5_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_face_factory_inst5.cc'],\n- ['../mapping__fe__field_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: mapping_fe_field.cc'],\n ['../mapping__fe__field__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: mapping_fe_field_inst2.cc'],\n ['../sparse__matrix_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: sparse_matrix.cc'],\n ['../sparse__matrix__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: sparse_matrix_inst2.cc'],\n ['../evaluation__template__face__factory_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_face_factory.cc'],\n ['../evaluation__template__face__factory__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_face_factory_inst2.cc'],\n ['../evaluation__template__face__factory__inst3_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_face_factory_inst3.cc'],\n ['../evaluation__template__face__factory__inst4_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_face_factory_inst4.cc'],\n+ ['../evaluation__template__face__factory__inst5_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_face_factory_inst5.cc'],\n ['../evaluation__template__face__factory__inst6_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_face_factory_inst6.cc'],\n ['../evaluation__template__factory_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory.cc']\n ]],\n ['split_5finterval_907', ['split_interval', ['../group__threads.html#ga76d508b069d429d014135b59d20cc74a', 1, 'Threads']]],\n ['split_5fpoint_908', ['split_point', ['../namespaceinternal_1_1TensorProductManifoldImplementation.html#ad1d46326a88a7f3db70cef06d834490b', 1, 'internal::TensorProductManifoldImplementation']]],\n ['split_5frange_909', ['split_range', ['../group__threads.html#ga2c08a5f98ed149f0291fa9db4e660696', 1, 'Threads']]],\n ['split_5fstring_5flist_910', ['split_string_list', ['../namespaceUtilities.html#acd4d5a4196ba3f39b96876c320a6ac88', 1, 'Utilities::split_string_list(const std::string &s, const char delimiter)'],\n ['../namespaceUtilities.html#a0a2b9ceded96f25b47eccd7c177dc67e', 1, 'Utilities::split_string_list(const std::string &s, const std::string &delimiter=",")']\n ]],\n- ['sqrt_911', ['sqrt', ['../namespacestd.html#aa2def4dc0bd5b6d07af7aff83feba9b2', 1, 'std::sqrt(const ::VectorizedArray< Number, width > &)'],\n+ ['sqrt_911', ['sqrt', ['../namespaceDifferentiation_1_1SD.html#ae38c1aa2dfee8cc43920ef787d8bb393', 1, 'Differentiation::SD::sqrt()'],\n ['../namespacestd.html#a353ddb918281ba847398eeb872572dbc', 1, 'std::sqrt(const ::VectorizedArray< Number, width > &x)'],\n- ['../namespaceDifferentiation_1_1SD.html#ae38c1aa2dfee8cc43920ef787d8bb393', 1, 'Differentiation::SD::sqrt()'],\n+ ['../namespacestd.html#aa2def4dc0bd5b6d07af7aff83feba9b2', 1, 'std::sqrt(const ::VectorizedArray< Number, width > &)'],\n ['../classVectorizedArray.html#a935e528bb3b525ac056167a64d7ab71d', 1, 'VectorizedArray::sqrt()']\n ]],\n ['sqrt1_5f2_912', ['SQRT1_2', ['../namespacenumbers.html#a926438804f37336fd9454dcea3b02314', 1, 'numbers']]],\n ['sqrt2_913', ['SQRT2', ['../namespacenumbers.html#a7f90588abd23542c3855a4a3e59766f1', 1, 'numbers']]],\n ['square_914', ['square', ['../classPoint.html#a97542ab65dcc8a100c7e5ea22a8a78bd', 1, 'Point']]],\n ['squarefunction_915', ['SquareFunction', ['../classFunctions_1_1SquareFunction.html', 1, 'Functions']]],\n- ['src_916', ['src', ['../structinternal_1_1VectorOperations_1_1Vector__copy.html#a94d8993cc6c73797f7881c206ba48217', 1, 'internal::VectorOperations::Vector_copy::src'],\n- ['../classPArpackSolver.html#adca587fab562d3c109d93210ef9df002', 1, 'PArpackSolver::src']\n+ ['src_916', ['src', ['../classPArpackSolver.html#adca587fab562d3c109d93210ef9df002', 1, 'PArpackSolver::src'],\n+ ['../structinternal_1_1VectorOperations_1_1Vector__copy.html#a94d8993cc6c73797f7881c206ba48217', 1, 'internal::VectorOperations::Vector_copy::src']\n ]],\n ['src_5fdata_5ffixed_917', ['src_data_fixed', ['../classinternal_1_1CellAttachedDataSerializer.html#a0fb4889387e07984ba31ca6ab68c4bf2', 1, 'internal::CellAttachedDataSerializer']]],\n ['src_5fdata_5fvariable_918', ['src_data_variable', ['../classinternal_1_1CellAttachedDataSerializer.html#ae3947d82ea68821b45fe0761718329e7', 1, 'internal::CellAttachedDataSerializer']]],\n ['src_5fsizes_5fvariable_919', ['src_sizes_variable', ['../classinternal_1_1CellAttachedDataSerializer.html#a9c7dedf245d57d978a45251599f2c49a', 1, 'internal::CellAttachedDataSerializer']]],\n- ['ssor_920', ['ssor', ['../classSparseMatrix.html#a5439b4fc51d59a4cfa0f0829ee876763', 1, 'SparseMatrix::SSOR()'],\n- ['../classChunkSparseMatrix.html#a7f766ef056d5d4a26be590b4c4dc82b2', 1, 'ChunkSparseMatrix::SSOR()']\n+ ['ssor_920', ['ssor', ['../classChunkSparseMatrix.html#a7f766ef056d5d4a26be590b4c4dc82b2', 1, 'ChunkSparseMatrix::SSOR()'],\n+ ['../classSparseMatrix.html#a5439b4fc51d59a4cfa0f0829ee876763', 1, 'SparseMatrix::SSOR(Vector< somenumber > &v, const number omega=1.) const']\n ]],\n ['ssor_5fstep_921', ['ssor_step', ['../classSparseMatrix.html#a2b044336fe7804608748738a77ab16a1', 1, 'SparseMatrix::SSOR_step()'],\n ['../classChunkSparseMatrix.html#ad832da950d25e5161640d7cf183c40ae', 1, 'ChunkSparseMatrix::SSOR_step()']\n ]],\n ['ssp_5fthird_5forder_922', ['SSP_THIRD_ORDER', ['../namespaceTimeStepping.html#abff97b5326e452552f108a379dd6cff4a2c9983d26b0e7884012397c87bb3809a', 1, 'TimeStepping']]],\n ['st_923', ['st', ['../classSLEPcWrappers_1_1TransformationBase.html#a759d9eb940c1cab8c1b5f6a7c8695d7c', 1, 'SLEPcWrappers::TransformationBase']]],\n ['standard_5fhex_5fline_5fto_5fquad_5fline_5findex_924', ['standard_hex_line_to_quad_line_index', ['../structGeometryInfo.html#a4f34661a885d15f2223690ac9caf75f4', 1, 'GeometryInfo']]],\n@@ -2501,26 +2502,26 @@\n ['start_5ftaping_950', ['start_taping', ['../structDifferentiation_1_1AD_1_1TapedDrivers.html#a7b6f4d9e7e536c6c654c1fa08d81123a', 1, 'Differentiation::AD::TapedDrivers']]],\n ['start_5ftime_951', ['start_time', ['../classDiscreteTime.html#a9529ef930aa4d79379507330e1473328', 1, 'DiscreteTime']]],\n ['start_5fval_952', ['start_val', ['../classAlgorithms_1_1TimestepControl.html#ad1bf1bfd1a45e78e0c6cef404c0ffe9e', 1, 'Algorithms::TimestepControl']]],\n ['starter_5fedges_953', ['starter_edges', ['../grid__tools__topology_8cc.html#a7f2072457af460e1173e37e1f2f72f31', 1, 'grid_tools_topology.cc']]],\n ['starting_5felement_954', ['starting_element', ['../classArrayView.html#ab6b935786c8b608bf8c20bfe89871bef', 1, 'ArrayView::starting_element'],\n ['../classStridedArrayView.html#a9b8aff27d75803de8b26b0812a3d10bb', 1, 'StridedArrayView::starting_element']\n ]],\n- ['state_955', ['state', ['../structSolverQMRS_1_1IterationResult.html#a9001006f148c55cc3e7cb42306823d0f', 1, 'SolverQMRS::IterationResult::state'],\n+ ['state_955', ['state', ['../classTridiagonalMatrix.html#a0ebf5c921857104bafd66a44c058264c', 1, 'TridiagonalMatrix::state'],\n ['../classNonMatching_1_1MappingInfo.html#aaf3068c0f56126e4b78432b3a36b5dae', 1, 'NonMatching::MappingInfo::State'],\n ['../classSolverControl.html#afcdeab4b55513dbd766b56e35efecbaa', 1, 'SolverControl::State'],\n ['../classParticles_1_1ParticleIterator.html#aff25b1f11172e615596537c01f354885', 1, 'Particles::ParticleIterator::state()'],\n ['../classParticles_1_1ParticleAccessor.html#a65e33c787b628ab1f9632ad1555f0018', 1, 'Particles::ParticleAccessor::state()'],\n ['../classTriaRawIterator.html#a601ce4c8bc619445315b3d652b889653', 1, 'TriaRawIterator::state()'],\n ['../classTriaAccessor_3_010_00_011_00_01spacedim_01_4.html#aabe47cd72de9a786f337cf0929df63b0', 1, 'TriaAccessor< 0, 1, spacedim >::state()'],\n ['../classTriaAccessor_3_010_00_01dim_00_01spacedim_01_4.html#ae65255d89813aea23dfaed738390ef27', 1, 'TriaAccessor< 0, dim, spacedim >::state()'],\n ['../classInvalidAccessor.html#a75dd90e6f08bd933bd9fbcc52b86ee4e', 1, 'InvalidAccessor::state()'],\n ['../classTriaAccessorBase.html#a5f75f0d6c68a1a67ea03bd4727c29529', 1, 'TriaAccessorBase::state()'],\n ['../classNonMatching_1_1MappingInfo.html#a3f324b7ff711b016a51ba8cff300b193', 1, 'NonMatching::MappingInfo::state'],\n- ['../classTridiagonalMatrix.html#a0ebf5c921857104bafd66a44c058264c', 1, 'TridiagonalMatrix::state'],\n+ ['../structSolverQMRS_1_1IterationResult.html#a9001006f148c55cc3e7cb42306823d0f', 1, 'SolverQMRS::IterationResult::state'],\n ['../structSolverBicgstab_1_1IterationResult.html#ac558fe9e29818ddcae25fe1c478ab502', 1, 'SolverBicgstab::IterationResult::state'],\n ['../classScaLAPACKMatrix.html#adc8bcecff39fec4dda83ee72279081d3', 1, 'ScaLAPACKMatrix::state'],\n ['../classLAPACKFullMatrix.html#a7d4fc9a8dc944f94bb1bcad9fae8d2ab', 1, 'LAPACKFullMatrix::state'],\n ['../namespaceLAPACKSupport.html#a1a9009db0d9a77923a7031b549b9b638', 1, 'LAPACKSupport::State']\n ]],\n ['state_5fname_956', ['state_name', ['../namespaceLAPACKSupport.html#a336104167dde8f2250b266181902d273', 1, 'LAPACKSupport']]],\n ['statecombiner_957', ['StateCombiner', ['../structSolverBase_1_1StateCombiner.html', 1, 'SolverBase']]],\n@@ -2534,28 +2535,28 @@\n ['../classFEFaceEvaluation.html#ac42a1c7210f76b69310d3f5990821a22', 1, 'FEFaceEvaluation::static_n_q_points']\n ]],\n ['static_5fn_5fq_5fpoints_5fcell_961', ['static_n_q_points_cell', ['../classFEFaceEvaluation.html#a2317dcbb9306d670a8a508c0b96183ba', 1, 'FEFaceEvaluation']]],\n ['static_5fvector_5fmemory_962', ['static_vector_memory', ['../classSolverBase.html#acc03248bb340e9204a2429aa78dd3218', 1, 'SolverBase']]],\n ['staticmappingq1_963', ['staticmappingq1', ['../structhp_1_1StaticMappingQ1.html', 1, 'hp::StaticMappingQ1< dim, spacedim >'],\n ['../structStaticMappingQ1.html', 1, 'StaticMappingQ1< dim, spacedim >']\n ]],\n- ['status_964', ['status', ['../classTimeStepping_1_1ImplicitRungeKutta.html#a3232863abc16d297eb20ee301a558478', 1, 'TimeStepping::ImplicitRungeKutta::status'],\n- ['../structTimeStepping_1_1ImplicitRungeKutta_1_1Status.html#ad3204a3f40e61c4e74bd5694d5ca96c3', 1, 'TimeStepping::ImplicitRungeKutta::Status::Status()'],\n- ['../structTimeStepping_1_1EmbeddedExplicitRungeKutta_1_1Status.html#a8892ef74885014af2dadfcd453f786b1', 1, 'TimeStepping::EmbeddedExplicitRungeKutta::Status::Status()'],\n- ['../structTimeStepping_1_1LowStorageRungeKutta_1_1Status.html#a2356c1b10a23662fb63aa66812a3feef', 1, 'TimeStepping::LowStorageRungeKutta::Status::Status()'],\n+ ['status_964', ['status', ['../structTimeStepping_1_1ImplicitRungeKutta_1_1Status.html', 1, 'TimeStepping::ImplicitRungeKutta< VectorType >::Status'],\n ['../structTimeStepping_1_1ExplicitRungeKutta_1_1Status.html#ae9b11d3e9e809ee2af4736ca648c27e9', 1, 'TimeStepping::ExplicitRungeKutta::Status::Status()'],\n ['../classPointValueHistory.html#a640364a55562b95453a7add1aff0c94c', 1, 'PointValueHistory::status()'],\n ['../classTimeStepping_1_1EmbeddedExplicitRungeKutta.html#a92dc025eca29fd361daaa54d5c0ea03d', 1, 'TimeStepping::EmbeddedExplicitRungeKutta::status'],\n- ['../classTimeStepping_1_1LowStorageRungeKutta.html#aadc4f757a57f875f77fb9378e69f11f5', 1, 'TimeStepping::LowStorageRungeKutta::status'],\n+ ['../classTimeStepping_1_1ImplicitRungeKutta.html#a3232863abc16d297eb20ee301a558478', 1, 'TimeStepping::ImplicitRungeKutta::status'],\n ['../structTimeStepping_1_1EmbeddedExplicitRungeKutta_1_1Status.html', 1, 'TimeStepping::EmbeddedExplicitRungeKutta< VectorType >::Status'],\n- ['../structTimeStepping_1_1ImplicitRungeKutta_1_1Status.html', 1, 'TimeStepping::ImplicitRungeKutta< VectorType >::Status'],\n+ ['../structTimeStepping_1_1ExplicitRungeKutta_1_1Status.html', 1, 'TimeStepping::ExplicitRungeKutta< VectorType >::Status'],\n ['../structTimeStepping_1_1LowStorageRungeKutta_1_1Status.html', 1, 'TimeStepping::LowStorageRungeKutta< VectorType >::Status'],\n ['../structTimeStepping_1_1TimeStepping_1_1Status.html', 1, 'TimeStepping::TimeStepping< VectorType >::Status'],\n+ ['../classTimeStepping_1_1LowStorageRungeKutta.html#aadc4f757a57f875f77fb9378e69f11f5', 1, 'TimeStepping::LowStorageRungeKutta::status'],\n ['../classTimeStepping_1_1ExplicitRungeKutta.html#afe9e5fa6b007fa20616e1951d5368708', 1, 'TimeStepping::ExplicitRungeKutta::status'],\n- ['../structTimeStepping_1_1ExplicitRungeKutta_1_1Status.html', 1, 'TimeStepping::ExplicitRungeKutta< VectorType >::Status']\n+ ['../structTimeStepping_1_1LowStorageRungeKutta_1_1Status.html#a2356c1b10a23662fb63aa66812a3feef', 1, 'TimeStepping::LowStorageRungeKutta::Status::Status()'],\n+ ['../structTimeStepping_1_1ImplicitRungeKutta_1_1Status.html#ad3204a3f40e61c4e74bd5694d5ca96c3', 1, 'TimeStepping::ImplicitRungeKutta::Status::Status()'],\n+ ['../structTimeStepping_1_1EmbeddedExplicitRungeKutta_1_1Status.html#a8892ef74885014af2dadfcd453f786b1', 1, 'TimeStepping::EmbeddedExplicitRungeKutta::Status::Status()']\n ]],\n ['status_5ftest_965', ['status_test', ['../classTrilinosWrappers_1_1SolverBase.html#a4a048fef5938fbe346527169007ae802', 1, 'TrilinosWrappers::SolverBase']]],\n ['status_5ftest_5fabs_5ftol_966', ['status_test_abs_tol', ['../trilinos__solver_8cc.html#a031eaae969bbc80461519288db682b53', 1, 'trilinos_solver.cc']]],\n ['status_5ftest_5fcollection_967', ['status_test_collection', ['../trilinos__solver_8cc.html#a48d0eb610567fbe2927511791bbd3ea0', 1, 'trilinos_solver.cc']]],\n ['status_5ftest_5fmax_5fsteps_968', ['status_test_max_steps', ['../trilinos__solver_8cc.html#a3cb9db2d632ad79a0cab7891b0a34652', 1, 'trilinos_solver.cc']]],\n ['status_5ftest_5frel_5ftol_969', ['status_test_rel_tol', ['../trilinos__solver_8cc.html#a22bce44b566ca0ac3565c052da92e6d8', 1, 'trilinos_solver.cc']]],\n ['std_970', ['std', ['../namespacestd.html', 1, '']]],\n@@ -2565,26 +2566,26 @@\n ['std_3a_3asqrt_974', ['sqrt', ['../classVectorizedArray.html#a53732e91f835220fa309d0bfcd2eaef1', 1, 'VectorizedArray']]],\n ['std_5fcxx17_975', ['std_cxx17', ['../namespacestd__cxx17.html', 1, '']]],\n ['std_5fcxx20_976', ['std_cxx20', ['../namespacestd__cxx20.html', 1, '']]],\n ['std_5fcxx20_3a_3aranges_977', ['ranges', ['../namespacestd__cxx20_1_1ranges.html', 1, 'std_cxx20']]],\n ['std_5fdepth_978', ['std_depth', ['../classLogStream.html#a1b7b8e8c294073347f25a0412e3d5463', 1, 'LogStream']]],\n ['std_5fout_979', ['std_out', ['../classLogStream.html#a2975b7be388c3e36c1a0824f71cc6428', 1, 'LogStream']]],\n ['steepness_980', ['steepness', ['../classFunctions_1_1JumpFunction.html#a5c0d1ea31270e798f4586792a56e25bb', 1, 'Functions::JumpFunction']]],\n- ['step_981', ['step', ['../structAlgorithms_1_1TimestepData.html#ad10e910f1d60c73ced78fff92515037d', 1, 'Algorithms::TimestepData::step'],\n+ ['step_981', ['step', ['../classAlgorithms_1_1TimestepControl.html#ac250aebb4e4ead99dd1e098d13297ff6', 1, 'Algorithms::TimestepControl::step()'],\n+ ['../classPreconditionBlockSSOR.html#a537b155045864bddae663d57c3a65819', 1, 'PreconditionBlockSSOR::step()'],\n ['../classRelaxationBlockJacobi.html#adc4b2b5a69471e69abfa30d0f25f17e7', 1, 'RelaxationBlockJacobi::step()'],\n- ['../classAlgorithms_1_1OutputOperator.html#ac8182cb0393a328bc90c08e116afe1fb', 1, 'Algorithms::OutputOperator::step'],\n- ['../classSolverQMRS.html#a7cd791b75928f3bc6d312cfdf5937496', 1, 'SolverQMRS::step'],\n- ['../classAlgorithms_1_1TimestepControl.html#ac250aebb4e4ead99dd1e098d13297ff6', 1, 'Algorithms::TimestepControl::step()'],\n- ['../classPreconditionRelaxation.html#aa8d9ceee551a443040cf9a4fcf4b9e07', 1, 'PreconditionRelaxation::step()'],\n- ['../classPreconditionChebyshev.html#a45209d9d4c47f6ed1675bd7c6563cfb3', 1, 'PreconditionChebyshev::step()'],\n- ['../classPreconditionBlockJacobi.html#a389333a5ce9520d4fbc553f99765a304', 1, 'PreconditionBlockJacobi::step()'],\n+ ['../classRelaxationBlockSOR.html#a6929c4cd857adcbcb6d90c1348f4446e', 1, 'RelaxationBlockSOR::step()'],\n ['../classPreconditionBlockSOR.html#a6010e691b51efcf829a36468ee1a0f5c', 1, 'PreconditionBlockSOR::step()'],\n- ['../classPreconditionBlockSSOR.html#a537b155045864bddae663d57c3a65819', 1, 'PreconditionBlockSSOR::step()'],\n ['../classRelaxationBlockSSOR.html#aa14816510ee55d475730a793cf6a53dd', 1, 'RelaxationBlockSSOR::step()'],\n- ['../classRelaxationBlockSOR.html#a6929c4cd857adcbcb6d90c1348f4446e', 1, 'RelaxationBlockSOR::step()']\n+ ['../classPreconditionBlockJacobi.html#a389333a5ce9520d4fbc553f99765a304', 1, 'PreconditionBlockJacobi::step()'],\n+ ['../classPreconditionChebyshev.html#a45209d9d4c47f6ed1675bd7c6563cfb3', 1, 'PreconditionChebyshev::step()'],\n+ ['../classAlgorithms_1_1OutputOperator.html#ac8182cb0393a328bc90c08e116afe1fb', 1, 'Algorithms::OutputOperator::step'],\n+ ['../structAlgorithms_1_1TimestepData.html#ad10e910f1d60c73ced78fff92515037d', 1, 'Algorithms::TimestepData::step'],\n+ ['../classSolverQMRS.html#a7cd791b75928f3bc6d312cfdf5937496', 1, 'SolverQMRS::step'],\n+ ['../classPreconditionRelaxation.html#aa8d9ceee551a443040cf9a4fcf4b9e07', 1, 'PreconditionRelaxation::step()']\n ]],\n ['step_201_20tutorial_20program_982', ['The step-1 tutorial program', ['../step_1.html', 1, '']]],\n ['step_2010_20tutorial_20program_983', ['The step-10 tutorial program', ['../step_10.html', 1, '']]],\n ['step_2011_20tutorial_20program_984', ['The step-11 tutorial program', ['../step_11.html', 1, '']]],\n ['step_2012_20tutorial_20program_985', ['The step-12 tutorial program', ['../step_12.html', 1, '']]],\n ['step_2013_20tutorial_20program_986', ['The step-13 tutorial program', ['../step_13.html', 1, '']]],\n ['step_2014_20tutorial_20program_987', ['The step-14 tutorial program', ['../step_14.html', 1, '']]],\n@@ -2823,17 +2824,17 @@\n ]],\n ['storeindex_1189', ['storeindex', ['../classTensorAccessors_1_1internal_1_1StoreIndex.html#a53d468d890eced5315e77b88516fdd3a', 1, 'TensorAccessors::internal::StoreIndex::StoreIndex()'],\n ['../classTensorAccessors_1_1internal_1_1StoreIndex_3_011_00_01S_01_4.html#a0555eb98f445e2329c4bbf24021f9e19', 1, 'TensorAccessors::internal::StoreIndex< 1, S >::StoreIndex()'],\n ['../classTensorAccessors_1_1internal_1_1StoreIndex.html', 1, 'TensorAccessors::internal::StoreIndex< rank, S >']\n ]],\n ['storeindex_3c_201_2c_20s_20_3e_1190', ['StoreIndex< 1, S >', ['../classTensorAccessors_1_1internal_1_1StoreIndex_3_011_00_01S_01_4.html', 1, 'TensorAccessors::internal']]],\n ['stores_5fobject_5fwith_5fname_1191', ['stores_object_with_name', ['../classGeneralDataStorage.html#ab3e62cafaae697b2c6dc6f61d462068f', 1, 'GeneralDataStorage']]],\n- ['stores_5fonly_5fadded_5felements_1192', ['stores_only_added_elements', ['../classDynamicSparsityPattern.html#aa5ac66cbe19c0baf0efe12579a06318a', 1, 'DynamicSparsityPattern::stores_only_added_elements()'],\n+ ['stores_5fonly_5fadded_5felements_1192', ['stores_only_added_elements', ['../classSparsityPattern.html#a3b7508080664d3ec1596a87e8607e13d', 1, 'SparsityPattern::stores_only_added_elements()'],\n ['../classChunkSparsityPattern.html#a1589f40972b0d32ed2b0b02280f64a84', 1, 'ChunkSparsityPattern::stores_only_added_elements()'],\n- ['../classSparsityPattern.html#a3b7508080664d3ec1596a87e8607e13d', 1, 'SparsityPattern::stores_only_added_elements()']\n+ ['../classDynamicSparsityPattern.html#aa5ac66cbe19c0baf0efe12579a06318a', 1, 'DynamicSparsityPattern::stores_only_added_elements()']\n ]],\n ['strategy_1193', ['strategy', ['../classKellyErrorEstimator.html#adc94d710b3db4967da1ea80bd7813a1e', 1, 'KellyErrorEstimator::Strategy'],\n ['../classKellyErrorEstimator_3_011_00_01spacedim_01_4.html#a0e20493f777fe0299c7c163143702dbf', 1, 'KellyErrorEstimator< 1, spacedim >::Strategy'],\n ['../classNonlinearSolverSelector_1_1AdditionalData.html#a3e618b229e9dab10a48ecdcf08b7591f', 1, 'NonlinearSolverSelector::AdditionalData::strategy'],\n ['../classSUNDIALS_1_1KINSOL_1_1AdditionalData.html#a0e0305212ec11dcb4599afacfa77e4ea', 1, 'SUNDIALS::KINSOL::AdditionalData::strategy']\n ]],\n ['stream_1194', ['stream', ['../classLogStream_1_1Prefix.html#a0de3d8ddc3ca26669d002a4534c137c5', 1, 'LogStream::Prefix']]],\n@@ -2928,18 +2929,18 @@\n ['subfacepossibilities_3c_202_20_3e_1236', ['SubfacePossibilities< 2 >', ['../structinternal_1_1SubfacePossibilities_3_012_01_4.html', 1, 'internal']]],\n ['subfacepossibilities_3c_203_20_3e_1237', ['SubfacePossibilities< 3 >', ['../structinternal_1_1SubfacePossibilities_3_013_01_4.html', 1, 'internal']]],\n ['subids_1238', ['subids', ['../p4est__wrappers_8cc.html#a7f49127a7e37e20b8cfc6fd5fedb6f7a', 1, 'p4est_wrappers.cc']]],\n ['submatrix_5fcolumn_1239', ['submatrix_column', ['../classScaLAPACKMatrix.html#a784802959d4846fc5f2fd329ea8c66d5', 1, 'ScaLAPACKMatrix']]],\n ['submatrix_5frow_1240', ['submatrix_row', ['../classScaLAPACKMatrix.html#a801e8b7f84711c97d732019ca9ddce50', 1, 'ScaLAPACKMatrix']]],\n ['submit_5fcurl_1241', ['submit_curl', ['../classFEEvaluationBase.html#a2a98ed090f786f1b320fc1c1193842d7', 1, 'FEEvaluationBase']]],\n ['submit_5fdivergence_1242', ['submit_divergence', ['../classFEPointEvaluationBase.html#a8c36097718a2cb14219a8869814b48e1', 1, 'FEPointEvaluationBase::submit_divergence()'],\n- ['../classFEEvaluationBase.html#a36eac4b2933b958488fe74c5ee056d42', 1, 'FEEvaluationBase::submit_divergence()']\n+ ['../classFEEvaluationBase.html#a36eac4b2933b958488fe74c5ee056d42', 1, 'FEEvaluationBase::submit_divergence(const VectorizedArrayType div_in, const unsigned int q_point)']\n ]],\n- ['submit_5fdof_5fvalue_1243', ['submit_dof_value', ['../classPortable_1_1FEEvaluation.html#ae39e93035124576c92a7def89ece6eff', 1, 'Portable::FEEvaluation::submit_dof_value()'],\n- ['../classFEEvaluationBase.html#a3afd9d62f5762c41973aa0f037dc5099', 1, 'FEEvaluationBase::submit_dof_value(const value_type val_in, const unsigned int dof)']\n+ ['submit_5fdof_5fvalue_1243', ['submit_dof_value', ['../classFEEvaluationBase.html#a3afd9d62f5762c41973aa0f037dc5099', 1, 'FEEvaluationBase::submit_dof_value()'],\n+ ['../classPortable_1_1FEEvaluation.html#ae39e93035124576c92a7def89ece6eff', 1, 'Portable::FEEvaluation::submit_dof_value()']\n ]],\n ['submit_5fgradient_1244', ['submit_gradient', ['../classFEEvaluationBase.html#a2a78655d119bd1bde992619c52b2d2f8', 1, 'FEEvaluationBase::submit_gradient(const gradient_type grad_in, const unsigned int q_point)'],\n ['../classFEEvaluationBase.html#a13de75ce09b2e00c40091e9301bf8213', 1, 'FEEvaluationBase::submit_gradient(const Tensor< 2, 1, VectorizedArrayType > val_in, const unsigned int q_point)'],\n ['../classFEPointEvaluationBase.html#ab709f8b959e6c4dfa75b7a3d8a9cd736', 1, 'FEPointEvaluationBase::submit_gradient()'],\n ['../classPortable_1_1FEEvaluation.html#af2b5b7b3efc80b5cadc79e5dc9a30474', 1, 'Portable::FEEvaluation::submit_gradient()']\n ]],\n ['submit_5fhessian_1245', ['submit_hessian', ['../classFEEvaluationBase.html#add1dde3d1ea4b54b7f8201f3b92556ae', 1, 'FEEvaluationBase']]],\n@@ -2966,20 +2967,20 @@\n ['subscriptor_2eh_1253', ['subscriptor.h', ['../subscriptor_8h.html', 1, '']]],\n ['subsection_5fpath_1254', ['subsection_path', ['../classMultipleParameterLoop_1_1Entry.html#a401f6117f320633d67c416c30820ee04', 1, 'MultipleParameterLoop::Entry::subsection_path'],\n ['../classParameterHandler.html#aefa5b69fc4d1d56dd6bc90e2dcf24d56', 1, 'ParameterHandler::subsection_path']\n ]],\n ['subsection_5fpath_5fexists_1255', ['subsection_path_exists', ['../classParameterHandler.html#ae6142462087d1cd62d294eccb1f58867', 1, 'ParameterHandler']]],\n ['subsections_1256', ['subsections', ['../classParameterAcceptor.html#a7ff0ceba7455971dfbd6cae2c114e0aa', 1, 'ParameterAcceptor']]],\n ['substitute_1257', ['substitute', ['../classDifferentiation_1_1SD_1_1Expression.html#a878a213d98c64d599912d2fe57e4e7b5', 1, 'Differentiation::SD::Expression::substitute()'],\n- ['../namespaceDifferentiation_1_1SD.html#a2a9c98e01328c64b73f12ac458d56bc9', 1, 'Differentiation::SD::substitute()'],\n+ ['../namespaceDifferentiation_1_1SD.html#a98b9dfe8727aedd5b37e3064eb1e5c95', 1, 'Differentiation::SD::substitute()'],\n ['../classDifferentiation_1_1SD_1_1Expression.html#a5139ab6b522e64a4d03f290995d645f3', 1, 'Differentiation::SD::Expression::substitute()'],\n- ['../namespaceDifferentiation_1_1SD.html#a055a9bdf722ccd73209114a636eb01ba', 1, 'Differentiation::SD::substitute(const SymmetricTensor< rank, dim, Expression > &expression_tensor, const types::substitution_map &substitution_map)'],\n- ['../namespaceDifferentiation_1_1SD.html#a98b9dfe8727aedd5b37e3064eb1e5c95', 1, 'Differentiation::SD::substitute(const ExpressionType &expression, const Args &...symbol_values)'],\n+ ['../namespaceDifferentiation_1_1SD.html#a2a9c98e01328c64b73f12ac458d56bc9', 1, 'Differentiation::SD::substitute(const Tensor< rank, dim, Expression > &expression_tensor, const types::substitution_map &substitution_map)'],\n ['../namespaceDifferentiation_1_1SD.html#a72fa25740f0fedca16330bb0046aff45', 1, 'Differentiation::SD::substitute(const Expression &expression, const Expression &symbol, const ValueType &value)'],\n ['../namespaceDifferentiation_1_1SD.html#adee79451c8fcfef0b37efbedd461756a', 1, 'Differentiation::SD::substitute(const Expression &expression, const types::substitution_map &substitution_map)'],\n+ ['../namespaceDifferentiation_1_1SD.html#a055a9bdf722ccd73209114a636eb01ba', 1, 'Differentiation::SD::substitute(const SymmetricTensor< rank, dim, Expression > &expression_tensor, const types::substitution_map &substitution_map)'],\n ['../classDifferentiation_1_1SD_1_1BatchOptimizer.html#a381ababfa2f43365b7350d4e9ea309d3', 1, 'Differentiation::SD::BatchOptimizer::substitute(const std::vector< ReturnType > &substitution_values) const'],\n ['../classDifferentiation_1_1SD_1_1BatchOptimizer.html#a95aa03ced0b51096ee7746dd3404b002', 1, 'Differentiation::SD::BatchOptimizer::substitute(const SymEngine::vec_basic &symbols, const std::vector< ReturnType > &values) const'],\n ['../classDifferentiation_1_1SD_1_1BatchOptimizer.html#ad68fa9bcef0561f6090229095a4ef8ef', 1, 'Differentiation::SD::BatchOptimizer::substitute(const SymEngine::map_basic_basic &substitution_map) const'],\n ['../classDifferentiation_1_1SD_1_1BatchOptimizer.html#a2384d61909baf51a0af4a9aeddde2c03', 1, 'Differentiation::SD::BatchOptimizer::substitute(const types::symbol_vector &symbols, const std::vector< ReturnType > &values) const'],\n ['../classDifferentiation_1_1SD_1_1BatchOptimizer.html#a084f1ba11366992d8ff22905ebc6e92e', 1, 'Differentiation::SD::BatchOptimizer::substitute(const types::substitution_map &substitution_map) const'],\n ['../classDifferentiation_1_1SD_1_1Expression.html#a1c28bf2a1124a39e905c38b1dd752bee', 1, 'Differentiation::SD::Expression::substitute(const Expression &symbol, const NumberType &value) const'],\n ['../classDifferentiation_1_1SD_1_1Expression.html#ab57f848ba5a62368f38adc3ccd873f8a', 1, 'Differentiation::SD::Expression::substitute(const Expression &symbol, const Expression &value) const']\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1f.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_1f.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -247,21 +247,21 @@\n ['../structDataOutBase_1_1TecplotFlags.html#a9c4a58168f8cf0ea255450d94d8fc44b', 1, 'DataOutBase::TecplotFlags::TecplotFlags()']\n ]],\n ['temp_5fghost_5fvector_137', ['temp_ghost_vector', ['../classRelaxationBlock_1_1AdditionalData.html#acf67785c5a9e819b695df8801a2323d1', 1, 'RelaxationBlock::AdditionalData']]],\n ['temp_5fvector1_138', ['temp_vector1', ['../classPreconditionChebyshev.html#ad5340a84d3dcb8fbb8fc03e0e7df3cc4', 1, 'PreconditionChebyshev']]],\n ['temp_5fvector2_139', ['temp_vector2', ['../classPreconditionChebyshev.html#aca88a1ace994929ee001cde4cb550cad', 1, 'PreconditionChebyshev']]],\n ['templ_5fcopy_5fconstructor_140', ['templ_copy_constructor', ['../namespaceLinearAlgebra_1_1distributed.html#a3afee21bbf6f7172d90d327ed6388f59', 1, 'LinearAlgebra::distributed::TEMPL_COPY_CONSTRUCTOR()'],\n ['../read__write__vector_8cc.html#a803d64a3875f24f8aba3e953b73bbe98', 1, 'TEMPL_COPY_CONSTRUCTOR: read_write_vector.cc'],\n- ['../namespaceLinearAlgebra_1_1distributed.html#ae1104c07c5e57891c49403f4f1aeb1ee', 1, 'LinearAlgebra::distributed::TEMPL_COPY_CONSTRUCTOR()'],\n+ ['../namespaceLinearAlgebra_1_1distributed.html#ae1104c07c5e57891c49403f4f1aeb1ee', 1, 'LinearAlgebra::distributed::TEMPL_COPY_CONSTRUCTOR(double, float)'],\n+ ['../namespaceLinearAlgebra_1_1distributed.html#af3f65ff09b2fae0b24fd57e85198245d', 1, 'LinearAlgebra::distributed::TEMPL_COPY_CONSTRUCTOR(float, double)'],\n ['../namespaceLinearAlgebra.html#a5435c92d43d1d838286fb83edd9d4f1d', 1, 'LinearAlgebra::TEMPL_COPY_CONSTRUCTOR(std::complex< float >, std::complex< double >)'],\n- ['../namespaceLinearAlgebra.html#aa98aea9167fdf2a5533f85ee5013b6cb', 1, 'LinearAlgebra::TEMPL_COPY_CONSTRUCTOR(std::complex< double >, std::complex< float >)'],\n- ['../namespaceLinearAlgebra_1_1distributed.html#af3f65ff09b2fae0b24fd57e85198245d', 1, 'LinearAlgebra::distributed::TEMPL_COPY_CONSTRUCTOR()'],\n+ ['../namespaceLinearAlgebra.html#a00f9596dfe4edb5a8deaaa88064dd803', 1, 'LinearAlgebra::TEMPL_COPY_CONSTRUCTOR(float, double)'],\n ['../la__parallel__block__vector_8cc.html#a803d64a3875f24f8aba3e953b73bbe98', 1, 'TEMPL_COPY_CONSTRUCTOR: la_parallel_block_vector.cc'],\n ['../la__parallel__vector_8cc.html#a803d64a3875f24f8aba3e953b73bbe98', 1, 'TEMPL_COPY_CONSTRUCTOR: la_parallel_vector.cc'],\n- ['../namespaceLinearAlgebra.html#a00f9596dfe4edb5a8deaaa88064dd803', 1, 'LinearAlgebra::TEMPL_COPY_CONSTRUCTOR(float, double)'],\n+ ['../namespaceLinearAlgebra.html#aa98aea9167fdf2a5533f85ee5013b6cb', 1, 'LinearAlgebra::TEMPL_COPY_CONSTRUCTOR(std::complex< double >, std::complex< float >)'],\n ['../namespaceLinearAlgebra.html#aba05a6ec670f0ee57a4efceee9fd6843', 1, 'LinearAlgebra::TEMPL_COPY_CONSTRUCTOR(double, float)'],\n ['../namespaceLinearAlgebra_1_1distributed.html#a916727e530c8e44070ae69bb0d33652f', 1, 'LinearAlgebra::distributed::TEMPL_COPY_CONSTRUCTOR()']\n ]],\n ['template_20instantiations_141', ['Template instantiations', ['../Instantiations.html', 1, '']]],\n ['template_20parameters_142', ['Concepts, or expectations on template parameters', ['../group__Concepts.html', 1, '']]],\n ['template_5fconstraints_2eh_143', ['template_constraints.h', ['../template__constraints_8h.html', 1, '']]],\n ['temporarilymatchrefineflags_144', ['temporarilymatchrefineflags', ['../classparallel_1_1distributed_1_1TemporarilyMatchRefineFlags.html', 1, 'parallel::distributed::TemporarilyMatchRefineFlags< dim, spacedim >'],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_c.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_c.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -58,19 +58,19 @@\n ['access_19', ['access', ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits_3_01dim_00_01dim_00_01dim_00_01Number0887f459a5877aa6cdd460a852e57b9a.html#a26f8259bd3f2f114007c402fc51d306d', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits< dim, dim, dim, Number, std::enable_if_t< dim !=1 > >::access(value_type &value, const unsigned int vector_lane, const unsigned int component, const ScalarNumber &shape_value)'],\n ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits_3_01dim_00_01dim_00_01dim_00_01Number0887f459a5877aa6cdd460a852e57b9a.html#a3caf3dbf5fc498a176359a0e73198486', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits< dim, dim, dim, Number, std::enable_if_t< dim !=1 > >::access(const real_gradient_type &value, const unsigned int vector_lane, const unsigned int component)'],\n ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits_3_01dim_00_01dim_00_01dim_00_01Number0887f459a5877aa6cdd460a852e57b9a.html#a8e359f7557f565f9fdb8dab948e093c7', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits< dim, dim, dim, Number, std::enable_if_t< dim !=1 > >::access(real_gradient_type &value, const unsigned int vector_lane, const unsigned int component, const Tensor< 1, dim, ScalarNumber > &shape_gradient)'],\n ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits_3_01dim_00_01dim_00_01dim_00_01Number0887f459a5877aa6cdd460a852e57b9a.html#aa347c6f815f72283898c688ca2fa6135', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits< dim, dim, dim, Number, std::enable_if_t< dim !=1 > >::access(const value_type &value, const unsigned int vector_lane, const unsigned int component)'],\n ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits_3_01dim_00_01spacedim_00_011_00_01Number_01_4.html#a3955612b725317016d8f51f29e1fda06', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits< dim, spacedim, 1, Number >::access(const real_gradient_type &value, const unsigned int vector_lane, const unsigned int)'],\n ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits_3_01dim_00_01spacedim_00_011_00_01Number_01_4.html#a7fee72419433f8cbf778ac7f2631031e', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits< dim, spacedim, 1, Number >::access(real_gradient_type &value, const unsigned int vector_lane, const unsigned int, const Tensor< 1, spacedim, ScalarNumber > &shape_gradient)'],\n ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits_3_01dim_00_01spacedim_00_011_00_01Number_01_4.html#a1b745bc25ea6045bd92c597c121f5ddd', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits< dim, spacedim, 1, Number >::access(const value_type &value, const unsigned int vector_lane, const unsigned int)'],\n- ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits_3_01dim_00_01spacedim_00_011_00_01Number_01_4.html#ace843660f555cbad13d9c9110ade5747', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits< dim, spacedim, 1, Number >::access(value_type &value, const unsigned int vector_lane, const unsigned int, const ScalarNumber &shape_value)'],\n ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits.html#a1235866cf73ec0bb032ea851313ab5e7', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits::access(const real_gradient_type &value, const unsigned int vector_lane, const unsigned int component)'],\n ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits.html#ad98f0f516c486fe514b7c6d6acba858e', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits::access(real_gradient_type &value, const unsigned int vector_lane, const unsigned int component, const Tensor< 1, spacedim, ScalarNumber > &shape_gradient)'],\n ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits.html#a81030671eec92a81ce23753e6ce41996', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits::access(const value_type &value, const unsigned int vector_lane, const unsigned int component)'],\n- ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits.html#aecb475fc747d4f3785337d942437ae31', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits::access(value_type &value, const unsigned int vector_lane, const unsigned int component, const ScalarNumber &shape_value)']\n+ ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits_3_01dim_00_01spacedim_00_011_00_01Number_01_4.html#ace843660f555cbad13d9c9110ade5747', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits< dim, spacedim, 1, Number >::access()'],\n+ ['../structinternal_1_1FEPointEvaluation_1_1EvaluatorTypeTraits.html#aecb475fc747d4f3785337d942437ae31', 1, 'internal::FEPointEvaluation::EvaluatorTypeTraits::access()']\n ]],\n ['access_20fevalues_20classes_20', ['Finite element access/FEValues classes', ['../group__feaccess.html', 1, '']]],\n ['access_3c_3a_3apoint_3c_20dim_2c_20number_20_3e_2c_20d_20_3e_21', ['access<::Point< dim, Number >, D >', ['../structboost_1_1geometry_1_1traits_1_1access_3_1_1Point_3_01dim_00_01Number_01_4_00_01D_01_4.html', 1, 'boost::geometry::traits']]],\n ['access_5fany_22', ['access_any', ['../classTriaRawIterator.html#ac40639c4e1cc268842303189b6351656', 1, 'TriaRawIterator']]],\n ['access_5fdof_5findex_23', ['access_dof_index', ['../classinternal_1_1DoFHandlerImplementation_1_1DoFObjects.html#a0e66eb7cd615a498a192b9cb71d3b039', 1, 'internal::DoFHandlerImplementation::DoFObjects']]],\n ['access_5findex_24', ['access_index', ['../classDoFHandler_1_1MGVertexDoFs.html#a668f9a81ebea30078a74cc996dc42f2b', 1, 'DoFHandler::MGVertexDoFs']]],\n ['access_5fraw_5fentry_25', ['access_raw_entry', ['../classSymmetricTensor.html#a7f41383a6277e9e4b200f5dd709112b7', 1, 'SymmetricTensor::access_raw_entry(const unsigned int unrolled_index)'],\n@@ -1364,20 +1364,20 @@\n ['apply_5fhanging_5fnode_5fconstraints_455', ['apply_hanging_node_constraints', ['../classinternal_1_1MatrixFreeFunctions_1_1ConstraintInfo.html#a022a3ede2af67af5633b41ae18cd7feb', 1, 'internal::MatrixFreeFunctions::ConstraintInfo::apply_hanging_node_constraints()'],\n ['../classFEEvaluationBase.html#ad13097cc087c445e65657809f8ee1622', 1, 'FEEvaluationBase::apply_hanging_node_constraints()']\n ]],\n ['apply_5finverse_456', ['apply_inverse', ['../classTensorProductMatrixSymmetricSum.html#a636ee30829547c3bb38f5f095c243306', 1, 'TensorProductMatrixSymmetricSum::apply_inverse()'],\n ['../classTensorProductMatrixSymmetricSumCollection.html#a0ed122d78723552910f091faf2b85a03', 1, 'TensorProductMatrixSymmetricSumCollection::apply_inverse()']\n ]],\n ['apply_5fjacobian_457', ['apply_jacobian', ['../classTrilinosWrappers_1_1NOXSolver.html#a01bb08153bf71f56d64eb2af884b5b71', 1, 'TrilinosWrappers::NOXSolver']]],\n- ['apply_5fmatrix_5fvector_5fproduct_458', ['apply_matrix_vector_product', ['../namespaceinternal.html#a86553292dff47aabd16bce4ea8ab7568', 1, 'internal::apply_matrix_vector_product(const Number2 *matrix, const Number *in, Number *out, const int n_rows, const int n_columns, const int stride_in_given, const int stride_out_given)'],\n- ['../namespaceinternal.html#ae01ab4f4b628fb4cb45c35784dd37af9', 1, 'internal::apply_matrix_vector_product(const Number2 *matrix, const Number *in, Number *out)'],\n- ['../namespaceinternal.html#a86004cbfb8a3bbf52dd577fa85282adb', 1, 'internal::apply_matrix_vector_product(const Number2 *DEAL_II_RESTRICT matrix, const Number *in, Number *out, int n_rows_runtime=0, int n_columns_runtime=0, int stride_in_runtime=0, int stride_out_runtime=0)'],\n- ['../namespaceinternal.html#a42cc0ff9eb1744ad8d54293d803be44c', 1, 'internal::apply_matrix_vector_product(const Number2 *matrix, const Number *in, Number *out)'],\n+ ['apply_5fmatrix_5fvector_5fproduct_458', ['apply_matrix_vector_product', ['../namespaceinternal.html#a656af24a6fb3a9036c4a4cc589370aa2', 1, 'internal::apply_matrix_vector_product(const Number2 *matrix, const Number *in, Number *out)'],\n+ ['../namespaceinternal.html#a86553292dff47aabd16bce4ea8ab7568', 1, 'internal::apply_matrix_vector_product(const Number2 *matrix, const Number *in, Number *out, const int n_rows, const int n_columns, const int stride_in_given, const int stride_out_given)'],\n ['../namespaceinternal.html#a11f337d2f7433df638b202be54464c26', 1, 'internal::apply_matrix_vector_product(const Number2 *matrix, const Number *in, Number *out, int n_rows, int n_columns, int stride_in, int stride_out)'],\n- ['../namespaceinternal.html#a656af24a6fb3a9036c4a4cc589370aa2', 1, 'internal::apply_matrix_vector_product(const Number2 *matrix, const Number *in, Number *out)']\n+ ['../namespaceinternal.html#a86004cbfb8a3bbf52dd577fa85282adb', 1, 'internal::apply_matrix_vector_product(const Number2 *DEAL_II_RESTRICT matrix, const Number *in, Number *out, int n_rows_runtime=0, int n_columns_runtime=0, int stride_in_runtime=0, int stride_out_runtime=0)'],\n+ ['../namespaceinternal.html#ae01ab4f4b628fb4cb45c35784dd37af9', 1, 'internal::apply_matrix_vector_product(const Number2 *matrix, const Number *in, Number *out)'],\n+ ['../namespaceinternal.html#a42cc0ff9eb1744ad8d54293d803be44c', 1, 'internal::apply_matrix_vector_product(const Number2 *matrix, const Number *in, Number *out)']\n ]],\n ['apply_5fparallel_459', ['apply_parallel', ['../structparallel_1_1ParallelForInteger.html#ab81625249dab7760332acea68fba24c4', 1, 'parallel::ParallelForInteger']]],\n ['apply_5fpreconditioner_460', ['apply_preconditioner', ['../classSparseVanka.html#ae7569b43f4519137cc98f30ada15e1ee', 1, 'SparseVanka']]],\n ['apply_5fto_5fsubrange_461', ['apply_to_subrange', ['../classinternal_1_1AlignedVectorMoveConstruct.html#adbeb5046811e1b87caa2db3b3292996d', 1, 'internal::AlignedVectorMoveConstruct::apply_to_subrange()'],\n ['../classinternal_1_1AlignedVectorCopyConstruct.html#a25024efe927d8399fad476946d45c27b', 1, 'internal::AlignedVectorCopyConstruct::apply_to_subrange()'],\n ['../classDiagonalMatrix.html#a61e1e0c2f6a35850b41fb789129f1051', 1, 'DiagonalMatrix::apply_to_subrange()'],\n ['../structparallel_1_1ParallelForInteger.html#a9062243da34778f88bc0e1e12b4a4140', 1, 'parallel::ParallelForInteger::apply_to_subrange()'],\n@@ -1673,16 +1673,16 @@\n ]],\n ['average_5freduction_619', ['average_reduction', ['../classSolverControl.html#a1a85836808387a141cee9b9a25fc4217', 1, 'SolverControl']]],\n ['average_5fvalues_620', ['average_values', ['../classparallel_1_1distributed_1_1SolutionTransfer.html#a65dafe7dc6ada3cf6799974d2d43d5d8', 1, 'parallel::distributed::SolutionTransfer']]],\n ['avg_621', ['avg', ['../namespaceVectorTools_1_1EvaluationFlags.html#ac6721740e24732d6afabcf28ddfc1ffdacc8b05748569f308550a239dc5b14396', 1, 'VectorTools::EvaluationFlags::avg'],\n ['../structUtilities_1_1MPI_1_1MinMaxAvg.html#a31071978a72624d059c345f3aa935593', 1, 'Utilities::MPI::MinMaxAvg::avg']\n ]],\n ['ax_622', ['Ax', ['../classSparseDirectUMFPACK.html#a7ed75c631fcff7e91738423d5254dbba', 1, 'SparseDirectUMFPACK']]],\n- ['axpy_623', ['axpy', ['../lapack__templates_8h.html#afb76de8274bdedce92aaf10f1538798d', 1, 'axpy(const ::types::blas_int *n, const float *sa, const float *sx, const ::types::blas_int *incx, float *sy, const ::types::blas_int *incy): lapack_templates.h'],\n- ['../lapack__templates_8h.html#a16e4a4203f99b8cae81c80e2b683626a', 1, 'axpy(const ::types::blas_int *n, const double *da, const double *dx, const ::types::blas_int *incx, double *dy, const ::types::blas_int *incy): lapack_templates.h'],\n+ ['axpy_623', ['axpy', ['../lapack__templates_8h.html#a16e4a4203f99b8cae81c80e2b683626a', 1, 'axpy(const ::types::blas_int *n, const double *da, const double *dx, const ::types::blas_int *incx, double *dy, const ::types::blas_int *incy): lapack_templates.h'],\n+ ['../lapack__templates_8h.html#afb76de8274bdedce92aaf10f1538798d', 1, 'axpy(const ::types::blas_int *n, const float *sa, const float *sx, const ::types::blas_int *incx, float *sy, const ::types::blas_int *incy): lapack_templates.h'],\n ['../lapack__templates_8h.html#aeef5bdf0dab6b7d78773f3dfc33393a6', 1, 'axpy(const ::types::blas_int *n, const std::complex< float > *ca, const std::complex< float > *cx, const ::types::blas_int *incx, std::complex< float > *cy, const ::types::blas_int *incy): lapack_templates.h'],\n ['../lapack__templates_8h.html#a71943bc568117bae7da415c4a6dc2775', 1, 'axpy(const ::types::blas_int *, const number1 *, const number2 *, const ::types::blas_int *, number3 *, const ::types::blas_int *): lapack_templates.h'],\n ['../lapack__templates_8h.html#aee7e6a241afec4f38f1051d81cc0463c', 1, 'axpy(const ::types::blas_int *n, const std::complex< double > *za, const std::complex< double > *zx, const ::types::blas_int *incx, std::complex< double > *zy, const ::types::blas_int *incy): lapack_templates.h'],\n ['../classRol_1_1VectorAdaptor.html#aee80e7d48c1b784856d68aaa1e9f578f', 1, 'Rol::VectorAdaptor::axpy()']\n ]],\n ['az_624', ['Az', ['../classSparseDirectUMFPACK.html#a0e11a30bf1c06ab1a83456e267464353', 1, 'SparseDirectUMFPACK']]],\n ['azimut_5fangle_625', ['azimut_angle', ['../structGridOutFlags_1_1Eps_3_013_01_4.html#a1ada9d5796b299ea7e683a0e9221aec5', 1, 'GridOutFlags::Eps< 3 >::azimut_angle'],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_d.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_d.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -701,16 +701,16 @@\n ['../structinternal_1_1TriangulationImplementation_1_1TriaObjects_1_1BoundaryOrMaterialId.html#a56c08d26369c65d862aa8e4cc2065289', 1, 'internal::TriangulationImplementation::TriaObjects::BoundaryOrMaterialId::BoundaryOrMaterialId()']\n ]],\n ['boundaryworkerfunctiontype_269', ['BoundaryWorkerFunctionType', ['../namespaceMeshWorker.html#a6e4b155e980747e8f5842cebcdded8fe', 1, 'MeshWorker']]],\n ['bounding_5fbox_270', ['bounding_box', ['../classFunctions_1_1SignedDistance_1_1Rectangle.html#ae38736c2a97534325fddec30309dd1f3', 1, 'Functions::SignedDistance::Rectangle::bounding_box'],\n ['../classTriaAccessor.html#a57453302997d9df8d1e242bf663dc11b', 1, 'TriaAccessor::bounding_box()']\n ]],\n ['bounding_5fbox_2ecc_271', ['bounding_box.cc', ['../bounding__box_8cc.html', 1, '']]],\n- ['bounding_5fbox_2eh_272', ['bounding_box.h', ['../boost__adaptors_2bounding__box_8h.html', 1, '(Global Namespace)'],\n- ['../base_2bounding__box_8h.html', 1, '(Global Namespace)']\n+ ['bounding_5fbox_2eh_272', ['bounding_box.h', ['../base_2bounding__box_8h.html', 1, '(Global Namespace)'],\n+ ['../boost__adaptors_2bounding__box_8h.html', 1, '(Global Namespace)']\n ]],\n ['bounding_5fbox_5fdata_5fout_2eh_273', ['bounding_box_data_out.h', ['../bounding__box__data__out_8h.html', 1, '']]],\n ['bounding_5fboxes_274', ['bounding_boxes', ['../classArborXWrappers_1_1BoundingBoxPredicate.html#ae9b40ffb97f53a142b961a72b1f80e52', 1, 'ArborXWrappers::BoundingBoxPredicate']]],\n ['boundingbox_275', ['boundingbox', ['../classBoundingBox_3_010_00_01Number_01_4.html#adcd25e9e0edf3645c296e1969d51a9ef', 1, 'BoundingBox< 0, Number >::BoundingBox()'],\n ['../classBoundingBox_3_010_00_01Number_01_4.html#a8ab5664ce0d7a6b3dceef749c1e47d1c', 1, 'BoundingBox< 0, Number >::BoundingBox(const std::pair< Point< 0, Number >, Point< 0, Number > > &)'],\n ['../classBoundingBox.html', 1, 'BoundingBox< spacedim, Number >'],\n ['../classBoundingBox.html#a680e15f8c18f320bd013f0a00ad2510d', 1, 'BoundingBox::BoundingBox(const Container &points)'],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_f.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/all_f.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -61,16 +61,16 @@\n ['data_5findex_16', ['data_index', ['../classinternal_1_1TriangulationImplementation_1_1TriaObjects.html#a9775aeca5733c8d321aee3298c9bd9aba2522e6e6edba080ffbe448a677ab2574', 1, 'internal::TriangulationImplementation::TriaObjects']]],\n ['data_5findex_5foffsets_17', ['data_index_offsets', ['../structinternal_1_1MatrixFreeFunctions_1_1MappingInfoStorage.html#aa7488041eec57e00c41bf6247bc3ad1b', 1, 'internal::MatrixFreeFunctions::MappingInfoStorage::data_index_offsets'],\n ['../classNonMatching_1_1MappingInfo.html#ac3fdbc7e3fa7aebc3a7d997e2a6578d9', 1, 'NonMatching::MappingInfo::data_index_offsets']\n ]],\n ['data_5fmap_18', ['data_map', ['../classUtilities_1_1MPI_1_1internal_1_1ComputeIndexOwner_1_1FlexibleIndexStorage.html#a983b78dc77cd6ac75ab187522c167445', 1, 'Utilities::MPI::internal::ComputeIndexOwner::FlexibleIndexStorage']]],\n ['data_5foffset_19', ['data_offset', ['../classinternal_1_1PrecomputedEvaluationDataAccessor.html#a5c813bb21eb378b234956e0b7d19e6d0', 1, 'internal::PrecomputedEvaluationDataAccessor']]],\n ['data_5fout_20', ['data_out', ['../classAlgorithms_1_1Newton.html#a588aa8bf08a210212e836e5bdb0fd8a3', 1, 'Algorithms::Newton']]],\n- ['data_5fout_2ecc_21', ['data_out.cc', ['../numerics_2data__out_8cc.html', 1, '(Global Namespace)'],\n- ['../particles_2data__out_8cc.html', 1, '(Global Namespace)']\n+ ['data_5fout_2ecc_21', ['data_out.cc', ['../particles_2data__out_8cc.html', 1, '(Global Namespace)'],\n+ ['../numerics_2data__out_8cc.html', 1, '(Global Namespace)']\n ]],\n ['data_5fout_2eh_22', ['data_out.h', ['../particles_2data__out_8h.html', 1, '(Global Namespace)'],\n ['../numerics_2data__out_8h.html', 1, '(Global Namespace)']\n ]],\n ['data_5fout_5fbase_2ecc_23', ['data_out_base.cc', ['../data__out__base_8cc.html', 1, '']]],\n ['data_5fout_5fbase_2eh_24', ['data_out_base.h', ['../data__out__base_8h.html', 1, '']]],\n ['data_5fout_5fdof_5fdata_2ecc_25', ['data_out_dof_data.cc', ['../data__out__dof__data_8cc.html', 1, '']]],\n@@ -89,16 +89,16 @@\n ['data_5fpostprocessor_2ecc_38', ['data_postprocessor.cc', ['../data__postprocessor_8cc.html', 1, '']]],\n ['data_5fpostprocessor_2eh_39', ['data_postprocessor.h', ['../data__postprocessor_8h.html', 1, '']]],\n ['data_5fserializer_40', ['data_serializer', ['../classTriangulation.html#ad1b6282271fd23bb3812e042e396b0d3', 1, 'Triangulation']]],\n ['data_5fset_5fdims_41', ['data_set_dims', ['../classDataOutBase_1_1DataOutFilter.html#a6967aad68d63fb7f20aa8d674c643280', 1, 'DataOutBase::DataOutFilter']]],\n ['data_5fset_5fnames_42', ['data_set_names', ['../classDataOutBase_1_1DataOutFilter.html#ac7f3cc6578367ae47e0f8abe2221d808', 1, 'DataOutBase::DataOutFilter']]],\n ['data_5fsets_43', ['data_sets', ['../classDataOutBase_1_1DataOutFilter.html#a7ec3cc939ea7a7a4d33b96421c3c5231', 1, 'DataOutBase::DataOutFilter']]],\n ['data_5fsize_5fin_5fbytes_44', ['data_size_in_bytes', ['../classparallel_1_1distributed_1_1ContinuousQuadratureDataTransfer.html#a4b5b73b0134640f0b921fe07c5219d5d', 1, 'parallel::distributed::ContinuousQuadratureDataTransfer']]],\n- ['data_5fstorage_45', ['data_storage', ['../structFEValuesViews_1_1RenumberingData.html#a9b5a7eaf47c57bd0276144854bfebb04', 1, 'FEValuesViews::RenumberingData::data_storage'],\n- ['../classparallel_1_1distributed_1_1ContinuousQuadratureDataTransfer.html#affaa0e65d4b2df29c5ab27a324bbe47a', 1, 'parallel::distributed::ContinuousQuadratureDataTransfer::data_storage']\n+ ['data_5fstorage_45', ['data_storage', ['../classparallel_1_1distributed_1_1ContinuousQuadratureDataTransfer.html#affaa0e65d4b2df29c5ab27a324bbe47a', 1, 'parallel::distributed::ContinuousQuadratureDataTransfer::data_storage'],\n+ ['../structFEValuesViews_1_1RenumberingData.html#a9b5a7eaf47c57bd0276144854bfebb04', 1, 'FEValuesViews::RenumberingData::data_storage']\n ]],\n ['data_5fstore_46', ['data_store', ['../classPointValueHistory.html#a7d9b6eb70340e5bfb0fad4acc9692d1e', 1, 'PointValueHistory']]],\n ['data_5fto_5ftransfer_47', ['data_to_transfer', ['../classparallel_1_1distributed_1_1experimental_1_1FieldTransfer.html#a98a1cc92e4275b3756be5bcf3ef6ce13', 1, 'parallel::distributed::experimental::FieldTransfer']]],\n ['data_5ftype_48', ['data_type', ['../classPortable_1_1FEEvaluation.html#ac0e5b2201c7ce0c29b8dffa04dc442e2', 1, 'Portable::FEEvaluation']]],\n ['data_5funknown_49', ['data_unknown', ['../classinternal_1_1TriangulationImplementation_1_1TriaObjects.html#a9775aeca5733c8d321aee3298c9bd9aba264c4d9ba0924b6a34b97a5b4235734b', 1, 'internal::TriangulationImplementation::TriaObjects']]],\n ['data_5fvalues_50', ['data_values', ['../classFunctions_1_1InterpolatedTensorProductGridData.html#ace9643ab3b79fa064c97fe1a6e4b7aff', 1, 'Functions::InterpolatedTensorProductGridData::data_values'],\n ['../classFunctions_1_1InterpolatedUniformGridData.html#a8d704e48712e2e4ab6fee5113c6efe5a', 1, 'Functions::InterpolatedUniformGridData::data_values']\n@@ -116,31 +116,31 @@\n ['datahost_56', ['DataHost', ['../structPortable_1_1DataHost.html', 1, 'Portable']]],\n ['dataout_57', ['dataout', ['../classParticles_1_1DataOut.html', 1, 'Particles::DataOut< dim, spacedim >'],\n ['../classParticles_1_1DataOut.html#ade6ac3ab4be369fb3f0ac152bee8b9ec', 1, 'Particles::DataOut::DataOut()'],\n ['../classDataOut.html#a045bd55f737005924de7f0b116f6f961', 1, 'DataOut::DataOut()'],\n ['../classDataOut.html', 1, 'DataOut< dim, spacedim >']\n ]],\n ['dataout_3c_20patch_5fdim_2c_20spacedim_20_3e_58', ['DataOut< patch_dim, spacedim >', ['../classDataOut.html', 1, '']]],\n- ['dataout_5fdofdata_59', ['dataout_dofdata', ['../classDataOut__DoFData.html#ade0bb550f4114ec376d702685cfb5b51', 1, 'DataOut_DoFData::DataOut_DoFData()'],\n+ ['dataout_5fdofdata_59', ['dataout_dofdata', ['../classDataOut__DoFData.html', 1, 'DataOut_DoFData< dim, patch_dim, spacedim, patch_spacedim >'],\n ['../classDataOut__DoFData.html#aa64afbed42a6c5af21ea4bd9c7105b83', 1, 'DataOut_DoFData::DataOut_DoFData'],\n- ['../classDataOut__DoFData.html', 1, 'DataOut_DoFData< dim, patch_dim, spacedim, patch_spacedim >']\n+ ['../classDataOut__DoFData.html#ade0bb550f4114ec376d702685cfb5b51', 1, 'DataOut_DoFData::DataOut_DoFData()']\n ]],\n ['dataout_5fdofdata_3c_20dim_2c_20dim_20_2d_201_2c_20dim_2c_20dim_20_3e_60', ['DataOut_DoFData< dim, dim - 1, dim, dim >', ['../classDataOut__DoFData.html', 1, '']]],\n ['dataout_5fdofdata_3c_20dim_2c_20dim_2b1_2c_20dim_2c_20dim_2b1_20_3e_61', ['DataOut_DoFData< dim, dim+1, dim, dim+1 >', ['../classDataOut__DoFData.html', 1, '']]],\n ['dataout_5fdofdata_3c_20dim_2c_20dim_2c_20dim_2c_20dim_20_3e_62', ['DataOut_DoFData< dim, dim, dim, dim >', ['../classDataOut__DoFData.html', 1, '']]],\n ['dataout_5fdofdata_3c_20dim_2c_20dim_2c_20spacedim_2c_20spacedim_20_3e_63', ['DataOut_DoFData< dim, dim, spacedim, spacedim >', ['../classDataOut__DoFData.html', 1, '']]],\n ['dataout_5fdofdata_3c_20dim_2c_20patch_5fdim_2c_20spacedim_2c_20spacedim_20_3e_64', ['DataOut_DoFData< dim, patch_dim, spacedim, spacedim >', ['../classDataOut__DoFData.html', 1, '']]],\n ['dataoutbase_65', ['DataOutBase', ['../namespaceDataOutBase.html', 1, '']]],\n ['dataoutbaseimplementation_66', ['DataOutBaseImplementation', ['../namespaceDataOutBaseImplementation.html', 1, '']]],\n ['dataoutfaces_67', ['dataoutfaces', ['../classDataOutFaces.html#adebf4a7dae2b492e5bc6a15ac62caa41', 1, 'DataOutFaces::DataOutFaces()'],\n ['../classDataOutFaces.html', 1, 'DataOutFaces< dim, spacedim >']\n ]],\n ['dataoutfilter_68', ['dataoutfilter', ['../classDataOutBase_1_1DataOutFilter.html#a19416acc262a6c502ff2333a74f8bb2c', 1, 'DataOutBase::DataOutFilter::DataOutFilter()'],\n- ['../classDataOutBase_1_1DataOutFilter.html#a4d67f15c1fbd787a33231b02a91f2096', 1, 'DataOutBase::DataOutFilter::DataOutFilter(const DataOutBase::DataOutFilterFlags &flags)'],\n- ['../classDataOutBase_1_1DataOutFilter.html', 1, 'DataOutBase::DataOutFilter']\n+ ['../classDataOutBase_1_1DataOutFilter.html', 1, 'DataOutBase::DataOutFilter'],\n+ ['../classDataOutBase_1_1DataOutFilter.html#a4d67f15c1fbd787a33231b02a91f2096', 1, 'DataOutBase::DataOutFilter::DataOutFilter()']\n ]],\n ['dataoutfilterflags_69', ['dataoutfilterflags', ['../structDataOutBase_1_1DataOutFilterFlags.html', 1, 'DataOutBase::DataOutFilterFlags'],\n ['../structDataOutBase_1_1DataOutFilterFlags.html#ad9dc6b37c9704bc1e1d5edcecdcd994e', 1, 'DataOutBase::DataOutFilterFlags::DataOutFilterFlags()']\n ]],\n ['dataoutinterface_70', ['dataoutinterface', ['../classDataOutInterface.html', 1, 'DataOutInterface< dim, spacedim >'],\n ['../classDataOutInterface.html#a81ecd531bbff5931e25a160e363bc690', 1, 'DataOutInterface::DataOutInterface()']\n ]],\n@@ -156,30 +156,30 @@\n ]],\n ['dataoutrotation_79', ['DataOutRotation', ['../classDataOutRotation.html', 1, '']]],\n ['dataoutstack_80', ['DataOutStack', ['../classDataOutStack.html', 1, '']]],\n ['datapostprocessor_81', ['DataPostprocessor', ['../classDataPostprocessor.html', 1, '']]],\n ['datapostprocessor_3c_20spacedim_20_3e_82', ['DataPostprocessor< spacedim >', ['../classDataPostprocessor.html', 1, '']]],\n ['datapostprocessorinputs_83', ['DataPostprocessorInputs', ['../namespaceDataPostprocessorInputs.html', 1, '']]],\n ['datapostprocessors_84', ['DataPostprocessors', ['../namespaceDataPostprocessors.html', 1, '']]],\n- ['datapostprocessorscalar_85', ['datapostprocessorscalar', ['../classDataPostprocessorScalar.html#a591a3119f5c03888a63b4542975c7a13', 1, 'DataPostprocessorScalar::DataPostprocessorScalar()'],\n- ['../classDataPostprocessorScalar.html', 1, 'DataPostprocessorScalar< dim >']\n+ ['datapostprocessorscalar_85', ['datapostprocessorscalar', ['../classDataPostprocessorScalar.html', 1, 'DataPostprocessorScalar< dim >'],\n+ ['../classDataPostprocessorScalar.html#a591a3119f5c03888a63b4542975c7a13', 1, 'DataPostprocessorScalar::DataPostprocessorScalar()']\n ]],\n ['datapostprocessortensor_86', ['datapostprocessortensor', ['../classDataPostprocessorTensor.html#a81eaa494a89bfa997902657cfb28cea8', 1, 'DataPostprocessorTensor::DataPostprocessorTensor()'],\n ['../classDataPostprocessorTensor.html', 1, 'DataPostprocessorTensor< dim >']\n ]],\n ['datapostprocessorvector_87', ['datapostprocessorvector', ['../classDataPostprocessorVector.html#a81bbf4fb831c7f87d3fd5cd0a1f0934d', 1, 'DataPostprocessorVector::DataPostprocessorVector()'],\n ['../classDataPostprocessorVector.html', 1, 'DataPostprocessorVector< dim >']\n ]],\n- ['dataset_88', ['dataset', ['../classHDF5_1_1DataSet.html#ae4d2ab2e632c9d393b8d02e564fc57d4', 1, 'HDF5::DataSet::DataSet(const std::string &name, const hid_t &parent_group_id, const std::vector< hsize_t > &dimensions, const std::shared_ptr< hid_t > &t_type, const bool mpi)'],\n- ['../classHDF5_1_1DataSet.html#a8791be17c6fae2d5b069d3b8887f191c', 1, 'HDF5::DataSet::DataSet(const std::string &name, const hid_t &parent_group_id, bool mpi)'],\n+ ['dataset_88', ['dataset', ['../classHDF5_1_1DataSet.html#a8791be17c6fae2d5b069d3b8887f191c', 1, 'HDF5::DataSet::DataSet(const std::string &name, const hid_t &parent_group_id, bool mpi)'],\n+ ['../classHDF5_1_1DataSet.html#ae4d2ab2e632c9d393b8d02e564fc57d4', 1, 'HDF5::DataSet::DataSet(const std::string &name, const hid_t &parent_group_id, const std::vector< hsize_t > &dimensions, const std::shared_ptr< hid_t > &t_type, const bool mpi)'],\n ['../classHDF5_1_1DataSet.html', 1, 'HDF5::DataSet']\n ]],\n ['dataset_5fkey_89', ['dataset_key', ['../classPointValueHistory.html#a570646e2cfd2d62da8ad4629fa93a0e8', 1, 'PointValueHistory']]],\n- ['dataset_5fnames_90', ['dataset_names', ['../classBoundingBoxDataOut.html#a6c04cde41f7d0f5f2b8edffed03d71d3', 1, 'BoundingBoxDataOut::dataset_names'],\n- ['../classDataOutReader.html#ac57506fd8847bdd4d00cf53d01fca441', 1, 'DataOutReader::dataset_names'],\n+ ['dataset_5fnames_90', ['dataset_names', ['../classDataOutReader.html#ac57506fd8847bdd4d00cf53d01fca441', 1, 'DataOutReader::dataset_names'],\n+ ['../classBoundingBoxDataOut.html#a6c04cde41f7d0f5f2b8edffed03d71d3', 1, 'BoundingBoxDataOut::dataset_names'],\n ['../classParticles_1_1DataOut.html#a2b7bff5825c9451ab9842f75ec3ed7a7', 1, 'Particles::DataOut::dataset_names']\n ]],\n ['dataset_5foffset_91', ['dataset_offset', ['../classQProjector_1_1DataSetDescriptor.html#a3f3112349652d0ac23e43fedc709cef0', 1, 'QProjector::DataSetDescriptor']]],\n ['datasetdescriptor_92', ['datasetdescriptor', ['../classQProjector_1_1DataSetDescriptor.html#ae69fb8885c77929df583c2c614f89a7e', 1, 'QProjector::DataSetDescriptor::DataSetDescriptor()'],\n ['../classQProjector_1_1DataSetDescriptor.html#a0538147700a290dce23217ed5e54b7e0', 1, 'QProjector::DataSetDescriptor::DataSetDescriptor(const unsigned int dataset_offset)'],\n ['../classQProjector_1_1DataSetDescriptor.html', 1, 'QProjector< dim >::DataSetDescriptor']\n ]],\n@@ -328,16 +328,16 @@\n ['deal_5fii_5fwith_5fslepc_233', ['DEAL_II_WITH_SLEPC', ['../config_8h.html#a6e4928f868c284f29025838fc63edcc7', 1, 'config.h']]],\n ['deal_5fii_5fwith_5fsundials_234', ['DEAL_II_WITH_SUNDIALS', ['../config_8h.html#afc749ccb8ac9767beab8f5330e4e37b6', 1, 'config.h']]],\n ['deal_5fii_5fwith_5ftbb_235', ['DEAL_II_WITH_TBB', ['../config_8h.html#a83d7caf3285210567af05c24e8145af0', 1, 'config.h']]],\n ['deal_5fii_5fwith_5fthreads_236', ['DEAL_II_WITH_THREADS', ['../config_8h.html#ab9cb3def187d9c7084d634f33f265632', 1, 'config.h']]],\n ['deal_5fii_5fwith_5ftrilinos_237', ['DEAL_II_WITH_TRILINOS', ['../config_8h.html#a1d508e1ba77ba148ae554e637a8f5abf', 1, 'config.h']]],\n ['deal_5fii_5fwith_5fumfpack_238', ['DEAL_II_WITH_UMFPACK', ['../config_8h.html#abe0b2f8c6fc7536c0210023dc456e124', 1, 'config.h']]],\n ['deal_5fii_5fwith_5fzlib_239', ['DEAL_II_WITH_ZLIB', ['../config_8h.html#a7b07d7206b10fa157fd346af1c5b880c', 1, 'config.h']]],\n- ['dealii_240', ['dealii', ['../namespacedealii.html', 1, 'dealii'],\n- ['../structGridOutFlags_1_1Svg.html#acd2da6d580f03e1c38c9a11bd4c554b1aac3a78ee82e4005530cbf8b20987bf01', 1, 'GridOutFlags::Svg::dealii']\n+ ['dealii_240', ['dealii', ['../structGridOutFlags_1_1Svg.html#acd2da6d580f03e1c38c9a11bd4c554b1aac3a78ee82e4005530cbf8b20987bf01', 1, 'GridOutFlags::Svg::dealii'],\n+ ['../namespacedealii.html', 1, 'dealii']\n ]],\n ['dealii_5fcell_5fto_5fcgal_5fsurface_5fmesh_241', ['dealii_cell_to_cgal_surface_mesh', ['../namespaceCGALWrappers.html#ac8ad2b787c0cf60b46647a68b62387db', 1, 'CGALWrappers']]],\n ['dealii_5finitialized_5fkokkos_242', ['dealii_initialized_kokkos', ['../namespaceinternal.html#afa406ddb485a71816344a33e5efcbcce', 1, 'internal']]],\n ['dealii_5finstantiate_5ffor_5feach_5fvalue_5fand_5findex_5ftype_243', ['DEALII_INSTANTIATE_FOR_EACH_VALUE_AND_INDEX_TYPE', ['../ginkgo__solver_8cc.html#ae035a3baf94db8811ad2a4ebaed98e68', 1, 'ginkgo_solver.cc']]],\n ['dealii_5fpoint_5fto_5fvtk_5farray_244', ['dealii_point_to_vtk_array', ['../namespaceVTKWrappers.html#a3d0d175b0798a218ee87eafbf7994c62', 1, 'VTKWrappers']]],\n ['dealii_5ftria_5fto_5fcgal_5fsurface_5fmesh_245', ['dealii_tria_to_cgal_surface_mesh', ['../namespaceCGALWrappers.html#a095a44e91a55fd231d2b37e9ef1028c8', 1, 'CGALWrappers']]],\n ['dealii_5fversion_5fstring_246', ['dealii_version_string', ['../namespaceUtilities.html#ab38806c4f02f69c071d8893f81e3c0ce', 1, 'Utilities']]],\n@@ -359,30 +359,30 @@\n ['declare_5falias_254', ['declare_alias', ['../classParameterHandler.html#aecb847561585089c4c7fcf51eddece16', 1, 'ParameterHandler']]],\n ['declare_5fall_5fparameters_255', ['declare_all_parameters', ['../classParameterAcceptor.html#a3775ed960cf63c9ae88613925d226b11', 1, 'ParameterAcceptor']]],\n ['declare_5fcolumn_256', ['declare_column', ['../classTableHandler.html#a3be10de14f8b3cc9caadad77ea3247b2', 1, 'TableHandler']]],\n ['declare_5fdata_5fvector_257', ['declare_data_vector', ['../classDataOutStack.html#ad595b96e5d426a565a2b619e6c759119', 1, 'DataOutStack::declare_data_vector(const std::vector< std::string > &name, const VectorType vector_type)'],\n ['../classDataOutStack.html#a2c8681b9547710ae05cecf2632e921d7', 1, 'DataOutStack::declare_data_vector(const std::string &name, const VectorType vector_type)']\n ]],\n ['declare_5fentry_258', ['declare_entry', ['../classParameterHandler.html#a6d65f458be69e23a348221cb67fc411d', 1, 'ParameterHandler']]],\n- ['declare_5fparameters_259', ['declare_parameters', ['../structDataOutBase_1_1UcdFlags.html#a7a8bab7c84f32a21198af74520ca2f6a', 1, 'DataOutBase::UcdFlags::declare_parameters()'],\n+ ['declare_5fparameters_259', ['declare_parameters', ['../structDataOutBase_1_1EpsFlags.html#a085c21a59b4a864aeec27fec078548b0', 1, 'DataOutBase::EpsFlags::declare_parameters()'],\n ['../classReductionControl.html#a86d646cf79f42081f01aefd63869d249', 1, 'ReductionControl::declare_parameters()'],\n ['../classSolverControl.html#a0bb6dc567e07e9f7b0a9d09f801bf149', 1, 'SolverControl::declare_parameters()'],\n ['../classGridOut.html#a59880d5f706074a8a12ef1d1b27305a9', 1, 'GridOut::declare_parameters()'],\n ['../structGridOutFlags_1_1MathGL.html#a8be64c2cfdf09328fc69b8eb05b1d6c4', 1, 'GridOutFlags::MathGL::declare_parameters()'],\n ['../structGridOutFlags_1_1XFig.html#ac8fd5794e5b8ec1460ccfd17db56fcf3', 1, 'GridOutFlags::XFig::declare_parameters()'],\n ['../structGridOutFlags_1_1Eps_3_013_01_4.html#aafbbd43cf3234c6d2ebf06b933a27ee2', 1, 'GridOutFlags::Eps< 3 >::declare_parameters()'],\n ['../structGridOutFlags_1_1Eps_3_012_01_4.html#adbbefb5f960d892c2b7f7425a3e101f8', 1, 'GridOutFlags::Eps< 2 >::declare_parameters()'],\n ['../classAlgorithms_1_1TimestepControl.html#afc6105b0c854bf178bbdbfc4d4608511', 1, 'Algorithms::TimestepControl::declare_parameters()'],\n ['../structGridOutFlags_1_1Eps_3_011_01_4.html#aed39c72fedabe70767442af8aff5a57c', 1, 'GridOutFlags::Eps< 1 >::declare_parameters()'],\n ['../classParameterAcceptorProxy.html#a03e2bc3679275cd8a8f805403cb671bd', 1, 'ParameterAcceptorProxy::declare_parameters()'],\n ['../classParameterAcceptor.html#af73d667dd9cdb4614b917a1b9383ae5b', 1, 'ParameterAcceptor::declare_parameters()'],\n ['../classDataOutInterface.html#a1f2f1d644d9cb1c4d1714d5173d159f2', 1, 'DataOutInterface::declare_parameters()'],\n ['../structDataOutBase_1_1DataOutFilterFlags.html#a025ed8148fb3e92d2a2b1f9c73d36278', 1, 'DataOutBase::DataOutFilterFlags::declare_parameters()'],\n- ['../structDataOutBase_1_1EpsFlags.html#a085c21a59b4a864aeec27fec078548b0', 1, 'DataOutBase::EpsFlags::declare_parameters()'],\n ['../structDataOutBase_1_1PovrayFlags.html#a08badfa68bd33fa5b013bca4ab3d1971', 1, 'DataOutBase::PovrayFlags::declare_parameters()'],\n+ ['../structDataOutBase_1_1UcdFlags.html#a7a8bab7c84f32a21198af74520ca2f6a', 1, 'DataOutBase::UcdFlags::declare_parameters()'],\n ['../structDataOutBase_1_1DXFlags.html#aee12fa4b3708654e1f19dd96d80e7fae', 1, 'DataOutBase::DXFlags::declare_parameters()'],\n ['../structDataOutBase_1_1OutputFlagsBase.html#a3870e73df8eedaa6d03c7428fa6f1b8b', 1, 'DataOutBase::OutputFlagsBase::declare_parameters()'],\n ['../classAlgorithms_1_1ThetaTimestepping.html#a196ecc21245fe5343c32437d5b91ec24', 1, 'Algorithms::ThetaTimestepping::declare_parameters()'],\n ['../classAlgorithms_1_1Newton.html#ae29986a4f46b66ec91a2155951419afd', 1, 'Algorithms::Newton::declare_parameters()'],\n ['../classFunctions_1_1ParsedFunction.html#a57fd4a680441ae940812431a421c9c40', 1, 'Functions::ParsedFunction::declare_parameters()'],\n ['../structGridOutFlags_1_1DX.html#a2fb44c14428810e97b16411fefa76d5f', 1, 'GridOutFlags::DX::declare_parameters()'],\n ['../structGridOutFlags_1_1Msh.html#aadd98c375317a4563aaff697d358de0b', 1, 'GridOutFlags::Msh::declare_parameters()'],\n@@ -437,40 +437,40 @@\n ['default_5fsetting_291', ['default_setting', ['../namespaceTriangulationDescription.html#aa1531298eb0a267d9ceca5eb46ada8e0a7c2ea84f1b4c5f2a6aa010f600ca66b6', 1, 'TriangulationDescription::default_setting'],\n ['../classparallel_1_1distributed_1_1Triangulation_3_011_00_01spacedim_01_4.html#ad9523fae2212eed0e8d31cb542c91ad5a3c8b5aab5b0db3af724cf5a09ee12db8', 1, 'parallel::distributed::Triangulation< 1, spacedim >::default_setting'],\n ['../classparallel_1_1distributed_1_1Triangulation.html#a0f5f69b2f422595604c9317ea7f15c13a80dd6bc33282bb4ee59e282098beeebe', 1, 'parallel::distributed::Triangulation::default_setting']\n ]],\n ['default_5fsubdivisions_292', ['default_subdivisions', ['../classDataOutInterface.html#a072edd6d53d1c5a1e4c71af22a123228', 1, 'DataOutInterface']]],\n ['default_5fsuffix_293', ['default_suffix', ['../classDataOutInterface.html#a36120ca3f536c90709e135161030f16c', 1, 'DataOutInterface::default_suffix()'],\n ['../classGridIn.html#a5ddbbe9fce50c07aadc9c455a3f676fd', 1, 'GridIn::default_suffix()'],\n- ['../classGridOut.html#aca2a644e2ce0dc2937ebc4e910479fbf', 1, 'GridOut::default_suffix()'],\n- ['../namespaceDataOutBase.html#aed25a6ddf928a6904fd1ac942125ec86', 1, 'DataOutBase::default_suffix()'],\n- ['../classGridOut.html#a48d658345b477fe2fe06f702475d4baf', 1, 'GridOut::default_suffix()']\n+ ['../classGridOut.html#aca2a644e2ce0dc2937ebc4e910479fbf', 1, 'GridOut::default_suffix(const OutputFormat output_format)'],\n+ ['../classGridOut.html#a48d658345b477fe2fe06f702475d4baf', 1, 'GridOut::default_suffix() const'],\n+ ['../namespaceDataOutBase.html#aed25a6ddf928a6904fd1ac942125ec86', 1, 'DataOutBase::default_suffix()']\n ]],\n- ['default_5fvariable_5fnames_294', ['default_variable_names', ['../classTensorFunctionParser.html#ab28333981e6babf652a7bc11cb62b28d', 1, 'TensorFunctionParser::default_variable_names()'],\n- ['../classFunctionParser.html#ad2a69afb91de468f3bb2de6245258dd6', 1, 'FunctionParser::default_variable_names()']\n+ ['default_5fvariable_5fnames_294', ['default_variable_names', ['../classFunctionParser.html#ad2a69afb91de468f3bb2de6245258dd6', 1, 'FunctionParser::default_variable_names()'],\n+ ['../classTensorFunctionParser.html#ab28333981e6babf652a7bc11cb62b28d', 1, 'TensorFunctionParser::default_variable_names()']\n ]],\n ['defaulthierarchy_295', ['DefaultHierarchy', ['../structhp_1_1FECollection_1_1DefaultHierarchy.html', 1, 'hp::FECollection']]],\n ['defaultpolicy_296', ['defaultpolicy', ['../classRepartitioningPolicyTools_1_1DefaultPolicy.html', 1, 'RepartitioningPolicyTools::DefaultPolicy< dim, spacedim >'],\n ['../classRepartitioningPolicyTools_1_1DefaultPolicy.html#aec90e2e3c630426c5e16f17867c0e5f9', 1, 'RepartitioningPolicyTools::DefaultPolicy::DefaultPolicy()']\n ]],\n ['defaultstyle_297', ['DefaultStyle', ['../classParameterHandler.html#a8364dda711b93753c6809eefe2a8e827aea377cb78fede823d8857c58bca5fd48', 1, 'ParameterHandler']]],\n ['defect_298', ['defect', ['../classMultigrid.html#adecf4e39189911da5096d1112c91680b', 1, 'Multigrid']]],\n ['defect2_299', ['defect2', ['../classMultigrid.html#a07c892358b14e887a8ff01c15547f7a1', 1, 'Multigrid']]],\n ['definiteness_300', ['Definiteness', ['../namespaceNonMatching_1_1internal_1_1QuadratureGeneratorImplementation.html#a80d21d0fdbd053da761b80b53b01923e', 1, 'NonMatching::internal::QuadratureGeneratorImplementation']]],\n- ['degree_301', ['degree', ['../classPolynomials_1_1PolynomialsHermite.html#a31c07fd518d144b4c0b7875b919a3446', 1, 'Polynomials::PolynomialsHermite::degree'],\n- ['../structinternal_1_1EigenvalueInformation.html#acecbaeace28d39b12519c11c3bfe4041', 1, 'internal::EigenvalueInformation::degree'],\n- ['../structPreconditionChebyshev_1_1AdditionalData.html#aa4b131c00f6a6055231c39366a37462a', 1, 'PreconditionChebyshev::AdditionalData::degree'],\n+ ['degree_301', ['degree', ['../classPolynomials_1_1Polynomial.html#aff59b4f1ca7d2eca5a897692426f000d', 1, 'Polynomials::Polynomial::degree()'],\n ['../classTensorPolynomialsBase.html#accbc76429656ae17e9e5058f4040b055', 1, 'TensorPolynomialsBase::degree()'],\n ['../classScalarPolynomialsBase.html#aa12f9f2846545743319be8b6d584250d', 1, 'ScalarPolynomialsBase::degree()'],\n+ ['../classPolynomials_1_1PolynomialsHermite.html#a31c07fd518d144b4c0b7875b919a3446', 1, 'Polynomials::PolynomialsHermite::degree'],\n+ ['../classFiniteElementData.html#a2cbf5ad6b464871261dbd054bced18a8', 1, 'FiniteElementData::degree'],\n+ ['../structinternal_1_1EigenvalueInformation.html#acecbaeace28d39b12519c11c3bfe4041', 1, 'internal::EigenvalueInformation::degree'],\n ['../classPolynomials_1_1PiecewisePolynomial.html#a1052a5d79d7f203562db6cc791c602d8', 1, 'Polynomials::PiecewisePolynomial::degree()'],\n- ['../classPolynomialsP.html#aa776bdf4125eb86118cccf5471c798b5', 1, 'PolynomialsP::degree()'],\n- ['../classPolynomials_1_1Polynomial.html#aff59b4f1ca7d2eca5a897692426f000d', 1, 'Polynomials::Polynomial::degree()'],\n- ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionChebyshev_1_1AdditionalData.html#ac1e748d1ac6d2f6ca3aeb9b6123365b7', 1, 'LinearAlgebra::TpetraWrappers::PreconditionChebyshev::AdditionalData::degree'],\n+ ['../structPreconditionChebyshev_1_1AdditionalData.html#aa4b131c00f6a6055231c39366a37462a', 1, 'PreconditionChebyshev::AdditionalData::degree'],\n ['../structTrilinosWrappers_1_1PreconditionChebyshev_1_1AdditionalData.html#a723175ecbcf72cfc510a4bed34274ce5', 1, 'TrilinosWrappers::PreconditionChebyshev::AdditionalData::degree'],\n- ['../classFiniteElementData.html#a2cbf5ad6b464871261dbd054bced18a8', 1, 'FiniteElementData::degree']\n+ ['../structLinearAlgebra_1_1TpetraWrappers_1_1PreconditionChebyshev_1_1AdditionalData.html#ac1e748d1ac6d2f6ca3aeb9b6123365b7', 1, 'LinearAlgebra::TpetraWrappers::PreconditionChebyshev::AdditionalData::degree'],\n+ ['../classPolynomialsP.html#aa776bdf4125eb86118cccf5471c798b5', 1, 'PolynomialsP::degree()']\n ]],\n ['degree_5fcoarse_302', ['degree_coarse', ['../structMGTwoLevelTransfer_1_1MGTransferScheme.html#a066f4389d1736d64a3a53e0a3c310011', 1, 'MGTwoLevelTransfer::MGTransferScheme']]],\n ['degree_5ffine_303', ['degree_fine', ['../structMGTwoLevelTransfer_1_1MGTransferScheme.html#a92b6154e014520b0869b44cee2f55fd0', 1, 'MGTwoLevelTransfer::MGTransferScheme']]],\n ['degrees_304', ['degrees', ['../classBarycentricPolynomial.html#a5c370e75f18412f879e45451672b680a', 1, 'BarycentricPolynomial']]],\n ['degrees_20of_20freedom_305', ['degrees of freedom', ['../group__constraints.html', 1, 'Constraints on degrees of freedom'],\n ['../group__dofs.html', 1, 'Degrees of Freedom']\n ]],\n@@ -478,18 +478,18 @@\n ['../classSUNDIALS_1_1KINSOL_1_1AdditionalData.html#a62ccb862c04e1f1cf53e6489fd6feddaa8ff94b0d9b71586627178113fef224a6', 1, 'SUNDIALS::KINSOL::AdditionalData::delayed_classical_gram_schmidt']\n ]],\n ['delayed_5freorthogonalization_307', ['delayed_reorthogonalization', ['../structSLEPcWrappers_1_1SolverArnoldi_1_1AdditionalData.html#a30ab64da0f2ae7b950ef22a09162beb4', 1, 'SLEPcWrappers::SolverArnoldi::AdditionalData']]],\n ['delete_5fand_5frebuild_5ftria_308', ['delete_and_rebuild_tria', ['../structTimeStepBase__Tria__Flags_1_1Flags.html#a8221f8f2c0e9c3b48de217ac04b9bf63', 1, 'TimeStepBase_Tria_Flags::Flags']]],\n ['delete_5farray_309', ['delete_array', ['../classAlignedVector_1_1Deleter_1_1MPISharedMemDeleterAction.html#a71c0f809431faae7e1862ad294bc93fe', 1, 'AlignedVector::Deleter::MPISharedMemDeleterAction::delete_array()'],\n ['../classAlignedVector_1_1Deleter_1_1DeleterActionBase.html#ae7d974cb606c5b26ddade15e674fc889', 1, 'AlignedVector::Deleter::DeleterActionBase::delete_array()']\n ]],\n- ['delete_5fchildren_310', ['delete_children', ['../structinternal_1_1TriangulationImplementation_1_1Implementation.html#acbc6220cc647150071fe26e785ca4533', 1, 'internal::TriangulationImplementation::Implementation::delete_children()'],\n+ ['delete_5fchildren_310', ['delete_children', ['../structinternal_1_1TriangulationImplementation_1_1Implementation.html#ac2eb2b3dc633fbeaf1a238b699e7d711', 1, 'internal::TriangulationImplementation::Implementation::delete_children()'],\n ['../classinternal_1_1TriangulationImplementation_1_1Policy.html#acbf20e6a2a595674993a284606833f87', 1, 'internal::TriangulationImplementation::Policy::delete_children()'],\n ['../classinternal_1_1TriangulationImplementation_1_1PolicyWrapper.html#a3199693a78b106525dd9d56464a7ecb9', 1, 'internal::TriangulationImplementation::PolicyWrapper::delete_children()'],\n- ['../structinternal_1_1TriangulationImplementation_1_1Implementation.html#ac2eb2b3dc633fbeaf1a238b699e7d711', 1, 'internal::TriangulationImplementation::Implementation::delete_children(Triangulation< 1, spacedim > &triangulation, typename Triangulation< 1, spacedim >::cell_iterator &cell, std::vector< unsigned int > &, std::vector< unsigned int > &)'],\n+ ['../structinternal_1_1TriangulationImplementation_1_1Implementation.html#acbc6220cc647150071fe26e785ca4533', 1, 'internal::TriangulationImplementation::Implementation::delete_children(Triangulation< 2, spacedim > &triangulation, typename Triangulation< 2, spacedim >::cell_iterator &cell, std::vector< unsigned int > &line_cell_count, std::vector< unsigned int > &)'],\n ['../structinternal_1_1TriangulationImplementation_1_1Implementation.html#a3c35058333ea8aeb4c7cc9ca868867f6', 1, 'internal::TriangulationImplementation::Implementation::delete_children(Triangulation< 3, spacedim > &triangulation, typename Triangulation< 3, spacedim >::cell_iterator &cell, std::vector< unsigned int > &line_cell_count, std::vector< unsigned int > &quad_cell_count)'],\n ['../structinternal_1_1TriangulationImplementation_1_1ImplementationMixedMesh.html#a9f20d28152ed8cb8877da4d97a134c8d', 1, 'internal::TriangulationImplementation::ImplementationMixedMesh::delete_children()']\n ]],\n ['delete_5fdevice_5fdata_311', ['delete_device_data', ['../namespaceUtilities_1_1CUDA.html#aaab4f09907052e33d50b4cab641db38b', 1, 'Utilities::CUDA']]],\n ['delete_5fduplicated_5fvertices_312', ['delete_duplicated_vertices', ['../namespaceGridTools.html#a79820d66b08b06e94541817ba78d6213', 1, 'GridTools::delete_duplicated_vertices(std::vector< Point< spacedim > > &all_vertices, std::vector< CellData< dim > > &cells, SubCellData &subcelldata, std::vector< unsigned int > &considered_vertices, const double tol=1e-12)'],\n ['../namespaceGridTools.html#ad5f4a5f6be8ce91199d9bc533ed3a11e', 1, 'GridTools::delete_duplicated_vertices(std::vector< Point< dim > > &vertices, const double tol=1e-12)']\n ]],\n@@ -639,19 +639,19 @@\n ['detach_381', ['detach', ['../classLogStream.html#af31c6955d25d449f39c5f2c23920dcd8', 1, 'LogStream']]],\n ['details_20of_20time_20stepping_382', ['Details of time-stepping', ['../classDiscreteTime.html#autotoc_md0', 1, '']]],\n ['detected_5for_383', ['detected_or', ['../namespaceinternal_1_1SupportsOperation.html#adf41ba2f0c23b0d5395e06995c863805', 1, 'internal::SupportsOperation']]],\n ['detected_5for_5ft_384', ['detected_or_t', ['../namespaceinternal_1_1SupportsOperation.html#a1e2b0593f72cd5588e8081a3c7b16fe8', 1, 'internal::SupportsOperation']]],\n ['detected_5ft_385', ['detected_t', ['../namespaceinternal_1_1SupportsOperation.html#a9f869b5323b3067dbcdfa4efc325aeda', 1, 'internal::SupportsOperation']]],\n ['detector_386', ['detector', ['../structinternal_1_1SupportsOperation_1_1detector.html', 1, 'internal::SupportsOperation']]],\n ['detector_3c_20default_2c_20void_5ft_3c_20op_3c_20args_2e_2e_2e_20_3e_20_3e_2c_20op_2c_20args_2e_2e_2e_20_3e_387', ['detector< Default, void_t< Op< Args... > >, Op, Args... >', ['../structinternal_1_1SupportsOperation_1_1detector_3_01Default_00_01void__t_3_01Op_3_01Args_8_8_8_0f78ab3014b3a6806d036c3d96444b509.html', 1, 'internal::SupportsOperation']]],\n- ['determinant_388', ['determinant', ['../classSymmetricTensor.html#a041d56f5d878527b2a9d274c47a6f037', 1, 'SymmetricTensor::determinant()'],\n- ['../classLAPACKFullMatrix.html#ae43a3659640712acd8a004f7cf1bee77', 1, 'LAPACKFullMatrix::determinant()'],\n- ['../classFullMatrix.html#aa75b187e4b8b3e2758118f3c2794c14b', 1, 'FullMatrix::determinant()'],\n+ ['determinant_388', ['determinant', ['../symmetric__tensor_8h.html#a041d56f5d878527b2a9d274c47a6f037', 1, 'determinant(): symmetric_tensor.h'],\n ['../classDerivativeForm.html#a314d3c4f88d9729eb1100fe73d7a8797', 1, 'DerivativeForm::determinant()'],\n- ['../symmetric__tensor_8h.html#a041d56f5d878527b2a9d274c47a6f037', 1, 'determinant(): symmetric_tensor.h']\n+ ['../classFullMatrix.html#aa75b187e4b8b3e2758118f3c2794c14b', 1, 'FullMatrix::determinant()'],\n+ ['../classLAPACKFullMatrix.html#ae43a3659640712acd8a004f7cf1bee77', 1, 'LAPACKFullMatrix::determinant()'],\n+ ['../classSymmetricTensor.html#a041d56f5d878527b2a9d274c47a6f037', 1, 'SymmetricTensor::determinant()']\n ]],\n ['determine_5fbeta_5fby_5fflexible_5fformula_389', ['determine_beta_by_flexible_formula', ['../classSolverCG.html#a36e63dc23468d42b45b0745594731e31', 1, 'SolverCG']]],\n ['determine_5fface_5flocation_5fto_5flevelset_390', ['determine_face_location_to_levelset', ['../classNonMatching_1_1MeshClassifier.html#a807af869e183d83d718b62fefad9e0bf', 1, 'NonMatching::MeshClassifier']]],\n ['determine_5ffe_5ffrom_5fchildren_391', ['determine_fe_from_children', ['../structinternal_1_1hp_1_1DoFHandlerImplementation_1_1Implementation.html#ac52ee2a9b96088af0f8bb9012df524d7', 1, 'internal::hp::DoFHandlerImplementation::Implementation']]],\n ['determine_5fghost_5findices_392', ['determine_ghost_indices', ['../classPETScWrappers_1_1VectorBase.html#a259baacfe9e46403a7a6da8a883d5620', 1, 'PETScWrappers::VectorBase']]],\n ['determine_5fintermediate_5fformat_5fdimensions_393', ['determine_intermediate_format_dimensions', ['../namespaceDataOutBase.html#a14e601aef19bd7d10884a1d25f07f3f8', 1, 'DataOutBase']]],\n ['determine_5fneighbors_394', ['determine_neighbors', ['../namespaceinternal_1_1TriangulationImplementation.html#a33434dc16bae6adf4f1d6248d1d8fbe8', 1, 'internal::TriangulationImplementation']]],\n@@ -710,17 +710,17 @@\n ['difference_416', ['difference', ['../classParsedConvergenceTable.html#a26cb1a7a149a94d21271474823608b06', 1, 'ParsedConvergenceTable::difference(const DoFHandler< dim, spacedim > &, const VectorType &, const VectorType &, const Function< spacedim > *weight=nullptr)'],\n ['../classParsedConvergenceTable.html#a1ad8121a93b90755a52c372c41fce2f8', 1, 'ParsedConvergenceTable::difference(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &, const VectorType &, const VectorType &, const Function< spacedim > *weight=nullptr)']\n ]],\n ['difference_5ftype_417', ['difference_type', ['../classIteratorOverIterators.html#a08f18e69f2c2d2264eb254714be99941', 1, 'IteratorOverIterators::difference_type'],\n ['../classIndexSet_1_1IntervalIterator.html#a3346f23c0f0de1d4c019c66e6723c6ea', 1, 'IndexSet::IntervalIterator::difference_type'],\n ['../classIndexSet_1_1ElementIterator.html#a768d7d7dc5bceaae19f1ad31dd3a33db', 1, 'IndexSet::ElementIterator::difference_type'],\n ['../classinternal_1_1BlockVectorIterators_1_1Iterator.html#ad8cb3bf4001514075bff8361519b6046', 1, 'internal::BlockVectorIterators::Iterator::difference_type'],\n+ ['../classTriaRawIterator.html#af2f3475eb62d97fad901084cececb94a', 1, 'TriaRawIterator::difference_type'],\n ['../classLinearIndexIterator.html#ad55b979c63dafac36bc5260f9eafefeb', 1, 'LinearIndexIterator::difference_type'],\n ['../classinternal_1_1TableBaseAccessors_1_1Accessor.html#a1c15d762658e3c95cb296d09ccb7f9b5', 1, 'internal::TableBaseAccessors::Accessor::difference_type'],\n- ['../classTriaRawIterator.html#af2f3475eb62d97fad901084cececb94a', 1, 'TriaRawIterator::difference_type'],\n ['../classinternal_1_1TableBaseAccessors_1_1Accessor_3_01N_00_01T_00_01C_00_011_01_4.html#a7a6f64818cb43b9a1e751f5effa16abc', 1, 'internal::TableBaseAccessors::Accessor< N, T, C, 1 >::difference_type'],\n ['../structstd_1_1iterator__traits_3_1_1VectorizedArrayIterator_3_01T_01_4_01_4.html#a1120d014195db41ca6e94601e6ba647a', 1, 'std::iterator_traits<::VectorizedArrayIterator< T > >::difference_type'],\n ['../classTriaIterator.html#a8dbe5df3497d7c1f7d6d859aa1ee61b7', 1, 'TriaIterator::difference_type'],\n ['../classTriaActiveIterator.html#a504c61771ad2dceba5b69ee59d7808e0', 1, 'TriaActiveIterator::difference_type'],\n ['../classChunkSparseMatrixIterators_1_1Iterator.html#a0751af99c6da97c125792f7a76139d55', 1, 'ChunkSparseMatrixIterators::Iterator::difference_type'],\n ['../structstd_1_1iterator__traits_3_01_1_1ChunkSparseMatrixIterators_1_1Iterator_3_01number_00_01Constness_01_4_01_4.html#a5a77eb6da0b194926e2c8458a482df97', 1, 'std::iterator_traits< ::ChunkSparseMatrixIterators::Iterator< number, Constness > >::difference_type'],\n ['../classSparseMatrixIterators_1_1Iterator.html#ace1f2f270ea558e6c3d22b49346b0f51', 1, 'SparseMatrixIterators::Iterator::difference_type'],\n@@ -731,26 +731,26 @@\n ['../structstd_1_1iterator__traits_3_01_1_1LinearAlgebra_1_1TpetraWrappers_1_1SparseMatrixIterators_1e111f4803b88d5256becdda1625f8892.html#a5bbef2cfddb3cd580506d5411d031d42', 1, 'std::iterator_traits< ::LinearAlgebra::TpetraWrappers::SparseMatrixIterators::Iterator< Number, MemorySpace, Constness > >::difference_type'],\n ['../classParticles_1_1ParticleIterator.html#af94a19e6babcfc0ae90344a50f347a7d', 1, 'Particles::ParticleIterator::difference_type']\n ]],\n ['differenceformula_418', ['DifferenceFormula', ['../classAutoDerivativeFunction.html#a8e3a3152c1a97076b961dcb35a3bb36b', 1, 'AutoDerivativeFunction']]],\n ['different_20kinds_20of_20iterators_419', ['Different kinds of iterators', ['../group__Iterators.html#IteratorsDifferences', 1, '']]],\n ['different_5fvalues_420', ['different_values', ['../classMultipleParameterLoop_1_1Entry.html#a679e0f2e313f0e36c243f879b77151ea', 1, 'MultipleParameterLoop::Entry']]],\n ['differential_5fcomponents_421', ['differential_components', ['../classSUNDIALS_1_1IDA.html#a5d3e3210adcead3f3aee298fdf11955f', 1, 'SUNDIALS::IDA']]],\n- ['differentiate_422', ['differentiate', ['../classDifferentiation_1_1SD_1_1Expression.html#a79ffdd0c612e9ad1488e792811a494d1', 1, 'Differentiation::SD::Expression::differentiate()'],\n+ ['differentiate_422', ['differentiate', ['../namespaceDifferentiation_1_1SD.html#ace9ad3a055907641a1bdc0483c5eea73', 1, 'Differentiation::SD::differentiate(const Tensor< 0, dim, Expression > &f, const Tensor< rank, dim, Expression > &T)'],\n ['../namespaceDifferentiation_1_1SD.html#a6639b59d0b080f5a044748e0ae901d67', 1, 'Differentiation::SD::differentiate(const SymmetricTensor< rank_1, dim, Expression > &S, const Tensor< rank_2, dim, Expression > &T)'],\n ['../namespaceDifferentiation_1_1SD.html#a72a607e78195180f1bee31065e4352aa', 1, 'Differentiation::SD::differentiate(const Tensor< rank_1, dim, Expression > &T, const SymmetricTensor< rank_2, dim, Expression > &S)'],\n ['../namespaceDifferentiation_1_1SD.html#a83014cfaaf54b1e393ff9ed5d4572fce', 1, 'Differentiation::SD::differentiate(const SymmetricTensor< rank_1, dim, Expression > &S1, const SymmetricTensor< rank_2, dim, Expression > &S2)'],\n ['../namespaceDifferentiation_1_1SD.html#a8bc1767d173357e330058074d2010702', 1, 'Differentiation::SD::differentiate(const Tensor< rank_1, dim, Expression > &T1, const Tensor< rank_2, dim, Expression > &T2)'],\n ['../namespaceDifferentiation_1_1SD.html#a652db1736f928a795319cf7c8e0897d6', 1, 'Differentiation::SD::differentiate(const SymmetricTensor< rank, dim, Expression > &S, const Tensor< 0, dim, Expression > &x)'],\n ['../namespaceDifferentiation_1_1SD.html#a0bfa19501c8529d818c7470818bb711e', 1, 'Differentiation::SD::differentiate(const Tensor< rank, dim, Expression > &T, const Tensor< 0, dim, Expression > &x)'],\n ['../namespaceDifferentiation_1_1SD.html#adcc42d40f659e09419d427ef6c5597f3', 1, 'Differentiation::SD::differentiate(const SymmetricTensor< rank, dim, Expression > &S, const Expression &x)'],\n ['../namespaceDifferentiation_1_1SD.html#aab26a93f117ed336ea803ea32f613c38', 1, 'Differentiation::SD::differentiate(const Tensor< rank, dim, Expression > &T, const Expression &x)'],\n+ ['../classDifferentiation_1_1SD_1_1Expression.html#a79ffdd0c612e9ad1488e792811a494d1', 1, 'Differentiation::SD::Expression::differentiate()'],\n+ ['../namespaceDifferentiation_1_1SD.html#a6c614e68b30be29b3c7cbf90d09593ad', 1, 'Differentiation::SD::differentiate()'],\n ['../classDifferentiation_1_1SD_1_1Expression.html#acf241db3bc0903648f4aff4cd60f6365', 1, 'Differentiation::SD::Expression::differentiate()'],\n- ['../namespaceDifferentiation_1_1SD.html#a6c614e68b30be29b3c7cbf90d09593ad', 1, 'Differentiation::SD::differentiate(const Tensor< 0, dim, Expression > &f, const SymmetricTensor< rank, dim, Expression > &S)'],\n- ['../namespaceDifferentiation_1_1SD.html#ace9ad3a055907641a1bdc0483c5eea73', 1, 'Differentiation::SD::differentiate(const Tensor< 0, dim, Expression > &f, const Tensor< rank, dim, Expression > &T)'],\n ['../namespaceDifferentiation_1_1SD.html#adca0c4741f8ee78bf33bfdc61ee453b1', 1, 'Differentiation::SD::differentiate(const Expression &f, const SymmetricTensor< rank, dim, Expression > &S)'],\n ['../namespaceDifferentiation_1_1SD.html#a5d2934b4993954bcced28ecfd8b38406', 1, 'Differentiation::SD::differentiate(const Expression &f, const Tensor< rank, dim, Expression > &T)'],\n ['../namespaceDifferentiation_1_1SD.html#a5bb5de9e851544ae6b9a17170ab3f570', 1, 'Differentiation::SD::differentiate(const Expression &f, const Expression &x)'],\n ['../classDifferentiation_1_1SD_1_1Expression.html#af1de25e7cd7f7aabe0e4563ffbfcc2d5', 1, 'Differentiation::SD::Expression::differentiate()']\n ]],\n ['differentiation_423', ['differentiation', ['../group__auto__symb__diff.html', 1, 'Automatic and symbolic differentiation'],\n ['../group__auto__symb__diff.html#auto_diff_1', 1, 'Automatic differentiation'],\n@@ -765,78 +765,78 @@\n ['differentiation_3a_3aad_3a_3ainternal_427', ['internal', ['../namespaceDifferentiation_1_1AD_1_1internal.html', 1, 'Differentiation::AD']]],\n ['differentiation_3a_3asd_428', ['SD', ['../namespaceDifferentiation_1_1SD.html', 1, 'Differentiation']]],\n ['differentiation_3a_3asd_3a_3ainternal_429', ['internal', ['../namespaceDifferentiation_1_1SD_1_1internal.html', 1, 'Differentiation::SD']]],\n ['differentiation_3a_3asd_3a_3atypes_430', ['types', ['../namespaceDifferentiation_1_1SD_1_1types.html', 1, 'Differentiation::SD']]],\n ['differentiation_3a_3asd_3a_3atypes_3a_3ainternal_431', ['internal', ['../namespaceDifferentiation_1_1SD_1_1types_1_1internal.html', 1, 'Differentiation::SD::types']]],\n ['differentiation_3a_3asd_3a_3autilities_432', ['Utilities', ['../namespaceDifferentiation_1_1SD_1_1Utilities.html', 1, 'Differentiation::SD']]],\n ['digits_433', ['digits', ['../classAlgorithms_1_1DoFOutputOperator.html#a32533a64fcabaf1ef788545e4ab187ac', 1, 'Algorithms::DoFOutputOperator']]],\n- ['dim_434', ['dim', ['../classinternal_1_1TriangulationImplementation_1_1TriaLevel.html#a29f8ac5a6d615312a74e699db746518b', 1, 'internal::TriangulationImplementation::TriaLevel::dim'],\n- ['../classinternal_1_1TriangulationImplementation_1_1TriaFaces.html#a62e1c353ec764736f91fe529d74960c9', 1, 'internal::TriangulationImplementation::TriaFaces::dim'],\n+ ['dim_434', ['dim', ['../classDoFCellAccessor.html#a6d4509b7753b800d9fd7039bca79f7ad', 1, 'DoFCellAccessor::dim'],\n ['../structinternal_1_1TriangulationImplementation_1_1Connectivity.html#a96572925b1fab37706b0a75f2a92d7ae', 1, 'internal::TriangulationImplementation::Connectivity::dim'],\n- ['../classDoFCellAccessor.html#a6d4509b7753b800d9fd7039bca79f7ad', 1, 'DoFCellAccessor::dim']\n+ ['../classinternal_1_1TriangulationImplementation_1_1TriaFaces.html#a62e1c353ec764736f91fe529d74960c9', 1, 'internal::TriangulationImplementation::TriaFaces::dim'],\n+ ['../classinternal_1_1TriangulationImplementation_1_1TriaLevel.html#a29f8ac5a6d615312a74e699db746518b', 1, 'internal::TriangulationImplementation::TriaLevel::dim']\n ]],\n ['dim_5f_435', ['dim_', ['../structinternal_1_1FEFaceEvaluationImplIntegrateScatterSelector_1_1Processor.html#ac19ef070168c52dfa5fbf586ca905684', 1, 'internal::FEFaceEvaluationImplIntegrateScatterSelector::Processor::dim_'],\n ['../structinternal_1_1FEFaceEvaluationImplGatherEvaluateSelector_1_1Processor.html#adb03a361a7cec5e10ac0c548769f685d', 1, 'internal::FEFaceEvaluationImplGatherEvaluateSelector::Processor::dim_']\n ]],\n ['dim_5fstring_436', ['dim_string', ['../namespaceUtilities.html#a21aa22d290ce783e37587b6c879b926c', 1, 'Utilities']]],\n- ['dimension_437', ['dimension', ['../classFEValuesBase.html#afd889a38bbce8ea33d46d152f14abdd3', 1, 'FEValuesBase::dimension'],\n+ ['dimension_437', ['dimension', ['../classFEFaceValues.html#ad2686baa61f12c5d28a21974558eab5a', 1, 'FEFaceValues::dimension'],\n+ ['../classMeshWorker_1_1IntegrationInfo.html#a16e505e6f7150547797f9de9a3ebb426', 1, 'MeshWorker::IntegrationInfo::dimension'],\n ['../classFESubfaceValues.html#a4193defaafca0fdaf81c133f0556bed2', 1, 'FESubfaceValues::dimension'],\n- ['../classFEFaceValues.html#ad2686baa61f12c5d28a21974558eab5a', 1, 'FEFaceValues::dimension'],\n- ['../classFiniteElementData.html#ae4924afaf7c18cb027b0f5d3c70b5215', 1, 'FiniteElementData::dimension'],\n- ['../classDoFHandler.html#a256354e867cf41e13ba0931d3e4c7264', 1, 'DoFHandler::dimension'],\n- ['../classFEEvaluationBase.html#a1f2581c62292b66923b702edaeb95e8b', 1, 'FEEvaluationBase::dimension'],\n- ['../classDoFAccessor_3_010_00_011_00_01spacedim_00_01level__dof__access_01_4.html#ae89c5f9086864deaaa219d0932e686aa', 1, 'DoFAccessor< 0, 1, spacedim, level_dof_access >::dimension'],\n+ ['../classFEValuesBase.html#afd889a38bbce8ea33d46d152f14abdd3', 1, 'FEValuesBase::dimension'],\n ['../classPersistentTriangulation.html#a441a15483a49afc7422e578f9ff00277', 1, 'PersistentTriangulation::dimension'],\n ['../classTriangulation.html#a09b0e1f528e41952d0495f93c481cd1d', 1, 'Triangulation::dimension'],\n ['../classTriaAccessorBase.html#a21dec2d5c3ec5cba5728b60b1d4f5a83', 1, 'TriaAccessorBase::dimension'],\n ['../classInvalidAccessor.html#ac99d2b64214ae701ae6a6def742e5e69', 1, 'InvalidAccessor::dimension'],\n ['../classTriaAccessor_3_010_00_01dim_00_01spacedim_01_4.html#affba4c1133461c6ab3192ee9274e000e', 1, 'TriaAccessor< 0, dim, spacedim >::dimension'],\n ['../classTriaAccessor_3_010_00_011_00_01spacedim_01_4.html#af03500869546c69398bfa70a20232e34', 1, 'TriaAccessor< 0, 1, spacedim >::dimension'],\n ['../classhp_1_1FEValues.html#a020899d2731bd8fa402374c1d860bd5a', 1, 'hp::FEValues::dimension'],\n- ['../classRol_1_1VectorAdaptor.html#a822c846b4f87aaaa84e688bbe9cf1e88', 1, 'Rol::VectorAdaptor::dimension()'],\n- ['../classMeshWorker_1_1IntegrationInfo.html#a16e505e6f7150547797f9de9a3ebb426', 1, 'MeshWorker::IntegrationInfo::dimension'],\n- ['../classPortable_1_1FEEvaluation.html#a198105ef63ad5363116f886d077ecce4', 1, 'Portable::FEEvaluation::dimension'],\n- ['../classMatrixFree.html#aff3cf8a6f45bfd3ab0febd9e880ca468', 1, 'MatrixFree::dimension'],\n- ['../classFEFacePointEvaluation.html#adb53994add06a57fd5c9529fbc2935af', 1, 'FEFacePointEvaluation::dimension'],\n- ['../classFEPointEvaluation.html#a2b31f5aa53904ef390ef83cd4d99a810', 1, 'FEPointEvaluation::dimension'],\n- ['../classFEPointEvaluationBase.html#abda420f59ba8e7fa38ec3d99c86aeccd', 1, 'FEPointEvaluationBase::dimension'],\n- ['../classFEEvaluationData.html#ab5b9fe8425a1e003ab31a3050c43db3d', 1, 'FEEvaluationData::dimension'],\n- ['../classFEFaceEvaluation.html#ad1d38cd5e7305b581d300929ff5e8200', 1, 'FEFaceEvaluation::dimension'],\n+ ['../classFEEvaluationBase.html#a1f2581c62292b66923b702edaeb95e8b', 1, 'FEEvaluationBase::dimension'],\n ['../classFEEvaluation.html#ab1703665b25c71fb904234e06843b14a', 1, 'FEEvaluation::dimension'],\n- ['../classDifferentiation_1_1AD_1_1PointLevelFunctionsBase.html#a798d017d98c9b67b249c2034a54a15bd', 1, 'Differentiation::AD::PointLevelFunctionsBase::dimension'],\n- ['../classDoFAccessor.html#a5d8274de3efd9a8b566e3b7a27a1a286', 1, 'DoFAccessor::dimension'],\n- ['../classPolynomialSpace.html#a446d7b6d201d4cd11825d4c87da2e605', 1, 'PolynomialSpace::dimension'],\n- ['../classFunctions_1_1IncrementalFunction.html#aa790b2aae9891c832c8d8270f183b98d', 1, 'Functions::IncrementalFunction::dimension'],\n- ['../classFunction.html#a2633b74266f9cf020d57b285c3734756', 1, 'Function::dimension'],\n+ ['../classFEFaceEvaluation.html#ad1d38cd5e7305b581d300929ff5e8200', 1, 'FEFaceEvaluation::dimension'],\n+ ['../classFEEvaluationData.html#ab5b9fe8425a1e003ab31a3050c43db3d', 1, 'FEEvaluationData::dimension'],\n+ ['../classFEPointEvaluationBase.html#abda420f59ba8e7fa38ec3d99c86aeccd', 1, 'FEPointEvaluationBase::dimension'],\n+ ['../classFEPointEvaluation.html#a2b31f5aa53904ef390ef83cd4d99a810', 1, 'FEPointEvaluation::dimension'],\n+ ['../classFEFacePointEvaluation.html#adb53994add06a57fd5c9529fbc2935af', 1, 'FEFacePointEvaluation::dimension'],\n+ ['../classMatrixFree.html#aff3cf8a6f45bfd3ab0febd9e880ca468', 1, 'MatrixFree::dimension'],\n+ ['../classPortable_1_1FEEvaluation.html#a198105ef63ad5363116f886d077ecce4', 1, 'Portable::FEEvaluation::dimension'],\n+ ['../classRol_1_1VectorAdaptor.html#a822c846b4f87aaaa84e688bbe9cf1e88', 1, 'Rol::VectorAdaptor::dimension()'],\n+ ['../classSymmetricTensor.html#ace2d7b96b3a13dd768e81e425881c523', 1, 'SymmetricTensor::dimension'],\n ['../classXDMFEntry.html#a4c44822270c1718b03db1de6c354826f', 1, 'XDMFEntry::dimension'],\n+ ['../classFunction.html#a2633b74266f9cf020d57b285c3734756', 1, 'Function::dimension'],\n+ ['../classFunctions_1_1IncrementalFunction.html#aa790b2aae9891c832c8d8270f183b98d', 1, 'Functions::IncrementalFunction::dimension'],\n+ ['../classPolynomialSpace.html#a446d7b6d201d4cd11825d4c87da2e605', 1, 'PolynomialSpace::dimension'],\n ['../classBarycentricPolynomials.html#a903017544de51121f70ca9433cca46d1', 1, 'BarycentricPolynomials::dimension'],\n ['../classPolynomialsP.html#a1febf4ce572b966819ee6d8ba2d1b280', 1, 'PolynomialsP::dimension'],\n ['../classScalarLagrangePolynomialPyramid.html#ac2a092d3cbedde7593664e6e5056c66a', 1, 'ScalarLagrangePolynomialPyramid::dimension'],\n ['../classPolynomialsRannacherTurek.html#ad5cb35dece1ee08c67195d1896dd0366', 1, 'PolynomialsRannacherTurek::dimension'],\n+ ['../classScalarLagrangePolynomialWedge.html#a9e44c70a81210b02b6ead81882f8be7f', 1, 'ScalarLagrangePolynomialWedge::dimension'],\n ['../classCellDataStorage.html#aecfa47d939489c9e4fc703773c078ea5', 1, 'CellDataStorage::dimension'],\n- ['../classSymmetricTensor.html#ace2d7b96b3a13dd768e81e425881c523', 1, 'SymmetricTensor::dimension'],\n+ ['../classFiniteElementData.html#ae4924afaf7c18cb027b0f5d3c70b5215', 1, 'FiniteElementData::dimension'],\n ['../classTensor_3_010_00_01dim_00_01Number_01_4.html#add82ff2bdc210839e4da4a477b42f707', 1, 'Tensor< 0, dim, Number >::dimension'],\n ['../classTensor.html#a9a72352995b42241f9e90c697cecab85', 1, 'Tensor::dimension'],\n ['../classTensorProductPolynomials.html#ab430375e6f8ca70200de737f191ebfd4', 1, 'TensorProductPolynomials::dimension'],\n ['../classTensorProductPolynomialsBubbles.html#a5681436ef0c504444cc8418e2ca495aa', 1, 'TensorProductPolynomialsBubbles::dimension'],\n ['../classTensorProductPolynomialsConst.html#a4503146e50ce008d131a8603e3ee90b6', 1, 'TensorProductPolynomialsConst::dimension'],\n- ['../classScalarLagrangePolynomialWedge.html#a9e44c70a81210b02b6ead81882f8be7f', 1, 'ScalarLagrangePolynomialWedge::dimension']\n+ ['../classDifferentiation_1_1AD_1_1PointLevelFunctionsBase.html#a798d017d98c9b67b249c2034a54a15bd', 1, 'Differentiation::AD::PointLevelFunctionsBase::dimension'],\n+ ['../classDoFAccessor.html#a5d8274de3efd9a8b566e3b7a27a1a286', 1, 'DoFAccessor::dimension'],\n+ ['../classDoFAccessor_3_010_00_011_00_01spacedim_00_01level__dof__access_01_4.html#ae89c5f9086864deaaa219d0932e686aa', 1, 'DoFAccessor< 0, 1, spacedim, level_dof_access >::dimension'],\n+ ['../classDoFHandler.html#a256354e867cf41e13ba0931d3e4c7264', 1, 'DoFHandler::dimension']\n ]],\n ['dimension_3c_3a_3apoint_3c_20dim_2c_20number_20_3e_20_3e_438', ['dimension<::Point< dim, Number > >', ['../structboost_1_1geometry_1_1traits_1_1dimension_3_1_1Point_3_01dim_00_01Number_01_4_01_4.html', 1, 'boost::geometry::traits']]],\n ['dimensions_439', ['dimensions', ['../classHDF5_1_1DataSet.html#a369d6fb1580eb41ea3c0d5f4151b9793', 1, 'HDF5::DataSet']]],\n- ['dir_440', ['dir', ['../structDoFRenumbering_1_1ComparePointwiseDownstream.html#ae1fe40214db53e0929a55242c6ee6cd3', 1, 'DoFRenumbering::ComparePointwiseDownstream::dir'],\n- ['../structDoFRenumbering_1_1CompareDownstream.html#ac88c4cd26064e0864a7dae599dd3b473', 1, 'DoFRenumbering::CompareDownstream::dir']\n+ ['dir_440', ['dir', ['../structDoFRenumbering_1_1CompareDownstream.html#ac88c4cd26064e0864a7dae599dd3b473', 1, 'DoFRenumbering::CompareDownstream::dir'],\n+ ['../structDoFRenumbering_1_1ComparePointwiseDownstream.html#ae1fe40214db53e0929a55242c6ee6cd3', 1, 'DoFRenumbering::ComparePointwiseDownstream::dir']\n ]],\n ['direction_441', ['direction', ['../classOpenCASCADE_1_1DirectionalProjectionManifold.html#a7a1782e3c37d10a4a61f194789791f65', 1, 'OpenCASCADE::DirectionalProjectionManifold::direction'],\n- ['../classNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1QGenerator_3_011_00_01spacedim_01_4.html#a08cd62421a5fab985f8512374757e610', 1, 'NonMatching::internal::QuadratureGeneratorImplementation::QGenerator< 1, spacedim >::direction'],\n- ['../structNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1HeightDirectionData.html#a50d4f63d74ad7c63dfd8bc2777b9170b', 1, 'NonMatching::internal::QuadratureGeneratorImplementation::HeightDirectionData::direction'],\n- ['../classEllipticalManifold.html#ab89f4bcc3a3ca447bb6afb5286183a61', 1, 'EllipticalManifold::direction'],\n+ ['../classTimeDependent.html#a55de3b5182ab608b2fb1f3f132d88f9e', 1, 'TimeDependent::Direction'],\n ['../classCylindricalManifold.html#ab5e708fbbc7f3eaf3a4e0e883e9118a0', 1, 'CylindricalManifold::direction'],\n- ['../classFunctions_1_1JumpFunction.html#a3e6f2193eea02e3870a29df2997ff941', 1, 'Functions::JumpFunction::direction'],\n- ['../classTimeDependent.html#a55de3b5182ab608b2fb1f3f132d88f9e', 1, 'TimeDependent::Direction']\n+ ['../classEllipticalManifold.html#ab89f4bcc3a3ca447bb6afb5286183a61', 1, 'EllipticalManifold::direction'],\n+ ['../structNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1HeightDirectionData.html#a50d4f63d74ad7c63dfd8bc2777b9170b', 1, 'NonMatching::internal::QuadratureGeneratorImplementation::HeightDirectionData::direction'],\n+ ['../classNonMatching_1_1internal_1_1QuadratureGeneratorImplementation_1_1QGenerator_3_011_00_01spacedim_01_4.html#a08cd62421a5fab985f8512374757e610', 1, 'NonMatching::internal::QuadratureGeneratorImplementation::QGenerator< 1, spacedim >::direction'],\n+ ['../classFunctions_1_1JumpFunction.html#a3e6f2193eea02e3870a29df2997ff941', 1, 'Functions::JumpFunction::direction']\n ]],\n ['direction_5fflag_442', ['direction_flag', ['../classCellAccessor.html#ae146ea059e9c27cb3e040b92d5c4e152', 1, 'CellAccessor']]],\n ['direction_5fflags_443', ['direction_flags', ['../classinternal_1_1TriangulationImplementation_1_1TriaLevel.html#afd0c55772e04551879094bb67ccf6ff4', 1, 'internal::TriangulationImplementation::TriaLevel']]],\n ['direction_5fof_5flargest_5fextent_444', ['direction_of_largest_extent', ['../namespaceNonMatching_1_1internal_1_1QuadratureGeneratorImplementation.html#a62dbef5c0990b8e2474d9fdf34d316a4', 1, 'NonMatching::internal::QuadratureGeneratorImplementation']]],\n ['directional_5fdegrees_445', ['directional_degrees', ['../classPolynomialsP.html#af29f4a28cd3e886e83841749c5afb295', 1, 'PolynomialsP']]],\n ['directionalprojectionmanifold_446', ['directionalprojectionmanifold', ['../classOpenCASCADE_1_1DirectionalProjectionManifold.html#a5abd55b7c01779fa8556b85c57e9a269', 1, 'OpenCASCADE::DirectionalProjectionManifold::DirectionalProjectionManifold()'],\n ['../classOpenCASCADE_1_1DirectionalProjectionManifold.html', 1, 'OpenCASCADE::DirectionalProjectionManifold< dim, spacedim >']\n@@ -847,81 +847,81 @@\n ['dirichlet_448', ['dirichlet', ['../namespaceTensorProductMatrixCreator.html#aa2d3de7eafde69e6dbbce59ff62d35bca81ab7f61d5ef4107fec34ed5f3580775', 1, 'TensorProductMatrixCreator']]],\n ['dirichlet_5findices_449', ['dirichlet_indices', ['../classMGTransferMatrixFree.html#a6bc0ac4eac53e39df5878abb60cbce63', 1, 'MGTransferMatrixFree']]],\n ['disable_5fabort_5fon_5fexception_450', ['disable_abort_on_exception', ['../namespacedeal__II__exceptions.html#a3953411a9013d21af68e53fa5bbd4f8e', 1, 'deal_II_exceptions']]],\n ['disable_5foutput_451', ['disable_output', ['../classTimerOutput.html#a478c3fbca1d76c07eff9e7af8886dbb5', 1, 'TimerOutput']]],\n ['discontinuous_452', ['discontinuous', ['../structMatrixOut_1_1Options.html#af12560d3d1a0b0803b427f174cc6d892', 1, 'MatrixOut::Options']]],\n ['discrete_5ftime_2ecc_453', ['discrete_time.cc', ['../discrete__time_8cc.html', 1, '']]],\n ['discrete_5ftime_2eh_454', ['discrete_time.h', ['../discrete__time_8h.html', 1, '']]],\n- ['discretefacequadraturegenerator_455', ['discretefacequadraturegenerator', ['../classNonMatching_1_1DiscreteFaceQuadratureGenerator.html#a6eeeb7b90895c2954078531178094740', 1, 'NonMatching::DiscreteFaceQuadratureGenerator::DiscreteFaceQuadratureGenerator()'],\n- ['../classNonMatching_1_1DiscreteFaceQuadratureGenerator.html', 1, 'NonMatching::DiscreteFaceQuadratureGenerator< dim >']\n+ ['discretefacequadraturegenerator_455', ['discretefacequadraturegenerator', ['../classNonMatching_1_1DiscreteFaceQuadratureGenerator.html', 1, 'NonMatching::DiscreteFaceQuadratureGenerator< dim >'],\n+ ['../classNonMatching_1_1DiscreteFaceQuadratureGenerator.html#a6eeeb7b90895c2954078531178094740', 1, 'NonMatching::DiscreteFaceQuadratureGenerator::DiscreteFaceQuadratureGenerator()']\n ]],\n- ['discretelevelsetdescription_456', ['discretelevelsetdescription', ['../classNonMatching_1_1internal_1_1MeshClassifierImplementation_1_1DiscreteLevelSetDescription.html#ab409f2f00e12528819c16976e6a19ff1', 1, 'NonMatching::internal::MeshClassifierImplementation::DiscreteLevelSetDescription::DiscreteLevelSetDescription()'],\n- ['../classNonMatching_1_1internal_1_1MeshClassifierImplementation_1_1DiscreteLevelSetDescription.html', 1, 'NonMatching::internal::MeshClassifierImplementation::DiscreteLevelSetDescription< dim, VectorType >']\n+ ['discretelevelsetdescription_456', ['discretelevelsetdescription', ['../classNonMatching_1_1internal_1_1MeshClassifierImplementation_1_1DiscreteLevelSetDescription.html', 1, 'NonMatching::internal::MeshClassifierImplementation::DiscreteLevelSetDescription< dim, VectorType >'],\n+ ['../classNonMatching_1_1internal_1_1MeshClassifierImplementation_1_1DiscreteLevelSetDescription.html#ab409f2f00e12528819c16976e6a19ff1', 1, 'NonMatching::internal::MeshClassifierImplementation::DiscreteLevelSetDescription::DiscreteLevelSetDescription()']\n ]],\n- ['discretequadraturegenerator_457', ['discretequadraturegenerator', ['../classNonMatching_1_1DiscreteQuadratureGenerator.html#ad06338e02fe847a6b2118bad69a4d805', 1, 'NonMatching::DiscreteQuadratureGenerator::DiscreteQuadratureGenerator()'],\n- ['../classNonMatching_1_1DiscreteQuadratureGenerator.html', 1, 'NonMatching::DiscreteQuadratureGenerator< dim >']\n+ ['discretequadraturegenerator_457', ['discretequadraturegenerator', ['../classNonMatching_1_1DiscreteQuadratureGenerator.html', 1, 'NonMatching::DiscreteQuadratureGenerator< dim >'],\n+ ['../classNonMatching_1_1DiscreteQuadratureGenerator.html#ad06338e02fe847a6b2118bad69a4d805', 1, 'NonMatching::DiscreteQuadratureGenerator::DiscreteQuadratureGenerator()']\n ]],\n- ['discretetime_458', ['discretetime', ['../classDiscreteTime.html', 1, 'DiscreteTime'],\n- ['../classDiscreteTime.html#a8dd017dd3081c10f6d041b398e4f9c4e', 1, 'DiscreteTime::DiscreteTime()']\n+ ['discretetime_458', ['discretetime', ['../classDiscreteTime.html#a8dd017dd3081c10f6d041b398e4f9c4e', 1, 'DiscreteTime::DiscreteTime()'],\n+ ['../classDiscreteTime.html', 1, 'DiscreteTime']\n ]],\n ['distance_459', ['distance', ['../classPoint.html#a8d1b471955efc1ba5d7a39832c7137d0', 1, 'Point']]],\n ['distance_5fbound_460', ['distance_bound', ['../structCGALWrappers_1_1AdditionalData_3_012_01_4.html#ab00c1f537e63aaf3a67b347877a74f2e', 1, 'CGALWrappers::AdditionalData< 2 >']]],\n ['distance_5fsquare_461', ['distance_square', ['../classPoint.html#a43f61ab9f50b1637f988243d3fa4f4b0', 1, 'Point']]],\n ['distance_5fto_5funit_5fcell_462', ['distance_to_unit_cell', ['../structGeometryInfo.html#a106c0b4889baa0f60e5754a2b43c420d', 1, 'GeometryInfo']]],\n ['distort_5frandom_463', ['distort_random', ['../namespaceGridTools.html#ac4e8aecd2cf74d3476e0daa11a00248b', 1, 'GridTools']]],\n ['distorted_5fcells_464', ['distorted_cells', ['../structTriangulation_1_1DistortedCellList.html#ab0290e9e2bd1fc4b2151727344066e82', 1, 'Triangulation::DistortedCellList']]],\n ['distortedcelllist_465', ['DistortedCellList', ['../structTriangulation_1_1DistortedCellList.html', 1, 'Triangulation']]],\n- ['distribute_466', ['distribute', ['../classAffineConstraints.html#a7b3d3f295bb56d6cd6856bdc6cbe8a01', 1, 'AffineConstraints::distribute()'],\n- ['../classPETScWrappers_1_1TimeStepper.html#aafc7e922ef1bc5698f653793503bce29', 1, 'PETScWrappers::TimeStepper::distribute']\n+ ['distribute_466', ['distribute', ['../classPETScWrappers_1_1TimeStepper.html#aafc7e922ef1bc5698f653793503bce29', 1, 'PETScWrappers::TimeStepper::distribute'],\n+ ['../classAffineConstraints.html#a7b3d3f295bb56d6cd6856bdc6cbe8a01', 1, 'AffineConstraints::distribute()']\n ]],\n ['distribute_5fcell_5fto_5fdof_5fvector_467', ['distribute_cell_to_dof_vector', ['../namespaceDoFTools.html#a952f50bcd4f8fbb09924626ecc60c605', 1, 'DoFTools']]],\n- ['distribute_5fconstraints_5flinear_5foperator_468', ['distribute_constraints_linear_operator', ['../group__constraints.html#ga814d426ef355ed315bb57cea21a7630a', 1, 'LinearOperator::distribute_constraints_linear_operator()'],\n- ['../group__constraints.html#ga814d426ef355ed315bb57cea21a7630a', 1, 'distribute_constraints_linear_operator(): constrained_linear_operator.h']\n+ ['distribute_5fconstraints_5flinear_5foperator_468', ['distribute_constraints_linear_operator', ['../group__constraints.html#ga814d426ef355ed315bb57cea21a7630a', 1, 'distribute_constraints_linear_operator(): constrained_linear_operator.h'],\n+ ['../group__constraints.html#ga814d426ef355ed315bb57cea21a7630a', 1, 'LinearOperator::distribute_constraints_linear_operator()']\n ]],\n- ['distribute_5fdofs_469', ['distribute_dofs', ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1ParallelDistributed.html#aa437e609d3ff5c2bbe9ed762d172d435', 1, 'internal::DoFHandlerImplementation::Policy::ParallelDistributed::distribute_dofs()'],\n- ['../structinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Implementation.html#ab149f1825151191f4287460aed21a4a8', 1, 'internal::DoFHandlerImplementation::Policy::Implementation::distribute_dofs()'],\n- ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1ParallelShared.html#a083cbc142e047076711b55f061a4e78a', 1, 'internal::DoFHandlerImplementation::Policy::ParallelShared::distribute_dofs()'],\n- ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Sequential.html#a2e240fdddb737abf98029a62680e0936', 1, 'internal::DoFHandlerImplementation::Policy::Sequential::distribute_dofs()'],\n+ ['distribute_5fdofs_469', ['distribute_dofs', ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Sequential.html#a2e240fdddb737abf98029a62680e0936', 1, 'internal::DoFHandlerImplementation::Policy::Sequential::distribute_dofs()'],\n ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1PolicyBase.html#a06dbf2c612f0bc0c1e1e79479c3b1fc3', 1, 'internal::DoFHandlerImplementation::Policy::PolicyBase::distribute_dofs()'],\n ['../classDoFHandler.html#ad8c267a3f024db34dd270e2583382184', 1, 'DoFHandler::distribute_dofs(const hp::FECollection< dim, spacedim > &fe)'],\n- ['../classDoFHandler.html#a553ca864aaf70330d9be86bc78f36d1e', 1, 'DoFHandler::distribute_dofs(const FiniteElement< dim, spacedim > &fe)']\n+ ['../classDoFHandler.html#a553ca864aaf70330d9be86bc78f36d1e', 1, 'DoFHandler::distribute_dofs(const FiniteElement< dim, spacedim > &fe)'],\n+ ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1ParallelShared.html#a083cbc142e047076711b55f061a4e78a', 1, 'internal::DoFHandlerImplementation::Policy::ParallelShared::distribute_dofs()'],\n+ ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1ParallelDistributed.html#aa437e609d3ff5c2bbe9ed762d172d435', 1, 'internal::DoFHandlerImplementation::Policy::ParallelDistributed::distribute_dofs()'],\n+ ['../structinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Implementation.html#ab149f1825151191f4287460aed21a4a8', 1, 'internal::DoFHandlerImplementation::Policy::Implementation::distribute_dofs(const types::subdomain_id subdomain_id, DoFHandler< dim, spacedim > &dof_handler)']\n ]],\n ['distribute_5fdofs_5fon_5flevel_470', ['distribute_dofs_on_level', ['../structinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Implementation.html#ad84ee22839ce167acebe7378d1cbe8ec', 1, 'internal::DoFHandlerImplementation::Policy::Implementation']]],\n ['distribute_5ffe_5findices_5fon_5frefined_5fcells_471', ['distribute_fe_indices_on_refined_cells', ['../structinternal_1_1hp_1_1DoFHandlerImplementation_1_1Implementation.html#a6c6efea675c7aa6cec920929709e95a2', 1, 'internal::hp::DoFHandlerImplementation::Implementation']]],\n- ['distribute_5flocal_5fto_5fglobal_472', ['distribute_local_to_global', ['../classDoFCellAccessor.html#ab0917cd50db0119a5efe0309ec13370f', 1, 'DoFCellAccessor::distribute_local_to_global()'],\n+ ['distribute_5flocal_5fto_5fglobal_472', ['distribute_local_to_global', ['../classAffineConstraints.html#a96a309cb9efd4b64ef5c3dda5825841f', 1, 'AffineConstraints::distribute_local_to_global()'],\n ['../classPortable_1_1FEEvaluation.html#a90c2f1b2718e90aa49b7d49fac3600d5', 1, 'Portable::FEEvaluation::distribute_local_to_global()'],\n- ['../classFEEvaluationBase.html#a4aaf3e9004fbaf810655f4e0962a015e', 1, 'FEEvaluationBase::distribute_local_to_global()'],\n- ['../classAffineConstraints.html#ab585cc706806fdc822b6b97930e7c421', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const Vector< number > &local_vector, const std::vector< size_type > &local_dof_indices, MatrixType &global_matrix, VectorType &global_vector, const bool use_inhomogeneities_for_rhs, const std::bool_constant< true >) const'],\n- ['../classAffineConstraints.html#ad1a2bf460a0804f0dac4d96f1344ea3f', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const Vector< number > &local_vector, const std::vector< size_type > &local_dof_indices, MatrixType &global_matrix, VectorType &global_vector, const bool use_inhomogeneities_for_rhs, const std::bool_constant< false >) const'],\n- ['../classAffineConstraints.html#abe83a7964b516856f5acb8046ec63a15', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const Vector< number > &local_vector, const std::vector< size_type > &local_dof_indices, MatrixType &global_matrix, VectorType &global_vector, bool use_inhomogeneities_for_rhs=false) const'],\n- ['../classAffineConstraints.html#aed0236bb1541ec3669e3183d602b0cd9', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const std::vector< size_type > &row_indices, const AffineConstraints &column_affine_constraints, const std::vector< size_type > &column_indices, MatrixType &global_matrix) const'],\n- ['../classAffineConstraints.html#a50363f9e0a6964a67abef37c312de460', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const std::vector< size_type > &row_indices, const std::vector< size_type > &col_indices, MatrixType &global_matrix) const'],\n- ['../classAffineConstraints.html#a96a309cb9efd4b64ef5c3dda5825841f', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const std::vector< size_type > &local_dof_indices, MatrixType &global_matrix) const'],\n- ['../classAffineConstraints.html#a07e96f9d525befecd233f7ee3aa9017b', 1, 'AffineConstraints::distribute_local_to_global(ForwardIteratorVec local_vector_begin, ForwardIteratorVec local_vector_end, ForwardIteratorInd local_indices_begin, VectorType &global_vector) const'],\n- ['../classAffineConstraints.html#a64a0ad68d6c50329b31bd9ac418afb92', 1, 'AffineConstraints::distribute_local_to_global(const size_type index, const number value, VectorType &global_vector) const'],\n- ['../classAffineConstraints.html#a48bbabbcd04192f03c00c7f4de08936b', 1, 'AffineConstraints::distribute_local_to_global(const Vector< number > &local_vector, const std::vector< size_type > &local_dof_indices_row, const std::vector< size_type > &local_dof_indices_col, VectorType &global_vector, const FullMatrix< number > &local_matrix, bool diagonal=false) const'],\n- ['../classAffineConstraints.html#ae02ed5ba9f1be9c34cf448a01b44abdb', 1, 'AffineConstraints::distribute_local_to_global(const Vector< number > &local_vector, const std::vector< size_type > &local_dof_indices, VectorType &global_vector, const FullMatrix< number > &local_matrix) const'],\n- ['../classAffineConstraints.html#a373fbdacd8c486e675b8d2bff8943192', 1, 'AffineConstraints::distribute_local_to_global(const InVector &local_vector, const std::vector< size_type > &local_dof_indices, OutVector &global_vector) const'],\n- ['../classDoFCellAccessor.html#a629b9490f29a4b030dd897a733116ccb', 1, 'DoFCellAccessor::distribute_local_to_global(const FullMatrix< number > &local_source, OutputMatrix &global_destination) const'],\n- ['../classDoFCellAccessor.html#ab90bb534e64a5a9c10d9f6a161c1a0c5', 1, 'DoFCellAccessor::distribute_local_to_global(const AffineConstraints< typename OutputVector::value_type > &constraints, ForwardIterator local_source_begin, ForwardIterator local_source_end, OutputVector &global_destination) const'],\n+ ['../classAffineConstraints.html#a64a0ad68d6c50329b31bd9ac418afb92', 1, 'AffineConstraints::distribute_local_to_global()'],\n+ ['../classDoFCellAccessor.html#a4b373ea3845c1be186681ceb4d1d28f8', 1, 'DoFCellAccessor::distribute_local_to_global(const Vector< number > &local_source, OutputVector &global_destination) const'],\n ['../classDoFCellAccessor.html#add2ea6075920c592b31132352385415d', 1, 'DoFCellAccessor::distribute_local_to_global(ForwardIterator local_source_begin, ForwardIterator local_source_end, OutputVector &global_destination) const'],\n- ['../classDoFCellAccessor.html#a4b373ea3845c1be186681ceb4d1d28f8', 1, 'DoFCellAccessor::distribute_local_to_global(const Vector< number > &local_source, OutputVector &global_destination) const']\n+ ['../classDoFCellAccessor.html#ab90bb534e64a5a9c10d9f6a161c1a0c5', 1, 'DoFCellAccessor::distribute_local_to_global(const AffineConstraints< typename OutputVector::value_type > &constraints, ForwardIterator local_source_begin, ForwardIterator local_source_end, OutputVector &global_destination) const'],\n+ ['../classDoFCellAccessor.html#a629b9490f29a4b030dd897a733116ccb', 1, 'DoFCellAccessor::distribute_local_to_global(const FullMatrix< number > &local_source, OutputMatrix &global_destination) const'],\n+ ['../classDoFCellAccessor.html#ab0917cd50db0119a5efe0309ec13370f', 1, 'DoFCellAccessor::distribute_local_to_global(const FullMatrix< number > &local_matrix, const Vector< number > &local_vector, OutputMatrix &global_matrix, OutputVector &global_vector) const'],\n+ ['../classAffineConstraints.html#a373fbdacd8c486e675b8d2bff8943192', 1, 'AffineConstraints::distribute_local_to_global(const InVector &local_vector, const std::vector< size_type > &local_dof_indices, OutVector &global_vector) const'],\n+ ['../classAffineConstraints.html#ae02ed5ba9f1be9c34cf448a01b44abdb', 1, 'AffineConstraints::distribute_local_to_global(const Vector< number > &local_vector, const std::vector< size_type > &local_dof_indices, VectorType &global_vector, const FullMatrix< number > &local_matrix) const'],\n+ ['../classAffineConstraints.html#a48bbabbcd04192f03c00c7f4de08936b', 1, 'AffineConstraints::distribute_local_to_global(const Vector< number > &local_vector, const std::vector< size_type > &local_dof_indices_row, const std::vector< size_type > &local_dof_indices_col, VectorType &global_vector, const FullMatrix< number > &local_matrix, bool diagonal=false) const'],\n+ ['../classAffineConstraints.html#a07e96f9d525befecd233f7ee3aa9017b', 1, 'AffineConstraints::distribute_local_to_global(ForwardIteratorVec local_vector_begin, ForwardIteratorVec local_vector_end, ForwardIteratorInd local_indices_begin, VectorType &global_vector) const'],\n+ ['../classAffineConstraints.html#a50363f9e0a6964a67abef37c312de460', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const std::vector< size_type > &row_indices, const std::vector< size_type > &col_indices, MatrixType &global_matrix) const'],\n+ ['../classAffineConstraints.html#aed0236bb1541ec3669e3183d602b0cd9', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const std::vector< size_type > &row_indices, const AffineConstraints &column_affine_constraints, const std::vector< size_type > &column_indices, MatrixType &global_matrix) const'],\n+ ['../classAffineConstraints.html#abe83a7964b516856f5acb8046ec63a15', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const Vector< number > &local_vector, const std::vector< size_type > &local_dof_indices, MatrixType &global_matrix, VectorType &global_vector, bool use_inhomogeneities_for_rhs=false) const'],\n+ ['../classAffineConstraints.html#ad1a2bf460a0804f0dac4d96f1344ea3f', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const Vector< number > &local_vector, const std::vector< size_type > &local_dof_indices, MatrixType &global_matrix, VectorType &global_vector, const bool use_inhomogeneities_for_rhs, const std::bool_constant< false >) const'],\n+ ['../classAffineConstraints.html#ab585cc706806fdc822b6b97930e7c421', 1, 'AffineConstraints::distribute_local_to_global(const FullMatrix< number > &local_matrix, const Vector< number > &local_vector, const std::vector< size_type > &local_dof_indices, MatrixType &global_matrix, VectorType &global_vector, const bool use_inhomogeneities_for_rhs, const std::bool_constant< true >) const'],\n+ ['../classFEEvaluationBase.html#a4aaf3e9004fbaf810655f4e0962a015e', 1, 'FEEvaluationBase::distribute_local_to_global()']\n ]],\n ['distribute_5flocal_5fto_5fglobal_5fby_5finterpolation_473', ['distribute_local_to_global_by_interpolation', ['../classDoFCellAccessor.html#a747898f938ba684a7148e5103bef5c2c', 1, 'DoFCellAccessor']]],\n ['distribute_5fmg_5fdofs_474', ['distribute_mg_dofs', ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1ParallelDistributed.html#a48b178c04ec46eff382bdfa01fdded67', 1, 'internal::DoFHandlerImplementation::Policy::ParallelDistributed::distribute_mg_dofs()'],\n- ['../classDoFHandler.html#a9aed31323cbd7619edac310c47e7a7ad', 1, 'DoFHandler::distribute_mg_dofs()'],\n ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1PolicyBase.html#ad69fa94ca3f7c423b4e5c1b1581d6210', 1, 'internal::DoFHandlerImplementation::Policy::PolicyBase::distribute_mg_dofs()'],\n+ ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1ParallelShared.html#a7bb9eb794e7e0190acadd52c053cc54e', 1, 'internal::DoFHandlerImplementation::Policy::ParallelShared::distribute_mg_dofs()'],\n ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1Sequential.html#a1d6229b3f56a61e45dd9eb0265babf0a', 1, 'internal::DoFHandlerImplementation::Policy::Sequential::distribute_mg_dofs()'],\n- ['../classinternal_1_1DoFHandlerImplementation_1_1Policy_1_1ParallelShared.html#a7bb9eb794e7e0190acadd52c053cc54e', 1, 'internal::DoFHandlerImplementation::Policy::ParallelShared::distribute_mg_dofs()']\n+ ['../classDoFHandler.html#a9aed31323cbd7619edac310c47e7a7ad', 1, 'DoFHandler::distribute_mg_dofs()']\n ]],\n ['distribute_5fpoints_5fbetween_5froots_475', ['distribute_points_between_roots', ['../namespaceNonMatching_1_1internal_1_1QuadratureGeneratorImplementation.html#a2c6a5f3849718f7befafa9e1e7dc89ca', 1, 'NonMatching::internal::QuadratureGeneratorImplementation']]],\n ['distribute_5fsparsity_5fpattern_476', ['distribute_sparsity_pattern', ['../namespaceSparsityTools.html#ade09f775d8cfb0c1ca98154ea4a7df1f', 1, 'SparsityTools::distribute_sparsity_pattern(BlockDynamicSparsityPattern &dsp, const std::vector< IndexSet > &owned_set_per_cpu, const MPI_Comm mpi_comm, const IndexSet &myrange)'],\n- ['../namespaceSparsityTools.html#af306ee8725068408ab270d0517ebc58a', 1, 'SparsityTools::distribute_sparsity_pattern(BlockDynamicSparsityPattern &dsp, const IndexSet &locally_owned_rows, const MPI_Comm mpi_comm, const IndexSet &locally_relevant_rows)'],\n+ ['../namespaceSparsityTools.html#a6b5444028171035f8ffb3fb5c3f8da08', 1, 'SparsityTools::distribute_sparsity_pattern(DynamicSparsityPattern &dsp, const IndexSet &locally_owned_rows, const MPI_Comm mpi_comm, const IndexSet &locally_relevant_rows)'],\n ['../namespaceSparsityTools.html#ae7336d79d8674b4832bde6fe50510cda', 1, 'SparsityTools::distribute_sparsity_pattern(DynamicSparsityPattern &dsp, const std::vector< DynamicSparsityPattern::size_type > &rows_per_cpu, const MPI_Comm mpi_comm, const IndexSet &myrange)'],\n- ['../namespaceSparsityTools.html#a6b5444028171035f8ffb3fb5c3f8da08', 1, 'SparsityTools::distribute_sparsity_pattern(DynamicSparsityPattern &dsp, const IndexSet &locally_owned_rows, const MPI_Comm mpi_comm, const IndexSet &locally_relevant_rows)']\n+ ['../namespaceSparsityTools.html#af306ee8725068408ab270d0517ebc58a', 1, 'SparsityTools::distribute_sparsity_pattern(BlockDynamicSparsityPattern &dsp, const IndexSet &locally_owned_rows, const MPI_Comm mpi_comm, const IndexSet &locally_relevant_rows)']\n ]],\n ['distributed_20memory_477', ['Parallel computing with multiple processors using distributed memory', ['../group__distributed.html', 1, '']]],\n ['distributed_2eh_478', ['distributed.h', ['../distributed_8h.html', 1, '']]],\n ['distributed_5fcell_5floop_479', ['distributed_cell_loop', ['../classPortable_1_1MatrixFree.html#a13fc88c5e2d680a2ed142aeb22db1a55', 1, 'Portable::MatrixFree::distributed_cell_loop(const Functor &func, const LinearAlgebra::CUDAWrappers::Vector< Number > &src, LinearAlgebra::CUDAWrappers::Vector< Number > &dst) const'],\n ['../classPortable_1_1MatrixFree.html#a733e83aa5bd9a8b2005e1343e808bbed', 1, 'Portable::MatrixFree::distributed_cell_loop(const Functor &func, const LinearAlgebra::distributed::Vector< Number, MemorySpace::Default > &src, LinearAlgebra::distributed::Vector< Number, MemorySpace::Default > &dst) const']\n ]],\n ['distributed_5fcompute_5fintersection_5flocations_480', ['distributed_compute_intersection_locations', ['../namespaceGridTools_1_1internal.html#afceefaa73b704f629dfdd72e08289369', 1, 'GridTools::internal']]],\n@@ -929,16 +929,16 @@\n ['../namespaceGridTools.html#afcda648bc9730f96cf9864574d7d5c87', 1, 'GridTools::distributed_compute_point_locations()'],\n ['../namespaceGridTools_1_1internal.html#a3b04091889261e4ff1eada6fea436ac3', 1, 'GridTools::internal::distributed_compute_point_locations()']\n ]],\n ['distributed_5ftree_482', ['distributed_tree', ['../classArborXWrappers_1_1DistributedTree.html#a661ae881b0c1255ff0162eaf768206d8', 1, 'ArborXWrappers::DistributedTree']]],\n ['distributed_5ftree_2eh_483', ['distributed_tree.h', ['../distributed__tree_8h.html', 1, '']]],\n ['distributed_5ftria_484', ['distributed_tria', ['../classparallel_1_1distributed_1_1TemporarilyMatchRefineFlags.html#ab084ee5a193ed8ba3de9d5632bc9444e', 1, 'parallel::distributed::TemporarilyMatchRefineFlags']]],\n ['distributedcomputeintersectionlocationsinternal_485', ['DistributedComputeIntersectionLocationsInternal', ['../structGridTools_1_1internal_1_1DistributedComputeIntersectionLocationsInternal.html', 1, 'GridTools::internal']]],\n- ['distributedcomputepointlocationsinternal_486', ['distributedcomputepointlocationsinternal', ['../structGridTools_1_1internal_1_1DistributedComputePointLocationsInternal.html#ab058d95da0ca231ad5e62e3835e20381', 1, 'GridTools::internal::DistributedComputePointLocationsInternal::DistributedComputePointLocationsInternal()'],\n- ['../structGridTools_1_1internal_1_1DistributedComputePointLocationsInternal.html', 1, 'GridTools::internal::DistributedComputePointLocationsInternal< dim, spacedim >']\n+ ['distributedcomputepointlocationsinternal_486', ['distributedcomputepointlocationsinternal', ['../structGridTools_1_1internal_1_1DistributedComputePointLocationsInternal.html', 1, 'GridTools::internal::DistributedComputePointLocationsInternal< dim, spacedim >'],\n+ ['../structGridTools_1_1internal_1_1DistributedComputePointLocationsInternal.html#ab058d95da0ca231ad5e62e3835e20381', 1, 'GridTools::internal::DistributedComputePointLocationsInternal::DistributedComputePointLocationsInternal()']\n ]],\n ['distributedtree_487', ['distributedtree', ['../classArborXWrappers_1_1DistributedTree.html#a03589cad98dbc70be2e53f4e10ce0d99', 1, 'ArborXWrappers::DistributedTree::DistributedTree()'],\n ['../classArborXWrappers_1_1DistributedTree.html', 1, 'ArborXWrappers::DistributedTree'],\n ['../classArborXWrappers_1_1DistributedTree.html#a9e4e9c51e68743d06a71bb0d9364653d', 1, 'ArborXWrappers::DistributedTree::DistributedTree()']\n ]],\n ['distributedtriangulationbase_488', ['distributedtriangulationbase', ['../classparallel_1_1DistributedTriangulationBase.html', 1, 'parallel::DistributedTriangulationBase< dim, spacedim >'],\n ['../classparallel_1_1DistributedTriangulationBase.html#a2275e82b1772965204955acd100446ea', 1, 'parallel::DistributedTriangulationBase::DistributedTriangulationBase()']\n@@ -1193,29 +1193,29 @@\n ['../classDoFAccessor_3_010_00_011_00_01spacedim_00_01level__dof__access_01_4.html#a7f4256a9ed4df26abc5bdca2413393c8', 1, 'DoFAccessor< 0, 1, spacedim, level_dof_access >::DoFAccessor(const DoFAccessor< 0, 1, spacedim, level_dof_access > &)=default'],\n ['../classDoFAccessor_3_010_00_011_00_01spacedim_00_01level__dof__access_01_4.html#a5379dc0606b0027af45a91fdf5ef1034', 1, 'DoFAccessor< 0, 1, spacedim, level_dof_access >::DoFAccessor(DoFAccessor< 0, 1, spacedim, level_dof_access > &&)=default'],\n ['../classDoFAccessor_3_010_00_011_00_01spacedim_00_01level__dof__access_01_4.html#ad383ca2e6cbe2d0b5639970f33ebe48e', 1, 'DoFAccessor< 0, 1, spacedim, level_dof_access >::DoFAccessor()'],\n ['../classDoFAccessor.html#a2df903e5efceaf1c1b11bf6e1ce9a781', 1, 'DoFAccessor::DoFAccessor'],\n ['../classDoFAccessor.html#a891a9a142d0988c724cebc1311ce8b31', 1, 'DoFAccessor::DoFAccessor()'],\n ['../classDoFAccessor.html#a8d14894a737bb1edf3719e4de058a284', 1, 'DoFAccessor::DoFAccessor(const Triangulation< dim, spacedim > *tria, const int level, const int index, const DoFHandler< dim, spacedim > *dof_handler)'],\n ['../classDoFAccessor.html#aedd0e6266a01021cab79df6fdf7f61fe', 1, 'DoFAccessor::DoFAccessor(const InvalidAccessor< structdim2, dim2, spacedim2 > &)'],\n- ['../classDoFAccessor.html#a7db4d55a10e8a40914e7934a729ac573', 1, 'DoFAccessor::DoFAccessor(const DoFAccessor< structdim, dim, spacedim, level_dof_access > &)=default'],\n- ['../classDoFAccessor.html#a3bebb109773c7a808b31ed7f9e329c31', 1, 'DoFAccessor::DoFAccessor(DoFAccessor< structdim, dim, spacedim, level_dof_access > &&)']\n+ ['../classDoFAccessor.html#a3bebb109773c7a808b31ed7f9e329c31', 1, 'DoFAccessor::DoFAccessor(DoFAccessor< structdim, dim, spacedim, level_dof_access > &&)'],\n+ ['../classDoFAccessor.html#a7db4d55a10e8a40914e7934a729ac573', 1, 'DoFAccessor::DoFAccessor(const DoFAccessor< structdim, dim, spacedim, level_dof_access > &)=default']\n ]],\n ['dofaccessor_3c_200_2c_201_2c_20spacedim_2c_20level_5fdof_5faccess_20_3e_616', ['DoFAccessor< 0, 1, spacedim, level_dof_access >', ['../classDoFAccessor_3_010_00_011_00_01spacedim_00_01level__dof__access_01_4.html', 1, '']]],\n ['dofaccessor_3c_20dimension_5f_2c_20dimension_5f_2c_20space_5fdimension_5f_2c_20level_5fdof_5faccess_20_3e_617', ['DoFAccessor< dimension_, dimension_, space_dimension_, level_dof_access >', ['../classDoFAccessor.html', 1, '']]],\n- ['dofcellaccessor_618', ['dofcellaccessor', ['../classDoFCellAccessor.html#a82e3b423ac414e0ade67250589747fff', 1, 'DoFCellAccessor::DoFCellAccessor()'],\n+ ['dofcellaccessor_618', ['dofcellaccessor', ['../classDoFCellAccessor.html#a108142a1c96d7e897b2e69bb1b22ca92', 1, 'DoFCellAccessor::DoFCellAccessor(DoFCellAccessor< dimension_, space_dimension_, level_dof_access > &&)=default'],\n+ ['../classDoFCellAccessor.html#acb101ef43d77d96339c8b3a5e57d5c7a', 1, 'DoFCellAccessor::DoFCellAccessor(const DoFCellAccessor< dimension_, space_dimension_, level_dof_access > &)=default'],\n+ ['../classDoFCellAccessor.html#a82e3b423ac414e0ade67250589747fff', 1, 'DoFCellAccessor::DoFCellAccessor(const DoFAccessor< structdim2, dim2, spacedim2, level_dof_access2 > &)'],\n ['../classDoFCellAccessor.html', 1, 'DoFCellAccessor< dimension_, space_dimension_, level_dof_access >'],\n- ['../classDoFCellAccessor.html#a3fdfeda1dae3c8c79aab8f8693d773f4', 1, 'DoFCellAccessor::DoFCellAccessor(const Triangulation< dimension_, space_dimension_ > *tria, const int level, const int index, const AccessorData *local_data)'],\n ['../classDoFCellAccessor.html#a8a4773afe4306d7c470eff8bdcfa4945', 1, 'DoFCellAccessor::DoFCellAccessor(const InvalidAccessor< structdim2, dim2, spacedim2 > &)'],\n- ['../classDoFCellAccessor.html#acb101ef43d77d96339c8b3a5e57d5c7a', 1, 'DoFCellAccessor::DoFCellAccessor(const DoFCellAccessor< dimension_, space_dimension_, level_dof_access > &)=default'],\n- ['../classDoFCellAccessor.html#a108142a1c96d7e897b2e69bb1b22ca92', 1, 'DoFCellAccessor::DoFCellAccessor(DoFCellAccessor< dimension_, space_dimension_, level_dof_access > &&)=default']\n+ ['../classDoFCellAccessor.html#a3fdfeda1dae3c8c79aab8f8693d773f4', 1, 'DoFCellAccessor::DoFCellAccessor(const Triangulation< dimension_, space_dimension_ > *tria, const int level, const int index, const AccessorData *local_data)']\n ]],\n ['dofcouplingtype_619', ['DoFCouplingType', ['../fe__coupling__values_8h.html#a80c5bf5bdc78db28bc240643d59c20a6', 1, 'fe_coupling_values.h']]],\n- ['doffaces_620', ['doffaces', ['../classinternal_1_1DoFHandlerImplementation_1_1DoFObjects.html#a2572827d36f3437cd23b8ac26c937130', 1, 'internal::DoFHandlerImplementation::DoFObjects::DoFFaces'],\n- ['../classinternal_1_1DoFHandlerImplementation_1_1DoFFaces.html#a57967d753bdefcfdd3cd6381531f92a6', 1, 'internal::DoFHandlerImplementation::DoFFaces::DoFFaces()'],\n+ ['doffaces_620', ['doffaces', ['../classinternal_1_1DoFHandlerImplementation_1_1DoFFaces.html#a57967d753bdefcfdd3cd6381531f92a6', 1, 'internal::DoFHandlerImplementation::DoFFaces::DoFFaces()'],\n+ ['../classinternal_1_1DoFHandlerImplementation_1_1DoFObjects.html#a2572827d36f3437cd23b8ac26c937130', 1, 'internal::DoFHandlerImplementation::DoFObjects::DoFFaces'],\n ['../classinternal_1_1DoFHandlerImplementation_1_1DoFFaces.html', 1, 'internal::DoFHandlerImplementation::DoFFaces< dim >']\n ]],\n ['doffaces_3c_201_20_3e_621', ['DoFFaces< 1 >', ['../classinternal_1_1DoFHandlerImplementation_1_1DoFFaces_3_011_01_4.html', 1, 'internal::DoFHandlerImplementation']]],\n ['doffaces_3c_202_20_3e_622', ['DoFFaces< 2 >', ['../classinternal_1_1DoFHandlerImplementation_1_1DoFFaces_3_012_01_4.html', 1, 'internal::DoFHandlerImplementation']]],\n ['doffaces_3c_203_20_3e_623', ['DoFFaces< 3 >', ['../classinternal_1_1DoFHandlerImplementation_1_1DoFFaces_3_013_01_4.html', 1, 'internal::DoFHandlerImplementation']]],\n ['dofhandler_624', ['dofhandler', ['../classDoFHandler.html', 1, 'DoFHandler< dim, spacedim >'],\n ['../classDoFHandler.html#a809502cdb9d86a32c873bc08091b629f', 1, 'DoFHandler::DoFHandler()'],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_9.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/defines_9.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -20,14 +20,15 @@\n ['../data__out__dof__data_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: data_out_dof_data.cc'],\n ['../data__out__dof__data__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: data_out_dof_data_inst2.cc'],\n ['../error__estimator_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: error_estimator.cc'],\n ['../error__estimator__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: error_estimator_inst2.cc'],\n ['../matrix__creator_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: matrix_creator.cc'],\n ['../matrix__creator__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: matrix_creator_inst2.cc'],\n ['../matrix__creator__inst3_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: matrix_creator_inst3.cc'],\n+ ['../numerics_2solution__transfer_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: solution_transfer.cc'],\n ['../solution__transfer__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: solution_transfer_inst2.cc'],\n ['../solution__transfer__inst3_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: solution_transfer_inst3.cc'],\n ['../evaluation__template__factory__inst5_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst5.cc'],\n ['../evaluation__template__factory__inst4_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst4.cc'],\n ['../evaluation__template__factory__inst3_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst3.cc'],\n ['../evaluation__template__factory__inst2_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory_inst2.cc'],\n ['../evaluation__template__factory_8cc.html#ac91f81592cb244d000bcc4745b4960f4', 1, 'SPLIT_INSTANTIATIONS_INDEX: evaluation_template_factory.cc'],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/files_18.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/files_18.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -18,16 +18,16 @@\n ['particle_2ecc_14', ['particle.cc', ['../particle_8cc.html', 1, '']]],\n ['particle_2eh_15', ['particle.h', ['../particle_8h.html', 1, '']]],\n ['particle_5faccessor_2eh_16', ['particle_accessor.h', ['../particle__accessor_8h.html', 1, '']]],\n ['particle_5fhandler_2ecc_17', ['particle_handler.cc', ['../particle__handler_8cc.html', 1, '']]],\n ['particle_5fhandler_2eh_18', ['particle_handler.h', ['../particle__handler_8h.html', 1, '']]],\n ['particle_5fiterator_2eh_19', ['particle_iterator.h', ['../particle__iterator_8h.html', 1, '']]],\n ['partitioner_2ecc_20', ['partitioner.cc', ['../partitioner_8cc.html', 1, '']]],\n- ['partitioner_2eh_21', ['partitioner.h', ['../base_2partitioner_8h.html', 1, '(Global Namespace)'],\n- ['../particles_2partitioner_8h.html', 1, '(Global Namespace)']\n+ ['partitioner_2eh_21', ['partitioner.h', ['../particles_2partitioner_8h.html', 1, '(Global Namespace)'],\n+ ['../base_2partitioner_8h.html', 1, '(Global Namespace)']\n ]],\n ['patches_2eh_22', ['patches.h', ['../patches_8h.html', 1, '']]],\n ['path_5fsearch_2ecc_23', ['path_search.cc', ['../path__search_8cc.html', 1, '']]],\n ['path_5fsearch_2eh_24', ['path_search.h', ['../path__search_8h.html', 1, '']]],\n ['patterns_2ecc_25', ['patterns.cc', ['../patterns_8cc.html', 1, '']]],\n ['patterns_2eh_26', ['patterns.h', ['../patterns_8h.html', 1, '']]],\n ['persistent_5ftria_2ecc_27', ['persistent_tria.cc', ['../persistent__tria_8cc.html', 1, '']]],\n@@ -63,16 +63,16 @@\n ['petsc_5fsparse_5fmatrix_2eh_57', ['petsc_sparse_matrix.h', ['../petsc__sparse__matrix_8h.html', 1, '']]],\n ['petsc_5fts_2ecc_58', ['petsc_ts.cc', ['../petsc__ts_8cc.html', 1, '']]],\n ['petsc_5fts_2eh_59', ['petsc_ts.h', ['../petsc__ts_8h.html', 1, '']]],\n ['petsc_5fvector_2eh_60', ['petsc_vector.h', ['../petsc__vector_8h.html', 1, '']]],\n ['petsc_5fvector_5fbase_2ecc_61', ['petsc_vector_base.cc', ['../petsc__vector__base_8cc.html', 1, '']]],\n ['petsc_5fvector_5fbase_2eh_62', ['petsc_vector_base.h', ['../petsc__vector__base_8h.html', 1, '']]],\n ['physics_2eh_63', ['physics.h', ['../physics_8h.html', 1, '']]],\n- ['point_2eh_64', ['point.h', ['../boost__adaptors_2point_8h.html', 1, '(Global Namespace)'],\n- ['../base_2point_8h.html', 1, '(Global Namespace)']\n+ ['point_2eh_64', ['point.h', ['../base_2point_8h.html', 1, '(Global Namespace)'],\n+ ['../boost__adaptors_2point_8h.html', 1, '(Global Namespace)']\n ]],\n ['point_5fconversion_2eh_65', ['point_conversion.h', ['../point__conversion_8h.html', 1, '']]],\n ['point_5fvalue_5fhistory_2ecc_66', ['point_value_history.cc', ['../point__value__history_8cc.html', 1, '']]],\n ['point_5fvalue_5fhistory_2eh_67', ['point_value_history.h', ['../point__value__history_8h.html', 1, '']]],\n ['polynomial_2ecc_68', ['polynomial.cc', ['../polynomial_8cc.html', 1, '']]],\n ['polynomial_2eh_69', ['polynomial.h', ['../polynomial_8h.html', 1, '']]],\n ['polynomial_5fspace_2ecc_70', ['polynomial_space.cc', ['../polynomial__space_8cc.html', 1, '']]],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/files_c.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/files_c.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -1,14 +1,14 @@\n var searchData = [\n ['data_5fcomponent_5finterpretation_2eh_0', ['data_component_interpretation.h', ['../data__component__interpretation_8h.html', 1, '']]],\n- ['data_5fout_2ecc_1', ['data_out.cc', ['../particles_2data__out_8cc.html', 1, '(Global Namespace)'],\n- ['../numerics_2data__out_8cc.html', 1, '(Global Namespace)']\n+ ['data_5fout_2ecc_1', ['data_out.cc', ['../numerics_2data__out_8cc.html', 1, '(Global Namespace)'],\n+ ['../particles_2data__out_8cc.html', 1, '(Global Namespace)']\n ]],\n- ['data_5fout_2eh_2', ['data_out.h', ['../numerics_2data__out_8h.html', 1, '(Global Namespace)'],\n- ['../particles_2data__out_8h.html', 1, '(Global Namespace)']\n+ ['data_5fout_2eh_2', ['data_out.h', ['../particles_2data__out_8h.html', 1, '(Global Namespace)'],\n+ ['../numerics_2data__out_8h.html', 1, '(Global Namespace)']\n ]],\n ['data_5fout_5fbase_2ecc_3', ['data_out_base.cc', ['../data__out__base_8cc.html', 1, '']]],\n ['data_5fout_5fbase_2eh_4', ['data_out_base.h', ['../data__out__base_8h.html', 1, '']]],\n ['data_5fout_5fdof_5fdata_2ecc_5', ['data_out_dof_data.cc', ['../data__out__dof__data_8cc.html', 1, '']]],\n ['data_5fout_5fdof_5fdata_2eh_6', ['data_out_dof_data.h', ['../data__out__dof__data_8h.html', 1, '']]],\n ['data_5fout_5fdof_5fdata_5fcodim_2ecc_7', ['data_out_dof_data_codim.cc', ['../data__out__dof__data__codim_8cc.html', 1, '']]],\n ['data_5fout_5fdof_5fdata_5finst2_2ecc_8', ['data_out_dof_data_inst2.cc', ['../data__out__dof__data__inst2_8cc.html', 1, '']]],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/files_f.js", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/search/files_f.js", "unified_diff": null, "details": [{"source1": "js-beautify {}", "source2": "js-beautify {}", "unified_diff": "@@ -23,16 +23,16 @@\n ['grid_5fgenerator_5fcgal_2ecc_21', ['grid_generator_cgal.cc', ['../grid__generator__cgal_8cc.html', 1, '']]],\n ['grid_5fgenerator_5ffrom_5fname_2ecc_22', ['grid_generator_from_name.cc', ['../grid__generator__from__name_8cc.html', 1, '']]],\n ['grid_5fgenerator_5fpipe_5fjunction_2ecc_23', ['grid_generator_pipe_junction.cc', ['../grid__generator__pipe__junction_8cc.html', 1, '']]],\n ['grid_5fin_2ecc_24', ['grid_in.cc', ['../grid__in_8cc.html', 1, '']]],\n ['grid_5fin_2eh_25', ['grid_in.h', ['../grid__in_8h.html', 1, '']]],\n ['grid_5fout_2ecc_26', ['grid_out.cc', ['../grid__out_8cc.html', 1, '']]],\n ['grid_5fout_2eh_27', ['grid_out.h', ['../grid__out_8h.html', 1, '']]],\n- ['grid_5frefinement_2ecc_28', ['grid_refinement.cc', ['../distributed_2grid__refinement_8cc.html', 1, '(Global Namespace)'],\n- ['../grid_2grid__refinement_8cc.html', 1, '(Global Namespace)']\n+ ['grid_5frefinement_2ecc_28', ['grid_refinement.cc', ['../grid_2grid__refinement_8cc.html', 1, '(Global Namespace)'],\n+ ['../distributed_2grid__refinement_8cc.html', 1, '(Global Namespace)']\n ]],\n ['grid_5frefinement_2eh_29', ['grid_refinement.h', ['../grid_2grid__refinement_8h.html', 1, '(Global Namespace)'],\n ['../distributed_2grid__refinement_8h.html', 1, '(Global Namespace)']\n ]],\n ['grid_5ftools_2ecc_30', ['grid_tools.cc', ['../grid__tools_8cc.html', 1, '']]],\n ['grid_5ftools_2eh_31', ['grid_tools.h', ['../grid__tools_8h.html', 1, '']]],\n ['grid_5ftools_5fcache_2ecc_32', ['grid_tools_cache.cc', ['../grid__tools__cache_8cc.html', 1, '']]],\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/step_47.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/step_47.html", "unified_diff": "@@ -231,15 +231,15 @@\n &&\\forall \\mathbf x \\in \\partial\\Omega.\n \\end{align*}\n

    \n

    The same trick with the mixed system does not work here, because we would end up with both Dirichlet and Neumann boundary conditions for \\(u\\), but none for \\(v\\).

    \n

    The solution to this conundrum arrived with the Discontinuous Galerkin method wave in the 1990s and early 2000s: In much the same way as one can use discontinuous shape functions for the Laplace equation by penalizing the size of the discontinuity to obtain a scheme for an equation that has one derivative on each shape function, we can use a scheme that uses continuous (but not \\(C^1\\) continuous) shape functions and penalize the jump in the derivative to obtain a scheme for an equation that has two derivatives on each shape function. In analogy to the Interior Penalty (IP) method for the Laplace equation, this scheme for the biharmonic equation is typically called the \\(C^0\\) IP (or C0IP) method, since it uses \\(C^0\\) (continuous but not continuously differentiable) shape functions with an interior penalty formulation.

    \n

    It is worth noting that the C0IP method is not the only one that has been developed for the biharmonic equation. step-82 shows an alternative method.

    \n

    Derivation of the C0IP method

    \n-

    We base this program on the \\(C^0\\) IP method presented by Susanne Brenner and Li-Yeng Sung in the paper \"C \\_form#6573 Interior Penalty Method\n+

    We base this program on the \\(C^0\\) IP method presented by Susanne Brenner and Li-Yeng Sung in the paper \"C \\_form#6559 Interior Penalty Method\n for Linear Fourth Order Boundary Value Problems on polygonal\n domains\" [Brenner2005] where the method is derived for the biharmonic equation with \"clamped\" boundary conditions.

    \n

    As mentioned, this method relies on the use of \\(C^0\\) Lagrange finite elements where the \\(C^1\\) continuity requirement is relaxed and has been replaced with interior penalty techniques. To derive this method, we consider a \\(C^0\\) shape function \\(v_h\\) which vanishes on \\(\\partial\\Omega\\). We introduce notation \\( \\mathbb{F} \\) as the set of all faces of \\(\\mathbb{T}\\), \\( \\mathbb{F}^b \\) as the set of boundary faces, and \\( \\mathbb{F}^i \\) as the set of interior faces for use further down below. Since the higher order derivatives of \\(v_h\\) have two values on each interface \\(e\\in \\mathbb{F}\\) (shared by the two cells \\(K_{+},K_{-} \\in \\mathbb{T}\\)), we cope with this discontinuity by defining the following single-valued functions on \\(e\\):

    \n \\begin{align*}\n \\jump{\\frac{\\partial^k v_h}{\\partial \\mathbf n^k}}\n &=\n \\frac{\\partial^k v_h|_{K_+}}{\\partial \\mathbf n^k} \\bigg |_e\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -175,15 +175,15 @@\n (C^0\\) IP (or C0IP) method, since it uses \\(C^0\\) (continuous but not\n continuously differentiable) shape functions with an interior penalty\n formulation.\n It is worth noting that the C0IP method is not the only one that has been\n developed for the biharmonic equation. _\bs_\bt_\be_\bp_\b-_\b8_\b2 shows an alternative method.\n *\b**\b**\b**\b* D\bDe\ber\bri\biv\bva\bat\bti\bio\bon\bn o\bof\bf t\bth\bhe\be C\bC0\b0I\bIP\bP m\bme\bet\bth\bho\bod\bd *\b**\b**\b**\b*\n We base this program on the \\(C^0\\) IP method presented by Susanne Brenner and\n-Li-Yeng Sung in the paper \"C \\_form#6573 Interior Penalty Method for Linear\n+Li-Yeng Sung in the paper \"C \\_form#6559 Interior Penalty Method for Linear\n Fourth Order Boundary Value Problems on polygonal domains\" [\b[B\bBr\bre\ben\bnn\bne\ber\br2\b20\b00\b05\b5]\b] where\n the method is derived for the biharmonic equation with \"clamped\" boundary\n conditions.\n As mentioned, this method relies on the use of \\(C^0\\) Lagrange finite elements\n where the \\(C^1\\) continuity requirement is relaxed and has been replaced with\n interior penalty techniques. To derive this method, we consider a \\(C^0\\) shape\n function \\(v_h\\) which vanishes on \\(\\partial\\Omega\\). We introduce notation \\\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/step_58.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/step_58.html", "unified_diff": "@@ -566,16 +566,16 @@\n \\left(\\psi^{(n,2)}+\\psi^{(n,1)}\\right)\\right]\n +\n V \\left[\\frac 12 \\left(\\psi^{(n,2)}+\\psi^{(n,1)}\\right)\\right] = 0.\n \\end{align*}\n

    \n

    Here, the \"previous\" solution \\(\\psi^{(n,1)}\\) (or the \"initial\n condition\" for this part of the time step) is the output of the first phase rotation half-step; the output of the current step will be denoted by \\(\\psi^{(n,2)}\\). \\(k_{n+1}=t_{n+1}-t_n\\) is the length of the time step. (One could argue whether \\(\\psi^{(n,1)}\\) and \\(\\psi^{(n,1)}\\) live at time step \\(n\\) or \\(n+1\\) and what their upper indices should be. This is a philosophical discussion without practical impact, and one might think of \\(\\psi^{(n,1)}\\) as something like \\(\\psi^{(n+\\tfrac 13)}\\), and \\(\\psi^{(n,2)}\\) as \\(\\psi^{(n+\\tfrac 23)}\\) if that helps clarify things – though, again \\(n+\\frac 13\\) is not to be understood as \"one third time step after\n- \\_form#375\" but more like \"we've already done one third of the work necessary\n-for time step \\_form#3718\".)

    \n+ \\_form#374\" but more like \"we've already done one third of the work necessary\n+for time step \\_form#4514\".)

    \n

    If we multiply the whole equation with \\(k_{n+1}\\) and sort terms with the unknown \\(\\psi^{(n+1,2)}\\) to the left and those with the known \\(\\psi^{(n,2)}\\) to the right, then we obtain the following (spatial) partial differential equation that needs to be solved in each time step:

    \n \\begin{align*}\n -i\\psi^{(n,2)}\n -\n \\frac 14 k_{n+1} \\Delta \\psi^{(n,2)}\n +\n \\frac 12 k_{n+1} V \\psi^{(n,2)}\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -378,16 +378,16 @@\n step; the output of the current step will be denoted by \\(\\psi^{(n,2)}\\). \\(k_\n {n+1}=t_{n+1}-t_n\\) is the length of the time step. (One could argue whether \\\n (\\psi^{(n,1)}\\) and \\(\\psi^{(n,1)}\\) live at time step \\(n\\) or \\(n+1\\) and\n what their upper indices should be. This is a philosophical discussion without\n practical impact, and one might think of \\(\\psi^{(n,1)}\\) as something like \\\n (\\psi^{(n+\\tfrac 13)}\\), and \\(\\psi^{(n,2)}\\) as \\(\\psi^{(n+\\tfrac 23)}\\) if\n that helps clarify things \u2013 though, again \\(n+\\frac 13\\) is not to be\n-understood as \"one third time step after \\_form#375\" but more like \"we've\n-already done one third of the work necessary for time step \\_form#3718\".)\n+understood as \"one third time step after \\_form#374\" but more like \"we've\n+already done one third of the work necessary for time step \\_form#4514\".)\n If we multiply the whole equation with \\(k_{n+1}\\) and sort terms with the\n unknown \\(\\psi^{(n+1,2)}\\) to the left and those with the known \\(\\psi^{\n (n,2)}\\) to the right, then we obtain the following (spatial) partial\n differential equation that needs to be solved in each time step:\n \\begin{align*} -i\\psi^{(n,2)} - \\frac 14 k_{n+1} \\Delta \\psi^{(n,2)} + \\frac 12\n k_{n+1} V \\psi^{(n,2)} = -i\\psi^{(n,1)} + \\frac 14 k_{n+1} \\Delta \\psi^{(n,1)}\n - \\frac 12 k_{n+1} V \\psi^{(n,1)}. \\end{align*}\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/structSolverGMRES_1_1AdditionalData.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/structSolverGMRES_1_1AdditionalData.html", "unified_diff": "@@ -208,15 +208,15 @@\n \n \n \n \n
    unsigned int SolverGMRES< VectorType >::AdditionalData::max_n_tmp_vectors
    \n

    \n

    Maximum number of temporary vectors. Together with max_basis_size, this parameter controls the size of the Arnoldi basis, which corresponds to max_n_tmp_vectors-2 as used in previous versions of the deal.II library. SolverGMRES assumes that there are at least three temporary vectors, so this value must be greater than or equal to three. If both this variable and max_basis_size are set to a non-zero value, the choice in max_basis_size takes precedence.

    \n-
    Deprecated:
    Use max_basis_size instead.
    \n+
    Deprecated:
    Use max_basis_size instead.
    \n \n

    Definition at line 391 of file solver_gmres.h.

    \n \n
    \n \n \n

    ◆ max_basis_size

    \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/template__constraints_8h.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/template__constraints_8h.html", "unified_diff": "@@ -313,15 +313,15 @@\n \n \n \n \n
    using identity = std_cxx20::type_identity<T>
    \n
    \n

    A using declaration to make the std::identity_type class available under the name that deal.II has used for a long time.

    \n-
    Deprecated:
    Use std_cxx20::type_identity instead.
    \n+
    Deprecated:
    Use std_cxx20::type_identity instead.
    \n \n

    Definition at line 322 of file template_constraints.h.

    \n \n
    \n \n

    Variable Documentation

    \n \n"}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/todo.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/todo.html", "unified_diff": "@@ -99,15 +99,15 @@\n
    Class Algorithms::OperatorBase
    \n
    Update this documentation and the one of Operator
    \n
    Class AnyData
    \n
    GK: Deprecate access to AnyData by index and change to a map.
    \n
    Class BlockInfo
    \n
    Extend the functions local() and renumber() to allow for hp-capablilites.
    \n
    Class BlockSparsityPatternBase< SparsityPatternType >
    \n-
    Handle optimization of diagonal elements of the underlying SparsityPattern correctly.
    \n+
    Handle optimization of diagonal elements of the underlying SparsityPattern correctly.
    \n
    Class DataOutFaces< dim, spacedim >
    \n
    Reimplement this whole class using actual FEFaceValues and MeshWorker.
    \n
    Member DataOutFaces< dim, spacedim >::build_patches (const Mapping< dim, spacedim > &mapping, const unsigned int n_subdivisions=0)
    \n
    The mapping argument should be replaced by a hp::MappingCollection in case of a DoFHandler with hp-capabilities.
    \n
    Class Differentiation::AD::HelperBase< ADNumberTypeCode, ScalarType >
    \n
    Make this class thread safe for Sacado number and ADOL-C tapeless numbers (if supported).
    \n
    Member DoFTools::ExcFiniteElementsDontMatch ()
    \n@@ -117,25 +117,25 @@\n
    Member DoFTools::ExcGridsDontMatch ()
    \n
    Write description
    \n
    Member DoFTools::ExcInvalidBoundaryIndicator ()
    \n
    Write description
    \n
    Member DoFTools::map_support_points_to_dofs (const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof_handler, std::map< Point< spacedim >, types::global_dof_index, Comp > &point_to_index_map)
    \n
    This function should generate a multimap, rather than just a map, since several dofs may be located at the same support point. Currently, only the last value in the map returned by map_dofs_to_support_points() for each point will be returned.
    \n
    Class FE_ABF< dim >
    \n-
    Even if this element is implemented for two and three space dimensions, the definition of the node values relies on consistently oriented faces in 3d. Therefore, care should be taken on complicated meshes.
    \n+
    Even if this element is implemented for two and three space dimensions, the definition of the node values relies on consistently oriented faces in 3d. Therefore, care should be taken on complicated meshes.
    \n
    Class FE_BDM< dim >
    \n-

    The 3d version exhibits some numerical instabilities, in particular for higher order

    \n-

    Restriction matrices are missing.

    \n+

    The 3d version exhibits some numerical instabilities, in particular for higher order

    \n+

    Restriction matrices are missing.

    \n
    \n
    Class FE_Nedelec< dim >
    \n
    Even if this element is implemented for two and three space dimensions, the definition of the node values relies on consistently oriented faces in 3d. Therefore, care should be taken on complicated meshes.
    \n
    Class FE_Poly< dim, spacedim >
    \n
    Since nearly all functions for spacedim != dim are specialized, this class needs cleaning up.
    \n
    Class FE_RT_Bubbles< dim >
    \n-
    Implement restriction matrices
    \n+
    Implement restriction matrices
    \n
    Member FESubfaceValues< dim, spacedim >::ExcFaceHasNoSubfaces ()
    \n
    Document this
    \n
    Member FESubfaceValues< dim, spacedim >::ExcReinitCalledWithBoundaryFace ()
    \n
    Document this
    \n
    Member GinkgoWrappers::SolverBase< ValueType, IndexType >::system_matrix
    \n
    Templatize based on Matrix type.
    \n
    Member internal::TriangulationImplementation::TriaObjects::next_free_pair_object (const Triangulation< dim, spacedim > &tria)
    \n@@ -143,35 +143,35 @@\n
    Member internal::TriangulationImplementation::TriaObjects::next_free_single_object (const Triangulation< dim, spacedim > &tria)
    \n
    This function is not instantiated for the codim-one case
    \n
    Member LocalIntegrators::Divergence::cell_residual (Vector< number > &result, const FEValuesBase< dim > &fetest, const ArrayView< const std::vector< double > > &input, const double factor=1.)
    \n
    Verify: The function cell_matrix() is the Frechet derivative of this function with respect to the test functions.
    \n
    Member LocalIntegrators::Divergence::gradient_residual (Vector< number > &result, const FEValuesBase< dim > &fetest, const std::vector< double > &input, const double factor=1.)
    \n
    Verify: The function gradient_matrix() is the Frechet derivative of this function with respect to the test functions.
    \n
    Class Mapping< dim, spacedim >
    \n-
    Document what happens in the codimension-1 case.
    \n+
    Document what happens in the codimension-1 case.
    \n
    Member Mapping< dim, spacedim >::transform (const ArrayView< const Tensor< 2, dim > > &input, const MappingKind kind, const typename Mapping< dim, spacedim >::InternalDataBase &internal, const ArrayView< Tensor< 2, spacedim > > &output) const =0
    \n-
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n+
    The formulas for mapping_covariant_gradient, mapping_contravariant_gradient and mapping_piola_gradient are only true as stated for linear mappings. If, for example, the mapping is bilinear (or has a higher order polynomial degree) then there is a missing term associated with the derivative of \\(J\\).
    \n
    Class MatrixBlock< MatrixType >
    \n-
    Example for the product preconditioner of the pressure Schur complement.
    \n-
    Member MatrixBlock< MatrixType >::add (const size_type row_index, const std::vector< size_type > &col_indices, const std::vector< number > &values, const bool elide_zero_values=true)
    \n-
    elide_zero_values is currently ignored.
    \n-
    Member MatrixBlock< MatrixType >::add (const std::vector< size_type > &row_indices, const std::vector< size_type > &col_indices, const FullMatrix< number > &full_matrix, const bool elide_zero_values=true)
    \n-
    elide_zero_values is currently ignored.
    \n+
    Example for the product preconditioner of the pressure Schur complement.
    \n
    Member MatrixBlock< MatrixType >::add (const std::vector< size_type > &indices, const FullMatrix< number > &full_matrix, const bool elide_zero_values=true)
    \n-
    elide_zero_values is currently ignored.
    \n+
    elide_zero_values is currently ignored.
    \n+
    Member MatrixBlock< MatrixType >::add (const std::vector< size_type > &row_indices, const std::vector< size_type > &col_indices, const FullMatrix< number > &full_matrix, const bool elide_zero_values=true)
    \n+
    elide_zero_values is currently ignored.
    \n+
    Member MatrixBlock< MatrixType >::add (const size_type row_index, const std::vector< size_type > &col_indices, const std::vector< number > &values, const bool elide_zero_values=true)
    \n+
    elide_zero_values is currently ignored.
    \n
    Member MatrixCreator::create_boundary_mass_matrix (const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const Quadrature< dim - 1 > &q, SparseMatrix< number > &matrix, const std::map< types::boundary_id, const Function< spacedim, number > * > &boundary_functions, Vector< number > &rhs_vector, std::vector< types::global_dof_index > &dof_to_boundary_mapping, const Function< spacedim, number > *const weight=0, std::vector< unsigned int > component_mapping={})
    \n-
    This function does not work for finite elements with cell-dependent shape functions.
    \n+
    This function does not work for finite elements with cell-dependent shape functions.
    \n
    Class MeshWorker::Assembler::MGMatrixSimple< MatrixType >
    \n-
    The matrix structures needed for assembling level matrices with local refinement and continuous elements are missing.
    \n+
    The matrix structures needed for assembling level matrices with local refinement and continuous elements are missing.
    \n
    Class MeshWorker::Assembler::ResidualLocalBlocksToGlobalBlocks< VectorType >
    \n
    Comprehensive model currently not implemented.
    \n
    Class MeshWorker::DoFInfoBox< dim, DOFINFO >
    \n-
    Currently, we are storing an object for the cells and two for each face. We could gather all face data pertaining to the cell itself in one object, saving a bit of memory and a few operations, but sacrificing some cleanliness.
    \n+
    Currently, we are storing an object for the cells and two for each face. We could gather all face data pertaining to the cell itself in one object, saving a bit of memory and a few operations, but sacrificing some cleanliness.
    \n
    Class MGTransferBase< VectorType >
    \n-
    update the following documentation, since it does not reflect the latest changes in structure.
    \n+
    update the following documentation, since it does not reflect the latest changes in structure.
    \n
    Class PolynomialsAdini< dim >
    \n
    This polynomial space is implemented in 2d only and does not compute derivatives of order 3 or higher.
    \n \n \n \n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -88,25 +88,25 @@\n The formulas for mapping_covariant_gradient,\n mapping_contravariant_gradient and mapping_piola_gradient are only true\n as stated for linear mappings. If, for example, the mapping is bilinear\n (or has a higher order polynomial degree) then there is a missing term\n associated with the derivative of \\(J\\).\n Class _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\b<_\b _\bM_\ba_\bt_\br_\bi_\bx_\bT_\by_\bp_\be_\b _\b>\n Example for the product preconditioner of the pressure Schur complement.\n- Member _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\b<_\b _\bM_\ba_\bt_\br_\bi_\bx_\bT_\by_\bp_\be_\b _\b>_\b:_\b:_\ba_\bd_\bd (const size_type row_index, const std::\n- vector< size_type > &col_indices, const std::vector< number > &values, const\n- bool elide_zero_values=true)\n+ Member _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\b<_\b _\bM_\ba_\bt_\br_\bi_\bx_\bT_\by_\bp_\be_\b _\b>_\b:_\b:_\ba_\bd_\bd (const std::vector< size_type >\n+ &indices, const FullMatrix< number > &full_matrix, const bool\n+ elide_zero_values=true)\n elide_zero_values is currently ignored.\n Member _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\b<_\b _\bM_\ba_\bt_\br_\bi_\bx_\bT_\by_\bp_\be_\b _\b>_\b:_\b:_\ba_\bd_\bd (const std::vector< size_type >\n &row_indices, const std::vector< size_type > &col_indices, const FullMatrix<\n number > &full_matrix, const bool elide_zero_values=true)\n elide_zero_values is currently ignored.\n- Member _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\b<_\b _\bM_\ba_\bt_\br_\bi_\bx_\bT_\by_\bp_\be_\b _\b>_\b:_\b:_\ba_\bd_\bd (const std::vector< size_type >\n- &indices, const FullMatrix< number > &full_matrix, const bool\n- elide_zero_values=true)\n+ Member _\bM_\ba_\bt_\br_\bi_\bx_\bB_\bl_\bo_\bc_\bk_\b<_\b _\bM_\ba_\bt_\br_\bi_\bx_\bT_\by_\bp_\be_\b _\b>_\b:_\b:_\ba_\bd_\bd (const size_type row_index, const std::\n+ vector< size_type > &col_indices, const std::vector< number > &values, const\n+ bool elide_zero_values=true)\n elide_zero_values is currently ignored.\n Member _\bM_\ba_\bt_\br_\bi_\bx_\bC_\br_\be_\ba_\bt_\bo_\br_\b:_\b:_\bc_\br_\be_\ba_\bt_\be_\b__\bb_\bo_\bu_\bn_\bd_\ba_\br_\by_\b__\bm_\ba_\bs_\bs_\b__\bm_\ba_\bt_\br_\bi_\bx (const _\bM_\ba_\bp_\bp_\bi_\bn_\bg_\b<_\b _\bd_\bi_\bm_\b,\n _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b> &mapping, const _\bD_\bo_\bF_\bH_\ba_\bn_\bd_\bl_\be_\br_\b<_\b _\bd_\bi_\bm_\b,_\b _\bs_\bp_\ba_\bc_\be_\bd_\bi_\bm_\b _\b> &dof, const\n _\bQ_\bu_\ba_\bd_\br_\ba_\bt_\bu_\br_\be< dim - 1 > &q, SparseMatrix< number > &matrix, const std::map<\n _\bt_\by_\bp_\be_\bs_\b:_\b:_\bb_\bo_\bu_\bn_\bd_\ba_\br_\by_\b__\bi_\bd, const Function< spacedim, number > * >\n &boundary_functions, _\bV_\be_\bc_\bt_\bo_\br_\b<_\b _\bn_\bu_\bm_\bb_\be_\br_\b _\b> &rhs_vector, std::vector< types::\n global_dof_index > &dof_to_boundary_mapping, const Function< spacedim, number\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__accessor_8h_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/tria__accessor_8h_source.html", "unified_diff": "@@ -1010,15 +1010,15 @@\n
    2578
    \n \n \n
    2595
    \n
    2599 const Manifold<1, spacedim> &
    \n \n
    2601
    \n-\n+\n \n
    2610
    \n
    2611
    \n
    2623 bool
    \n
    2624 user_flag_set() const;
    \n
    2625
    \n
    2631 void
    \n@@ -1109,21 +1109,21 @@\n
    2912
    \n
    2916 static int
    \n
    2917 isotropic_child_index(const unsigned int i);
    \n
    2948 void
    \n \n
    2950
    \n
    2957 void
    \n-\n+\n
    2959
    \n
    2969 void
    \n \n
    2971
    \n
    2983 void
    \n-\n+\n
    2992 bool
    \n
    2993 used() const;
    \n
    2994
    \n \n \n
    3000
    \n
    3004 unsigned int
    \n@@ -1939,15 +1939,14 @@\n \n \n
    @ valid
    Iterator points to a valid object.
    \n \n \n \n
    boost::integer_range< IncrementableType > iota_view
    Definition iota_view.h:45
    \n-
    unsigned int manifold_id
    Definition types.h:156
    \n \n \n \n \n \n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -2338,17 +2338,14 @@\n _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\ba_\bl_\bi_\bg_\bn_\be_\bd_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b7_\b2_\b7\n _\bp_\ba_\br_\ba_\bl_\bl_\be_\bl\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bd_\bi_\bs_\bt_\br_\bi_\bb_\bu_\bt_\be_\bd_\b._\bh_\b:_\b4_\b2_\b4\n _\bs_\bt_\bd_\b__\bc_\bx_\bx_\b2_\b0_\b:_\b:_\br_\ba_\bn_\bg_\be_\bs_\b:_\b:_\bi_\bo_\bt_\ba_\b__\bv_\bi_\be_\bw\n boost::integer_range< IncrementableType > iota_view\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bo_\bt_\ba_\b__\bv_\bi_\be_\bw_\b._\bh_\b:_\b4_\b5\n-_\bt_\by_\bp_\be_\bs_\b:_\b:_\bm_\ba_\bn_\bi_\bf_\bo_\bl_\bd_\b__\bi_\bd\n-unsigned int manifold_id\n-D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bt_\by_\bp_\be_\bs_\b._\bh_\b:_\b1_\b5_\b6\n _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bc_\be_\bl_\bl_\b._\bh\n _\bI_\bs_\bo_\bt_\br_\bo_\bp_\bi_\bc_\bR_\be_\bf_\bi_\bn_\be_\bm_\be_\bn_\bt_\bC_\bh_\bo_\bi_\bc_\be_\b:_\b:_\bi_\bs_\bo_\bt_\br_\bo_\bp_\bi_\bc_\b__\br_\be_\bf_\bi_\bn_\be_\bm_\be_\bn_\bt\n @ isotropic_refinement\n _\bG_\be_\bo_\bm_\be_\bt_\br_\by_\bI_\bn_\bf_\bo\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bg_\be_\bo_\bm_\be_\bt_\br_\by_\b__\bi_\bn_\bf_\bo_\b._\bh_\b:_\b1_\b9_\b6_\b4\n _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bT_\br_\bi_\ba_\bA_\bc_\bc_\be_\bs_\bs_\bo_\br_\bI_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bP_\br_\be_\bs_\be_\bn_\bt_\bL_\be_\bv_\be_\bl_\bT_\by_\bp_\be_\b:_\b:_\bt_\by_\bp_\be\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bt_\br_\bi_\ba_\b__\ba_\bc_\bc_\be_\bs_\bs_\bo_\br_\b._\bh_\b:_\b9_\b3\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__vector_8cc_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__vector_8cc_source.html", "unified_diff": "@@ -218,36 +218,36 @@\n
    106
    \n
    107 void
    \n
    \n
    108 Vector::reinit(const IndexSet &parallel_partitioner,
    \n
    109 const MPI_Comm communicator,
    \n
    110 const bool omit_zeroing_entries)
    \n
    111 {
    \n-
    112 Epetra_Map input_map =
    \n-
    113 parallel_partitioner.make_trilinos_map(communicator, false);
    \n-
    114 if (vector->Map().SameAs(input_map) == false)
    \n-
    115 vector = std::make_unique<Epetra_FEVector>(input_map);
    \n-
    116 else if (omit_zeroing_entries == false)
    \n+
    112 Epetra_Map input_map =
    \n+
    113 parallel_partitioner.make_trilinos_map(communicator, false);
    \n+
    114 if (vector->Map().SameAs(input_map) == false)
    \n+
    115 vector = std::make_unique<Epetra_FEVector>(input_map);
    \n+
    116 else if (omit_zeroing_entries == false)
    \n
    117 {
    \n-
    118 const int ierr = vector->PutScalar(0.);
    \n-\n-
    120 (void)ierr;
    \n+
    118 const int ierr = vector->PutScalar(0.);
    \n+
    119 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    120 (void)ierr;
    \n
    121 }
    \n
    122 }
    \n
    \n
    123
    \n
    124
    \n
    125
    \n
    126 void
    \n
    \n
    127 Vector::reinit(const Vector &V, const bool omit_zeroing_entries)
    \n
    128 {
    \n \n \n-\n+
    131 omit_zeroing_entries);
    \n
    132 }
    \n
    \n
    133
    \n
    134
    \n
    135
    \n
    136 void
    \n
    \n@@ -258,17 +258,17 @@\n
    141 AssertDimension(indices.size(), elements.size());
    \n
    142 const auto &vector = trilinos_vector();
    \n
    143 const auto &map = vector.Map();
    \n
    144
    \n
    145 for (unsigned int i = 0; i < indices.size(); ++i)
    \n
    146 {
    \n
    147 AssertIndexRange(indices[i], size());
    \n-
    148 const auto trilinos_i =
    \n+
    148 const auto trilinos_i =
    \n
    149 map.LID(static_cast<TrilinosWrappers::types::int_type>(indices[i]));
    \n-
    150 elements[i] = vector[0][trilinos_i];
    \n+
    150 elements[i] = vector[0][trilinos_i];
    \n
    151 }
    \n
    152 }
    \n
    \n
    153
    \n
    154
    \n
    155
    \n
    156 Vector &
    \n@@ -281,21 +281,21 @@\n
    162 // - Third case: the vectors have different size.
    \n
    163 if (vector->Map().SameAs(V.trilinos_vector().Map()))
    \n
    164 *vector = V.trilinos_vector();
    \n
    165 else
    \n
    166 {
    \n
    167 if (size() == V.size())
    \n
    168 {
    \n-
    169 Epetra_Import data_exchange(vector->Map(),
    \n+
    169 Epetra_Import data_exchange(vector->Map(),
    \n
    170 V.trilinos_vector().Map());
    \n
    171
    \n-
    172 const int ierr =
    \n-\n-\n-
    175 (void)ierr;
    \n+
    172 const int ierr =
    \n+
    173 vector->Import(V.trilinos_vector(), data_exchange, Insert);
    \n+
    174 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    175 (void)ierr;
    \n
    176 }
    \n
    177 else
    \n
    178 vector = std::make_unique<Epetra_FEVector>(V.trilinos_vector());
    \n
    179 }
    \n
    180
    \n
    181 return *this;
    \n
    182 }
    \n@@ -305,17 +305,17 @@\n
    185
    \n
    186 Vector &
    \n
    \n
    187 Vector::operator=(const double s)
    \n
    188 {
    \n
    189 Assert(s == 0., ExcMessage("Only 0 can be assigned to a vector."));
    \n
    190
    \n-
    191 const int ierr = vector->PutScalar(s);
    \n-\n-
    193 (void)ierr;
    \n+
    191 const int ierr = vector->PutScalar(s);
    \n+
    192 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    193 (void)ierr;
    \n
    194
    \n
    195 return *this;
    \n
    196 }
    \n
    \n
    197
    \n
    198
    \n
    199
    \n@@ -325,15 +325,15 @@\n \n
    203 VectorOperation::values operation,
    \n
    204 const std::shared_ptr<const Utilities::MPI::CommunicationPatternBase>
    \n
    205 &communication_pattern)
    \n
    206 {
    \n
    207 // If no communication pattern is given, create one. Otherwise, use the
    \n
    208 // one given.
    \n-
    209 if (communication_pattern == nullptr)
    \n+
    209 if (communication_pattern == nullptr)
    \n
    210 {
    \n
    211 // The first time import is called, a communication pattern is
    \n
    212 // created. Check if the communication pattern already exists and if
    \n
    213 // it can be reused.
    \n \n
    215 V.get_stored_elements().size()) ||
    \n \n@@ -343,37 +343,37 @@\n
    220 dynamic_cast<const Epetra_MpiComm &>(vector->Comm()).Comm());
    \n
    221 }
    \n
    222 }
    \n
    223 else
    \n
    224 {
    \n \n
    226 std::dynamic_pointer_cast<const CommunicationPattern>(
    \n-\n+
    227 communication_pattern);
    \n \n
    229 epetra_comm_pattern != nullptr,
    \n \n
    231 std::string("The communication pattern is not of type ") +
    \n
    232 "LinearAlgebra::EpetraWrappers::CommunicationPattern."));
    \n
    233 }
    \n
    234
    \n-
    235 Epetra_Import import_map(epetra_comm_pattern->get_epetra_import());
    \n+
    235 Epetra_Import import_map(epetra_comm_pattern->get_epetra_import());
    \n
    236
    \n
    237 // The TargetMap and the SourceMap have their roles inverted.
    \n-
    238 Epetra_FEVector source_vector(import_map.TargetMap());
    \n-
    239 double *values = source_vector.Values();
    \n+
    238 Epetra_FEVector source_vector(import_map.TargetMap());
    \n+
    239 double *values = source_vector.Values();
    \n
    240 std::copy(V.begin(), V.end(), values);
    \n
    241
    \n
    242 if (operation == VectorOperation::insert)
    \n-\n+
    243 vector->Export(source_vector, import_map, Insert);
    \n
    244 else if (operation == VectorOperation::add)
    \n-\n+
    245 vector->Export(source_vector, import_map, Add);
    \n
    246 else if (operation == VectorOperation::max)
    \n-\n+
    247 vector->Export(source_vector, import_map, Epetra_Max);
    \n
    248 else if (operation == VectorOperation::min)
    \n-\n+
    249 vector->Export(source_vector, import_map, Epetra_Min);
    \n
    250 else
    \n \n
    252 }
    \n \n
    253
    \n
    254
    \n
    255
    \n@@ -407,43 +407,43 @@\n
    279 Vector &
    \n
    \n \n
    281 {
    \n
    282 // If the maps are the same we can Update right away.
    \n
    283 if (vector->Map().SameAs(V.trilinos_vector().Map()))
    \n
    284 {
    \n-
    285 const int ierr = vector->Update(1., V.trilinos_vector(), 1.);
    \n-\n-
    287 (void)ierr;
    \n+
    285 const int ierr = vector->Update(1., V.trilinos_vector(), 1.);
    \n+
    286 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    287 (void)ierr;
    \n
    288 }
    \n
    289 else
    \n
    290 {
    \n
    291 Assert(this->size() == V.size(),
    \n
    292 ExcDimensionMismatch(this->size(), V.size()));
    \n
    293
    \n
    294# if DEAL_II_TRILINOS_VERSION_GTE(11, 11, 0)
    \n-
    295 Epetra_Import data_exchange(vector->Map(), V.trilinos_vector().Map());
    \n-
    296 const int ierr = vector->Import(V.trilinos_vector(),
    \n-\n-\n-\n-
    300 (void)ierr;
    \n+
    295 Epetra_Import data_exchange(vector->Map(), V.trilinos_vector().Map());
    \n+
    296 const int ierr = vector->Import(V.trilinos_vector(),
    \n+
    297 data_exchange,
    \n+
    298 Epetra_AddLocalAlso);
    \n+
    299 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    300 (void)ierr;
    \n
    301# else
    \n
    302 // In versions older than 11.11 the Import function is broken for
    \n
    303 // adding Hence, we provide a workaround in this case
    \n
    304
    \n-
    305 Epetra_MultiVector dummy(vector->Map(), 1, false);
    \n-
    306 Epetra_Import data_exchange(dummy.Map(), V.trilinos_vector().Map());
    \n+
    305 Epetra_MultiVector dummy(vector->Map(), 1, false);
    \n+
    306 Epetra_Import data_exchange(dummy.Map(), V.trilinos_vector().Map());
    \n
    307
    \n-
    308 int ierr = dummy.Import(V.trilinos_vector(), data_exchange, Insert);
    \n-\n+
    308 int ierr = dummy.Import(V.trilinos_vector(), data_exchange, Insert);
    \n+
    309 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n
    310
    \n-
    311 ierr = vector->Update(1.0, dummy, 1.0);
    \n-\n-
    313 (void)ierr;
    \n+
    311 ierr = vector->Update(1.0, dummy, 1.0);
    \n+
    312 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    313 (void)ierr;
    \n
    314# endif
    \n
    315 }
    \n
    316
    \n
    317 return *this;
    \n
    318 }
    \n
    \n
    319
    \n@@ -466,20 +466,20 @@\n
    333 Vector::operator*(const Vector &V) const
    \n
    334 {
    \n
    335 Assert(this->size() == V.size(),
    \n
    336 ExcDimensionMismatch(this->size(), V.size()));
    \n
    337 Assert(vector->Map().SameAs(V.trilinos_vector().Map()),
    \n \n
    339
    \n-
    340 double result(0.);
    \n-
    341 const int ierr = vector->Dot(V.trilinos_vector(), &result);
    \n-\n-
    343 (void)ierr;
    \n+
    340 double result(0.);
    \n+
    341 const int ierr = vector->Dot(V.trilinos_vector(), &result);
    \n+
    342 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    343 (void)ierr;
    \n
    344
    \n-
    345 return result;
    \n+
    345 return result;
    \n
    346 }
    \n \n
    347
    \n
    348
    \n
    349
    \n
    350 void
    \n
    \n@@ -498,17 +498,17 @@\n
    \n
    362 Vector::add(const double a, const Vector &V)
    \n
    363 {
    \n \n
    365 Assert(vector->Map().SameAs(V.trilinos_vector().Map()),
    \n \n
    367
    \n-
    368 const int ierr = vector->Update(a, V.trilinos_vector(), 1.);
    \n-\n-
    370 (void)ierr;
    \n+
    368 const int ierr = vector->Update(a, V.trilinos_vector(), 1.);
    \n+
    369 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    370 (void)ierr;
    \n
    371 }
    \n
    \n
    372
    \n
    373
    \n
    374
    \n
    375 void
    \n
    \n@@ -520,18 +520,18 @@\n
    381 Assert(vector->Map().SameAs(V.trilinos_vector().Map()),
    \n \n
    383 Assert(vector->Map().SameAs(W.trilinos_vector().Map()),
    \n \n \n \n
    387
    \n-
    388 const int ierr =
    \n+
    388 const int ierr =
    \n
    389 vector->Update(a, V.trilinos_vector(), b, W.trilinos_vector(), 1.);
    \n-\n-
    391 (void)ierr;
    \n+
    390 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    391 (void)ierr;
    \n
    392 }
    \n
    \n
    393
    \n
    394
    \n
    395
    \n
    396 void
    \n
    \n@@ -546,21 +546,21 @@\n
    404
    \n
    405
    \n
    406
    \n
    407 void
    \n
    \n
    408 Vector::scale(const Vector &scaling_factors)
    \n
    409 {
    \n-
    410 Assert(vector->Map().SameAs(scaling_factors.trilinos_vector().Map()),
    \n+
    410 Assert(vector->Map().SameAs(scaling_factors.trilinos_vector().Map()),
    \n \n
    412
    \n-
    413 const int ierr =
    \n-
    414 vector->Multiply(1.0, scaling_factors.trilinos_vector(), *vector, 0.0);
    \n-\n-
    416 (void)ierr;
    \n+
    413 const int ierr =
    \n+
    414 vector->Multiply(1.0, scaling_factors.trilinos_vector(), *vector, 0.0);
    \n+
    415 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    416 (void)ierr;
    \n
    417 }
    \n
    \n
    418
    \n
    419
    \n
    420
    \n
    421 void
    \n
    \n@@ -568,108 +568,108 @@\n
    423 {
    \n
    424 // If we don't have the same map, copy.
    \n
    425 if (vector->Map().SameAs(V.trilinos_vector().Map()) == false)
    \n
    426 this->sadd(0., a, V);
    \n
    427 else
    \n
    428 {
    \n
    429 // Otherwise, just update
    \n-
    430 int ierr = vector->Update(a, V.trilinos_vector(), 0.);
    \n-\n-
    432 (void)ierr;
    \n+
    430 int ierr = vector->Update(a, V.trilinos_vector(), 0.);
    \n+
    431 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    432 (void)ierr;
    \n
    433 }
    \n
    434 }
    \n
    \n
    435
    \n
    436
    \n
    437
    \n
    438 bool
    \n
    \n \n
    440 {
    \n
    441 // get a representation of the vector and
    \n
    442 // loop over all the elements
    \n-
    443 double *start_ptr = (*vector)[0];
    \n-
    444 const double *ptr = start_ptr, *eptr = start_ptr + vector->MyLength();
    \n+
    443 double *start_ptr = (*vector)[0];
    \n+
    444 const double *ptr = start_ptr, *eptr = start_ptr + vector->MyLength();
    \n
    445 unsigned int flag = 0;
    \n-
    446 while (ptr != eptr)
    \n+
    446 while (ptr != eptr)
    \n
    447 {
    \n
    448 if (*ptr != 0)
    \n
    449 {
    \n
    450 flag = 1;
    \n
    451 break;
    \n
    452 }
    \n
    453 ++ptr;
    \n
    454 }
    \n
    455
    \n
    456 // Check that the vector is zero on _all_ processors.
    \n
    457 const Epetra_MpiComm *mpi_comm =
    \n
    458 dynamic_cast<const Epetra_MpiComm *>(&vector->Map().Comm());
    \n
    459 Assert(mpi_comm != nullptr, ExcInternalError());
    \n-
    460 unsigned int num_nonzero = Utilities::MPI::sum(flag, mpi_comm->Comm());
    \n+
    460 unsigned int num_nonzero = Utilities::MPI::sum(flag, mpi_comm->Comm());
    \n
    461
    \n-
    462 return num_nonzero == 0;
    \n+
    462 return num_nonzero == 0;
    \n
    463 }
    \n
    \n
    464
    \n
    465
    \n
    466
    \n
    467 double
    \n
    \n \n
    469 {
    \n
    470 double mean_value(0.);
    \n
    471
    \n-
    472 int ierr = vector->MeanValue(&mean_value);
    \n-\n-
    474 (void)ierr;
    \n+
    472 int ierr = vector->MeanValue(&mean_value);
    \n+
    473 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    474 (void)ierr;
    \n
    475
    \n
    476 return mean_value;
    \n
    477 }
    \n
    \n
    478
    \n
    479
    \n
    480
    \n
    481 double
    \n
    \n \n
    483 {
    \n
    484 double norm(0.);
    \n-
    485 int ierr = vector->Norm1(&norm);
    \n-\n-
    487 (void)ierr;
    \n+
    485 int ierr = vector->Norm1(&norm);
    \n+
    486 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    487 (void)ierr;
    \n
    488
    \n
    489 return norm;
    \n
    490 }
    \n
    \n
    491
    \n
    492
    \n
    493
    \n
    494 double
    \n
    \n \n
    496 {
    \n
    497 double norm(0.);
    \n-
    498 int ierr = vector->Norm2(&norm);
    \n-\n-
    500 (void)ierr;
    \n+
    498 int ierr = vector->Norm2(&norm);
    \n+
    499 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    500 (void)ierr;
    \n
    501
    \n
    502 return norm;
    \n
    503 }
    \n
    \n
    504
    \n
    505
    \n
    506
    \n
    507 double
    \n
    \n \n
    509 {
    \n
    510 double norm(0.);
    \n-
    511 int ierr = vector->NormInf(&norm);
    \n-\n-
    513 (void)ierr;
    \n+
    511 int ierr = vector->NormInf(&norm);
    \n+
    512 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    513 (void)ierr;
    \n
    514
    \n
    515 return norm;
    \n
    516 }
    \n
    \n
    517
    \n
    518
    \n
    519
    \n@@ -709,54 +709,54 @@\n
    547
    \n
    548
    \n
    549
    \n \n
    \n \n
    552 {
    \n-
    553 const Epetra_MpiComm *epetra_comm =
    \n+
    553 const Epetra_MpiComm *epetra_comm =
    \n
    554 dynamic_cast<const Epetra_MpiComm *>(&(vector->Comm()));
    \n-
    555 Assert(epetra_comm != nullptr, ExcInternalError());
    \n-
    556 return epetra_comm->GetMpiComm();
    \n+
    555 Assert(epetra_comm != nullptr, ExcInternalError());
    \n+
    556 return epetra_comm->GetMpiComm();
    \n
    557 }
    \n
    \n
    558
    \n
    559
    \n
    560
    \n \n
    \n \n
    563 {
    \n-
    564 IndexSet is(size());
    \n+
    564 IndexSet is(size());
    \n
    565
    \n
    566 // easy case: local range is contiguous
    \n
    567 if (vector->Map().LinearMap())
    \n
    568 {
    \n
    569# ifndef DEAL_II_WITH_64BIT_INDICES
    \n-
    570 is.add_range(vector->Map().MinMyGID(), vector->Map().MaxMyGID() + 1);
    \n+
    570 is.add_range(vector->Map().MinMyGID(), vector->Map().MaxMyGID() + 1);
    \n
    571# else
    \n-
    572 is.add_range(vector->Map().MinMyGID64(),
    \n+
    572 is.add_range(vector->Map().MinMyGID64(),
    \n
    573 vector->Map().MaxMyGID64() + 1);
    \n
    574# endif
    \n
    575 }
    \n
    576 else if (vector->Map().NumMyElements() > 0)
    \n
    577 {
    \n-
    578 const size_type n_indices = vector->Map().NumMyElements();
    \n+
    578 const size_type n_indices = vector->Map().NumMyElements();
    \n
    579# ifndef DEAL_II_WITH_64BIT_INDICES
    \n-
    580 unsigned int *vector_indices =
    \n+
    580 unsigned int *vector_indices =
    \n
    581 reinterpret_cast<unsigned int *>(vector->Map().MyGlobalElements());
    \n
    582# else
    \n-\n+
    583 size_type *vector_indices =
    \n
    584 reinterpret_cast<size_type *>(vector->Map().MyGlobalElements64());
    \n
    585# endif
    \n-\n+
    586 is.add_indices(vector_indices, vector_indices + n_indices);
    \n
    587 }
    \n-
    588 is.compress();
    \n+
    588 is.compress();
    \n
    589
    \n-
    590 return is;
    \n+
    590 return is;
    \n
    591 }
    \n
    \n
    592
    \n
    593
    \n
    594 void
    \n
    \n \n@@ -789,31 +789,31 @@\n
    \n
    617 Vector::print(std::ostream &out,
    \n
    618 const unsigned int precision,
    \n
    619 const bool scientific,
    \n
    620 const bool across) const
    \n
    621 {
    \n
    622 AssertThrow(out.fail() == false, ExcIO());
    \n-
    623 boost::io::ios_flags_saver restore_flags(out);
    \n+
    623 boost::io::ios_flags_saver restore_flags(out);
    \n
    624
    \n
    625 // Get a representation of the vector and loop over all
    \n
    626 // the elements
    \n
    627 double *val;
    \n-\n-
    629 int ierr = vector->ExtractView(&val, &leading_dimension);
    \n+
    628 int leading_dimension;
    \n+
    629 int ierr = vector->ExtractView(&val, &leading_dimension);
    \n
    630
    \n-\n-
    632 (void)ierr;
    \n+
    631 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n+
    632 (void)ierr;
    \n
    633 out.precision(precision);
    \n
    634 if (scientific)
    \n
    635 out.setf(std::ios::scientific, std::ios::floatfield);
    \n
    636 else
    \n
    637 out.setf(std::ios::fixed, std::ios::floatfield);
    \n
    638
    \n-
    639 if (across)
    \n+
    639 if (across)
    \n
    640 for (int i = 0; i < vector->MyLength(); ++i)
    \n
    641 out << val[i] << ' ';
    \n
    642 else
    \n
    643 for (int i = 0; i < vector->MyLength(); ++i)
    \n
    644 out << val[i] << std::endl;
    \n
    645 out << std::endl;
    \n
    646
    \n@@ -838,31 +838,35 @@\n
    662
    \n
    663
    \n
    664 void
    \n
    \n \n
    666 const MPI_Comm mpi_comm)
    \n
    667 {
    \n-\n+
    668 source_stored_elements = source_index_set;
    \n \n
    670 std::make_shared<CommunicationPattern>(locally_owned_elements(),
    \n-\n+
    671 source_index_set,
    \n
    672 mpi_comm);
    \n
    673 }
    \n
    \n
    674 } // namespace EpetraWrappers
    \n
    675} // namespace LinearAlgebra
    \n
    676
    \n \n
    678
    \n
    679#endif
    \n \n
    std::size_t size() const
    Definition array_view.h:684
    \n \n
    size_type size() const
    Definition index_set.h:1776
    \n+
    Epetra_Map make_trilinos_map(const MPI_Comm communicator=MPI_COMM_WORLD, const bool overlapping=false) const
    \n+
    void add_range(const size_type begin, const size_type end)
    Definition index_set.h:1803
    \n+
    void compress() const
    Definition index_set.h:1784
    \n+
    void add_indices(const ForwardIterator &begin, const ForwardIterator &end)
    Definition index_set.h:1831
    \n \n \n
    void equ(const double a, const Vector &V)
    \n \n \n
    void compress(const VectorOperation::values operation)
    \n
    void print(std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -117,34 +117,34 @@\n 105\n 106\n 107 void\n _\b1_\b0_\b8 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioner,\n 109 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator,\n 110 const bool omit_zeroing_entries)\n 111 {\n-112 Epetra_Map _\bi_\bn_\bp_\bu_\bt_\b__\bm_\ba_\bp =\n-113 _\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br.make_trilinos_map(communicator, false);\n-114 if (_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(_\bi_\bn_\bp_\bu_\bt_\b__\bm_\ba_\bp) == false)\n-115 _\bv_\be_\bc_\bt_\bo_\br = std::make_unique(_\bi_\bn_\bp_\bu_\bt_\b__\bm_\ba_\bp);\n-116 else if (_\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs == false)\n+112 Epetra_Map input_map =\n+113 parallel_partitioner._\bm_\ba_\bk_\be_\b__\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bp(communicator, false);\n+114 if (_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(input_map) == false)\n+115 _\bv_\be_\bc_\bt_\bo_\br = std::make_unique(input_map);\n+116 else if (omit_zeroing_entries == false)\n 117 {\n-118 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->PutScalar(0.);\n-119 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-120 (void)_\bi_\be_\br_\br;\n+118 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->PutScalar(0.);\n+119 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+120 (void)ierr;\n 121 }\n 122 }\n 123\n 124\n 125\n 126 void\n _\b1_\b2_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(const _\bV_\be_\bc_\bt_\bo_\br &V, const bool omit_zeroing_entries)\n 128 {\n 129 _\br_\be_\bi_\bn_\bi_\bt(V._\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(),\n 130 V._\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br(),\n-131 _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs);\n+131 omit_zeroing_entries);\n 132 }\n 133\n 134\n 135\n 136 void\n _\b1_\b3_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo(\n 138 const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw_\b<_\bc_\bo_\bn_\bs_\bt_\b _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx_\b> &indices,\n@@ -153,17 +153,17 @@\n 141 _\bA_\bs_\bs_\be_\br_\bt_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn(indices._\bs_\bi_\bz_\be(), elements._\bs_\bi_\bz_\be());\n 142 const auto &_\bv_\be_\bc_\bt_\bo_\br = _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br();\n 143 const auto &map = _\bv_\be_\bc_\bt_\bo_\br.Map();\n 144\n 145 for (unsigned int i = 0; i < indices._\bs_\bi_\bz_\be(); ++i)\n 146 {\n 147 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bn_\bd_\be_\bx_\bR_\ba_\bn_\bg_\be(indices[i], _\bs_\bi_\bz_\be());\n-148 const auto _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bi =\n+148 const auto trilinos_i =\n 149 map.LID(static_cast<_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be>(indices[i]));\n-150 elements[i] = _\bv_\be_\bc_\bt_\bo_\br[0][_\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bi];\n+150 elements[i] = _\bv_\be_\bc_\bt_\bo_\br[0][trilinos_i];\n 151 }\n 152 }\n 153\n 154\n 155\n 156 _\bV_\be_\bc_\bt_\bo_\br &\n _\b1_\b5_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=(const _\bV_\be_\bc_\bt_\bo_\br &V)\n@@ -174,21 +174,21 @@\n 162 // - Third case: the vectors have different size.\n 163 if (_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map()))\n 164 *_\bv_\be_\bc_\bt_\bo_\br = V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br();\n 165 else\n 166 {\n 167 if (_\bs_\bi_\bz_\be() == V._\bs_\bi_\bz_\be())\n 168 {\n-169 Epetra_Import _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br->Map(),\n+169 Epetra_Import data_exchange(_\bv_\be_\bc_\bt_\bo_\br->Map(),\n 170 V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map());\n 171\n-172 const int _\bi_\be_\br_\br =\n-173 _\bv_\be_\bc_\bt_\bo_\br->Import(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be, _\bI_\bn_\bs_\be_\br_\bt);\n-174 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-175 (void)_\bi_\be_\br_\br;\n+172 const int ierr =\n+173 _\bv_\be_\bc_\bt_\bo_\br->Import(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), data_exchange, Insert);\n+174 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+175 (void)ierr;\n 176 }\n 177 else\n 178 _\bv_\be_\bc_\bt_\bo_\br = std::make_unique(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br());\n 179 }\n 180\n 181 return *this;\n 182 }\n@@ -196,17 +196,17 @@\n 184\n 185\n 186 _\bV_\be_\bc_\bt_\bo_\br &\n _\b1_\b8_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=(const double s)\n 188 {\n 189 _\bA_\bs_\bs_\be_\br_\bt(s == 0., _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\"Only 0 can be assigned to a vector.\"));\n 190\n-191 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->PutScalar(s);\n-192 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-193 (void)_\bi_\be_\br_\br;\n+191 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->PutScalar(s);\n+192 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+193 (void)ierr;\n 194\n 195 return *this;\n 196 }\n 197\n 198\n 199\n 200 void\n@@ -214,15 +214,15 @@\n 202 const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bd_\bo_\bu_\bb_\bl_\be_\b> &V,\n 203 _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation,\n 204 const std::shared_ptr\n 205 &communication_pattern)\n 206 {\n 207 // If no communication pattern is given, create one. Otherwise, use the\n 208 // one given.\n-209 if (_\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn == nullptr)\n+209 if (communication_pattern == nullptr)\n 210 {\n 211 // The first time import is called, a communication pattern is\n 212 // created. Check if the communication pattern already exists and if\n 213 // it can be reused.\n 214 if ((_\bs_\bo_\bu_\br_\bc_\be_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs._\bs_\bi_\bz_\be() !=\n 215 V._\bg_\be_\bt_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs()._\bs_\bi_\bz_\be()) ||\n 216 (_\bs_\bo_\bu_\br_\bc_\be_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs != V._\bg_\be_\bt_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs()))\n@@ -232,37 +232,37 @@\n 220 dynamic_cast(_\bv_\be_\bc_\bt_\bo_\br->Comm()).Comm());\n 221 }\n 222 }\n 223 else\n 224 {\n 225 _\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn =\n 226 std::dynamic_pointer_cast(\n-227 _\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn);\n+227 communication_pattern);\n 228 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(\n 229 _\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn != nullptr,\n 230 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\n 231 std::string(\"The communication pattern is not of type \") +\n 232 \"LinearAlgebra::EpetraWrappers::CommunicationPattern.\"));\n 233 }\n 234\n-235 Epetra_Import _\bi_\bm_\bp_\bo_\br_\bt_\b__\bm_\ba_\bp(_\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn->get_epetra_import());\n+235 Epetra_Import import_map(_\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn->get_epetra_import());\n 236\n 237 // The TargetMap and the SourceMap have their roles inverted.\n-238 Epetra_FEVector _\bs_\bo_\bu_\br_\bc_\be_\b__\bv_\be_\bc_\bt_\bo_\br(_\bi_\bm_\bp_\bo_\br_\bt_\b__\bm_\ba_\bp.TargetMap());\n-239 double *values = _\bs_\bo_\bu_\br_\bc_\be_\b__\bv_\be_\bc_\bt_\bo_\br.Values();\n+238 Epetra_FEVector source_vector(import_map.TargetMap());\n+239 double *values = source_vector.Values();\n 240 std::copy(V._\bb_\be_\bg_\bi_\bn(), V._\be_\bn_\bd(), values);\n 241\n 242 if (operation == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bi_\bn_\bs_\be_\br_\bt)\n-243 _\bv_\be_\bc_\bt_\bo_\br->Export(_\bs_\bo_\bu_\br_\bc_\be_\b__\bv_\be_\bc_\bt_\bo_\br, _\bi_\bm_\bp_\bo_\br_\bt_\b__\bm_\ba_\bp, _\bI_\bn_\bs_\be_\br_\bt);\n+243 _\bv_\be_\bc_\bt_\bo_\br->Export(source_vector, import_map, Insert);\n 244 else if (operation == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\ba_\bd_\bd)\n-245 _\bv_\be_\bc_\bt_\bo_\br->Export(_\bs_\bo_\bu_\br_\bc_\be_\b__\bv_\be_\bc_\bt_\bo_\br, _\bi_\bm_\bp_\bo_\br_\bt_\b__\bm_\ba_\bp, _\bA_\bd_\bd);\n+245 _\bv_\be_\bc_\bt_\bo_\br->Export(source_vector, import_map, Add);\n 246 else if (operation == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bm_\ba_\bx)\n-247 _\bv_\be_\bc_\bt_\bo_\br->Export(_\bs_\bo_\bu_\br_\bc_\be_\b__\bv_\be_\bc_\bt_\bo_\br, _\bi_\bm_\bp_\bo_\br_\bt_\b__\bm_\ba_\bp, _\bE_\bp_\be_\bt_\br_\ba_\b__\bM_\ba_\bx);\n+247 _\bv_\be_\bc_\bt_\bo_\br->Export(source_vector, import_map, Epetra_Max);\n 248 else if (operation == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bm_\bi_\bn)\n-249 _\bv_\be_\bc_\bt_\bo_\br->Export(_\bs_\bo_\bu_\br_\bc_\be_\b__\bv_\be_\bc_\bt_\bo_\br, _\bi_\bm_\bp_\bo_\br_\bt_\b__\bm_\ba_\bp, _\bE_\bp_\be_\bt_\br_\ba_\b__\bM_\bi_\bn);\n+249 _\bv_\be_\bc_\bt_\bo_\br->Export(source_vector, import_map, Epetra_Min);\n 250 else\n 251 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(false, _\bE_\bx_\bc_\bN_\bo_\bt_\bI_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd());\n 252 }\n 253\n 254\n 255\n 256 _\bV_\be_\bc_\bt_\bo_\br &\n@@ -290,43 +290,43 @@\n 278\n 279 _\bV_\be_\bc_\bt_\bo_\br &\n _\b2_\b8_\b0 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b=(const _\bV_\be_\bc_\bt_\bo_\br &V)\n 281 {\n 282 // If the maps are the same we can Update right away.\n 283 if (_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map()))\n 284 {\n-285 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(1., V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), 1.);\n-286 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-287 (void)_\bi_\be_\br_\br;\n+285 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(1., V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), 1.);\n+286 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+287 (void)ierr;\n 288 }\n 289 else\n 290 {\n 291 _\bA_\bs_\bs_\be_\br_\bt(this->_\bs_\bi_\bz_\be() == V._\bs_\bi_\bz_\be(),\n 292 _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(this->_\bs_\bi_\bz_\be(), V._\bs_\bi_\bz_\be()));\n 293\n 294# if DEAL_II_TRILINOS_VERSION_GTE(11, 11, 0)\n-295 Epetra_Import _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br->Map(), V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map());\n-296 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Import(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(),\n-297 _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be,\n-298 _\bE_\bp_\be_\bt_\br_\ba_\b__\bA_\bd_\bd_\bL_\bo_\bc_\ba_\bl_\bA_\bl_\bs_\bo);\n-299 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-300 (void)_\bi_\be_\br_\br;\n+295 Epetra_Import data_exchange(_\bv_\be_\bc_\bt_\bo_\br->Map(), V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map());\n+296 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Import(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(),\n+297 data_exchange,\n+298 Epetra_AddLocalAlso);\n+299 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+300 (void)ierr;\n 301# else\n 302 // In versions older than 11.11 the Import function is broken for\n 303 // adding Hence, we provide a workaround in this case\n 304\n-305 Epetra_MultiVector _\bd_\bu_\bm_\bm_\by(_\bv_\be_\bc_\bt_\bo_\br->Map(), 1, false);\n-306 Epetra_Import _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be(_\bd_\bu_\bm_\bm_\by.Map(), V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map());\n+305 Epetra_MultiVector dummy(_\bv_\be_\bc_\bt_\bo_\br->Map(), 1, false);\n+306 Epetra_Import data_exchange(dummy.Map(), V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map());\n 307\n-308 int _\bi_\be_\br_\br = _\bd_\bu_\bm_\bm_\by.Import(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be, _\bI_\bn_\bs_\be_\br_\bt);\n-309 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+308 int ierr = dummy.Import(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), data_exchange, Insert);\n+309 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 310\n-311 _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(1.0, _\bd_\bu_\bm_\bm_\by, 1.0);\n-312 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-313 (void)_\bi_\be_\br_\br;\n+311 ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(1.0, dummy, 1.0);\n+312 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+313 (void)ierr;\n 314# endif\n 315 }\n 316\n 317 return *this;\n 318 }\n 319\n 320\n@@ -345,20 +345,20 @@\n _\b3_\b3_\b3 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*(const _\bV_\be_\bc_\bt_\bo_\br &V) const\n 334 {\n 335 _\bA_\bs_\bs_\be_\br_\bt(this->_\bs_\bi_\bz_\be() == V._\bs_\bi_\bz_\be(),\n 336 _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(this->_\bs_\bi_\bz_\be(), V._\bs_\bi_\bz_\be()));\n 337 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map()),\n 338 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg());\n 339\n-340 double _\br_\be_\bs_\bu_\bl_\bt(0.);\n-341 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Dot(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), &_\br_\be_\bs_\bu_\bl_\bt);\n-342 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-343 (void)_\bi_\be_\br_\br;\n+340 double result(0.);\n+341 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Dot(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), &result);\n+342 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+343 (void)ierr;\n 344\n-345 return _\br_\be_\bs_\bu_\bl_\bt;\n+345 return result;\n 346 }\n 347\n 348\n 349\n 350 void\n _\b3_\b5_\b1 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bd_\bd(const double a)\n 352 {\n@@ -373,17 +373,17 @@\n 361 void\n _\b3_\b6_\b2 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bd_\bd(const double a, const _\bV_\be_\bc_\bt_\bo_\br &V)\n 363 {\n 364 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 365 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map()),\n 366 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg());\n 367\n-368 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(a, V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), 1.);\n-369 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-370 (void)_\bi_\be_\br_\br;\n+368 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(a, V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), 1.);\n+369 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+370 (void)ierr;\n 371 }\n 372\n 373\n 374\n 375 void\n _\b3_\b7_\b6 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bd_\bd(const double a,\n 377 const _\bV_\be_\bc_\bt_\bo_\br &V,\n@@ -393,18 +393,18 @@\n 381 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map()),\n 382 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg());\n 383 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(W._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map()),\n 384 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg());\n 385 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 386 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(b);\n 387\n-388 const int _\bi_\be_\br_\br =\n+388 const int ierr =\n 389 _\bv_\be_\bc_\bt_\bo_\br->Update(a, V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), b, W._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), 1.);\n-390 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-391 (void)_\bi_\be_\br_\br;\n+390 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+391 (void)ierr;\n 392 }\n 393\n 394\n 395\n 396 void\n _\b3_\b9_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\ba_\bd_\bd(const double s, const double a, const _\bV_\be_\bc_\bt_\bo_\br &V)\n 398 {\n@@ -415,118 +415,118 @@\n 403 }\n 404\n 405\n 406\n 407 void\n _\b4_\b0_\b8 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br &scaling_factors)\n 409 {\n-410 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(_\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs.trilinos_vector().Map()),\n+410 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(scaling_factors._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map()),\n 411 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg());\n 412\n-413 const int _\bi_\be_\br_\br =\n-414 _\bv_\be_\bc_\bt_\bo_\br->Multiply(1.0, _\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs.trilinos_vector(), *_\bv_\be_\bc_\bt_\bo_\br, 0.0);\n-415 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-416 (void)_\bi_\be_\br_\br;\n+413 const int ierr =\n+414 _\bv_\be_\bc_\bt_\bo_\br->Multiply(1.0, scaling_factors._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), *_\bv_\be_\bc_\bt_\bo_\br, 0.0);\n+415 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+416 (void)ierr;\n 417 }\n 418\n 419\n 420\n 421 void\n _\b4_\b2_\b2 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\be_\bq_\bu(const double a, const _\bV_\be_\bc_\bt_\bo_\br &V)\n 423 {\n 424 // If we don't have the same map, copy.\n 425 if (_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br().Map()) == false)\n 426 this->_\bs_\ba_\bd_\bd(0., a, V);\n 427 else\n 428 {\n 429 // Otherwise, just update\n-430 int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(a, V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), 0.);\n-431 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-432 (void)_\bi_\be_\br_\br;\n+430 int ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(a, V._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br(), 0.);\n+431 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+432 (void)ierr;\n 433 }\n 434 }\n 435\n 436\n 437\n 438 bool\n _\b4_\b3_\b9 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bl_\bl_\b__\bz_\be_\br_\bo() const\n 440 {\n 441 // get a representation of the vector and\n 442 // loop over all the elements\n-443 double *_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br = (*vector)[0];\n-444 const double *ptr = _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br, *_\be_\bp_\bt_\br = _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br + _\bv_\be_\bc_\bt_\bo_\br->MyLength();\n+443 double *start_ptr = (*vector)[0];\n+444 const double *ptr = start_ptr, *eptr = start_ptr + _\bv_\be_\bc_\bt_\bo_\br->MyLength();\n 445 unsigned int flag = 0;\n-446 while (ptr != _\be_\bp_\bt_\br)\n+446 while (ptr != eptr)\n 447 {\n 448 if (*ptr != 0)\n 449 {\n 450 flag = 1;\n 451 break;\n 452 }\n 453 ++ptr;\n 454 }\n 455\n 456 // Check that the vector is zero on _all_ processors.\n 457 const Epetra_MpiComm *mpi_comm =\n 458 dynamic_cast(&_\bv_\be_\bc_\bt_\bo_\br->Map().Comm());\n 459 _\bA_\bs_\bs_\be_\br_\bt(mpi_comm != nullptr, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-460 unsigned int _\bn_\bu_\bm_\b__\bn_\bo_\bn_\bz_\be_\br_\bo = _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(flag, mpi_comm->Comm());\n+460 unsigned int num_nonzero = _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(flag, mpi_comm->Comm());\n 461\n-462 return _\bn_\bu_\bm_\b__\bn_\bo_\bn_\bz_\be_\br_\bo == 0;\n+462 return num_nonzero == 0;\n 463 }\n 464\n 465\n 466\n 467 double\n _\b4_\b6_\b8 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be() const\n 469 {\n 470 double _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be(0.);\n 471\n-472 int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->MeanValue(&_\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be);\n-473 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-474 (void)_\bi_\be_\br_\br;\n+472 int ierr = _\bv_\be_\bc_\bt_\bo_\br->MeanValue(&_\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be);\n+473 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+474 (void)ierr;\n 475\n 476 return _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be;\n 477 }\n 478\n 479\n 480\n 481 double\n _\b4_\b8_\b2 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bl_\b1_\b__\bn_\bo_\br_\bm() const\n 483 {\n 484 double norm(0.);\n-485 int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Norm1(&norm);\n-486 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-487 (void)_\bi_\be_\br_\br;\n+485 int ierr = _\bv_\be_\bc_\bt_\bo_\br->Norm1(&norm);\n+486 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+487 (void)ierr;\n 488\n 489 return norm;\n 490 }\n 491\n 492\n 493\n 494 double\n _\b4_\b9_\b5 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bl_\b2_\b__\bn_\bo_\br_\bm() const\n 496 {\n 497 double norm(0.);\n-498 int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Norm2(&norm);\n-499 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-500 (void)_\bi_\be_\br_\br;\n+498 int ierr = _\bv_\be_\bc_\bt_\bo_\br->Norm2(&norm);\n+499 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+500 (void)ierr;\n 501\n 502 return norm;\n 503 }\n 504\n 505\n 506\n 507 double\n _\b5_\b0_\b8 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bl_\bi_\bn_\bf_\bt_\by_\b__\bn_\bo_\br_\bm() const\n 509 {\n 510 double norm(0.);\n-511 int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->NormInf(&norm);\n-512 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-513 (void)_\bi_\be_\br_\br;\n+511 int ierr = _\bv_\be_\bc_\bt_\bo_\br->NormInf(&norm);\n+512 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+513 (void)ierr;\n 514\n 515 return norm;\n 516 }\n 517\n 518\n 519\n 520 double\n@@ -558,52 +558,52 @@\n 546 }\n 547\n 548\n 549\n 550 _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n _\b5_\b5_\b1 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br() const\n 552 {\n-553 const Epetra_MpiComm *_\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm =\n+553 const Epetra_MpiComm *epetra_comm =\n 554 dynamic_cast(&(_\bv_\be_\bc_\bt_\bo_\br->Comm()));\n-555 _\bA_\bs_\bs_\be_\br_\bt(_\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm != nullptr, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-556 return _\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm->GetMpiComm();\n+555 _\bA_\bs_\bs_\be_\br_\bt(epetra_comm != nullptr, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+556 return epetra_comm->GetMpiComm();\n 557 }\n 558\n 559\n 560\n 561 _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n _\b5_\b6_\b2 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs() const\n 563 {\n-564 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt _\bi_\bs(_\bs_\bi_\bz_\be());\n+564 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt is(_\bs_\bi_\bz_\be());\n 565\n 566 // easy case: local range is contiguous\n 567 if (_\bv_\be_\bc_\bt_\bo_\br->Map().LinearMap())\n 568 {\n 569# ifndef DEAL_II_WITH_64BIT_INDICES\n-570 _\bi_\bs.add_range(_\bv_\be_\bc_\bt_\bo_\br->Map().MinMyGID(), _\bv_\be_\bc_\bt_\bo_\br->Map().MaxMyGID() + 1);\n+570 is._\ba_\bd_\bd_\b__\br_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br->Map().MinMyGID(), _\bv_\be_\bc_\bt_\bo_\br->Map().MaxMyGID() + 1);\n 571# else\n-572 _\bi_\bs.add_range(_\bv_\be_\bc_\bt_\bo_\br->Map().MinMyGID64(),\n+572 is._\ba_\bd_\bd_\b__\br_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br->Map().MinMyGID64(),\n 573 _\bv_\be_\bc_\bt_\bo_\br->Map().MaxMyGID64() + 1);\n 574# endif\n 575 }\n 576 else if (_\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements() > 0)\n 577 {\n-578 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bn_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs = _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements();\n+578 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_indices = _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements();\n 579# ifndef DEAL_II_WITH_64BIT_INDICES\n-580 unsigned int *_\bv_\be_\bc_\bt_\bo_\br_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs =\n+580 unsigned int *vector_indices =\n 581 reinterpret_cast(_\bv_\be_\bc_\bt_\bo_\br->Map().MyGlobalElements());\n 582# else\n-583 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *_\bv_\be_\bc_\bt_\bo_\br_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs =\n+583 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *vector_indices =\n 584 reinterpret_cast<_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *>(_\bv_\be_\bc_\bt_\bo_\br->Map().MyGlobalElements64());\n 585# endif\n-586 _\bi_\bs.add_indices(_\bv_\be_\bc_\bt_\bo_\br_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs, _\bv_\be_\bc_\bt_\bo_\br_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs + _\bn_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs);\n+586 is._\ba_\bd_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(vector_indices, vector_indices + n_indices);\n 587 }\n-588 _\bi_\bs.compress();\n+588 is._\bc_\bo_\bm_\bp_\br_\be_\bs_\bs();\n 589\n-590 return _\bi_\bs;\n+590 return is;\n 591 }\n 592\n 593\n 594 void\n _\b5_\b9_\b5 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\bo_\bm_\bp_\br_\be_\bs_\bs(const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs /*operation*/)\n 596 {}\n 597\n@@ -628,31 +628,31 @@\n 616 void\n _\b6_\b1_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bp_\br_\bi_\bn_\bt(std::ostream &out,\n 618 const unsigned int precision,\n 619 const bool scientific,\n 620 const bool across) const\n 621 {\n 622 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(out.fail() == false, _\bE_\bx_\bc_\bI_\bO());\n-623 boost::io::ios_flags_saver _\br_\be_\bs_\bt_\bo_\br_\be_\b__\bf_\bl_\ba_\bg_\bs(out);\n+623 boost::io::ios_flags_saver restore_flags(out);\n 624\n 625 // Get a representation of the vector and loop over all\n 626 // the elements\n 627 double *val;\n-628 int _\bl_\be_\ba_\bd_\bi_\bn_\bg_\b__\bd_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn;\n-629 int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->ExtractView(&val, &_\bl_\be_\ba_\bd_\bi_\bn_\bg_\b__\bd_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn);\n+628 int leading_dimension;\n+629 int ierr = _\bv_\be_\bc_\bt_\bo_\br->ExtractView(&val, &leading_dimension);\n 630\n-631 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-632 (void)_\bi_\be_\br_\br;\n+631 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+632 (void)ierr;\n 633 out.precision(precision);\n 634 if (scientific)\n 635 out.setf(std::ios::scientific, std::ios::floatfield);\n 636 else\n 637 out.setf(std::ios::fixed, std::ios::floatfield);\n 638\n-639 if (_\ba_\bc_\br_\bo_\bs_\bs)\n+639 if (across)\n 640 for (int i = 0; i < _\bv_\be_\bc_\bt_\bo_\br->MyLength(); ++i)\n 641 out << val[i] << ' ';\n 642 else\n 643 for (int i = 0; i < _\bv_\be_\bc_\bt_\bo_\br->MyLength(); ++i)\n 644 out << val[i] << std::endl;\n 645 out << std::endl;\n 646\n@@ -673,18 +673,18 @@\n 661\n 662\n 663\n 664 void\n _\b6_\b6_\b5 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\br_\be_\ba_\bt_\be_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &source_index_set,\n 666 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm mpi_comm)\n 667 {\n-668 _\bs_\bo_\bu_\br_\bc_\be_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = _\bs_\bo_\bu_\br_\bc_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt;\n+668 _\bs_\bo_\bu_\br_\bc_\be_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = source_index_set;\n 669 _\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn =\n 670 std::make_shared(_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(),\n-671 _\bs_\bo_\bu_\br_\bc_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt,\n+671 source_index_set,\n 672 mpi_comm);\n 673 }\n 674 } // namespace EpetraWrappers\n 675} // namespace LinearAlgebra\n 676\n 677_\bD_\bE_\bA_\bL_\b__\bI_\bI_\b__\bN_\bA_\bM_\bE_\bS_\bP_\bA_\bC_\bE_\b__\bC_\bL_\bO_\bS_\bE\n 678\n@@ -695,14 +695,27 @@\n std::size_t size() const\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\ba_\br_\br_\ba_\by_\b__\bv_\bi_\be_\bw_\b._\bh_\b:_\b6_\b8_\b4\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b7_\b0\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bs_\bi_\bz_\be\n size_type size() const\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b7_\b7_\b6\n+_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bm_\ba_\bk_\be_\b__\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bp\n+Epetra_Map make_trilinos_map(const MPI_Comm communicator=MPI_COMM_WORLD, const\n+bool overlapping=false) const\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bc_\bc_\b:_\b1_\b0_\b4_\b1\n+_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\ba_\bd_\bd_\b__\br_\ba_\bn_\bg_\be\n+void add_range(const size_type begin, const size_type end)\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b8_\b0_\b3\n+_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bc_\bo_\bm_\bp_\br_\be_\bs_\bs\n+void compress() const\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b7_\b8_\b4\n+_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\ba_\bd_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs\n+void add_indices(const ForwardIterator &begin, const ForwardIterator &end)\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b8_\b3_\b1\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b2_\b2_\b7\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b=\n Vector & operator-=(const Vector &V)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bc_\bc_\b:_\b3_\b2_\b3\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bE_\bp_\be_\bt_\br_\ba_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\be_\bq_\bu\n void equ(const double a, const Vector &V)\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__vector_8h_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__epetra__vector_8h_source.html", "unified_diff": "@@ -249,24 +249,24 @@\n \n \n
    234
    \n
    243 Vector();
    \n
    244
    \n
    249 Vector(const Vector &V);
    \n
    250
    \n-
    257 explicit Vector(const IndexSet &parallel_partitioner,
    \n+
    257 explicit Vector(const IndexSet &parallel_partitioner,
    \n
    258 const MPI_Comm communicator);
    \n
    259
    \n
    266 void
    \n-\n+
    267 reinit(const IndexSet &parallel_partitioner,
    \n
    268 const MPI_Comm communicator,
    \n-
    269 const bool omit_zeroing_entries = false);
    \n+
    269 const bool omit_zeroing_entries = false);
    \n
    270
    \n
    275 void
    \n-
    276 reinit(const Vector &V, const bool omit_zeroing_entries = false);
    \n+
    276 reinit(const Vector &V, const bool omit_zeroing_entries = false);
    \n
    277
    \n
    281 virtual void
    \n \n \n
    284 ArrayView<double> &elements) const override;
    \n
    285
    \n
    315 Vector &
    \n@@ -276,26 +276,26 @@\n
    323 operator=(const double s);
    \n
    324
    \n
    333 void
    \n \n \n
    336 VectorOperation::values operation,
    \n
    337 const std::shared_ptr<const Utilities::MPI::CommunicationPatternBase>
    \n-\n+
    338 &communication_pattern = {});
    \n
    339
    \n \n
    344 void
    \n
    \n
    345 import(
    \n \n
    347 const VectorOperation::values operation,
    \n
    348 const std::shared_ptr<const Utilities::MPI::CommunicationPatternBase>
    \n-\n+
    349 &communication_pattern = {})
    \n
    350 {
    \n-\n+
    351 import_elements(V, operation, communication_pattern);
    \n
    352 }
    \n
    \n
    353
    \n \n
    370 operator()(const size_type index);
    \n
    371
    \n \n@@ -331,15 +331,15 @@\n
    453 void
    \n
    454 add(const double a, const Vector &V, const double b, const Vector &W);
    \n
    455
    \n
    460 void
    \n
    461 sadd(const double s, const double a, const Vector &V);
    \n
    462
    \n
    469 void
    \n-\n+
    470 scale(const Vector &scaling_factors);
    \n
    471
    \n
    475 void
    \n
    476 equ(const double a, const Vector &V);
    \n
    477
    \n
    481 bool
    \n
    482 all_zero() const;
    \n
    483
    \n@@ -382,31 +382,31 @@\n
    624 Epetra_FEVector &
    \n \n
    626
    \n
    630 void
    \n
    631 print(std::ostream &out,
    \n
    632 const unsigned int precision = 3,
    \n
    633 const bool scientific = true,
    \n-
    634 const bool across = true) const;
    \n+
    634 const bool across = true) const;
    \n
    635
    \n
    639 std::size_t
    \n
    640 memory_consumption() const;
    \n
    641
    \n \n
    649
    \n \n
    656
    \n \n
    663 int,
    \n-
    664 << "An error with error number " << arg1
    \n+
    664 << "An error with error number " << arg1
    \n
    665 << " occurred while calling a Trilinos function");
    \n
    666
    \n
    667 private:
    \n
    673 void
    \n-\n+
    674 create_epetra_comm_pattern(const IndexSet &source_index_set,
    \n
    675 const MPI_Comm mpi_comm);
    \n
    676
    \n
    680 std::unique_ptr<Epetra_FEVector> vector;
    \n
    681
    \n \n
    686
    \n
    691 std::shared_ptr<const CommunicationPattern> epetra_comm_pattern;
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -153,24 +153,24 @@\n _\b2_\b3_\b2 using _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be;\n _\b2_\b3_\b3 using _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be;\n 234\n 243 _\bV_\be_\bc_\bt_\bo_\br();\n 244\n 249 _\bV_\be_\bc_\bt_\bo_\br(const _\bV_\be_\bc_\bt_\bo_\br &V);\n 250\n-257 explicit _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br,\n+257 explicit _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioner,\n 258 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator);\n 259\n 266 void\n-267 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br,\n+267 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioner,\n 268 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator,\n-269 const bool _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs = false);\n+269 const bool omit_zeroing_entries = false);\n 270\n 275 void\n-276 _\br_\be_\bi_\bn_\bi_\bt(const _\bV_\be_\bc_\bt_\bo_\br &V, const bool _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs = false);\n+276 _\br_\be_\bi_\bn_\bi_\bt(const _\bV_\be_\bc_\bt_\bo_\br &V, const bool omit_zeroing_entries = false);\n 277\n 281 virtual void\n 282 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo(\n 283 const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw_\b<_\bc_\bo_\bn_\bs_\bt_\b _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx_\b> &indices,\n 284 _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw_\b<_\bd_\bo_\bu_\bb_\bl_\be_\b> &elements) const override;\n 285\n 315 _\bV_\be_\bc_\bt_\bo_\br &\n@@ -180,25 +180,25 @@\n 323 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=(const double s);\n 324\n 333 void\n 334 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(\n 335 const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bd_\bo_\bu_\bb_\bl_\be_\b> &V,\n 336 _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation,\n 337 const std::shared_ptr\n-338 &_\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn = {});\n+338 &communication_pattern = {});\n 339\n 343 _\bD_\bE_\bA_\bL_\b__\bI_\bI_\b__\bD_\bE_\bP_\bR_\bE_\bC_\bA_\bT_\bE_\bD\n 344 void\n _\b3_\b4_\b5 import(\n 346 const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bd_\bo_\bu_\bb_\bl_\be_\b> &V,\n 347 const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation,\n 348 const std::shared_ptr\n-349 &_\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn = {})\n+349 &communication_pattern = {})\n 350 {\n-351 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(V, operation, _\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn);\n+351 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(V, operation, communication_pattern);\n 352 }\n 353\n 369 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\n 370 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b)(const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index);\n 371\n 379 _\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n _\b3_\b8_\b0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b)(const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const;\n@@ -233,15 +233,15 @@\n 453 void\n 454 _\ba_\bd_\bd(const double a, const _\bV_\be_\bc_\bt_\bo_\br &V, const double b, const _\bV_\be_\bc_\bt_\bo_\br &W);\n 455\n 460 void\n 461 _\bs_\ba_\bd_\bd(const double s, const double a, const _\bV_\be_\bc_\bt_\bo_\br &V);\n 462\n 469 void\n-470 _\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br &_\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs);\n+470 _\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br &scaling_factors);\n 471\n 475 void\n 476 _\be_\bq_\bu(const double a, const _\bV_\be_\bc_\bt_\bo_\br &V);\n 477\n 481 bool\n 482 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo() const;\n 483\n@@ -284,31 +284,31 @@\n 624 Epetra_FEVector &\n 625 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br();\n 626\n 630 void\n 631 _\bp_\br_\bi_\bn_\bt(std::ostream &out,\n 632 const unsigned int precision = 3,\n 633 const bool scientific = true,\n-634 const bool _\ba_\bc_\br_\bo_\bs_\bs = true) const;\n+634 const bool across = true) const;\n 635\n 639 std::size_t\n 640 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn() const;\n 641\n _\b6_\b4_\b8 _\bD_\be_\bc_\bl_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\b0(_\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg);\n 649\n _\b6_\b5_\b5 _\bD_\be_\bc_\bl_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\b0(_\bE_\bx_\bc_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be_\bN_\bo_\bt_\bC_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bl_\be);\n 656\n 662 _\bD_\be_\bc_\bl_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\b1(_\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br,\n 663 int,\n-664 << \"An error with error number \" << _\ba_\br_\bg_\b1\n+664 << \"An error with error number \" << arg1\n _\b6_\b6_\b5 << \" occurred while calling a Trilinos function\");\n 666\n 667 private:\n 673 void\n-674 _\bc_\br_\be_\ba_\bt_\be_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bs_\bo_\bu_\br_\bc_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt,\n+674 _\bc_\br_\be_\ba_\bt_\be_\b__\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &source_index_set,\n 675 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm mpi_comm);\n 676\n _\b6_\b8_\b0 std::unique_ptr _\bv_\be_\bc_\bt_\bo_\br;\n 681\n _\b6_\b8_\b5 _\b:_\b:_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt _\bs_\bo_\bu_\br_\bc_\be_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs;\n 686\n _\b6_\b9_\b1 std::shared_ptr _\be_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn;\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__vector_8h_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__tpetra__vector_8h_source.html", "unified_diff": "@@ -299,39 +299,39 @@\n \n
    311
    \n
    316 Vector(const Vector &V);
    \n
    317
    \n \n \n
    323
    \n-\n+
    331 explicit Vector(const IndexSet &parallel_partitioner,
    \n
    332 const MPI_Comm communicator);
    \n
    333
    \n-\n-
    349 const IndexSet &ghost_entries,
    \n+
    348 explicit Vector(const IndexSet &locally_owned_entries,
    \n+
    349 const IndexSet &ghost_entries,
    \n
    350 const MPI_Comm communicator,
    \n-
    351 const bool vector_writable = false);
    \n+
    351 const bool vector_writable = false);
    \n
    352
    \n
    357 void
    \n \n
    359
    \n
    366 void
    \n-\n-
    368 const MPI_Comm communicator = MPI_COMM_WORLD,
    \n-
    369 const bool omit_zeroing_entries = false);
    \n+
    367 reinit(const IndexSet &parallel_partitioner,
    \n+
    368 const MPI_Comm communicator = MPI_COMM_WORLD,
    \n+
    369 const bool omit_zeroing_entries = false);
    \n
    370
    \n
    385 void
    \n-\n-\n-
    388 const MPI_Comm communicator = MPI_COMM_WORLD,
    \n-
    389 const bool vector_writable = false);
    \n+
    386 reinit(const IndexSet &locally_owned_entries,
    \n+
    387 const IndexSet &locally_relevant_or_ghost_entries,
    \n+
    388 const MPI_Comm communicator = MPI_COMM_WORLD,
    \n+
    389 const bool vector_writable = false);
    \n
    390
    \n
    395 void
    \n \n-
    397 const bool omit_zeroing_entries = false);
    \n+
    397 const bool omit_zeroing_entries = false);
    \n
    398
    \n
    414 virtual void
    \n
    \n
    415 swap(Vector &v) noexcept;
    \n
    416
    \n
    420 virtual void
    \n \n@@ -349,23 +349,23 @@\n
    471 operator=(const Number s);
    \n
    472
    \n
    481 void
    \n \n \n
    484 VectorOperation::values operation,
    \n
    485 const Teuchos::RCP<const Utilities::MPI::CommunicationPatternBase>
    \n-\n+
    486 &communication_pattern);
    \n
    487
    \n \n
    492 void
    \n \n \n
    495 VectorOperation::values operation,
    \n
    496 const std::shared_ptr<const Utilities::MPI::CommunicationPatternBase>
    \n-\n+
    497 &communication_pattern);
    \n
    498
    \n
    499 /*
    \n
    500 * Imports all the elements present in the vector's IndexSet from the
    \n
    501 * input vector @p V. VectorOperation::values @p operation is used to decide if
    \n
    502 * the elements in @p V should be added to the current vector or replace the
    \n
    503 * current elements.
    \n
    504 */
    \n@@ -375,17 +375,17 @@\n
    508
    \n \n
    513 void
    \n
    \n
    514 import(const ReadWriteVector<Number> &V,
    \n
    515 VectorOperation::values operation,
    \n
    516 std::shared_ptr<const Utilities::MPI::CommunicationPatternBase>
    \n-\n+
    517 communication_pattern = {})
    \n
    518 {
    \n-\n+
    519 import_elements(V, operation, communication_pattern);
    \n
    520 }
    \n
    \n
    521
    \n \n
    \n
    538 operator()(const size_type index);
    \n
    539
    \n@@ -447,15 +447,15 @@\n
    662 void
    \n
    \n
    663 set(const size_type n_elements,
    \n
    664 const size_type *indices,
    \n
    665 const Number *values);
    \n
    666
    \n
    673 void
    \n-\n+
    674 scale(const Vector<Number, MemorySpace> &scaling_factors);
    \n
    675
    \n
    679 void
    \n
    680 equ(const Number a, const Vector<Number, MemorySpace> &V);
    \n
    681
    \n
    685 bool
    \n
    686 all_zero() const;
    \n
    687
    \n@@ -529,15 +529,15 @@\n
    925 Teuchos::RCP<TpetraTypes::VectorType<Number, MemorySpace>>
    \n \n
    927
    \n
    931 void
    \n
    932 print(std::ostream &out,
    \n
    933 const unsigned int precision = 3,
    \n
    934 const bool scientific = true,
    \n-
    935 const bool across = true) const;
    \n+
    935 const bool across = true) const;
    \n
    936
    \n
    940 std::size_t
    \n \n
    942
    \n \n
    947 mpi_comm() const;
    \n
    948
    \n@@ -552,20 +552,20 @@\n
    971 */
    \n \n \n
    974 size_type,
    \n
    975 size_type,
    \n
    976 size_type,
    \n
    977 size_type,
    \n-
    978 << "You are trying to access element " << arg1
    \n+
    978 << "You are trying to access element " << arg1
    \n
    979 << " of a distributed vector, but this element is not stored "
    \n-
    980 << "on the current processor. Note: There are " << arg2
    \n+
    980 << "on the current processor. Note: There are " << arg2
    \n
    981 << " elements stored "
    \n-
    982 << "on the current processor from within the range [" << arg3 << ','
    \n-
    983 << arg4 << "] but Trilinos vectors need not store contiguous "
    \n+
    982 << "on the current processor from within the range [" << arg3 << ','
    \n+
    983 << arg4 << "] but Trilinos vectors need not store contiguous "
    \n
    984 << "ranges on each processor, and not every element in "
    \n
    985 << "this range may in fact be stored locally."
    \n
    986 << "\\n\\n"
    \n
    987 << "A common source for this kind of problem is that you "
    \n
    988 << "are passing a 'fully distributed' vector into a function "
    \n
    989 << "that needs read access to vector elements that correspond "
    \n
    990 << "to degrees of freedom on ghost cells (or at least to "
    \n@@ -579,20 +579,20 @@\n
    1003 "must be provided. These index sets must be "
    \n
    1004 "provided either when the vector is initialized "
    \n
    1005 "or when compress is called. See the documentation "
    \n
    1006 "of compress() for more information.");
    \n
    1007
    \n \n
    1014 int,
    \n-
    1015 << "An error with error number " << arg1
    \n+
    1015 << "An error with error number " << arg1
    \n
    1016 << " occurred while calling a Trilinos function");
    \n
    1017
    \n
    1018 private:
    \n
    1024 void
    \n-\n+
    1025 create_tpetra_comm_pattern(const IndexSet &source_index_set,
    \n
    1026 const MPI_Comm mpi_comm);
    \n
    1027
    \n \n
    1033
    \n \n
    1043
    \n
    1047 Teuchos::RCP<TpetraTypes::VectorType<Number, MemorySpace>> vector;
    \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -201,39 +201,39 @@\n _\b3_\b1_\b0 _\bV_\be_\bc_\bt_\bo_\br();\n 311\n _\b3_\b1_\b6 _\bV_\be_\bc_\bt_\bo_\br(const _\bV_\be_\bc_\bt_\bo_\br &V);\n 317\n _\b3_\b2_\b1 _\bV_\be_\bc_\bt_\bo_\br(\n 322 const Teuchos::RCP<_\bT_\bp_\be_\bt_\br_\ba_\bT_\by_\bp_\be_\bs_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bT_\by_\bp_\be_\b<_\bN_\bu_\bm_\bb_\be_\br_\b,_\b _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b>> V);\n 323\n-_\b3_\b3_\b1 explicit _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br,\n+_\b3_\b3_\b1 explicit _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioner,\n 332 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator);\n 333\n-_\b3_\b4_\b8 explicit _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bn_\bt_\br_\bi_\be_\bs,\n-349 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bg_\bh_\bo_\bs_\bt_\b__\be_\bn_\bt_\br_\bi_\be_\bs,\n+_\b3_\b4_\b8 explicit _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &locally_owned_entries,\n+349 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost_entries,\n 350 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator,\n-351 const bool _\bv_\be_\bc_\bt_\bo_\br_\b__\bw_\br_\bi_\bt_\ba_\bb_\bl_\be = false);\n+351 const bool vector_writable = false);\n 352\n 357 void\n _\b3_\b5_\b8 _\bc_\bl_\be_\ba_\br();\n 359\n 366 void\n-_\b3_\b6_\b7 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br,\n-368 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD,\n-369 const bool _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs = false);\n+_\b3_\b6_\b7 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioner,\n+368 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = MPI_COMM_WORLD,\n+369 const bool omit_zeroing_entries = false);\n 370\n 385 void\n-_\b3_\b8_\b6 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bn_\bt_\br_\bi_\be_\bs,\n-387 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\br_\be_\bl_\be_\bv_\ba_\bn_\bt_\b__\bo_\br_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bn_\bt_\br_\bi_\be_\bs,\n-388 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD,\n-389 const bool _\bv_\be_\bc_\bt_\bo_\br_\b__\bw_\br_\bi_\bt_\ba_\bb_\bl_\be = false);\n+_\b3_\b8_\b6 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &locally_owned_entries,\n+387 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &locally_relevant_or_ghost_entries,\n+388 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = MPI_COMM_WORLD,\n+389 const bool vector_writable = false);\n 390\n 395 void\n _\b3_\b9_\b6 _\br_\be_\bi_\bn_\bi_\bt(const _\bV_\be_\bc_\bt_\bo_\br_\b<_\bN_\bu_\bm_\bb_\be_\br_\b,_\b _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b> &V,\n-397 const bool _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs = false);\n+397 const bool omit_zeroing_entries = false);\n 398\n 414 virtual void\n _\b4_\b1_\b5 _\bs_\bw_\ba_\bp(_\bV_\be_\bc_\bt_\bo_\br &v) noexcept;\n 416\n 420 virtual void\n _\b4_\b2_\b1 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo(\n 422 const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw_\b<_\bc_\bo_\bn_\bs_\bt_\b _\bt_\by_\bp_\be_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bd_\bo_\bf_\b__\bi_\bn_\bd_\be_\bx_\b> &indices,\n@@ -250,23 +250,23 @@\n _\b4_\b7_\b1 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=(const Number s);\n 472\n 481 void\n _\b4_\b8_\b2 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(\n 483 const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bN_\bu_\bm_\bb_\be_\br_\b> &V,\n 484 _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation,\n 485 const Teuchos::RCP\n-486 &_\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn);\n+486 &communication_pattern);\n 487\n 491 _\bD_\bE_\bA_\bL_\b__\bI_\bI_\b__\bD_\bE_\bP_\bR_\bE_\bC_\bA_\bT_\bE_\bD\n 492 void\n _\b4_\b9_\b3 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(\n 494 const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bN_\bu_\bm_\bb_\be_\br_\b> &V,\n 495 _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation,\n 496 const std::shared_ptr\n-497 &_\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn);\n+497 &communication_pattern);\n 498\n 499 /*\n 500 * Imports all the elements present in the vector's IndexSet from the\n 501 * input vector @p V. VectorOperation::values @p operation is used to decide\n if\n 502 * the elements in @p V should be added to the current vector or replace the\n 503 * current elements.\n@@ -276,17 +276,17 @@\n 507 _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation);\n 508\n 512 _\bD_\bE_\bA_\bL_\b__\bI_\bI_\b__\bD_\bE_\bP_\bR_\bE_\bC_\bA_\bT_\bE_\bD\n 513 void\n _\b5_\b1_\b4 import(const _\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bN_\bu_\bm_\bb_\be_\br_\b> &V,\n 515 _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation,\n 516 std::shared_ptr\n-517 _\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn = {})\n+517 communication_pattern = {})\n 518 {\n-519 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(V, operation, _\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn);\n+519 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(V, operation, communication_pattern);\n 520 }\n 521\n 537 _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\n _\b5_\b3_\b8 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b)(const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index);\n 539\n 547 Number\n _\b5_\b4_\b8 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b)(const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const;\n@@ -341,15 +341,15 @@\n 655\n 662 void\n _\b6_\b6_\b3 _\bs_\be_\bt(const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements,\n 664 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be *indices,\n 665 const Number *values);\n 666\n 673 void\n-_\b6_\b7_\b4 _\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br_\b<_\bN_\bu_\bm_\bb_\be_\br_\b,_\b _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b> &_\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs);\n+_\b6_\b7_\b4 _\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br_\b<_\bN_\bu_\bm_\bb_\be_\br_\b,_\b _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b> &scaling_factors);\n 675\n 679 void\n _\b6_\b8_\b0 _\be_\bq_\bu(const Number a, const _\bV_\be_\bc_\bt_\bo_\br_\b<_\bN_\bu_\bm_\bb_\be_\br_\b,_\b _\bM_\be_\bm_\bo_\br_\by_\bS_\bp_\ba_\bc_\be_\b> &V);\n 681\n 685 bool\n _\b6_\b8_\b6 _\ba_\bl_\bl_\b__\bz_\be_\br_\bo() const;\n 687\n@@ -421,15 +421,15 @@\n 925 Teuchos::RCP>\n _\b9_\b2_\b6 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\br_\bc_\bp();\n 927\n 931 void\n _\b9_\b3_\b2 _\bp_\br_\bi_\bn_\bt(std::ostream &out,\n 933 const unsigned int precision = 3,\n 934 const bool scientific = true,\n-935 const bool _\ba_\bc_\br_\bo_\bs_\bs = true) const;\n+935 const bool across = true) const;\n 936\n 940 std::size_t\n _\b9_\b4_\b1 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn() const;\n 942\n 946 _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n _\b9_\b4_\b7 _\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm() const;\n 948\n@@ -444,20 +444,20 @@\n 971 */\n 972 _\bD_\be_\bc_\bl_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\b4(\n 973 _\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt,\n 974 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be,\n 975 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be,\n 976 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be,\n 977 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be,\n-978 << \"You are trying to access element \" << _\ba_\br_\bg_\b1\n+978 << \"You are trying to access element \" << arg1\n 979 << \" of a distributed vector, but this element is not stored \"\n-980 << \"on the current processor. Note: There are \" << _\ba_\br_\bg_\b2\n+980 << \"on the current processor. Note: There are \" << arg2\n 981 << \" elements stored \"\n-982 << \"on the current processor from within the range [\" << _\ba_\br_\bg_\b3 << ','\n-983 << _\ba_\br_\bg_\b4 << \"] but Trilinos vectors need not store contiguous \"\n+982 << \"on the current processor from within the range [\" << arg3 << ','\n+983 << arg4 << \"] but Trilinos vectors need not store contiguous \"\n 984 << \"ranges on each processor, and not every element in \"\n 985 << \"this range may in fact be stored locally.\"\n 986 << \"\\n\\n\"\n 987 << \"A common source for this kind of problem is that you \"\n 988 << \"are passing a 'fully distributed' vector into a function \"\n 989 << \"that needs read access to vector elements that correspond \"\n 990 << \"to degrees of freedom on ghost cells (or at least to \"\n@@ -471,20 +471,20 @@\n 1003 \"must be provided. These index sets must be \"\n 1004 \"provided either when the vector is initialized \"\n 1005 \"or when compress is called. See the documentation \"\n _\b1_\b0_\b0_\b6 \"of compress() for more information.\");\n 1007\n 1013 _\bD_\be_\bc_\bl_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\b1(_\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br,\n 1014 int,\n-1015 << \"An error with error number \" << _\ba_\br_\bg_\b1\n+1015 << \"An error with error number \" << arg1\n _\b1_\b0_\b1_\b6 << \" occurred while calling a Trilinos function\");\n 1017\n 1018 private:\n 1024 void\n-_\b1_\b0_\b2_\b5 _\bc_\br_\be_\ba_\bt_\be_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bs_\bo_\bu_\br_\bc_\be_\b__\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt,\n+_\b1_\b0_\b2_\b5 _\bc_\br_\be_\ba_\bt_\be_\b__\bt_\bp_\be_\bt_\br_\ba_\b__\bc_\bo_\bm_\bm_\b__\bp_\ba_\bt_\bt_\be_\br_\bn(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &source_index_set,\n 1026 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm _\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm);\n 1027\n _\b1_\b0_\b3_\b2 bool _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd;\n 1033\n _\b1_\b0_\b4_\b2 bool _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt;\n 1043\n _\b1_\b0_\b4_\b7 Teuchos::RCP> _\bv_\be_\bc_\bt_\bo_\br;\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__vector_8cc_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__vector_8cc_source.html", "unified_diff": "@@ -196,15 +196,15 @@\n
    88
    \n
    89
    \n
    \n
    90 Vector::Vector(const IndexSet &parallel_partitioning,
    \n
    91 const MPI_Comm communicator)
    \n
    92 : Vector()
    \n
    93 {
    \n-
    94 reinit(parallel_partitioning, communicator);
    \n+
    94 reinit(parallel_partitioning, communicator);
    \n
    95 }
    \n
    \n
    96
    \n
    97
    \n
    98
    \n
    \n \n@@ -232,23 +232,23 @@\n
    118
    \n
    \n
    119 Vector::Vector(const IndexSet &parallel_partitioner,
    \n
    120 const Vector &v,
    \n
    121 const MPI_Comm communicator)
    \n
    122 : Vector()
    \n
    123 {
    \n-\n+
    124 AssertThrow(parallel_partitioner.size() ==
    \n
    125 static_cast<size_type>(
    \n \n-\n+
    127 ExcDimensionMismatch(parallel_partitioner.size(),
    \n \n
    129 v.vector->Map())));
    \n
    130
    \n
    131 vector = std::make_unique<Epetra_FEVector>(
    \n-
    132 parallel_partitioner.make_trilinos_map(communicator, true));
    \n+
    132 parallel_partitioner.make_trilinos_map(communicator, true));
    \n
    133 reinit(v, false, true);
    \n
    134 }
    \n
    \n
    135
    \n
    136
    \n
    137
    \n
    \n@@ -265,37 +265,37 @@\n
    147
    \n
    148 void
    \n
    \n \n
    150 {
    \n
    151 // When we clear the vector, reset the pointer and generate an empty
    \n
    152 // vector.
    \n-
    153 Epetra_Map map(0, 0, Epetra_MpiComm(MPI_COMM_SELF));
    \n+
    153 Epetra_Map map(0, 0, Epetra_MpiComm(MPI_COMM_SELF));
    \n
    154
    \n
    155 has_ghosts = false;
    \n
    156 vector = std::make_unique<Epetra_FEVector>(map);
    \n-\n+
    157 last_action = Zero;
    \n
    158 }
    \n
    \n
    159
    \n
    160
    \n
    161
    \n
    162 void
    \n
    \n
    163 Vector::reinit(const IndexSet &parallel_partitioner,
    \n
    164 const MPI_Comm communicator,
    \n
    165 const bool /*omit_zeroing_entries*/)
    \n
    166 {
    \n
    167 nonlocal_vector.reset();
    \n
    168
    \n
    169 const bool overlapping =
    \n-
    170 !parallel_partitioner.is_ascending_and_one_to_one(communicator);
    \n+
    170 !parallel_partitioner.is_ascending_and_one_to_one(communicator);
    \n
    171
    \n
    172 Epetra_Map map =
    \n-
    173 parallel_partitioner.make_trilinos_map(communicator, overlapping);
    \n+
    173 parallel_partitioner.make_trilinos_map(communicator, overlapping);
    \n
    174
    \n
    175 vector = std::make_unique<Epetra_FEVector>(map);
    \n
    176
    \n
    177 has_ghosts = vector->Map().UniqueGIDs() == false;
    \n
    178
    \n
    179 // If the IndexSets are overlapping, we don't really know
    \n
    180 // which process owns what. So we decide that no process
    \n@@ -303,24 +303,24 @@\n
    182 // the locally owned elements is not allowed.
    \n
    183 if (has_ghosts)
    \n
    184 {
    \n \n \n
    187 }
    \n
    188 else
    \n-\n+
    189 owned_elements = parallel_partitioner;
    \n
    190
    \n
    191# ifdef DEBUG
    \n-\n+
    192 const size_type n_elements_global =
    \n \n
    194
    \n-\n+
    195 Assert(has_ghosts || n_elements_global == size(), ExcInternalError());
    \n
    196# endif
    \n
    197
    \n-\n+
    198 last_action = Zero;
    \n
    199 }
    \n
    \n
    200
    \n
    201
    \n
    202
    \n
    203 void
    \n
    \n@@ -329,80 +329,80 @@\n
    206 const bool allow_different_maps)
    \n
    207 {
    \n
    208 nonlocal_vector.reset();
    \n
    209
    \n
    210 // In case we do not allow to have different maps, this call means that
    \n
    211 // we have to reset the vector. So clear the vector, initialize our map
    \n
    212 // with the map in v, and generate the vector.
    \n-
    213 if (allow_different_maps == false)
    \n+
    213 if (allow_different_maps == false)
    \n
    214 {
    \n
    215 // check equality for MPI communicators: We can only choose the fast
    \n
    216 // version in case the underlying Epetra_MpiComm object is the same,
    \n
    217 // otherwise we might access an MPI_Comm object that has been
    \n
    218 // deleted
    \n-
    219 const Epetra_MpiComm *my_comm =
    \n+
    219 const Epetra_MpiComm *my_comm =
    \n
    220 dynamic_cast<const Epetra_MpiComm *>(&vector->Comm());
    \n-
    221 const Epetra_MpiComm *v_comm =
    \n+
    221 const Epetra_MpiComm *v_comm =
    \n
    222 dynamic_cast<const Epetra_MpiComm *>(&v.vector->Comm());
    \n-
    223 const bool same_communicators =
    \n-
    224 my_comm != nullptr && v_comm != nullptr &&
    \n-
    225 my_comm->DataPtr() == v_comm->DataPtr();
    \n-
    226 if (!same_communicators ||
    \n+
    223 const bool same_communicators =
    \n+
    224 my_comm != nullptr && v_comm != nullptr &&
    \n+
    225 my_comm->DataPtr() == v_comm->DataPtr();
    \n+
    226 if (!same_communicators ||
    \n
    227 vector->Map().SameAs(v.vector->Map()) == false)
    \n
    228 {
    \n
    229 vector = std::make_unique<Epetra_FEVector>(v.vector->Map());
    \n \n-\n+
    231 last_action = Zero;
    \n \n
    233 }
    \n-
    234 else if (omit_zeroing_entries == false)
    \n+
    234 else if (omit_zeroing_entries == false)
    \n
    235 {
    \n
    236 // old and new vectors have exactly the same map, i.e. size and
    \n
    237 // parallel distribution
    \n-
    238 int ierr;
    \n-
    239 ierr = vector->GlobalAssemble(last_action);
    \n-
    240 (void)ierr;
    \n-\n+
    238 int ierr;
    \n+
    239 ierr = vector->GlobalAssemble(last_action);
    \n+
    240 (void)ierr;
    \n+
    241 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n
    242
    \n-
    243 ierr = vector->PutScalar(0.0);
    \n-\n+
    243 ierr = vector->PutScalar(0.0);
    \n+
    244 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n
    245
    \n-\n+
    246 last_action = Zero;
    \n
    247 }
    \n
    248 }
    \n
    249
    \n
    250 // Otherwise, we have to check that the two vectors are already of the
    \n
    251 // same size, create an object for the data exchange and then insert all
    \n
    252 // the data. The first assertion is only a check whether the user knows
    \n
    253 // what they are doing.
    \n
    254 else
    \n
    255 {
    \n-\n+
    256 Assert(omit_zeroing_entries == false,
    \n \n
    258 "It is not possible to exchange data with the "
    \n
    259 "option 'omit_zeroing_entries' set, which would not write "
    \n
    260 "elements."));
    \n
    261
    \n
    262 AssertThrow(size() == v.size(),
    \n \n
    264
    \n-
    265 Epetra_Import data_exchange(vector->Map(), v.vector->Map());
    \n+
    265 Epetra_Import data_exchange(vector->Map(), v.vector->Map());
    \n
    266
    \n-
    267 const int ierr = vector->Import(*v.vector, data_exchange, Insert);
    \n-\n+
    267 const int ierr = vector->Import(*v.vector, data_exchange, Insert);
    \n+
    268 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    269
    \n-\n+
    270 last_action = Insert;
    \n
    271 }
    \n
    272# ifdef DEBUG
    \n-
    273 const Epetra_MpiComm *comm_ptr =
    \n+
    273 const Epetra_MpiComm *comm_ptr =
    \n
    274 dynamic_cast<const Epetra_MpiComm *>(&(v.vector->Comm()));
    \n-
    275 Assert(comm_ptr != nullptr, ExcInternalError());
    \n-\n-\n-\n+
    275 Assert(comm_ptr != nullptr, ExcInternalError());
    \n+
    276 const size_type n_elements_global =
    \n+
    277 Utilities::MPI::sum(owned_elements.n_elements(), comm_ptr->Comm());
    \n+
    278 Assert(has_ghosts || n_elements_global == size(), ExcInternalError());
    \n
    279# endif
    \n
    280 }
    \n
    \n
    281
    \n
    282
    \n
    283
    \n
    284 void
    \n@@ -417,155 +417,155 @@\n
    292 // we have to reset the vector. So clear the vector, initialize our map
    \n
    293 // with the map in v, and generate the vector.
    \n
    294 if (v.n_blocks() == 0)
    \n
    295 return;
    \n
    296
    \n
    297 // create a vector that holds all the elements contained in the block
    \n
    298 // vector. need to manually create an Epetra_Map.
    \n-
    299 size_type n_elements = 0, added_elements = 0, block_offset = 0;
    \n+
    299 size_type n_elements = 0, added_elements = 0, block_offset = 0;
    \n
    300 for (size_type block = 0; block < v.n_blocks(); ++block)
    \n
    301 n_elements += v.block(block).vector->Map().NumMyElements();
    \n-
    302 std::vector<TrilinosWrappers::types::int_type> global_ids(n_elements, -1);
    \n+
    302 std::vector<TrilinosWrappers::types::int_type> global_ids(n_elements, -1);
    \n
    303 for (size_type block = 0; block < v.n_blocks(); ++block)
    \n
    304 {
    \n-\n+
    305 TrilinosWrappers::types::int_type *glob_elements =
    \n \n
    307 v.block(block).trilinos_partitioner());
    \n-
    308 size_type vector_size = v.block(block).vector->Map().NumMyElements();
    \n-
    309 for (size_type i = 0; i < vector_size; ++i)
    \n-\n+
    308 size_type vector_size = v.block(block).vector->Map().NumMyElements();
    \n+
    309 for (size_type i = 0; i < vector_size; ++i)
    \n+
    310 global_ids[added_elements++] = glob_elements[i] + block_offset;
    \n
    311 owned_elements.add_indices(v.block(block).owned_elements,
    \n-\n-
    313 block_offset += v.block(block).size();
    \n+
    312 block_offset);
    \n+
    313 block_offset += v.block(block).size();
    \n
    314 }
    \n
    315
    \n-
    316 Assert(n_elements == added_elements, ExcInternalError());
    \n-
    317 Epetra_Map new_map(v.size(),
    \n+
    316 Assert(n_elements == added_elements, ExcInternalError());
    \n+
    317 Epetra_Map new_map(v.size(),
    \n
    318 n_elements,
    \n-
    319 global_ids.data(),
    \n+
    319 global_ids.data(),
    \n
    320 0,
    \n
    321 v.block(0).trilinos_partitioner().Comm());
    \n
    322
    \n-
    323 auto actual_vec = std::make_unique<Epetra_FEVector>(new_map);
    \n+
    323 auto actual_vec = std::make_unique<Epetra_FEVector>(new_map);
    \n
    324
    \n
    325 TrilinosScalar *entries = (*actual_vec)[0];
    \n
    326 for (size_type block = 0; block < v.n_blocks(); ++block)
    \n
    327 {
    \n
    328 v.block(block).trilinos_vector().ExtractCopy(entries, 0);
    \n
    329 entries += v.block(block).vector->Map().NumMyElements();
    \n
    330 }
    \n
    331
    \n
    332 if (import_data == true)
    \n
    333 {
    \n \n-
    335 *actual_vec)) == v.size(),
    \n+
    335 *actual_vec)) == v.size(),
    \n \n-
    337 *actual_vec),
    \n+
    337 *actual_vec),
    \n
    338 v.size()));
    \n
    339
    \n-
    340 Epetra_Import data_exchange(vector->Map(), actual_vec->Map());
    \n+
    340 Epetra_Import data_exchange(vector->Map(), actual_vec->Map());
    \n
    341
    \n-
    342 const int ierr = vector->Import(*actual_vec, data_exchange, Insert);
    \n-\n+
    342 const int ierr = vector->Import(*actual_vec, data_exchange, Insert);
    \n+
    343 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    344
    \n-\n+
    345 last_action = Insert;
    \n
    346 }
    \n
    347 else
    \n-
    348 vector = std::move(actual_vec);
    \n+
    348 vector = std::move(actual_vec);
    \n
    349# ifdef DEBUG
    \n-
    350 const Epetra_MpiComm *comm_ptr =
    \n+
    350 const Epetra_MpiComm *comm_ptr =
    \n
    351 dynamic_cast<const Epetra_MpiComm *>(&(vector->Comm()));
    \n-
    352 Assert(comm_ptr != nullptr, ExcInternalError());
    \n-\n-\n+
    352 Assert(comm_ptr != nullptr, ExcInternalError());
    \n+
    353 const size_type n_elements_global =
    \n+
    354 Utilities::MPI::sum(owned_elements.n_elements(), comm_ptr->Comm());
    \n
    355
    \n-\n+
    356 Assert(has_ghosts || n_elements_global == size(), ExcInternalError());
    \n
    357# endif
    \n
    358 }
    \n
    \n
    359
    \n
    360
    \n
    361
    \n
    362 void
    \n
    \n
    363 Vector::reinit(const IndexSet &locally_owned_entries,
    \n
    364 const IndexSet &ghost_entries,
    \n
    365 const MPI_Comm communicator,
    \n
    366 const bool vector_writable)
    \n
    367 {
    \n
    368 nonlocal_vector.reset();
    \n-\n-
    370 if (vector_writable == false)
    \n+
    369 owned_elements = locally_owned_entries;
    \n+
    370 if (vector_writable == false)
    \n
    371 {
    \n-\n-\n+
    372 IndexSet parallel_partitioner = locally_owned_entries;
    \n+
    373 parallel_partitioner.add_indices(ghost_entries);
    \n
    374 Epetra_Map map =
    \n-
    375 parallel_partitioner.make_trilinos_map(communicator, true);
    \n+
    375 parallel_partitioner.make_trilinos_map(communicator, true);
    \n
    376 vector = std::make_unique<Epetra_FEVector>(map);
    \n
    377 }
    \n
    378 else
    \n
    379 {
    \n
    380 Epetra_Map map =
    \n-
    381 locally_owned_entries.make_trilinos_map(communicator, true);
    \n+
    381 locally_owned_entries.make_trilinos_map(communicator, true);
    \n
    382 Assert(map.IsOneToOne(),
    \n
    383 ExcMessage("A writable vector must not have ghost entries in "
    \n
    384 "its parallel partitioning"));
    \n
    385
    \n
    386 if (vector->Map().SameAs(map) == false)
    \n
    387 vector = std::make_unique<Epetra_FEVector>(map);
    \n
    388 else
    \n
    389 {
    \n-
    390 const int ierr = vector->PutScalar(0.);
    \n-
    391 (void)ierr;
    \n-\n+
    390 const int ierr = vector->PutScalar(0.);
    \n+
    391 (void)ierr;
    \n+
    392 Assert(ierr == 0, ExcTrilinosError(ierr));
    \n
    393 }
    \n
    394
    \n-\n-\n+
    395 IndexSet nonlocal_entries(ghost_entries);
    \n+
    396 nonlocal_entries.subtract_set(locally_owned_entries);
    \n
    397 if (Utilities::MPI::n_mpi_processes(communicator) > 1)
    \n
    398 {
    \n-
    399 Epetra_Map nonlocal_map =
    \n-
    400 nonlocal_entries.make_trilinos_map(communicator, true);
    \n+
    399 Epetra_Map nonlocal_map =
    \n+
    400 nonlocal_entries.make_trilinos_map(communicator, true);
    \n \n-
    402 std::make_unique<Epetra_MultiVector>(nonlocal_map, 1);
    \n+
    402 std::make_unique<Epetra_MultiVector>(nonlocal_map, 1);
    \n
    403 }
    \n
    404 }
    \n
    405
    \n
    406 has_ghosts = vector->Map().UniqueGIDs() == false;
    \n
    407
    \n-\n+
    408 last_action = Zero;
    \n
    409
    \n
    410# ifdef DEBUG
    \n-\n+
    411 const size_type n_elements_global =
    \n \n
    413
    \n-\n+
    414 Assert(has_ghosts || n_elements_global == size(), ExcInternalError());
    \n
    415# endif
    \n
    416 }
    \n
    \n
    417
    \n
    418
    \n
    419
    \n
    420 void
    \n
    \n \n
    422 const std::shared_ptr<const Utilities::MPI::Partitioner> &partitioner,
    \n
    423 const bool make_ghosted,
    \n
    424 const bool vector_writable)
    \n
    425 {
    \n-
    426 if (make_ghosted)
    \n+
    426 if (make_ghosted)
    \n
    427 {
    \n
    428 Assert(partitioner->ghost_indices_initialized(),
    \n
    429 ExcMessage("You asked to create a ghosted vector, but the "
    \n
    430 "partitioner does not provide ghost indices."));
    \n
    431
    \n
    432 this->reinit(partitioner->locally_owned_range(),
    \n
    433 partitioner->ghost_indices(),
    \n
    434 partitioner->get_mpi_communicator(),
    \n-\n+
    435 vector_writable);
    \n
    436 }
    \n
    437 else
    \n
    438 {
    \n
    439 this->reinit(partitioner->locally_owned_range(),
    \n
    440 partitioner->get_mpi_communicator());
    \n
    441 }
    \n
    442 }
    \n@@ -578,20 +578,20 @@\n \n
    448 {
    \n
    449 Assert(vector.get() != nullptr,
    \n
    450 ExcMessage("Vector is not constructed properly."));
    \n
    451
    \n
    452 // check equality for MPI communicators to avoid accessing a possibly
    \n
    453 // invalid MPI_Comm object
    \n-
    454 const Epetra_MpiComm *my_comm =
    \n+
    454 const Epetra_MpiComm *my_comm =
    \n
    455 dynamic_cast<const Epetra_MpiComm *>(&vector->Comm());
    \n-
    456 const Epetra_MpiComm *v_comm =
    \n+
    456 const Epetra_MpiComm *v_comm =
    \n
    457 dynamic_cast<const Epetra_MpiComm *>(&v.vector->Comm());
    \n-
    458 const bool same_communicators = my_comm != nullptr && v_comm != nullptr &&
    \n-
    459 my_comm->DataPtr() == v_comm->DataPtr();
    \n+
    458 const bool same_communicators = my_comm != nullptr && v_comm != nullptr &&
    \n+
    459 my_comm->DataPtr() == v_comm->DataPtr();
    \n
    460 // Need to ask MPI whether the communicators are the same. We would like
    \n
    461 // to use the following checks but currently we cannot make sure the
    \n
    462 // memory of my_comm is not stale from some MPI_Comm_free
    \n
    463 // somewhere. This can happen when a vector lives in GrowingVectorMemory
    \n
    464 // data structures. Thus, the following code is commented out.
    \n
    465 //
    \n
    466 // if (my_comm != nullptr &&
    \n@@ -610,21 +610,21 @@\n
    479 // same_communicators = true;
    \n
    480 // }
    \n
    481
    \n
    482 // distinguish three cases. First case: both vectors have the same
    \n
    483 // layout (just need to copy the local data, not reset the memory and
    \n
    484 // the underlying Epetra_Map). The third case means that we have to
    \n
    485 // rebuild the calling vector.
    \n-
    486 if (same_communicators && v.vector->Map().SameAs(vector->Map()))
    \n+
    486 if (same_communicators && v.vector->Map().SameAs(vector->Map()))
    \n
    487 {
    \n
    488 *vector = *v.vector;
    \n
    489 if (v.nonlocal_vector.get() != nullptr)
    \n \n
    491 std::make_unique<Epetra_MultiVector>(v.nonlocal_vector->Map(), 1);
    \n-\n+
    492 last_action = Zero;
    \n
    493 }
    \n
    494 // Second case: vectors have the same global
    \n
    495 // size, but different parallel layouts (and
    \n
    496 // one of them a one-to-one mapping). Then we
    \n
    497 // can call the import/export functionality.
    \n
    498 else if (size() == v.size() &&
    \n
    499 (v.vector->Map().UniqueGIDs() || vector->Map().UniqueGIDs()))
    \n@@ -632,15 +632,15 @@\n
    501 reinit(v, false, true);
    \n
    502 }
    \n
    503 // Third case: Vectors do not have the same
    \n
    504 // size.
    \n
    505 else
    \n
    506 {
    \n
    507 vector = std::make_unique<Epetra_FEVector>(*v.vector);
    \n-\n+
    508 last_action = Zero;
    \n \n \n
    511 }
    \n
    512
    \n
    513 if (v.nonlocal_vector.get() != nullptr)
    \n \n
    515 std::make_unique<Epetra_MultiVector>(v.nonlocal_vector->Map(), 1);
    \n@@ -697,20 +697,20 @@\n
    560 ExcMessage("The input vector has overlapping data, "
    \n
    561 "which is not allowed."));
    \n
    562
    \n
    563 if (vector->Map().SameAs(m.trilinos_matrix().ColMap()) == false)
    \n
    564 vector =
    \n
    565 std::make_unique<Epetra_FEVector>(m.trilinos_matrix().ColMap());
    \n
    566
    \n-
    567 Epetra_Import data_exchange(vector->Map(), v.vector->Map());
    \n-
    568 const int ierr = vector->Import(*v.vector, data_exchange, Insert);
    \n+
    567 Epetra_Import data_exchange(vector->Map(), v.vector->Map());
    \n+
    568 const int ierr = vector->Import(*v.vector, data_exchange, Insert);
    \n
    569
    \n-\n+
    570 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    571
    \n-\n+
    572 last_action = Insert;
    \n
    573 }
    \n
    \n
    574
    \n
    575
    \n
    576 void
    \n
    \n \n@@ -725,20 +725,20 @@\n
    586 // this class will (hopefully) be retired eventually.
    \n \n \n
    589
    \n
    590 if (operation == VectorOperation::insert)
    \n
    591 {
    \n
    592 for (const auto idx : this->locally_owned_elements())
    \n-
    593 (*this)[idx] = rwv[idx];
    \n+
    593 (*this)[idx] = rwv[idx];
    \n
    594 }
    \n
    595 else if (operation == VectorOperation::add)
    \n
    596 {
    \n
    597 for (const auto idx : this->locally_owned_elements())
    \n-
    598 (*this)[idx] += rwv[idx];
    \n+
    598 (*this)[idx] += rwv[idx];
    \n
    599 }
    \n
    600 else
    \n \n
    602
    \n
    603 this->compress(operation);
    \n
    604 }
    \n
    \n@@ -758,93 +758,93 @@\n
    617
    \n
    618 // Select which mode to send to Trilinos. Note that we use last_action if
    \n
    619 // available and ignore what the user tells us to detect wrongly mixed
    \n
    620 // operations. Typically given_last_action is only used on machines that
    \n
    621 // do not execute an operation (because they have no own cells for
    \n
    622 // example).
    \n
    623 Epetra_CombineMode mode = last_action;
    \n-
    624 if (last_action == Zero)
    \n+
    624 if (last_action == Zero)
    \n
    625 {
    \n-\n-
    627 mode = Add;
    \n-\n-
    629 mode = Insert;
    \n+
    626 if (given_last_action == VectorOperation::add)
    \n+
    627 mode = Add;
    \n+
    628 else if (given_last_action == VectorOperation::insert)
    \n+
    629 mode = Insert;
    \n
    630 else
    \n
    631 Assert(
    \n
    632 false,
    \n \n
    634 "compress() can only be called with VectorOperation add, insert, or unknown"));
    \n
    635 }
    \n
    636 else
    \n
    637 {
    \n
    638 Assert(
    \n-
    639 ((last_action == Add) &&
    \n-\n-
    641 ((last_action == Insert) &&
    \n-\n+
    639 ((last_action == Add) &&
    \n+
    640 (given_last_action == VectorOperation::add)) ||
    \n+
    641 ((last_action == Insert) &&
    \n+
    642 (given_last_action == VectorOperation::insert)),
    \n \n
    644 "The last operation on the Vector and the given last action in the compress() call do not agree!"));
    \n
    645 }
    \n
    646
    \n
    647
    \n
    648# ifdef DEBUG
    \n
    649 // check that every process has decided to use the same mode. This will
    \n
    650 // otherwise result in undefined behavior in the call to
    \n
    651 // GlobalAssemble().
    \n-
    652 const double double_mode = mode;
    \n-
    653 const Epetra_MpiComm *comm_ptr =
    \n+
    652 const double double_mode = mode;
    \n+
    653 const Epetra_MpiComm *comm_ptr =
    \n
    654 dynamic_cast<const Epetra_MpiComm *>(&(trilinos_partitioner().Comm()));
    \n-
    655 Assert(comm_ptr != nullptr, ExcInternalError());
    \n+
    655 Assert(comm_ptr != nullptr, ExcInternalError());
    \n
    656
    \n-\n-\n-
    659 Assert(result.max == result.min,
    \n+
    657 const Utilities::MPI::MinMaxAvg result =
    \n+
    658 Utilities::MPI::min_max_avg(double_mode, comm_ptr->GetMpiComm());
    \n+
    659 Assert(result.max == result.min,
    \n \n
    661 "Not all processors agree whether the last operation on "
    \n
    662 "this vector was an addition or a set operation. This will "
    \n
    663 "prevent the compress() operation from succeeding."));
    \n
    664
    \n
    665# endif
    \n
    666
    \n
    667 // Now pass over the information about what we did last to the vector.
    \n-
    668 if (nonlocal_vector.get() == nullptr || mode != Add)
    \n+
    668 if (nonlocal_vector.get() == nullptr || mode != Add)
    \n
    669 {
    \n-
    670 const auto ierr = vector->GlobalAssemble(mode);
    \n-\n+
    670 const auto ierr = vector->GlobalAssemble(mode);
    \n+
    671 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    672 }
    \n
    673 else
    \n
    674 {
    \n-
    675 Epetra_Export exporter(nonlocal_vector->Map(), vector->Map());
    \n+
    675 Epetra_Export exporter(nonlocal_vector->Map(), vector->Map());
    \n
    676
    \n-
    677 int ierr = vector->Export(*nonlocal_vector, exporter, mode);
    \n-\n+
    677 int ierr = vector->Export(*nonlocal_vector, exporter, mode);
    \n+
    678 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    679
    \n-
    680 ierr = nonlocal_vector->PutScalar(0.);
    \n-\n+
    680 ierr = nonlocal_vector->PutScalar(0.);
    \n+
    681 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    682 }
    \n-\n+
    683 last_action = Zero;
    \n
    684
    \n
    685 compressed = true;
    \n
    686 }
    \n
    \n
    687
    \n
    688
    \n
    689
    \n \n
    \n
    691 Vector::operator()(const size_type index) const
    \n
    692 {
    \n
    693 // Extract local indices in the vector.
    \n-\n+
    694 TrilinosWrappers::types::int_type trilinos_i = vector->Map().LID(
    \n
    695 static_cast<TrilinosWrappers::types::int_type>(index));
    \n
    696 TrilinosScalar value = 0.;
    \n
    697
    \n
    698 // If the element is not present on the current processor, we can't
    \n
    699 // continue. This is the main difference to the el() function.
    \n-
    700 if (trilinos_i == -1)
    \n+
    700 if (trilinos_i == -1)
    \n
    701 {
    \n
    702# ifndef DEAL_II_WITH_64BIT_INDICES
    \n
    703 Assert(false,
    \n \n
    705 vector->Map().NumMyElements(),
    \n
    706 vector->Map().MinMyGID(),
    \n
    707 vector->Map().MaxMyGID()));
    \n@@ -853,52 +853,52 @@\n \n
    711 vector->Map().NumMyElements(),
    \n
    712 vector->Map().MinMyGID64(),
    \n
    713 vector->Map().MaxMyGID64()));
    \n
    714# endif
    \n
    715 }
    \n
    716 else
    \n-
    717 value = (*vector)[0][trilinos_i];
    \n+
    717 value = (*vector)[0][trilinos_i];
    \n
    718
    \n
    719 return value;
    \n
    720 }
    \n
    \n
    721
    \n
    722
    \n
    723
    \n
    724 void
    \n
    \n
    725 Vector::add(const Vector &v, const bool allow_different_maps)
    \n
    726 {
    \n-
    727 if (allow_different_maps == false)
    \n+
    727 if (allow_different_maps == false)
    \n
    728 *this += v;
    \n
    729 else
    \n
    730 {
    \n \n
    732 AssertThrow(size() == v.size(),
    \n \n
    734
    \n
    735# if DEAL_II_TRILINOS_VERSION_GTE(11, 11, 0)
    \n-
    736 Epetra_Import data_exchange(vector->Map(), v.vector->Map());
    \n-
    737 int ierr =
    \n-\n-\n-\n+
    736 Epetra_Import data_exchange(vector->Map(), v.vector->Map());
    \n+
    737 int ierr =
    \n+
    738 vector->Import(*v.vector, data_exchange, Epetra_AddLocalAlso);
    \n+
    739 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n+
    740 last_action = Add;
    \n
    741# else
    \n
    742 // In versions older than 11.11 the Import function is broken for
    \n
    743 // adding Hence, we provide a workaround in this case
    \n
    744
    \n-
    745 Epetra_MultiVector dummy(vector->Map(), 1, false);
    \n-
    746 Epetra_Import data_exchange(dummy.Map(), v.vector->Map());
    \n+
    745 Epetra_MultiVector dummy(vector->Map(), 1, false);
    \n+
    746 Epetra_Import data_exchange(dummy.Map(), v.vector->Map());
    \n
    747
    \n-
    748 int ierr = dummy.Import(*v.vector, data_exchange, Insert);
    \n-\n+
    748 int ierr = dummy.Import(*v.vector, data_exchange, Insert);
    \n+
    749 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    750
    \n-
    751 ierr = vector->Update(1.0, dummy, 1.0);
    \n-\n+
    751 ierr = vector->Update(1.0, dummy, 1.0);
    \n+
    752 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    753# endif
    \n
    754 }
    \n
    755 }
    \n
    \n
    756
    \n
    757
    \n
    758
    \n@@ -906,16 +906,16 @@\n
    \n \n
    761 {
    \n
    762 Assert(size() == v.size(), ExcDimensionMismatch(size(), v.size()));
    \n
    763 if (vector->Map().NumMyElements() != v.vector->Map().NumMyElements())
    \n
    764 return false;
    \n
    765
    \n-
    766 size_type vector_size = vector->Map().NumMyElements();
    \n-
    767 for (size_type i = 0; i < vector_size; ++i)
    \n+
    766 size_type vector_size = vector->Map().NumMyElements();
    \n+
    767 for (size_type i = 0; i < vector_size; ++i)
    \n
    768 if ((*(v.vector))[0][i] != (*vector)[0][i])
    \n
    769 return false;
    \n
    770
    \n
    771 return true;
    \n
    772 }
    \n
    \n
    773
    \n@@ -935,108 +935,108 @@\n
    785
    \n
    786 bool
    \n
    \n \n
    788 {
    \n
    789 // get a representation of the vector and
    \n
    790 // loop over all the elements
    \n-
    791 TrilinosScalar *start_ptr = (*vector)[0];
    \n-
    792 const TrilinosScalar *ptr = start_ptr,
    \n-
    793 *eptr = start_ptr + vector->Map().NumMyElements();
    \n+
    791 TrilinosScalar *start_ptr = (*vector)[0];
    \n+
    792 const TrilinosScalar *ptr = start_ptr,
    \n+
    793 *eptr = start_ptr + vector->Map().NumMyElements();
    \n
    794 unsigned int flag = 0;
    \n-
    795 while (ptr != eptr)
    \n+
    795 while (ptr != eptr)
    \n
    796 {
    \n
    797 if (*ptr != 0)
    \n
    798 {
    \n
    799 flag = 1;
    \n
    800 break;
    \n
    801 }
    \n
    802 ++ptr;
    \n
    803 }
    \n
    804
    \n
    805 // in parallel, check that the vector
    \n
    806 // is zero on _all_ processors.
    \n
    807 const Epetra_MpiComm *mpi_comm =
    \n
    808 dynamic_cast<const Epetra_MpiComm *>(&vector->Map().Comm());
    \n
    809 Assert(mpi_comm != nullptr, ExcInternalError());
    \n-
    810 unsigned int num_nonzero = Utilities::MPI::sum(flag, mpi_comm->Comm());
    \n-
    811 return num_nonzero == 0;
    \n+
    810 unsigned int num_nonzero = Utilities::MPI::sum(flag, mpi_comm->Comm());
    \n+
    811 return num_nonzero == 0;
    \n
    812 }
    \n
    \n
    813
    \n
    814
    \n
    815
    \n
    816 bool
    \n
    \n \n
    818 {
    \n
    819 // get a representation of the vector and
    \n
    820 // loop over all the elements
    \n-
    821 TrilinosScalar *start_ptr = (*vector)[0];
    \n-
    822 const TrilinosScalar *ptr = start_ptr,
    \n-
    823 *eptr = start_ptr + vector->Map().NumMyElements();
    \n+
    821 TrilinosScalar *start_ptr = (*vector)[0];
    \n+
    822 const TrilinosScalar *ptr = start_ptr,
    \n+
    823 *eptr = start_ptr + vector->Map().NumMyElements();
    \n
    824 unsigned int flag = 0;
    \n-
    825 while (ptr != eptr)
    \n+
    825 while (ptr != eptr)
    \n
    826 {
    \n
    827 if (*ptr < 0.0)
    \n
    828 {
    \n
    829 flag = 1;
    \n
    830 break;
    \n
    831 }
    \n
    832 ++ptr;
    \n
    833 }
    \n
    834
    \n
    835 // in parallel, check that the vector
    \n
    836 // is zero on _all_ processors.
    \n-
    837 const auto max_n_negative =
    \n+
    837 const auto max_n_negative =
    \n \n-
    839 return max_n_negative == 0;
    \n+
    839 return max_n_negative == 0;
    \n
    840 }
    \n
    \n
    841
    \n
    842
    \n
    843
    \n
    844 void
    \n
    \n
    845 Vector::print(std::ostream &out,
    \n
    846 const unsigned int precision,
    \n
    847 const bool scientific,
    \n
    848 const bool across) const
    \n
    849 {
    \n
    850 AssertThrow(out.fail() == false, ExcIO());
    \n-
    851 boost::io::ios_flags_saver restore_flags(out);
    \n+
    851 boost::io::ios_flags_saver restore_flags(out);
    \n
    852
    \n
    853
    \n
    854 out.precision(precision);
    \n
    855 if (scientific)
    \n
    856 out.setf(std::ios::scientific, std::ios::floatfield);
    \n
    857 else
    \n
    858 out.setf(std::ios::fixed, std::ios::floatfield);
    \n
    859
    \n-
    860 size_type vector_size = vector->Map().NumMyElements();
    \n-
    861 if (size() != vector_size)
    \n+
    860 size_type vector_size = vector->Map().NumMyElements();
    \n+
    861 if (size() != vector_size)
    \n
    862 {
    \n-
    863 auto global_id = [&](const size_type index) {
    \n+
    863 auto global_id = [&](const size_type index) {
    \n
    864 return gid(vector->Map(), index);
    \n
    865 };
    \n
    866 out << "size:" << size()
    \n
    867 << " locally_owned_size:" << vector->Map().NumMyElements() << " :"
    \n
    868 << std::endl;
    \n-
    869 for (size_type i = 0; i < vector_size; ++i)
    \n-
    870 out << "[" << global_id(i) << "]: " << (*(vector))[0][i]
    \n+
    869 for (size_type i = 0; i < vector_size; ++i)
    \n+
    870 out << "[" << global_id(i) << "]: " << (*(vector))[0][i]
    \n
    871 << std::endl;
    \n
    872 }
    \n
    873 else
    \n
    874 {
    \n
    875 TrilinosScalar *val;
    \n-\n-
    877 int ierr = vector->ExtractView(&val, &leading_dimension);
    \n+
    876 int leading_dimension;
    \n+
    877 int ierr = vector->ExtractView(&val, &leading_dimension);
    \n
    878
    \n-\n-
    880 if (across)
    \n+
    879 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n+
    880 if (across)
    \n
    881 for (size_type i = 0; i < size(); ++i)
    \n
    882 out << static_cast<double>(val[i]) << ' ';
    \n
    883 else
    \n
    884 for (size_type i = 0; i < size(); ++i)
    \n
    885 out << static_cast<double>(val[i]) << std::endl;
    \n
    886 out << std::endl;
    \n
    887 }
    \n@@ -1087,17 +1087,21 @@\n \n
    928
    \n
    929#endif // DEAL_II_WITH_TRILINOS
    \n
    virtual size_type size() const override
    \n
    unsigned int n_blocks() const
    \n
    BlockType & block(const unsigned int i)
    \n \n+
    bool is_ascending_and_one_to_one(const MPI_Comm communicator) const
    \n+
    size_type size() const
    Definition index_set.h:1776
    \n
    size_type n_elements() const
    Definition index_set.h:1934
    \n
    void set_size(const size_type size)
    Definition index_set.h:1764
    \n+
    Epetra_Map make_trilinos_map(const MPI_Comm communicator=MPI_COMM_WORLD, const bool overlapping=false) const
    \n
    void clear()
    Definition index_set.h:1752
    \n+
    void subtract_set(const IndexSet &other)
    Definition index_set.cc:473
    \n
    void add_indices(const ForwardIterator &begin, const ForwardIterator &end)
    Definition index_set.h:1831
    \n \n
    size_type size() const override
    \n
    const IndexSet & get_stored_elements() const
    \n \n \n \n@@ -1160,14 +1164,16 @@\n
    unsigned int n_mpi_processes(const MPI_Comm mpi_communicator)
    Definition mpi.cc:92
    \n
    T max(const T &t, const MPI_Comm mpi_communicator)
    \n
    MinMaxAvg min_max_avg(const double my_value, const MPI_Comm mpi_communicator)
    Definition mpi.cc:66
    \n \n \n \n \n+\n+\n \n \n \n \n \n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -99,15 +99,15 @@\n 87\n 88\n 89\n _\b9_\b0 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioning,\n 91 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator)\n 92 : _\bV_\be_\bc_\bt_\bo_\br()\n 93 {\n-94 _\br_\be_\bi_\bn_\bi_\bt(_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg, communicator);\n+94 _\br_\be_\bi_\bn_\bi_\bt(parallel_partitioning, communicator);\n 95 }\n 96\n 97\n 98\n _\b9_\b9 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br(const _\bV_\be_\bc_\bt_\bo_\br &v)\n 100 : _\bV_\be_\bc_\bt_\bo_\br()\n 101 {\n@@ -129,23 +129,23 @@\n 117\n 118\n _\b1_\b1_\b9 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioner,\n 120 const _\bV_\be_\bc_\bt_\bo_\br &v,\n 121 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator)\n 122 : _\bV_\be_\bc_\bt_\bo_\br()\n 123 {\n-124 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br.size() ==\n+124 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(parallel_partitioner._\bs_\bi_\bz_\be() ==\n 125 static_cast<_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be>(\n 126 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bn_\b__\bg_\bl_\bo_\bb_\ba_\bl_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(v._\bv_\be_\bc_\bt_\bo_\br->Map())),\n-127 _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br.size(),\n+127 _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(parallel_partitioner._\bs_\bi_\bz_\be(),\n 128 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bn_\b__\bg_\bl_\bo_\bb_\ba_\bl_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(\n 129 v._\bv_\be_\bc_\bt_\bo_\br->Map())));\n 130\n 131 _\bv_\be_\bc_\bt_\bo_\br = std::make_unique(\n-132 _\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br.make_trilinos_map(communicator, true));\n+132 parallel_partitioner._\bm_\ba_\bk_\be_\b__\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bp(communicator, true));\n 133 _\br_\be_\bi_\bn_\bi_\bt(v, false, true);\n 134 }\n 135\n 136\n 137\n _\b1_\b3_\b8 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local,\n 139 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost,\n@@ -158,35 +158,35 @@\n 146\n 147\n 148 void\n _\b1_\b4_\b9 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bc_\bl_\be_\ba_\br()\n 150 {\n 151 // When we clear the vector, reset the pointer and generate an empty\n 152 // vector.\n-153 Epetra_Map map(0, 0, Epetra_MpiComm(_\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bS_\bE_\bL_\bF));\n+153 Epetra_Map map(0, 0, Epetra_MpiComm(MPI_COMM_SELF));\n 154\n 155 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs = false;\n 156 _\bv_\be_\bc_\bt_\bo_\br = std::make_unique(map);\n-157 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bZ_\be_\br_\bo;\n+157 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Zero;\n 158 }\n 159\n 160\n 161\n 162 void\n _\b1_\b6_\b3 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioner,\n 164 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator,\n 165 const bool /*omit_zeroing_entries*/)\n 166 {\n 167 _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br.reset();\n 168\n 169 const bool _\bo_\bv_\be_\br_\bl_\ba_\bp_\bp_\bi_\bn_\bg =\n-170 !_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br.is_ascending_and_one_to_one(communicator);\n+170 !parallel_partitioner._\bi_\bs_\b__\ba_\bs_\bc_\be_\bn_\bd_\bi_\bn_\bg_\b__\ba_\bn_\bd_\b__\bo_\bn_\be_\b__\bt_\bo_\b__\bo_\bn_\be(communicator);\n 171\n 172 Epetra_Map map =\n-173 _\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br.make_trilinos_map(communicator, _\bo_\bv_\be_\br_\bl_\ba_\bp_\bp_\bi_\bn_\bg);\n+173 parallel_partitioner._\bm_\ba_\bk_\be_\b__\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bp(communicator, _\bo_\bv_\be_\br_\bl_\ba_\bp_\bp_\bi_\bn_\bg);\n 174\n 175 _\bv_\be_\bc_\bt_\bo_\br = std::make_unique(map);\n 176\n 177 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs = _\bv_\be_\bc_\bt_\bo_\br->Map().UniqueGIDs() == false;\n 178\n 179 // If the IndexSets are overlapping, we don't really know\n 180 // which process owns what. So we decide that no process\n@@ -194,104 +194,104 @@\n 182 // the locally owned elements is not allowed.\n 183 if (_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs)\n 184 {\n 185 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs._\bc_\bl_\be_\ba_\br();\n 186 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs._\bs_\be_\bt_\b__\bs_\bi_\bz_\be(0);\n 187 }\n 188 else\n-189 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = _\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br;\n+189 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = parallel_partitioner;\n 190\n 191# ifdef DEBUG\n-192 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bg_\bl_\bo_\bb_\ba_\bl =\n+192 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements_global =\n 193 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(_\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), communicator);\n 194\n-195 _\bA_\bs_\bs_\be_\br_\bt(_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs || _\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bg_\bl_\bo_\bb_\ba_\bl == _\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+195 _\bA_\bs_\bs_\be_\br_\bt(_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs || n_elements_global == _\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n 196# endif\n 197\n-198 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bZ_\be_\br_\bo;\n+198 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Zero;\n 199 }\n 200\n 201\n 202\n 203 void\n _\b2_\b0_\b4 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(const _\bV_\be_\bc_\bt_\bo_\br &v,\n 205 const bool omit_zeroing_entries,\n 206 const bool allow_different_maps)\n 207 {\n 208 _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br.reset();\n 209\n 210 // In case we do not allow to have different maps, this call means that\n 211 // we have to reset the vector. So clear the vector, initialize our map\n 212 // with the map in v, and generate the vector.\n-213 if (_\ba_\bl_\bl_\bo_\bw_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\b__\bm_\ba_\bp_\bs == false)\n+213 if (allow_different_maps == false)\n 214 {\n 215 // check equality for MPI communicators: We can only choose the fast\n 216 // version in case the underlying Epetra_MpiComm object is the same,\n 217 // otherwise we might access an MPI_Comm object that has been\n 218 // deleted\n-219 const Epetra_MpiComm *_\bm_\by_\b__\bc_\bo_\bm_\bm =\n+219 const Epetra_MpiComm *my_comm =\n 220 dynamic_cast(&_\bv_\be_\bc_\bt_\bo_\br->Comm());\n-221 const Epetra_MpiComm *_\bv_\b__\bc_\bo_\bm_\bm =\n+221 const Epetra_MpiComm *v_comm =\n 222 dynamic_cast(&v._\bv_\be_\bc_\bt_\bo_\br->Comm());\n-223 const bool _\bs_\ba_\bm_\be_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br_\bs =\n-224 _\bm_\by_\b__\bc_\bo_\bm_\bm != nullptr && _\bv_\b__\bc_\bo_\bm_\bm != nullptr &&\n-225 _\bm_\by_\b__\bc_\bo_\bm_\bm->DataPtr() == _\bv_\b__\bc_\bo_\bm_\bm->DataPtr();\n-226 if (!_\bs_\ba_\bm_\be_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br_\bs ||\n+223 const bool same_communicators =\n+224 my_comm != nullptr && v_comm != nullptr &&\n+225 my_comm->DataPtr() == v_comm->DataPtr();\n+226 if (!same_communicators ||\n 227 _\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(v._\bv_\be_\bc_\bt_\bo_\br->Map()) == false)\n 228 {\n 229 _\bv_\be_\bc_\bt_\bo_\br = std::make_unique(v._\bv_\be_\bc_\bt_\bo_\br->Map());\n 230 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs = v._\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs;\n-231 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bZ_\be_\br_\bo;\n+231 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Zero;\n 232 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = v._\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs;\n 233 }\n-234 else if (_\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs == false)\n+234 else if (omit_zeroing_entries == false)\n 235 {\n 236 // old and new vectors have exactly the same map, i.e. size and\n 237 // parallel distribution\n-238 int _\bi_\be_\br_\br;\n-239 _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->GlobalAssemble(_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn);\n-240 (void)_\bi_\be_\br_\br;\n-241 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+238 int ierr;\n+239 ierr = _\bv_\be_\bc_\bt_\bo_\br->GlobalAssemble(_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn);\n+240 (void)ierr;\n+241 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 242\n-243 _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->PutScalar(0.0);\n-244 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+243 ierr = _\bv_\be_\bc_\bt_\bo_\br->PutScalar(0.0);\n+244 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 245\n-246 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bZ_\be_\br_\bo;\n+246 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Zero;\n 247 }\n 248 }\n 249\n 250 // Otherwise, we have to check that the two vectors are already of the\n 251 // same size, create an object for the data exchange and then insert all\n 252 // the data. The first assertion is only a check whether the user knows\n 253 // what they are doing.\n 254 else\n 255 {\n-256 _\bA_\bs_\bs_\be_\br_\bt(_\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs == false,\n+256 _\bA_\bs_\bs_\be_\br_\bt(omit_zeroing_entries == false,\n 257 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\n 258 \"It is not possible to exchange data with the \"\n 259 \"option 'omit_zeroing_entries' set, which would not write \"\n 260 \"elements.\"));\n 261\n 262 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bs_\bi_\bz_\be() == v._\bs_\bi_\bz_\be(),\n 263 _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), v._\bs_\bi_\bz_\be()));\n 264\n-265 Epetra_Import _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br->Map(), v._\bv_\be_\bc_\bt_\bo_\br->Map());\n+265 Epetra_Import data_exchange(_\bv_\be_\bc_\bt_\bo_\br->Map(), v._\bv_\be_\bc_\bt_\bo_\br->Map());\n 266\n-267 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Import(*v._\bv_\be_\bc_\bt_\bo_\br, _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be, _\bI_\bn_\bs_\be_\br_\bt);\n-268 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+267 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Import(*v._\bv_\be_\bc_\bt_\bo_\br, data_exchange, Insert);\n+268 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 269\n-270 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bI_\bn_\bs_\be_\br_\bt;\n+270 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Insert;\n 271 }\n 272# ifdef DEBUG\n-273 const Epetra_MpiComm *_\bc_\bo_\bm_\bm_\b__\bp_\bt_\br =\n+273 const Epetra_MpiComm *comm_ptr =\n 274 dynamic_cast(&(v._\bv_\be_\bc_\bt_\bo_\br->Comm()));\n-275 _\bA_\bs_\bs_\be_\br_\bt(_\bc_\bo_\bm_\bm_\b__\bp_\bt_\br != nullptr, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-276 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bg_\bl_\bo_\bb_\ba_\bl =\n-277 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(_\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bc_\bo_\bm_\bm_\b__\bp_\bt_\br->Comm());\n-278 _\bA_\bs_\bs_\be_\br_\bt(_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs || _\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bg_\bl_\bo_\bb_\ba_\bl == _\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+275 _\bA_\bs_\bs_\be_\br_\bt(comm_ptr != nullptr, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+276 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements_global =\n+277 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(_\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), comm_ptr->Comm());\n+278 _\bA_\bs_\bs_\be_\br_\bt(_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs || n_elements_global == _\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n 279# endif\n 280 }\n 281\n 282\n 283\n 284 void\n _\b2_\b8_\b5 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(const _\bM_\bP_\bI_\b:_\b:_\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br &v, const bool import_data)\n@@ -304,151 +304,151 @@\n 292 // we have to reset the vector. So clear the vector, initialize our map\n 293 // with the map in v, and generate the vector.\n 294 if (v._\bn_\b__\bb_\bl_\bo_\bc_\bk_\bs() == 0)\n 295 return;\n 296\n 297 // create a vector that holds all the elements contained in the block\n 298 // vector. need to manually create an Epetra_Map.\n-299 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements = 0, _\ba_\bd_\bd_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = 0, _\bb_\bl_\bo_\bc_\bk_\b__\bo_\bf_\bf_\bs_\be_\bt = 0;\n+299 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements = 0, added_elements = 0, block_offset = 0;\n 300 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be block = 0; block < v._\bn_\b__\bb_\bl_\bo_\bc_\bk_\bs(); ++block)\n 301 n_elements += v._\bb_\bl_\bo_\bc_\bk(block).vector->Map().NumMyElements();\n-302 std::vector _\bg_\bl_\bo_\bb_\ba_\bl_\b__\bi_\bd_\bs(n_elements, -1);\n+302 std::vector global_ids(n_elements, -1);\n 303 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be block = 0; block < v._\bn_\b__\bb_\bl_\bo_\bc_\bk_\bs(); ++block)\n 304 {\n-305 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be *_\bg_\bl_\bo_\bb_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs =\n+305 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be *glob_elements =\n 306 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bm_\by_\b__\bg_\bl_\bo_\bb_\ba_\bl_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(\n 307 v._\bb_\bl_\bo_\bc_\bk(block).trilinos_partitioner());\n-308 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bv_\be_\bc_\bt_\bo_\br_\b__\bs_\bi_\bz_\be = v._\bb_\bl_\bo_\bc_\bk(block).vector->Map().NumMyElements();\n-309 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < _\bv_\be_\bc_\bt_\bo_\br_\b__\bs_\bi_\bz_\be; ++i)\n-310 _\bg_\bl_\bo_\bb_\ba_\bl_\b__\bi_\bd_\bs[_\ba_\bd_\bd_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs++] = _\bg_\bl_\bo_\bb_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs[i] + _\bb_\bl_\bo_\bc_\bk_\b__\bo_\bf_\bf_\bs_\be_\bt;\n+308 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be vector_size = v._\bb_\bl_\bo_\bc_\bk(block).vector->Map().NumMyElements();\n+309 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < vector_size; ++i)\n+310 global_ids[added_elements++] = glob_elements[i] + block_offset;\n 311 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs._\ba_\bd_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(v._\bb_\bl_\bo_\bc_\bk(block).owned_elements,\n-312 _\bb_\bl_\bo_\bc_\bk_\b__\bo_\bf_\bf_\bs_\be_\bt);\n-313 _\bb_\bl_\bo_\bc_\bk_\b__\bo_\bf_\bf_\bs_\be_\bt += v._\bb_\bl_\bo_\bc_\bk(block).size();\n+312 block_offset);\n+313 block_offset += v._\bb_\bl_\bo_\bc_\bk(block).size();\n 314 }\n 315\n-316 _\bA_\bs_\bs_\be_\br_\bt(n_elements == _\ba_\bd_\bd_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-317 Epetra_Map _\bn_\be_\bw_\b__\bm_\ba_\bp(v._\bs_\bi_\bz_\be(),\n+316 _\bA_\bs_\bs_\be_\br_\bt(n_elements == added_elements, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+317 Epetra_Map new_map(v._\bs_\bi_\bz_\be(),\n 318 n_elements,\n-319 _\bg_\bl_\bo_\bb_\ba_\bl_\b__\bi_\bd_\bs.data(),\n+319 global_ids.data(),\n 320 0,\n 321 v._\bb_\bl_\bo_\bc_\bk(0).trilinos_partitioner().Comm());\n 322\n-323 auto _\ba_\bc_\bt_\bu_\ba_\bl_\b__\bv_\be_\bc = std::make_unique(_\bn_\be_\bw_\b__\bm_\ba_\bp);\n+323 auto actual_vec = std::make_unique(new_map);\n 324\n 325 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *entries = (*actual_vec)[0];\n 326 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be block = 0; block < v._\bn_\b__\bb_\bl_\bo_\bc_\bk_\bs(); ++block)\n 327 {\n 328 v._\bb_\bl_\bo_\bc_\bk(block).trilinos_vector().ExtractCopy(entries, 0);\n 329 entries += v._\bb_\bl_\bo_\bc_\bk(block).vector->Map().NumMyElements();\n 330 }\n 331\n 332 if (import_data == true)\n 333 {\n 334 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(static_cast<_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be>(_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bl_\be_\bn_\bg_\bt_\bh(\n-335 *_\ba_\bc_\bt_\bu_\ba_\bl_\b__\bv_\be_\bc)) == v._\bs_\bi_\bz_\be(),\n+335 *actual_vec)) == v._\bs_\bi_\bz_\be(),\n 336 _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bg_\bl_\bo_\bb_\ba_\bl_\b__\bl_\be_\bn_\bg_\bt_\bh(\n-337 *_\ba_\bc_\bt_\bu_\ba_\bl_\b__\bv_\be_\bc),\n+337 *actual_vec),\n 338 v._\bs_\bi_\bz_\be()));\n 339\n-340 Epetra_Import _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br->Map(), _\ba_\bc_\bt_\bu_\ba_\bl_\b__\bv_\be_\bc->Map());\n+340 Epetra_Import data_exchange(_\bv_\be_\bc_\bt_\bo_\br->Map(), actual_vec->Map());\n 341\n-342 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Import(*_\ba_\bc_\bt_\bu_\ba_\bl_\b__\bv_\be_\bc, _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be, _\bI_\bn_\bs_\be_\br_\bt);\n-343 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+342 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Import(*actual_vec, data_exchange, Insert);\n+343 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 344\n-345 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bI_\bn_\bs_\be_\br_\bt;\n+345 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Insert;\n 346 }\n 347 else\n-348 _\bv_\be_\bc_\bt_\bo_\br = std::move(_\ba_\bc_\bt_\bu_\ba_\bl_\b__\bv_\be_\bc);\n+348 _\bv_\be_\bc_\bt_\bo_\br = std::move(actual_vec);\n 349# ifdef DEBUG\n-350 const Epetra_MpiComm *_\bc_\bo_\bm_\bm_\b__\bp_\bt_\br =\n+350 const Epetra_MpiComm *comm_ptr =\n 351 dynamic_cast(&(_\bv_\be_\bc_\bt_\bo_\br->Comm()));\n-352 _\bA_\bs_\bs_\be_\br_\bt(_\bc_\bo_\bm_\bm_\b__\bp_\bt_\br != nullptr, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-353 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bg_\bl_\bo_\bb_\ba_\bl =\n-354 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(_\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bc_\bo_\bm_\bm_\b__\bp_\bt_\br->Comm());\n+352 _\bA_\bs_\bs_\be_\br_\bt(comm_ptr != nullptr, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+353 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements_global =\n+354 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(_\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), comm_ptr->Comm());\n 355\n-356 _\bA_\bs_\bs_\be_\br_\bt(_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs || _\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bg_\bl_\bo_\bb_\ba_\bl == _\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+356 _\bA_\bs_\bs_\be_\br_\bt(_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs || n_elements_global == _\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n 357# endif\n 358 }\n 359\n 360\n 361\n 362 void\n _\b3_\b6_\b3 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &locally_owned_entries,\n 364 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost_entries,\n 365 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator,\n 366 const bool vector_writable)\n 367 {\n 368 _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br.reset();\n-369 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bn_\bt_\br_\bi_\be_\bs;\n-370 if (_\bv_\be_\bc_\bt_\bo_\br_\b__\bw_\br_\bi_\bt_\ba_\bb_\bl_\be == false)\n+369 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = locally_owned_entries;\n+370 if (vector_writable == false)\n 371 {\n-372 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt _\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br = _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bn_\bt_\br_\bi_\be_\bs;\n-373 _\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br._\ba_\bd_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(_\bg_\bh_\bo_\bs_\bt_\b__\be_\bn_\bt_\br_\bi_\be_\bs);\n+372 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt parallel_partitioner = locally_owned_entries;\n+373 parallel_partitioner._\ba_\bd_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs(ghost_entries);\n 374 Epetra_Map map =\n-375 _\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br.make_trilinos_map(communicator, true);\n+375 parallel_partitioner._\bm_\ba_\bk_\be_\b__\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bp(communicator, true);\n 376 _\bv_\be_\bc_\bt_\bo_\br = std::make_unique(map);\n 377 }\n 378 else\n 379 {\n 380 Epetra_Map map =\n-381 _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bn_\bt_\br_\bi_\be_\bs.make_trilinos_map(communicator, true);\n+381 locally_owned_entries._\bm_\ba_\bk_\be_\b__\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bp(communicator, true);\n 382 _\bA_\bs_\bs_\be_\br_\bt(map.IsOneToOne(),\n 383 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\"A writable vector must not have ghost entries in \"\n 384 \"its parallel partitioning\"));\n 385\n 386 if (_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(map) == false)\n 387 _\bv_\be_\bc_\bt_\bo_\br = std::make_unique(map);\n 388 else\n 389 {\n-390 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->PutScalar(0.);\n-391 (void)_\bi_\be_\br_\br;\n-392 _\bA_\bs_\bs_\be_\br_\bt(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+390 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->PutScalar(0.);\n+391 (void)ierr;\n+392 _\bA_\bs_\bs_\be_\br_\bt(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 393 }\n 394\n-395 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\be_\bn_\bt_\br_\bi_\be_\bs(_\bg_\bh_\bo_\bs_\bt_\b__\be_\bn_\bt_\br_\bi_\be_\bs);\n-396 _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\be_\bn_\bt_\br_\bi_\be_\bs.subtract_set(_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bn_\bt_\br_\bi_\be_\bs);\n+395 _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt nonlocal_entries(ghost_entries);\n+396 nonlocal_entries._\bs_\bu_\bb_\bt_\br_\ba_\bc_\bt_\b__\bs_\be_\bt(locally_owned_entries);\n 397 if (_\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bn_\b__\bm_\bp_\bi_\b__\bp_\br_\bo_\bc_\be_\bs_\bs_\be_\bs(communicator) > 1)\n 398 {\n-399 Epetra_Map _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bm_\ba_\bp =\n-400 _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\be_\bn_\bt_\br_\bi_\be_\bs.make_trilinos_map(communicator, true);\n+399 Epetra_Map nonlocal_map =\n+400 nonlocal_entries._\bm_\ba_\bk_\be_\b__\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bp(communicator, true);\n 401 _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br =\n-402 std::make_unique(_\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bm_\ba_\bp, 1);\n+402 std::make_unique(nonlocal_map, 1);\n 403 }\n 404 }\n 405\n 406 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs = _\bv_\be_\bc_\bt_\bo_\br->Map().UniqueGIDs() == false;\n 407\n-408 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bZ_\be_\br_\bo;\n+408 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Zero;\n 409\n 410# ifdef DEBUG\n-411 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bg_\bl_\bo_\bb_\ba_\bl =\n+411 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_elements_global =\n 412 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(_\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs._\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), communicator);\n 413\n-414 _\bA_\bs_\bs_\be_\br_\bt(_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs || _\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs_\b__\bg_\bl_\bo_\bb_\ba_\bl == _\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+414 _\bA_\bs_\bs_\be_\br_\bt(_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs || n_elements_global == _\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n 415# endif\n 416 }\n 417\n 418\n 419\n 420 void\n _\b4_\b2_\b1 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\bi_\bn_\bi_\bt(\n 422 const std::shared_ptr &partitioner,\n 423 const bool make_ghosted,\n 424 const bool vector_writable)\n 425 {\n-426 if (_\bm_\ba_\bk_\be_\b__\bg_\bh_\bo_\bs_\bt_\be_\bd)\n+426 if (make_ghosted)\n 427 {\n 428 _\bA_\bs_\bs_\be_\br_\bt(partitioner->ghost_indices_initialized(),\n 429 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\"You asked to create a ghosted vector, but the \"\n 430 \"partitioner does not provide ghost indices.\"));\n 431\n 432 this->_\br_\be_\bi_\bn_\bi_\bt(partitioner->locally_owned_range(),\n 433 partitioner->ghost_indices(),\n 434 partitioner->get_mpi_communicator(),\n-435 _\bv_\be_\bc_\bt_\bo_\br_\b__\bw_\br_\bi_\bt_\ba_\bb_\bl_\be);\n+435 vector_writable);\n 436 }\n 437 else\n 438 {\n 439 this->_\br_\be_\bi_\bn_\bi_\bt(partitioner->locally_owned_range(),\n 440 partitioner->get_mpi_communicator());\n 441 }\n 442 }\n@@ -459,20 +459,20 @@\n _\b4_\b4_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=(const _\bV_\be_\bc_\bt_\bo_\br &v)\n 448 {\n 449 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br.get() != nullptr,\n 450 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\"Vector is not constructed properly.\"));\n 451\n 452 // check equality for MPI communicators to avoid accessing a possibly\n 453 // invalid MPI_Comm object\n-454 const Epetra_MpiComm *_\bm_\by_\b__\bc_\bo_\bm_\bm =\n+454 const Epetra_MpiComm *my_comm =\n 455 dynamic_cast(&_\bv_\be_\bc_\bt_\bo_\br->Comm());\n-456 const Epetra_MpiComm *_\bv_\b__\bc_\bo_\bm_\bm =\n+456 const Epetra_MpiComm *v_comm =\n 457 dynamic_cast(&v._\bv_\be_\bc_\bt_\bo_\br->Comm());\n-458 const bool _\bs_\ba_\bm_\be_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br_\bs = _\bm_\by_\b__\bc_\bo_\bm_\bm != nullptr && _\bv_\b__\bc_\bo_\bm_\bm != nullptr &&\n-459 _\bm_\by_\b__\bc_\bo_\bm_\bm->DataPtr() == _\bv_\b__\bc_\bo_\bm_\bm->DataPtr();\n+458 const bool same_communicators = my_comm != nullptr && v_comm != nullptr &&\n+459 my_comm->DataPtr() == v_comm->DataPtr();\n 460 // Need to ask MPI whether the communicators are the same. We would like\n 461 // to use the following checks but currently we cannot make sure the\n 462 // memory of my_comm is not stale from some MPI_Comm_free\n 463 // somewhere. This can happen when a vector lives in GrowingVectorMemory\n 464 // data structures. Thus, the following code is commented out.\n 465 //\n 466 // if (my_comm != nullptr &&\n@@ -491,21 +491,21 @@\n 479 // same_communicators = true;\n 480 // }\n 481\n 482 // distinguish three cases. First case: both vectors have the same\n 483 // layout (just need to copy the local data, not reset the memory and\n 484 // the underlying Epetra_Map). The third case means that we have to\n 485 // rebuild the calling vector.\n-486 if (_\bs_\ba_\bm_\be_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br_\bs && v._\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(_\bv_\be_\bc_\bt_\bo_\br->Map()))\n+486 if (same_communicators && v._\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(_\bv_\be_\bc_\bt_\bo_\br->Map()))\n 487 {\n 488 *_\bv_\be_\bc_\bt_\bo_\br = *v._\bv_\be_\bc_\bt_\bo_\br;\n 489 if (v._\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br.get() != nullptr)\n 490 _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br =\n 491 std::make_unique(v._\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br->Map(), 1);\n-492 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bZ_\be_\br_\bo;\n+492 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Zero;\n 493 }\n 494 // Second case: vectors have the same global\n 495 // size, but different parallel layouts (and\n 496 // one of them a one-to-one mapping). Then we\n 497 // can call the import/export functionality.\n 498 else if (_\bs_\bi_\bz_\be() == v._\bs_\bi_\bz_\be() &&\n 499 (v._\bv_\be_\bc_\bt_\bo_\br->Map().UniqueGIDs() || _\bv_\be_\bc_\bt_\bo_\br->Map().UniqueGIDs()))\n@@ -513,15 +513,15 @@\n 501 _\br_\be_\bi_\bn_\bi_\bt(v, false, true);\n 502 }\n 503 // Third case: Vectors do not have the same\n 504 // size.\n 505 else\n 506 {\n 507 _\bv_\be_\bc_\bt_\bo_\br = std::make_unique(*v._\bv_\be_\bc_\bt_\bo_\br);\n-508 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bZ_\be_\br_\bo;\n+508 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Zero;\n 509 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs = v._\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\bs;\n 510 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = v._\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs;\n 511 }\n 512\n 513 if (v._\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br.get() != nullptr)\n 514 _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br =\n 515 std::make_unique(v._\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br->Map(), 1);\n@@ -573,20 +573,20 @@\n 560 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\"The input vector has overlapping data, \"\n 561 \"which is not allowed.\"));\n 562\n 563 if (_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(m._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bt_\br_\bi_\bx().ColMap()) == false)\n 564 _\bv_\be_\bc_\bt_\bo_\br =\n 565 std::make_unique(m._\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bt_\br_\bi_\bx().ColMap());\n 566\n-567 Epetra_Import _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br->Map(), v._\bv_\be_\bc_\bt_\bo_\br->Map());\n-568 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Import(*v._\bv_\be_\bc_\bt_\bo_\br, _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be, _\bI_\bn_\bs_\be_\br_\bt);\n+567 Epetra_Import data_exchange(_\bv_\be_\bc_\bt_\bo_\br->Map(), v._\bv_\be_\bc_\bt_\bo_\br->Map());\n+568 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Import(*v._\bv_\be_\bc_\bt_\bo_\br, data_exchange, Insert);\n 569\n-570 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+570 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 571\n-572 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bI_\bn_\bs_\be_\br_\bt;\n+572 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Insert;\n 573 }\n 574\n 575\n 576 void\n _\b5_\b7_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(const _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bd_\bo_\bu_\bb_\bl_\be_\b> &rwv,\n 578 const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation)\n 579 {\n@@ -599,20 +599,20 @@\n 586 // this class will (hopefully) be retired eventually.\n 587 _\bA_\bs_\bs_\be_\br_\bt(this->_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs() == rwv._\bg_\be_\bt_\b__\bs_\bt_\bo_\br_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(),\n 588 _\bE_\bx_\bc_\bN_\bo_\bt_\bI_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd());\n 589\n 590 if (operation == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bi_\bn_\bs_\be_\br_\bt)\n 591 {\n 592 for (const auto idx : this->_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs())\n-593 (*this)[idx] = _\br_\bw_\bv[idx];\n+593 (*this)[idx] = rwv[idx];\n 594 }\n 595 else if (operation == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\ba_\bd_\bd)\n 596 {\n 597 for (const auto idx : this->_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs())\n-598 (*this)[idx] += _\br_\bw_\bv[idx];\n+598 (*this)[idx] += rwv[idx];\n 599 }\n 600 else\n 601 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(false, _\bE_\bx_\bc_\bN_\bo_\bt_\bI_\bm_\bp_\bl_\be_\bm_\be_\bn_\bt_\be_\bd());\n 602\n 603 this->_\bc_\bo_\bm_\bp_\br_\be_\bs_\bs(operation);\n 604 }\n 605\n@@ -630,93 +630,93 @@\n 617\n 618 // Select which mode to send to Trilinos. Note that we use last_action if\n 619 // available and ignore what the user tells us to detect wrongly mixed\n 620 // operations. Typically given_last_action is only used on machines that\n 621 // do not execute an operation (because they have no own cells for\n 622 // example).\n 623 Epetra_CombineMode mode = _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn;\n-624 if (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bZ_\be_\br_\bo)\n+624 if (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == Zero)\n 625 {\n-626 if (_\bg_\bi_\bv_\be_\bn_\b__\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\ba_\bd_\bd)\n-627 mode = _\bA_\bd_\bd;\n-628 else if (_\bg_\bi_\bv_\be_\bn_\b__\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bi_\bn_\bs_\be_\br_\bt)\n-629 mode = _\bI_\bn_\bs_\be_\br_\bt;\n+626 if (given_last_action == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\ba_\bd_\bd)\n+627 mode = Add;\n+628 else if (given_last_action == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bi_\bn_\bs_\be_\br_\bt)\n+629 mode = Insert;\n 630 else\n 631 _\bA_\bs_\bs_\be_\br_\bt(\n 632 false,\n 633 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\n 634 \"compress() can only be called with VectorOperation add, insert, or\n unknown\"));\n 635 }\n 636 else\n 637 {\n 638 _\bA_\bs_\bs_\be_\br_\bt(\n-639 ((_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bA_\bd_\bd) &&\n-640 (_\bg_\bi_\bv_\be_\bn_\b__\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\ba_\bd_\bd)) ||\n-641 ((_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bI_\bn_\bs_\be_\br_\bt) &&\n-642 (_\bg_\bi_\bv_\be_\bn_\b__\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bi_\bn_\bs_\be_\br_\bt)),\n+639 ((_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == Add) &&\n+640 (given_last_action == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\ba_\bd_\bd)) ||\n+641 ((_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == Insert) &&\n+642 (given_last_action == _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bi_\bn_\bs_\be_\br_\bt)),\n 643 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\n 644 \"The last operation on the Vector and the given last action in the compress\n () call do not agree!\"));\n 645 }\n 646\n 647\n 648# ifdef DEBUG\n 649 // check that every process has decided to use the same mode. This will\n 650 // otherwise result in undefined behavior in the call to\n 651 // GlobalAssemble().\n-652 const double _\bd_\bo_\bu_\bb_\bl_\be_\b__\bm_\bo_\bd_\be = mode;\n-653 const Epetra_MpiComm *_\bc_\bo_\bm_\bm_\b__\bp_\bt_\br =\n+652 const double double_mode = mode;\n+653 const Epetra_MpiComm *comm_ptr =\n 654 dynamic_cast(&(_\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br().Comm()));\n-655 _\bA_\bs_\bs_\be_\br_\bt(_\bc_\bo_\bm_\bm_\b__\bp_\bt_\br != nullptr, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n+655 _\bA_\bs_\bs_\be_\br_\bt(comm_ptr != nullptr, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n 656\n-657 const _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bM_\bi_\bn_\bM_\ba_\bx_\bA_\bv_\bg _\br_\be_\bs_\bu_\bl_\bt =\n-658 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bm_\bi_\bn_\b__\bm_\ba_\bx_\b__\ba_\bv_\bg(_\bd_\bo_\bu_\bb_\bl_\be_\b__\bm_\bo_\bd_\be, _\bc_\bo_\bm_\bm_\b__\bp_\bt_\br->GetMpiComm());\n-659 _\bA_\bs_\bs_\be_\br_\bt(_\br_\be_\bs_\bu_\bl_\bt.max == _\br_\be_\bs_\bu_\bl_\bt.min,\n+657 const _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bM_\bi_\bn_\bM_\ba_\bx_\bA_\bv_\bg result =\n+658 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bm_\bi_\bn_\b__\bm_\ba_\bx_\b__\ba_\bv_\bg(double_mode, comm_ptr->GetMpiComm());\n+659 _\bA_\bs_\bs_\be_\br_\bt(result._\bm_\ba_\bx == result._\bm_\bi_\bn,\n 660 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\n 661 \"Not all processors agree whether the last operation on \"\n 662 \"this vector was an addition or a set operation. This will \"\n 663 \"prevent the compress() operation from succeeding.\"));\n 664\n 665# endif\n 666\n 667 // Now pass over the information about what we did last to the vector.\n-668 if (_\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br.get() == nullptr || mode != _\bA_\bd_\bd)\n+668 if (_\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br.get() == nullptr || mode != Add)\n 669 {\n-670 const auto _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->GlobalAssemble(mode);\n-671 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+670 const auto ierr = _\bv_\be_\bc_\bt_\bo_\br->GlobalAssemble(mode);\n+671 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 672 }\n 673 else\n 674 {\n-675 Epetra_Export _\be_\bx_\bp_\bo_\br_\bt_\be_\br(_\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br->Map(), _\bv_\be_\bc_\bt_\bo_\br->Map());\n+675 Epetra_Export exporter(_\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br->Map(), _\bv_\be_\bc_\bt_\bo_\br->Map());\n 676\n-677 int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Export(*_\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br, _\be_\bx_\bp_\bo_\br_\bt_\be_\br, mode);\n-678 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+677 int ierr = _\bv_\be_\bc_\bt_\bo_\br->Export(*_\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br, exporter, mode);\n+678 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 679\n-680 _\bi_\be_\br_\br = _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br->PutScalar(0.);\n-681 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+680 ierr = _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br->PutScalar(0.);\n+681 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 682 }\n-683 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bZ_\be_\br_\bo;\n+683 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Zero;\n 684\n 685 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd = true;\n 686 }\n 687\n 688\n 689\n 690 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n _\b6_\b9_\b1 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b)(const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) const\n 692 {\n 693 // Extract local indices in the vector.\n-694 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bi = _\bv_\be_\bc_\bt_\bo_\br->Map().LID(\n+694 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be trilinos_i = _\bv_\be_\bc_\bt_\bo_\br->Map().LID(\n 695 static_cast<_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be>(index));\n 696 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br value = 0.;\n 697\n 698 // If the element is not present on the current processor, we can't\n 699 // continue. This is the main difference to the el() function.\n-700 if (_\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bi == -1)\n+700 if (trilinos_i == -1)\n 701 {\n 702# ifndef DEAL_II_WITH_64BIT_INDICES\n 703 _\bA_\bs_\bs_\be_\br_\bt(false,\n 704 _\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt(index,\n 705 _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements(),\n 706 _\bv_\be_\bc_\bt_\bo_\br->Map().MinMyGID(),\n 707 _\bv_\be_\bc_\bt_\bo_\br->Map().MaxMyGID()));\n@@ -725,65 +725,65 @@\n 710 _\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt(index,\n 711 _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements(),\n 712 _\bv_\be_\bc_\bt_\bo_\br->Map().MinMyGID64(),\n 713 _\bv_\be_\bc_\bt_\bo_\br->Map().MaxMyGID64()));\n 714# endif\n 715 }\n 716 else\n-717 value = (*vector)[0][_\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bi];\n+717 value = (*vector)[0][trilinos_i];\n 718\n 719 return value;\n 720 }\n 721\n 722\n 723\n 724 void\n _\b7_\b2_\b5 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bd_\bd(const _\bV_\be_\bc_\bt_\bo_\br &v, const bool allow_different_maps)\n 726 {\n-727 if (_\ba_\bl_\bl_\bo_\bw_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\b__\bm_\ba_\bp_\bs == false)\n+727 if (allow_different_maps == false)\n 728 *this += v;\n 729 else\n 730 {\n 731 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 732 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bs_\bi_\bz_\be() == v._\bs_\bi_\bz_\be(),\n 733 _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), v._\bs_\bi_\bz_\be()));\n 734\n 735# if DEAL_II_TRILINOS_VERSION_GTE(11, 11, 0)\n-736 Epetra_Import _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be(_\bv_\be_\bc_\bt_\bo_\br->Map(), v._\bv_\be_\bc_\bt_\bo_\br->Map());\n-737 int _\bi_\be_\br_\br =\n-738 _\bv_\be_\bc_\bt_\bo_\br->Import(*v._\bv_\be_\bc_\bt_\bo_\br, _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be, _\bE_\bp_\be_\bt_\br_\ba_\b__\bA_\bd_\bd_\bL_\bo_\bc_\ba_\bl_\bA_\bl_\bs_\bo);\n-739 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-740 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bA_\bd_\bd;\n+736 Epetra_Import data_exchange(_\bv_\be_\bc_\bt_\bo_\br->Map(), v._\bv_\be_\bc_\bt_\bo_\br->Map());\n+737 int ierr =\n+738 _\bv_\be_\bc_\bt_\bo_\br->Import(*v._\bv_\be_\bc_\bt_\bo_\br, data_exchange, Epetra_AddLocalAlso);\n+739 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+740 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Add;\n 741# else\n 742 // In versions older than 11.11 the Import function is broken for\n 743 // adding Hence, we provide a workaround in this case\n 744\n-745 Epetra_MultiVector _\bd_\bu_\bm_\bm_\by(_\bv_\be_\bc_\bt_\bo_\br->Map(), 1, false);\n-746 Epetra_Import _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be(_\bd_\bu_\bm_\bm_\by.Map(), v._\bv_\be_\bc_\bt_\bo_\br->Map());\n+745 Epetra_MultiVector dummy(_\bv_\be_\bc_\bt_\bo_\br->Map(), 1, false);\n+746 Epetra_Import data_exchange(dummy.Map(), v._\bv_\be_\bc_\bt_\bo_\br->Map());\n 747\n-748 int _\bi_\be_\br_\br = _\bd_\bu_\bm_\bm_\by.Import(*v._\bv_\be_\bc_\bt_\bo_\br, _\bd_\ba_\bt_\ba_\b__\be_\bx_\bc_\bh_\ba_\bn_\bg_\be, _\bI_\bn_\bs_\be_\br_\bt);\n-749 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+748 int ierr = dummy.Import(*v._\bv_\be_\bc_\bt_\bo_\br, data_exchange, Insert);\n+749 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 750\n-751 _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(1.0, _\bd_\bu_\bm_\bm_\by, 1.0);\n-752 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+751 ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(1.0, dummy, 1.0);\n+752 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 753# endif\n 754 }\n 755 }\n 756\n 757\n 758\n 759 bool\n _\b7_\b6_\b0 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b=(const _\bV_\be_\bc_\bt_\bo_\br &v) const\n 761 {\n 762 _\bA_\bs_\bs_\be_\br_\bt(_\bs_\bi_\bz_\be() == v._\bs_\bi_\bz_\be(), _\bE_\bx_\bc_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn_\bM_\bi_\bs_\bm_\ba_\bt_\bc_\bh(_\bs_\bi_\bz_\be(), v._\bs_\bi_\bz_\be()));\n 763 if (_\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements() != v._\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements())\n 764 return false;\n 765\n-766 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bv_\be_\bc_\bt_\bo_\br_\b__\bs_\bi_\bz_\be = _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements();\n-767 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < _\bv_\be_\bc_\bt_\bo_\br_\b__\bs_\bi_\bz_\be; ++i)\n+766 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be vector_size = _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements();\n+767 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < vector_size; ++i)\n 768 if ((*(v._\bv_\be_\bc_\bt_\bo_\br))[0][i] != (*_\bv_\be_\bc_\bt_\bo_\br)[0][i])\n 769 return false;\n 770\n 771 return true;\n 772 }\n 773\n 774\n@@ -799,104 +799,104 @@\n 784\n 785\n 786 bool\n _\b7_\b8_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bl_\bl_\b__\bz_\be_\br_\bo() const\n 788 {\n 789 // get a representation of the vector and\n 790 // loop over all the elements\n-791 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br = (*vector)[0];\n-792 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *ptr = _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br,\n-793 *_\be_\bp_\bt_\br = _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br + _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements();\n+791 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *start_ptr = (*vector)[0];\n+792 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *ptr = start_ptr,\n+793 *eptr = start_ptr + _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements();\n 794 unsigned int flag = 0;\n-795 while (ptr != _\be_\bp_\bt_\br)\n+795 while (ptr != eptr)\n 796 {\n 797 if (*ptr != 0)\n 798 {\n 799 flag = 1;\n 800 break;\n 801 }\n 802 ++ptr;\n 803 }\n 804\n 805 // in parallel, check that the vector\n 806 // is zero on _all_ processors.\n 807 const Epetra_MpiComm *mpi_comm =\n 808 dynamic_cast(&_\bv_\be_\bc_\bt_\bo_\br->Map().Comm());\n 809 _\bA_\bs_\bs_\be_\br_\bt(mpi_comm != nullptr, _\bE_\bx_\bc_\bI_\bn_\bt_\be_\br_\bn_\ba_\bl_\bE_\br_\br_\bo_\br());\n-810 unsigned int _\bn_\bu_\bm_\b__\bn_\bo_\bn_\bz_\be_\br_\bo = _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(flag, mpi_comm->Comm());\n-811 return _\bn_\bu_\bm_\b__\bn_\bo_\bn_\bz_\be_\br_\bo == 0;\n+810 unsigned int num_nonzero = _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bs_\bu_\bm(flag, mpi_comm->Comm());\n+811 return num_nonzero == 0;\n 812 }\n 813\n 814\n 815\n 816 bool\n _\b8_\b1_\b7 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bi_\bs_\b__\bn_\bo_\bn_\b__\bn_\be_\bg_\ba_\bt_\bi_\bv_\be() const\n 818 {\n 819 // get a representation of the vector and\n 820 // loop over all the elements\n-821 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *_\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br = (*vector)[0];\n-822 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *ptr = _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br,\n-823 *_\be_\bp_\bt_\br = _\bs_\bt_\ba_\br_\bt_\b__\bp_\bt_\br + _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements();\n+821 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *start_ptr = (*vector)[0];\n+822 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *ptr = start_ptr,\n+823 *eptr = start_ptr + _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements();\n 824 unsigned int flag = 0;\n-825 while (ptr != _\be_\bp_\bt_\br)\n+825 while (ptr != eptr)\n 826 {\n 827 if (*ptr < 0.0)\n 828 {\n 829 flag = 1;\n 830 break;\n 831 }\n 832 ++ptr;\n 833 }\n 834\n 835 // in parallel, check that the vector\n 836 // is zero on _all_ processors.\n-837 const auto _\bm_\ba_\bx_\b__\bn_\b__\bn_\be_\bg_\ba_\bt_\bi_\bv_\be =\n+837 const auto max_n_negative =\n 838 _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bm_\ba_\bx(flag, _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br());\n-839 return _\bm_\ba_\bx_\b__\bn_\b__\bn_\be_\bg_\ba_\bt_\bi_\bv_\be == 0;\n+839 return max_n_negative == 0;\n 840 }\n 841\n 842\n 843\n 844 void\n _\b8_\b4_\b5 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bp_\br_\bi_\bn_\bt(std::ostream &out,\n 846 const unsigned int precision,\n 847 const bool scientific,\n 848 const bool across) const\n 849 {\n 850 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(out.fail() == false, _\bE_\bx_\bc_\bI_\bO());\n-851 boost::io::ios_flags_saver _\br_\be_\bs_\bt_\bo_\br_\be_\b__\bf_\bl_\ba_\bg_\bs(out);\n+851 boost::io::ios_flags_saver restore_flags(out);\n 852\n 853\n 854 out.precision(precision);\n 855 if (scientific)\n 856 out.setf(std::ios::scientific, std::ios::floatfield);\n 857 else\n 858 out.setf(std::ios::fixed, std::ios::floatfield);\n 859\n-860 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bv_\be_\bc_\bt_\bo_\br_\b__\bs_\bi_\bz_\be = _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements();\n-861 if (_\bs_\bi_\bz_\be() != _\bv_\be_\bc_\bt_\bo_\br_\b__\bs_\bi_\bz_\be)\n+860 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be vector_size = _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements();\n+861 if (_\bs_\bi_\bz_\be() != vector_size)\n 862 {\n-863 auto _\bg_\bl_\bo_\bb_\ba_\bl_\b__\bi_\bd = [&](const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) {\n+863 auto global_id = [&](const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index) {\n 864 return _\bg_\bi_\bd(_\bv_\be_\bc_\bt_\bo_\br->Map(), index);\n 865 };\n 866 out << \"size:\" << _\bs_\bi_\bz_\be()\n 867 << \" locally_owned_size:\" << _\bv_\be_\bc_\bt_\bo_\br->Map().NumMyElements() << \" :\"\n 868 << std::endl;\n-869 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < _\bv_\be_\bc_\bt_\bo_\br_\b__\bs_\bi_\bz_\be; ++i)\n-870 out << \"[\" << _\bg_\bl_\bo_\bb_\ba_\bl_\b__\bi_\bd(i) << \"]: \" << (*(_\bv_\be_\bc_\bt_\bo_\br))[0][i]\n+869 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < vector_size; ++i)\n+870 out << \"[\" << global_id(i) << \"]: \" << (*(_\bv_\be_\bc_\bt_\bo_\br))[0][i]\n 871 << std::endl;\n 872 }\n 873 else\n 874 {\n 875 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *val;\n-876 int _\bl_\be_\ba_\bd_\bi_\bn_\bg_\b__\bd_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn;\n-877 int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->ExtractView(&val, &_\bl_\be_\ba_\bd_\bi_\bn_\bg_\b__\bd_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn);\n+876 int leading_dimension;\n+877 int ierr = _\bv_\be_\bc_\bt_\bo_\br->ExtractView(&val, &leading_dimension);\n 878\n-879 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n-880 if (_\ba_\bc_\br_\bo_\bs_\bs)\n+879 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n+880 if (across)\n 881 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < _\bs_\bi_\bz_\be(); ++i)\n 882 out << static_cast(val[i]) << ' ';\n 883 else\n 884 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < _\bs_\bi_\bz_\be(); ++i)\n 885 out << static_cast(val[i]) << std::endl;\n 886 out << std::endl;\n 887 }\n@@ -946,23 +946,36 @@\n virtual size_type size() const override\n _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bn_\b__\bb_\bl_\bo_\bc_\bk_\bs\n unsigned int n_blocks() const\n _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br_\bB_\ba_\bs_\be_\b:_\b:_\bb_\bl_\bo_\bc_\bk\n BlockType & block(const unsigned int i)\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b7_\b0\n+_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bi_\bs_\b__\ba_\bs_\bc_\be_\bn_\bd_\bi_\bn_\bg_\b__\ba_\bn_\bd_\b__\bo_\bn_\be_\b__\bt_\bo_\b__\bo_\bn_\be\n+bool is_ascending_and_one_to_one(const MPI_Comm communicator) const\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bc_\bc_\b:_\b1_\b1_\b3_\b0\n+_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bs_\bi_\bz_\be\n+size_type size() const\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b7_\b7_\b6\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n size_type n_elements() const\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b9_\b3_\b4\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bs_\be_\bt_\b__\bs_\bi_\bz_\be\n void set_size(const size_type size)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b7_\b6_\b4\n+_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bm_\ba_\bk_\be_\b__\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bp\n+Epetra_Map make_trilinos_map(const MPI_Comm communicator=MPI_COMM_WORLD, const\n+bool overlapping=false) const\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bc_\bc_\b:_\b1_\b0_\b4_\b1\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bc_\bl_\be_\ba_\br\n void clear()\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b7_\b5_\b2\n+_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bs_\bu_\bb_\bt_\br_\ba_\bc_\bt_\b__\bs_\be_\bt\n+void subtract_set(const IndexSet &other)\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bc_\bc_\b:_\b4_\b7_\b3\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\ba_\bd_\bd_\b__\bi_\bn_\bd_\bi_\bc_\be_\bs\n void add_indices(const ForwardIterator &begin, const ForwardIterator &end)\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b8_\b3_\b1\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\br_\be_\ba_\bd_\b__\bw_\br_\bi_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b1_\b3_\b7\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\bi_\bz_\be\n size_type size() const override\n@@ -1132,14 +1145,20 @@\n _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\b__\bp_\ba_\bt_\bt_\be_\br_\bn_\b__\bb_\ba_\bs_\be_\b._\bh_\b:_\b3_\b0\n _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\ba_\bl_\bi_\bg_\bn_\be_\bd_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b7_\b2_\b7\n _\br_\be_\ba_\bd_\b__\bw_\br_\bi_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh\n _\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bM_\bi_\bn_\bM_\ba_\bx_\bA_\bv_\bg\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bm_\bp_\bi_\b._\bh_\b:_\b9_\b4_\b0\n+_\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bM_\bi_\bn_\bM_\ba_\bx_\bA_\bv_\bg_\b:_\b:_\bm_\bi_\bn\n+double min\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bm_\bp_\bi_\b._\bh_\b:_\b9_\b5_\b1\n+_\bU_\bt_\bi_\bl_\bi_\bt_\bi_\be_\bs_\b:_\b:_\bM_\bP_\bI_\b:_\b:_\bM_\bi_\bn_\bM_\ba_\bx_\bA_\bv_\bg_\b:_\b:_\bm_\ba_\bx\n+double max\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bm_\bp_\bi_\b._\bh_\b:_\b9_\b5_\b7\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs\n values\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bv_\be_\bc_\bt_\bo_\br_\b__\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b._\bh_\b:_\b4_\b1\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\ba_\bd_\bd\n @ add\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bv_\be_\bc_\bt_\bo_\br_\b__\bo_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b._\bh_\b:_\b5_\b3\n _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bi_\bn_\bs_\be_\br_\bt\n"}]}, {"source1": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__vector_8h_source.html", "source2": "./usr/share/doc/libdeal.ii-doc/html/doxygen/deal.II/trilinos__vector_8h_source.html", "unified_diff": "@@ -258,58 +258,58 @@\n \n \n
    419
    \n
    429 Vector();
    \n
    430
    \n
    434 Vector(const Vector &v);
    \n
    435
    \n-
    454 explicit Vector(const IndexSet &parallel_partitioning,
    \n-
    455 const MPI_Comm communicator = MPI_COMM_WORLD);
    \n+
    454 explicit Vector(const IndexSet &parallel_partitioning,
    \n+
    455 const MPI_Comm communicator = MPI_COMM_WORLD);
    \n
    456
    \n
    468 Vector(const IndexSet &local,
    \n
    469 const IndexSet &ghost,
    \n-
    470 const MPI_Comm communicator = MPI_COMM_WORLD);
    \n+
    470 const MPI_Comm communicator = MPI_COMM_WORLD);
    \n
    471
    \n-\n+
    486 Vector(const IndexSet &parallel_partitioning,
    \n
    487 const Vector &v,
    \n-
    488 const MPI_Comm communicator = MPI_COMM_WORLD);
    \n+
    488 const MPI_Comm communicator = MPI_COMM_WORLD);
    \n
    489
    \n
    502 template <typename Number>
    \n-\n+
    503 Vector(const IndexSet &parallel_partitioning,
    \n
    504 const ::Vector<Number> &v,
    \n-
    505 const MPI_Comm communicator = MPI_COMM_WORLD);
    \n+
    505 const MPI_Comm communicator = MPI_COMM_WORLD);
    \n
    506
    \n
    515 Vector(Vector &&v); // NOLINT
    \n
    516
    \n
    520 ~Vector() override = default;
    \n
    521
    \n
    526 void
    \n
    527 clear();
    \n
    528
    \n
    552 void
    \n
    553 reinit(const Vector &v,
    \n-
    554 const bool omit_zeroing_entries = false,
    \n-
    555 const bool allow_different_maps = false);
    \n+
    554 const bool omit_zeroing_entries = false,
    \n+
    555 const bool allow_different_maps = false);
    \n
    556
    \n
    579 void
    \n-\n-
    581 const MPI_Comm communicator = MPI_COMM_WORLD,
    \n-
    582 const bool omit_zeroing_entries = false);
    \n+
    580 reinit(const IndexSet &parallel_partitioning,
    \n+
    581 const MPI_Comm communicator = MPI_COMM_WORLD,
    \n+
    582 const bool omit_zeroing_entries = false);
    \n
    583
    \n
    618 void
    \n-\n-\n-
    621 const MPI_Comm communicator = MPI_COMM_WORLD,
    \n-
    622 const bool vector_writable = false);
    \n+
    619 reinit(const IndexSet &locally_owned_entries,
    \n+
    620 const IndexSet &locally_relevant_or_ghost_entries,
    \n+
    621 const MPI_Comm communicator = MPI_COMM_WORLD,
    \n+
    622 const bool vector_writable = false);
    \n
    623
    \n
    634 void
    \n
    635 reinit(
    \n
    636 const std::shared_ptr<const Utilities::MPI::Partitioner> &partitioner,
    \n-
    637 const bool make_ghosted = true,
    \n-
    638 const bool vector_writable = false);
    \n+
    637 const bool make_ghosted = true,
    \n+
    638 const bool vector_writable = false);
    \n
    639
    \n
    643 void
    \n
    644 reinit(const BlockVector &v, const bool import_data = false);
    \n
    645
    \n
    662 void
    \n \n
    664
    \n@@ -328,24 +328,24 @@\n
    729
    \n
    747 void
    \n \n
    749 const ::TrilinosWrappers::SparseMatrix &matrix,
    \n
    750 const Vector &vector);
    \n
    751
    \n
    758 void
    \n-\n+\n
    760 const VectorOperation::values operation);
    \n
    761
    \n \n
    766 void
    \n
    \n-\n+\n
    768 const VectorOperation::values operation)
    \n
    769 {
    \n-
    770 import_elements(rwv, operation);
    \n+
    770 import_elements(rwv, operation);
    \n
    771 }
    \n
    \n
    772
    \n
    773
    \n
    779 bool
    \n
    780 operator==(const Vector &v) const;
    \n
    781
    \n@@ -370,15 +370,15 @@\n
    861 bool
    \n \n
    863
    \n
    870 void
    \n \n
    872
    \n \n-
    878 operator*(const Vector &vec) const;
    \n+
    878 operator*(const Vector &vec) const;
    \n
    879
    \n \n
    884 norm_sqr() const;
    \n
    885
    \n \n
    890 mean_value() const;
    \n
    891
    \n@@ -426,17 +426,17 @@\n
    1029
    \n
    1033 virtual void
    \n \n
    1035 ArrayView<TrilinosScalar> &elements) const override;
    \n
    1036
    \n
    1064 template <typename ForwardIterator, typename OutputIterator>
    \n
    1065 void
    \n-\n-\n-\n+
    1066 extract_subvector_to(ForwardIterator indices_begin,
    \n+
    1067 const ForwardIterator indices_end,
    \n+
    1068 OutputIterator values_begin) const;
    \n
    1069
    \n
    1078 iterator
    \n \n
    1080
    \n \n
    1086 begin() const;
    \n
    1087
    \n@@ -484,15 +484,15 @@\n
    1185 Vector &
    \n \n
    1187
    \n
    1192 void
    \n \n
    1194
    \n
    1207 void
    \n-
    1208 add(const Vector &V, const bool allow_different_maps = false);
    \n+
    1208 add(const Vector &V, const bool allow_different_maps = false);
    \n
    1209
    \n
    1213 void
    \n
    1214 add(const TrilinosScalar a, const Vector &V);
    \n
    1215
    \n
    1219 void
    \n \n
    1221 const Vector &V,
    \n@@ -502,60 +502,60 @@\n
    1229 void
    \n
    1230 sadd(const TrilinosScalar s, const Vector &V);
    \n
    1231
    \n
    1235 void
    \n
    1236 sadd(const TrilinosScalar s, const TrilinosScalar a, const Vector &V);
    \n
    1237
    \n
    1243 void
    \n-\n+
    1244 scale(const Vector &scaling_factors);
    \n
    1245
    \n
    1249 void
    \n
    1250 equ(const TrilinosScalar a, const Vector &V);
    \n
    1262 const Epetra_MultiVector &
    \n \n
    1264
    \n
    1269 Epetra_FEVector &
    \n \n
    1271
    \n-
    1276 const Epetra_BlockMap &
    \n+
    1276 const Epetra_BlockMap &
    \n \n
    1278
    \n
    1286 void
    \n
    1287 print(std::ostream &out,
    \n
    1288 const unsigned int precision = 3,
    \n
    1289 const bool scientific = true,
    \n-
    1290 const bool across = true) const;
    \n+
    1290 const bool across = true) const;
    \n
    1291
    \n
    1305 void
    \n
    1306 swap(Vector &v) noexcept;
    \n
    1307
    \n
    1311 std::size_t
    \n
    1312 memory_consumption() const;
    \n
    1313
    \n
    1317 MPI_Comm
    \n \n \n
    1325
    \n \n
    1330 int,
    \n-
    1331 << "An error with error number " << arg1
    \n+
    1331 << "An error with error number " << arg1
    \n
    1332 << " occurred while calling a Trilinos function");
    \n
    1333
    \n \n \n
    1339 size_type,
    \n
    1340 size_type,
    \n
    1341 size_type,
    \n
    1342 size_type,
    \n-
    1343 << "You are trying to access element " << arg1
    \n+
    1343 << "You are trying to access element " << arg1
    \n
    1344 << " of a distributed vector, but this element is not stored "
    \n-
    1345 << "on the current processor. Note: There are " << arg2
    \n+
    1345 << "on the current processor. Note: There are " << arg2
    \n
    1346 << " elements stored "
    \n-
    1347 << "on the current processor from within the range [" << arg3 << ','
    \n-
    1348 << arg4 << "] but Trilinos vectors need not store contiguous "
    \n+
    1347 << "on the current processor from within the range [" << arg3 << ','
    \n+
    1348 << arg4 << "] but Trilinos vectors need not store contiguous "
    \n
    1349 << "ranges on each processor, and not every element in "
    \n
    1350 << "this range may in fact be stored locally."
    \n
    1351 << "\\n\\n"
    \n
    1352 << "A common source for this kind of problem is that you "
    \n
    1353 << "are passing a 'fully distributed' vector into a function "
    \n
    1354 << "that needs read access to vector elements that correspond "
    \n
    1355 << "to degrees of freedom on ghost cells (or at least to "
    \n@@ -678,17 +678,17 @@\n
    1508 } // namespace internal
    \n
    1509
    \n
    1510 namespace MPI
    \n
    1511 {
    \n
    1512 inline bool
    \n
    1513 Vector::in_local_range(const size_type index) const
    \n
    1514 {
    \n-
    1515 std::pair<size_type, size_type> range = local_range();
    \n+
    1515 std::pair<size_type, size_type> range = local_range();
    \n
    1516
    \n-
    1517 return ((index >= range.first) && (index < range.second));
    \n+
    1517 return ((index >= range.first) && (index < range.second));
    \n
    1518 }
    \n
    1519
    \n
    1520
    \n
    1521
    \n
    1522 inline IndexSet
    \n \n
    1524 {
    \n@@ -766,19 +766,19 @@\n
    1596
    \n
    1597 template <typename ForwardIterator, typename OutputIterator>
    \n
    1598 inline void
    \n
    1599 Vector::extract_subvector_to(ForwardIterator indices_begin,
    \n
    1600 const ForwardIterator indices_end,
    \n
    1601 OutputIterator values_begin) const
    \n
    1602 {
    \n-
    1603 while (indices_begin != indices_end)
    \n+
    1603 while (indices_begin != indices_end)
    \n
    1604 {
    \n-\n-
    1606 ++indices_begin;
    \n-
    1607 ++values_begin;
    \n+
    1605 *values_begin = operator()(*indices_begin);
    \n+
    1606 ++indices_begin;
    \n+
    1607 ++values_begin;
    \n
    1608 }
    \n
    1609 }
    \n
    1610
    \n
    1611
    \n
    1612
    \n
    1613 inline Vector::iterator
    \n \n@@ -847,34 +847,34 @@\n
    1677 const size_type *indices,
    \n
    1678 const TrilinosScalar *values)
    \n
    1679 {
    \n
    1680 // if we have ghost values, do not allow
    \n
    1681 // writing to this vector at all.
    \n \n
    1683
    \n-
    1684 if (last_action == Add)
    \n+
    1684 if (last_action == Add)
    \n
    1685 {
    \n-
    1686 const int ierr = vector->GlobalAssemble(Add);
    \n-\n+
    1686 const int ierr = vector->GlobalAssemble(Add);
    \n+
    1687 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1688 }
    \n
    1689
    \n-
    1690 if (last_action != Insert)
    \n-\n+
    1690 if (last_action != Insert)
    \n+
    1691 last_action = Insert;
    \n
    1692
    \n
    1693 for (size_type i = 0; i < n_elements; ++i)
    \n
    1694 {
    \n
    1695 const TrilinosWrappers::types::int_type row = indices[i];
    \n-\n+
    1696 const TrilinosWrappers::types::int_type local_row =
    \n
    1697 vector->Map().LID(row);
    \n-
    1698 if (local_row != -1)
    \n-
    1699 (*vector)[0][local_row] = values[i];
    \n+
    1698 if (local_row != -1)
    \n+
    1699 (*vector)[0][local_row] = values[i];
    \n
    1700 else
    \n
    1701 {
    \n-
    1702 const int ierr = vector->ReplaceGlobalValues(1, &row, &values[i]);
    \n-\n+
    1702 const int ierr = vector->ReplaceGlobalValues(1, &row, &values[i]);
    \n+
    1703 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1704 compressed = false;
    \n
    1705 }
    \n
    1706 // in set operation, do not use the pre-allocated vector for nonlocal
    \n
    1707 // entries even if it exists. This is to ensure that we really only
    \n
    1708 // set the elements touched by the set() method and not all contained
    \n
    1709 // in the nonlocal entries vector (there is no way to distinguish them
    \n
    1710 // on the receiving processor)
    \n@@ -916,54 +916,54 @@\n
    1746 const size_type *indices,
    \n
    1747 const TrilinosScalar *values)
    \n
    1748 {
    \n
    1749 // if we have ghost values, do not allow
    \n
    1750 // writing to this vector at all.
    \n \n
    1752
    \n-
    1753 if (last_action != Add)
    \n+
    1753 if (last_action != Add)
    \n
    1754 {
    \n-
    1755 if (last_action == Insert)
    \n+
    1755 if (last_action == Insert)
    \n
    1756 {
    \n-
    1757 const int ierr = vector->GlobalAssemble(Insert);
    \n-\n+
    1757 const int ierr = vector->GlobalAssemble(Insert);
    \n+
    1758 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1759 }
    \n-
    1760 last_action = Add;
    \n+
    1760 last_action = Add;
    \n
    1761 }
    \n
    1762
    \n
    1763 for (size_type i = 0; i < n_elements; ++i)
    \n
    1764 {
    \n
    1765 const size_type row = indices[i];
    \n-\n+
    1766 const TrilinosWrappers::types::int_type local_row = vector->Map().LID(
    \n
    1767 static_cast<TrilinosWrappers::types::int_type>(row));
    \n-
    1768 if (local_row != -1)
    \n-
    1769 (*vector)[0][local_row] += values[i];
    \n+
    1768 if (local_row != -1)
    \n+
    1769 (*vector)[0][local_row] += values[i];
    \n
    1770 else if (nonlocal_vector.get() == nullptr)
    \n
    1771 {
    \n-
    1772 const int ierr = vector->SumIntoGlobalValues(
    \n+
    1772 const int ierr = vector->SumIntoGlobalValues(
    \n
    1773 1,
    \n
    1774 reinterpret_cast<const TrilinosWrappers::types::int_type *>(
    \n
    1775 &row),
    \n
    1776 &values[i]);
    \n-\n+
    1777 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1778 compressed = false;
    \n
    1779 }
    \n
    1780 else
    \n
    1781 {
    \n
    1782 // use pre-allocated vector for non-local entries if it exists for
    \n
    1783 // addition operation
    \n-\n+\n
    1785 nonlocal_vector->Map().LID(
    \n
    1786 static_cast<TrilinosWrappers::types::int_type>(row));
    \n-
    1787 Assert(my_row != -1,
    \n+
    1787 Assert(my_row != -1,
    \n
    1788 ExcMessage(
    \n
    1789 "Attempted to write into off-processor vector entry "
    \n
    1790 "that has not be specified as being writable upon "
    \n
    1791 "initialization"));
    \n-
    1792 (*nonlocal_vector)[0][my_row] += values[i];
    \n+
    1792 (*nonlocal_vector)[0][my_row] += values[i];
    \n
    1793 compressed = false;
    \n
    1794 }
    \n
    1795 }
    \n
    1796 }
    \n
    1797
    \n
    1798
    \n
    1799
    \n@@ -1012,24 +1012,24 @@\n
    1842 }
    \n
    1843
    \n
    1844
    \n
    1845
    \n
    1846 inline TrilinosScalar
    \n
    1847 Vector::operator*(const Vector &vec) const
    \n
    1848 {
    \n-
    1849 Assert(vector->Map().SameAs(vec.vector->Map()),
    \n+
    1849 Assert(vector->Map().SameAs(vec.vector->Map()),
    \n \n \n
    1852
    \n-\n+
    1853 TrilinosScalar result;
    \n
    1854
    \n-
    1855 const int ierr = vector->Dot(*(vec.vector), &result);
    \n-\n+
    1855 const int ierr = vector->Dot(*(vec.vector), &result);
    \n+
    1856 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1857
    \n-
    1858 return result;
    \n+
    1858 return result;
    \n
    1859 }
    \n
    1860
    \n
    1861
    \n
    1862
    \n
    1863 inline Vector::real_type
    \n
    1864 Vector::norm_sqr() const
    \n
    1865 {
    \n@@ -1041,86 +1041,86 @@\n
    1871
    \n
    1872 inline TrilinosScalar
    \n
    1873 Vector::mean_value() const
    \n
    1874 {
    \n \n
    1876
    \n \n-
    1878 const int ierr = vector->MeanValue(&mean);
    \n-\n+
    1878 const int ierr = vector->MeanValue(&mean);
    \n+
    1879 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1880
    \n
    1881 return mean;
    \n
    1882 }
    \n
    1883
    \n
    1884
    \n
    1885
    \n
    1886 inline TrilinosScalar
    \n
    1887 Vector::min() const
    \n
    1888 {
    \n-\n-
    1890 const int ierr = vector->MinValue(&min_value);
    \n-\n+
    1889 TrilinosScalar min_value;
    \n+
    1890 const int ierr = vector->MinValue(&min_value);
    \n+
    1891 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1892
    \n-
    1893 return min_value;
    \n+
    1893 return min_value;
    \n
    1894 }
    \n
    1895
    \n
    1896
    \n
    1897
    \n
    1898 inline TrilinosScalar
    \n
    1899 Vector::max() const
    \n
    1900 {
    \n-\n-
    1902 const int ierr = vector->MaxValue(&max_value);
    \n-\n+
    1901 TrilinosScalar max_value;
    \n+
    1902 const int ierr = vector->MaxValue(&max_value);
    \n+
    1903 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1904
    \n-
    1905 return max_value;
    \n+
    1905 return max_value;
    \n
    1906 }
    \n
    1907
    \n
    1908
    \n
    1909
    \n
    1910 inline Vector::real_type
    \n
    1911 Vector::l1_norm() const
    \n
    1912 {
    \n \n
    1914
    \n \n-
    1916 const int ierr = vector->Norm1(&d);
    \n-\n+
    1916 const int ierr = vector->Norm1(&d);
    \n+
    1917 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1918
    \n
    1919 return d;
    \n
    1920 }
    \n
    1921
    \n
    1922
    \n
    1923
    \n
    1924 inline Vector::real_type
    \n
    1925 Vector::l2_norm() const
    \n
    1926 {
    \n \n
    1928
    \n \n-
    1930 const int ierr = vector->Norm2(&d);
    \n-\n+
    1930 const int ierr = vector->Norm2(&d);
    \n+
    1931 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1932
    \n
    1933 return d;
    \n
    1934 }
    \n
    1935
    \n
    1936
    \n
    1937
    \n
    1938 inline Vector::real_type
    \n
    1939 Vector::lp_norm(const TrilinosScalar p) const
    \n
    1940 {
    \n \n
    1942
    \n
    1943 TrilinosScalar norm = 0;
    \n
    1944 TrilinosScalar sum = 0;
    \n-\n+
    1945 const size_type n_local = locally_owned_size();
    \n
    1946
    \n
    1947 // loop over all the elements because
    \n
    1948 // Trilinos does not support lp norms
    \n-
    1949 for (size_type i = 0; i < n_local; ++i)
    \n+
    1949 for (size_type i = 0; i < n_local; ++i)
    \n
    1950 sum += std::pow(std::fabs((*vector)[0][i]), p);
    \n
    1951
    \n
    1952 norm = std::pow(sum, static_cast<TrilinosScalar>(1. / p));
    \n
    1953
    \n
    1954 return norm;
    \n
    1955 }
    \n
    1956
    \n@@ -1131,16 +1131,16 @@\n
    1961 {
    \n
    1962 // while we disallow the other
    \n
    1963 // norm operations on ghosted
    \n
    1964 // vectors, this particular norm
    \n
    1965 // is safe to run even in the
    \n
    1966 // presence of ghost elements
    \n \n-
    1968 const int ierr = vector->NormInf(&d);
    \n-\n+
    1968 const int ierr = vector->NormInf(&d);
    \n+
    1969 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1970
    \n
    1971 return d;
    \n
    1972 }
    \n
    1973
    \n
    1974
    \n
    1975
    \n
    1976 inline TrilinosScalar
    \n@@ -1160,16 +1160,16 @@\n
    1990 // call. This reduces the overhead of the
    \n
    1991 // wrapper class.
    \n
    1992 inline Vector &
    \n \n
    1994 {
    \n
    1995 AssertIsFinite(a);
    \n
    1996
    \n-
    1997 const int ierr = vector->Scale(a);
    \n-\n+
    1997 const int ierr = vector->Scale(a);
    \n+
    1998 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    1999
    \n
    2000 return *this;
    \n
    2001 }
    \n
    2002
    \n
    2003
    \n
    2004
    \n
    2005 inline Vector &
    \n@@ -1177,62 +1177,62 @@\n
    2007 {
    \n
    2008 AssertIsFinite(a);
    \n
    2009
    \n
    2010 const TrilinosScalar factor = 1. / a;
    \n
    2011
    \n
    2012 AssertIsFinite(factor);
    \n
    2013
    \n-
    2014 const int ierr = vector->Scale(factor);
    \n-\n+
    2014 const int ierr = vector->Scale(factor);
    \n+
    2015 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2016
    \n
    2017 return *this;
    \n
    2018 }
    \n
    2019
    \n
    2020
    \n
    2021
    \n
    2022 inline Vector &
    \n
    2023 Vector::operator+=(const Vector &v)
    \n
    2024 {
    \n
    2025 AssertDimension(size(), v.size());
    \n
    2026 Assert(vector->Map().SameAs(v.vector->Map()),
    \n \n
    2028
    \n-
    2029 const int ierr = vector->Update(1.0, *(v.vector), 1.0);
    \n-\n+
    2029 const int ierr = vector->Update(1.0, *(v.vector), 1.0);
    \n+
    2030 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2031
    \n
    2032 return *this;
    \n
    2033 }
    \n
    2034
    \n
    2035
    \n
    2036
    \n
    2037 inline Vector &
    \n
    2038 Vector::operator-=(const Vector &v)
    \n
    2039 {
    \n
    2040 AssertDimension(size(), v.size());
    \n
    2041 Assert(vector->Map().SameAs(v.vector->Map()),
    \n \n
    2043
    \n-
    2044 const int ierr = vector->Update(-1.0, *(v.vector), 1.0);
    \n-\n+
    2044 const int ierr = vector->Update(-1.0, *(v.vector), 1.0);
    \n+
    2045 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2046
    \n
    2047 return *this;
    \n
    2048 }
    \n
    2049
    \n
    2050
    \n
    2051
    \n
    2052 inline void
    \n \n
    2054 {
    \n
    2055 // if we have ghost values, do not allow
    \n
    2056 // writing to this vector at all.
    \n \n
    2058 AssertIsFinite(s);
    \n
    2059
    \n-\n-
    2061 for (size_type i = 0; i < n_local; ++i)
    \n+
    2060 size_type n_local = locally_owned_size();
    \n+
    2061 for (size_type i = 0; i < n_local; ++i)
    \n
    2062 (*vector)[0][i] += s;
    \n
    2063 }
    \n
    2064
    \n
    2065
    \n
    2066
    \n
    2067 inline void
    \n
    2068 Vector::add(const TrilinosScalar a, const Vector &v)
    \n@@ -1240,16 +1240,16 @@\n
    2070 // if we have ghost values, do not allow
    \n
    2071 // writing to this vector at all.
    \n \n \n
    2074
    \n
    2075 AssertIsFinite(a);
    \n
    2076
    \n-
    2077 const int ierr = vector->Update(a, *(v.vector), 1.);
    \n-\n+
    2077 const int ierr = vector->Update(a, *(v.vector), 1.);
    \n+
    2078 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2079 }
    \n
    2080
    \n
    2081
    \n
    2082
    \n
    2083 inline void
    \n \n
    2085 const Vector &v,
    \n@@ -1261,17 +1261,17 @@\n \n \n
    2093 AssertDimension(locally_owned_size(), w.locally_owned_size());
    \n
    2094
    \n
    2095 AssertIsFinite(a);
    \n
    2096 AssertIsFinite(b);
    \n
    2097
    \n-
    2098 const int ierr = vector->Update(a, *(v.vector), b, *(w.vector), 1.);
    \n+
    2098 const int ierr = vector->Update(a, *(v.vector), b, *(w.vector), 1.);
    \n
    2099
    \n-\n+
    2100 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2101 }
    \n
    2102
    \n
    2103
    \n
    2104
    \n
    2105 inline void
    \n
    2106 Vector::sadd(const TrilinosScalar s, const Vector &v)
    \n
    2107 {
    \n@@ -1285,16 +1285,16 @@\n
    2115 // We assume that the vectors have the same Map
    \n
    2116 // if the local size is the same and if the vectors are not ghosted
    \n \n
    2118 !v.has_ghost_elements())
    \n
    2119 {
    \n
    2120 Assert(this->vector->Map().SameAs(v.vector->Map()) == true,
    \n \n-
    2122 const int ierr = vector->Update(1., *(v.vector), s);
    \n-\n+
    2122 const int ierr = vector->Update(1., *(v.vector), s);
    \n+
    2123 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2124 }
    \n
    2125 else
    \n
    2126 {
    \n
    2127 (*this) *= s;
    \n
    2128 this->add(v, true);
    \n
    2129 }
    \n
    2130 }
    \n@@ -1316,16 +1316,16 @@\n
    2146 // We assume that the vectors have the same Map
    \n
    2147 // if the local size is the same and if the vectors are not ghosted
    \n \n
    2149 !v.has_ghost_elements())
    \n
    2150 {
    \n
    2151 Assert(this->vector->Map().SameAs(v.vector->Map()) == true,
    \n \n-
    2153 const int ierr = vector->Update(a, *(v.vector), s);
    \n-\n+
    2153 const int ierr = vector->Update(a, *(v.vector), s);
    \n+
    2154 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2155 }
    \n
    2156 else
    \n
    2157 {
    \n
    2158 (*this) *= s;
    \n
    2159 Vector tmp = v;
    \n
    2160 tmp *= a;
    \n
    2161 this->add(tmp, true);
    \n@@ -1338,16 +1338,16 @@\n
    2168 Vector::scale(const Vector &factors)
    \n
    2169 {
    \n
    2170 // if we have ghost values, do not allow
    \n
    2171 // writing to this vector at all.
    \n \n \n
    2174
    \n-
    2175 const int ierr = vector->Multiply(1.0, *(factors.vector), *vector, 0.0);
    \n-\n+
    2175 const int ierr = vector->Multiply(1.0, *(factors.vector), *vector, 0.0);
    \n+
    2176 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2177 }
    \n
    2178
    \n
    2179
    \n
    2180
    \n
    2181 inline void
    \n
    2182 Vector::equ(const TrilinosScalar a, const Vector &v)
    \n
    2183 {
    \n@@ -1360,18 +1360,18 @@\n
    2190 if (vector->Map().SameAs(v.vector->Map()) == false)
    \n
    2191 {
    \n
    2192 this->sadd(0., a, v);
    \n
    2193 }
    \n
    2194 else
    \n
    2195 {
    \n
    2196 // Otherwise, just update
    \n-
    2197 int ierr = vector->Update(a, *v.vector, 0.0);
    \n-\n+
    2197 int ierr = vector->Update(a, *v.vector, 0.0);
    \n+
    2198 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2199
    \n-
    2200 last_action = Zero;
    \n+
    2200 last_action = Zero;
    \n
    2201 }
    \n
    2202 }
    \n
    2203
    \n
    2204
    \n
    2205
    \n
    2206 inline const Epetra_MultiVector &
    \n \n@@ -1409,32 +1409,32 @@\n
    2239
    \n
    2240 template <typename number>
    \n
    2241 Vector::Vector(const IndexSet &parallel_partitioner,
    \n
    2242 const ::Vector<number> &v,
    \n
    2243 const MPI_Comm communicator)
    \n
    2244 {
    \n
    2245 *this =
    \n-
    2246 Vector(parallel_partitioner.make_trilinos_map(communicator, true), v);
    \n-\n+
    2246 Vector(parallel_partitioner.make_trilinos_map(communicator, true), v);
    \n+
    2247 owned_elements = parallel_partitioner;
    \n
    2248 }
    \n
    2249
    \n
    2250
    \n
    2251
    \n
    2252 inline Vector &
    \n \n
    2254 {
    \n
    2255 AssertIsFinite(s);
    \n
    2256
    \n-
    2257 int ierr = vector->PutScalar(s);
    \n-\n+
    2257 int ierr = vector->PutScalar(s);
    \n+
    2258 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2259
    \n
    2260 if (nonlocal_vector.get() != nullptr)
    \n
    2261 {
    \n-
    2262 ierr = nonlocal_vector->PutScalar(0.);
    \n-\n+
    2262 ierr = nonlocal_vector->PutScalar(0.);
    \n+
    2263 AssertThrow(ierr == 0, ExcTrilinosError(ierr));
    \n
    2264 }
    \n
    2265
    \n
    2266 return *this;
    \n
    2267 }
    \n
    2268 } /* end of namespace MPI */
    \n
    2269
    \n
    2270# endif /* DOXYGEN */
    \n@@ -1501,14 +1501,15 @@\n \n \n
    std::size_t size() const
    Definition array_view.h:684
    \n \n \n
    size_type size() const
    Definition index_set.h:1776
    \n
    size_type n_elements() const
    Definition index_set.h:1934
    \n+
    Epetra_Map make_trilinos_map(const MPI_Comm communicator=MPI_COMM_WORLD, const bool overlapping=false) const
    \n \n \n \n \n \n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -160,58 +160,58 @@\n _\b4_\b1_\b7 using _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be;\n _\b4_\b1_\b8 using _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bf_\be_\br_\be_\bn_\bc_\be = const _\bi_\bn_\bt_\be_\br_\bn_\ba_\bl_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br_\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be;\n 419\n 429 _\bV_\be_\bc_\bt_\bo_\br();\n 430\n 434 _\bV_\be_\bc_\bt_\bo_\br(const _\bV_\be_\bc_\bt_\bo_\br &v);\n 435\n-454 explicit _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg,\n-455 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD);\n+454 explicit _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioning,\n+455 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = MPI_COMM_WORLD);\n 456\n 468 _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &local,\n 469 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &ghost,\n-470 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD);\n+470 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = MPI_COMM_WORLD);\n 471\n-486 _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg,\n+486 _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioning,\n 487 const _\bV_\be_\bc_\bt_\bo_\br &v,\n-488 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD);\n+488 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = MPI_COMM_WORLD);\n 489\n 502 template \n-_\b5_\b0_\b3 _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg,\n+_\b5_\b0_\b3 _\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioning,\n 504 const ::Vector &v,\n-505 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD);\n+505 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = MPI_COMM_WORLD);\n 506\n 515 _\bV_\be_\bc_\bt_\bo_\br(_\bV_\be_\bc_\bt_\bo_\br &&v); // NOLINT\n 516\n _\b5_\b2_\b0 _\b~_\bV_\be_\bc_\bt_\bo_\br() override = default;\n 521\n 526 void\n 527 _\bc_\bl_\be_\ba_\br();\n 528\n 552 void\n 553 _\br_\be_\bi_\bn_\bi_\bt(const _\bV_\be_\bc_\bt_\bo_\br &v,\n-554 const bool _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs = false,\n-555 const bool _\ba_\bl_\bl_\bo_\bw_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\b__\bm_\ba_\bp_\bs = false);\n+554 const bool omit_zeroing_entries = false,\n+555 const bool allow_different_maps = false);\n 556\n 579 void\n-580 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg,\n-581 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD,\n-582 const bool _\bo_\bm_\bi_\bt_\b__\bz_\be_\br_\bo_\bi_\bn_\bg_\b__\be_\bn_\bt_\br_\bi_\be_\bs = false);\n+580 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioning,\n+581 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = MPI_COMM_WORLD,\n+582 const bool omit_zeroing_entries = false);\n 583\n 618 void\n-619 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bn_\bt_\br_\bi_\be_\bs,\n-620 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\br_\be_\bl_\be_\bv_\ba_\bn_\bt_\b__\bo_\br_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bn_\bt_\br_\bi_\be_\bs,\n-621 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = _\bM_\bP_\bI_\b__\bC_\bO_\bM_\bM_\b__\bW_\bO_\bR_\bL_\bD,\n-622 const bool _\bv_\be_\bc_\bt_\bo_\br_\b__\bw_\br_\bi_\bt_\ba_\bb_\bl_\be = false);\n+619 _\br_\be_\bi_\bn_\bi_\bt(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &locally_owned_entries,\n+620 const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt &locally_relevant_or_ghost_entries,\n+621 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator = MPI_COMM_WORLD,\n+622 const bool vector_writable = false);\n 623\n 634 void\n 635 _\br_\be_\bi_\bn_\bi_\bt(\n 636 const std::shared_ptr &partitioner,\n-637 const bool _\bm_\ba_\bk_\be_\b__\bg_\bh_\bo_\bs_\bt_\be_\bd = true,\n-638 const bool _\bv_\be_\bc_\bt_\bo_\br_\b__\bw_\br_\bi_\bt_\ba_\bb_\bl_\be = false);\n+637 const bool make_ghosted = true,\n+638 const bool vector_writable = false);\n 639\n 643 void\n 644 _\br_\be_\bi_\bn_\bi_\bt(const _\bB_\bl_\bo_\bc_\bk_\bV_\be_\bc_\bt_\bo_\br &v, const bool import_data = false);\n 645\n 662 void\n 663 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs(_\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation);\n 664\n@@ -230,23 +230,23 @@\n 729\n 747 void\n 748 _\bi_\bm_\bp_\bo_\br_\bt_\b__\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bd_\ba_\bt_\ba_\b__\bf_\bo_\br_\b__\bf_\be(\n 749 const ::TrilinosWrappers::SparseMatrix &matrix,\n 750 const _\bV_\be_\bc_\bt_\bo_\br &_\bv_\be_\bc_\bt_\bo_\br);\n 751\n 758 void\n-759 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(const _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bd_\bo_\bu_\bb_\bl_\be_\b> &_\br_\bw_\bv,\n+759 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(const _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bd_\bo_\bu_\bb_\bl_\be_\b> &rwv,\n 760 const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation);\n 761\n 765 _\bD_\bE_\bA_\bL_\b__\bI_\bI_\b__\bD_\bE_\bP_\bR_\bE_\bC_\bA_\bT_\bE_\bD\n 766 void\n-_\b7_\b6_\b7 import(const _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bd_\bo_\bu_\bb_\bl_\be_\b> &_\br_\bw_\bv,\n+_\b7_\b6_\b7 import(const _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br_\b<_\bd_\bo_\bu_\bb_\bl_\be_\b> &rwv,\n 768 const _\bV_\be_\bc_\bt_\bo_\br_\bO_\bp_\be_\br_\ba_\bt_\bi_\bo_\bn_\b:_\b:_\bv_\ba_\bl_\bu_\be_\bs operation)\n 769 {\n-770 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(_\br_\bw_\bv, operation);\n+770 _\bi_\bm_\bp_\bo_\br_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(rwv, operation);\n 771 }\n 772\n 773\n 779 bool\n 780 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=_\b=(const _\bV_\be_\bc_\bt_\bo_\br &v) const;\n 781\n 787 bool\n@@ -270,15 +270,15 @@\n 861 bool\n _\b8_\b6_\b2 _\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs() const;\n 863\n 870 void\n _\b8_\b7_\b1 _\bu_\bp_\bd_\ba_\bt_\be_\b__\bg_\bh_\bo_\bs_\bt_\b__\bv_\ba_\bl_\bu_\be_\bs() const;\n 872\n 877 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n-_\b8_\b7_\b8 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*(const _\bV_\be_\bc_\bt_\bo_\br &_\bv_\be_\bc) const;\n+_\b8_\b7_\b8 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*(const _\bV_\be_\bc_\bt_\bo_\br &vec) const;\n 879\n 883 _\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\n _\b8_\b8_\b4 _\bn_\bo_\br_\bm_\b__\bs_\bq_\br() const;\n 885\n 889 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n _\b8_\b9_\b0 _\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be() const;\n 891\n@@ -326,17 +326,17 @@\n 1029\n 1033 virtual void\n _\b1_\b0_\b3_\b4 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo(const _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw_\b<_\bc_\bo_\bn_\bs_\bt_\b _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be_\b> &indices,\n 1035 _\bA_\br_\br_\ba_\by_\bV_\bi_\be_\bw_\b<_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br_\b> &elements) const override;\n 1036\n 1064 template \n 1065 void\n-_\b1_\b0_\b6_\b6 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo(_\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn,\n-1067 const _\bF_\bo_\br_\bw_\ba_\br_\bd_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\be_\bn_\bd,\n-1068 _\bO_\bu_\bt_\bp_\bu_\bt_\bI_\bt_\be_\br_\ba_\bt_\bo_\br _\bv_\ba_\bl_\bu_\be_\bs_\b__\bb_\be_\bg_\bi_\bn) const;\n+_\b1_\b0_\b6_\b6 _\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo(ForwardIterator indices_begin,\n+1067 const ForwardIterator indices_end,\n+1068 OutputIterator values_begin) const;\n 1069\n 1078 _\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n _\b1_\b0_\b7_\b9 _\bb_\be_\bg_\bi_\bn();\n 1080\n 1085 _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n _\b1_\b0_\b8_\b6 _\bb_\be_\bg_\bi_\bn() const;\n 1087\n@@ -384,15 +384,15 @@\n 1185 _\bV_\be_\bc_\bt_\bo_\br &\n _\b1_\b1_\b8_\b6 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b=(const _\bV_\be_\bc_\bt_\bo_\br &V);\n 1187\n 1192 void\n _\b1_\b1_\b9_\b3 _\ba_\bd_\bd(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s);\n 1194\n 1207 void\n-1208 _\ba_\bd_\bd(const _\bV_\be_\bc_\bt_\bo_\br &V, const bool _\ba_\bl_\bl_\bo_\bw_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\b__\bm_\ba_\bp_\bs = false);\n+1208 _\ba_\bd_\bd(const _\bV_\be_\bc_\bt_\bo_\br &V, const bool allow_different_maps = false);\n 1209\n 1213 void\n _\b1_\b2_\b1_\b4 _\ba_\bd_\bd(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, const _\bV_\be_\bc_\bt_\bo_\br &V);\n 1215\n 1219 void\n _\b1_\b2_\b2_\b0 _\ba_\bd_\bd(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a,\n 1221 const _\bV_\be_\bc_\bt_\bo_\br &V,\n@@ -402,60 +402,60 @@\n 1229 void\n _\b1_\b2_\b3_\b0 _\bs_\ba_\bd_\bd(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s, const _\bV_\be_\bc_\bt_\bo_\br &V);\n 1231\n 1235 void\n _\b1_\b2_\b3_\b6 _\bs_\ba_\bd_\bd(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s, const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, const _\bV_\be_\bc_\bt_\bo_\br &V);\n 1237\n 1243 void\n-_\b1_\b2_\b4_\b4 _\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br &_\bs_\bc_\ba_\bl_\bi_\bn_\bg_\b__\bf_\ba_\bc_\bt_\bo_\br_\bs);\n+_\b1_\b2_\b4_\b4 _\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br &scaling_factors);\n 1245\n 1249 void\n _\b1_\b2_\b5_\b0 _\be_\bq_\bu(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, const _\bV_\be_\bc_\bt_\bo_\br &V);\n 1262 const Epetra_MultiVector &\n _\b1_\b2_\b6_\b3 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br() const;\n 1264\n 1269 Epetra_FEVector &\n _\b1_\b2_\b7_\b0 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br();\n 1271\n-1276 const _\bE_\bp_\be_\bt_\br_\ba_\b__\bB_\bl_\bo_\bc_\bk_\bM_\ba_\bp &\n+1276 const Epetra_BlockMap &\n _\b1_\b2_\b7_\b7 _\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br() const;\n 1278\n 1286 void\n 1287 _\bp_\br_\bi_\bn_\bt(std::ostream &out,\n 1288 const unsigned int precision = 3,\n 1289 const bool scientific = true,\n-1290 const bool _\ba_\bc_\br_\bo_\bs_\bs = true) const;\n+1290 const bool across = true) const;\n 1291\n 1305 void\n 1306 _\bs_\bw_\ba_\bp(_\bV_\be_\bc_\bt_\bo_\br &v) noexcept;\n 1307\n 1311 std::size_t\n 1312 _\bm_\be_\bm_\bo_\br_\by_\b__\bc_\bo_\bn_\bs_\bu_\bm_\bp_\bt_\bi_\bo_\bn() const;\n 1313\n 1317 _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n _\b1_\b3_\b1_\b8 _\bg_\be_\bt_\b__\bm_\bp_\bi_\b__\bc_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bo_\br() const;\n _\b1_\b3_\b2_\b4 _\bD_\be_\bc_\bl_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\b0(_\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg);\n 1325\n 1329 _\bD_\be_\bc_\bl_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\b1(_\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br,\n 1330 int,\n-1331 << \"An error with error number \" << _\ba_\br_\bg_\b1\n+1331 << \"An error with error number \" << arg1\n _\b1_\b3_\b3_\b2 << \" occurred while calling a Trilinos function\");\n 1333\n 1337 _\bD_\be_\bc_\bl_\bE_\bx_\bc_\be_\bp_\bt_\bi_\bo_\bn_\b4(\n 1338 _\bE_\bx_\bc_\bA_\bc_\bc_\be_\bs_\bs_\bT_\bo_\bN_\bo_\bn_\bL_\bo_\bc_\ba_\bl_\bE_\bl_\be_\bm_\be_\bn_\bt,\n 1339 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be,\n 1340 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be,\n 1341 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be,\n 1342 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be,\n-1343 << \"You are trying to access element \" << _\ba_\br_\bg_\b1\n+1343 << \"You are trying to access element \" << arg1\n 1344 << \" of a distributed vector, but this element is not stored \"\n-1345 << \"on the current processor. Note: There are \" << _\ba_\br_\bg_\b2\n+1345 << \"on the current processor. Note: There are \" << arg2\n 1346 << \" elements stored \"\n-1347 << \"on the current processor from within the range [\" << _\ba_\br_\bg_\b3 << ','\n-1348 << _\ba_\br_\bg_\b4 << \"] but Trilinos vectors need not store contiguous \"\n+1347 << \"on the current processor from within the range [\" << arg3 << ','\n+1348 << arg4 << \"] but Trilinos vectors need not store contiguous \"\n 1349 << \"ranges on each processor, and not every element in \"\n 1350 << \"this range may in fact be stored locally.\"\n 1351 << \"\\n\\n\"\n 1352 << \"A common source for this kind of problem is that you \"\n 1353 << \"are passing a 'fully distributed' vector into a function \"\n 1354 << \"that needs read access to vector elements that correspond \"\n 1355 << \"to degrees of freedom on ghost cells (or at least to \"\n@@ -575,17 +575,17 @@\n 1508 } // namespace internal\n 1509\n 1510 namespace _\bM_\bP_\bI\n 1511 {\n 1512 inline bool\n 1513 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bi_\bn_\b__\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be(const size_type index) const\n 1514 {\n-1515 std::pair _\br_\ba_\bn_\bg_\be = _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be();\n+1515 std::pair range = _\bl_\bo_\bc_\ba_\bl_\b__\br_\ba_\bn_\bg_\be();\n 1516\n-1517 return ((index >= _\br_\ba_\bn_\bg_\be.first) && (index < _\br_\ba_\bn_\bg_\be.second));\n+1517 return ((index >= range.first) && (index < range.second));\n 1518 }\n 1519\n 1520\n 1521\n 1522 inline _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt\n 1523 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs() const\n 1524 {\n@@ -663,19 +663,19 @@\n 1596\n 1597 template \n 1598 inline void\n 1599 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\be_\bx_\bt_\br_\ba_\bc_\bt_\b__\bs_\bu_\bb_\bv_\be_\bc_\bt_\bo_\br_\b__\bt_\bo(ForwardIterator indices_begin,\n 1600 const ForwardIterator indices_end,\n 1601 OutputIterator values_begin) const\n 1602 {\n-1603 while (_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn != _\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\be_\bn_\bd)\n+1603 while (indices_begin != indices_end)\n 1604 {\n-1605 *_\bv_\ba_\bl_\bu_\be_\bs_\b__\bb_\be_\bg_\bi_\bn = _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b)(*_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn);\n-1606 ++_\bi_\bn_\bd_\bi_\bc_\be_\bs_\b__\bb_\be_\bg_\bi_\bn;\n-1607 ++_\bv_\ba_\bl_\bu_\be_\bs_\b__\bb_\be_\bg_\bi_\bn;\n+1605 *values_begin = _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b(_\b)(*indices_begin);\n+1606 ++indices_begin;\n+1607 ++values_begin;\n 1608 }\n 1609 }\n 1610\n 1611\n 1612\n 1613 inline _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n 1614 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bb_\be_\bg_\bi_\bn()\n@@ -744,34 +744,34 @@\n 1677 const size_type *indices,\n 1678 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *values)\n 1679 {\n 1680 // if we have ghost values, do not allow\n 1681 // writing to this vector at all.\n 1682 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 1683\n-1684 if (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bA_\bd_\bd)\n+1684 if (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == Add)\n 1685 {\n-1686 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->GlobalAssemble(_\bA_\bd_\bd);\n-1687 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1686 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->GlobalAssemble(Add);\n+1687 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1688 }\n 1689\n-1690 if (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn != _\bI_\bn_\bs_\be_\br_\bt)\n-1691 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bI_\bn_\bs_\be_\br_\bt;\n+1690 if (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn != Insert)\n+1691 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Insert;\n 1692\n 1693 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < n_elements; ++i)\n 1694 {\n 1695 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be row = indices[i];\n-1696 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be _\bl_\bo_\bc_\ba_\bl_\b__\br_\bo_\bw =\n+1696 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be local_row =\n 1697 _\bv_\be_\bc_\bt_\bo_\br->Map().LID(row);\n-1698 if (_\bl_\bo_\bc_\ba_\bl_\b__\br_\bo_\bw != -1)\n-1699 (*vector)[0][_\bl_\bo_\bc_\ba_\bl_\b__\br_\bo_\bw] = _\bv_\ba_\bl_\bu_\be_\bs[i];\n+1698 if (local_row != -1)\n+1699 (*vector)[0][local_row] = _\bv_\ba_\bl_\bu_\be_\bs[i];\n 1700 else\n 1701 {\n-1702 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->ReplaceGlobalValues(1, &row, &values[i]);\n-1703 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1702 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->ReplaceGlobalValues(1, &row, &values[i]);\n+1703 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1704 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd = false;\n 1705 }\n 1706 // in set operation, do not use the pre-allocated vector for nonlocal\n 1707 // entries even if it exists. This is to ensure that we really only\n 1708 // set the elements touched by the set() method and not all contained\n 1709 // in the nonlocal entries vector (there is no way to distinguish them\n 1710 // on the receiving processor)\n@@ -813,54 +813,54 @@\n 1746 const size_type *indices,\n 1747 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br *values)\n 1748 {\n 1749 // if we have ghost values, do not allow\n 1750 // writing to this vector at all.\n 1751 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 1752\n-1753 if (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn != _\bA_\bd_\bd)\n+1753 if (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn != Add)\n 1754 {\n-1755 if (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == _\bI_\bn_\bs_\be_\br_\bt)\n+1755 if (_\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn == Insert)\n 1756 {\n-1757 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->GlobalAssemble(_\bI_\bn_\bs_\be_\br_\bt);\n-1758 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1757 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->GlobalAssemble(Insert);\n+1758 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1759 }\n-1760 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bA_\bd_\bd;\n+1760 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Add;\n 1761 }\n 1762\n 1763 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < n_elements; ++i)\n 1764 {\n 1765 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be row = indices[i];\n-1766 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be _\bl_\bo_\bc_\ba_\bl_\b__\br_\bo_\bw = _\bv_\be_\bc_\bt_\bo_\br->Map().LID(\n+1766 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be local_row = _\bv_\be_\bc_\bt_\bo_\br->Map().LID(\n 1767 static_cast<_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be>(row));\n-1768 if (_\bl_\bo_\bc_\ba_\bl_\b__\br_\bo_\bw != -1)\n-1769 (*vector)[0][_\bl_\bo_\bc_\ba_\bl_\b__\br_\bo_\bw] += _\bv_\ba_\bl_\bu_\be_\bs[i];\n+1768 if (local_row != -1)\n+1769 (*vector)[0][local_row] += _\bv_\ba_\bl_\bu_\be_\bs[i];\n 1770 else if (_\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br.get() == nullptr)\n 1771 {\n-1772 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->SumIntoGlobalValues(\n+1772 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->SumIntoGlobalValues(\n 1773 1,\n 1774 reinterpret_cast(\n 1775 &row),\n 1776 &values[i]);\n-1777 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1777 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1778 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd = false;\n 1779 }\n 1780 else\n 1781 {\n 1782 // use pre-allocated vector for non-local entries if it exists for\n 1783 // addition operation\n-1784 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be _\bm_\by_\b__\br_\bo_\bw =\n+1784 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be my_row =\n 1785 _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br->Map().LID(\n 1786 static_cast<_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bW_\br_\ba_\bp_\bp_\be_\br_\bs_\b:_\b:_\bt_\by_\bp_\be_\bs_\b:_\b:_\bi_\bn_\bt_\b__\bt_\by_\bp_\be>(row));\n-1787 _\bA_\bs_\bs_\be_\br_\bt(_\bm_\by_\b__\br_\bo_\bw != -1,\n+1787 _\bA_\bs_\bs_\be_\br_\bt(my_row != -1,\n 1788 _\bE_\bx_\bc_\bM_\be_\bs_\bs_\ba_\bg_\be(\n 1789 \"Attempted to write into off-processor vector entry \"\n 1790 \"that has not be specified as being writable upon \"\n 1791 \"initialization\"));\n-1792 (*nonlocal_vector)[0][_\bm_\by_\b__\br_\bo_\bw] += _\bv_\ba_\bl_\bu_\be_\bs[i];\n+1792 (*nonlocal_vector)[0][my_row] += _\bv_\ba_\bl_\bu_\be_\bs[i];\n 1793 _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd = false;\n 1794 }\n 1795 }\n 1796 }\n 1797\n 1798\n 1799\n@@ -909,24 +909,24 @@\n 1842 }\n 1843\n 1844\n 1845\n 1846 inline _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n 1847 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*(const _\bV_\be_\bc_\bt_\bo_\br &vec) const\n 1848 {\n-1849 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(_\bv_\be_\bc.vector->Map()),\n+1849 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(vec.vector->Map()),\n 1850 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg());\n 1851 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 1852\n-1853 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\br_\be_\bs_\bu_\bl_\bt;\n+1853 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br result;\n 1854\n-1855 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Dot(*(_\bv_\be_\bc.vector), &_\br_\be_\bs_\bu_\bl_\bt);\n-1856 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1855 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Dot(*(vec.vector), &result);\n+1856 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1857\n-1858 return _\br_\be_\bs_\bu_\bl_\bt;\n+1858 return result;\n 1859 }\n 1860\n 1861\n 1862\n 1863 inline _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\n 1864 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bn_\bo_\br_\bm_\b__\bs_\bq_\br() const\n 1865 {\n@@ -938,86 +938,86 @@\n 1871\n 1872 inline _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n 1873 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bm_\be_\ba_\bn_\b__\bv_\ba_\bl_\bu_\be() const\n 1874 {\n 1875 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 1876\n 1877 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bm_\be_\ba_\bn;\n-1878 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->MeanValue(&mean);\n-1879 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1878 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->MeanValue(&mean);\n+1879 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1880\n 1881 return _\bm_\be_\ba_\bn;\n 1882 }\n 1883\n 1884\n 1885\n 1886 inline _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n 1887 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bm_\bi_\bn() const\n 1888 {\n-1889 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bm_\bi_\bn_\b__\bv_\ba_\bl_\bu_\be;\n-1890 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->MinValue(&_\bm_\bi_\bn_\b__\bv_\ba_\bl_\bu_\be);\n-1891 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1889 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br min_value;\n+1890 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->MinValue(&min_value);\n+1891 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1892\n-1893 return _\bm_\bi_\bn_\b__\bv_\ba_\bl_\bu_\be;\n+1893 return min_value;\n 1894 }\n 1895\n 1896\n 1897\n 1898 inline _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n 1899 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bm_\ba_\bx() const\n 1900 {\n-1901 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bm_\ba_\bx_\b__\bv_\ba_\bl_\bu_\be;\n-1902 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->MaxValue(&_\bm_\ba_\bx_\b__\bv_\ba_\bl_\bu_\be);\n-1903 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1901 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br max_value;\n+1902 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->MaxValue(&max_value);\n+1903 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1904\n-1905 return _\bm_\ba_\bx_\b__\bv_\ba_\bl_\bu_\be;\n+1905 return max_value;\n 1906 }\n 1907\n 1908\n 1909\n 1910 inline _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\n 1911 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bl_\b1_\b__\bn_\bo_\br_\bm() const\n 1912 {\n 1913 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 1914\n 1915 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bd;\n-1916 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Norm1(&d);\n-1917 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1916 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Norm1(&d);\n+1917 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1918\n 1919 return _\bd;\n 1920 }\n 1921\n 1922\n 1923\n 1924 inline _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\n 1925 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bl_\b2_\b__\bn_\bo_\br_\bm() const\n 1926 {\n 1927 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 1928\n 1929 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bd;\n-1930 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Norm2(&d);\n-1931 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1930 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Norm2(&d);\n+1931 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1932\n 1933 return _\bd;\n 1934 }\n 1935\n 1936\n 1937\n 1938 inline _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\br_\be_\ba_\bl_\b__\bt_\by_\bp_\be\n 1939 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bl_\bp_\b__\bn_\bo_\br_\bm(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br p) const\n 1940 {\n 1941 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 1942\n 1943 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bn_\bo_\br_\bm = 0;\n 1944 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bs_\bu_\bm = 0;\n-1945 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bn_\b__\bl_\bo_\bc_\ba_\bl = _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be();\n+1945 const _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_local = _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be();\n 1946\n 1947 // loop over all the elements because\n 1948 // Trilinos does not support lp norms\n-1949 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < _\bn_\b__\bl_\bo_\bc_\ba_\bl; ++i)\n+1949 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < n_local; ++i)\n 1950 sum += _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(std::fabs((*_\bv_\be_\bc_\bt_\bo_\br)[0][i]), p);\n 1951\n 1952 _\bn_\bo_\br_\bm = _\bs_\bt_\bd_\b:_\b:_\bp_\bo_\bw(sum, static_cast<_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br>(1. / p));\n 1953\n 1954 return _\bn_\bo_\br_\bm;\n 1955 }\n 1956\n@@ -1028,16 +1028,16 @@\n 1961 {\n 1962 // while we disallow the other\n 1963 // norm operations on ghosted\n 1964 // vectors, this particular norm\n 1965 // is safe to run even in the\n 1966 // presence of ghost elements\n 1967 _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br _\bd;\n-1968 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->NormInf(&d);\n-1969 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1968 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->NormInf(&d);\n+1969 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1970\n 1971 return _\bd;\n 1972 }\n 1973\n 1974\n 1975\n 1976 inline _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br\n@@ -1057,16 +1057,16 @@\n 1990 // call. This reduces the overhead of the\n 1991 // wrapper class.\n 1992 inline _\bV_\be_\bc_\bt_\bo_\br &\n 1993 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b*_\b=(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a)\n 1994 {\n 1995 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 1996\n-1997 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Scale(a);\n-1998 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+1997 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Scale(a);\n+1998 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 1999\n 2000 return *this;\n 2001 }\n 2002\n 2003\n 2004\n 2005 inline _\bV_\be_\bc_\bt_\bo_\br &\n@@ -1074,62 +1074,62 @@\n 2007 {\n 2008 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 2009\n 2010 const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br factor = 1. / a;\n 2011\n 2012 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(factor);\n 2013\n-2014 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Scale(factor);\n-2015 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2014 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Scale(factor);\n+2015 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2016\n 2017 return *this;\n 2018 }\n 2019\n 2020\n 2021\n 2022 inline _\bV_\be_\bc_\bt_\bo_\br &\n 2023 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b+_\b=(const _\bV_\be_\bc_\bt_\bo_\br &v)\n 2024 {\n 2025 _\bA_\bs_\bs_\be_\br_\bt_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn(_\bs_\bi_\bz_\be(), v._\bs_\bi_\bz_\be());\n 2026 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(v.vector->Map()),\n 2027 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg());\n 2028\n-2029 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(1.0, *(v.vector), 1.0);\n-2030 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2029 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(1.0, *(v.vector), 1.0);\n+2030 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2031\n 2032 return *this;\n 2033 }\n 2034\n 2035\n 2036\n 2037 inline _\bV_\be_\bc_\bt_\bo_\br &\n 2038 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b-_\b=(const _\bV_\be_\bc_\bt_\bo_\br &v)\n 2039 {\n 2040 _\bA_\bs_\bs_\be_\br_\bt_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn(_\bs_\bi_\bz_\be(), v._\bs_\bi_\bz_\be());\n 2041 _\bA_\bs_\bs_\be_\br_\bt(_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(v.vector->Map()),\n 2042 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg());\n 2043\n-2044 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(-1.0, *(v.vector), 1.0);\n-2045 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2044 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(-1.0, *(v.vector), 1.0);\n+2045 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2046\n 2047 return *this;\n 2048 }\n 2049\n 2050\n 2051\n 2052 inline void\n 2053 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bd_\bd(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s)\n 2054 {\n 2055 // if we have ghost values, do not allow\n 2056 // writing to this vector at all.\n 2057 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 2058 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(s);\n 2059\n-2060 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bn_\b__\bl_\bo_\bc_\ba_\bl = _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be();\n-2061 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < _\bn_\b__\bl_\bo_\bc_\ba_\bl; ++i)\n+2060 _\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be n_local = _\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be();\n+2061 for (_\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be i = 0; i < n_local; ++i)\n 2062 (*_\bv_\be_\bc_\bt_\bo_\br)[0][i] += s;\n 2063 }\n 2064\n 2065\n 2066\n 2067 inline void\n 2068 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bd_\bd(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, const _\bV_\be_\bc_\bt_\bo_\br &v)\n@@ -1137,16 +1137,16 @@\n 2070 // if we have ghost values, do not allow\n 2071 // writing to this vector at all.\n 2072 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 2073 _\bA_\bs_\bs_\be_\br_\bt_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn(_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be(), v._\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be());\n 2074\n 2075 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 2076\n-2077 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(a, *(v.vector), 1.);\n-2078 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2077 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(a, *(v.vector), 1.);\n+2078 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2079 }\n 2080\n 2081\n 2082\n 2083 inline void\n 2084 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\ba_\bd_\bd(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a,\n 2085 const _\bV_\be_\bc_\bt_\bo_\br &v,\n@@ -1158,17 +1158,17 @@\n 2091 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 2092 _\bA_\bs_\bs_\be_\br_\bt_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn(_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be(), v._\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be());\n 2093 _\bA_\bs_\bs_\be_\br_\bt_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn(_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be(), _\bw.locally_owned_size());\n 2094\n 2095 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(a);\n 2096 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(b);\n 2097\n-2098 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(a, *(v.vector), b, *(_\bw.vector), 1.);\n+2098 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(a, *(v.vector), b, *(_\bw.vector), 1.);\n 2099\n-2100 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2100 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2101 }\n 2102\n 2103\n 2104\n 2105 inline void\n 2106 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\ba_\bd_\bd(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s, const _\bV_\be_\bc_\bt_\bo_\br &v)\n 2107 {\n@@ -1182,16 +1182,16 @@\n 2115 // We assume that the vectors have the same Map\n 2116 // if the local size is the same and if the vectors are not ghosted\n 2117 if (_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be() == v._\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be() &&\n 2118 !v._\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs())\n 2119 {\n 2120 _\bA_\bs_\bs_\be_\br_\bt(this->_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(v.vector->Map()) == true,\n 2121 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg());\n-2122 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(1., *(v.vector), s);\n-2123 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2122 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(1., *(v.vector), s);\n+2123 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2124 }\n 2125 else\n 2126 {\n 2127 (*this) *= s;\n 2128 this->_\ba_\bd_\bd(v, true);\n 2129 }\n 2130 }\n@@ -1213,16 +1213,16 @@\n 2146 // We assume that the vectors have the same Map\n 2147 // if the local size is the same and if the vectors are not ghosted\n 2148 if (_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be() == v._\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be() &&\n 2149 !v._\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs())\n 2150 {\n 2151 _\bA_\bs_\bs_\be_\br_\bt(this->_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(v.vector->Map()) == true,\n 2152 _\bE_\bx_\bc_\bD_\bi_\bf_\bf_\be_\br_\be_\bn_\bt_\bP_\ba_\br_\ba_\bl_\bl_\be_\bl_\bP_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\bi_\bn_\bg());\n-2153 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(a, *(v.vector), s);\n-2154 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2153 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(a, *(v.vector), s);\n+2154 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2155 }\n 2156 else\n 2157 {\n 2158 (*this) *= s;\n 2159 _\bV_\be_\bc_\bt_\bo_\br tmp = v;\n 2160 tmp *= a;\n 2161 this->_\ba_\bd_\bd(tmp, true);\n@@ -1235,16 +1235,16 @@\n 2168 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bs_\bc_\ba_\bl_\be(const _\bV_\be_\bc_\bt_\bo_\br &factors)\n 2169 {\n 2170 // if we have ghost values, do not allow\n 2171 // writing to this vector at all.\n 2172 _\bA_\bs_\bs_\be_\br_\bt(!_\bh_\ba_\bs_\b__\bg_\bh_\bo_\bs_\bt_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs(), _\bE_\bx_\bc_\bG_\bh_\bo_\bs_\bt_\bs_\bP_\br_\be_\bs_\be_\bn_\bt());\n 2173 _\bA_\bs_\bs_\be_\br_\bt_\bD_\bi_\bm_\be_\bn_\bs_\bi_\bo_\bn(_\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be(), factors._\bl_\bo_\bc_\ba_\bl_\bl_\by_\b__\bo_\bw_\bn_\be_\bd_\b__\bs_\bi_\bz_\be());\n 2174\n-2175 const int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Multiply(1.0, *(factors.vector), *_\bv_\be_\bc_\bt_\bo_\br, 0.0);\n-2176 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2175 const int ierr = _\bv_\be_\bc_\bt_\bo_\br->Multiply(1.0, *(factors.vector), *_\bv_\be_\bc_\bt_\bo_\br, 0.0);\n+2176 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2177 }\n 2178\n 2179\n 2180\n 2181 inline void\n 2182 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\be_\bq_\bu(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br a, const _\bV_\be_\bc_\bt_\bo_\br &v)\n 2183 {\n@@ -1257,18 +1257,18 @@\n 2190 if (_\bv_\be_\bc_\bt_\bo_\br->Map().SameAs(v.vector->Map()) == false)\n 2191 {\n 2192 this->_\bs_\ba_\bd_\bd(0., a, v);\n 2193 }\n 2194 else\n 2195 {\n 2196 // Otherwise, just update\n-2197 int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->Update(a, *v.vector, 0.0);\n-2198 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2197 int ierr = _\bv_\be_\bc_\bt_\bo_\br->Update(a, *v.vector, 0.0);\n+2198 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2199\n-2200 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = _\bZ_\be_\br_\bo;\n+2200 _\bl_\ba_\bs_\bt_\b__\ba_\bc_\bt_\bi_\bo_\bn = Zero;\n 2201 }\n 2202 }\n 2203\n 2204\n 2205\n 2206 inline const Epetra_MultiVector &\n 2207 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bv_\be_\bc_\bt_\bo_\br() const\n@@ -1306,32 +1306,32 @@\n 2239\n 2240 template \n 2241 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bV_\be_\bc_\bt_\bo_\br(const _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt ¶llel_partitioner,\n 2242 const ::Vector &v,\n 2243 const _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm communicator)\n 2244 {\n 2245 *this =\n-2246 _\bV_\be_\bc_\bt_\bo_\br(_\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br.make_trilinos_map(communicator, true), v);\n-2247 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = _\bp_\ba_\br_\ba_\bl_\bl_\be_\bl_\b__\bp_\ba_\br_\bt_\bi_\bt_\bi_\bo_\bn_\be_\br;\n+2246 _\bV_\be_\bc_\bt_\bo_\br(parallel_partitioner._\bm_\ba_\bk_\be_\b__\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bp(communicator, true), v);\n+2247 _\bo_\bw_\bn_\be_\bd_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs = parallel_partitioner;\n 2248 }\n 2249\n 2250\n 2251\n 2252 inline _\bV_\be_\bc_\bt_\bo_\br &\n 2253 _\bV_\be_\bc_\bt_\bo_\br_\b:_\b:_\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b=(const _\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bS_\bc_\ba_\bl_\ba_\br s)\n 2254 {\n 2255 _\bA_\bs_\bs_\be_\br_\bt_\bI_\bs_\bF_\bi_\bn_\bi_\bt_\be(s);\n 2256\n-2257 int _\bi_\be_\br_\br = _\bv_\be_\bc_\bt_\bo_\br->PutScalar(s);\n-2258 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2257 int ierr = _\bv_\be_\bc_\bt_\bo_\br->PutScalar(s);\n+2258 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2259\n 2260 if (_\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br.get() != nullptr)\n 2261 {\n-2262 _\bi_\be_\br_\br = _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br->PutScalar(0.);\n-2263 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(_\bi_\be_\br_\br == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(_\bi_\be_\br_\br));\n+2262 ierr = _\bn_\bo_\bn_\bl_\bo_\bc_\ba_\bl_\b__\bv_\be_\bc_\bt_\bo_\br->PutScalar(0.);\n+2263 _\bA_\bs_\bs_\be_\br_\bt_\bT_\bh_\br_\bo_\bw(ierr == 0, _\bE_\bx_\bc_\bT_\br_\bi_\bl_\bi_\bn_\bo_\bs_\bE_\br_\br_\bo_\br(ierr));\n 2264 }\n 2265\n 2266 return *this;\n 2267 }\n 2268 } /* end of namespace MPI */\n 2269\n 2270# endif /* DOXYGEN */\n@@ -1399,14 +1399,18 @@\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b7_\b0\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bs_\bi_\bz_\be\n size_type size() const\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b7_\b7_\b6\n _\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bn_\b__\be_\bl_\be_\bm_\be_\bn_\bt_\bs\n size_type n_elements() const\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bh_\b:_\b1_\b9_\b3_\b4\n+_\bI_\bn_\bd_\be_\bx_\bS_\be_\bt_\b:_\b:_\bm_\ba_\bk_\be_\b__\bt_\br_\bi_\bl_\bi_\bn_\bo_\bs_\b__\bm_\ba_\bp\n+Epetra_Map make_trilinos_map(const MPI_Comm communicator=MPI_COMM_WORLD, const\n+bool overlapping=false) const\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bi_\bn_\bd_\be_\bx_\b__\bs_\be_\bt_\b._\bc_\bc_\b:_\b1_\b0_\b4_\b1\n _\bL_\bi_\bn_\be_\ba_\br_\bA_\bl_\bg_\be_\bb_\br_\ba_\b:_\b:_\bR_\be_\ba_\bd_\bW_\br_\bi_\bt_\be_\bV_\be_\bc_\bt_\bo_\br\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\br_\be_\ba_\bd_\b__\bw_\br_\bi_\bt_\be_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b1_\b3_\b7\n _\bM_\bP_\bI_\b__\bC_\bo_\bm_\bm\n _\bR_\be_\ba_\bd_\bV_\be_\bc_\bt_\bo_\br\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\br_\be_\ba_\bd_\b__\bv_\be_\bc_\bt_\bo_\br_\b._\bh_\b:_\b4_\b1\n _\bS_\bp_\ba_\br_\bs_\be_\bM_\ba_\bt_\br_\bi_\bx\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn _\bs_\bp_\ba_\br_\bs_\be_\b__\bm_\ba_\bt_\br_\bi_\bx_\b._\bh_\b:_\b5_\b2_\b0\n"}]}]}]}]}]}