diff --git a/docs/html/cmsy10-42.png b/docs/html/cmsy10-42.png new file mode 100644 index 00000000..3e3ff34f Binary files /dev/null and b/docs/html/cmsy10-42.png differ diff --git a/docs/html/cmsy10-48.png b/docs/html/cmsy10-48.png new file mode 100644 index 00000000..b5d0fbf1 Binary files /dev/null and b/docs/html/cmsy10-48.png differ diff --git a/docs/html/cmsy10-49.png b/docs/html/cmsy10-49.png new file mode 100644 index 00000000..b44b91b4 Binary files /dev/null and b/docs/html/cmsy10-49.png differ diff --git a/docs/html/contents.png b/docs/html/contents.png deleted file mode 100644 index 0c752c66..00000000 Binary files a/docs/html/contents.png and /dev/null differ diff --git a/docs/html/footnode.html b/docs/html/footnode.html deleted file mode 100644 index e64ce8b0..00000000 --- a/docs/html/footnode.html +++ /dev/null @@ -1,218 +0,0 @@ - - - - - -Footnotes - - - - - - - - - - - - - - - - -
-
... -explicitly1
-
In our prototype implementation we provide -sample scatter/gather routines. - -
.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-
-
-
... domain2
-
This is - the normal situation when the pattern of the sparse matrix is - symmetric, which is equivalent to say that the interaction between - two variables is reciprocal. If the matrix pattern is non-symmetric - we may have one-way interactions, and these could cause a situation - in which a boundary point is not a halo point for its neighbour. - -
.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-
-
-
... prec%build3
-
The subroutine style psb_precinit and psb_precbl are still supported for - backward compatibility - -
.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-
-
-
... follows4
-
The string is case-insensitive - -
.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-
-
-
... method5
-
Note: - the implementation is for $FCG(1)$. - -
.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-
-
-
- - diff --git a/docs/html/img1.png b/docs/html/img1.png deleted file mode 100644 index cd42f36d..00000000 Binary files a/docs/html/img1.png and /dev/null differ diff --git a/docs/html/img10.png b/docs/html/img10.png deleted file mode 100644 index b48c03a1..00000000 Binary files a/docs/html/img10.png and /dev/null differ diff --git a/docs/html/img100.png b/docs/html/img100.png deleted file mode 100644 index 1de70161..00000000 Binary files a/docs/html/img100.png and /dev/null differ diff --git a/docs/html/img101.png b/docs/html/img101.png deleted file mode 100644 index e9a24ade..00000000 Binary files a/docs/html/img101.png and /dev/null differ diff --git a/docs/html/img102.png b/docs/html/img102.png deleted file mode 100644 index 5ef2e96d..00000000 Binary files a/docs/html/img102.png and /dev/null differ diff --git a/docs/html/img103.png b/docs/html/img103.png deleted file mode 100644 index 28ab2644..00000000 Binary files a/docs/html/img103.png and /dev/null differ diff --git a/docs/html/img104.png b/docs/html/img104.png deleted file mode 100644 index b35a9abd..00000000 Binary files a/docs/html/img104.png and /dev/null differ diff --git a/docs/html/img105.png b/docs/html/img105.png deleted file mode 100644 index c7e70459..00000000 Binary files a/docs/html/img105.png and /dev/null differ diff --git a/docs/html/img106.png b/docs/html/img106.png deleted file mode 100644 index 7a082202..00000000 Binary files a/docs/html/img106.png and /dev/null differ diff --git a/docs/html/img107.png b/docs/html/img107.png deleted file mode 100644 index 67d8c428..00000000 Binary files a/docs/html/img107.png and /dev/null differ diff --git a/docs/html/img108.png b/docs/html/img108.png deleted file mode 100644 index b0aecc78..00000000 Binary files a/docs/html/img108.png and /dev/null differ diff --git a/docs/html/img109.png b/docs/html/img109.png deleted file mode 100644 index 9d543009..00000000 Binary files a/docs/html/img109.png and /dev/null differ diff --git a/docs/html/img11.png b/docs/html/img11.png deleted file mode 100644 index c7a68c0c..00000000 Binary files a/docs/html/img11.png and /dev/null differ diff --git a/docs/html/img110.png b/docs/html/img110.png deleted file mode 100644 index 5d4c921c..00000000 Binary files a/docs/html/img110.png and /dev/null differ diff --git a/docs/html/img111.png b/docs/html/img111.png deleted file mode 100644 index cafe2f8c..00000000 Binary files a/docs/html/img111.png and /dev/null differ diff --git a/docs/html/img112.png b/docs/html/img112.png deleted file mode 100644 index 186f0129..00000000 Binary files a/docs/html/img112.png and /dev/null differ diff --git a/docs/html/img113.png b/docs/html/img113.png deleted file mode 100644 index 04b0bcfe..00000000 Binary files a/docs/html/img113.png and /dev/null differ diff --git a/docs/html/img114.png b/docs/html/img114.png deleted file mode 100644 index 9d23e3e4..00000000 Binary files a/docs/html/img114.png and /dev/null differ diff --git a/docs/html/img115.png b/docs/html/img115.png deleted file mode 100644 index ccf4bf84..00000000 Binary files a/docs/html/img115.png and /dev/null differ diff --git a/docs/html/img116.png b/docs/html/img116.png deleted file mode 100644 index a5c4fed2..00000000 Binary files a/docs/html/img116.png and /dev/null differ diff --git a/docs/html/img117.png b/docs/html/img117.png deleted file mode 100644 index 675861d5..00000000 Binary files a/docs/html/img117.png and /dev/null differ diff --git a/docs/html/img118.png b/docs/html/img118.png deleted file mode 100644 index a9b18c20..00000000 Binary files a/docs/html/img118.png and /dev/null differ diff --git a/docs/html/img119.png b/docs/html/img119.png deleted file mode 100644 index 0f0b60de..00000000 Binary files a/docs/html/img119.png and /dev/null differ diff --git a/docs/html/img12.png b/docs/html/img12.png deleted file mode 100644 index bd8cd345..00000000 Binary files a/docs/html/img12.png and /dev/null differ diff --git a/docs/html/img120.png b/docs/html/img120.png deleted file mode 100644 index 924abf43..00000000 Binary files a/docs/html/img120.png and /dev/null differ diff --git a/docs/html/img121.png b/docs/html/img121.png deleted file mode 100644 index 8a9a6680..00000000 Binary files a/docs/html/img121.png and /dev/null differ diff --git a/docs/html/img122.png b/docs/html/img122.png deleted file mode 100644 index c3f88957..00000000 Binary files a/docs/html/img122.png and /dev/null differ diff --git a/docs/html/img123.png b/docs/html/img123.png deleted file mode 100644 index 55455b44..00000000 Binary files a/docs/html/img123.png and /dev/null differ diff --git a/docs/html/img124.png b/docs/html/img124.png deleted file mode 100644 index 12d99124..00000000 Binary files a/docs/html/img124.png and /dev/null differ diff --git a/docs/html/img125.png b/docs/html/img125.png deleted file mode 100644 index 8d05ac1e..00000000 Binary files a/docs/html/img125.png and /dev/null differ diff --git a/docs/html/img126.png b/docs/html/img126.png deleted file mode 100644 index 7fd2c57b..00000000 Binary files a/docs/html/img126.png and /dev/null differ diff --git a/docs/html/img127.png b/docs/html/img127.png deleted file mode 100644 index 6fca14d1..00000000 Binary files a/docs/html/img127.png and /dev/null differ diff --git a/docs/html/img128.png b/docs/html/img128.png deleted file mode 100644 index c200d248..00000000 Binary files a/docs/html/img128.png and /dev/null differ diff --git a/docs/html/img129.png b/docs/html/img129.png deleted file mode 100644 index f59cfc6d..00000000 Binary files a/docs/html/img129.png and /dev/null differ diff --git a/docs/html/img13.png b/docs/html/img13.png deleted file mode 100644 index 67da3cbe..00000000 Binary files a/docs/html/img13.png and /dev/null differ diff --git a/docs/html/img130.png b/docs/html/img130.png deleted file mode 100644 index 5ebff67e..00000000 Binary files a/docs/html/img130.png and /dev/null differ diff --git a/docs/html/img131.png b/docs/html/img131.png deleted file mode 100644 index 1a5d08a4..00000000 Binary files a/docs/html/img131.png and /dev/null differ diff --git a/docs/html/img132.png b/docs/html/img132.png deleted file mode 100644 index 8cee1ec5..00000000 Binary files a/docs/html/img132.png and /dev/null differ diff --git a/docs/html/img133.png b/docs/html/img133.png deleted file mode 100644 index 8cab4f5d..00000000 Binary files a/docs/html/img133.png and /dev/null differ diff --git a/docs/html/img134.png b/docs/html/img134.png deleted file mode 100644 index aa9b07e5..00000000 Binary files a/docs/html/img134.png and /dev/null differ diff --git a/docs/html/img135.png b/docs/html/img135.png deleted file mode 100644 index a401e0c6..00000000 Binary files a/docs/html/img135.png and /dev/null differ diff --git a/docs/html/img136.png b/docs/html/img136.png deleted file mode 100644 index 5073badd..00000000 Binary files a/docs/html/img136.png and /dev/null differ diff --git a/docs/html/img137.png b/docs/html/img137.png deleted file mode 100644 index b75a705f..00000000 Binary files a/docs/html/img137.png and /dev/null differ diff --git a/docs/html/img138.png b/docs/html/img138.png deleted file mode 100644 index c01455b4..00000000 Binary files a/docs/html/img138.png and /dev/null differ diff --git a/docs/html/img139.png b/docs/html/img139.png deleted file mode 100644 index abc14760..00000000 Binary files a/docs/html/img139.png and /dev/null differ diff --git a/docs/html/img14.png b/docs/html/img14.png deleted file mode 100644 index b25c6bc2..00000000 Binary files a/docs/html/img14.png and /dev/null differ diff --git a/docs/html/img140.png b/docs/html/img140.png deleted file mode 100644 index 0f239c6e..00000000 Binary files a/docs/html/img140.png and /dev/null differ diff --git a/docs/html/img141.png b/docs/html/img141.png deleted file mode 100644 index 9b6ca9ae..00000000 Binary files a/docs/html/img141.png and /dev/null differ diff --git a/docs/html/img142.png b/docs/html/img142.png deleted file mode 100644 index 3dd009ea..00000000 Binary files a/docs/html/img142.png and /dev/null differ diff --git a/docs/html/img143.png b/docs/html/img143.png deleted file mode 100644 index 36ad10f5..00000000 Binary files a/docs/html/img143.png and /dev/null differ diff --git a/docs/html/img144.png b/docs/html/img144.png deleted file mode 100644 index e6df3625..00000000 Binary files a/docs/html/img144.png and /dev/null differ diff --git a/docs/html/img145.png b/docs/html/img145.png deleted file mode 100644 index 4601d68b..00000000 Binary files a/docs/html/img145.png and /dev/null differ diff --git a/docs/html/img146.png b/docs/html/img146.png deleted file mode 100644 index a5dd1399..00000000 Binary files a/docs/html/img146.png and /dev/null differ diff --git a/docs/html/img147.png b/docs/html/img147.png deleted file mode 100644 index 9e500d08..00000000 Binary files a/docs/html/img147.png and /dev/null differ diff --git a/docs/html/img148.png b/docs/html/img148.png deleted file mode 100644 index 8a6557d6..00000000 Binary files a/docs/html/img148.png and /dev/null differ diff --git a/docs/html/img149.png b/docs/html/img149.png deleted file mode 100644 index 880471c1..00000000 Binary files a/docs/html/img149.png and /dev/null differ diff --git a/docs/html/img15.png b/docs/html/img15.png deleted file mode 100644 index caa6250f..00000000 Binary files a/docs/html/img15.png and /dev/null differ diff --git a/docs/html/img150.png b/docs/html/img150.png deleted file mode 100644 index 3a2c9842..00000000 Binary files a/docs/html/img150.png and /dev/null differ diff --git a/docs/html/img151.png b/docs/html/img151.png deleted file mode 100644 index 29165045..00000000 Binary files a/docs/html/img151.png and /dev/null differ diff --git a/docs/html/img152.png b/docs/html/img152.png deleted file mode 100644 index e69de29b..00000000 diff --git a/docs/html/img153.png b/docs/html/img153.png deleted file mode 100644 index 1aff2199..00000000 Binary files a/docs/html/img153.png and /dev/null differ diff --git a/docs/html/img154.png b/docs/html/img154.png deleted file mode 100644 index e69de29b..00000000 diff --git a/docs/html/img155.png b/docs/html/img155.png deleted file mode 100644 index 8aa307f4..00000000 Binary files a/docs/html/img155.png and /dev/null differ diff --git a/docs/html/img156.png b/docs/html/img156.png deleted file mode 100644 index 2c32cbd7..00000000 Binary files a/docs/html/img156.png and /dev/null differ diff --git a/docs/html/img157.png b/docs/html/img157.png deleted file mode 100644 index d879d97d..00000000 Binary files a/docs/html/img157.png and /dev/null differ diff --git a/docs/html/img158.png b/docs/html/img158.png deleted file mode 100644 index a0a4f4ce..00000000 Binary files a/docs/html/img158.png and /dev/null differ diff --git a/docs/html/img159.png b/docs/html/img159.png deleted file mode 100644 index b5d94341..00000000 Binary files a/docs/html/img159.png and /dev/null differ diff --git a/docs/html/img16.png b/docs/html/img16.png deleted file mode 100644 index 608f15e4..00000000 Binary files a/docs/html/img16.png and /dev/null differ diff --git a/docs/html/img160.png b/docs/html/img160.png deleted file mode 100644 index df796cf8..00000000 Binary files a/docs/html/img160.png and /dev/null differ diff --git a/docs/html/img161.png b/docs/html/img161.png deleted file mode 100644 index c8d5b054..00000000 Binary files a/docs/html/img161.png and /dev/null differ diff --git a/docs/html/img162.png b/docs/html/img162.png deleted file mode 100644 index 03090618..00000000 Binary files a/docs/html/img162.png and /dev/null differ diff --git a/docs/html/img163.png b/docs/html/img163.png deleted file mode 100644 index 88b80deb..00000000 Binary files a/docs/html/img163.png and /dev/null differ diff --git a/docs/html/img164.png b/docs/html/img164.png deleted file mode 100644 index 6f5ce4e0..00000000 Binary files a/docs/html/img164.png and /dev/null differ diff --git a/docs/html/img165.png b/docs/html/img165.png deleted file mode 100644 index 16153550..00000000 Binary files a/docs/html/img165.png and /dev/null differ diff --git a/docs/html/img166.png b/docs/html/img166.png deleted file mode 100644 index d58201ce..00000000 Binary files a/docs/html/img166.png and /dev/null differ diff --git a/docs/html/img167.png b/docs/html/img167.png deleted file mode 100644 index 94bbf7b7..00000000 Binary files a/docs/html/img167.png and /dev/null differ diff --git a/docs/html/img168.png b/docs/html/img168.png deleted file mode 100644 index 76add9a9..00000000 Binary files a/docs/html/img168.png and /dev/null differ diff --git a/docs/html/img169.png b/docs/html/img169.png deleted file mode 100644 index 07f805b5..00000000 Binary files a/docs/html/img169.png and /dev/null differ diff --git a/docs/html/img17.png b/docs/html/img17.png deleted file mode 100644 index 32f37cf9..00000000 Binary files a/docs/html/img17.png and /dev/null differ diff --git a/docs/html/img170.png b/docs/html/img170.png deleted file mode 100644 index a8b974e1..00000000 Binary files a/docs/html/img170.png and /dev/null differ diff --git a/docs/html/img171.png b/docs/html/img171.png deleted file mode 100644 index 2222ebd6..00000000 Binary files a/docs/html/img171.png and /dev/null differ diff --git a/docs/html/img172.png b/docs/html/img172.png deleted file mode 100644 index 23705ace..00000000 Binary files a/docs/html/img172.png and /dev/null differ diff --git a/docs/html/img173.png b/docs/html/img173.png deleted file mode 100644 index 37772645..00000000 Binary files a/docs/html/img173.png and /dev/null differ diff --git a/docs/html/img174.png b/docs/html/img174.png deleted file mode 100644 index 83c3b216..00000000 Binary files a/docs/html/img174.png and /dev/null differ diff --git a/docs/html/img175.png b/docs/html/img175.png deleted file mode 100644 index fab086ae..00000000 Binary files a/docs/html/img175.png and /dev/null differ diff --git a/docs/html/img176.png b/docs/html/img176.png deleted file mode 100644 index e2b7017b..00000000 Binary files a/docs/html/img176.png and /dev/null differ diff --git a/docs/html/img177.png b/docs/html/img177.png deleted file mode 100644 index 436631b1..00000000 Binary files a/docs/html/img177.png and /dev/null differ diff --git a/docs/html/img178.png b/docs/html/img178.png deleted file mode 100644 index dd6c5b66..00000000 Binary files a/docs/html/img178.png and /dev/null differ diff --git a/docs/html/img179.png b/docs/html/img179.png deleted file mode 100644 index 407f4fcf..00000000 Binary files a/docs/html/img179.png and /dev/null differ diff --git a/docs/html/img18.png b/docs/html/img18.png deleted file mode 100644 index 9d6efc74..00000000 Binary files a/docs/html/img18.png and /dev/null differ diff --git a/docs/html/img180.png b/docs/html/img180.png deleted file mode 100644 index 74fe78cf..00000000 Binary files a/docs/html/img180.png and /dev/null differ diff --git a/docs/html/img181.png b/docs/html/img181.png deleted file mode 100644 index 190cdb3d..00000000 Binary files a/docs/html/img181.png and /dev/null differ diff --git a/docs/html/img19.png b/docs/html/img19.png deleted file mode 100644 index dcbb7dcd..00000000 Binary files a/docs/html/img19.png and /dev/null differ diff --git a/docs/html/img2.png b/docs/html/img2.png deleted file mode 100644 index bc1204e6..00000000 Binary files a/docs/html/img2.png and /dev/null differ diff --git a/docs/html/img20.png b/docs/html/img20.png deleted file mode 100644 index 4dab8d11..00000000 Binary files a/docs/html/img20.png and /dev/null differ diff --git a/docs/html/img21.png b/docs/html/img21.png deleted file mode 100644 index 4c426360..00000000 Binary files a/docs/html/img21.png and /dev/null differ diff --git a/docs/html/img22.png b/docs/html/img22.png deleted file mode 100644 index 8b373dfe..00000000 Binary files a/docs/html/img22.png and /dev/null differ diff --git a/docs/html/img23.png b/docs/html/img23.png deleted file mode 100644 index ec1dd04f..00000000 Binary files a/docs/html/img23.png and /dev/null differ diff --git a/docs/html/img24.png b/docs/html/img24.png deleted file mode 100644 index e950e9c4..00000000 Binary files a/docs/html/img24.png and /dev/null differ diff --git a/docs/html/img25.png b/docs/html/img25.png deleted file mode 100644 index a6e95bc8..00000000 Binary files a/docs/html/img25.png and /dev/null differ diff --git a/docs/html/img26.png b/docs/html/img26.png deleted file mode 100644 index 2a74cbc2..00000000 Binary files a/docs/html/img26.png and /dev/null differ diff --git a/docs/html/img27.png b/docs/html/img27.png deleted file mode 100644 index 45c665f7..00000000 Binary files a/docs/html/img27.png and /dev/null differ diff --git a/docs/html/img28.png b/docs/html/img28.png deleted file mode 100644 index bed5f515..00000000 Binary files a/docs/html/img28.png and /dev/null differ diff --git a/docs/html/img29.png b/docs/html/img29.png deleted file mode 100644 index 91b803eb..00000000 Binary files a/docs/html/img29.png and /dev/null differ diff --git a/docs/html/img3.png b/docs/html/img3.png deleted file mode 100644 index 61ee834b..00000000 Binary files a/docs/html/img3.png and /dev/null differ diff --git a/docs/html/img30.png b/docs/html/img30.png deleted file mode 100644 index b58862a8..00000000 Binary files a/docs/html/img30.png and /dev/null differ diff --git a/docs/html/img31.png b/docs/html/img31.png deleted file mode 100644 index c4eea6dd..00000000 Binary files a/docs/html/img31.png and /dev/null differ diff --git a/docs/html/img32.png b/docs/html/img32.png deleted file mode 100644 index 3e48d0d2..00000000 Binary files a/docs/html/img32.png and /dev/null differ diff --git a/docs/html/img33.png b/docs/html/img33.png deleted file mode 100644 index 343e8b8f..00000000 Binary files a/docs/html/img33.png and /dev/null differ diff --git a/docs/html/img34.png b/docs/html/img34.png deleted file mode 100644 index 777f229e..00000000 Binary files a/docs/html/img34.png and /dev/null differ diff --git a/docs/html/img35.png b/docs/html/img35.png deleted file mode 100644 index 6237d47b..00000000 Binary files a/docs/html/img35.png and /dev/null differ diff --git a/docs/html/img36.png b/docs/html/img36.png deleted file mode 100644 index f274e7cc..00000000 Binary files a/docs/html/img36.png and /dev/null differ diff --git a/docs/html/img37.png b/docs/html/img37.png deleted file mode 100644 index 7f95e366..00000000 Binary files a/docs/html/img37.png and /dev/null differ diff --git a/docs/html/img38.png b/docs/html/img38.png deleted file mode 100644 index d1f5a07f..00000000 Binary files a/docs/html/img38.png and /dev/null differ diff --git a/docs/html/img39.png b/docs/html/img39.png deleted file mode 100644 index da916ca5..00000000 Binary files a/docs/html/img39.png and /dev/null differ diff --git a/docs/html/img4.png b/docs/html/img4.png deleted file mode 100644 index c82f95ae..00000000 Binary files a/docs/html/img4.png and /dev/null differ diff --git a/docs/html/img40.png b/docs/html/img40.png deleted file mode 100644 index d10a9865..00000000 Binary files a/docs/html/img40.png and /dev/null differ diff --git a/docs/html/img41.png b/docs/html/img41.png deleted file mode 100644 index 47cb3228..00000000 Binary files a/docs/html/img41.png and /dev/null differ diff --git a/docs/html/img42.png b/docs/html/img42.png deleted file mode 100644 index d5757164..00000000 Binary files a/docs/html/img42.png and /dev/null differ diff --git a/docs/html/img43.png b/docs/html/img43.png deleted file mode 100644 index 7e0b5241..00000000 Binary files a/docs/html/img43.png and /dev/null differ diff --git a/docs/html/img44.png b/docs/html/img44.png deleted file mode 100644 index 6a8d2ffa..00000000 Binary files a/docs/html/img44.png and /dev/null differ diff --git a/docs/html/img45.png b/docs/html/img45.png deleted file mode 100644 index 528cfc23..00000000 Binary files a/docs/html/img45.png and /dev/null differ diff --git a/docs/html/img46.png b/docs/html/img46.png deleted file mode 100644 index 55e2adb4..00000000 Binary files a/docs/html/img46.png and /dev/null differ diff --git a/docs/html/img47.png b/docs/html/img47.png deleted file mode 100644 index 09b517a7..00000000 Binary files a/docs/html/img47.png and /dev/null differ diff --git a/docs/html/img48.png b/docs/html/img48.png deleted file mode 100644 index 4ae2a391..00000000 Binary files a/docs/html/img48.png and /dev/null differ diff --git a/docs/html/img49.png b/docs/html/img49.png deleted file mode 100644 index a6206da5..00000000 Binary files a/docs/html/img49.png and /dev/null differ diff --git a/docs/html/img5.png b/docs/html/img5.png deleted file mode 100644 index d4738c01..00000000 Binary files a/docs/html/img5.png and /dev/null differ diff --git a/docs/html/img50.png b/docs/html/img50.png deleted file mode 100644 index 2dd9e9ca..00000000 Binary files a/docs/html/img50.png and /dev/null differ diff --git a/docs/html/img51.png b/docs/html/img51.png deleted file mode 100644 index a1be8a23..00000000 Binary files a/docs/html/img51.png and /dev/null differ diff --git a/docs/html/img52.png b/docs/html/img52.png deleted file mode 100644 index f5f24e0d..00000000 Binary files a/docs/html/img52.png and /dev/null differ diff --git a/docs/html/img53.png b/docs/html/img53.png deleted file mode 100644 index 2ed468de..00000000 Binary files a/docs/html/img53.png and /dev/null differ diff --git a/docs/html/img54.png b/docs/html/img54.png deleted file mode 100644 index be66bd8e..00000000 Binary files a/docs/html/img54.png and /dev/null differ diff --git a/docs/html/img55.png b/docs/html/img55.png deleted file mode 100644 index 1fa36281..00000000 Binary files a/docs/html/img55.png and /dev/null differ diff --git a/docs/html/img56.png b/docs/html/img56.png deleted file mode 100644 index 0d305373..00000000 Binary files a/docs/html/img56.png and /dev/null differ diff --git a/docs/html/img57.png b/docs/html/img57.png deleted file mode 100644 index 193b03b8..00000000 Binary files a/docs/html/img57.png and /dev/null differ diff --git a/docs/html/img58.png b/docs/html/img58.png deleted file mode 100644 index d140b93c..00000000 Binary files a/docs/html/img58.png and /dev/null differ diff --git a/docs/html/img59.png b/docs/html/img59.png deleted file mode 100644 index 1742e40a..00000000 Binary files a/docs/html/img59.png and /dev/null differ diff --git a/docs/html/img6.png b/docs/html/img6.png deleted file mode 100644 index 9ca07ef2..00000000 Binary files a/docs/html/img6.png and /dev/null differ diff --git a/docs/html/img60.png b/docs/html/img60.png deleted file mode 100644 index 11704edf..00000000 Binary files a/docs/html/img60.png and /dev/null differ diff --git a/docs/html/img61.png b/docs/html/img61.png deleted file mode 100644 index 66a5049a..00000000 Binary files a/docs/html/img61.png and /dev/null differ diff --git a/docs/html/img62.png b/docs/html/img62.png deleted file mode 100644 index 856d1347..00000000 Binary files a/docs/html/img62.png and /dev/null differ diff --git a/docs/html/img63.png b/docs/html/img63.png deleted file mode 100644 index 3cc47b72..00000000 Binary files a/docs/html/img63.png and /dev/null differ diff --git a/docs/html/img64.png b/docs/html/img64.png deleted file mode 100644 index 040701be..00000000 Binary files a/docs/html/img64.png and /dev/null differ diff --git a/docs/html/img65.png b/docs/html/img65.png deleted file mode 100644 index c7347643..00000000 Binary files a/docs/html/img65.png and /dev/null differ diff --git a/docs/html/img66.png b/docs/html/img66.png deleted file mode 100644 index f4d1bbce..00000000 Binary files a/docs/html/img66.png and /dev/null differ diff --git a/docs/html/img67.png b/docs/html/img67.png deleted file mode 100644 index 774b69e6..00000000 Binary files a/docs/html/img67.png and /dev/null differ diff --git a/docs/html/img68.png b/docs/html/img68.png deleted file mode 100644 index f4d1bbce..00000000 Binary files a/docs/html/img68.png and /dev/null differ diff --git a/docs/html/img69.png b/docs/html/img69.png deleted file mode 100644 index 221a347f..00000000 Binary files a/docs/html/img69.png and /dev/null differ diff --git a/docs/html/img7.png b/docs/html/img7.png deleted file mode 100644 index 67b4d6a4..00000000 Binary files a/docs/html/img7.png and /dev/null differ diff --git a/docs/html/img70.png b/docs/html/img70.png deleted file mode 100644 index b2b6d8e6..00000000 Binary files a/docs/html/img70.png and /dev/null differ diff --git a/docs/html/img71.png b/docs/html/img71.png deleted file mode 100644 index 1ab0414b..00000000 Binary files a/docs/html/img71.png and /dev/null differ diff --git a/docs/html/img72.png b/docs/html/img72.png deleted file mode 100644 index 41a219de..00000000 Binary files a/docs/html/img72.png and /dev/null differ diff --git a/docs/html/img73.png b/docs/html/img73.png deleted file mode 100644 index 554b8ff6..00000000 Binary files a/docs/html/img73.png and /dev/null differ diff --git a/docs/html/img74.png b/docs/html/img74.png deleted file mode 100644 index 8fb23bc7..00000000 Binary files a/docs/html/img74.png and /dev/null differ diff --git a/docs/html/img75.png b/docs/html/img75.png deleted file mode 100644 index fb7e701c..00000000 Binary files a/docs/html/img75.png and /dev/null differ diff --git a/docs/html/img76.png b/docs/html/img76.png deleted file mode 100644 index 83be83ad..00000000 Binary files a/docs/html/img76.png and /dev/null differ diff --git a/docs/html/img77.png b/docs/html/img77.png deleted file mode 100644 index 2f8903b6..00000000 Binary files a/docs/html/img77.png and /dev/null differ diff --git a/docs/html/img78.png b/docs/html/img78.png deleted file mode 100644 index 35de2d43..00000000 Binary files a/docs/html/img78.png and /dev/null differ diff --git a/docs/html/img79.png b/docs/html/img79.png deleted file mode 100644 index f4259dee..00000000 Binary files a/docs/html/img79.png and /dev/null differ diff --git a/docs/html/img8.png b/docs/html/img8.png deleted file mode 100644 index d51c2d72..00000000 Binary files a/docs/html/img8.png and /dev/null differ diff --git a/docs/html/img80.png b/docs/html/img80.png deleted file mode 100644 index 5dd0b395..00000000 Binary files a/docs/html/img80.png and /dev/null differ diff --git a/docs/html/img81.png b/docs/html/img81.png deleted file mode 100644 index f101d9dd..00000000 Binary files a/docs/html/img81.png and /dev/null differ diff --git a/docs/html/img82.png b/docs/html/img82.png deleted file mode 100644 index f2646fc1..00000000 Binary files a/docs/html/img82.png and /dev/null differ diff --git a/docs/html/img83.png b/docs/html/img83.png deleted file mode 100644 index 3a49b4c5..00000000 Binary files a/docs/html/img83.png and /dev/null differ diff --git a/docs/html/img84.png b/docs/html/img84.png deleted file mode 100644 index fa2b2cb1..00000000 Binary files a/docs/html/img84.png and /dev/null differ diff --git a/docs/html/img85.png b/docs/html/img85.png deleted file mode 100644 index e54349c8..00000000 Binary files a/docs/html/img85.png and /dev/null differ diff --git a/docs/html/img86.png b/docs/html/img86.png deleted file mode 100644 index 7e3ea672..00000000 Binary files a/docs/html/img86.png and /dev/null differ diff --git a/docs/html/img87.png b/docs/html/img87.png deleted file mode 100644 index a127a17a..00000000 Binary files a/docs/html/img87.png and /dev/null differ diff --git a/docs/html/img88.png b/docs/html/img88.png deleted file mode 100644 index 2a16f380..00000000 Binary files a/docs/html/img88.png and /dev/null differ diff --git a/docs/html/img89.png b/docs/html/img89.png deleted file mode 100644 index 12ce6d92..00000000 Binary files a/docs/html/img89.png and /dev/null differ diff --git a/docs/html/img9.png b/docs/html/img9.png deleted file mode 100644 index eee344ef..00000000 Binary files a/docs/html/img9.png and /dev/null differ diff --git a/docs/html/img90.png b/docs/html/img90.png deleted file mode 100644 index 089d0dd3..00000000 Binary files a/docs/html/img90.png and /dev/null differ diff --git a/docs/html/img91.png b/docs/html/img91.png deleted file mode 100644 index 61163c92..00000000 Binary files a/docs/html/img91.png and /dev/null differ diff --git a/docs/html/img92.png b/docs/html/img92.png deleted file mode 100644 index dc6154f7..00000000 Binary files a/docs/html/img92.png and /dev/null differ diff --git a/docs/html/img93.png b/docs/html/img93.png deleted file mode 100644 index fe491484..00000000 Binary files a/docs/html/img93.png and /dev/null differ diff --git a/docs/html/img94.png b/docs/html/img94.png deleted file mode 100644 index 8177056b..00000000 Binary files a/docs/html/img94.png and /dev/null differ diff --git a/docs/html/img95.png b/docs/html/img95.png deleted file mode 100644 index 66568d3f..00000000 Binary files a/docs/html/img95.png and /dev/null differ diff --git a/docs/html/img96.png b/docs/html/img96.png deleted file mode 100644 index d2e7db01..00000000 Binary files a/docs/html/img96.png and /dev/null differ diff --git a/docs/html/img97.png b/docs/html/img97.png deleted file mode 100644 index 1401834f..00000000 Binary files a/docs/html/img97.png and /dev/null differ diff --git a/docs/html/img98.png b/docs/html/img98.png deleted file mode 100644 index 04e7bb58..00000000 Binary files a/docs/html/img98.png and /dev/null differ diff --git a/docs/html/img99.png b/docs/html/img99.png deleted file mode 100644 index 6faa359b..00000000 Binary files a/docs/html/img99.png and /dev/null differ diff --git a/docs/html/index.html b/docs/html/index.html index b6f34f18..77f52d6f 100644 --- a/docs/html/index.html +++ b/docs/html/index.html @@ -1,414 +1,118 @@ - +\documentclass[10pt,a4paper,twoside]{article} +\usepackage{pstricks} +\usepackage{fancybox} +\usepackage{amsfonts} +% \usepackage{minitoc} +% \setcounter{minitocdepth}{2} +\usepackage[bookmarks=true, + bookmarksnumbered=true, + bookmarksopen=false, + plainpages=false, + colorlinks, + linkcolor=blue]{hyperref} +\usepackage{ifthen} +\usepackage{graphicx} +\newtheorem{theorem}{Theorem} +\newtheorem{corollary}{Corollary} +\usepackage{listings} - - - -userhtml - - - - +%\newboolean{mtc} +%\setboolean{mtc}{true} - - +\pdfoutput=0 - +\newcounter{subroutine}[subsection] +\newcounter{example}[subroutine] +\makeatletter +\def\subroutine{\@ifstar{\@subroutine}{\clearpage\@subroutine}}% +\def\@subroutine#1#2{% +\stepcounter{subroutine}% + \section*{\flushleft #1---#2 \endflushleft}% + \addcontentsline{toc}{subsection}{#1}% + \markright{#1}}% +\newcommand{\subsubroutine}[2]{% +\stepcounter{subroutine}% + \subsection*{\flushleft #1---#2 \endflushleft}% + \addcontentsline{toc}{subsubsection}{#1}% + \markright{#1}}% +\newcommand{\subsubsubroutine}[2]{% +\stepcounter{subroutine}% + \subsubsection*{\flushleft #1---#2 \endflushleft}% + \addcontentsline{toc}{paragraph}{#1}% + \markright{#1}}% +\newcommand{\examplename}{Example} +\newcommand{\syntaxname}{Syntax} +\def\syntax{\@ifstar{\@ssyntax}{\@syntax}}% +\def\@syntax{\nobreak\section*{\syntaxname}% + \@ssyntax}% +\def\@ssyntax#1#2{% + \nobreak + \setbox\@tempboxa\hbox{#1\ {\em $($#2$)$}}% + \ifdim \wd\@tempboxa >\hsize + \setbox\@tempboxa\hbox{\em $($#2$)$} + \ifdim\wd\@tempboxa >\hsize + \flushright#1\ \em$($#2$)$\endflushright% + \else + \hbox to\hsize{#1\hfil}% + \hbox to\hsize{\hfil\box\@tempboxa}% + \fi + \else + \hbox to\hsize{\hfil\box\@tempboxa\hfil}% + \fi\par\vskip\baselineskip} +\makeatother +\newcommand{\example}{\stepcounter{example}% +\section*{\examplename~\theexample}} - - +\newcommand{\precdata}{\hyperlink{precdata}{{\tt psb\_prec\_type}}} +\newcommand{\descdata}{\hyperlink{descdata}{{\tt psb\_desc\_type}}} +\newcommand{\spdata}{\hyperlink{spdata}{{\tt psb\_Tspmat\_type}}} +\newcommand{\vdata}{\hyperlink{vdata}{{\tt psb\_T\_vect\_type}}} +\newcommand{\spbasedata}{\hypertarget{spbasedata}{{\tt psb\_T\_base\_sparse\_mat}}} +\newcommand{\vbasedata}{\hypertarget{vbasedata}{{\tt psb\_T\_base\_vect\_type}}} - +\begin{document} +\lstset{language=Fortran} - - -language=Fortran - -

-PSBLAS -
-
-User's and Reference - Guide
-
A reference guide for the Parallel Sparse BLAS library -
-
-
-
Salvatore Filippone -
-Alfredo Buttari
-
-Software version: 3.7.0 -
+{\LARGE\bfseries PSBLAS\\[.8ex] User's and Reference + Guide}\\[\baselineskip] +\emph{\large A reference guide for the Parallel Sparse BLAS library}\\[3ex] +{\bfseries Salvatore Filippone\\ + Alfredo Buttari } \\ +%\\[10ex] +%\today +Software version: 3.7.0\\ +%\today Jan 7th, 2020 +\cleardoublepage +\begingroup + \renewcommand*{\thepage}{toc} + \pagenumbering{roman} % Roman numbering + \setcounter{page}{1} % Abstract start on page ii + \tableofcontents +\endgroup + +\cleardoublepage + +\pagenumbering{arabic} % Arabic numbering +\setcounter{page}{1} % Chapters start on page 1 + +\include{intro} +\include{datastruct} +\include{psbrout} +\include{commrout} +\include{toolsrout} +\include{penv} +\include{error} +\include{util} +\include{precs} +\include{methods} -


- - +\cleardoublepage - - -

+\input{biblio} - - +\end{document} +%%% Local Variables: +%%% mode: latex +%%% TeX-master: 'userguide' +%%% End: diff --git a/docs/html/next.png b/docs/html/next.png deleted file mode 100644 index 1628652a..00000000 Binary files a/docs/html/next.png and /dev/null differ diff --git a/docs/html/next_g.png b/docs/html/next_g.png deleted file mode 100644 index 9d3f5912..00000000 Binary files a/docs/html/next_g.png and /dev/null differ diff --git a/docs/html/node1.html b/docs/html/node1.html deleted file mode 100644 index a7667052..00000000 --- a/docs/html/node1.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -Contents - - - - - - - - - - - - - - - - - - - - -
- -

-Contents -

- - - - -

- -

- -

-


- - - diff --git a/docs/html/node10.html b/docs/html/node10.html deleted file mode 100644 index 4ea70e7d..00000000 --- a/docs/html/node10.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - -Descriptor data structure - - - - - - - - - - - - - - - - - - - - - -

- -
-Descriptor data structure -

-All the general matrix informations and elements to be -exchanged among processes are stored within a data structure of the -type descdatapsb_desc_type. -Every structure of this type is associated with a discretization -pattern and enables data communications and other operations that are -necessary for implementing the various algorithms of interest to us. - -

-The data structure itself psb_desc_type can be treated as an -opaque object handled via the tools routines of -Sec. 6 or the query routines detailed below; -nevertheless we include here a description for the curious -reader. - -

-First we describe the psb_indx_map type. This is a data -structure that keeps track of a certain number of basic issues such -as: - -

-There are many different schemes for storing these data; therefore -there are a number of types extending the base one, and the descriptor -structure holds a polymorphic object whose dynamic type can be any of -the extended types. -The methods associated with this data type answer the following -queries: - - -All methods but the last are purely local; the last method potentially -requires communication among processes, and thus is a synchronous -method. The choice of a specific dynamic type for the index map is -made at the time the descriptor is initially allocated, according to -the mode of initialization (see also 6). - -

-The descriptor contents are as follows: -

-
indxmap
-
A polymorphic variable of a type that is any - extension of the indx_map type described above. -
-
halo_index
-
A list of the halo and boundary elements for -the current process to be exchanged with other processes; for each -processes with which it is necessary to communicate: - -
    -
  1. Process identifier; -
  2. -
  3. Number of points to be received; -
  4. -
  5. Indices of points to be received; -
  6. -
  7. Number of points to be sent; -
  8. -
  9. Indices of points to be sent; -
  10. -
-Specified as: a vector of integer type, see 3.3. -
-
ext_index
-
A list of element indices to be exchanged to - implement the mapping between a base descriptor and a descriptor - with overlap. -
-Specified as: a vector of integer type, see 3.3. -
-
ovrlap_index
-
A list of the overlap elements for the -current process, organized in groups like the previous vector: - -
    -
  1. Process identifier; -
  2. -
  3. Number of points to be received; -
  4. -
  5. Indices of points to be received; -
  6. -
  7. Number of points to be sent; -
  8. -
  9. Indices of points to be sent; -
  10. -
-Specified as: a vector of integer type, see 3.3. -
-
ovr_mst_idx
-
A list to retrieve the value of each - overlap element from the respective master process. -
-Specified as: a vector of integer type, see 3.3. -
-
ovrlap_elem
-
For all overlap points belonging to th -ecurrent process: - -
    -
  1. Overlap point index; -
  2. -
  3. Number of processes sharing that overlap points; -
  4. -
  5. Index of a “master” process: -
  6. -
-Specified as: an allocatable integer array of rank two. -
-
bnd_elem
-
A list of all boundary points, i.e. points - that have a connection with other processes. -
-
-The Fortran 2003 declaration for psb_desc_type structures is -as follows: - -
- - - -
Figure 3: -The PSBLAS defined data type that - contains the communication descriptor.
-
- -
-
 
-type psb_desc_type 
-    class(psb_indx_map), allocatable :: indxmap
-    type(psb_i_vect_type) :: v_halo_index
-    type(psb_i_vect_type) :: v_ext_index
-    type(psb_i_vect_type) :: v_ovrlap_index
-    type(psb_i_vect_type) :: v_ovr_mst_idx 
-    integer, allocatable  :: ovrlap_elem(:,:)
-    integer, allocatable  :: bnd_elem(:)
-end type psb_desc_type
-
-
-
-
-A communication descriptor associated with a sparse matrix has a -state, which can take the following values: -
-
Build:
-
State entered after the first allocation, and before the - first assembly; in this state it is possible to add communication - requirements among different processes. -
-
Assembled:
-
State entered after the assembly; computations using - the associated sparse matrix, such as matrix-vector products, are - only possible in this state. -
-
- -

-


- -Subsections - - - - - - - - - diff --git a/docs/html/node100.html b/docs/html/node100.html deleted file mode 100644 index dac90c99..00000000 --- a/docs/html/node100.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - -psb_sizeof -- Memory occupation - - - - - - - - - - - - - - - - - - - - - -

-psb_sizeof -- Memory occupation -

- -

-This function computes the memory occupation of a PSBLAS object. - -

-

-isz = psb_sizeof(a)
-isz = psb_sizeof(desc_a)
-isz = psb_sizeof(prec)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
A sparse matrix -$A$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
desc_a
-
Communication descriptor. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
prec
-
Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a preconditioner data structure precdatapsb_prec_type. -
-
On Return
-
-
-
Function value
-
The memory occupation of the object specified in - the calling sequence, in bytes. -
-Scope: local -
-Returned as: an integer(psb_long_int_k_) number. -
-
- -

-


- - - diff --git a/docs/html/node101.html b/docs/html/node101.html deleted file mode 100644 index 2d6c42e9..00000000 --- a/docs/html/node101.html +++ /dev/null @@ -1,291 +0,0 @@ - - - - - -Sorting utilities -- - - - - - - - - - - - - - - - - - - - - -

-Sorting utilities -- -

- -

-psb_msort -- Sorting by the Merge-sort - algorithm - -

-psb_qsort -- Sorting by the Quicksort - algorithm - -

-psb_hsort -- Sorting by the Heapsort algorithm -

-call psb_msort(x,ix,dir,flag)
-call psb_qsort(x,ix,dir,flag)
-call psb_hsort(x,ix,dir,flag)
-
- -

-These serial routines sort a sequence $X$ into ascending or -descending order. The argument meaning is identical for the three -calls; the only difference is the algorithm used to accomplish the -task (see Usage Notes below). -

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
x
-
The sequence to be sorted. -
-Type:required. -
-Specified as: an integer, real or complex array of rank 1. -
-
ix
-
A vector of indices. -
-Type:optional. -
-Specified as: an integer array of (at least) the same size as $X$. -
-
dir
-
The desired ordering. -
-Type:optional. -
-Specified as: an integer value:
-
Integer and real data:
-
psb_sort_up_, -psb_sort_down_, psb_asort_up_, psb_asort_down_; -default psb_sort_up_. -
-
Complex data:
-
psb_lsort_up_, -psb_lsort_down_, psb_asort_up_, psb_asort_down_; -default psb_lsort_up_. -
-
-
-
flag
-
Whether to keep the original values in $IX$. -
-Type:optional. -
-Specified as: an integer value psb_sort_ovw_idx_ or -psb_sort_keep_idx_; default psb_sort_ovw_idx_. - -

-

-
- -

-

-
On Return
-
-
-
x
-
The sequence of values, in the chosen ordering. -
-Type:required. -
-Specified as: an integer, real or complex array of rank 1. -
-
ix
-
A vector of indices. -
-Type: Optional -
-An integer array of rank 1, whose entries are moved to the same -position as the corresponding entries in $x$. -
-
- -

- -

-Notes - -

    -
  1. For integer or real data the sorting can be performed in the up/down direction, on the - natural or absolute values; -
  2. -
  3. For complex data the sorting can be done in a lexicographic - order (i.e.: sort on the real part with ties broken according to - the imaginary part) or on the absolute values; -
  4. -
  5. The routines return the items in the chosen ordering; the - output difference is the handling of ties (i.e. items with an - equal value) in the original input. With the merge-sort algorithm - ties are preserved in the same relative order as they had in the - original sequence, while this is not guaranteed for quicksort or - heapsort; -
  6. -
  7. If -$flag = psb\_sort\_ovw\_idx\_$ then the entries in $ix(1:n)$ - where $n$ is the size of $x$ are initialized to -$ix(i) \leftarrow
-i$; thus, upon return from the subroutine, for each - index $i$ we have in $ix(i)$ the position that the item $x(i)$ - occupied in the original data sequence; -
  8. -
  9. If -$flag = psb\_sort\_keep\_idx\_$ the routine will assume that - the entries in $ix(:)$ have already been initialized by the user; -
  10. -
  11. The three sorting algorithms have a similar $O(n \log n)$ expected - running time; in the average case quicksort will be the - fastest and merge-sort the slowest. However note that: - -
      -
    1. The worst case running time for quicksort is $O(n^2)$; the algorithm - implemented here follows the well-known median-of-three heuristics, - but the worst case may still apply; -
    2. -
    3. The worst case running time for merge-sort and heap-sort is - $O(n \log n)$ as the average case; -
    4. -
    5. The merge-sort algorithm is implemented to take advantage of - subsequences that may be already in the desired ordering prior to - the subroutine call; this situation is relatively common when - dealing with groups of indices of sparse matrix entries, thus - merge-sort is the preferred choice when a sorting is needed - by other routines in the library. -
    6. -
    -
  12. -
- -

- -

- -

- - - - diff --git a/docs/html/node102.html b/docs/html/node102.html deleted file mode 100644 index 34f32338..00000000 --- a/docs/html/node102.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - -Parallel environment routines - - - - - - - - - - - - - - - - - - - - - -

- -
-Parallel environment routines -

- -

-


- -Subsections - - - -

- - - diff --git a/docs/html/node103.html b/docs/html/node103.html deleted file mode 100644 index 14bd2e25..00000000 --- a/docs/html/node103.html +++ /dev/null @@ -1,177 +0,0 @@ - - - - - -psb_init -- Initializes PSBLAS parallel environment - - - - - - - - - - - - - - - - - - - - - -

-psb_init -- Initializes PSBLAS parallel - environment -

- -

-

-call psb_init(icontxt, np, basectxt, ids)
-
- -

-This subroutine initializes the PSBLAS parallel environment, defining -a virtual parallel machine. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
np
-
Number of processes in the PSBLAS virtual parallel machine. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer value. Default: use all available processes. -
-
basectxt
-
the initial communication context. The new context - will be defined from the processes participating in the initial one. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer value. Default: use MPI_COMM_WORLD. -
-
ids
-
Identities of the processes to use for the new context; the - argument is ignored when np is not specified. This allows the - processes in the new environment to be in an order different from the - original one. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer array. Default: use the indices $(0\dots np-1)$. -
-
- -

-

-
On Return
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. Note that this is always a duplicate of - basectxt, so that library communications are completely - separated from other communication operations. -
-Scope: global. -
-Type: required. -
-Intent: out. -
-Specified as: an integer variable. -
-
- -

-Notes - -

    -
  1. A call to this routine must precede any other PSBLAS call. -
  2. -
  3. It is an error to specify a value for $np$ greater than the - number of processes available in the underlying base parallel - environment. -
  4. -
- -

- -

- - - - diff --git a/docs/html/node104.html b/docs/html/node104.html deleted file mode 100644 index 45626fb0..00000000 --- a/docs/html/node104.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - -psb_info -- Return information about PSBLAS parallel environment - - - - - - - - - - - - - - - - - - - - - -

-psb_info -- Return information about PSBLAS parallel - environment -

- -

-

-call psb_info(icontxt, iam, np)
-
- -

-This subroutine returns information about the PSBLAS parallel environment, defining -a virtual parallel machine. -

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
- -

-

-
On Return
-
-
-
iam
-
Identifier of current process in the PSBLAS virtual parallel machine. -
-Scope: local. -
-Type: required. -
-Intent: out. -
-Specified as: an integer value. -$-1 \le iam \le np-1$
-
np
-
Number of processes in the PSBLAS virtual parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: out. -
-Specified as: an integer variable.
-
- -

-Notes - -

    -
  1. For processes in the virtual parallel machine the identifier - will satisfy -$0 \le iam \le np-1$; -
  2. -
  3. If the user has requested on psb_init a number of - processes less than the total available in the parallel execution - environment, the remaining processes will have on return $iam=-1$; - the only call involving icontxt that any such process may - execute is to psb_exit. -
  4. -
- -

-


- - - diff --git a/docs/html/node105.html b/docs/html/node105.html deleted file mode 100644 index 8bc07f29..00000000 --- a/docs/html/node105.html +++ /dev/null @@ -1,149 +0,0 @@ - - - - - -psb_exit -- Exit from PSBLAS parallel environment - - - - - - - - - - - - - - - - - - - - - -

-psb_exit -- Exit from PSBLAS parallel - environment -

- -

-

-call psb_exit(icontxt)
-call psb_exit(icontxt,close)
-
- -

-This subroutine exits from the PSBLAS parallel virtual machine. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
close
-
Whether to close all data structures related to the - virtual parallel machine, besides those associated with icontxt. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: a logical variable, default value: true. -
-
- -

-Notes - -

    -
  1. This routine may be called even if a previous call to - psb_info has returned with $iam=-1$; indeed, it it is the only - routine that may be called with argument icontxt in this - situation. -
  2. -
  3. A call to this routine with close=.true. implies a call - to MPI_Finalize, after which no parallel routine may be called. -
  4. -
  5. If the user whishes to use multiple communication contexts in the - same program, or to enter and exit multiple times into the parallel - environment, this routine may be called to - selectively close the contexts with close=.false., while on - the last call it should be called with close=.true. to - shutdown in a clean way the entire parallel environment. -
  6. -
- -

- -

- - - - diff --git a/docs/html/node106.html b/docs/html/node106.html deleted file mode 100644 index 9ba7f06f..00000000 --- a/docs/html/node106.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - -psb_get_mpi_comm -- Get the MPI communicator - - - - - - - - - - - - - - - - - - - - - -

-psb_get_mpi_comm -- Get the MPI communicator -

- -

-

-icomm = psb_get_mpi_comm(icontxt)
-
- -

-This function returns the MPI communicator associated with a PSBLAS context -

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
- -

-

-
On Return
-
-
-
Function value
-
The MPI communicator associated with the PSBLAS virtual parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: out. -
-
- -

-Notes -The subroutine version psb_get_mpicomm is still available but -is deprecated. - -

-


- - - diff --git a/docs/html/node107.html b/docs/html/node107.html deleted file mode 100644 index 53a692f0..00000000 --- a/docs/html/node107.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - -psb_get_mpi_rank -- Get the MPI rank - - - - - - - - - - - - - - - - - - - - - -

-psb_get_mpi_rank -- Get the MPI rank -

- -

-

-rank = psb_get_mpi_rank(icontxt, id)
-
- -

-This function returns the MPI rank of the PSBLAS process $id$ -

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
id
-
Identifier of a process in the PSBLAS virtual parallel machine. -
-Scope: local. -
-Type: required. -
-Intent: in. -
-Specified as: an integer value. -$0 \le id \le np-1$
-
- -

-

-
On Return
-
-
-
Funciton value
-
The MPI rank associated with the PSBLAS process $id$. -
-Scope: local. -
-Type: required. -
-Intent: out. -
-
- -

-Notes -The subroutine version psb_get_rank is still available but is -deprecated. - -

-


- - - diff --git a/docs/html/node108.html b/docs/html/node108.html deleted file mode 100644 index 64031864..00000000 --- a/docs/html/node108.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - -psb_wtime -- Wall clock timing - - - - - - - - - - - - - - - - - - - - - -

-psb_wtime -- Wall clock timing -

- -

-

-time = psb_wtime()
-
- -

-This function returns a wall clock timer. The resolution of the timer -is dependent on the underlying parallel environment implementation. -

-
Type:
-
Asynchronous. -
-
On Exit
-
-
-
Function value
-
the elapsed time in seconds. -
-Returned as: a real(psb_dpk_) variable. -
-
- -

-


- - - diff --git a/docs/html/node109.html b/docs/html/node109.html deleted file mode 100644 index e9725952..00000000 --- a/docs/html/node109.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - -psb_barrier -- Sinchronization point parallel environment - - - - - - - - - - - - - - - - - - - - - -

-psb_barrier -- Sinchronization point parallel - environment -

- -

-

-call psb_barrier(icontxt)
-
- -

-This subroutine acts as an explicit synchronization point for the PSBLAS -parallel virtual machine. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
- -

-


- - - diff --git a/docs/html/node11.html b/docs/html/node11.html deleted file mode 100644 index cea13c5c..00000000 --- a/docs/html/node11.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - -Descriptor Methods - - - - - - - - - - - - - - - - - - - - - -

-Descriptor Methods -

- -

-


- - - diff --git a/docs/html/node110.html b/docs/html/node110.html deleted file mode 100644 index df63b41c..00000000 --- a/docs/html/node110.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -psb_abort -- Abort a computation - - - - - - - - - - - - - - - - - - - - - -

-psb_abort -- Abort a computation -

- -

-

-call psb_abort(icontxt)
-
- -

-This subroutine aborts computation on the parallel virtual machine. -

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
- -

-


- - - diff --git a/docs/html/node111.html b/docs/html/node111.html deleted file mode 100644 index 5c5f03dc..00000000 --- a/docs/html/node111.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - -psb_bcast -- Broadcast data - - - - - - - - - - - - - - - - - - - - - -

-psb_bcast -- Broadcast data -

- -

-

-call psb_bcast(icontxt, dat, root)
-
- -

-This subroutine implements a broadcast operation based on the -underlying communication library. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
dat
-
On the root process, the data to be broadcast. -
-Scope: global. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer, real or complex variable, which may be a -scalar, or a rank 1 or 2 array, or a character or logical variable, -which may be a scalar or rank 1 array. Type, kind, rank and size must agree on all processes. -
-
root
-
Root process holding data to be broadcast. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer value -$0<= root <= np-1$, default 0
-
- -

-

-
On Return
-
-
-
dat
-
On processes other than root, the data to be broadcast. -
-Scope: global. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer, real or complex variable, which may be a -scalar, or a rank 1 or 2 array, or a character or logical scalar. Type, kind, rank and size must agree on all processes. -
-
- -

-


- - - diff --git a/docs/html/node112.html b/docs/html/node112.html deleted file mode 100644 index 030d27d0..00000000 --- a/docs/html/node112.html +++ /dev/null @@ -1,177 +0,0 @@ - - - - - -psb_sum -- Global sum - - - - - - - - - - - - - - - - - - - - - -

-psb_sum -- Global sum -

- -

-

-call psb_sum(icontxt, dat, root)
-
- -

-This subroutine implements a sum reduction operation based on the -underlying communication library. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
dat
-
The local contribution to the global sum. -
-Scope: global. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer, real or complex variable, which may be a -scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all processes. -
-
root
-
Process to hold the final sum, or $-1$ to make it available - on all processes. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer value -$-1<= root <= np-1$, default -1.
-
- -

-

-
On Return
-
-
-
dat
-
On destination process(es), the result of the sum operation. -
-Scope: global. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer, real or complex variable, which may be a -scalar, or a rank 1 or 2 array. -
-Type, kind, rank and size must agree on all processes. -
-
- -

-Notes - -

    -
  1. The dat argument is both input and output, and its - value may be changed even on processes different from the final - result destination. -
  2. -
  3. The dat argument may also be a long integer scalar. -
  4. -
- -

- -

- - - - diff --git a/docs/html/node113.html b/docs/html/node113.html deleted file mode 100644 index c1e4df12..00000000 --- a/docs/html/node113.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - -psb_max -- Global maximum - - - - - - - - - - - - - - - - - - - - - -

-psb_max -- Global maximum -

- -

-

-call psb_max(icontxt, dat, root)
-
- -

-This subroutine implements a maximum valuereduction -operation based on the underlying communication library. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
dat
-
The local contribution to the global maximum. -
-Scope: local. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer or real variable, which may be a -scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all processes. -
-
root
-
Process to hold the final maximum, or $-1$ to make it available - on all processes. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer value -$-1<= root <= np-1$, default -1. -
-
- -

-

-
On Return
-
-
-
dat
-
On destination process(es), the result of the maximum operation. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer or real variable, which may be a -scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all processes. -
-
- -

-Notes - -

    -
  1. The dat argument is both input and output, and its - value may be changed even on processes different from the final - result destination. -
  2. -
  3. The dat argument may also be a long integer scalar. -
  4. -
- -

- -

- - - - diff --git a/docs/html/node114.html b/docs/html/node114.html deleted file mode 100644 index 6f57ba56..00000000 --- a/docs/html/node114.html +++ /dev/null @@ -1,178 +0,0 @@ - - - - - -psb_min -- Global minimum - - - - - - - - - - - - - - - - - - - - - -

-psb_min -- Global minimum -

- -

-

-call psb_min(icontxt, dat, root)
-
- -

-This subroutine implements a minimum value reduction -operation based on the underlying communication library. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
dat
-
The local contribution to the global minimum. -
-Scope: local. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer or real variable, which may be a -scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all processes. -
-
root
-
Process to hold the final value, or $-1$ to make it available - on all processes. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer value -$-1<= root <= np-1$, default -1. -
-
- -

-

-
On Return
-
-
-
dat
-
On destination process(es), the result of the minimum operation. -
-Scope: global. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer or real variable, which may be a -scalar, or a rank 1 or 2 array. -
-Type, kind, rank and size must agree on all processes. -
-
- -

-Notes - -

    -
  1. The dat argument is both input and output, and its - value may be changed even on processes different from the final - result destination. -
  2. -
  3. The dat argument may also be a long integer scalar. -
  4. -
- -

- -

- - - - diff --git a/docs/html/node115.html b/docs/html/node115.html deleted file mode 100644 index adb0bd4e..00000000 --- a/docs/html/node115.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - -psb_amx -- Global maximum absolute value - - - - - - - - - - - - - - - - - - - - - -

-psb_amx -- Global maximum absolute value -

- -

-

-call psb_amx(icontxt, dat, root)
-
- -

-This subroutine implements a maximum absolute value reduction -operation based on the underlying communication library. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
dat
-
The local contribution to the global maximum. -
-Scope: local. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer, real or complex variable, which may be a -scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all processes. -
-
root
-
Process to hold the final value, or $-1$ to make it available - on all processes. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer value -$-1<= root <= np-1$, default -1. -
-
- -

-

-
On Return
-
-
-
dat
-
On destination process(es), the result of the maximum operation. -
-Scope: global. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer, real or complex variable, which may be a -scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all processes. -
-
- -

-Notes - -

    -
  1. The dat argument is both input and output, and its - value may be changed even on processes different from the final - result destination. -
  2. -
  3. The dat argument may also be a long integer scalar. -
  4. -
- -

- -

- - - - diff --git a/docs/html/node116.html b/docs/html/node116.html deleted file mode 100644 index 5abef770..00000000 --- a/docs/html/node116.html +++ /dev/null @@ -1,178 +0,0 @@ - - - - - -psb_amn -- Global minimum absolute value - - - - - - - - - - - - - - - - - - - - - -

-psb_amn -- Global minimum absolute value -

- -

-

-call psb_amn(icontxt, dat, root)
-
- -

-This subroutine implements a minimum absolute value reduction -operation based on the underlying communication library. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
dat
-
The local contribution to the global minimum. -
-Scope: local. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer, real or complex variable, which may be a -scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all processes. -
-
root
-
Process to hold the final value, or $-1$ to make it available - on all processes. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer value -$-1<= root <= np-1$, default -1. -
-
- -

-

-
On Return
-
-
-
dat
-
On destination process(es), the result of the minimum operation. -
-Scope: global. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer, real or complex variable, which may be a -scalar, or a rank 1 or 2 array. -
-Type, kind, rank and size must agree on all processes. -
-
- -

-Notes - -

    -
  1. The dat argument is both input and output, and its - value may be changed even on processes different from the final - result destination. -
  2. -
  3. The dat argument may also be a long integer scalar. -
  4. -
- -

- -

- - - - diff --git a/docs/html/node117.html b/docs/html/node117.html deleted file mode 100644 index d9d35c35..00000000 --- a/docs/html/node117.html +++ /dev/null @@ -1,210 +0,0 @@ - - - - - -psb_nrm2 -- Global 2-norm reduction - - - - - - - - - - - - - - - - - - - - - -

-psb_nrm2 -- Global 2-norm reduction -

- -

-

-call psb_nrm2(icontxt, dat, root)
-
- -

-This subroutine implements a 2-norm value reduction -operation based on the underlying communication library. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
dat
-
The local contribution to the global minimum. -
-Scope: local. -
-Type: required. -
-Intent: inout. -
-Specified as: a real variable, which may be a -scalar, or a rank 1 array. Kind, rank and size must agree on all processes. -
-
root
-
Process to hold the final value, or $-1$ to make it available - on all processes. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer value -$-1<= root <= np-1$, default -1. -
-
- -

-

-
On Return
-
-
-
dat
-
On destination process(es), the result of the 2-norm reduction. -
-Scope: global. -
-Type: required. -
-Intent: inout. -
-Specified as: a real variable, which may be a -scalar, or a rank 1 array. -
-Kind, rank and size must agree on all processes. -
-
- -

-Notes - -

    -
  1. This reduction is appropriate to compute the results of multiple - (local) NRM2 operations at the same time. -
  2. -
  3. Denoting by $dat_i$ the value of the variable $dat$ on process - $i$, the output $res$ is equivalent to the computation of -

    -
    - - -\begin{displaymath}res = \sqrt{\sum_i dat_i^2},\end{displaymath} -
    -
    -

    -with care taken to avoid unnecessary overflow. -
  4. -
  5. The dat argument is both input and output, and its - value may be changed even on processes different from the final - result destination. -
  6. -
- -

- -

- - - - diff --git a/docs/html/node118.html b/docs/html/node118.html deleted file mode 100644 index 3fdb13cc..00000000 --- a/docs/html/node118.html +++ /dev/null @@ -1,190 +0,0 @@ - - - - - -psb_snd -- Send data - - - - - - - - - - - - - - - - - - - - - -

-psb_snd -- Send data -

- -

-

-call psb_snd(icontxt, dat, dst, m)
-
- -

-This subroutine sends a packet of data to a destination. -

-
Type:
-
Synchronous: see usage notes. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
dat
-
The data to be sent. -
-Scope: local. -
-Type: required. -
-Intent: in. -
-Specified as: an integer, real or complex variable, which may be a -scalar, or a rank 1 or 2 array, or a character or logical scalar. Type, kind and rank must agree on sender and receiver process; if $m$ is -not specified, size must agree as well. -
-
dst
-
Destination process. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer value -$0<= dst <= np-1$. -
-
m
-
Number of rows. -
-Scope: global. -
-Type: Optional. -
-Intent: in. -
-Specified as: an integer value -$0<= m <= size(dat,1)$. -
-When $dat$ is a rank 2 array, specifies the number of rows to be sent -independently of the leading dimension $size(dat,1)$; must have the -same value on sending and receiving processes. -
-
- -

-

-
On Return
-
-
-
- -

-Notes - -

    -
  1. This subroutine implies a synchronization, but only between the - calling process and the destination process $dst$. -
  2. -
- -

- -

- - - - diff --git a/docs/html/node119.html b/docs/html/node119.html deleted file mode 100644 index 56957cf1..00000000 --- a/docs/html/node119.html +++ /dev/null @@ -1,189 +0,0 @@ - - - - - -psb_rcv -- Receive data - - - - - - - - - - - - - - - - - - - - -

-psb_rcv -- Receive data -

- -

-

-call psb_rcv(icontxt, dat, src, m)
-
- -

-This subroutine receives a packet of data to a destination. -

-
Type:
-
Synchronous: see usage notes. -
-
On Entry
-
-
-
icontxt
-
the communication context identifying the virtual - parallel machine. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer variable. -
-
src
-
Source process. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer value -$0<= src <= np-1$. -
-
m
-
Number of rows. -
-Scope: global. -
-Type: Optional. -
-Intent: in. -
-Specified as: an integer value -$0<= m <= size(dat,1)$. -
-When $dat$ is a rank 2 array, specifies the number of rows to be sent -independently of the leading dimension $size(dat,1)$; must have the -same value on sending and receiving processes. -
-
- -

-

-
On Return
-
-
-
dat
-
The data to be received. -
-Scope: local. -
-Type: required. -
-Intent: inout. -
-Specified as: an integer, real or complex variable, which may be a -scalar, or a rank 1 or 2 array, or a character or logical scalar. Type, kind and rank must agree on sender and receiver process; if $m$ is -not specified, size must agree as well. -
-
- -

-Notes - -

    -
  1. This subroutine implies a synchronization, but only between the - calling process and the source process $src$. -
  2. -
- -

- -

- - - - diff --git a/docs/html/node12.html b/docs/html/node12.html deleted file mode 100644 index a802610d..00000000 --- a/docs/html/node12.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - -get_local_rows -- Get number of local rows - - - - - - - - - - - - - - - - - - - - - -

-get_local_rows -- Get number of local rows -

- -

-

-nr = desc%get_local_rows()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc
-
the communication descriptor. -
-Scope: local. -
-
- -

-

-
On Return
-
-
-
Function value
-
The number of local rows, i.e. the number of - rows owned by the current process; as explained in 1, - it is equal to -$\vert{\cal I}_i\vert + \vert{\cal B}_i\vert$. The returned value is - specific to the calling process. -
-
- -

-


- - - diff --git a/docs/html/node120.html b/docs/html/node120.html deleted file mode 100644 index 2f031b89..00000000 --- a/docs/html/node120.html +++ /dev/null @@ -1,342 +0,0 @@ - - - - - -Error handling - - - - - - - - - - - - - - - - - - - - - -

-Error handling -

- -

-The PSBLAS library error handling policy has been completely rewritten -in version 2.0. The idea behind the design of this new error handling -strategy is to keep error messages on a stack allowing the user to -trace back up to the point where the first error message has been -generated. Every routine in the PSBLAS-2.0 library has, as last -non-optional argument, an integer info variable; whenever, -inside the routine, an error is detected, this variable is set to a -value corresponding to a specific error code. Then this error code is -also pushed on the error stack and then either control is returned to -the caller routine or the execution is aborted, depending on the users -choice. At the time when the execution is aborted, an error message is -printed on standard output with a level of verbosity than can be -chosen by the user. If the execution is not aborted, then, the caller -routine checks the value returned in the info variable and, if -not zero, an error condition is raised. This process continues on all the -levels of nested calls until the level where the user decides to abort -the program execution. - -

-Figure 9 shows the layout of a generic psb_foo -routine with respect to the PSBLAS-2.0 error handling policy. It is -possible to see how, whenever an error condition is detected, the -info variable is set to the corresponding error code which is, -then, pushed on top of the stack by means of the -psb_errpush. An error condition may be directly detected inside -a routine or indirectly checking the error code returned returned by a -called routine. Whenever an error is encountered, after it has been -pushed on stack, the program execution skips to a point where the -error condition is handled; the error condition is handled either by -returning control to the caller routine or by calling the -psb\_error routine which prints the content of the error stack -and aborts the program execution, according to the choice made by the -user with psb_set_erraction. The default is to print the error -and terminate the program, but the user may choose to handle the error -explicitly. - -

- -

- - - -
Figure 9: -The layout of a generic psb_foo - routine with respect to PSBLAS-2.0 error handling policy.
-
- -
- -\fbox{\TheSbox} -
-
- -

-Figure 10 reports a sample error message generated by -the PSBLAS-2.0 library. This error has been generated by the fact that -the user has chosen the invalid “FOO” storage format to represent -the sparse matrix. From this error message it is possible to see that -the error has been detected inside the psb_cest subroutine -called by psb_spasb ... by process 0 (i.e. the root process). - -

- -

- - - -
Figure 10: -A sample PSBLAS-2.0 error - message. Process 0 detected an error condition inside the psb_cest subroutine
-
- -
- -\fbox{\TheSbox} -
-
- -

-ifstarsubroutinesubroutinepsb_errpushPushes an error code onto the error - stack - -

-
-\begin{lstlisting}
-call psb_errpush(err_c, r_name, i_err, a_err)
-\end{lstlisting} -
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
err_c
-
the error code -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an integer. -
-
r_name
-
the soutine where the error has been caught. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a string. -
-
i_err
-
addional info for error code -
-Scope: local -
-Type: optional -
-Specified as: an integer array -
-
a_err
-
addional info for error code -
-Scope: local -
-Type: optional -
-Specified as: a string. -
-
- -

-ifstarsubroutinesubroutinepsb_errorPrints the error stack content and aborts - execution - -

-
-\begin{lstlisting}
-call psb_error(icontxt)
-\end{lstlisting} -
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context. -
-Scope: global -
-Type: optional -
-Intent: in. -
-Specified as: an integer. -
-
- -

-ifstarsubroutinesubroutinepsb_set_errverbositySets the verbosity of error - messages. - -

-
-\begin{lstlisting}
-call psb_set_errverbosity(v)
-\end{lstlisting} -
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
v
-
the verbosity level -
-Scope: global -
-Type: required -
-Intent: in. -
-Specified as: an integer. -
-
- -

-ifstarsubroutinesubroutinepsb_set_erractionSet the type of action to be - taken upon error condition. - -

-
-\begin{lstlisting}
-call psb_set_erraction(err_act)
-\end{lstlisting} -
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
err_act
-
the type of action. -
-Scope: global -
-Type: required -
-Intent: in. -
-Specified as: an integer. Possible values: psb_act_ret, -psb_act_abort. -
-
- -

- -

- - - - diff --git a/docs/html/node121.html b/docs/html/node121.html deleted file mode 100644 index 384e43c7..00000000 --- a/docs/html/node121.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - -Utilities - - - - - - - - - - - - - - - - - - - - - -

- -
-Utilities -

- -

-We have some utilities available for input and output of -sparse matrices; the interfaces to these routines are available in the -module psb_util_mod. - -

-


- -Subsections - - - -

- - - diff --git a/docs/html/node122.html b/docs/html/node122.html deleted file mode 100644 index f83ba9c2..00000000 --- a/docs/html/node122.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - -hb_read -- Read a sparse matrix from a file in the Harwell-Boeing format - - - - - - - - - - - - - - - - - - - - - -

- hb_read -- Read a sparse matrix from a file in the - Harwell-Boeing format -

- -

-
-\begin{lstlisting}
-call hb_read(a, iret, iunit, filename, b, mtitle)
-\end{lstlisting} -
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
filename
-
The name of the file to be read. -
-Type:optional. -
-Specified as: a character variable containing a valid file name, or --, in which case the default input unit 5 (i.e. standard input -in Unix jargon) is used. Default: -. -
-
iunit
-
The Fortran file unit number. -
-Type:optional. -
-Specified as: an integer value. Only meaningful if filename is not -. -
-
- -

-

-
On Return
-
-
-
a
-
the sparse matrix read from file. -
-Type:required. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
b
-
Rigth hand side(s). -
-Type: Optional -
-An array of type real or complex, rank 2 and having the ALLOCATABLE -attribute; will be allocated and filled in if the input file contains -a right hand side, otherwise will be left in the UNALLOCATED state. -
-
mtitle
-
Matrix title. -
-Type: Optional -
-A charachter variable of length 72 holding a copy of the -matrix title as specified by the Harwell-Boeing format and contained -in the input file. -
-
iret
-
Error code. -
-Type: required -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node123.html b/docs/html/node123.html deleted file mode 100644 index 5005685d..00000000 --- a/docs/html/node123.html +++ /dev/null @@ -1,168 +0,0 @@ - - - - - -hb_write -- Write a sparse matrix to a file in the Harwell-Boeing format - - - - - - - - - - - - - - - - - - - - - -

-hb_write -- Write a sparse matrix to a file - in the Harwell-Boeing format -

- -

-
-\begin{lstlisting}
-call hb_write(a, iret, iunit, filename, key, rhs, mtitle)
-\end{lstlisting} -
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix to be written. -
-Type:required. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
b
-
Rigth hand side. -
-Type: Optional -
-An array of type real or complex, rank 1 and having the ALLOCATABLE -attribute; will be allocated and filled in if the input file contains -a right hand side. -
-
filename
-
The name of the file to be written to. -
-Type:optional. -
-Specified as: a character variable containing a valid file name, or --, in which case the default output unit 6 (i.e. standard output -in Unix jargon) is used. Default: -. -
-
iunit
-
The Fortran file unit number. -
-Type:optional. -
-Specified as: an integer value. Only meaningful if filename is not -. -
-
key
-
Matrix key. -
-Type: Optional -
-A charachter variable of length 8 holding the -matrix key as specified by the Harwell-Boeing format and to be -written to file. -
-
mtitle
-
Matrix title. -
-Type: Optional -
-A charachter variable of length 72 holding the -matrix title as specified by the Harwell-Boeing format and to be -written to file. -
-
- -

-

-
On Return
-
-
-
iret
-
Error code. -
-Type: required -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node124.html b/docs/html/node124.html deleted file mode 100644 index 2f0b1b70..00000000 --- a/docs/html/node124.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - -mm_mat_read -- Read a sparse matrix from a file in the MatrixMarket format - - - - - - - - - - - - - - - - - - - - - -

-mm_mat_read -- Read a sparse matrix from a - file in the MatrixMarket format -

- -

-
-\begin{lstlisting}
-call mm_mat_read(a, iret, iunit, filename)
-\end{lstlisting} -
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
filename
-
The name of the file to be read. -
-Type:optional. -
-Specified as: a character variable containing a valid file name, or --, in which case the default input unit 5 (i.e. standard input -in Unix jargon) is used. Default: -. -
-
iunit
-
The Fortran file unit number. -
-Type:optional. -
-Specified as: an integer value. Only meaningful if filename is not -. -
-
- -

-

-
On Return
-
-
-
a
-
the sparse matrix read from file. -
-Type:required. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
iret
-
Error code. -
-Type: required -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node125.html b/docs/html/node125.html deleted file mode 100644 index cf94193e..00000000 --- a/docs/html/node125.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - -mm_array_read -- Read a dense array from a file in the MatrixMarket format - - - - - - - - - - - - - - - - - - - - - -

-mm_array_read -- Read a dense array from a - file in the MatrixMarket format -

- -

-
-\begin{lstlisting}
-call mm_array_read(b, iret, iunit, filename)
-\end{lstlisting} -
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
filename
-
The name of the file to be read. -
-Type:optional. -
-Specified as: a character variable containing a valid file name, or --, in which case the default input unit 5 (i.e. standard input -in Unix jargon) is used. Default: -. -
-
iunit
-
The Fortran file unit number. -
-Type:optional. -
-Specified as: an integer value. Only meaningful if filename is not -. -
-
- -

-

-
On Return
-
-
-
b
-
Rigth hand side(s). -
-Type: required -
-An array of type real or complex, rank 1 or 2 and having the ALLOCATABLE -attribute; will be allocated and filled in if the input file contains -a right hand side, otherwise will be left in the UNALLOCATED state. -
-
iret
-
Error code. -
-Type: required -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node126.html b/docs/html/node126.html deleted file mode 100644 index 696eb19f..00000000 --- a/docs/html/node126.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - -mm_mat_write -- Write a sparse matrix to a file in the MatrixMarket format - - - - - - - - - - - - - - - - - - - - - -

-mm_mat_write -- Write a sparse matrix to a - file in the MatrixMarket format -

- -

-
-\begin{lstlisting}
-call mm_mat_write(a, mtitle, iret, iunit, filename)
-\end{lstlisting} -
-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix to be written. -
-Type:required. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
mtitle
-
Matrix title. -
-Type: required -
-A charachter variable holding a descriptive title for the matrix to be - written to file. -
-
filename
-
The name of the file to be written to. -
-Type:optional. -
-Specified as: a character variable containing a valid file name, or --, in which case the default output unit 6 (i.e. standard output -in Unix jargon) is used. Default: -. -
-
iunit
-
The Fortran file unit number. -
-Type:optional. -
-Specified as: an integer value. Only meaningful if filename is not -. -
-
- -

-

-
On Return
-
-
-
iret
-
Error code. -
-Type: required -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node127.html b/docs/html/node127.html deleted file mode 100644 index 552b3c2f..00000000 --- a/docs/html/node127.html +++ /dev/null @@ -1,115 +0,0 @@ - - - - - -mm_array_write -- Write a dense array from a file in the MatrixMarket format - - - - - - - - - - - - - - - - - - - - -

-mm_array_write -- Write a dense array from a - file in the MatrixMarket format -

- -

-
-\begin{lstlisting}
-call mm_array_write(b, iret, iunit, filename)
-\end{lstlisting} -
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
b
-
Rigth hand side(s). -
-Type: required -
-An array of type real or complex, rank 1 or 2; will be written..
-
filename
-
The name of the file to be written. -
-Type:optional. -
-Specified as: a character variable containing a valid file name, or --, in which case the default input unit 5 (i.e. standard input -in Unix jargon) is used. Default: -. -
-
iunit
-
The Fortran file unit number. -
-Type:optional. -
-Specified as: an integer value. Only meaningful if filename is not -. -
-
- -

-

-
On Return
-
-
-
iret
-
Error code. -
-Type: required -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node128.html b/docs/html/node128.html deleted file mode 100644 index 06233ef9..00000000 --- a/docs/html/node128.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - -Preconditioner routines - - - - - - - - - - - - - - - - - - - - - -

- -
-Preconditioner routines -

- -

-The base PSBLAS library contains the implementation of two simple -preconditioning techniques: - -

-The supporting data type and subroutine interfaces are defined in the -module psb_prec_mod. -The old interfaces psb_precinit and psb_precbld are still supported for -backward compatibility - -

-


- -Subsections - - - -

- - - diff --git a/docs/html/node129.html b/docs/html/node129.html deleted file mode 100644 index f86c6f0c..00000000 --- a/docs/html/node129.html +++ /dev/null @@ -1,150 +0,0 @@ - - - - - -init -- Initialize a preconditioner - - - - - - - - - - - - - - - - - - - - - -

-init -- Initialize a preconditioner -

- -

-

-call prec%init(icontxt,ptype, info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
icontxt
-
the communication context. -
-Scope:global. -
-Type:required. -
-Intent: in. -
-Specified as: an integer value. -
-
ptype
-
the type of preconditioner. -Scope: global -
-Type: required -
-Intent: in. -
-Specified as: a character string, see usage notes. -
-
On Exit
-

-

-
prec
-
Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a preconditioner data structure precdatapsb_prec_type. -
-
info
-
Scope: global -
-Type: required -
-Intent: out. -
-Error code: if no error, 0 is returned. -
-
-Notes -Legal inputs to this subroutine are interpreted depending on the -$ptype$ string as follows4: -
-
NONE
-
No preconditioning, i.e. the preconditioner is just a copy - operator. -
-
DIAG
-
Diagonal scaling; each entry of the input vector is - multiplied by the reciprocal of the sum of the absolute values of - the coefficients in the corresponding row of matrix $A$; -
-
BJAC
-
Precondition by a factorization of the - block-diagonal of matrix $A$, where block boundaries are determined - by the data allocation boundaries for each process; requires no - communication. Only the incomplete factorization $ILU(0)$ is - currently implemented. -
-
- -

-


- - - diff --git a/docs/html/node13.html b/docs/html/node13.html deleted file mode 100644 index 26d21840..00000000 --- a/docs/html/node13.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - -get_local_cols -- Get number of local cols - - - - - - - - - - - - - - - - - - - - - -

-get_local_cols -- Get number of local cols -

- -

-

-nc = desc%get_local_cols()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc
-
the communication descriptor. -
-Scope: local. -
-
- -

-

-
On Return
-
-
-
Function value
-
The number of local cols, i.e. the number of - indices used by the current process, including both local and halo - indices; as explained in 1, - it is equal to -$\vert{\cal I}_i\vert + \vert{\cal B}_i\vert +\vert{\cal H}_i\vert$. The - returned value is specific to the calling process. -
-
- -

-


- - - diff --git a/docs/html/node130.html b/docs/html/node130.html deleted file mode 100644 index 532b6c53..00000000 --- a/docs/html/node130.html +++ /dev/null @@ -1,194 +0,0 @@ - - - - - -build -- Builds a preconditioner - - - - - - - - - - - - - - - - - - - - - -

-build -- Builds a preconditioner -

- -

-

-call prec%build(a, desc_a, info[,amold,vmold,imold])
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
a
-
the system sparse matrix. -Scope: local -
-Type: required -
-Intent: in, target. -
-Specified as: a sparse matrix data structure spdatapsb_Tspmat_type. -
-
prec
-
the preconditioner. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: an already initialized precondtioner data structure precdatapsb_prec_type -
-
desc_a
-
the problem communication descriptor. -Scope: local -
-Type: required -
-Intent: in, target. -
-Specified as: a communication descriptor data structure descdatapsb_desc_type. -
-
amold
-
The desired dynamic type for the internal matrix storage. -
-Scope: local. -
-Type: optional. -
-Intent: in. -
-Specified as: an object of a class derived from spbasedatapsb_T_base_sparse_mat. -
-
vmold
-
The desired dynamic type for the internal vector storage. -
-Scope: local. -
-Type: optional. -
-Intent: in. -
-Specified as: an object of a class derived from vbasedatapsb_T_base_vect_type. -
-
imold
-
The desired dynamic type for the internal integer vector storage. -
-Scope: local. -
-Type: optional. -
-Intent: in. -
-Specified as: an object of a class derived from (integer) vbasedatapsb_T_base_vect_type. -
-
- -

-

-
On Return
-
-
-
prec
-
the preconditioner. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a precondtioner data structure precdatapsb_prec_type -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
-The amold, vmold and imold arguments may be -employed to interface with special devices, such as GPUs and other -accelerators. - -

- -

- - - - diff --git a/docs/html/node131.html b/docs/html/node131.html deleted file mode 100644 index 289b69ab..00000000 --- a/docs/html/node131.html +++ /dev/null @@ -1,153 +0,0 @@ - - - - - -apply -- Preconditioner application routine - - - - - - - - - - - - - - - - - - - - - -

-apply -- Preconditioner application - routine -

- -

-

-call prec%apply(x,y,desc_a,info,trans,work)
-call prec%apply(x,desc_a,info,trans)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
prec
-
the preconditioner. -Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a preconditioner data structure precdatapsb_prec_type. -
-
x
-
the source vector. -Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one array or an object of type vdatapsb_T_vect_type. -
-
desc_a
-
the problem communication descriptor. -Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a communication data structure descdatapsb_desc_type. -
-
trans
-
Scope: -
-Type: optional -
-Intent: in. -
-Specified as: a character. -
-
work
-
an optional work space -Scope: local -
-Type: optional -
-Intent: inout. -
-Specified as: a double precision array. -
-
- -

-

-
On Return
-
-
-
y
-
the destination vector. -Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one array or an object of type vdatapsb_T_vect_type. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node132.html b/docs/html/node132.html deleted file mode 100644 index c4e00902..00000000 --- a/docs/html/node132.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - -descr -- Prints a description of current preconditioner - - - - - - - - - - - - - - - - - - - - - -

-descr -- Prints a description of current - preconditioner -

- -

-

-call prec%descr()
-call prec%descr(iout, root)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
prec
-
the preconditioner. -Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a preconditioner data structure precdatapsb_prec_type. -
-
iout
-
output unit. -Scope: local -
-Type: optional -
-Intent: in. -
-Specified as: an integer number. Default: default output unit. -
-
root
-
Process from which to print -Scope: local -
-Type: optional -
-Intent: in. -
-Specified as: an integer number between 0 and $np-1$, in which case -the specified process will print the description, or $-1$, in which case -all processes will print. Default: 0. -
-
- -

-


- - - diff --git a/docs/html/node133.html b/docs/html/node133.html deleted file mode 100644 index fadd4e4b..00000000 --- a/docs/html/node133.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - -clone -- clone current preconditioner - - - - - - - - - - - - - - - - - - - - - -

-clone -- clone current - preconditioner -

- -
-call  prec%clone(precout,info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
prec
-
the preconditioner. -
-Scope: local. -
-
- -

-

-
On Return
-
-
-
precout
-
A copy of the input object. -
-
info
-
Return code. -
-
- -

-


- - - diff --git a/docs/html/node134.html b/docs/html/node134.html deleted file mode 100644 index c98f860c..00000000 --- a/docs/html/node134.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - -free -- Free a preconditioner - - - - - - - - - - - - - - - - - - - - -

-free -- Free a preconditioner -

- -

-

-call prec%free(info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
prec
-
the preconditioner. -
-Scope: local. -
-Type: required -
-Intent: inout. -
-Specified as: a preconditioner data structure precdatapsb_prec_type. -
-
On Exit
-

-

-
prec
-
Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a preconditioner data structure precdatapsb_prec_type. -
-
info
-
Scope: global -
-Type: required -
-Intent: out. -
-Error code: if no error, 0 is returned. -
-
-Notes -Releases all internal storage. - -

-


- - - diff --git a/docs/html/node135.html b/docs/html/node135.html deleted file mode 100644 index 9dda9479..00000000 --- a/docs/html/node135.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - -Iterative Methods - - - - - - - - - - - - - - - - - - - - - -

- -
-Iterative Methods -

- -

-In this chapter we provide routines for preconditioners and iterative -methods. The interfaces for Krylov subspace methods are available in -the module psb_krylov_mod. - -

-


- -Subsections - - - -

- - - diff --git a/docs/html/node136.html b/docs/html/node136.html deleted file mode 100644 index 87bb9d9b..00000000 --- a/docs/html/node136.html +++ /dev/null @@ -1,440 +0,0 @@ - - - - - -psb_krylov -- Krylov Methods Driver Routine - - - - - - - - - - - - - - - - - - - - -

-
-psb_krylov -- Krylov Methods Driver - Routine -

- -

-This subroutine is a driver that provides a general interface for all -the Krylov-Subspace family methods implemented in PSBLAS version 2. - -

-The stopping criterion can take the following values: -

-
1
-
normwise backward error in the infinity -norm; the iteration is stopped when -

-
- - -\begin{displaymath}err = \frac{\Vert r_i\Vert}{(\Vert A\Vert\Vert x_i\Vert+\Vert b\Vert)} < eps \end{displaymath} -
-
-

-
-
2
-
Relative residual in the 2-norm; the iteration is stopped -when -

-
- - -\begin{displaymath}err = \frac{\Vert r_i\Vert}{\Vert b\Vert _2} < eps \end{displaymath} -
-
-

-
-
3
-
Relative residual reduction in the 2-norm; the iteration is stopped -when -

-
- - -\begin{displaymath}err = \frac{\Vert r_i\Vert}{\Vert r_0\Vert _2} < eps \end{displaymath} -
-
-

-
-
-The behaviour is controlled by the istop argument (see -later). In the above formulae, $x_i$ is the tentative solution and -$r_i=b-Ax_i$ the corresponding residual at the $i$-th iteration. - -

-
-\begin{lstlisting}
-call psb_krylov(method,a,prec,b,x,eps,desc_a,info,&
-& itmax,iter,err,itrace,irst,istop,cond)
-\end{lstlisting} -
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
method
-
a string that defines the iterative method to be - used. Supported values are: -
-
CG:
-
the Conjugate Gradient method; - -
-
CGS:
-
the Conjugate Gradient Stabilized method; - -

-

-
GCR:
-
the Generalized Conjugate Residual method; - -
-
FCG:
-
the Flexible Conjugate Gradient method5; - -

-

-
BICG:
-
the Bi-Conjugate Gradient method; - -
-
BICGSTAB:
-
the Bi-Conjugate Gradient Stabilized method; - -
-
BICGSTABL:
-
the Bi-Conjugate Gradient Stabilized method with restarting; - -
-
RGMRES:
-
the Generalized Minimal Residual method with restarting. - -
-
-
-
a
-
the local portion of global sparse matrix -$A$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
prec
-
The data structure containing the preconditioner. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a structured data of type precdatapsb_prec_type. -
-
b
-
The RHS vector. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one array or an object of type vdatapsb_T_vect_type. -
-
x
-
The initial guess. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one array or an object of type vdatapsb_T_vect_type. -
-
eps
-
The stopping tolerance. -
-Scope: global -
-Type: required -
-Intent: in. -
-Specified as: a real number. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
itmax
-
The maximum number of iterations to perform. -
-Scope: global -
-Type: optional -
-Intent: in. -
-Default: $itmax = 1000$. -
-Specified as: an integer variable $itmax \ge 1$. -
-
itrace
-
If $>0$ print out an informational message about - convergence every $itrace$ iterations. If $=0$ print a message in - case of convergence failure. -
-Scope: global -
-Type: optional -
-Intent: in. -
-Default: $itrace = -1$. -
-
irst
-
An integer specifying the restart parameter. -
-Scope: global -
-Type: optional. -
-Intent: in. -
-Values: $irst>0$. This is employed for the BiCGSTABL or RGMRES -methods, otherwise it is ignored. - -

-

-
istop
-
An integer specifying the stopping criterion. -
-Scope: global -
-Type: optional. -
-Intent: in. -
-Values: 1: use the normwise backward error, 2: use the scaled 2-norm -of the residual, 3: use the residual reduction in the 2-norm. Default: 2. -
-
On Return
-
-
-
x
-
The computed solution. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one array or an object of type vdatapsb_T_vect_type. -
-
iter
-
The number of iterations performed. -
-Scope: global -
-Type: optional -
-Intent: out. -
-Returned as: an integer variable. -
-
err
-
The convergence estimate on exit. -
-Scope: global -
-Type: optional -
-Intent: out. -
-Returned as: a real number. -
-
cond
-
An estimate of the condition number of matrix $A$; only - available with the $CG$ method on real data. -
-Scope: global -
-Type: optional -
-Intent: out. -
-Returned as: a real number. A correct result will be greater than or -equal to one; if specified for non-real data, or an error occurred, -zero is returned. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- -

- -

- -

- - - - diff --git a/docs/html/node137.html b/docs/html/node137.html deleted file mode 100644 index 4717ee2d..00000000 --- a/docs/html/node137.html +++ /dev/null @@ -1,180 +0,0 @@ - - - - - -Bibliography - - - - - - - - - - - - - - - - - - - - - -

-Bibliography -

1 -
- D. Barbieri, V. Cardellini, S. Filippone and D. Rouson -Design Patterns for Scientific Computations on Sparse Matrices, - HPSS 2011, Algorithms and Programming Tools for Next-Generation High-Performance Scientific Software, Bordeaux, Sep. 2011 - -

-

2 -
-G. Bella, S. Filippone, A. De Maio and M. Testa, -A Simulation Model for Forest Fires, -in J. Dongarra, K. Madsen, J. Wasniewski, editors, -Proceedings of PARA 04 Workshop on State of the Art -in Scientific Computing, pp. 546-553, Lecture Notes in Computer Science, -Springer, 2005. -

3 -
A. Buttari, D. di Serafino, P. D'Ambra, S. Filippone,
-2LEV-D2P4: a package of high-performance preconditioners,
-Applicable Algebra in Engineering, Communications and Computing, -Volume 18, Number 3, May, 2007, pp. 223-239 -

4 -
P. D'Ambra, S. Filippone, D. Di Serafino
-On the Development of PSBLAS-based Parallel Two-level Schwarz Preconditioners -
-Applied Numerical Mathematics, Elsevier Science, -Volume 57, Issues 11-12, November-December 2007, Pages 1181-1196. - -

-

5 -
- Dongarra, J. J., DuCroz, J., Hammarling, S. and Hanson, R., -An Extended Set of Fortran Basic Linear Algebra Subprograms, -ACM Trans. Math. Softw. vol. 14, 1-17, 1988. -

6 -
- Dongarra, J., DuCroz, J., Hammarling, S. and Duff, I., -A Set of level 3 Basic Linear Algebra Subprograms, -ACM Trans. Math. Softw. vol. 16, 1-17, 1990. -

7 -
-J. J. Dongarra and R. C. Whaley, -A User's Guide to the BLACS v. 1.1, -Lapack Working Note 94, Tech. Rep. UT-CS-95-281, University of -Tennessee, March 1995 (updated May 1997). -

8 -
-I. Duff, M. Marrone, G. Radicati and C. Vittoli, -Level 3 Basic Linear Algebra Subprograms for Sparse Matrices: -a User Level Interface, -ACM Transactions on Mathematical Software, 23(3), pp. 379-401, 1997. -

9 -
-I. Duff, M. Heroux and R. Pozo, -An Overview of the Sparse Basic Linear -Algebra Subprograms: the New Standard from the BLAS Technical Forum, -ACM Transactions on Mathematical Software, 28(2), pp. 239-267, 2002. -

10 -
-S. Filippone and M. Colajanni, -PSBLAS: A Library for Parallel Linear Algebra -Computation on Sparse Matrices, -
-ACM Transactions on Mathematical Software, 26(4), pp. 527-550, 2000. -

11 -
-S. Filippone and A. Buttari, -Object-Oriented Techniques for Sparse Matrix Computations in Fortran 2003, -
-ACM Transactions on Mathematical Software, 38(4), 2012. -

12 -
-S. Filippone, P. D'Ambra, M. Colajanni, -Using a Parallel Library of Sparse Linear Algebra in a Fluid Dynamics -Applications Code on Linux Clusters, -in G. Joubert, A. Murli, F. Peters, M. Vanneschi, editors, -Parallel Computing - Advances & Current Issues, -pp. 441-448, Imperial College Press, 2002. -

13 -
- Gamma, E., Helm, R., Johnson, R., and Vlissides, - J. 1995. - Design Patterns: Elements of Reusable Object-Oriented Software. - Addison-Wesley. - -

-

14 -
-Karypis, G. and Kumar, V., -METIS: Unstructured Graph Partitioning and Sparse Matrix - Ordering System. -Minneapolis, MN 55455: University of Minnesota, Department of - Computer Science, 1995. -Internet Address: http://www.cs.umn.edu/~karypis. -

15 -
-Lawson, C., Hanson, R., Kincaid, D. and Krogh, F., - Basic Linear Algebra Subprograms for Fortran usage, -ACM Trans. Math. Softw. vol. 5, 38-329, 1979. - -

-

16 -
-Machiels, L. and Deville, M. -Fortran 90: An entry to object-oriented programming for the solution - of partial differential equations. -ACM Trans. Math. Softw. vol. 23, 32-49. -

17 -
-Metcalf, M., Reid, J. and Cohen, M. -Fortran 95/2003 explained. -Oxford University Press, 2004. -

18 -
-Rouson, D.W.I., Xia, J., Xu, X.: Scientific Software Design: The - Object-Oriented Way. Cambridge University Press (2011) - -

-

19 -
-M. Snir, S. Otto, S. Huss-Lederman, D. Walker and J. Dongarra, -MPI: The Complete Reference. Volume 1 - The MPI Core, second edition, -MIT Press, 1998. -
- -

-


- - - diff --git a/docs/html/node138.html b/docs/html/node138.html deleted file mode 100644 index c57092be..00000000 --- a/docs/html/node138.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - -About this document ... - - - - - - - - - - - - - - - - - - - -

-About this document ... -

-

-This document was generated using the -LaTeX2HTML translator Version 2018 (Released Feb 1, 2018) -

-Copyright © 1993, 1994, 1995, 1996, -Nikos Drakos, -Computer Based Learning Unit, University of Leeds. -
-Copyright © 1997, 1998, 1999, -Ross Moore, -Mathematics Department, Macquarie University, Sydney. -

-The command line arguments were:
- latex2html -local_icons -noaddress -dir ../../html userhtml.tex -

-The translation was initiated on 2019-12-12 -


- - - diff --git a/docs/html/node14.html b/docs/html/node14.html deleted file mode 100644 index 479dc5bd..00000000 --- a/docs/html/node14.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - -get_global_rows -- Get number of global rows - - - - - - - - - - - - - - - - - - - - - -

-get_global_rows -- Get number of global rows -

- -

-

-nr = desc%get_global_rows()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc
-
the communication descriptor. -
-Scope: local. -
-
- -

-

-
On Return
-
-
-
Function value
-
The number of global rows, i.e. the size of the - global index space. -
-
- -

-


- - - diff --git a/docs/html/node15.html b/docs/html/node15.html deleted file mode 100644 index 04fda03d..00000000 --- a/docs/html/node15.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - -get_global_cols -- Get number of global cols - - - - - - - - - - - - - - - - - - - - - -

-get_global_cols -- Get number of global cols -

- -

-

-nr = desc%get_global_cols()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc
-
the communication descriptor. -
-Scope: local. -
-
- -

-

-
On Return
-
-
-
Function value
-
The number of global cols; usually this is equal - to the number of global rows. -
-
- -

-


- - - diff --git a/docs/html/node16.html b/docs/html/node16.html deleted file mode 100644 index ddfd63b5..00000000 --- a/docs/html/node16.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - -get_global_indices -- Get vector of global indices - - - - - - - - - - - - - - - - - - - - - -

-get_global_indices -- Get vector of global indices -

- -

-

-myidx = desc%get_global_indices([owned])
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc
-
the communication descriptor. -
-Scope: local. -
-Type: required. -
-
owned
-
Choose if you only want owned indices - (owned=.true.) or also halo indices (owned=.false.). -Scope: local. -
-Type: optional; default: .true.. -
-
- -

-

-
On Return
-
-
-
Function value
-
The global indices, returned as an allocatable - integer array of kind psb_lpk_ and rank 1. -
-
- -

-


- - - diff --git a/docs/html/node17.html b/docs/html/node17.html deleted file mode 100644 index d8fd42a4..00000000 --- a/docs/html/node17.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - -get_context -- Get communication context - - - - - - - - - - - - - - - - - - - - - -

-get_context -- Get communication context -

- -

-

-ictxt = desc%get_context()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc
-
the communication descriptor. -
-Scope: local. -
-
- -

-

-
On Return
-
-
-
Function value
-
The communication context. -
-
- -

-


- - - diff --git a/docs/html/node18.html b/docs/html/node18.html deleted file mode 100644 index b1188118..00000000 --- a/docs/html/node18.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - -Clone -- clone current object - - - - - - - - - - - - - - - - - - - - - -

-Clone -- clone current object -

- -

-

-call  desc%clone(descout,info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc
-
the communication descriptor. -
-Scope: local. -
-
- -

-

-
On Return
-
-
-
descout
-
A copy of the input object. -
-
info
-
Return code. -
-
- -

-


- - - diff --git a/docs/html/node19.html b/docs/html/node19.html deleted file mode 100644 index 947813c1..00000000 --- a/docs/html/node19.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - -CNV -- convert internal storage format - - - - - - - - - - - - - - - - - - - - - -

-CNV -- convert internal storage format -

- -

-

-call  desc%cnv(mold)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc
-
the communication descriptor. -
-Scope: local. -
-
mold
-
the desired integer storage format. -
-Scope: local. -
-Specified as: a object of type derived from (integer) vbasedatapsb_T_base_vect_type. -
-
-The mold arguments may be -employed to interface with special devices, such as GPUs and other -accelerators. - -

-


- - - diff --git a/docs/html/node2.html b/docs/html/node2.html deleted file mode 100644 index a0033b2b..00000000 --- a/docs/html/node2.html +++ /dev/null @@ -1,169 +0,0 @@ - - - - - -Introduction - - - - - - - - - - - - - - - - - - - - - -

-
-Introduction -

- -

-The PSBLAS library, developed with the aim to facilitate the -parallelization of computationally intensive scientific applications, -is designed to address parallel implementation of iterative solvers -for sparse linear systems through the distributed memory paradigm. It -includes routines for multiplying sparse matrices by dense matrices, -solving block diagonal systems with triangular diagonal entries, -preprocessing sparse matrices, and contains additional routines for -dense matrix operations. The current implementation of PSBLAS -addresses a distributed memory execution model operating with message -passing. - -

-The PSBLAS library version 3 is implemented in - the Fortran 2003 [17] programming language, with reuse and/or - adaptation of existing Fortran 77 and Fortran 95 software, plus a - handful of C routines. - -

-The use of Fortran 2003 offers a number of advantages over Fortran 95, -mostly in the handling of requirements for evolution and adaptation of -the library to new computing architectures and integration of -new algorithms. -For a detailed discussion of our design see [11]; other -works discussing advanced programming in Fortran 2003 -include [1,18]; sufficient support for -Fortran 2003 is now available from many compilers, including the GNU -Fortran compiler from the Free Software Foundation (as of version 4.8). - -

-Previous approaches have been based on mixing Fortran 95, with its -support for object-based design, with other languages; these have -been advocated by a number of authors, -e.g. [16]. Moreover, the Fortran 95 facilities for dynamic -memory management and interface overloading greatly enhance the -usability of the PSBLAS -subroutines. In this way, the library can take care of runtime memory -requirements that are quite difficult or even impossible to predict at -implementation or compilation time. - -

-The presentation of the -PSBLAS library follows the general structure of the proposal for -serial Sparse BLAS [8,9], which in its turn is based on the -proposal for BLAS on dense matrices [15,5,6]. - -

-The applicability of sparse iterative solvers to many different areas -causes some terminology problems because the same concept may be -denoted through different names depending on the application area. The -PSBLAS features presented in this document will be discussed referring -to a finite difference discretization of a Partial Differential -Equation (PDE). However, the scope of the library is wider than -that: for example, it can be applied to finite element discretizations -of PDEs, and even to different classes of problems such as nonlinear -optimization, for example in optimal control problems. - -

-The design of a solver for sparse linear systems is driven by many -conflicting objectives, such as limiting occupation of storage -resources, exploiting regularities in the input data, exploiting -hardware characteristics of the parallel platform. To achieve an -optimal communication to computation ratio on distributed memory -machines it is essential to keep the data locality as high as -possible; this can be done through an appropriate data allocation -strategy. The choice of the preconditioner is another very important -factor that affects efficiency of the implemented application. Optimal -data distribution requirements for a given preconditioner may conflict -with distribution requirements of the rest of the solver. Finding the -optimal trade-off may be very difficult because it is application -dependent. Possible solutions to these problems and other important -inputs to the development of the PSBLAS software package have come from -an established experience in applying the PSBLAS solvers to -computational fluid dynamics applications. - -

- -

- - - - diff --git a/docs/html/node20.html b/docs/html/node20.html deleted file mode 100644 index 48a86616..00000000 --- a/docs/html/node20.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - -psb_cd_get_large_threshold -- Get threshold for index mapping switch - - - - - - - - - - - - - - - - - - - - - -

-psb_cd_get_large_threshold -- Get threshold for - index mapping switch -

- -

-

-ith = psb_cd_get_large_threshold()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Return
-
-
-
Function value
-
The current value for the size threshold. - -

-

-
- -

-


- - - diff --git a/docs/html/node21.html b/docs/html/node21.html deleted file mode 100644 index 8f273111..00000000 --- a/docs/html/node21.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - -psb_cd_set_large_threshold -- Set threshold for index mapping switch - - - - - - - - - - - - - - - - - - - - - -

-psb_cd_set_large_threshold -- Set threshold for - index mapping switch -

- -

-

-call psb_cd_set_large_threshold(ith)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
ith
-
the new threshold for communication descriptors. -
-Scope: global. -
-Type: required. -
-Intent: in. -
-Specified as: an integer value greater than zero. -
-
-Note: the threshold value is only queried by the library at the time a -call to psb_cdall is executed, therefore changing the threshold -has no effect on communication descriptors that have already been -initialized. Moreover the threshold must have the same value on all -processes. - -

-


- - - diff --git a/docs/html/node22.html b/docs/html/node22.html deleted file mode 100644 index a414b686..00000000 --- a/docs/html/node22.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - -get_p_adjcncy -- Get process adjacency list - - - - - - - - - - - - - - - - - - - - - -

-get_p_adjcncy -- Get process adjacency list -

- -

-

-list =  desc%get_p_adjcncy()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Return
-
-
-
Function value
-
The current list of adjacent processes, - i.e. processes with which the current one has to exchange halo - data. - -

-

-
- -

-


- - - diff --git a/docs/html/node23.html b/docs/html/node23.html deleted file mode 100644 index 1c75d9a6..00000000 --- a/docs/html/node23.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - -set_p_adjcncy -- Set process adjacency list - - - - - - - - - - - - - - - - - - - - - -

-set_p_adjcncy -- Set process adjacency list -

- -

-

-call desc%set_p_adjcncy(list)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
list
-
the list of adjacent processes. -
-Scope: local. -
-Type: required. -
-Intent: in. -
-Specified as: a one-dimensional array of integers of kind psb_ipk_. -
-
-Note: this method can be called after a call to psb_cdall and -before a call to psb_cdasb. The user is specifying here some -knowledge about which processes are topological neighbours of the -current process. The availability of this information may speed up the -execution of the assembly call psb_cdasb. - -

-


- - - diff --git a/docs/html/node24.html b/docs/html/node24.html deleted file mode 100644 index e75d71da..00000000 --- a/docs/html/node24.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -fnd_owner -- Find the owner process of a set of indices - - - - - - - - - - - - - - - - - - - - - -

-fnd_owner -- Find the owner process of a set of indices -

- -

-

-call desc%fnd_owner(idx,iprc,info)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
idx
-
the list of global indices for which we need the owning processes. -
-Scope: local. -
-Type: required. -
-Intent: in. -
-Specified as: a one-dimensional array of integers of kind psb_lpk_. -
-
On Return
-
-
-
iprc
-
the list of processes owning the indices in idx. -
-Scope: local. -
-Type: required. -
-Intent: in. -
-Specified as: an allocatable one-dimensional array of integers of kind psb_ipk_. -
-
-Note: this method may or may not actually require communications, depending on -the exact internal data storage; given that the choice of storage may -be altered by runtime parameters, it is necessary for safety that this -method is called by all processes. - -

-


- - - diff --git a/docs/html/node25.html b/docs/html/node25.html deleted file mode 100644 index 753d77c4..00000000 --- a/docs/html/node25.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - -Named Constants - - - - - - - - - - - - - - - - - - - - -

- -
-Named Constants -

-
-
psb_none_
-
Generic no-op; -
-
psb_root_
-
Default root process for broadcast and scatter operations; -
-
psb_nohalo_
-
Do not fetch halo elements; -
-
psb_halo_
-
Fetch halo elements from neighbouring processes; -
-
psb_sum_
-
Sum overlapped elements -
-
psb_avg_
-
Average overlapped elements -
-
psb_comm_halo_
-
Exchange data based on the halo_index - list; -
-
psb_comm_ext_
-
Exchange data based on the ext_index - list; -
-
psb_comm_ovr_
-
Exchange data based on the ovrlap_index - list; -
-
psb_comm_mov_
-
Exchange data based on the ovr_mst_idx - list; - -

-

-
- -

-


- - - diff --git a/docs/html/node26.html b/docs/html/node26.html deleted file mode 100644 index d72ee999..00000000 --- a/docs/html/node26.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - -Sparse Matrix class - - - - - - - - - - - - - - - - - - - - - -

- -
-Sparse Matrix class -

-The spdatapsb_Tspmat_type class -contains all information about the local portion of the sparse matrix and -its storage mode. Its design is -based on the STATE design pattern [13] as detailed -in [11]; the type declaration is shown in -figure 4 where T is a placeholder for the -data type and precision variants -
-
S
-
Single precision real; -
-
D
-
Double precision real; -
-
C
-
Single precision complex; -
-
Z
-
Double precision complex. -
-
-The actual data is contained in the polymorphic component a%a -of type spbasedatapsb_T_base_sparse_mat; its -specific layout can be chosen dynamically among the predefined types, -or an entirely new storage layout can be implemented and passed to the -library at runtime via the psb_spasb routine. - -
- - - -
Figure 4: - The PSBLAS defined data type that - contains a sparse matrix.
-
- -
-
-  type :: psb_Tspmat_type
-    class(psb_T_base_sparse_mat), allocatable  :: a 
-  end type  psb_Tspmat_type
-
-
-
-
-The following very common formats are precompiled in PSBLAS and thus -are always available: -
-
psb_T_coo_sparse_mat
-
Coordinate storage; -
-
psb_T_csr_sparse_mat
-
Compressed storage by rows; -
-
psb_T_csc_sparse_mat
-
Compressed storage by columns; -
-
-The inner sparse matrix has an associated state, which can take the -following values: -
-
Build:
-
State entered after the first allocation, and before the - first assembly; in this state it is possible to add nonzero entries. -
-
Assembled:
-
State entered after the assembly; computations using - the sparse matrix, such as matrix-vector products, are only possible - in this state; -
-
Update:
-
State entered after a reinitalization; this is used to - handle applications in which the same sparsity pattern is used - multiple times with different coefficients. In this state it is only - possible to enter coefficients for already existing nonzero entries. -
-
-The only storage variant supporting the build state is COO; all other -variants are obtained by conversion to/from it. - -

-


- -Subsections - - - - - - - - - diff --git a/docs/html/node27.html b/docs/html/node27.html deleted file mode 100644 index a706ee85..00000000 --- a/docs/html/node27.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - -Sparse Matrix Methods - - - - - - - - - - - - - - - - - - - - - -

-Sparse Matrix Methods -

- -

-


- - - diff --git a/docs/html/node28.html b/docs/html/node28.html deleted file mode 100644 index 50a33bc8..00000000 --- a/docs/html/node28.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - -get_nrows -- Get number of rows in a sparse matrix - - - - - - - - - - - - - - - - - - - - - -

-get_nrows -- Get number of rows in a sparse matrix -

- -

-

-nr = a%get_nrows()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix -
-Scope: local -
-
- -

-

-
On Return
-
-
-
Function value
-
The number of rows of sparse matrix a. -
-
- -

-


- - - diff --git a/docs/html/node29.html b/docs/html/node29.html deleted file mode 100644 index 6b49dadc..00000000 --- a/docs/html/node29.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - -get_ncols -- Get number of columns in a sparse matrix - - - - - - - - - - - - - - - - - - - - - -

-get_ncols -- Get number of columns in a sparse - matrix -

- -

-

-nc = a%get_ncols()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix -
-Scope: local -
-
- -

-

-
On Return
-
-
-
Function value
-
The number of columns of sparse matrix a. -
-
- -

-


- - - diff --git a/docs/html/node3.html b/docs/html/node3.html deleted file mode 100644 index 0014c0b7..00000000 --- a/docs/html/node3.html +++ /dev/null @@ -1,196 +0,0 @@ - - - - - -General overview - - - - - - - - - - - - - - - - - - - - - -

- -
-General overview -

-The PSBLAS library is designed to handle the implementation of -iterative solvers for sparse linear systems on distributed memory -parallel computers. The system coefficient matrix $A$ must be square; -it may be real or complex, nonsymmetric, and its sparsity pattern -needs not to be symmetric. The serial computation parts are based on -the serial sparse BLAS, so that any extension made to the data -structures of the serial kernels is available to the parallel -version. The overall design and parallelization strategy have been -influenced by the structure of the ScaLAPACK parallel -library. The layered structure of the PSBLAS library -is shown in figure 1; lower layers of the library -indicate an encapsulation relationship with upper layers. The ongoing -discussion focuses on the Fortran 2003 layer immediately below the -application layer. -The serial parts of the computation on each process are executed through -calls to the serial sparse BLAS subroutines. -In a similar way, the inter-process message exchanges are encapsulated -in an applicaiton layer that has been strongly inspired by the Basic -Linear Algebra Communication Subroutines (BLACS) library [7]. -Usually there is no need to deal directly with MPI; however, in some -cases, MPI routines are used directly to improve efficiency. For -further details on our communication layer see Sec. 7. - -

- -

- - - -
Figure 1: -PSBLAS library components hierarchy.
-
-\includegraphics[scale=0.65]{figures/psblas.eps} - -\includegraphics[scale=0.65]{figures/psblas} - -
-
- -

-The type of linear system matrices that we address typically arise in the -numerical solution of PDEs; in such a context, -it is necessary to pay special attention to the -structure of the problem from which the application originates. -The nonzero pattern of a matrix arising from the -discretization of a PDE is influenced by various factors, such as the -shape of the domain, the discretization strategy, and -the equation/unknown ordering. The matrix itself can be interpreted as -the adjacency matrix of the graph associated with the discretization -mesh. - -

-The distribution of the coefficient matrix for the linear system is -based on the “owner computes” rule: -the variable associated to each mesh point is assigned to a process -that will own the corresponding row in the coefficient matrix and -will carry out all related computations. This allocation strategy -is equivalent to a partition of the discretization mesh into sub-domains. -Our library supports any distribution that keeps together -the coefficients of each matrix row; there are no other constraints on -the variable assignment. -This choice is consistent with simple data distributions -such as CYCLIC(N) and BLOCK, -as well as completely arbitrary assignments of -equation indices to processes. -In particular it is consistent with the -usage of graph partitioning tools commonly available in the -literature, e.g. METIS [14]. -Dense vectors conform to sparse -matrices, that is, the entries of a vector follow the same distribution -of the matrix rows. - -

-We assume that the sparse matrix is built in parallel, where each -process generates its own portion. We never require that the entire -matrix be available on a single node. However, it is possible -to hold the entire matrix in one process and distribute it -explicitly1, even though the resulting memory -bottleneck would make this option unattractive in most cases. - -

-


- -Subsections - - - - - - - - - diff --git a/docs/html/node30.html b/docs/html/node30.html deleted file mode 100644 index 1a01acaf..00000000 --- a/docs/html/node30.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - -get_nnzeros -- Get number of nonzero elements in a sparse matrix - - - - - - - - - - - - - - - - - - - - - -

-get_nnzeros -- Get number of nonzero elements - in a sparse matrix -

- -

-

-nz = a%get_nnzeros()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix -
-Scope: local -
-
- -

-

-
On Return
-
-
-
Function value
-
The number of nonzero elements stored in sparse matrix a. -
-
- -

-Notes - -

    -
  1. The function value is specific to the storage format of matrix - a; some storage formats employ padding, thus the returned - value for the same matrix may be different for different storage choices. -
  2. -
- -

-


- - - diff --git a/docs/html/node31.html b/docs/html/node31.html deleted file mode 100644 index 68c59182..00000000 --- a/docs/html/node31.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - -get_size -- Get maximum number of nonzero elements in a sparse matrix - - - - - - - - - - - - - - - - - - - - - -

-get_size -- Get maximum number of nonzero elements - in a sparse matrix -

- -

-

-maxnz = a%get_size()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix -
-Scope: local -
-
- -

-

-
On Return
-
-
-
Function value
-
The maximum number of nonzero elements that can - be stored in sparse matrix a using its current memory allocation. -
-
- -

-


- - - diff --git a/docs/html/node32.html b/docs/html/node32.html deleted file mode 100644 index aeae7bf5..00000000 --- a/docs/html/node32.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - -sizeof -- Get memory occupation in bytes -of a sparse matrix - - - - - - - - - - - - - - - - - - - - - -

-sizeof -- Get memory occupation in bytes -of a sparse matrix -

- -

-

-memory_size = a%sizeof()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix -
-Scope: local -
-
- -

-

-
On Return
-
-
-
Function value
-
The memory occupation in bytes. -
-
- -

-


- - - diff --git a/docs/html/node33.html b/docs/html/node33.html deleted file mode 100644 index 5647db1b..00000000 --- a/docs/html/node33.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - -get_fmt -- Short description of the dynamic type - - - - - - - - - - - - - - - - - - - - - -

-get_fmt -- Short description of the dynamic type -

- -

-

-write(*,*) a%get_fmt()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix -
-Scope: local -
-
- -

-

-
On Return
-
-
-
Function value
-
A short string describing the dynamic type of - the matrix. Predefined values include NULL, COO, - CSR and CSC. -
-
- -

-


- - - diff --git a/docs/html/node34.html b/docs/html/node34.html deleted file mode 100644 index f3f44ce6..00000000 --- a/docs/html/node34.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - -is_bld, is_upd, is_asb -- Status check - - - - - - - - - - - - - - - - - - - - - -

-is_bld, is_upd, is_asb -- Status check -

- -

-

-if (a%is_bld()) then 
-if (a%is_upd()) then 
-if (a%is_asb()) then 
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix -
-Scope: local -
-
- -

-

-
On Return
-
-
-
Function value
-
A logical value indicating whether the - matrix is in the Build, Update or Assembled state, respectively. -
-
- -

-


- - - diff --git a/docs/html/node35.html b/docs/html/node35.html deleted file mode 100644 index 40c4238a..00000000 --- a/docs/html/node35.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - -is_lower, is_upper, is_triangle, is_unit -- Format check - - - - - - - - - - - - - - - - - - - - - -

-is_lower, is_upper, is_triangle, is_unit -- - Format check -

- -

-

-if (a%is_triangle()) then 
-if (a%is_upper()) then 
-if (a%is_lower()) then 
-if (a%is_unit()) then 
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix -
-Scope: local -
-
- -

-

-
On Return
-
-
-
Function value
-
A logical value indicating whether the - matrix is triangular; if is_triangle() returns .true. - check also if it is lower, upper and with a unit (i.e. assumed) - diagonal. -
-
- -

-


- - - diff --git a/docs/html/node36.html b/docs/html/node36.html deleted file mode 100644 index dc187317..00000000 --- a/docs/html/node36.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - -cscnv -- Convert to a different storage format - - - - - - - - - - - - - - - - - - - - - -

-cscnv -- Convert to a different storage format -

- -

-

-call  a%cscnv(b,info [, type, mold, dupl])
-call  a%cscnv(info [, type, mold, dupl])
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix. -
-A variable of type psb_Tspmat_type. -
-Scope: local. -
-
type
-
a string requesting a new format. -
-Type: optional. -
-
mold
-
a variable of class(psb_T_base_sparse_mat) requesting a new format. -
-Type: optional. -
-
dupl
-
an integer value specifing how to handle duplicates (see - Named Constants below) -
-
- -

-

-
On Return
-
-
-
b,a
-
A copy of a with a new storage format. -
-A variable of type psb_Tspmat_type. -
-
info
-
Return code. -
-
-The mold arguments may be -employed to interface with special devices, such as GPUs and other -accelerators. - -

-


- - - diff --git a/docs/html/node37.html b/docs/html/node37.html deleted file mode 100644 index 7e485ab7..00000000 --- a/docs/html/node37.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - -csclip -- Reduce to a submatrix - - - - - - - - - - - - - - - - - - - - - -

-csclip -- Reduce to a submatrix -

- -
-    call a%csclip(b,info[,&
-       & imin,imax,jmin,jmax,rscale,cscale])
-
- -

-Returns the submatrix A(imin:imax,jmin:jmax), optionally -rescaling row/col indices to the range -1:imax-imin+1,1:jmax-jmin+1. -

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix. -
-A variable of type psb_Tspmat_type. -
-Scope: local. -
-
imin,imax,jmin,jmax
-
Minimum and maximum row and column indices. -
-Type: optional. -
-
rscale,cscale
-
Whether to rescale row/column indices. -Type: optional. -
-
-
-
On Return
-
-
-
b
-
A copy of a submatrix of a. -
-A variable of type psb_Tspmat_type. -
-
info
-
Return code. -
-
- -

-


- - - diff --git a/docs/html/node38.html b/docs/html/node38.html deleted file mode 100644 index dd031c3b..00000000 --- a/docs/html/node38.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - -clean_zeros -- Eliminate zero coefficients - - - - - - - - - - - - - - - - - - - - - -

-clean_zeros -- Eliminate zero coefficients -

- -
-    call a%clean_zeros(info)
-
- -

-Eliminates zero coefficients in the input matrix. Note that depending -on the internal storage format, there may still be some amount of -zero padding in the output. - -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix. -
-A variable of type psb_Tspmat_type. -
-Scope: local. -
-
-
-
On Return
-
-
-
a
-
The matrix a without zero coefficients. -
-A variable of type psb_Tspmat_type. -
-
info
-
Return code. -
-
- -

-


- - - diff --git a/docs/html/node39.html b/docs/html/node39.html deleted file mode 100644 index e9e7e818..00000000 --- a/docs/html/node39.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - -get_diag -- Get main diagonal - - - - - - - - - - - - - - - - - - - - - -

-get_diag -- Get main diagonal -

- -
-    call a%get_diag(d,info)
-
- -

-Returns a copy of the main diagonal. -

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix. -
-A variable of type psb_Tspmat_type. -
-Scope: local. -
-
-
-
On Return
-
-
-
d
-
A copy of the main diagonal. -
-A one-dimensional array of the appropriate type. -
-
info
-
Return code. -
-
- -

-


- - - diff --git a/docs/html/node4.html b/docs/html/node4.html deleted file mode 100644 index 6cd9bef9..00000000 --- a/docs/html/node4.html +++ /dev/null @@ -1,222 +0,0 @@ - - - - - -Basic Nomenclature - - - - - - - - - - - - - - - - - - - - - -

-Basic Nomenclature -

- -

-Our computational model implies that the data allocation on the -parallel distributed memory machine is guided by the structure of the -physical model, and specifically by the discretization mesh of the -PDE. - -

-Each point of the discretization mesh will have (at least) one -associated equation/variable, and therefore one index. We say that -point $i$ depends on point $j$ if the equation for a -variable associated with $i$ contains a term in $j$, or equivalently -if $a_{ij} \ne0$. -After the partition of the discretization mesh into sub-domains -assigned to the parallel processes, -we classify the points of a given sub-domain as following. -

-
Internal.
-
An internal point of - a given domain depends only on points of the -same domain. -If all points of a domain are assigned to one -process, then a computational step (e.g., a -matrix-vector product) of the -equations associated with the internal points requires no data -items from other domains and no communications. - -

-

-
Boundary.
-
A point of -a given domain is a boundary point if it depends on points -belonging to other domains. - -

-

-
Halo.
-
A halo point for a given domain is a point belonging to -another domain such that there is a boundary point which depends -on it. Whenever performing a computational step, such as a -matrix-vector product, the values associated with halo points are -requested from other domains. A boundary point of a given -domain is usually a halo point for some other domain2; therefore -the cardinality of the boundary points set denotes the amount of data - sent to other domains. -
-
Overlap.
-
An overlap point is a boundary point assigned to -multiple domains. Any operation that involves an overlap point -has to be replicated for each assignment. -
-
-Overlap points do not usually exist in the basic data -distributions; however they are a feature of Domain Decomposition -Schwarz preconditioners which are the subject of related research -work [4,3]. - -

-We denote the sets of internal, boundary and halo points for a given -subdomain by $\cal I$, $\cal B$ and $\cal H$. -Each subdomain is assigned to one process; each process usually -owns one subdomain, although the user may choose to assign more than -one subdomain to a process. If each process $i$ owns one -subdomain, the number of rows in the local sparse matrix is - -$\vert{\cal I}_i\vert + \vert{\cal B}_i\vert$, and the number of local columns -(i.e. those for which there exists at least one non-zero entry in the -local rows) is -$\vert{\cal I}_i\vert + \vert{\cal B}_i\vert +\vert{\cal H}_i\vert$. - -

- -

- - - -
Figure 2: -Point classfication.
-
-\includegraphics[scale=0.65]{figures/points.eps} - -\rotatebox{-90}{\includegraphics[scale=0.65]{figures/points}} - -
-
- -

-This classification of mesh points guides the naming scheme that we -adopted in the library internals and in the data structures. We -explicitly note that “Halo” points are also often called “ghost” -points in the literature. - -

- -

- - - - diff --git a/docs/html/node40.html b/docs/html/node40.html deleted file mode 100644 index 8d7538d9..00000000 --- a/docs/html/node40.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - -clip_diag -- Cut out main diagonal - - - - - - - - - - - - - - - - - - - - - -

-clip_diag -- Cut out main diagonal -

- -
-    call a%clip_diag(b,info)
-
- -

-Returns a copy of a without the main diagonal. -

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix. -
-A variable of type psb_Tspmat_type. -
-Scope: local. -
-
-
-
On Return
-
-
-
b
-
A copy of a without the main diagonal. -
-A variable of type psb_Tspmat_type. -
-
info
-
Return code. -
-
- -

-


- - - diff --git a/docs/html/node41.html b/docs/html/node41.html deleted file mode 100644 index 29c451e2..00000000 --- a/docs/html/node41.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - -tril -- Return the lower triangle - - - - - - - - - - - - - - - - - - - - - -

-tril -- Return the lower triangle -

- -
-    call a%tril(l,info[,&
-       & diag,imin,imax,jmin,jmax,rscale,cscale,u])
-
- -

-Returns the lower triangular part of submatrix -A(imin:imax,jmin:jmax), optionally rescaling row/col indices to -the range 1:imax-imin+1,1:jmax-jmin+1 and returing the -complementary upper triangle. -

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix. -
-A variable of type psb_Tspmat_type. -
-Scope: local. -
-
diag
-
Include diagonals up to this one; diag=1 means the - first superdiagonal, diag=-1 means the first subdiagonal. -Default 0. -
-
imin,imax,jmin,jmax
-
Minimum and maximum row and column indices. -
-Type: optional. -
-
rscale,cscale
-
Whether to rescale row/column indices. -Type: optional. -
-
-
-
On Return
-
-
-
l
-
A copy of the lower triangle of a. -
-A variable of type psb_Tspmat_type. -
-
u
-
(optional) A copy of the upper triangle of a. -
-A variable of type psb_Tspmat_type. -
-
info
-
Return code. -
-
- -

-


- - - diff --git a/docs/html/node42.html b/docs/html/node42.html deleted file mode 100644 index 7accc9e2..00000000 --- a/docs/html/node42.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - -triu -- Return the upper triangle - - - - - - - - - - - - - - - - - - - - - -

-triu -- Return the upper triangle -

- -
-    call a%triu(u,info[,&
-       & diag,imin,imax,jmin,jmax,rscale,cscale,l])
-
- -

-Returns the upper triangular part of submatrix -A(imin:imax,jmin:jmax), optionally rescaling row/col indices to -the range 1:imax-imin+1,1:jmax-jmin+1, and returing the -complementary lower triangle. -

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix. -
-A variable of type psb_Tspmat_type. -
-Scope: local. -
-
diag
-
Include diagonals up to this one; diag=1 means the - first superdiagonal, diag=-1 means the first subdiagonal. -Default 0. -
-
imin,imax,jmin,jmax
-
Minimum and maximum row and column indices. -
-Type: optional. -
-
rscale,cscale
-
Whether to rescale row/column indices. -Type: optional. -
-
-
-
On Return
-
-
-
u
-
A copy of the upper triangle of a. -
-A variable of type psb_Tspmat_type. -
-
l
-
(optional) A copy of the lower triangle of a. -
-A variable of type psb_Tspmat_type. -
-
info
-
Return code. -
-
- -

-


- - - diff --git a/docs/html/node43.html b/docs/html/node43.html deleted file mode 100644 index b12bc4ee..00000000 --- a/docs/html/node43.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - -psb_set_mat_default -- Set default storage format - - - - - - - - - - - - - - - - - - - - - -

-psb_set_mat_default -- Set default storage format -

- -

-

-call  psb_set_mat_default(a)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
a variable of class(psb_T_base_sparse_mat) requesting - a new default storage format. -
-Type: required. -
-
- -

-


- - - diff --git a/docs/html/node44.html b/docs/html/node44.html deleted file mode 100644 index 81c52bfd..00000000 --- a/docs/html/node44.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - -clone -- Clone current object - - - - - - - - - - - - - - - - - - - - - -

-clone -- Clone current object -

- -

-

-call  a%clone(b,info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
a
-
the sparse matrix. -
-Scope: local. -
-
- -

-

-
On Return
-
-
-
b
-
A copy of the input object. -
-
info
-
Return code. -
-
- -

-


- - - diff --git a/docs/html/node45.html b/docs/html/node45.html deleted file mode 100644 index fd97dac2..00000000 --- a/docs/html/node45.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - -Named Constants - - - - - - - - - - - - - - - - - - - - -

- -
-Named Constants -

-
-
psb_dupl_ovwrt_
-
Duplicate coefficients should be overwritten - (i.e. ignore duplications) -
-
psb_dupl_add_
-
Duplicate coefficients should be added; -
-
psb_dupl_err_
-
Duplicate coefficients should trigger an error conditino -
-
psb_upd_dflt_
-
Default update strategy for matrix coefficients; -
-
psb_upd_srch_
-
Update strategy based on search into the data structure; -
-
psb_upd_perm_
-
Update strategy based on additional - permutation data (see tools routine description). -
-
- -

-


- - - diff --git a/docs/html/node46.html b/docs/html/node46.html deleted file mode 100644 index 565f1284..00000000 --- a/docs/html/node46.html +++ /dev/null @@ -1,164 +0,0 @@ - - - - - -Dense Vector Data Structure - - - - - - - - - - - - - - - - - - - - - -

- -
-Dense Vector Data Structure -

-The vdatapsb_T_vect_type data structure -encapsulates the dense vectors in a way similar to sparse matrices, -i.e. including a base type vbasedata psb_T_base_vect_type. -The user will not, in general, access the vector components directly, -but rather via the routines of sec. 6. Among other -simple things, we define here an extraction method that can be used to -get a full copy of the part of the vector stored on the local -process. - -

-The type declaration is shown in -figure 5 where T is a placeholder for the -data type and precision variants -

-
I
-
Integer; -
-
S
-
Single precision real; -
-
D
-
Double precision real; -
-
C
-
Single precision complex; -
-
Z
-
Double precision complex. -
-
-The actual data is contained in the polymorphic component v%v; -the separation between the application and the actual data is -essential for cases where it is necessary to link to data storage made -available elsewhere outside the direct control of the -compiler/application, e.g. data stored in a graphics accelerator's -private memory. - -
- - - -
Figure 5: - The PSBLAS defined data type that - contains a dense vector.
-
- -
-
-  type psb_T_base_vect_type
-    TYPE(KIND_), allocatable :: v(:)
-  end type psb_T_base_vect_type
-
-  type psb_T_vect_type
-    class(psb_T_base_vect_type), allocatable :: v 
-  end type  psb_T_vect_type
-
-
-
-
- -

-


- -Subsections - - - - - - - - - diff --git a/docs/html/node47.html b/docs/html/node47.html deleted file mode 100644 index aa1b2082..00000000 --- a/docs/html/node47.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - -Vector Methods - - - - - - - - - - - - - - - - - - - - - -

-Vector Methods -

-

- - - diff --git a/docs/html/node48.html b/docs/html/node48.html deleted file mode 100644 index 295122e4..00000000 --- a/docs/html/node48.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - -get_nrows -- Get number of rows in a dense vector - - - - - - - - - - - - - - - - - - - - - -

-get_nrows -- Get number of rows in a dense vector -

- -

-

-nr = v%get_nrows()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
v
-
the dense vector -
-Scope: local -
-
- -

-

-
On Return
-
-
-
Function value
-
The number of rows of dense vector v. -
-
- -

-


- - - diff --git a/docs/html/node49.html b/docs/html/node49.html deleted file mode 100644 index 683f5a4a..00000000 --- a/docs/html/node49.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - -sizeof -- Get memory occupation in bytes -of a dense vector - - - - - - - - - - - - - - - - - - - - - -

-sizeof -- Get memory occupation in bytes -of a dense vector -

- -

-

-memory_size = v%sizeof()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
v
-
the dense vector -
-Scope: local -
-
- -

-

-
On Return
-
-
-
Function value
-
The memory occupation in bytes. -
-
- -

-


- - - diff --git a/docs/html/node5.html b/docs/html/node5.html deleted file mode 100644 index 839ff848..00000000 --- a/docs/html/node5.html +++ /dev/null @@ -1,194 +0,0 @@ - - - - - -Library contents - - - - - - - - - - - - - - - - - - - - - -

-Library contents -

- -

-The PSBLAS library consists of various classes of subroutines: -

-
Computational routines
-
comprising: - - -
-
Communication routines
-
handling halo and overlap - communications; -
-
Data management and auxiliary routines
-
including: - - -
-
Preconditioner routines
-
-
-
Iterative methods
-
a subset of Krylov subspace iterative - methods -
-
-The following naming scheme has been adopted for all the symbols -internally defined in the PSBLAS software package: - - -In the description of the subroutines, arguments or argument entries -are classified as: -
-
global
-
For input arguments, the value must be the same on all processes - participating in the subroutine call; for output arguments the value - is guaranteed to be the same. -
-
local
-
Each process has its own value(s) independently. -
-
-To finish our general description, we define a version string with the -constant -

-
- - -\begin{displaymath}\verb\vert psb_version_string_\vert\end{displaymath} -
-
-

-whose current value is 3.4.0 - -

- -

- - - - diff --git a/docs/html/node50.html b/docs/html/node50.html deleted file mode 100644 index faa0f674..00000000 --- a/docs/html/node50.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - -set -- Set contents of the vector - - - - - - - - - - - - - - - - - - - - - -

-set -- Set contents of the vector -

- -

-

- call  v%set(alpha[,first,last])
- call  v%set(vect[,first,last])
- call  v%zero()
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
v
-
the dense vector -
-Scope: local -
-
alpha
-
A scalar value. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a number of the data -type indicated in Table 1. - -

-

-
first,last
-
Boundaries for setting in the vector. -
-Scope: local -
-Type: optional -
-Intent: in. -
-Specified - as: integers. -
-
vect
-
An array -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a number of the data -type indicated in Table 1. -
-
-Note that a call to v%zero() is provided as a shorthand, but -is equivalent to a call to v%set(zero) with the zero -constant having the appropriate type and kind. - -

-

-
On Return
-
-
-
v
-
the dense vector, with updated entries -
-Scope: local -
-
- -

-


- - - diff --git a/docs/html/node51.html b/docs/html/node51.html deleted file mode 100644 index 4e51dd47..00000000 --- a/docs/html/node51.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -get_vect -- Get a copy of the vector contents - - - - - - - - - - - - - - - - - - - - - -

-get_vect -- Get a copy of the vector contents -

- -

-

-extv = v%get_vect([n])
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
v
-
the dense vector -
-Scope: local -
-
n
-
Size to be returned -
-Scope: local. -
-Type: optional; default: entire vector. -
-

-

-
- -

-

-
On Return
-
-
-
Function value
-
An allocatable array holding a copy of the dense - vector contents. If the argument $n$ is specified, the size of the - returned array equals the minimum between $n$ and the internal size - of the vector, or 0 if $n$ is negative; otherwise, the size of the - array is the same as the internal size of the vector. -
-
- -

-


- - - diff --git a/docs/html/node52.html b/docs/html/node52.html deleted file mode 100644 index 7518ff29..00000000 --- a/docs/html/node52.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - -clone -- Clone current object - - - - - - - - - - - - - - - - - - - - -

-clone -- Clone current object -

- -
-call  x%clone(y,info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
x
-
the dense vector. -
-Scope: local. -
-
- -

-

-
On Return
-
-
-
y
-
A copy of the input object. -
-
info
-
Return code. -
-
- -

-


- - - diff --git a/docs/html/node53.html b/docs/html/node53.html deleted file mode 100644 index ae31e94e..00000000 --- a/docs/html/node53.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - -Preconditioner data structure - - - - - - - - - - - - - - - - - - - - - -

- -
-Preconditioner data structure -

-Our base library offers support for simple well known preconditioners -like Diagonal Scaling or Block Jacobi with incomplete -factorization ILU(0). - -

-A preconditioner is held in the precdata psb_prec_type data structure reported in -figure 6. The psb_prec_type -data type may contain a simple preconditioning matrix with the -associated communication descriptor.The internal preconditioner is allocated appropriately with the -dynamic type corresponding to the desired preconditioner. - -

- - - -
Figure 6: -The PSBLAS defined data type that contains a preconditioner.
-
- -
-
-  type psb_Tprec_type
-    class(psb_T_base_prec_type), allocatable :: prec
-  end type psb_Tprec_type
-
-
-
- -

-


- - - diff --git a/docs/html/node54.html b/docs/html/node54.html deleted file mode 100644 index 540178d7..00000000 --- a/docs/html/node54.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - -Heap data structure - - - - - - - - - - - - - - - - - - - - -

-Heap data structure -

- -

-Among the tools routines of sec. 6, we have a number -of sorting utilities; the heap sort is implemented in terms of heaps -having the following signatures: -

-
psb_T_heap
-
: a heap containing elements of type T, where T - can be i,s,c,d,z for integer, real and complex data; -
-
psb_T_idx_heap
-
: a heap containing elements of type T, as - above, together with an integer index. -
-
-Given a heap object, the following methods are defined on it: -
-
init
-
Initialize memory; also choose ascending or descending - order; -
-
howmany
-
Current heap occupancy; -
-
insert
-
Add an item (or an item and its index); -
-
get_first
-
Remove and return the first element; -
-
dump
-
Print on file; -
-
free
-
Release memory. -
-
-These objects are used in MLD2P4 to implement the factorization -algorithms. - -

-


- - - diff --git a/docs/html/node55.html b/docs/html/node55.html deleted file mode 100644 index 98b96864..00000000 --- a/docs/html/node55.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - -Computational routines - - - - - - - - - - - - - - - - - - - - - -

-Computational routines -

- -

-


- -Subsections - - - -

- - - diff --git a/docs/html/node56.html b/docs/html/node56.html deleted file mode 100644 index b38e6ce8..00000000 --- a/docs/html/node56.html +++ /dev/null @@ -1,280 +0,0 @@ - - - - - -psb_geaxpby -- General Dense Matrix Sum - - - - - - - - - - - - - - - - - - - - - -

-psb_geaxpby -- General Dense Matrix Sum -

- -

-This subroutine is an interface to the computational kernel for -dense matrix sum: -

-
- - -\begin{displaymath}y \leftarrow \alpha\> x+ \beta y \end{displaymath} -
-
-

- -

-

-call psb_geaxpby(alpha, x, beta, y, desc_a, info)
-
- -

-

-
- - - -
Table 1: -Data types
-
- - - - - - - - - - - - - - - - -
$x$, $y$, $\alpha$, $\beta$Subroutine
Short Precision Realpsb_geaxpby
Long Precision Realpsb_geaxpby
Short Precision Complexpsb_geaxpby
Long Precision Complexpsb_geaxpby
-
-
-

-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
alpha
-
the scalar $\alpha$. -
-Scope: global -
-Type: required -
-Intent: in. -
-Specified as: a number of the data -type indicated in Table 1. -
-
x
-
the local portion of global dense matrix -$x$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type -specified in Table 1. The rank of $x$ must be the same of $y$. -
-
beta
-
the scalar $\beta$. -
-Scope: global -
-Type: required -
-Intent: in. -
-Specified as: a number of the data type indicated in Table 1. -
-
y
-
the local portion of the global dense matrix -$y$. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type containing numbers of the type -indicated in Table 1. The rank of $y$ must be the same of $x$. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. - -

-

-
- -

-

-
On Return
-
-
-
y
-
the local portion of result submatrix $y$. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type containing numbers of the type -indicated in Table 1. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node57.html b/docs/html/node57.html deleted file mode 100644 index 47905789..00000000 --- a/docs/html/node57.html +++ /dev/null @@ -1,317 +0,0 @@ - - - - - -psb_gedot -- Dot Product - - - - - - - - - - - - - - - - - - - - - -

-psb_gedot -- Dot Product -

- -

-This function computes dot product between two vectors $x$ and -$y$. -
-If $x$ and $y$ are real vectors -it computes dot-product as: -

-
- - -\begin{displaymath}dot \leftarrow x^T y\end{displaymath} -
-
-

-Else if $x$ and $y$ are complex vectors then it computes dot-product as: -

-
- - -\begin{displaymath}dot \leftarrow x^H y\end{displaymath} -
-
-

- -

-

-psb_gedot(x, y, desc_a, info [,global])
-
-

-
- - - -
Table 2: -Data types
-
- - - - - - - - - - - - - - - - -
$dot$, $x$, $y$Function
Short Precision Realpsb_gedot
Long Precision Realpsb_gedot
Short Precision Complexpsb_gedot
Long Precision Complexpsb_gedot
-
-
-

-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
the local portion of global dense matrix -$x$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 2. The rank of $x$ must be the same of $y$. -
-
y
-
the local portion of global dense matrix -$y$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 2. The rank of $y$ must be the same of $x$. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. -
-
global
-
Specifies whether the computation should include the - global reduction across all processes. -
-Scope: global -
-Type: optional. -
-Intent: in. -
-Specified as: a logical scalar. -Default: global=.true. -
-

-

-
On Return
-
-
-
Function value
-
is the dot product of vectors $x$ and $y$. -
-Scope: global unless the optional variable -global=.false. has been specified -
-Specified as: a number of the data type indicated in Table 2. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. The computation of a global result requires a global - communication, which entails a significant overhead. It may be - necessary and/or advisable to compute multiple dot products at the same - time; in this case, it is possible to improve the runtime efficiency - by using the following scheme: -
    -\begin{lstlisting}
-vres(1) = psb_gedot(x1,y1,desc_a,info,global=.false.)
-vres(...
-...,y3,desc_a,info,global=.false.)
-call psb_sum(ictxt,vres(1:3))
-\end{lstlisting} -
    -In this way the global communication, which for small sizes is a - latency-bound operation, is invoked only once. -
  2. -
- -

- -

- - - - diff --git a/docs/html/node58.html b/docs/html/node58.html deleted file mode 100644 index e70ce025..00000000 --- a/docs/html/node58.html +++ /dev/null @@ -1,264 +0,0 @@ - - - - - -psb_gedots -- Generalized Dot Product - - - - - - - - - - - - - - - - - - - - - -

-psb_gedots -- Generalized Dot Product -

- -

-This subroutine computes a series of dot products among the columns of -two dense matrices $x$ and $y$: -

-
- - -\begin{displaymath}res(i) \leftarrow x(:,i)^T y(:,i)\end{displaymath} -
-
-

-If the matrices are complex, then the -usual convention applies, i.e. the conjugate transpose of $x$ is -used. If $x$ and $y$ are of rank one, then $res$ is a scalar, else it -is a rank one array. - -

-

-call psb_gedots(res, x, y, desc_a, info)
-
-

-
- - - -
Table 3: -Data types
-
- - - - - - - - - - - - - - - - -
$res$, $x$, $y$Subroutine
Short Precision Realpsb_gedots
Long Precision Realpsb_gedots
Short Precision Complexpsb_gedots
Long Precision Complexpsb_gedots
-
-
-

-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
the local portion of global dense matrix -$x$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 3. The rank of $x$ must be the same of $y$. -
-
y
-
the local portion of global dense matrix -$y$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 3. The rank of $y$ must be the same of $x$. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. -
-
On Return
-
-
-
res
-
is the dot product of vectors $x$ and $y$. -
-Scope: global -
-Intent: out. -
-Specified as: a number or a rank-one array of the data type indicated -in Table 2. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node59.html b/docs/html/node59.html deleted file mode 100644 index 52131857..00000000 --- a/docs/html/node59.html +++ /dev/null @@ -1,283 +0,0 @@ - - - - - -psb_normi -- Infinity-Norm of Vector - - - - - - - - - - - - - - - - - - - - - -

-psb_normi -- Infinity-Norm of Vector -

- -

-This function computes - the infinity-norm of a vector $x$. -
-If $x$ is a real vector -it computes infinity norm as: -

-
- - -\begin{displaymath}amax \leftarrow \max_i \vert x_i\vert\end{displaymath} -
-
-

-else if $x$ is a complex vector then it computes the infinity-norm as: -

-
- - -\begin{displaymath}amax \leftarrow \max_i {(\vert re(x_i)\vert + \vert im(x_i)\vert)}\end{displaymath} -
-
-

- -

-

-psb_geamax(x, desc_a, info [,global])
-psb_normi(x, desc_a, info [,global])
-
- -

-

-
- - - -
Table 4: -Data types
-
- - - - - - - - - - - - - - - - - - - - - -
$amax$$x$Function
Short Precision RealShort Precision Realpsb_geamax
Long Precision RealLong Precision Realpsb_geamax
Short Precision RealShort Precision Complexpsb_geamax
Long Precision RealLong Precision Complexpsb_geamax
-
-
-

-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
the local portion of global dense matrix -$x$. - -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 4. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. -
-
global
-
Specifies whether the computation should include the - global reduction across all processes. -
-Scope: global -
-Type: optional. -
-Intent: in. -
-Specified as: a logical scalar. -Default: global=.true. -
- -

-

-
On Return
-
-
-
Function value
-
is the infinity norm of vector $x$. -
-Scope: global unless the optional variable -global=.false. has been specified -
-Specified as: a long precision real number. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. The computation of a global result requires a global - communication, which entails a significant overhead. It may be - necessary and/or advisable to compute multiple norms at the same - time; in this case, it is possible to improve the runtime efficiency - by using the following scheme: -
    -\begin{lstlisting}
-vres(1) = psb_geamax(x1,desc_a,info,global=.false.)
-vres(2)...
-...(x3,desc_a,info,global=.false.)
-call psb_amx(ictxt,vres(1:3))
-\end{lstlisting} -
    -In this way the global communication, which for small sizes is a - latency-bound operation, is invoked only once. -
  2. -
- -

- -

- - - - diff --git a/docs/html/node6.html b/docs/html/node6.html deleted file mode 100644 index 7f378769..00000000 --- a/docs/html/node6.html +++ /dev/null @@ -1,281 +0,0 @@ - - - - - -Application structure - - - - - - - - - - - - - - - - - - - - - -

- -
-Application structure -

- -

-The main underlying principle of the PSBLAS library is that the -library objects are created and exist with reference to a discretized -space to which there corresponds an index space and a matrix sparsity -pattern. As an example, consider a cell-centered finite-volume -discretization of the Navier-Stokes equations on a simulation domain; -the index space $1\dots n$ is isomorphic to the set of cell centers, -whereas the pattern of the associated linear system matrix is -isomorphic to the adjacency graph imposed on the discretization mesh -by the discretization stencil. - -

-Thus the first order of business is to establish an index space, and -this is done with a call to psb_cdall in which we specify the -size of the index space $n$ and the allocation of the elements of the -index space to the various processes making up the MPI (virtual) -parallel machine. - -

-The index space is partitioned among processes, and this creates a -mapping from the “global” numbering $1\dots n$ to a numbering -“local” to each process; each process $i$ will own a certain subset - -$1\dots n_{\hbox{row}_i}$, each element of which corresponds to a certain -element of $1\dots n$. The user does not set explicitly this mapping; -when the application needs to indicate to which element of the index -space a certain item is related, such as the row and column index of a -matrix coefficient, it does so in the “global” numbering, and the -library will translate into the appropriate “local” numbering. - -

-For a given index space $1\dots n$ there are many possible associated -topologies, i.e. many different discretization stencils; thus the -description of the index space is not completed until the user has -defined a sparsity pattern, either explicitly through psb_cdins -or implicitly through psb_spins. The descriptor is finalized -with a call to psb_cdasb and a sparse matrix with a call to -psb_spasb. After psb_cdasb each process $i$ will have -defined a set of “halo” (or “ghost”) indices - -$n_{\hbox{row}_i}+1\dots n_{\hbox{col}_i}$, denoting elements of the index -space that are not assigned to process $i$; however the -variables associated with them are needed to complete computations -associated with the sparse matrix $A$, and thus they have to be -fetched from (neighbouring) processes. The descriptor of the index -space is built exactly for the purpose of properly sequencing the -communication steps required to achieve this objective. - -

-A simple application structure will walk through the index space -allocation, matrix/vector creation and linear system solution as -follows: - -

    -
  1. Initialize parallel environment with psb_init -
  2. -
  3. Initialize index space with psb_cdall -
  4. -
  5. Allocate sparse matrix and dense vectors with psb_spall - and psb_geall -
  6. -
  7. Loop over all local rows, generate matrix and vector entries, - and insert them with psb_spins and psb_geins -
  8. -
  9. Assemble the various entities: - -
      -
    1. psb_cdasb -
    2. -
    3. psb_spasb -
    4. -
    5. psb_geasb -
    6. -
    -
  10. -
  11. Choose the preconditioner to be used with prec%init and - build it with prec%build3. -
  12. -
  13. Call the iterative method of choice, e.g. psb_bicgstab -
  14. -
-This is the structure of the sample programs in the directory -test/pargen/. - -

-For a simulation in which the same discretization mesh is used over -multiple time steps, the following structure may be more appropriate: - -

    -
  1. Initialize parallel environment with psb_init -
  2. -
  3. Initialize index space with psb_cdall -
  4. -
  5. Loop over the topology of the discretization mesh and build the - descriptor with psb_cdins -
  6. -
  7. Assemble the descriptor with psb_cdasb -
  8. -
  9. Allocate the sparse matrices and dense vectors with - psb_spall and psb_geall -
  10. -
  11. Loop over the time steps: - -
      -
    1. If after first time step, - reinitialize the sparse matrix with psb_sprn; also zero out - the dense vectors; -
    2. -
    3. Loop over the mesh, generate the coefficients and insert/update - them with psb_spins and psb_geins -
    4. -
    5. Assemble with psb_spasb and psb_geasb -
    6. -
    7. Choose and build preconditioner with prec%init and - prec%build -
    8. -
    9. Call the iterative method of choice, e.g. psb_bicgstab - -
    10. -
    -
  12. -
-The insertion routines will be called as many times as needed; -they only need to be called on the data that is actually -allocated to the current process, i.e. each process generates its own -data. - -

-In principle there is no specific order in the calls to -psb_spins, nor is there a requirement to build a matrix row in -its entirety before calling the routine; this allows the application -programmer to walk through the discretization mesh element by element, -generating the main part of a given matrix row but also contributions -to the rows corresponding to neighbouring elements. - -

-From a functional point of view it is even possible to execute one -call for each nonzero coefficient; however this would have a -substantial computational overhead. It is therefore advisable to pack -a certain amount of data into each call to the insertion routine, say -touching on a few tens of rows; the best performng value would depend -on both the architecture of the computer being used and on the problem -structure. -At the opposite extreme, it would be possible to generate the entire -part of a coefficient matrix residing on a process and pass it in a -single call to psb_spins; this, however, would entail a -doubling of memory occupation, and thus would be almost always far -from optimal. - -

-


- -Subsections - - - - - - - - - diff --git a/docs/html/node60.html b/docs/html/node60.html deleted file mode 100644 index 58ea5ca8..00000000 --- a/docs/html/node60.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - -psb_geamaxs -- Generalized Infinity Norm - - - - - - - - - - - - - - - - - - - - - -

-psb_geamaxs -- Generalized Infinity Norm -

- -

-This subroutine computes a series of infinity norms on the columns of -a dense matrix $x$: -

-
- - -\begin{displaymath}res(i) \leftarrow \max_k \vert x(k,i)\vert \end{displaymath} -
-
-

- -

-

-call psb_geamaxs(res, x, desc_a, info)
-
- -

-

-
- - - -
Table 5: -Data types
-
- - - - - - - - - - - - - - - - - - - - - -
$res$$x$Subroutine
Short Precision RealShort Precision Realpsb_geamaxs
Long Precision RealLong Precision Realpsb_geamaxs
Short Precision RealShort Precision Complexpsb_geamaxs
Long Precision RealLong Precision Complexpsb_geamaxs
-
-
-

-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
the local portion of global dense matrix -$x$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 5. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. -
-
On Return
-
-
-
res
-
is the infinity norm of the columns of $x$. -
-Scope: global -
-Intent: out. -
-Specified as: a number or a rank-one array of long precision real numbers. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node61.html b/docs/html/node61.html deleted file mode 100644 index 8826fa66..00000000 --- a/docs/html/node61.html +++ /dev/null @@ -1,281 +0,0 @@ - - - - - -psb_norm1 -- 1-Norm of Vector - - - - - - - - - - - - - - - - - - - - - -

-psb_norm1 -- 1-Norm of Vector -

- -

-This function computes the 1-norm of a vector $x$. -
-If $x$ is a real vector -it computes 1-norm as: -

-
- - -\begin{displaymath}asum \leftarrow \Vert x_i\Vert\end{displaymath} -
-
-

-else if $x$ is a complex vector then it computes 1-norm as: -

-
- - -\begin{displaymath}asum \leftarrow \Vert re(x)\Vert _1 + \Vert im(x)\Vert _1\end{displaymath} -
-
-

- -

-

-psb_geasum(x, desc_a, info [,global])
-psb_norm1(x, desc_a, info [,global])
-
- -

-

-
- - - -
Table 6: -Data types
-
- - - - - - - - - - - - - - - - - - - - - -
$asum$$x$Function
Short Precision RealShort Precision Realpsb_geasum
Long Precision RealLong Precision Realpsb_geasum
Short Precision RealShort Precision Complexpsb_geasum
Long Precision RealLong Precision Complexpsb_geasum
-
-
-

-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
the local portion of global dense matrix -$x$. - -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 6. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. -
-
global
-
Specifies whether the computation should include the - global reduction across all processes. -
-Scope: global -
-Type: optional. -
-Intent: in. -
-Specified as: a logical scalar. -Default: global=.true. -
-

-

-
On Return
-
-
-
Function value
-
is the 1-norm of vector $x$. -
-Scope: global unless the optional variable -global=.false. has been specified -
-Specified as: a long precision real number. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. The computation of a global result requires a global - communication, which entails a significant overhead. It may be - necessary and/or advisable to compute multiple norms at the same - time; in this case, it is possible to improve the runtime efficiency - by using the following scheme: -
    -\begin{lstlisting}
-vres(1) = psb_geasum(x1,desc_a,info,global=.false.)
-vres(2)...
-...(x3,desc_a,info,global=.false.)
-call psb_sum(ictxt,vres(1:3))
-\end{lstlisting} -
    -In this way the global communication, which for small sizes is a - latency-bound operation, is invoked only once. -
  2. -
- -

- -

- - - - diff --git a/docs/html/node62.html b/docs/html/node62.html deleted file mode 100644 index de5b337d..00000000 --- a/docs/html/node62.html +++ /dev/null @@ -1,264 +0,0 @@ - - - - - -psb_geasums -- Generalized 1-Norm of Vector - - - - - - - - - - - - - - - - - - - - - -

-psb_geasums -- Generalized 1-Norm of Vector -

- -

-This subroutine computes a series of 1-norms on the columns of -a dense matrix $x$: -

-
- - -\begin{displaymath}res(i) \leftarrow \max_k \vert x(k,i)\vert \end{displaymath} -
-
-

-This function computes the 1-norm of a vector $x$. -
-If $x$ is a real vector -it computes 1-norm as: -

-
- - -\begin{displaymath}res(i) \leftarrow \Vert x_i\Vert\end{displaymath} -
-
-

-else if $x$ is a complex vector then it computes 1-norm as: -

-
- - -\begin{displaymath}res(i) \leftarrow \Vert re(x)\Vert _1 + \Vert im(x)\Vert _1\end{displaymath} -
-
-

- -

-

-call psb_geasums(res, x, desc_a, info)
-
- -

-

-
- - - -
Table 7: -Data types
-
- - - - - - - - - - - - - - - - - - - - - -
$res$$x$Subroutine
Short Precision RealShort Precision Realpsb_geasums
Long Precision RealLong Precision Realpsb_geasums
Short Precision RealShort Precision Complexpsb_geasums
Long Precision RealLong Precision Complexpsb_geasums
-
-
-

-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
the local portion of global dense matrix -$x$. - -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 7. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. - -

-

-
On Return
-
-
-
res
-
contains the 1-norm of (the columns of) $x$. -
-Scope: global -
-Intent: out. -
-Short as: a long precision real number. -Specified as: a long precision real number. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node63.html b/docs/html/node63.html deleted file mode 100644 index da6e561c..00000000 --- a/docs/html/node63.html +++ /dev/null @@ -1,283 +0,0 @@ - - - - - -psb_norm2 -- 2-Norm of Vector - - - - - - - - - - - - - - - - - - - - - -

-psb_norm2 -- 2-Norm of Vector -

- -

-This function computes the 2-norm of a vector $x$. -
-If $x$ is a real vector -it computes 2-norm as: -

-
- - -\begin{displaymath}nrm2 \leftarrow \sqrt{x^T x}\end{displaymath} -
-
-

-else if $x$ is a complex vector then it computes 2-norm as: -

-
- - -\begin{displaymath}nrm2 \leftarrow \sqrt{x^H x}\end{displaymath} -
-
-

- -

-

-
- - - -
Table 8: -Data types
-
- - - - - - - - - - - - - - - - - - - - - -
$nrm2$$x$Function
Short Precision RealShort Precision Realpsb_genrm2
Long Precision RealLong Precision Realpsb_genrm2
Short Precision RealShort Precision Complexpsb_genrm2
Long Precision RealLong Precision Complexpsb_genrm2
-
-
-

-
- -

-

-psb_genrm2(x, desc_a, info [,global])
-psb_norm2(x, desc_a, info [,global])
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
the local portion of global dense matrix -$x$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 8. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. -
-
global
-
Specifies whether the computation should include the - global reduction across all processes. -
-Scope: global -
-Type: optional. -
-Intent: in. -
-Specified as: a logical scalar. -Default: global=.true. -
- -

-

-
On Return
-
-
-
Function Value
-
is the 2-norm of vector $x$. -
-Scope: global unless the optional variable -global=.false. has been specified -
-Type: required -
-Specified as: a long precision real number. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. The computation of a global result requires a global - communication, which entails a significant overhead. It may be - necessary and/or advisable to compute multiple norms at the same - time; in this case, it is possible to improve the runtime efficiency - by using the following scheme: -
    -\begin{lstlisting}
-vres(1) = psb_genrm2(x1,desc_a,info,global=.false.)
-vres(2)...
-...x3,desc_a,info,global=.false.)
-call psb_nrm2(ictxt,vres(1:3))
-\end{lstlisting} -
    -In this way the global communication, which for small sizes is a - latency-bound operation, is invoked only once. -
  2. -
- -

- -

- - - - diff --git a/docs/html/node64.html b/docs/html/node64.html deleted file mode 100644 index 6e453cb4..00000000 --- a/docs/html/node64.html +++ /dev/null @@ -1,219 +0,0 @@ - - - - - -psb_genrm2s -- Generalized 2-Norm of Vector - - - - - - - - - - - - - - - - - - - - - -

-psb_genrm2s -- Generalized 2-Norm of Vector -

- -

-This subroutine computes a series of 2-norms on the columns of -a dense matrix $x$: -

-
- - -\begin{displaymath}res(i) \leftarrow \Vert x(:,i)\Vert _2 \end{displaymath} -
-
-

- -

-

-call psb_genrm2s(res, x, desc_a, info)
-
- -

-

-
- - - -
Table 9: -Data types
-
- - - - - - - - - - - - - - - - - - - - - -
$res$$x$Subroutine
Short Precision RealShort Precision Realpsb_genrm2s
Long Precision RealLong Precision Realpsb_genrm2s
Short Precision RealShort Precision Complexpsb_genrm2s
Long Precision RealLong Precision Complexpsb_genrm2s
-
-
-

-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
the local portion of global dense matrix -$x$. - -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 9. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. - -

-

-
On Return
-
-
-
res
-
contains the 1-norm of (the columns of) $x$. -
-Scope: global -
-Intent: out. -
-Specified as: a long precision real number. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node65.html b/docs/html/node65.html deleted file mode 100644 index aa3be29d..00000000 --- a/docs/html/node65.html +++ /dev/null @@ -1,194 +0,0 @@ - - - - - -psb_norm1 -- 1-Norm of Sparse Matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_norm1 -- 1-Norm of Sparse Matrix -

- -

-This function computes the 1-norm of a matrix $A$: -
-

-

-
- - -\begin{displaymath}nrm1 \leftarrow \Vert A\Vert _1 \end{displaymath} -
-
-

-where: -
-
$A$
-
represents the global matrix $A$ -
-
- -

-

-
- - - -
Table 10: -Data types
-
- - - - - - - - - - - - - - - - -
$A$Function
Short Precision Realpsb_spnrm1
Long Precision Realpsb_spnrm1
Short Precision Complexpsb_spnrm1
Long Precision Complexpsb_spnrm1
-
-
-

-
- -

-

-psb_spnrm1(A, desc_a, info)
-psb_norm1(A, desc_a, info)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
a
-
the local portion of the global sparse matrix -$A$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type spdatapsb_Tspmat_type. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. -
-
On Return
-
-
-
Function value
-
is the 1-norm of sparse submatrix $A$. -
-Scope: global -
-Specified as: a long precision real number. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node66.html b/docs/html/node66.html deleted file mode 100644 index e4f3a5ac..00000000 --- a/docs/html/node66.html +++ /dev/null @@ -1,194 +0,0 @@ - - - - - -psb_normi -- Infinity Norm of Sparse Matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_normi -- Infinity Norm of Sparse Matrix -

- -

-This function computes the infinity-norm of a matrix $A$: -
-

-

-
- - -\begin{displaymath}nrmi \leftarrow \Vert A\Vert _\infty \end{displaymath} -
-
-

-where: -
-
$A$
-
represents the global matrix $A$ -
-
- -

-

-
- - - -
Table 11: -Data types
-
- - - - - - - - - - - - - - - - -
$A$Function
Short Precision Realpsb_spnrmi
Long Precision Realpsb_spnrmi
Short Precision Complexpsb_spnrmi
Long Precision Complexpsb_spnrmi
-
-
-

-
- -

-

-psb_spnrmi(A, desc_a, info)
-psb_normi(A, desc_a, info)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
a
-
the local portion of the global sparse matrix -$A$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type spdatapsb_Tspmat_type. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. -
-
On Return
-
-
-
Function value
-
is the infinity-norm of sparse submatrix $A$. -
-Scope: global -
-Specified as: a long precision real number. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node67.html b/docs/html/node67.html deleted file mode 100644 index 91be606e..00000000 --- a/docs/html/node67.html +++ /dev/null @@ -1,427 +0,0 @@ - - - - - -psb_spmm -- Sparse Matrix by Dense Matrix Product - - - - - - - - - - - - - - - - - - - - - -

-psb_spmm -- Sparse Matrix by Dense Matrix - Product -

- -

-This subroutine computes the Sparse Matrix by Dense Matrix Product: - -

-
-

- - - - - - -
\begin{displaymath}
-y \leftarrow \alpha A x + \beta y
-\end{displaymath} -(1)
-

-
-
- - - - - - -
\begin{displaymath}
-y \leftarrow \alpha A^T x + \beta y
-\end{displaymath} -(2)
-

-
-
- - - - - - -
\begin{displaymath}
-y \leftarrow \alpha A^H x + \beta y
-\end{displaymath} -(3)
-

- -

-where: -

-
$x$
-
is the global dense matrix $x_{:, :}$ -
-
$y$
-
is the global dense matrix $y_{:, :}$ -
-
$A$
-
is the global sparse matrix $A$ -
-
- -

-

-
- - - -
Table 12: -Data types
-
- - - - - - - - - - - - - - - - -
$A$, $x$, $y$, $\alpha$, $\beta$Subroutine
Short Precision Realpsb_spmm
Long Precision Realpsb_spmm
Short Precision Complexpsb_spmm
Long Precision Complexpsb_spmm
-
-
-

-
- -

-

-call psb_spmm(alpha, a, x, beta, y, desc_a, info)
-call psb_spmm(alpha, a, x, beta, y,desc_a, info, &
-             & trans, work)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
alpha
-
the scalar $\alpha$. -
-Scope: global -
-Type: required -
-Intent: in. -
-Specified as: a number of the data type indicated in -Table 12. -
-
a
-
the local portion of the sparse matrix -$A$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type spdatapsb_Tspmat_type. -
-
x
-
the local portion of global dense matrix -$x$. - -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 12. The rank of $x$ must be the same of $y$. -
-
beta
-
the scalar $\beta$. -
-Scope: global -
-Type: required -
-Intent: in. -
-Specified as: a number of the data type indicated in Table 12. -
-
y
-
the local portion of global dense matrix -$y$. - -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 12. The rank of $y$ must be the same of $x$. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. -
-
trans
-
indicates what kind of operation to perform. -
-
trans = N
-
the operation is specified by equation 1 -
-
trans = T
-
the operation is specified by equation -2 -
-
trans = C
-
the operation is specified by equation -3 -
-
-Scope: global -
-Type: optional -
-Intent: in. -
-Default: $trans = N$ -
-Specified as: a character variable. - -

-

-
work
-
work array. -
-Scope: local -
-Type: optional -
-Intent: inout. -
-Specified as: a rank one array of the same type of $x$ and $y$ with -the TARGET attribute. - -

-

-
On Return
-
-
-
y
-
the local portion of result matrix $y$. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: an array of rank one or two -containing numbers of type specified in -Table 12. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node68.html b/docs/html/node68.html deleted file mode 100644 index 83cac738..00000000 --- a/docs/html/node68.html +++ /dev/null @@ -1,469 +0,0 @@ - - - - - -psb_spsm -- Triangular System Solve - - - - - - - - - - - - - - - - - - - - -

-psb_spsm -- Triangular System Solve -

- -

-This subroutine computes the Triangular System Solve: - -

-

-
- -\begin{eqnarray*}
-y &\leftarrow& \alpha T^{-1} x + \beta y\\
-y &\leftarrow& \al...
-...-H} x + \beta y\\
-y &\leftarrow& \alpha T^{-H} D x + \beta y\\
-\end{eqnarray*}
-

-

- -

-where: -

-
$x$
-
is the global dense matrix $x_{:, :}$ -
-
$y$
-
is the global dense matrix $y_{:, :}$ -
-
$T$
-
is the global sparse block triangular submatrix $T$ -
-
$D$
-
is the scaling diagonal matrix. -
-
- -

-

-call psb_spsm(alpha, t, x, beta, y, desc_a, info)
-call psb_spsm(alpha, t, x, beta, y, desc_a, info,&
-             & trans, unit, choice, diag, work)
-
- -

-

-
- - - -
Table 13: -Data types
-
- - - - - - - - - - - - - - - - -
$T$, $x$, $y$, $D$, $\alpha$, $\beta$Subroutine
Short Precision Realpsb_spsm
Long Precision Realpsb_spsm
Short Precision Complexpsb_spsm
Long Precision Complexpsb_spsm
-
-
-

-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
alpha
-
the scalar $\alpha$. -
-Scope: global -
-Type: required -
-Intent: in. -
-Specified as: a number of the data type indicated in -Table 13. -
-
t
-
the global portion of the sparse matrix -$T$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object type specified in -§ 3. -
-
x
-
the local portion of global dense matrix -$x$. - -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 13. The rank of $x$ must be the same of $y$. -
-
beta
-
the scalar $\beta$. -
-Scope: global -
-Type: required -
-Intent: in. -
-Specified as: a number of the data type indicated in Table 13. -
-
y
-
the local portion of global dense matrix -$y$. - -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 13. The rank of $y$ must be the same of $x$. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an object of type descdatapsb_desc_type. -
-
trans
-
specify with unitd the operation to perform. -
-
trans = 'N'
-
the operation is with no transposed matrix -
-
trans = 'T'
-
the operation is with transposed matrix. -
-
trans = 'C'
-
the operation is with conjugate transposed matrix. -
-
-Scope: global -
-Type: optional -
-Intent: in. -
-Default: $trans = N$ -
-Specified as: a character variable. -
-
unitd
-
specify with trans the operation to perform. -
-
unitd = 'U'
-
the operation is with no scaling -
-
unitd = 'L'
-
the operation is with left scaling -
-
unitd = 'R'
-
the operation is with right scaling. -
-
-Scope: global -
-Type: optional -
-Intent: in. -
-Default: $unitd = U$ -
-Specified as: a character variable. -
-
choice
-
specifies the update of overlap elements to be performed - on exit: -
-
-
psb_none_ -
-
-
psb_sum_ -
-
-
psb_avg_ -
-
-
psb_square_root_ -
-
-Scope: global -
-Type: optional -
-Intent: in. -
-Default: psb_avg_ -
-Specified as: an integer variable. -
-
diag
-
the diagonal scaling matrix. -
-Scope: local -
-Type: optional -
-Intent: in. -
-Default: -$diag(1) = 1 (no scaling)$ -
-Specified as: a rank one array containing numbers of the type -indicated in Table 13. -
-
work
-
a work array. -
-Scope: local -
-Type: optional -
-Intent: inout. -
-Specified as: a rank one array of the same type of $x$ with the -TARGET attribute. - -

-

-
On Return
-
-
-
y
-
the local portion of global dense matrix -$y$. - -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: an array of rank one or two -containing numbers of type specified in -Table 13. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node69.html b/docs/html/node69.html deleted file mode 100644 index 8bb3f83f..00000000 --- a/docs/html/node69.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - -Communication routines - - - - - - - - - - - - - - - - - - - - - -

-Communication routines -

-The routines in this chapter implement various global communication operators -on vectors associated with a discretization mesh. For auxiliary communication -routines not tied to a discretization space see 6. - -

-


- -Subsections - - - -

- - - diff --git a/docs/html/node7.html b/docs/html/node7.html deleted file mode 100644 index ce4703e6..00000000 --- a/docs/html/node7.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - -User-defined index mappings - - - - - - - - - - - - - - - - - - - - -

- -
-User-defined index mappings -

-PSBLAS supports user-defined global to local index mappings, subject -to the constraints outlined in sec. 2.3: - -
    -
  1. The set of indices owned locally must be mapped to the set - -$1\dots n_{\hbox{row}_i}$; -
  2. -
  3. The set of halo points must be mapped to the set - -$n_{\hbox{row}_i}+1\dots n_{\hbox{col}_i}$; -
  4. -
-but otherwise the mapping is arbitrary. The user application is -responsible to ensure consistency of this mapping; some errors may be -caught by the library, but this is not guaranteed. -The application structure to -support this usage is as follows: - -
    -
  1. Initialize index space with - psb_cdall(ictx,desc,info,vl=vl,lidx=lidx) passing the vectors - vl(:) containing the set of global indices owned by the - current process and lidx(:) containing the corresponding - local indices; -
  2. -
  3. Add the halo points ja(:) and their associated local - indices lidx(:) with a(some) call(s) to - psb_cdins(nz,ja,desc,info,lidx=lidx); -
  4. -
  5. Assemble the descriptor with psb_cdasb; -
  6. -
  7. Build the sparse matrices and vectors, optionally making use in - psb_spins and psb_geins of the local argument - specifying that the indices in ia, ja and irw, - respectively, are already local indices. -
  8. -
- -

-


- - - diff --git a/docs/html/node70.html b/docs/html/node70.html deleted file mode 100644 index 410a7457..00000000 --- a/docs/html/node70.html +++ /dev/null @@ -1,633 +0,0 @@ - - - - - -psb_halo -- Halo Data Communication - - - - - - - - - - - - - - - - - - - - - -

-psb_halo -- Halo Data Communication -

- -

-These subroutines gathers the values of the halo -elements: - -

-

-
- - -\begin{displaymath}x \leftarrow x \end{displaymath} -
-
-

-where: -
-
$x$
-
is a global dense submatrix. -
-
- -

-

-
- - - -
Table 14: -Data types
-
- - - - - - - - - - - - - - - - - - - -
$\alpha$, $x$Subroutine
Integerpsb_halo
Short Precision Realpsb_halo
Long Precision Realpsb_halo
Short Precision Complexpsb_halo
Long Precision Complexpsb_halo
-
-
-

-
- -

-
-\begin{lstlisting}
-call psb_halo(x, desc_a, info)
-call psb_halo(x, desc_a, info, work, data)
-\end{lstlisting} -
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
global dense matrix $x$. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 14. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
work
-
the work array. -
-Scope: local -
-Type: optional -
-Intent: inout. -
-Specified as: a rank one array of the same type of $x$. -
-
data
-
index list selector. -
-Scope: global -
-Type: optional -
-Specified as: an integer. Values:psb_comm_halo_,psb_comm_mov_, -psb_comm_ext_, default: psb_comm_halo_. Chooses the -index list on which to base the data exchange. - -

-

-
On Return
-
-
-
x
-
global dense result matrix $x$. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Returned as: a rank one or two array -containing numbers of type specified in -Table 14. -
-
info
-
the local portion of result submatrix $y$. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value that contains an error code. -
-
- -
- - - -
Figure 7: -Sample discretization mesh.
-
-\includegraphics[scale=0.45]{figures/try8x8.eps} - -\includegraphics[scale=0.45]{figures/try8x8} - -
-
- -

-Usage Example -Consider the discretization mesh depicted in fig. 7, -partitioned among two processes as shown by the dashed line; the data -distribution is such that each process will own 32 entries in the -index space, with a halo made of 8 entries placed at local indices 33 -through 40. If process 0 assigns an initial value of 1 to its entries -in the $x$ vector, and process 1 assigns a value of 2, then after a -call to psb_halo the contents of the local vectors will be the -following: -
-

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-Process 0  -Process 1
- I GLOB(I) X(I)   I GLOB(I) X(I)
- 1 1 1.0   1 33 2.0
- 2 2 1.0   2 34 2.0
- 3 3 1.0   3 35 2.0
- 4 4 1.0   4 36 2.0
- 5 5 1.0   5 37 2.0
- 6 6 1.0   6 38 2.0
- 7 7 1.0   7 39 2.0
- 8 8 1.0   8 40 2.0
- 9 9 1.0   9 41 2.0
- 10 10 1.0   10 42 2.0
- 11 11 1.0   11 43 2.0
- 12 12 1.0   12 44 2.0
- 13 13 1.0   13 45 2.0
- 14 14 1.0   14 46 2.0
- 15 15 1.0   15 47 2.0
- 16 16 1.0   16 48 2.0
- 17 17 1.0   17 49 2.0
- 18 18 1.0   18 50 2.0
- 19 19 1.0   19 51 2.0
- 20 20 1.0   20 52 2.0
-21 21 1.0   21 53 2.0
-22 22 1.0   22 54 2.0
-23 23 1.0   23 55 2.0
-24 24 1.0   24 56 2.0
-25 25 1.0   25 57 2.0
-26 26 1.0   26 58 2.0
-27 27 1.0   27 59 2.0
-28 28 1.0   28 60 2.0
-29 29 1.0   29 61 2.0
-30 30 1.0   30 62 2.0
-31 31 1.0   31 63 2.0
-32 32 1.0   32 64 2.0
-33 33 2.0   33 25 1.0
-34 34 2.0   34 26 1.0
-35 35 2.0   35 27 1.0
-36 36 2.0   36 28 1.0
-37 37 2.0   37 29 1.0
-38 38 2.0   38 30 1.0
-39 39 2.0   39 31 1.0
-40 40 2.0   40 32 1.0
-
- -

- -

- - - - diff --git a/docs/html/node71.html b/docs/html/node71.html deleted file mode 100644 index 841d9ef3..00000000 --- a/docs/html/node71.html +++ /dev/null @@ -1,761 +0,0 @@ - - - - - -psb_ovrl -- Overlap Update - - - - - - - - - - - - - - - - - - - - - -

-psb_ovrl -- Overlap Update -

- -

-These subroutines applies an overlap operator to the input vector: - -

-

-
- - -\begin{displaymath}x \leftarrow Q x \end{displaymath} -
-
-

-where: -
-
$x$
-
is the global dense submatrix $x$ -
-
$Q$
-
is the overlap operator; it is the composition of two -operators $P_a$ and $P^{T}$. -
-
- -

-

-
- - - -
Table 15: -Data types
-
- - - - - - - - - - - - - - - - -
$x$Subroutine
Short Precision Realpsb_ovrl
Long Precision Realpsb_ovrl
Short Precision Complexpsb_ovrl
Long Precision Complexpsb_ovrl
-
-
-

-
- -

-
-\begin{lstlisting}
-call psb_ovrl(x, desc_a, info)
-call psb_ovrl(x, desc_a, info, update=update_type, work=work)
-\end{lstlisting} -
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
global dense matrix $x$. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -containing numbers of type specified in -Table 15. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
update
-
Update operator. -
-
update = psb_none_
-
Do nothing; -
-
update = psb_add_
-
Sum overlap entries, i.e. apply $P^T$; -
-
update = psb_avg_
-
Average overlap entries, i.e. apply $P_aP^T$; -
-
-Scope: global -
-Intent: in. -
-Default: -$update\_type = psb\_avg\_ $ -
-Scope: global -
-Specified as: a integer variable. -
-
work
-
the work array. -
-Scope: local -
-Type: optional -
-Intent: inout. -
-Specified as: a one dimensional array of the same type of $x$. - -

-

-
On Return
-
-
-
x
-
global dense result matrix $x$. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: an array of rank one or two -containing numbers of type specified in -Table 15. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. If there is no overlap in the data distribution associated with - the descriptor, no operations are performed; -
  2. -
  3. The operator $P^{T}$ performs the reduction sum of overlap -elements; it is a “prolongation” operator $P^T$ that -replicates overlap elements, accounting for the physical replication -of data; -
  4. -
  5. The operator $P_a$ performs a scaling on the overlap elements by -the amount of replication; thus, when combined with the reduction -operator, it implements the average of replicated elements over all of -their instances. -
  6. -
- -

- -

- - - -
Figure 8: -Sample discretization mesh.
-
-\includegraphics[scale=0.65]{figures/try8x8_ov.eps} - -\includegraphics[scale=0.65]{figures/try8x8_ov} - -
-
- -Example of use -Consider the discretization mesh depicted in fig. 8, -partitioned among two processes as shown by the dashed lines, with an -overlap of 1 extra layer with respect to the partition of -fig. 7; the data -distribution is such that each process will own 40 entries in the -index space, with an overlap of 16 entries placed at local indices 25 -through 40; the halo will run from local index 41 through local index 48.. If process 0 assigns an initial value of 1 to its entries -in the $x$ vector, and process 1 assigns a value of 2, then after a -call to psb_ovrl with psb_avg_ and a call to -psb_halo_ the contents of the local vectors will be the -following (showing a transition among the two subdomains) - -

-
-

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-Process 0  -Process 1
- I GLOB(I) X(I)   I GLOB(I) X(I)
- 1 1 1.0   1 33 1.5
- 2 2 1.0   2 34 1.5
- 3 3 1.0   3 35 1.5
- 4 4 1.0   4 36 1.5
- 5 5 1.0   5 37 1.5
- 6 6 1.0   6 38 1.5
- 7 7 1.0   7 39 1.5
- 8 8 1.0   8 40 1.5
- 9 9 1.0   9 41 2.0
- 10 10 1.0   10 42 2.0
- 11 11 1.0   11 43 2.0
- 12 12 1.0   12 44 2.0
- 13 13 1.0   13 45 2.0
- 14 14 1.0   14 46 2.0
- 15 15 1.0   15 47 2.0
- 16 16 1.0   16 48 2.0
- 17 17 1.0   17 49 2.0
- 18 18 1.0   18 50 2.0
- 19 19 1.0   19 51 2.0
- 20 20 1.0   20 52 2.0
- 21 21 1.0   21 53 2.0
- 22 22 1.0   22 54 2.0
- 23 23 1.0   23 55 2.0
- 24 24 1.0   24 56 2.0
- 25 25 1.5   25 57 2.0
- 26 26 1.5   26 58 2.0
- 27 27 1.5   27 59 2.0
- 28 28 1.5   28 60 2.0
- 29 29 1.5   29 61 2.0
- 30 30 1.5   30 62 2.0
- 31 31 1.5   31 63 2.0
- 32 32 1.5   32 64 2.0
- 33 33 1.5   33 25 1.5
- 34 34 1.5   34 26 1.5
- 35 35 1.5   35 27 1.5
- 36 36 1.5   36 28 1.5
- 37 37 1.5   37 29 1.5
- 38 38 1.5   38 30 1.5
- 39 39 1.5   39 31 1.5
- 40 40 1.5   40 32 1.5
- 41 41 2.0   41 17 1.0
- 42 42 2.0   42 18 1.0
- 43 43 2.0   43 19 1.0
- 44 44 2.0   44 20 1.0
- 45 45 2.0   45 21 1.0
- 46 46 2.0   46 22 1.0
- 47 47 2.0   47 23 1.0
- 48 48 2.0   48 24 1.0
-
- -

- -

- - - - diff --git a/docs/html/node72.html b/docs/html/node72.html deleted file mode 100644 index 15648616..00000000 --- a/docs/html/node72.html +++ /dev/null @@ -1,270 +0,0 @@ - - - - - -psb_gather -- Gather Global Dense Matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_gather -- Gather Global Dense Matrix -

- -

-These subroutines collect the portions of global dense matrix -distributed over all process into one single array stored on one -process. - -

-

-
- - -\begin{displaymath}glob\_x \leftarrow collect(loc\_x_i) \end{displaymath} -
-
-

-where: -
-
$glob\_x$
-
is the global submatrix -$glob\_x_{1:m,1:n}$ -
-
$loc\_x_i$
-
is the local portion of global dense matrix on -process $i$. -
-
$collect$
-
is the collect function. -
-
- -

-

-
- - - -
Table 16: -Data types
-
- - - - - - - - - - - - - - - - - - - -
$x_i, y$Subroutine
Integerpsb_gather
Short Precision Realpsb_gather
Long Precision Realpsb_gather
Short Precision Complexpsb_gather
Long Precision Complexpsb_gather
-
-
-

-
- -

-
-\begin{lstlisting}
-call psb_gather(glob_x, loc_x, desc_a, info, root)
-call psb_gather(glob_x, loc_x, desc_a, info, root)
-\end{lstlisting} -
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
loc_x
-
the local portion of global dense matrix -$glob\_x$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type -indicated in Table 16. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
root
-
The process that holds the global copy. If $root=-1$ all - the processes will have a copy of the global vector. -
-Scope: global -
-Type: optional -
-Intent: in. -
-Specified as: an integer variable -$-1\le root\le np-1$, default $-1$. -
-
On Return
-
-
-
glob_x
-
The array where the local parts must be gathered. -
-Scope: global -
-Type: required -
-Intent: out. -
-Specified as: a rank one or two array with the ALLOCATABLE attribute. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node73.html b/docs/html/node73.html deleted file mode 100644 index a0bd345f..00000000 --- a/docs/html/node73.html +++ /dev/null @@ -1,277 +0,0 @@ - - - - - -psb_scatter -- Scatter Global Dense Matrix - - - - - - - - - - - - - - - - - - - - -

-psb_scatter -- Scatter Global Dense Matrix -

- -

-These subroutines scatters the portions of global dense matrix owned -by a process to all the processes in the processes grid. - -

-

-
- - -\begin{displaymath}loc\_x_i \leftarrow scatter(glob\_x) \end{displaymath} -
-
-

-where: -
-
$glob\_x$
-
is the global matrix -$glob\_x_{1:m,1:n}$ -
-
$loc\_x_i$
-
is the local portion of global dense matrix on -process $i$. -
-
$scatter$
-
is the scatter function. -
-
- -

-

-
- - - -
Table 17: -Data types
-
- - - - - - - - - - - - - - - - - - - -
$x_i, y$Subroutine
Integerpsb_scatter
Short Precision Realpsb_scatter
Long Precision Realpsb_scatter
Short Precision Complexpsb_scatter
Long Precision Complexpsb_scatter
-
-
-

-
- -

-
-\begin{lstlisting}
-call psb_scatter(glob_x, loc_x, desc_a, info, root, mold)
-\end{lstlisting} -
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
glob_x
-
The array that must be scattered into local pieces. -
-Scope: global -
-Type: required -
-Intent: in. -
-Specified as: a rank one or two array. -
-
desc_a
-
contains data structures for communications. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
root
-
The process that holds the global copy. If $root=-1$ all - the processes have a copy of the global vector. -
-Scope: global -
-Type: optional -
-Intent: in. -
-Specified as: an integer variable -$-1\le root\le np-1$, default -psb_root_, i.e. process 0. -
-
mold
-
The desired dynamic type for the internal vector storage. -
-Scope: local. -
-Type: optional. -
-Intent: in. -
-Specified as: an object of a class derived from vbasedatapsb_T_base_vect_type; this is -only allowed when loc_x is of type vdatapsb_T_vect_type. -
-
On Return
-
-
-
loc_x
-
the local portion of global dense matrix -$glob\_x$. -
-Scope: local -
-Type: required -
-Intent: out. -
-Specified as: a rank one or two ALLOCATABLE array or an object of type vdatapsb_T_vect_type containing numbers of the type -indicated in Table 17. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

- -

- - - - diff --git a/docs/html/node74.html b/docs/html/node74.html deleted file mode 100644 index 4d97a7eb..00000000 --- a/docs/html/node74.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - -Data management routines - - - - - - - - - - - - - - - - - - - - - -

- -
-Data management routines -

- -

-


- -Subsections - - - -

- - - diff --git a/docs/html/node75.html b/docs/html/node75.html deleted file mode 100644 index ac095940..00000000 --- a/docs/html/node75.html +++ /dev/null @@ -1,450 +0,0 @@ - - - - - -psb_cdall -- Allocates a communication descriptor - - - - - - - - - - - - - - - - - - - - - -

-psb_cdall -- Allocates a communication descriptor -

- -

-

-call psb_cdall(icontxt, desc_a, info,mg=mg,parts=parts)
-call psb_cdall(icontxt, desc_a, info,vg=vg,[mg=mg,flag=flag])
-call psb_cdall(icontxt, desc_a, info,vl=vl,[nl=nl,globalcheck=.false.,lidx=lidx])
-call psb_cdall(icontxt, desc_a, info,nl=nl)
-call psb_cdall(icontxt, desc_a, info,mg=mg,repl=.true.)
-
- -

-This subroutine initializes the communication descriptor associated -with an index space. One of the optional arguments -parts, vg, vl, nl or repl -must be specified, thereby choosing -the specific initialization strategy. -

-
On Entry
-
-
-
Type:
-
Synchronous. -
-
icontxt
-
the communication context. -
-Scope:global. -
-Type:required. -
-Intent: in. -
-Specified as: an integer value. -
-
vg
-
Data allocation: each index -$i\in \{1\dots mg\}$ is allocated - to process $vg(i)$. -
-Scope:global. -
-Type:optional. -
-Intent: in. -
-Specified as: an integer array. -
-
flag
-
Specifies whether entries in $vg$ are zero- or one-based. -
-Scope:global. -
-Type:optional. -
-Intent: in. -
-Specified as: an integer value $0,1$, default $0$. - -

-

-
mg
-
the (global) number of rows of the problem. -
-Scope:global. -
-Type:optional. -
-Intent: in. -
-Specified as: an integer value. It is required if parts or -repl is specified, it is optional if vg is specified. -
-
parts
-
the subroutine that defines the partitioning scheme. -
-Scope:global. -
-Type:required. -
-Specified as: a subroutine. -
-
vl
-
Data allocation: the set of global indices - $vl(1:nl)$ belonging to the calling process. -
-Scope:local. -
-Type:optional. -
-Intent: in. -
-Specified as: an integer array. -
-
nl
-
Data allocation: in a generalized block-row distribution the - number of indices belonging to the current process. -
-Scope:local. -
-Type:optional. -
-Intent: in. -
-Specified as: an integer value. May be specified together with -vl. -
-
repl
-
Data allocation: build a replicated index space - (i.e. all processes own all indices). -
-Scope:global. -
-Type:optional. -
-Intent: in. -
-Specified as: the logical value .true. -
-
globalcheck
-
Data allocation: do global checks on the local - index lists vl -
-Scope:global. -
-Type:optional. -
-Intent: in. -
-Specified as: a logical value, default: .false. -
-
lidx
-
Data allocation: the set of local indices - $lidx(1:nl)$ to be assigned to the global indices $vl$. -
-Scope:local. -
-Type:optional. -
-Intent: in. -
-Specified as: an integer array. -
-
- -

-

-
On Return
-
-
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: out. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. One of the optional arguments parts, vg, - vl, nl or repl must be specified, thereby choosing the - initialization strategy as follows: -
    -
    parts
    -
    In this case we have a subroutine specifying the mapping - between global indices and process/local index pairs. If this - optional argument is specified, then it is mandatory to - specify the argument mg as well. - The subroutine must conform to the following interface: -
    -  interface 
    -     subroutine psb_parts(glob_index,mg,np,pv,nv)
    -       integer, intent (in)  :: glob_index,np,mg
    -       integer, intent (out) :: nv, pv(*)
    -     end subroutine psb_parts
    -  end interface
    -
    - The input arguments are: -
    -
    glob_index
    -
    The global index to be mapped; - -
    -
    np
    -
    The number of processes in the mapping; - -
    -
    mg
    -
    The total number of global rows in the mapping; - -
    -
    - The output arguments are: -
    -
    nv
    -
    The number of entries in pv; - -
    -
    pv
    -
    A vector containing the indices of the processes to - which the global index should be assigend; each entry must satisfy - -$0\le pv(i) < np$; if $nv>1$ we have an index assigned to multiple - processes, i.e. we have an overlap among the subdomains. - -
    -
    -
    -
    vg
    -
    In this case the association between an index and a process - is specified via an integer vector vg(1:mg); - each index -$i\in \{1\dots mg\}$ is assigned to process $vg(i)$. - The vector vg must be identical on all - calling processes; its entries may have the ranges $(0\dots np-1)$ - or $(1\dots np)$ according to the value of flag. - The size $mg$ may be specified via the optional argument mg; - the default is to use the entire vector vg, thus having - mg=size(vg). -
    -
    vl
    -
    In this case we are specifying the list of indices - vl(1:nl) assigned to the current process; thus, the global - problem size $mg$ is given by - the range of the aggregate of the individual vectors vl specified - in the calling processes. The size may be specified via the optional - argument nl; the default is to use the entire vector - vl, thus having nl=size(vl). - If globalcheck=.true. the subroutine will check how many - times each entry in the global index space $(1\dots mg)$ is - specified in the input lists vl, thus allowing for the - presence of overlap in the input, and checking for “orphan” - indices. If globalcheck=.false., the subroutine will not - check for overlap, and may be significantly faster, but the user - is implicitly guaranteeing that there are neither orphan nor - overlap indices. -
    -
    lidx
    -
    The optional argument lidx is available for - those cases in which the user has already established a - global-to-local mapping; if it is specified, each index in - vl(i) will be mapped to the corresponding local index - lidx(i). When specifying the argument lidx the user - would also likely employ lidx in calls to psb_cdins - and local in calls to psb_spins and psb_geins; - see also sec. 2.3.1. -
    -
    nl
    -
    If this argument is specified alone (i.e. without vl) - the result is a generalized row-block distribution in which each - process $I$ gets assigned a consecutive chunk of $N_I=nl$ global - indices. -
    -
    repl
    -
    This arguments specifies to replicate all indices on - all processes. This is a special purpose data allocation that is - useful in the construction of some multilevel preconditioners. -
    -
    -
  2. -
  3. On exit from this routine the descriptor is in the build - state. -
  4. -
  5. Calling the routine with vg or parts implies that - every process will scan the entire index space to figure out the - local indices. -
  6. -
  7. Overlapped indices are possible with both parts and - vl invocations. -
  8. -
  9. When the subroutine is invoked with vl in - conjunction with globalcheck=.true., it will perform a scan - of the index space to search for overlap or orphan indices. -
  10. -
  11. When the subroutine is invoked with vl in - conjunction with globalcheck=.false., no index space scan - will take place. Thus it is the responsibility of the user to make - sure that the indices specified in vl have neither orphans nor - overlaps; if this assumption fails, results will be - unpredictable. -
  12. -
  13. Orphan and overlap indices are - impossible by construction when the subroutine is invoked with - nl (alone), or vg. -
  14. -
- -

- -

- - - - diff --git a/docs/html/node76.html b/docs/html/node76.html deleted file mode 100644 index 52f857fa..00000000 --- a/docs/html/node76.html +++ /dev/null @@ -1,259 +0,0 @@ - - - - - -psb_cdins -- Communication descriptor insert routine - - - - - - - - - - - - - - - - - - - - - -

-psb_cdins -- Communication descriptor insert - routine -

- -

-

-call psb_cdins(nz, ia, ja, desc_a, info [,ila,jla])
-call psb_cdins(nz,ja,desc,info[,jla,mask,lidx])
-
- -

-This subroutine examines the edges of the graph associated with the -discretization mesh (and isomorphic to the sparsity pattern of a -linear system coefficient matrix), storing them as necessary into the -communication descriptor. In the first form the edges are specified as -pairs of indices $ia(i),ja(i)$; the starting index $ia(i)$ should -belong to the current process. -In the second form only the remote indices $ja(i)$ are specified. - -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
nz
-
the number of points being inserted. -
-Scope: local. -
-Type: required. -
-Intent: in. -
-Specified as: an integer value. -
-
ia
-
the indices of the starting vertex of the edges being inserted. -
-Scope: local. -
-Type: required. -
-Intent: in. -
-Specified as: an integer array of length $nz$. -
-
ja
-
the indices of the end vertex of the edges being inserted. -
-Scope: local. -
-Type: required. -
-Intent: in. -
-Specified as: an integer array of length $nz$. -
-
mask
-
Mask entries in ja, they are inserted only when the - corresponding mask entries are .true. -
-Scope: local. -
-Type: optional. -
-Intent: in. -
-Specified as: a logical array of length $nz$, default .true.. -
-
lidx
-
User defined local indices for ja. -
-Scope: local. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer array of length $nz$. -
-
- -

-

-
On Return
-
-
-
desc_a
-
the updated communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: inout. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
ila
-
the local indices of the starting vertex of the edges being inserted. -
-Scope: local. -
-Type: optional. -
-Intent: out. -
-Specified as: an integer array of length $nz$. -
-
jla
-
the local indices of the end vertex of the edges being inserted. -
-Scope: local. -
-Type: optional. -
-Intent: out. -
-Specified as: an integer array of length $nz$. - -

-

-
-Notes - -
    -
  1. This routine may only be called if the descriptor is in the - build state; -
  2. -
  3. This routine automatically ignores edges that do not -insist on the current process, i.e. edges for which neither the starting -nor the end vertex belong to the current process. -
  4. -
  5. The second form of this routine will be useful when dealing with - user-specified index mappings; see also 2.3.1. -
  6. -
- -

- -

- - - - diff --git a/docs/html/node77.html b/docs/html/node77.html deleted file mode 100644 index d47877a3..00000000 --- a/docs/html/node77.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - -psb_cdasb -- Communication descriptor assembly routine - - - - - - - - - - - - - - - - - - - - - -

-psb_cdasb -- Communication descriptor assembly - routine -

- -

-

-call psb_cdasb(desc_a, info [, mold])
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: inout. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
mold
-
The desired dynamic type for the internal index storage. -
-Scope: local. -
-Type: optional. -
-Intent: in. -
-Specified as: a object of type derived from (integer) vbasedatapsb_T_base_vect_type. -
-
- -

-

-
On Return
-
-
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: inout. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
-Notes - -
    -
  1. On exit from this routine the descriptor is in the assembled - state. -
  2. -
-This call will set up all the necessary information for the halo data -exchanges. In doing so, the library will need to identify the set of -processes owning the halo indices through the use of the -desc%fnd_owner() method; the owning processes are the -topological neighbours of the calling process. If the user has some -background information on the processes that are neighbours of the -current one, it is possible to specify explicitly the list of adjacent -processes with a call to desc%set_p_adjcncy(list); this will -speed up the subsequent call to psb_cdasb. - -

- -

- - - - diff --git a/docs/html/node78.html b/docs/html/node78.html deleted file mode 100644 index 4319c067..00000000 --- a/docs/html/node78.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - -psb_cdcpy -- Copies a communication descriptor - - - - - - - - - - - - - - - - - - - - - -

-psb_cdcpy -- Copies a communication descriptor -

- -

-

-call psb_cdcpy(desc_in, desc_out, info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc_in
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. - -

-

-
- -

-

-
On Return
-
-
-
desc_out
-
the communication descriptor copy. -
-Scope:local. -
-Type:required. -
-Intent: out. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node79.html b/docs/html/node79.html deleted file mode 100644 index 17081ee5..00000000 --- a/docs/html/node79.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -psb_cdfree -- Frees a communication descriptor - - - - - - - - - - - - - - - - - - - - - -

-psb_cdfree -- Frees a communication descriptor -

- -

-

-call psb_cdfree(desc_a, info)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
desc_a
-
the communication descriptor to be freed. -
-Scope:local. -
-Type:required. -
-Intent: inout. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
- -

-

-
On Return
-
-
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node8.html b/docs/html/node8.html deleted file mode 100644 index 16380a12..00000000 --- a/docs/html/node8.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -Programming model - - - - - - - - - - - - - - - - - - - - -

-Programming model -

- -

-The PSBLAS librarary is based on the Single Program Multiple Data -(SPMD) programming model: each process participating in the -computation performs the same actions on a chunk of data. Parallelism -is thus data-driven. - -

-Because of this structure, many subroutines coordinate their action -across the various processes, thus providing an implicit -synchronization point, and therefore must be -called simultaneously by all processes participating in the -computation. This is certainly true for the data allocation and -assembly routines, for all the computational routines and for some of -the tools routines. - -

-However there are many cases where no synchronization, and indeed no -communication among processes, is implied; for instance, all the routines in -sec. 3 are only acting on the local data structures, -and thus may be called independently. The most important case is that -of the coefficient insertion routines: since the number of -coefficients in the sparse and dense matrices varies among the -processors, and since the user is free to choose an arbitrary order in -builiding the matrix entries, these routines cannot imply a -synchronization. - -

-Throughout this user's guide each subroutine will be clearly indicated -as: -

-
Synchronous:
-
must be called simultaneously by all the - processes in the relevant communication context; -
-
Asynchronous:
-
may be called in a totally independent manner. -
-
- -

- -

- - - - diff --git a/docs/html/node80.html b/docs/html/node80.html deleted file mode 100644 index 5d079885..00000000 --- a/docs/html/node80.html +++ /dev/null @@ -1,198 +0,0 @@ - - - - - -psb_cdbldext -- Build an extended communication descriptor - - - - - - - - - - - - - - - - - - - - - -

-psb_cdbldext -- Build an extended communication - descriptor -

- -

-

-call psb_cdbldext(a,desc_a,nl,desc_out, info, extype)
-
- -

-This subroutine builds an extended communication descriptor, based on -the input descriptor desc_a and on the stencil specified -through the input sparse matrix a. -

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
a
-
A sparse matrix -Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data type. -
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
nl
-
the number of additional layers desired. -
-Scope:global. -
-Type:required. -
-Intent: in. -
-Specified as: an integer value $nl\ge 0$. -
-
extype
-
the kind of estension required. -
-Scope:global. -
-Type:optional . -
-Intent: in. -
-Specified as: an integer value -psb_ovt_xhal_, psb_ovt_asov_, default: psb_ovt_xhal_ - -

-

-
- -

-

-
On Return
-
-
-
desc_out
-
the extended communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: inout. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. Specifying psb_ovt_xhal_ for the extype argument - the user will obtain a descriptor for a domain partition in which - the additional layers are fetched as part of an (extended) halo; - however the index-to-process mapping is identical to that of the - base descriptor; -
  2. -
  3. Specifying psb_ovt_asov_ for the extype argument - the user will obtain a descriptor with an overlapped decomposition: - the additional layer is aggregated to the local subdomain (and thus - is an overlap), and a new halo extending beyond the last additional - layer is formed. -
  4. -
- -

- -

- - - - diff --git a/docs/html/node81.html b/docs/html/node81.html deleted file mode 100644 index e0a85c1b..00000000 --- a/docs/html/node81.html +++ /dev/null @@ -1,143 +0,0 @@ - - - - - -psb_spall -- Allocates a sparse matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_spall -- Allocates a sparse matrix -

- -

-

-call psb_spall(a, desc_a, info, nnz)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
nnz
-
An estimate of the number of nonzeroes in the local - part of the assembled matrix. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: an integer value. -
-
- -

-

-
On Return
-
-
-
a
-
the matrix to be allocated. -
-Scope:local -
-Type:required -
-Intent: out. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
-Notes - -
    -
  1. On exit from this routine the sparse matrix is in the build - state. -
  2. -
  3. The descriptor may be in either the build or assembled state. -
  4. -
  5. Providing a good estimate for the number of nonzeroes $nnz$ in - the assembled matrix may substantially improve performance in the - matrix build phase, as it will reduce or eliminate the need for - (potentially multiple) data reallocations. -
  6. -
- -

-


- - - diff --git a/docs/html/node82.html b/docs/html/node82.html deleted file mode 100644 index 08f33487..00000000 --- a/docs/html/node82.html +++ /dev/null @@ -1,335 +0,0 @@ - - - - - -psb_spins -- Insert a set of coefficients into a sparse matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_spins -- Insert a set of coefficients into a sparse - matrix -

- -

-

-call psb_spins(nz, ia, ja, val, a, desc_a, info [,local])
-call psb_spins(nr, irw, irp, ja, val, a, desc_a, info [,local])
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
nz
-
the number of coefficients to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: an integer scalar. -
-
nr
-
the number of rows to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: an integer scalar. -
-
irw
-
the first row to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: an integer scalar. -
-
ia
-
the row indices of the coefficients to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: an integer array of size $nz$. -
-
irp
-
the row pointers of the coefficients to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: an integer array of size $nr+1$. -
-
ja
-
the column indices of the coefficients to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: an integer array of size $nz$. -
-
val
-
the coefficients to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: an array of size $nz$. Must be of the same type and kind -of the coefficients of the sparse matrix $a$. -
-
desc_a
-
The communication descriptor. -
-Scope: local. -
-Type: required. -
-Intent: inout. -
-Specified as: a variable of type descdatapsb_desc_type. -
-
local
-
Whether the entries in the indices vectors ia, - ja are already in local numbering. -
-Scope:local. -
-Type:optional. -
-Specified as: a logical value; default: .false.. - -

-

-
- -

-

-
On Return
-
-
-
a
-
the matrix into which coefficients will be inserted. -
-Scope:local -
-Type:required -
-Intent: inout. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
desc_a
-
The communication descriptor. -
-Scope: local. -
-Type: required. -
-Intent: inout. -
-Specified as: a variable of type descdatapsb_desc_type. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. On entry to this routine the descriptor may be in either the - build or assembled state. -
  2. -
  3. On entry to this routine the sparse matrix may be in either the - build or update state. -
  4. -
  5. If the descriptor is in the build state, then the sparse matrix - must also be in the build state; the action of the routine is to - (implicitly) call psb_cdins to add entries to the sparsity - pattern; each sparse matrix entry implicitly defines a graph edge, - that is passed to the descriptor routine for the appropriate - processing; -
  6. -
  7. The input data can be passed in either COO or CSR formats; -
  8. -
  9. In COO format the coefficients to be inserted are represented by - the ordered triples -$ia(i),ja(i),val(i)$, for $i=1,\dots,nz$; - these triples should belong to the current process, i.e. $ia(i)$ - should be one of the local indices, but are otherwise arbitrary; -
  10. -
  11. In CSR format the coefficients to be inserted for each input row $i=1,nr$ - are represented by the ordered triples -$(i+irw-1),ja(j),val(j)$, for - -$j=irp(i),\dots,irp(i+1)-1$; - these triples should belong to the current process, i.e. $i+irw-1$ - should be one of the local indices, but are otherwise arbitrary; -
  12. -
  13. There is no requirement that a given row must be passed in its - entirety to a single call to this routine: the buildup of a row - may be split into as many calls as desired (even in the CSR format); -
  14. -
  15. Coefficients from different rows may also be mixed up freely - in a single call, according to the application needs; -
  16. -
  17. Any coefficients from matrix rows not owned by the calling - process are silently ignored; -
  18. -
  19. If the descriptor is in the assembled state, then any entries in - the sparse matrix that would generate additional communication - requirements are ignored; -
  20. -
  21. If the matrix is in the update state, any entries in positions - that were not present in the original matrix are ignored. -
  22. -
- -

- -

- - - - diff --git a/docs/html/node83.html b/docs/html/node83.html deleted file mode 100644 index b44e3675..00000000 --- a/docs/html/node83.html +++ /dev/null @@ -1,209 +0,0 @@ - - - - - -psb_spasb -- Sparse matrix assembly routine - - - - - - - - - - - - - - - - - - - - - -

-psb_spasb -- Sparse matrix assembly routine -

- -

-

-call psb_spasb(a, desc_a, info, afmt, upd, dupl, mold)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
afmt
-
the storage format for the sparse matrix. -
-Scope: local. -
-Type: optional. -
-Intent: in. -
-Specified as: an array of characters. Defalt: 'CSR'. -
-
upd
-
Provide for updates to the matrix coefficients. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: integer, possible values: psb_upd_srch_, psb_upd_perm_ -
-
dupl
-
How to handle duplicate coefficients. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: integer, possible values: psb_dupl_ovwrt_, -psb_dupl_add_, psb_dupl_err_. -
-
mold
-
The desired dynamic type for the internal matrix storage. -
-Scope: local. -
-Type: optional. -
-Intent: in. -
-Specified as: an object of a class derived from spbasedatapsb_T_base_sparse_mat. -
-
- -

-

-
On Return
-
-
-
a
-
the matrix to be assembled. -
-Scope:local -
-Type:required -
-Intent: inout. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. On entry to this routine the descriptor must be in the - assembled state, i.e. psb_cdasb must already have been called. -
  2. -
  3. The sparse matrix may be in either the build or update state; -
  4. -
  5. Duplicate entries are detected and handled in both build and - update state, with the exception of the error action that is only - taken in the build state, i.e. on the first assembly; -
  6. -
  7. If the update choice is psb_upd_perm_, then subsequent - calls to psb_spins to update the matrix must be arranged in - such a way as to produce exactly the same sequence of coefficient - values as encountered at the first assembly; -
  8. -
  9. The output storage format need not be the same on all - processes; -
  10. -
  11. On exit from this routine the matrix is in the assembled state, - and thus is suitable for the computational routines. -
  12. -
- -

- -

- - - - diff --git a/docs/html/node84.html b/docs/html/node84.html deleted file mode 100644 index 2ae76326..00000000 --- a/docs/html/node84.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - -psb_spfree -- Frees a sparse matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_spfree -- Frees a sparse matrix -

- -

-

-call psb_spfree(a, desc_a, info)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
a
-
the matrix to be freed. -
-Scope:local -
-Type:required -
-Intent: inout. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
- -

-

-
On Return
-
-
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node85.html b/docs/html/node85.html deleted file mode 100644 index 199f1af9..00000000 --- a/docs/html/node85.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - -psb_sprn -- Reinit sparse matrix structure for psblas routines. - - - - - - - - - - - - - - - - - - - - - -

-psb_sprn -- Reinit sparse matrix structure for psblas - routines. -

- -

-

-call psb_sprn(a, decsc_a, info, clear)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
a
-
the matrix to be reinitialized. -
-Scope:local -
-Type:required -
-Intent: inout. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
clear
-
Choose whether to zero out matrix coefficients -
-Scope:local. -
-Type:optional. -
-Intent: in. -
-Default: true. -
-
- -

-

-
On Return
-
-
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
-Notes - -
    -
  1. On exit from this routine the sparse matrix is in the update - state. -
  2. -
- -

-


- - - diff --git a/docs/html/node86.html b/docs/html/node86.html deleted file mode 100644 index e3b8457f..00000000 --- a/docs/html/node86.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - -psb_geall -- Allocates a dense matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_geall -- Allocates a dense matrix -

- -

-

-call psb_geall(x, desc_a, info, n, lb)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
desc_a
-
The communication descriptor. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a variable of type descdatapsb_desc_type. -
-
n
-
The number of columns of the dense matrix to be allocated. -
-Scope: local -
-Type: optional -
-Intent: in. -
-Specified as: Integer scalar, default $1$. It is not a valid argument if $x$ is a -rank-1 array. -
-
lb
-
The lower bound for the column index range of the dense matrix to be allocated. -
-Scope: local -
-Type: optional -
-Intent: in. -
-Specified as: Integer scalar, default $1$. It is not a valid argument if $x$ is a -rank-1 array. -
-
- -

-

-
On Return
-
-
-
x
-
The dense matrix to be allocated. -
-Scope: local -
-Type: required -
-Intent: out. -
-Specified as: a rank one or two array with the ALLOCATABLE attribute -or an object of type vdatapsb_T_vect_type, of type real, complex or integer. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node87.html b/docs/html/node87.html deleted file mode 100644 index 6703e027..00000000 --- a/docs/html/node87.html +++ /dev/null @@ -1,221 +0,0 @@ - - - - - -psb_geins -- Dense matrix insertion routine - - - - - - - - - - - - - - - - - - - - - -

-psb_geins -- Dense matrix insertion routine -

- -

-

-call psb_geins(m, irw, val, x, desc_a, info [,dupl,local])
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
m
-
Number of rows in $val$ to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: an integer value. -
-
irw
-
Indices of the rows to be inserted. Specifically, row $i$ - of $val$ will be inserted into the local row corresponding to the - global row index $irw(i)$. -Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: an integer array. -
-
val
-
the dense submatrix to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a rank 1 or 2 array. -Specified as: an integer value. -
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
dupl
-
How to handle duplicate coefficients. -
-Scope: global. -
-Type: optional. -
-Intent: in. -
-Specified as: integer, possible values: psb_dupl_ovwrt_, -psb_dupl_add_. -
-
local
-
Whether the entries in the index vector irw, - are already in local numbering. -
-Scope:local. -
-Type:optional. -
-Specified as: a logical value; default: .false.. - -

-

-
- -

-

-
On Return
-
-
-
x
-
the output dense matrix. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one or two array or an object of type vdatapsb_T_vect_type, of -type real, complex or integer. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. Dense vectors/matrices do not have an associated state; -
  2. -
  3. Duplicate entries are either overwritten or added, there is no - provision for raising an error condition. -
  4. -
- -

- -

- - - - diff --git a/docs/html/node88.html b/docs/html/node88.html deleted file mode 100644 index 705998d9..00000000 --- a/docs/html/node88.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - -psb_geasb -- Assembly a dense matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_geasb -- Assembly a dense matrix -

- -

-

-call psb_geasb(x, desc_a, info, mold)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
desc_a
-
The communication descriptor. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a variable of type descdatapsb_desc_type. -
-
mold
-
The desired dynamic type for the internal vector storage. -
-Scope: local. -
-Type: optional. -
-Intent: in. -
-Specified as: an object of a class derived from vbasedatapsb_T_base_vect_type; this is -only allowed when $x$ is of type vdatapsb_T_vect_type. -
-
- -

-

-
On Return
-
-
-
x
-
The dense matrix to be assembled. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one or two array with the ALLOCATABLE or an -object of type vdatapsb_T_vect_type, of type real, complex or integer. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
-

- - - diff --git a/docs/html/node89.html b/docs/html/node89.html deleted file mode 100644 index 48f987c1..00000000 --- a/docs/html/node89.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - -psb_gefree -- Frees a dense matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_gefree -- Frees a dense matrix -

- -

-

-call psb_gefree(x, desc_a, info)
-
- -

-

-
Type:
-
Synchronous. -
-
On Entry
-
-
-
x
-
The dense matrix to - be freed. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a rank one or two array with the ALLOCATABLE or an -object of type vdatapsb_T_vect_type, of type real, complex or integer. -
-

-

-
desc_a
-
The communication descriptor. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a variable of type descdatapsb_desc_type. -
-
- -

-

-
On Return
-
-
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node9.html b/docs/html/node9.html deleted file mode 100644 index 61c08a08..00000000 --- a/docs/html/node9.html +++ /dev/null @@ -1,253 +0,0 @@ - - - - - -Data Structures and Classes - - - - - - - - - - - - - - - - - - - - - -

- -
-Data Structures and Classes -

- -

-In this chapter we illustrate the data structures used for definition of -routines interfaces. They include data structures for sparse matrices, -communication descriptors and preconditioners. -

-All the data types and the basic subroutine interfaces related to -descriptors and sparse matrices are defined in -the module psb_base_mod; this will have to be included by every -user subroutine that makes use of the library. The preconditioners are -defined in the module psb_prec_mod - -

-Integer, real and complex data types are parametrized with a kind type -defined in the library as follows: -

-
psb_spk_
-
Kind parameter for short precision real and complex - data; corresponds to a REAL declaration and is - normally 4 bytes; -
-
psb_dpk_
-
Kind parameter for long precision real and complex - data; corresponds to a DOUBLE PRECISION declaration and is - normally 8 bytes; -
-
psb_mpk_
-
Kind parameter for 4-bytes integer data, as is - always used by MPI; -
-
psb_epk_
-
Kind parameter for 8-bytes integer data, as is - always used by the sizeof methods; -
-
psb_ipk_
-
Kind parameter for “local” integer indices and data; - with default build options this is a 4 bytes integer; -
-
psb_lpk_
-
Kind parameter for “global” integer indices and data; - with default build options this is an 8 bytes integer; -
-
-The integer kinds for local and global indices can be chosen at -configure time to hold 4 or 8 bytes, with the global indices at least -as large as the local ones. -Together with the classes attributes we also discuss their -methods. Most methods detailed here only act on the local variable, -i.e. their action is purely local and asynchronous unless otherwise -stated. -The list of methods here is not completely exhaustive; many methods, -especially those that alter the contents of the various objects, are -usually not needed by the end-user, and therefore are described in the -developer's documentation. - -

-


- -Subsections - - - - - - - - - diff --git a/docs/html/node90.html b/docs/html/node90.html deleted file mode 100644 index dd9a836e..00000000 --- a/docs/html/node90.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - - -psb_gelp -- Applies a left permutation to a dense matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_gelp -- Applies a left permutation to a dense - matrix -

- -

-

-call psb_gelp(trans, iperm, x, info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
trans
-
A character that specifies whether to permute $A$ or $A^T$. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a single character with value 'N' for $A$ or 'T' for $A^T$. -
-
iperm
-
An integer array containing permutation information. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: an integer one-dimensional array. -
-
x
-
The dense matrix to be permuted. -
-Scope: local -
-Type: required -
-Intent: inout. -
-Specified as: a one or two dimensional array. -
-
- -

-

-
On Return
-
-
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node91.html b/docs/html/node91.html deleted file mode 100644 index 05365418..00000000 --- a/docs/html/node91.html +++ /dev/null @@ -1,213 +0,0 @@ - - - - - -psb_glob_to_loc -- Global to local indices convertion - - - - - - - - - - - - - - - - - - - - - -

-psb_glob_to_loc -- Global to local indices - convertion -

- -

-

-call psb_glob_to_loc(x, y, desc_a, info, iact,owned)
-call psb_glob_to_loc(x, desc_a, info, iact,owned)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
x
-
An integer vector of indices to be converted. -
-Scope: local -
-Type: required -
-Intent: in, inout. -
-Specified as: a rank one integer array. -
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
iact
-
specifies action to be taken in case of range errors. -Scope: global -
-Type: optional -
-Intent: in. -
-Specified as: a character variable Ignore, Warning or -Abort, default Ignore. -
-
owned
-
Specfies valid range of input -Scope: global -
-Type: optional -
-Intent: in. -
-If true, then only indices strictly owned by the current process are -considered valid, if false then halo indices are also -accepted. Default: false. -
-
- -

-

-
On Return
-
-
-
x
-
If $y$ is not present, - then $x$ is overwritten with the translated integer indices. -Scope: global -
-Type: required -
-Intent: inout. -
-Specified as: a rank one integer array. -
-
y
-
If $y$ is present, - then $y$ is overwritten with the translated integer indices, and $x$ - is left unchanged. -Scope: global -
-Type: optional -
-Intent: out. -
-Specified as: a rank one integer array. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. If an input index is out of range, then the corresponding output - index is set to a negative number; -
  2. -
  3. The default Ignore means that the negative output is the - only action taken on an out-of-range input. -
  4. -
- -

- -

- - - - diff --git a/docs/html/node92.html b/docs/html/node92.html deleted file mode 100644 index 666b0bf5..00000000 --- a/docs/html/node92.html +++ /dev/null @@ -1,165 +0,0 @@ - - - - - -psb_loc_to_glob -- Local to global indices conversion - - - - - - - - - - - - - - - - - - - - - -

-psb_loc_to_glob -- Local to global indices - conversion -

- -

-

-call psb_loc_to_glob(x, y, desc_a, info, iact)
-call psb_loc_to_glob(x, desc_a, info, iact)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
x
-
An integer vector of indices to be converted. -
-Scope: local -
-Type: required -
-Intent: in, inout. -
-Specified as: a rank one integer array. -
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
iact
-
specifies action to be taken in case of range errors. -Scope: global -
-Type: optional -
-Intent: in. -
-Specified as: a character variable Ignore, Warning or -Abort, default Ignore. -
-
- -

-

-
On Return
-
-
-
x
-
If $y$ is not present, - then $x$ is overwritten with the translated integer indices. -Scope: global -
-Type: required -
-Intent: inout. -
-Specified as: a rank one integer array. -
-
y
-
If $y$ is not present, - then $y$ is overwritten with the translated integer indices, and $x$ - is left unchanged. -Scope: global -
-Type: optional -
-Intent: out. -
-Specified as: a rank one integer array. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-


- - - diff --git a/docs/html/node93.html b/docs/html/node93.html deleted file mode 100644 index 133899aa..00000000 --- a/docs/html/node93.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - -psb_is_owned -- - - - - - - - - - - - - - - - - - - - - - -

-psb_is_owned -- -

- -

-

-call psb_is_owned(x, desc_a)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
x
-
Integer index. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a scalar integer. -
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
- -

-

-
On Return
-
-
-
Function value
-
A logical mask which is true if - $x$ is owned by the current process -Scope: local -
-Type: required -
-Intent: out. -
-
- -

-Notes - -

    -
  1. This routine returns a .true. value for an index - that is strictly owned by the current process, excluding the halo - indices -
  2. -
- -

-


- - - diff --git a/docs/html/node94.html b/docs/html/node94.html deleted file mode 100644 index 56bfb76f..00000000 --- a/docs/html/node94.html +++ /dev/null @@ -1,149 +0,0 @@ - - - - - -psb_owned_index -- - - - - - - - - - - - - - - - - - - - - - -

-psb_owned_index -- -

- -

-

-call psb_owned_index(y, x, desc_a, info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
x
-
Integer indices. -
-Scope: local -
-Type: required -
-Intent: in, inout. -
-Specified as: a scalar or a rank one integer array. -
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
iact
-
specifies action to be taken in case of range errors. -Scope: global -
-Type: optional -
-Intent: in. -
-Specified as: a character variable Ignore, Warning or -Abort, default Ignore. -
-
- -

-

-
On Return
-
-
-
y
-
A logical mask which is true for all corresponding entries of - $x$ that are owned by the current process -Scope: local -
-Type: required -
-Intent: out. -
-Specified as: a scalar or rank one logical array. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. This routine returns a .true. value for those indices - that are strictly owned by the current process, excluding the halo - indices -
  2. -
- -

-


- - - diff --git a/docs/html/node95.html b/docs/html/node95.html deleted file mode 100644 index 79dba935..00000000 --- a/docs/html/node95.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - -psb_is_local -- - - - - - - - - - - - - - - - - - - - - - -

-psb_is_local -- -

- -

-

-call psb_is_local(x, desc_a)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
x
-
Integer index. -
-Scope: local -
-Type: required -
-Intent: in. -
-Specified as: a scalar integer. -
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
- -

-

-
On Return
-
-
-
Function value
-
A logical mask which is true if - $x$ is local to the current process -Scope: local -
-Type: required -
-Intent: out. -
-
- -

-Notes - -

    -
  1. This routine returns a .true. value for an index - that is local to the current process, including the halo - indices -
  2. -
- -

-


- - - diff --git a/docs/html/node96.html b/docs/html/node96.html deleted file mode 100644 index d7e2ac97..00000000 --- a/docs/html/node96.html +++ /dev/null @@ -1,149 +0,0 @@ - - - - - -psb_local_index -- - - - - - - - - - - - - - - - - - - - - - -

-psb_local_index -- -

- -

-

-call psb_local_index(y, x, desc_a, info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
x
-
Integer indices. -
-Scope: local -
-Type: required -
-Intent: in, inout. -
-Specified as: a scalar or a rank one integer array. -
-
desc_a
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
iact
-
specifies action to be taken in case of range errors. -Scope: global -
-Type: optional -
-Intent: in. -
-Specified as: a character variable Ignore, Warning or -Abort, default Ignore. -
-
- -

-

-
On Return
-
-
-
y
-
A logical mask which is true for all corresponding entries of - $x$ that are local to the current process -Scope: local -
-Type: required -
-Intent: out. -
-Specified as: a scalar or rank one logical array. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. This routine returns a .true. value for those indices - that are local to the current process, including the halo - indices. -
  2. -
- -

-


- - - diff --git a/docs/html/node97.html b/docs/html/node97.html deleted file mode 100644 index 184f952e..00000000 --- a/docs/html/node97.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - -psb_get_boundary -- Extract list of boundary elements - - - - - - - - - - - - - - - - - - - - - -

-psb_get_boundary -- Extract list of boundary - elements -

- -

-

-call psb_get_boundary(bndel, desc, info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
- -

-

-
On Return
-
-
-
bndel
-
The list of boundary elements on the calling process, in - local numbering. -
-Scope: local -
-Type: required -
-Intent: out. -
-Specified as: a rank one array with the ALLOCATABLE -attribute, of type integer. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. If there are no boundary elements (i.e., if the local part of - the connectivity graph is self-contained) the output vector is set - to the “not allocated” state. -
  2. -
  3. Otherwise the size of bndel will be exactly equal to the - number of boundary elements. -
  4. -
- -

-


- - - diff --git a/docs/html/node98.html b/docs/html/node98.html deleted file mode 100644 index 4f8e6938..00000000 --- a/docs/html/node98.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - -psb_get_overlap -- Extract list of overlap elements - - - - - - - - - - - - - - - - - - - - - -

-psb_get_overlap -- Extract list of overlap - elements -

- -

-

-call psb_get_overlap(ovrel, desc, info)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
desc
-
the communication descriptor. -
-Scope:local. -
-Type:required. -
-Intent: in. -
-Specified as: a structured data of type descdatapsb_desc_type. -
-
- -

-

-
On Return
-
-
-
ovrel
-
The list of overlap elements on the calling process, in - local numbering. -
-Scope: local -
-Type: required -
-Intent: out. -
-Specified as: a rank one array with the ALLOCATABLE -attribute, of type integer. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. If there are no overlap elements the output vector is set - to the “not allocated” state. -
  2. -
  3. Otherwise the size of ovrel will be exactly equal to the - number of overlap elements. -
  4. -
- -

-


- - - diff --git a/docs/html/node99.html b/docs/html/node99.html deleted file mode 100644 index 08c2ad51..00000000 --- a/docs/html/node99.html +++ /dev/null @@ -1,256 +0,0 @@ - - - - - -psb_sp_getrow -- Extract row(s) from a sparse matrix - - - - - - - - - - - - - - - - - - - - - -

-psb_sp_getrow -- Extract row(s) from a sparse - matrix -

- -

-

-call psb_sp_getrow(row, a, nz, ia, ja, val, info, &
-              & append, nzin, lrw)
-
- -

-

-
Type:
-
Asynchronous. -
-
On Entry
-
-
-
row
-
The (first) row to be extracted. -
-Scope:local -
-Type:required -
-Intent: in. -
-Specified as: an integer $>0$. -
-
a
-
the matrix from which to get rows. -
-Scope:local -
-Type:required -
-Intent: in. -
-Specified as: a structured data of type spdatapsb_Tspmat_type. -
-
append
-
Whether to append or overwrite existing output. -
-Scope:local -
-Type:optional -
-Intent: in. -
-Specified as: a logical value default: false (overwrite). -
-
nzin
-
Input size to be appended to. -
-Scope:local -
-Type:optional -
-Intent: in. -
-Specified as: an integer $>0$. When append is true, specifies how many -entries in the output vectors are already filled. -
-
lrw
-
The last row to be extracted. -
-Scope:local -
-Type:optional -
-Intent: in. -
-Specified as: an integer $>0$, default: $row$. - -

-

-
- -

-

-
On Return
-
-
-
nz
-
the number of elements returned by this call. -
-Scope:local. -
-Type:required. -
-Intent: out. -
-Returned as: an integer scalar. -
-
ia
-
the row indices. -
-Scope:local. -
-Type:required. -
-Intent: inout. -
-Specified as: an integer array with the ALLOCATABLE attribute. -
-
ja
-
the column indices of the elements to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: inout. -
-Specified as: an integer array with the ALLOCATABLE attribute. -
-
val
-
the elements to be inserted. -
-Scope:local. -
-Type:required. -
-Intent: inout. -
-Specified as: a real array with the ALLOCATABLE attribute. -
-
info
-
Error code. -
-Scope: local -
-Type: required -
-Intent: out. -
-An integer value; 0 means no error has been detected. -
-
- -

-Notes - -

    -
  1. The output $nz$ is always the size of the output generated by - the current call; thus, if append=.true., the total output - size will be $nzin+nz$, with the newly extracted coefficients stored in - entries nzin+1:nzin+nz of the array arguments; -
  2. -
  3. When append=.true. the output arrays are reallocated as - necessary; -
  4. -
  5. The row and column indices are returned in the local numbering - scheme; if the global numbering is desired, the user may employ the - psb_loc_to_glob routine on the output. -
  6. -
- -

- -

- - - - diff --git a/docs/html/prev.png b/docs/html/prev.png deleted file mode 100644 index e60b8b40..00000000 Binary files a/docs/html/prev.png and /dev/null differ diff --git a/docs/html/prev_g.png b/docs/html/prev_g.png deleted file mode 100644 index 476d9568..00000000 Binary files a/docs/html/prev_g.png and /dev/null differ diff --git a/docs/html/up.png b/docs/html/up.png deleted file mode 100644 index 3937e168..00000000 Binary files a/docs/html/up.png and /dev/null differ diff --git a/docs/html/up_g.png b/docs/html/up_g.png deleted file mode 100644 index 54ceb683..00000000 Binary files a/docs/html/up_g.png and /dev/null differ diff --git a/docs/html/userhtml.css b/docs/html/userhtml.css index d1824aff..201b1c23 100644 --- a/docs/html/userhtml.css +++ b/docs/html/userhtml.css @@ -1,30 +1,157 @@ -/* Century Schoolbook font is very similar to Computer Modern Math: cmmi */ -.MATH { font-family: "Century Schoolbook", serif; } -.MATH I { font-family: "Century Schoolbook", serif; font-style: italic } -.BOLDMATH { font-family: "Century Schoolbook", serif; font-weight: bold } + +/* start css.sty */ +.cmr-7{font-size:70%;} +.cmmi-5{font-size:50%;font-style: italic;} +.cmmi-7{font-size:70%;font-style: italic;} +.cmmi-10{font-style: italic;} +.cmsy-7{font-size:70%;} +.cmbx-12x-x-144{font-size:172%; font-weight: bold;} +.cmbx-12x-x-144{ font-weight: bold;} +.cmbx-12x-x-144{ font-weight: bold;} +.cmbx-12x-x-144{ font-weight: bold;} +.cmti-10{ font-style: italic;} +.cmti-12{font-size:120%; font-style: italic;} +.cmbx-10{ font-weight: bold;} +.cmbx-10{ font-weight: bold;} +.cmbx-10{ font-weight: bold;} +.cmbx-10{ font-weight: bold;} +.cmtt-10{font-family: monospace;} +.cmtt-10{font-family: monospace;} +.cmtt-10{font-family: monospace;} +.cmr-9{font-size:90%;} +.cmr-8{font-size:80%;} +.cmbx-12{font-size:120%; font-weight: bold;} +.cmbx-12{ font-weight: bold;} +.cmbx-12{ font-weight: bold;} +.cmbx-12{ font-weight: bold;} +.cmtt-8{font-size:80%;font-family: monospace;} +.cmtt-8{font-family: monospace;} +.cmtt-8{font-family: monospace;} +.cmtt-9{font-size:90%;font-family: monospace;} +.cmtt-9{font-family: monospace;} +.cmtt-9{font-family: monospace;} +.cmmi-8{font-size:80%;font-style: italic;} +.cmbx-9{font-size:90%; font-weight: bold;} +.cmbx-9{ font-weight: bold;} +.cmbx-9{ font-weight: bold;} +.cmbx-9{ font-weight: bold;} +p.noindent { text-indent: 0em } +td p.noindent { text-indent: 0em; margin-top:0em; } +p.nopar { text-indent: 0em; } +p.indent{ text-indent: 1.5em } +@media print {div.crosslinks {visibility:hidden;}} +a img { border-top: 0; border-left: 0; border-right: 0; } +center { margin-top:1em; margin-bottom:1em; } +td center { margin-top:0em; margin-bottom:0em; } +.Canvas { position:relative; } +img.math{vertical-align:middle;} +li p.indent { text-indent: 0em } +li p:first-child{ margin-top:0em; } +li p:last-child, li div:last-child { margin-bottom:0.5em; } +li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } +.enumerate1 {list-style-type:decimal;} +.enumerate2 {list-style-type:lower-alpha;} +.enumerate3 {list-style-type:lower-roman;} +.enumerate4 {list-style-type:upper-alpha;} +div.newtheorem { margin-bottom: 2em; margin-top: 2em;} +.obeylines-h,.obeylines-v {white-space: nowrap; } +div.obeylines-v p { margin-top:0; margin-bottom:0; } +.overline{ text-decoration:overline; } +.overline img{ border-top: 1px solid black; } +td.displaylines {text-align:center; white-space:nowrap;} +.centerline {text-align:center;} +.rightline {text-align:right;} +div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } +.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.fbox {display:table} +div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.minipage{width:100%;} +div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} +div.center div {text-align: left;} +div.flushright, div.flushright div.flushright {text-align: right;} +div.flushright div {text-align: left;} +div.flushleft {text-align: left;} +.underline{ text-decoration:underline; } +.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } +.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +.framebox-c {text-align:center;} +.framebox-l {text-align:left;} +.framebox-r {text-align:right;} +span.thank-mark{ vertical-align: super } +span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +.tabbing-right {text-align:right;} +span.TEX {letter-spacing: -0.125em; } +span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} +a span.TEX span.E {text-decoration: none; } +span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} +span.LATEX span.TEX{ position:relative; left: -0.4em; } +div.float, div.figure {margin-left: auto; margin-right: auto;} +div.float img {text-align:center;} +div.figure img {text-align:center;} +.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} +.marginpar p{margin-top:0.4em; margin-bottom:0.4em;} +table.equation {width:100%;} +.equation td{text-align:center; } +td.equation { margin-top:1em; margin-bottom:1em; } +td.equation-label { width:5%; text-align:center; } +td.eqnarray4 { width:5%; white-space: normal; } +td.eqnarray2 { width:5%; } +table.eqnarray-star, table.eqnarray {width:100%;} +div.eqnarray{text-align:center;} +div.array {text-align:center;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.pmatrix img{vertical-align:middle;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.bar-css {text-decoration:overline;} +img.cdots{vertical-align:middle;} +.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} +.index-item, .index-subitem, .index-subsubitem {display:block} +div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} +div.caption span.id{font-weight: bold; white-space: nowrap; } +h1.partHead{text-align: center} +p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} +.subparagraphHead, .likesubparagraphHead { font-weight: bold;} +.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} +.verse{white-space:nowrap; margin-left:2em} +div.maketitle {text-align:center;} +h2.titleHead{text-align:center;} +div.maketitle{ margin-bottom: 2em; } +div.author, div.date {text-align:center;} +div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } +div.author{white-space: nowrap;} +.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } +.abstract p {margin-left:5%; margin-right:5%;} +div.abstract {width:100%;} +.subsectionToc, .likesubsectionToc {margin-left:2em;} +.subsubsectionToc, .likesubsubsectionToc {margin-left:4em;} +.ovalbox { padding-left:3pt; padding-right:3pt; border:solid thin; } +.Ovalbox-thick { padding-left:3pt; padding-right:3pt; border:solid thick; } +.shadowbox { padding-left:3pt; padding-right:3pt; border:solid thin; border-right:solid thick; border-bottom:solid thick; } +.doublebox { padding-left:3pt; padding-right:3pt; border-style:double; border:solid thick; } +.figure img.graphics {margin-left:10%;} +.lstlisting .label{margin-right:0.5em; } +div.lstlisting{font-family: monospace; white-space: nowrap; margin-top:0.5em; margin-bottom:0.5em; } +div.lstinputlisting{ font-family: monospace; white-space: nowrap; } +.lstinputlisting .label{margin-right:0.5em;} +/* end css.sty */ -/* implement both fixed-size and relative sizes */ -SMALL.XTINY { font-size : xx-small } -SMALL.TINY { font-size : x-small } -SMALL.SCRIPTSIZE { font-size : smaller } -SMALL.FOOTNOTESIZE { font-size : small } -SMALL.SMALL { } -BIG.LARGE { } -BIG.XLARGE { font-size : large } -BIG.XXLARGE { font-size : x-large } -BIG.HUGE { font-size : larger } -BIG.XHUGE { font-size : xx-large } - -/* heading styles */ -H1 { } -H2 { } -H3 { } -H4 { } -H5 { } - -/* mathematics styles */ -DIV.displaymath { } /* math displays */ -TD.eqno { } /* equation-number cells */ - - -/* document-specific styles come next */ diff --git a/docs/html/userhtml.html b/docs/html/userhtml.html index b6f34f18..b53f97f3 100644 --- a/docs/html/userhtml.html +++ b/docs/html/userhtml.html @@ -1,414 +1,261 @@ - + + + + + + + + + + +

PSBLAS
User’s and Reference Guide
A reference guide for the Parallel Sparse BLAS library
Salvatore Filippone
Alfredo Buttari
Software version: 3.7.0
Jan 7th, 2020 + - - - -userhtml - - - - + + - - + +

+ Contents +
1 Introduction +
2 General overview +
 2.1 Basic Nomenclature +
 2.2 Library contents +
 2.3 Application structure +
 2.4 Programming model +
3 Data Structures and Classes +
 3.1 Descriptor data structure +
 3.2 Sparse Matrix class +
 3.3 Dense Vector Data Structure +
 3.4 Preconditioner data structure +
 3.5 Heap data structure +
4 Computational routines +
 4.1 psb_geaxpby — General Dense Matrix Sum +
 4.2 psb_gedot — Dot Product +
 4.3 psb_gedots — Generalized Dot Product +
 4.4 psb_normi — Infinity-Norm of Vector +
 4.5 psb_geamaxs — Generalized Infinity Norm +
 4.6 psb_norm1 — 1-Norm of Vector +
 4.7 psb_geasums — Generalized 1-Norm of Vector +
 4.8 psb_norm2 — 2-Norm of Vector +
 4.9 psb_genrm2s — Generalized 2-Norm of Vector +
 4.10 psb_norm1 — 1-Norm of Sparse Matrix +
 4.11 psb_normi — Infinity Norm of Sparse Matrix +
 4.12 psb_spmm — Sparse Matrix by Dense Matrix Product +
 4.13 psb_spsm — Triangular System Solve +
 4.14 psb_gemlt — Entrywise Product +
 4.15 psb_gediv — Entrywise Division +
 4.16 psb_geinv — Entrywise Inversion +
5 Communication routines +
 5.1 psb_halo — Halo Data Communication +
 5.2 psb_ovrl — Overlap Update +
 5.3 psb_gather — Gather Global Dense Matrix +
 5.4 psb_scatter — Scatter Global Dense Matrix +
6 Data management routines +
 6.1 psb_cdall — Allocates a communication descriptor +
 6.2 psb_cdins — Communication descriptor insert routine +
 6.3 psb_cdasb — Communication descriptor assembly routine +
 6.4 psb_cdcpy — Copies a communication descriptor +
 6.5 psb_cdfree — Frees a communication descriptor +
 6.6 psb_cdbldext — Build an extended communication descriptor +
 6.7 psb_spall — Allocates a sparse matrix +
 6.8 psb_spins — Insert a set of coefficients into a sparse matrix +
 6.9 psb_spasb — Sparse matrix assembly routine +
 6.10 psb_spfree — Frees a sparse matrix +
 6.11 psb_sprn — Reinit sparse matrix structure for psblas routines. +
 6.12 psb_geall — Allocates a dense matrix + - + +
 6.13 psb_geins — Dense matrix insertion routine +
 6.14 psb_geasb — Assembly a dense matrix +
 6.15 psb_gefree — Frees a dense matrix +
 6.16 psb_gelp — Applies a left permutation to a dense matrix +
 6.17 psb_glob_to_loc — Global to local indices convertion +
 6.18 psb_loc_to_glob — Local to global indices conversion +
 6.19 psb_is_owned — +
 6.20 psb_owned_index — +
 6.21 psb_is_local — +
 6.22 psb_local_index — +
 6.23 psb_get_boundary — Extract list of boundary elements +
 6.24 psb_get_overlap — Extract list of overlap elements +
 6.25 psb_sp_getrow — Extract row(s) from a sparse matrix +
 6.26 psb_sizeof — Memory occupation +
 6.27 Sorting utilities — +
7 Parallel environment routines +
 7.1 psb_init — Initializes PSBLAS parallel environment +
 7.2 psb_info — Return information about PSBLAS parallel environment +
 7.3 psb_exit — Exit from PSBLAS parallel environment +
 7.4 psb_get_mpi_comm — Get the MPI communicator +
 7.5 psb_get_mpi_rank — Get the MPI rank +
 7.6 psb_wtime — Wall clock timing +
 7.7 psb_barrier — Sinchronization point parallel environment +
 7.8 psb_abort — Abort a computation +
 7.9 psb_bcast — Broadcast data +
 7.10 psb_sum — Global sum +
 7.11 psb_max — Global maximum +
 7.12 psb_min — Global minimum +
 7.13 psb_amx — Global maximum absolute value +
 7.14 psb_amn — Global minimum absolute value +
 7.15 psb_nrm2 — Global 2-norm reduction +
 7.16 psb_snd — Send data +
 7.17 psb_rcv — Receive data +
8 Error handling +
 8.1 psb_errpush +
 8.2 psb_error +
 8.3 psb_set_errverbosity +
 8.4 psb_set_erraction +
9 Utilities +
 9.1 hb_read — Read a sparse matrix from a file in the Harwell–Boeing format +
 9.2 hb_write — Write a sparse matrix to a file in the Harwell–Boeing format +
 9.3 mm_mat_read — Read a sparse matrix from a file in the MatrixMarket format +
 9.4 mm_array_read — Read a dense array from a file in the MatrixMarket format +
 9.5 mm_mat_write — Write a sparse matrix to a file in the MatrixMarket format +
 9.6 mm_array_write — Write a dense array from a file in the MatrixMarket format +
10 Preconditioner routines +
 10.1 init — Initialize a preconditioner +
 10.2 build — Builds a preconditioner +
 10.3 apply — Preconditioner application routine +
 10.4 descr — Prints a description of current preconditioner + - - + +
 10.5 clone — clone current preconditioner +
 10.6 free — Free a preconditioner +
11 Iterative Methods +
 11.1 psb_krylov — Krylov Methods Driver Routine +
References +
- - - -language=Fortran -

-PSBLAS -
-
-User's and Reference - Guide
-
A reference guide for the Parallel Sparse BLAS library -
-
-
-
Salvatore Filippone -
-Alfredo Buttari
-
-Software version: 3.7.0 -
-Jan 7th, 2020 -


- - - - -

- - + + + + + + + + + + + diff --git a/docs/html/userhtml0x.png b/docs/html/userhtml0x.png new file mode 100644 index 00000000..236023f4 Binary files /dev/null and b/docs/html/userhtml0x.png differ diff --git a/docs/html/userhtml10.html b/docs/html/userhtml10.html new file mode 100644 index 00000000..5d4c39b0 --- /dev/null +++ b/docs/html/userhtml10.html @@ -0,0 +1,25 @@ + + + + + + + + + + +
+

3The subroutine style psb_precinit and psb_precbl are still supported for backward + compatibility

+ diff --git a/docs/html/userhtml100.html b/docs/html/userhtml100.html new file mode 100644 index 00000000..c38b723d --- /dev/null +++ b/docs/html/userhtml100.html @@ -0,0 +1,18 @@ + + + + + + + + + + +
+

4The string is case-insensitive

+ + diff --git a/docs/html/userhtml108.html b/docs/html/userhtml108.html new file mode 100644 index 00000000..13394996 --- /dev/null +++ b/docs/html/userhtml108.html @@ -0,0 +1,19 @@ + + + + + + + + + + +
+

5Note: the implementation is for FCG(1).

+ diff --git a/docs/html/userhtml10x.png b/docs/html/userhtml10x.png new file mode 100644 index 00000000..bc555490 Binary files /dev/null and b/docs/html/userhtml10x.png differ diff --git a/docs/html/userhtml11x.png b/docs/html/userhtml11x.png new file mode 100644 index 00000000..02e3ca83 Binary files /dev/null and b/docs/html/userhtml11x.png differ diff --git a/docs/html/userhtml12x.png b/docs/html/userhtml12x.png new file mode 100644 index 00000000..2fe0d741 Binary files /dev/null and b/docs/html/userhtml12x.png differ diff --git a/docs/html/userhtml13x.png b/docs/html/userhtml13x.png new file mode 100644 index 00000000..2640335f Binary files /dev/null and b/docs/html/userhtml13x.png differ diff --git a/docs/html/userhtml14x.png b/docs/html/userhtml14x.png new file mode 100644 index 00000000..bc55f7d1 Binary files /dev/null and b/docs/html/userhtml14x.png differ diff --git a/docs/html/userhtml15x.png b/docs/html/userhtml15x.png new file mode 100644 index 00000000..0b01ec07 Binary files /dev/null and b/docs/html/userhtml15x.png differ diff --git a/docs/html/userhtml16x.png b/docs/html/userhtml16x.png new file mode 100644 index 00000000..a18061f0 Binary files /dev/null and b/docs/html/userhtml16x.png differ diff --git a/docs/html/userhtml17x.png b/docs/html/userhtml17x.png new file mode 100644 index 00000000..7fe28a82 Binary files /dev/null and b/docs/html/userhtml17x.png differ diff --git a/docs/html/userhtml18x.png b/docs/html/userhtml18x.png new file mode 100644 index 00000000..82edd7f7 Binary files /dev/null and b/docs/html/userhtml18x.png differ diff --git a/docs/html/userhtml19x.png b/docs/html/userhtml19x.png new file mode 100644 index 00000000..336cb190 Binary files /dev/null and b/docs/html/userhtml19x.png differ diff --git a/docs/html/userhtml1x.png b/docs/html/userhtml1x.png new file mode 100644 index 00000000..00fc2e33 Binary files /dev/null and b/docs/html/userhtml1x.png differ diff --git a/docs/html/userhtml20x.png b/docs/html/userhtml20x.png new file mode 100644 index 00000000..b19fd75c Binary files /dev/null and b/docs/html/userhtml20x.png differ diff --git a/docs/html/userhtml21x.png b/docs/html/userhtml21x.png new file mode 100644 index 00000000..c7b037cf Binary files /dev/null and b/docs/html/userhtml21x.png differ diff --git a/docs/html/userhtml22x.png b/docs/html/userhtml22x.png new file mode 100644 index 00000000..6b413586 Binary files /dev/null and b/docs/html/userhtml22x.png differ diff --git a/docs/html/userhtml23x.png b/docs/html/userhtml23x.png new file mode 100644 index 00000000..ed4251c5 Binary files /dev/null and b/docs/html/userhtml23x.png differ diff --git a/docs/html/userhtml24x.png b/docs/html/userhtml24x.png new file mode 100644 index 00000000..3c6bb3bd Binary files /dev/null and b/docs/html/userhtml24x.png differ diff --git a/docs/html/userhtml25x.png b/docs/html/userhtml25x.png new file mode 100644 index 00000000..37836c81 Binary files /dev/null and b/docs/html/userhtml25x.png differ diff --git a/docs/html/userhtml26x.png b/docs/html/userhtml26x.png new file mode 100644 index 00000000..75ae8f6b Binary files /dev/null and b/docs/html/userhtml26x.png differ diff --git a/docs/html/userhtml27x.png b/docs/html/userhtml27x.png new file mode 100644 index 00000000..51d8b238 Binary files /dev/null and b/docs/html/userhtml27x.png differ diff --git a/docs/html/userhtml28x.png b/docs/html/userhtml28x.png new file mode 100644 index 00000000..2ea69a48 Binary files /dev/null and b/docs/html/userhtml28x.png differ diff --git a/docs/html/userhtml29x.png b/docs/html/userhtml29x.png new file mode 100644 index 00000000..b890fc38 Binary files /dev/null and b/docs/html/userhtml29x.png differ diff --git a/docs/html/userhtml2x.png b/docs/html/userhtml2x.png new file mode 100644 index 00000000..31c7ec89 Binary files /dev/null and b/docs/html/userhtml2x.png differ diff --git a/docs/html/userhtml30x.png b/docs/html/userhtml30x.png new file mode 100644 index 00000000..059fe3e0 Binary files /dev/null and b/docs/html/userhtml30x.png differ diff --git a/docs/html/userhtml31x.png b/docs/html/userhtml31x.png new file mode 100644 index 00000000..f50412f3 Binary files /dev/null and b/docs/html/userhtml31x.png differ diff --git a/docs/html/userhtml32x.png b/docs/html/userhtml32x.png new file mode 100644 index 00000000..b4a91874 Binary files /dev/null and b/docs/html/userhtml32x.png differ diff --git a/docs/html/userhtml3x.png b/docs/html/userhtml3x.png new file mode 100644 index 00000000..55f1e95a Binary files /dev/null and b/docs/html/userhtml3x.png differ diff --git a/docs/html/userhtml4x.png b/docs/html/userhtml4x.png new file mode 100644 index 00000000..cdca4696 Binary files /dev/null and b/docs/html/userhtml4x.png differ diff --git a/docs/html/userhtml5.html b/docs/html/userhtml5.html new file mode 100644 index 00000000..5a5cae45 --- /dev/null +++ b/docs/html/userhtml5.html @@ -0,0 +1,18 @@ + + + + + + + + + + +
+

1In our prototype implementation we provide sample scatter/gather routines.

+ + diff --git a/docs/html/userhtml5x.png b/docs/html/userhtml5x.png new file mode 100644 index 00000000..403b9248 Binary files /dev/null and b/docs/html/userhtml5x.png differ diff --git a/docs/html/userhtml6x.png b/docs/html/userhtml6x.png new file mode 100644 index 00000000..60d3b2c5 Binary files /dev/null and b/docs/html/userhtml6x.png differ diff --git a/docs/html/userhtml7.html b/docs/html/userhtml7.html new file mode 100644 index 00000000..a7486f7c --- /dev/null +++ b/docs/html/userhtml7.html @@ -0,0 +1,23 @@ + + + + + + + + + + +
+

2This is the normal situation when the pattern of the sparse matrix is symmetric, which is + equivalent to say that the interaction between two variables is reciprocal. If the matrix pattern is + non-symmetric we may have one-way interactions, and these could cause a situation in which a + boundary point is not a halo point for its neighbour.

+ diff --git a/docs/html/userhtml7x.png b/docs/html/userhtml7x.png new file mode 100644 index 00000000..bc555490 Binary files /dev/null and b/docs/html/userhtml7x.png differ diff --git a/docs/html/userhtml8x.png b/docs/html/userhtml8x.png new file mode 100644 index 00000000..c16766fd Binary files /dev/null and b/docs/html/userhtml8x.png differ diff --git a/docs/html/userhtml9x.png b/docs/html/userhtml9x.png new file mode 100644 index 00000000..aaff2dea Binary files /dev/null and b/docs/html/userhtml9x.png differ diff --git a/docs/html/userhtmlli1.html b/docs/html/userhtmlli1.html new file mode 100644 index 00000000..86b796a5 --- /dev/null +++ b/docs/html/userhtmlli1.html @@ -0,0 +1,329 @@ + + +Contents + + + + + + + + +

Contents

+
+ 1 Introduction +
2 General overview +
 2.1 Basic Nomenclature +
 2.2 Library contents +
 2.3 Application structure +
  2.3.1 User-defined index mappings +
 2.4 Programming model +
3 Data Structures and Classes +
 3.1 Descriptor data structure +
  3.1.1 Descriptor Methods +
  3.1.2 get_local_rows — Get number of local rows +
  3.1.3 get_local_cols — Get number of local cols +
  3.1.4 get_global_rows — Get number of global rows +
  3.1.5 get_global_cols — Get number of global cols +
  3.1.6 get_global_indices — Get vector of global indices +
  3.1.7 get_context — Get communication context +
  3.1.8 Clone — clone current object +
  3.1.9 CNV — convert internal storage format +
  3.1.10 psb_cd_get_large_threshold — Get threshold for index mapping switch +
  3.1.11 psb_cd_set_large_threshold — Set threshold for index mapping switch +
  3.1.12 get_p_adjcncy — Get process adjacency list +
  3.1.13 set_p_adjcncy — Set process adjacency list +
  3.1.14 fnd_owner — Find the owner process of a set of indices +
  3.1.15 Named Constants +
 3.2 Sparse Matrix class +
  3.2.1 Sparse Matrix Methods +
  3.2.2 get_nrows — Get number of rows in a sparse matrix +
  3.2.3 get_ncols — Get number of columns in a sparse matrix +
  3.2.4 get_nnzeros — Get number of nonzero elements in a sparse matrix +
  3.2.5 get_size — Get maximum number of nonzero elements in a sparse matrix +
  3.2.6 sizeof — Get memory occupation in bytes of a sparse matrix +
  3.2.7 get_fmt — Short description of the dynamic type +
  3.2.8 is_bld, is_upd, is_asb — Status check +
  3.2.9 is_lower, is_upper, is_triangle, is_unit — Format check +
  3.2.10 cscnv — Convert to a different storage format +
  3.2.11 csclip — Reduce to a submatrix +
  3.2.12 clean_zeros — Eliminate zero coefficients +
  3.2.13 get_diag — Get main diagonal +
  3.2.14 clip_diag — Cut out main diagonal + + + +
  3.2.15 tril — Return the lower triangle +
  3.2.16 triu — Return the upper triangle +
  3.2.17 psb_set_mat_default — Set default storage format +
  3.2.18 clone — Clone current object +
  3.2.19 Named Constants +
 3.3 Dense Vector Data Structure +
  3.3.1 Vector Methods +
  3.3.2 get_nrows — Get number of rows in a dense vector +
  3.3.3 sizeof — Get memory occupation in bytes of a dense vector +
  3.3.4 set — Set contents of the vector +
  3.3.5 get_vect — Get a copy of the vector contents +
  3.3.6 clone — Clone current object +
 3.4 Preconditioner data structure +
 3.5 Heap data structure +
4 Computational routines +
 4.1 psb_geaxpby — General Dense Matrix Sum +
 4.2 psb_gedot — Dot Product +
 4.3 psb_gedots — Generalized Dot Product +
 4.4 psb_normi — Infinity-Norm of Vector +
 4.5 psb_geamaxs — Generalized Infinity Norm +
 4.6 psb_norm1 — 1-Norm of Vector +
 4.7 psb_geasums — Generalized 1-Norm of Vector +
 4.8 psb_norm2 — 2-Norm of Vector +
 4.9 psb_genrm2s — Generalized 2-Norm of Vector +
 4.10 psb_norm1 — 1-Norm of Sparse Matrix +
 4.11 psb_normi — Infinity Norm of Sparse Matrix +
 4.12 psb_spmm — Sparse Matrix by Dense Matrix Product +
 4.13 psb_spsm — Triangular System Solve +
 4.14 psb_gemlt — Entrywise Product +
 4.15 psb_gediv — Entrywise Division +
 4.16 psb_geinv — Entrywise Inversion +
5 Communication routines +
 5.1 psb_halo — Halo Data Communication +
 5.2 psb_ovrl — Overlap Update +
 5.3 psb_gather — Gather Global Dense Matrix +
 5.4 psb_scatter — Scatter Global Dense Matrix +
6 Data management routines +
 6.1 psb_cdall — Allocates a communication descriptor +
 6.2 psb_cdins — Communication descriptor insert routine +
 6.3 psb_cdasb — Communication descriptor assembly routine +
 6.4 psb_cdcpy — Copies a communication descriptor +
 6.5 psb_cdfree — Frees a communication descriptor +
 6.6 psb_cdbldext — Build an extended communication descriptor +
 6.7 psb_spall — Allocates a sparse matrix +
 6.8 psb_spins — Insert a set of coefficients into a sparse matrix +
 6.9 psb_spasb — Sparse matrix assembly routine +
 6.10 psb_spfree — Frees a sparse matrix +
 6.11 psb_sprn — Reinit sparse matrix structure for psblas routines. +
 6.12 psb_geall — Allocates a dense matrix +
 6.13 psb_geins — Dense matrix insertion routine + + + +
 6.14 psb_geasb — Assembly a dense matrix +
 6.15 psb_gefree — Frees a dense matrix +
 6.16 psb_gelp — Applies a left permutation to a dense matrix +
 6.17 psb_glob_to_loc — Global to local indices convertion +
 6.18 psb_loc_to_glob — Local to global indices conversion +
 6.19 psb_is_owned — +
 6.20 psb_owned_index — +
 6.21 psb_is_local — +
 6.22 psb_local_index — +
 6.23 psb_get_boundary — Extract list of boundary elements +
 6.24 psb_get_overlap — Extract list of overlap elements +
 6.25 psb_sp_getrow — Extract row(s) from a sparse matrix +
 6.26 psb_sizeof — Memory occupation +
 6.27 Sorting utilities — +
7 Parallel environment routines +
 7.1 psb_init — Initializes PSBLAS parallel environment +
 7.2 psb_info — Return information about PSBLAS parallel environment +
 7.3 psb_exit — Exit from PSBLAS parallel environment +
 7.4 psb_get_mpi_comm — Get the MPI communicator +
 7.5 psb_get_mpi_rank — Get the MPI rank +
 7.6 psb_wtime — Wall clock timing +
 7.7 psb_barrier — Sinchronization point parallel environment +
 7.8 psb_abort — Abort a computation +
 7.9 psb_bcast — Broadcast data +
 7.10 psb_sum — Global sum +
 7.11 psb_max — Global maximum +
 7.12 psb_min — Global minimum +
 7.13 psb_amx — Global maximum absolute value +
 7.14 psb_amn — Global minimum absolute value +
 7.15 psb_nrm2 — Global 2-norm reduction +
 7.16 psb_snd — Send data +
 7.17 psb_rcv — Receive data +
8 Error handling +
 8.1 psb_errpush +
 8.2 psb_error +
 8.3 psb_set_errverbosity +
 8.4 psb_set_erraction +
9 Utilities +
 9.1 hb_read — Read a sparse matrix from a file in the Harwell–Boeing format +
 9.2 hb_write — Write a sparse matrix to a file in the Harwell–Boeing format +
 9.3 mm_mat_read — Read a sparse matrix from a file in the MatrixMarket format +
 9.4 mm_array_read — Read a dense array from a file in the MatrixMarket format +
 9.5 mm_mat_write — Write a sparse matrix to a file in the MatrixMarket format +
 9.6 mm_array_write — Write a dense array from a file in the MatrixMarket format +
10 Preconditioner routines +
 10.1 init — Initialize a preconditioner +
 10.2 build — Builds a preconditioner +
 10.3 apply — Preconditioner application routine +
 10.4 descr — Prints a description of current preconditioner +
 10.5 clone — clone current preconditioner + + + +
 10.6 free — Free a preconditioner +
11 Iterative Methods +
 11.1 psb_krylov — Krylov Methods Driver Routine +
+ + + + + + + + + + +

+ diff --git a/docs/html/userhtmlli2.html b/docs/html/userhtmlli2.html new file mode 100644 index 00000000..78ee7ed1 --- /dev/null +++ b/docs/html/userhtmlli2.html @@ -0,0 +1,186 @@ + + +References + + + + + + + +

+

References

+

+

+

+ [1]    + D. Barbieri, V. Cardellini, S. Filippone and D. Rouson Design Patterns + for Scientific Computations on Sparse Matrices, HPSS 2011, Algorithms + and Programming Tools for Next-Generation High-Performance Scientific + Software, Bordeaux, Sep. 2011 +

+

+ [2]   G. Bella, S. Filippone, A. De Maio and M. Testa, A Simulation Model + for Forest Fires, in J. Dongarra, K. Madsen, J. Wasniewski, editors, + Proceedings of PARA 04 Workshop on State of the Art in Scientific + Computing, pp. 546–553, Lecture Notes in Computer Science, Springer, + 2005. +

+

+ [3]   A. Buttari, D. di Serafino, P. D’Ambra, S. Filippone, 2LEV-D2P4: + a package of high-performance preconditioners, Applicable Algebra in + Engineering, Communications and Computing, Volume 18, Number 3, May, + 2007, pp. 223-239 +

+

+ [4]   P. D’Ambra, S. Filippone, D. Di Serafino On the Development + of PSBLAS-based Parallel Two-level Schwarz Preconditioners Applied + Numerical Mathematics, Elsevier Science, Volume 57, Issues 11-12, + November-December 2007, Pages 1181-1196. +

+

+ [5]   Dongarra, J. J., DuCroz, J., Hammarling, S. and Hanson, R., An + Extended Set of Fortran Basic Linear Algebra Subprograms, ACM Trans. + Math. Softw. vol. 14, 1–17, 1988. +

+

+ [6]   Dongarra, J., DuCroz, J., Hammarling, S. and Duff, I., A Set of level + 3 Basic Linear Algebra Subprograms, ACM Trans. Math. Softw. vol. 16, + 1–17, 1990. + + + +

+

+ [7]   J. J. Dongarra and R. C. Whaley, A User’s Guide to the BLACS + v. 1.1, Lapack Working Note 94, Tech. Rep. UT-CS-95-281, University of + Tennessee, March 1995 (updated May 1997). +

+

+ [8]   I. Duff, M. Marrone, G. Radicati and C. Vittoli, Level 3 Basic Linear + Algebra Subprograms for Sparse Matrices: a User Level Interface, ACM + Transactions on Mathematical Software, 23(3), pp. 379–401, 1997. +

+

+ [9]   I. Duff, M. Heroux and R. Pozo, An Overview of the Sparse Basic + Linear Algebra Subprograms: the New Standard from the BLAS Technical + Forum, ACM Transactions on Mathematical Software, 28(2), pp. 239–267, + 2002. +

+

+ [10]   S. Filippone and M. Colajanni, PSBLAS: A Library for Parallel + Linear Algebra Computation on Sparse Matrices, ACM Transactions on + Mathematical Software, 26(4), pp. 527–550, 2000. +

+

+ [11]   S. Filippone and A. Buttari, Object-Oriented Techniques for Sparse + Matrix Computations in Fortran 2003, ACM Transactions on Mathematical + Software, 38(4), 2012. +

+

+ [12]   S. Filippone, P. D’Ambra, M. Colajanni, Using a Parallel Library + of Sparse Linear Algebra in a Fluid Dynamics Applications Code on + Linux Clusters, in G. Joubert, A. Murli, F. Peters, M. Vanneschi, editors, + Parallel Computing - Advances & Current Issues, pp. 441–448, Imperial + College Press, 2002. +

+

+ [13]    Gamma, E., Helm, R., Johnson, R., and Vlissides, J. 1995. Design + Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley. +

+

+ [14]   Karypis, G. and Kumar, V., METIS: Unstructured Graph Partitioning + and Sparse Matrix Ordering System. Minneapolis, MN 55455: University + of Minnesota, Department of Computer Science, 1995. Internet Address: + http://www.cs.umn.edu/~karypis. + + + +

+

+ [15]   Lawson, C., Hanson, R., Kincaid, D. and Krogh, F., Basic Linear + Algebra Subprograms for Fortran usage, ACM Trans. Math. Softw. vol. 5, + 38–329, 1979. +

+

+ [16]   Machiels, L. and Deville, M. Fortran 90: An entry to object-oriented + programming for the solution of partial differential equations. ACM Trans. + Math. Softw. vol. 23, 32–49. +

+

+ [17]   Metcalf, M., Reid, J. and Cohen, M. Fortran 95/2003 explained. Oxford + University Press, 2004. +

+

+ [18]   Rouson, D.W.I., Xia, J., Xu, X.: Scientific Software Design: The + Object-Oriented Way. Cambridge University Press (2011) +

+

+ [19]   M. Snir, S. Otto, S. Huss-Lederman, D. Walker and J. Dongarra, + MPI: The Complete Reference. Volume 1 - The MPI Core, second edition, + MIT Press, 1998.

+ + + + +

+ diff --git a/docs/html/userhtmlse1.html b/docs/html/userhtmlse1.html new file mode 100644 index 00000000..4ffa201d --- /dev/null +++ b/docs/html/userhtmlse1.html @@ -0,0 +1,96 @@ + + +Introduction + + + + + + + +

+

1 Introduction

+

The PSBLAS library, developed with the aim to facilitate the parallelization of +computationally intensive scientific applications, is designed to address parallel +implementation of iterative solvers for sparse linear systems through the distributed +memory paradigm. It includes routines for multiplying sparse matrices by dense +matrices, solving block diagonal systems with triangular diagonal entries, +preprocessing sparse matrices, and contains additional routines for dense matrix +operations. The current implementation of PSBLAS addresses a distributed memory +execution model operating with message passing. +

The PSBLAS library version 3 is implemented in the Fortran 2003 [17] +programming language, with reuse and/or adaptation of existing Fortran 77 and +Fortran 95 software, plus a handful of C routines. +

The use of Fortran 2003 offers a number of advantages over Fortran 95, mostly in +the handling of requirements for evolution and adaptation of the library to new +computing architectures and integration of new algorithms. For a detailed discussion +of our design see [11]; other works discussing advanced programming in Fortran 2003 +include [118]; sufficient support for Fortran 2003 is now available from many +compilers, including the GNU Fortran compiler from the Free Software Foundation +(as of version 4.8). +

Previous approaches have been based on mixing Fortran 95, with its support for +object-based design, with other languages; these have been advocated by a number of +authors, e.g. [16]. Moreover, the Fortran 95 facilities for dynamic memory +management and interface overloading greatly enhance the usability of the PSBLAS +subroutines. In this way, the library can take care of runtime memory requirements +that are quite difficult or even impossible to predict at implementation or +compilation time. +

The presentation of the PSBLAS library follows the general structure of the +proposal for serial Sparse BLAS [89], which in its turn is based on the proposal for +BLAS on dense matrices [1556]. +

The applicability of sparse iterative solvers to many different areas causes some +terminology problems because the same concept may be denoted through different +names depending on the application area. The PSBLAS features presented in this +document will be discussed referring to a finite difference discretization of a Partial +Differential Equation (PDE). However, the scope of the library is wider than that: for +example, it can be applied to finite element discretizations of PDEs, and even to +different classes of problems such as nonlinear optimization, for example in optimal +control problems. +

The design of a solver for sparse linear systems is driven by many conflicting +objectives, such as limiting occupation of storage resources, exploiting regularities in +the input data, exploiting hardware characteristics of the parallel platform. To +achieve an optimal communication to computation ratio on distributed memory +machines it is essential to keep the data locality as high as possible; this can be +done through an appropriate data allocation strategy. The choice of the + + + +preconditioner is another very important factor that affects efficiency of the +implemented application. Optimal data distribution requirements for a given +preconditioner may conflict with distribution requirements of the rest of the solver. +Finding the optimal trade-off may be very difficult because it is application +dependent. Possible solutions to these problems and other important inputs to the +development of the PSBLAS software package have come from an established +experience in applying the PSBLAS solvers to computational fluid dynamics +applications. + + + +

+

+ diff --git a/docs/html/userhtmlse10.html b/docs/html/userhtmlse10.html new file mode 100644 index 00000000..1f076f9c --- /dev/null +++ b/docs/html/userhtmlse10.html @@ -0,0 +1,64 @@ + + +Preconditioner routines + + + + + + + +

+

10 Preconditioner routines

+

The base PSBLAS library contains the implementation of two simple preconditioning +techniques: +

+

The supporting data type and subroutine interfaces are defined in the module +psb_prec_mod. The old interfaces psb_precinit and psb_precbld are still +supported for backward compatibility + + + +

+  10.1 init — Initialize a preconditioner +
 10.2 build — Builds a preconditioner +
 10.3 apply — Preconditioner application routine +
 10.4 descr — Prints a description of current preconditioner +
 10.5 clone — clone current preconditioner +
 10.6 free — Free a preconditioner +
+ + + + + + + + + +

+ diff --git a/docs/html/userhtmlse11.html b/docs/html/userhtmlse11.html new file mode 100644 index 00000000..9199c4cb --- /dev/null +++ b/docs/html/userhtmlse11.html @@ -0,0 +1,41 @@ + + +Iterative Methods + + + + + + + +

+

11 Iterative Methods

+

In this chapter we provide routines for preconditioners and iterative methods. +The interfaces for Krylov subspace methods are available in the module +psb_krylov_mod. + + + +

+  11.1 psb_krylov — Krylov Methods Driver Routine +
+ + + + +

+ diff --git a/docs/html/userhtmlse2.html b/docs/html/userhtmlse2.html new file mode 100644 index 00000000..58beb7ad --- /dev/null +++ b/docs/html/userhtmlse2.html @@ -0,0 +1,125 @@ + + +General overview + + + + + + + +

+

2 General overview

+

The PSBLAS library is designed to handle the implementation of iterative solvers for +sparse linear systems on distributed memory parallel computers. The system +coefficient matrix A must be square; it may be real or complex, nonsymmetric, and +its sparsity pattern needs not to be symmetric. The serial computation parts are +based on the serial sparse BLAS, so that any extension made to the data structures +of the serial kernels is available to the parallel version. The overall design and +parallelization strategy have been influenced by the structure of the ScaLAPACK +parallel library. The layered structure of the PSBLAS library is shown in figure 1; +lower layers of the library indicate an encapsulation relationship with upper +layers. The ongoing discussion focuses on the Fortran 2003 layer immediately +below the application layer. The serial parts of the computation on each +process are executed through calls to the serial sparse BLAS subroutines. In a +similar way, the inter-process message exchanges are encapsulated in an +applicaiton layer that has been strongly inspired by the Basic Linear Algebra +Communication Subroutines (BLACS) library [7]. Usually there is no need to deal +directly with MPI; however, in some cases, MPI routines are used directly +to improve efficiency. For further details on our communication layer see +Sec. 7. +


+ + + + + + + +
+

+

PIC

+
Figure 1: PSBLAS library components hierarchy.
+ + + +


+

The type of linear system matrices that we address typically arise in +the numerical solution of PDEs; in such a context, it is necessary to pay +special attention to the structure of the problem from which the application +originates. The nonzero pattern of a matrix arising from the discretization of a +PDE is influenced by various factors, such as the shape of the domain, the +discretization strategy, and the equation/unknown ordering. The matrix itself can be +interpreted as the adjacency matrix of the graph associated with the discretization +mesh. +

The distribution of the coefficient matrix for the linear system is based on the +“owner computes” rule: the variable associated to each mesh point is assigned to a +process that will own the corresponding row in the coefficient matrix and will +carry out all related computations. This allocation strategy is equivalent to a +partition of the discretization mesh into sub-domains. Our library supports any +distribution that keeps together the coefficients of each matrix row; there are no +other constraints on the variable assignment. This choice is consistent with +simple data distributions such as CYCLIC(N) and BLOCK, as well as completely +arbitrary assignments of equation indices to processes. In particular it is +consistent with the usage of graph partitioning tools commonly available in +the literature, e.g. METIS [14]. Dense vectors conform to sparse matrices, +that is, the entries of a vector follow the same distribution of the matrix +rows. +

We assume that the sparse matrix is built in parallel, where each process generates +its own portion. We never require that the entire matrix be available on a single +node. However, it is possible to hold the entire matrix in one process and distribute it +explicitly1 , +even though the resulting memory bottleneck would make this option unattractive in +most cases. +

+  2.1 Basic Nomenclature +
 2.2 Library contents +
 2.3 Application structure +
  2.3.1 User-defined index mappings +
 2.4 Programming model +
+ + + + + + + +

+ diff --git a/docs/html/userhtmlse3.html b/docs/html/userhtmlse3.html new file mode 100644 index 00000000..d6b907b1 --- /dev/null +++ b/docs/html/userhtmlse3.html @@ -0,0 +1,196 @@ + + +Data Structures and Classes + + + + + + + +

+

3 Data Structures and Classes

+

In this chapter we illustrate the data structures used for definition of routines +interfaces. They include data structures for sparse matrices, communication +descriptors and preconditioners. +

All the data types and the basic subroutine interfaces related to descriptors and +sparse matrices are defined in the module psb_base_mod; this will have to be +included by every user subroutine that makes use of the library. The preconditioners +are defined in the module psb_prec_mod +

Integer, real and complex data types are parametrized with a kind type defined in +the library as follows: +

+psb_spk_
Kind parameter for short precision real and complex data; + corresponds to a REAL declaration and is normally 4 bytes; +
+psb_dpk_
Kind parameter for long precision real and complex data; + corresponds to a DOUBLE PRECISION declaration and is normally 8 bytes; +
+psb_mpk_
Kind parameter for 4-bytes integer data, as is always used by MPI; +
+psb_epk_
Kind parameter for 8-bytes integer data, as is always used by the + sizeof methods; +
+psb_ipk_
Kind parameter for “local” integer indices and data; with default + build options this is a 4 bytes integer; +
+psb_lpk_
Kind parameter for “global” integer indices and data; with default + build options this is an 8 bytes integer;
+

The integer kinds for local and global indices can be chosen at configure time to hold 4 +or 8 bytes, with the global indices at least as large as the local ones. Together with +the classes attributes we also discuss their methods. Most methods detailed here only +act on the local variable, i.e. their action is purely local and asynchronous unless +otherwise stated. The list of methods here is not completely exhaustive; many +methods, especially those that alter the contents of the various objects, are usually +not needed by the end-user, and therefore are described in the developer’s +documentation. + + + +

+

+  3.1 Descriptor data structure +
  3.1.1 Descriptor Methods +
  3.1.2 get_local_rows — Get number of local rows +
  3.1.3 get_local_cols — Get number of local cols +
  3.1.4 get_global_rows — Get number of global rows +
  3.1.5 get_global_cols — Get number of global cols +
  3.1.6 get_global_indices — Get vector of global indices +
  3.1.7 get_context — Get communication context +
  3.1.8 Clone — clone current object +
  3.1.9 CNV — convert internal storage format +
  3.1.10 psb_cd_get_large_threshold — Get threshold for index mapping switch +
  3.1.11 psb_cd_set_large_threshold — Set threshold for index mapping switch +
  3.1.12 get_p_adjcncy — Get process adjacency list +
  3.1.13 set_p_adjcncy — Set process adjacency list +
  3.1.14 fnd_owner — Find the owner process of a set of indices +
  3.1.15 Named Constants +
 3.2 Sparse Matrix class +
  3.2.1 Sparse Matrix Methods +
  3.2.2 get_nrows — Get number of rows in a sparse matrix +
  3.2.3 get_ncols — Get number of columns in a sparse matrix +
  3.2.4 get_nnzeros — Get number of nonzero elements in a sparse matrix +
  3.2.5 get_size — Get maximum number of nonzero elements in a sparse matrix +
  3.2.6 sizeof — Get memory occupation in bytes of a sparse matrix +
  3.2.7 get_fmt — Short description of the dynamic type +
  3.2.8 is_bld, is_upd, is_asb — Status check +
  3.2.9 is_lower, is_upper, is_triangle, is_unit — Format check +
  3.2.10 cscnv — Convert to a different storage format +
  3.2.11 csclip — Reduce to a submatrix +
  3.2.12 clean_zeros — Eliminate zero coefficients +
  3.2.13 get_diag — Get main diagonal +
  3.2.14 clip_diag — Cut out main diagonal +
  3.2.15 tril — Return the lower triangle +
  3.2.16 triu — Return the upper triangle +
  3.2.17 psb_set_mat_default — Set default storage format +
  3.2.18 clone — Clone current object +
  3.2.19 Named Constants +
 3.3 Dense Vector Data Structure +
  3.3.1 Vector Methods +
  3.3.2 get_nrows — Get number of rows in a dense vector +
  3.3.3 sizeof — Get memory occupation in bytes of a dense vector +
  3.3.4 set — Set contents of the vector +
  3.3.5 get_vect — Get a copy of the vector contents +
  3.3.6 clone — Clone current object +
 3.4 Preconditioner data structure +
 3.5 Heap data structure +
+ + + + + + + + +

+ diff --git a/docs/html/userhtmlse4.html b/docs/html/userhtmlse4.html new file mode 100644 index 00000000..af168dc4 --- /dev/null +++ b/docs/html/userhtmlse4.html @@ -0,0 +1,84 @@ + + +Computational routines + + + + + + + +

+

4 Computational routines

+ + + +
+  4.1 psb_geaxpby — General Dense Matrix Sum +
 4.2 psb_gedot — Dot Product +
 4.3 psb_gedots — Generalized Dot Product +
 4.4 psb_normi — Infinity-Norm of Vector +
 4.5 psb_geamaxs — Generalized Infinity Norm +
 4.6 psb_norm1 — 1-Norm of Vector +
 4.7 psb_geasums — Generalized 1-Norm of Vector +
 4.8 psb_norm2 — 2-Norm of Vector +
 4.9 psb_genrm2s — Generalized 2-Norm of Vector +
 4.10 psb_norm1 — 1-Norm of Sparse Matrix +
 4.11 psb_normi — Infinity Norm of Sparse Matrix +
 4.12 psb_spmm — Sparse Matrix by Dense Matrix Product +
 4.13 psb_spsm — Triangular System Solve +
 4.14 psb_gemlt — Entrywise Product +
 4.15 psb_gediv — Entrywise Division +
 4.16 psb_geinv — Entrywise Inversion +
+ + + + + + + + + + + + + + + + + + + +

+ diff --git a/docs/html/userhtmlse5.html b/docs/html/userhtmlse5.html new file mode 100644 index 00000000..4cb38373 --- /dev/null +++ b/docs/html/userhtmlse5.html @@ -0,0 +1,52 @@ + + +Communication routines + + + + + + + +

+

5 Communication routines

+

The routines in this chapter implement various global communication operators on +vectors associated with a discretization mesh. For auxiliary communication routines +not tied to a discretization space see 6. + + + +

+  5.1 psb_halo — Halo Data Communication +
 5.2 psb_ovrl — Overlap Update +
 5.3 psb_gather — Gather Global Dense Matrix +
 5.4 psb_scatter — Scatter Global Dense Matrix +
+ + + + + + + +

+ diff --git a/docs/html/userhtmlse6.html b/docs/html/userhtmlse6.html new file mode 100644 index 00000000..0eff0926 --- /dev/null +++ b/docs/html/userhtmlse6.html @@ -0,0 +1,115 @@ + + +Data management routines + + + + + + + +

+

6 Data management routines

+

+

+  6.1 psb_cdall — Allocates a communication descriptor +
 6.2 psb_cdins — Communication descriptor insert routine +
 6.3 psb_cdasb — Communication descriptor assembly routine +
 6.4 psb_cdcpy — Copies a communication descriptor +
 6.5 psb_cdfree — Frees a communication descriptor +
 6.6 psb_cdbldext — Build an extended communication descriptor +
 6.7 psb_spall — Allocates a sparse matrix +
 6.8 psb_spins — Insert a set of coefficients into a sparse matrix +
 6.9 psb_spasb — Sparse matrix assembly routine +
 6.10 psb_spfree — Frees a sparse matrix +
 6.11 psb_sprn — Reinit sparse matrix structure for psblas routines. +
 6.12 psb_geall — Allocates a dense matrix +
 6.13 psb_geins — Dense matrix insertion routine +
 6.14 psb_geasb — Assembly a dense matrix +
 6.15 psb_gefree — Frees a dense matrix +
 6.16 psb_gelp — Applies a left permutation to a dense matrix +
 6.17 psb_glob_to_loc — Global to local indices convertion +
 6.18 psb_loc_to_glob — Local to global indices conversion +
 6.19 psb_is_owned — +
 6.20 psb_owned_index — +
 6.21 psb_is_local — +
 6.22 psb_local_index — +
 6.23 psb_get_boundary — Extract list of boundary elements +
 6.24 psb_get_overlap — Extract list of overlap elements +
 6.25 psb_sp_getrow — Extract row(s) from a sparse matrix +
 6.26 psb_sizeof — Memory occupation +
 6.27 Sorting utilities — +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ diff --git a/docs/html/userhtmlse7.html b/docs/html/userhtmlse7.html new file mode 100644 index 00000000..e08cc891 --- /dev/null +++ b/docs/html/userhtmlse7.html @@ -0,0 +1,87 @@ + + +Parallel environment routines + + + + + + + +

+

7 Parallel environment routines

+ + + +
+  7.1 psb_init — Initializes PSBLAS parallel environment +
 7.2 psb_info — Return information about PSBLAS parallel environment +
 7.3 psb_exit — Exit from PSBLAS parallel environment +
 7.4 psb_get_mpi_comm — Get the MPI communicator +
 7.5 psb_get_mpi_rank — Get the MPI rank +
 7.6 psb_wtime — Wall clock timing +
 7.7 psb_barrier — Sinchronization point parallel environment +
 7.8 psb_abort — Abort a computation +
 7.9 psb_bcast — Broadcast data +
 7.10 psb_sum — Global sum +
 7.11 psb_max — Global maximum +
 7.12 psb_min — Global minimum +
 7.13 psb_amx — Global maximum absolute value +
 7.14 psb_amn — Global minimum absolute value +
 7.15 psb_nrm2 — Global 2-norm reduction +
 7.16 psb_snd — Send data +
 7.17 psb_rcv — Receive data +
+ + + + + + + + + + + + + + + + + + + + +

+ diff --git a/docs/html/userhtmlse8.html b/docs/html/userhtmlse8.html new file mode 100644 index 00000000..9cd1aec0 --- /dev/null +++ b/docs/html/userhtmlse8.html @@ -0,0 +1,418 @@ + + +Error handling + + + + + + + +

+

8 Error handling

+

The PSBLAS library error handling policy has been completely rewritten in version +2.0. The idea behind the design of this new error handling strategy is to keep error +messages on a stack allowing the user to trace back up to the point where the first +error message has been generated. Every routine in the PSBLAS-2.0 library has, as +last non-optional argument, an integer info variable; whenever, inside the routine, an +error is detected, this variable is set to a value corresponding to a specific +error code. Then this error code is also pushed on the error stack and then +either control is returned to the caller routine or the execution is aborted, +depending on the users choice. At the time when the execution is aborted, +an error message is printed on standard output with a level of verbosity +than can be chosen by the user. If the execution is not aborted, then, the +caller routine checks the value returned in the info variable and, if not +zero, an error condition is raised. This process continues on all the levels of +nested calls until the level where the user decides to abort the program +execution. +

Figure 9 shows the layout of a generic psb_foo routine with respect to the +PSBLAS-2.0 error handling policy. It is possible to see how, whenever an error +condition is detected, the info variable is set to the corresponding error code which +is, then, pushed on top of the stack by means of the psb_errpush. An error condition +may be directly detected inside a routine or indirectly checking the error code +returned returned by a called routine. Whenever an error is encountered, after it has +been pushed on stack, the program execution skips to a point where the error +condition is handled; the error condition is handled either by returning control to the +caller routine or by calling the psb\_error routine which prints the content of +the error stack and aborts the program execution, according to the choice +made by the user with psb_set_erraction. The default is to print the error +and terminate the program, but the user may choose to handle the error +explicitly. +


+ + + + + + + +
+

+

+
subroutine psb_foo(some args, info) 
   ... 
   if(error detected) then 
      info=errcode1 
      call psb_errpush(psb_foo, errcode1) 
      goto 9999 
   end if 
   ... 
   call psb_bar(some args, info) 
   if(info .ne. zero) then 
      info=errcode2 
      call psb_errpush(psb_foo, errcode2) 
      goto 9999 
   end if 
   ... 
9999 continue 
   if (err_act .eq. act_abort) then 
     call psb_error(icontxt) 
     return 
   else 
     return 
   end if 
 
end subroutine psb_foo +
+
+
Figure 9: The layout of a generic psb_foo routine with respect to PSBLAS-2.0 +error handling policy.
+ + + +


+

Figure 10 reports a sample error message generated by the PSBLAS-2.0 +library. This error has been generated by the fact that the user has chosen the +invalid “FOO” storage format to represent the sparse matrix. From this +error message it is possible to see that the error has been detected inside +the psb_cest subroutine called by psb_spasb ... by process 0 (i.e. the root +process). +


+ + + + + + + +
+

+

+========================================================== + 
Process: 0.  PSBLAS Error (4010) in subroutine: df_sample + 
Error from call to subroutine mat dist + 
========================================================== + 
Process: 0.  PSBLAS Error (4010) in subroutine: mat_distv + 
Error from call to subroutine psb_spasb + 
========================================================== + 
Process: 0.  PSBLAS Error (4010) in subroutine: psb_spasb + 
Error from call to subroutine psb_cest + 
========================================================== + 
Process: 0.  PSBLAS Error (136) in subroutine: psb_cest + 
Format FOO is unknown + 
========================================================== + 
Aborting... +
+

+
+
Figure 10: A sample PSBLAS-2.0 error message. Process 0 detected an error +condition inside the psb_cest subroutine
+ + + +


+ + + +
+  8.1 psb_errpush +
 8.2 psb_error +
 8.3 psb_set_errverbosity +
 8.4 psb_set_erraction +
+ + + + + + + +

+ diff --git a/docs/html/userhtmlse9.html b/docs/html/userhtmlse9.html new file mode 100644 index 00000000..466b3d20 --- /dev/null +++ b/docs/html/userhtmlse9.html @@ -0,0 +1,57 @@ + + +Utilities + + + + + + + +

+

9 Utilities

+

We have some utilities available for input and output of sparse matrices; the +interfaces to these routines are available in the module psb_util_mod. + + + +

+  9.1 hb_read — Read a sparse matrix from a file in the Harwell–Boeing format +
 9.2 hb_write — Write a sparse matrix to a file in the Harwell–Boeing format +
 9.3 mm_mat_read — Read a sparse matrix from a file in the MatrixMarket format +
 9.4 mm_array_read — Read a dense array from a file in the MatrixMarket format +
 9.5 mm_mat_write — Write a sparse matrix to a file in the MatrixMarket format +
 9.6 mm_array_write — Write a dense array from a file in the MatrixMarket format +
+ + + + + + + + + +

+ diff --git a/docs/html/userhtmlsu1.html b/docs/html/userhtmlsu1.html new file mode 100644 index 00000000..eb0b2090 --- /dev/null +++ b/docs/html/userhtmlsu1.html @@ -0,0 +1,148 @@ + + +Basic Nomenclature + + + + + + + +

+

2.1 Basic Nomenclature

+

Our computational model implies that the data allocation on the parallel distributed +memory machine is guided by the structure of the physical model, and specifically by +the discretization mesh of the PDE. +

Each point of the discretization mesh will have (at least) one associated +equation/variable, and therefore one index. We say that point i depends on point j if +the equation for a variable associated with i contains a term in j, or equivalently if + + + +aij0. After the partition of the discretization mesh into sub-domains assigned +to the parallel processes, we classify the points of a given sub-domain as +following. +

+Internal.
An internal point of a given domain depends only on points of the + same domain. If all points of a domain are assigned to one process, then + a computational step (e.g., a matrix-vector product) of the equations + associated with the internal points requires no data items from other + domains and no communications. +
+Boundary.
A point of a given domain is a boundary point if it depends on + points belonging to other domains. +
+Halo.
A halo point for a given domain is a point belonging to another domain + such that there is a boundary point which depends on it. Whenever performing + a computational step, such as a matrix-vector product, the values associated + with halo points are requested from other domains. A boundary point of a + given domain is usually a halo point for some other domain2 ; + therefore the cardinality of the boundary points set denotes the amount + of data sent to other domains. +
+Overlap.
An overlap point is a boundary point assigned to multiple domains. + Any operation that involves an overlap point has to be replicated for each + assignment.
+

Overlap points do not usually exist in the basic data distributions; however they are a +feature of Domain Decomposition Schwarz preconditioners which are the subject of +related research work [43]. +

We denote the sets of internal, boundary and halo points for a given subdomain +by I, B and H. Each subdomain is assigned to one process; each process usually owns +one subdomain, although the user may choose to assign more than one subdomain to +a process. If each process i owns one subdomain, the number of rows in +the local sparse matrix is |Ii| + |Bi|, and the number of local columns (i.e. +those for which there exists at least one non-zero entry in the local rows) is +|Ii| + |Bi| + |Hi|. +


+ + + + + + + +
+

+

PIC

+
Figure 2: Point classfication.
+ + + +


+

This classification of mesh points guides the naming scheme that we adopted in +the library internals and in the data structures. We explicitly note that “Halo” points +are also often called “ghost” points in the literature. + + + +

+

+ diff --git a/docs/html/userhtmlsu10.html b/docs/html/userhtmlsu10.html new file mode 100644 index 00000000..e1a66a1f --- /dev/null +++ b/docs/html/userhtmlsu10.html @@ -0,0 +1,233 @@ + + +psb_geaxpby — General Dense Matrix Sum + + + + + + + +

+

4.1 psb_geaxpby — General Dense Matrix Sum

+

This subroutine is an interface to the computational kernel for dense matrix +sum: +

+y ← α x+ βy
+
+

+ + + +

+call psb_geaxpby(alpha, x, beta, y, desc_a, info) +
+

+

+ + + +


+ + + +
+

+

+ + + + +


x, y, α, β Subroutine


Short Precision Real psb_geaxpby
Long Precision Real psb_geaxpby
Short Precision Complexpsb_geaxpby
Long Precision Complex psb_geaxpby


+
Table 1: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+alpha
the scalar α.
Scope: global
Type: required
Intent: in.
Specified as: a number of the data type indicated in Table 1. +
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 1. The + rank of x must be the same of y. +
+beta
the scalar β.
Scope: global
Type: required
Intent: in.
Specified as: a number of the data type indicated in Table 1. +
+y
the local portion of the global dense matrix y.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of the type indicated in Table 1. + The rank of y must be the same of x. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+
+On Return
+ + + +
+y
the local portion of result submatrix y.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of the type indicated in Table 1. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu11.html b/docs/html/userhtmlsu11.html new file mode 100644 index 00000000..926766df --- /dev/null +++ b/docs/html/userhtmlsu11.html @@ -0,0 +1,249 @@ + + +psb_gedot — Dot Product + + + + + + + +

+

4.2 psb_gedot — Dot Product

+

This function computes dot product between two vectors x and y.
If x and y are real vectors it computes dot-product as: +

+       T
+dot ← x y
+
+

Else if x and y are complex vectors then it computes dot-product as: +

+dot ← xHy
+
+

+ + + +

+psb_gedot(x, y, desc_a, info [,global]) +
+

+ + + +


+ + + +
+

+

+ + + + +


dot, x, y Function


Short Precision Real psb_gedot
Long Precision Real psb_gedot
Short Precision Complexpsb_gedot
Long Precision Complex psb_gedot


+
Table 2: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 2. The + rank of x must be the same of y. +
+y
the local portion of global dense matrix y.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 2. The + rank of y must be the same of x. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+global
Specifies whether the computation should include the global reduction + across all processes.
Scope: global
Type: optional.
Intent: in.
Specified as: a logical scalar. Default: global=.true.
+
+On Return
+
+Function value
is the dot product of vectors x and y.
Scope: global unless the optional variable global=.false. has been + specified
Specified as: a number of the data type indicated in Table 2. + + + +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. The computation of a global result requires a global communication, which + entails a significant overhead. It may be necessary and/or advisable to + compute multiple dot products at the same time; in this case, it is + possible to improve the runtime efficiency by using the following scheme: + +
        vres(1) = psb_gedot(x1,y1,desc_a,info,global=.false.) 
        vres(2) = psb_gedot(x2,y2,desc_a,info,global=.false.) 
        vres(3) = psb_gedot(x3,y3,desc_a,info,global=.false.) 
        call psb_sum(ictxt,vres(1:3)) + +
    +

    In this way the global communication, which for small sizes is a latency-bound + operation, is invoked only once.

+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu12.html b/docs/html/userhtmlsu12.html new file mode 100644 index 00000000..2c3cf7f8 --- /dev/null +++ b/docs/html/userhtmlsu12.html @@ -0,0 +1,208 @@ + + +psb_gedots — Generalized Dot Product + + + + + + + +

+

4.3 psb_gedots — Generalized Dot Product

+

This subroutine computes a series of dot products among the columns of two dense +matrices x and y: +

+            T
+res(i) ← x(:,i) y(:,i)
+
+

If the matrices are complex, then the usual convention applies, i.e. the conjugate +transpose of x is used. If x and y are of rank one, then res is a scalar, else it is a rank +one array. + + + +

+call psb_gedots(res, x, y, desc_a, info) +
+

+ + + +


+ + + +
+

+

+ + + + +


res, x, y Subroutine


Short Precision Real psb_gedots
Long Precision Real psb_gedots
Short Precision Complexpsb_gedots
Long Precision Complex psb_gedots


+
Table 3: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 3. The + rank of x must be the same of y. +
+y
the local portion of global dense matrix y.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 3. The + rank of y must be the same of x. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+On Return
+
+res
is the dot product of vectors x and y.
Scope: global
Intent: out.
Specified as: a number or a rank-one array of the data type indicated in + Table 2. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu13.html b/docs/html/userhtmlsu13.html new file mode 100644 index 00000000..db09267b --- /dev/null +++ b/docs/html/userhtmlsu13.html @@ -0,0 +1,223 @@ + + +psb_normi — Infinity-Norm of Vector + + + + + + + +

+

4.4 psb_normi — Infinity-Norm of Vector

+

This function computes the infinity-norm of a vector x.
If x is a real vector it computes infinity norm as: +

+amax  ← maxi |xi|
+
+

else if x is a complex vector then it computes the infinity-norm as: +

+amax ← maxi (|re(xi)|+ |im(xi)|)
+
+

+ + + +

+psb_geamax(x, desc_a, info [,global]) + 
psb_normi(x, desc_a, info [,global]) +
+

+

+ + + +


+ + + +
+

+

+ + + +



amax x Function



Short Precision RealShort Precision Real psb_geamax
Long Precision Real Long Precision Real psb_geamax
Short Precision RealShort Precision Complexpsb_geamax
Long Precision Real Long Precision Complex psb_geamax



+
Table 4: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 4. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+global
Specifies whether the computation should include the global reduction + across all processes.
Scope: global
Type: optional.
Intent: in.
Specified as: a logical scalar. Default: global=.true.
+
+On Return
+
+Function value
is the infinity norm of vector x.
Scope: global unless the optional variable global=.false. has been + specified
Specified as: a long precision real number. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes + + + +

    +
  1. The computation of a global result requires a global communication, which + entails a significant overhead. It may be necessary and/or advisable to compute + multiple norms at the same time; in this case, it is possible to improve the + runtime efficiency by using the following scheme: +
        vres(1) = psb_geamax(x1,desc_a,info,global=.false.) 
        vres(2) = psb_geamax(x2,desc_a,info,global=.false.) 
        vres(3) = psb_geamax(x3,desc_a,info,global=.false.) 
        call psb_amx(ictxt,vres(1:3)) + +
    +

    In this way the global communication, which for small sizes is a latency-bound + operation, is invoked only once.

+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu14.html b/docs/html/userhtmlsu14.html new file mode 100644 index 00000000..5b9f01c1 --- /dev/null +++ b/docs/html/userhtmlsu14.html @@ -0,0 +1,177 @@ + + +psb_geamaxs — Generalized Infinity Norm + + + + + + + +

+

4.5 psb_geamaxs — Generalized Infinity Norm

+

This subroutine computes a series of infinity norms on the columns of a dense matrix +x: +

+res(i) ← makx|x(k,i)|
+
+

+ + + +

+call psb_geamaxs(res, x, desc_a, info) +
+

+

+ + + +


+ + + +
+

+

+ + + +



res x Subroutine



Short Precision RealShort Precision Real psb_geamaxs
Long Precision Real Long Precision Real psb_geamaxs
Short Precision RealShort Precision Complexpsb_geamaxs
Long Precision Real Long Precision Complex psb_geamaxs



+
Table 5: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 5. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+On Return
+
+res
is the infinity norm of the columns of x.
Scope: global
Intent: out.
Specified as: a number or a rank-one array of long precision real numbers. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu15.html b/docs/html/userhtmlsu15.html new file mode 100644 index 00000000..61096aa2 --- /dev/null +++ b/docs/html/userhtmlsu15.html @@ -0,0 +1,224 @@ + + +psb_norm1 — 1-Norm of Vector + + + + + + + +

+

4.6 psb_norm1 — 1-Norm of Vector

+

This function computes the 1-norm of a vector x.
If x is a real vector it computes 1-norm as: +

+asum ←  ∥xi∥
+
+

else if x is a complex vector then it computes 1-norm as: +

+asum ←  ∥re(x)∥ + ∥im (x)∥
+              1         1
+
+

+ + + +

+psb_geasum(x, desc_a, info [,global]) + 
psb_norm1(x, desc_a, info [,global]) +
+

+

+ + + +


+ + + +
+

+

+ + + +



asum x Function



Short Precision RealShort Precision Real psb_geasum
Long Precision Real Long Precision Real psb_geasum
Short Precision RealShort Precision Complexpsb_geasum
Long Precision Real Long Precision Complex psb_geasum



+
Table 6: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 6. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+global
Specifies whether the computation should include the global reduction + across all processes.
Scope: global
Type: optional.
Intent: in.
Specified as: a logical scalar. Default: global=.true.
+
+On Return
+
+Function value
is the 1-norm of vector x.
Scope: global unless the optional variable global=.false. has been + specified
Specified as: a long precision real number. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes + + + +

    +
  1. The computation of a global result requires a global communication, which + entails a significant overhead. It may be necessary and/or advisable to compute + multiple norms at the same time; in this case, it is possible to improve the + runtime efficiency by using the following scheme: +
        vres(1) = psb_geasum(x1,desc_a,info,global=.false.) 
        vres(2) = psb_geasum(x2,desc_a,info,global=.false.) 
        vres(3) = psb_geasum(x3,desc_a,info,global=.false.) 
        call psb_sum(ictxt,vres(1:3)) + +
    +

    In this way the global communication, which for small sizes is a latency-bound + operation, is invoked only once.

+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu16.html b/docs/html/userhtmlsu16.html new file mode 100644 index 00000000..d7792e50 --- /dev/null +++ b/docs/html/userhtmlsu16.html @@ -0,0 +1,192 @@ + + +psb_geasums — Generalized 1-Norm of Vector + + + + + + + +

+

4.7 psb_geasums — Generalized 1-Norm of Vector

+

This subroutine computes a series of 1-norms on the columns of a dense matrix +x: +

+res(i) ← makx|x(k,i)|
+
+

This function computes the 1-norm of a vector x.
If x is a real vector it computes 1-norm as: +

+res(i) ← ∥xi∥
+
+

else if x is a complex vector then it computes 1-norm as: +

+res(i) ← ∥re(x )∥1 +∥im (x )∥1
+
+

+ + + +

+call psb_geasums(res, x, desc_a, info) +
+

+

+ + + +


+ + + +
+

+

+ + + +



res x Subroutine



Short Precision RealShort Precision Real psb_geasums
Long Precision Real Long Precision Real psb_geasums
Short Precision RealShort Precision Complexpsb_geasums
Long Precision Real Long Precision Complex psb_geasums



+
Table 7: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 7. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+On Return
+
+res
contains the 1-norm of (the columns of) x.
Scope: global
Intent: out.
Short as: a long precision real number. Specified as: a long precision real + number. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu17.html b/docs/html/userhtmlsu17.html new file mode 100644 index 00000000..f040eafb --- /dev/null +++ b/docs/html/userhtmlsu17.html @@ -0,0 +1,227 @@ + + +psb_norm2 — 2-Norm of Vector + + + + + + + +

+

4.8 psb_norm2 — 2-Norm of Vector

+

This function computes the 2-norm of a vector x.
If x is a real vector it computes 2-norm as: +

+        √ -T--
+nrm2  ←   x x
+
+

else if x is a complex vector then it computes 2-norm as: +

+        √----
+nrm2 ←   xHx
+
+

+

+ + + +


+ + + +
+

+

+ + + +



nrm2 x Function



Short Precision RealShort Precision Real psb_genrm2
Long Precision Real Long Precision Real psb_genrm2
Short Precision RealShort Precision Complexpsb_genrm2
Long Precision Real Long Precision Complex psb_genrm2



+
Table 8: Data types
+ + + +

+
+ + + +
+psb_genrm2(x, desc_a, info [,global]) + 
psb_norm2(x, desc_a, info [,global]) +
+

+

+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 8. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+global
Specifies whether the computation should include the global reduction + across all processes.
Scope: global
Type: optional.
Intent: in.
Specified as: a logical scalar. Default: global=.true.
+
+On Return
+
+Function Value
is the 2-norm of vector x.
Scope: global unless the optional variable global=.false. has been + specified
Type: required
Specified as: a long precision real number. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + +

Notes +

    +
  1. The computation of a global result requires a global communication, which + entails a significant overhead. It may be necessary and/or advisable to compute + multiple norms at the same time; in this case, it is possible to improve the + runtime efficiency by using the following scheme: +
        vres(1) = psb_genrm2(x1,desc_a,info,global=.false.) 
        vres(2) = psb_genrm2(x2,desc_a,info,global=.false.) 
        vres(3) = psb_genrm2(x3,desc_a,info,global=.false.) 
        call psb_nrm2(ictxt,vres(1:3)) + +
    +

    In this way the global communication, which for small sizes is a latency-bound + operation, is invoked only once.

+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu18.html b/docs/html/userhtmlsu18.html new file mode 100644 index 00000000..fa1be28a --- /dev/null +++ b/docs/html/userhtmlsu18.html @@ -0,0 +1,177 @@ + + +psb_genrm2s — Generalized 2-Norm of Vector + + + + + + + +

+

4.9 psb_genrm2s — Generalized 2-Norm of Vector

+

This subroutine computes a series of 2-norms on the columns of a dense matrix +x: +

+res(i) ← ∥x(:,i)∥2
+
+

+ + + +

+call psb_genrm2s(res, x, desc_a, info) +
+

+

+ + + +


+ + + +
+

+

+ + + +



res x Subroutine



Short Precision RealShort Precision Real psb_genrm2s
Long Precision Real Long Precision Real psb_genrm2s
Short Precision RealShort Precision Complexpsb_genrm2s
Long Precision Real Long Precision Complex psb_genrm2s



+
Table 9: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 9. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+On Return
+
+res
contains the 1-norm of (the columns of) x.
Scope: global
Intent: out.
Specified as: a long precision real number. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu19.html b/docs/html/userhtmlsu19.html new file mode 100644 index 00000000..8de063d6 --- /dev/null +++ b/docs/html/userhtmlsu19.html @@ -0,0 +1,171 @@ + + +psb_norm1 — 1-Norm of Sparse Matrix + + + + + + + +

+

4.10 psb_norm1 — 1-Norm of Sparse Matrix

+

This function computes the 1-norm of a matrix A:
+

+nrm1 ← ∥A ∥1
+
+

where: +

+A
represents the global matrix A
+
+ + + +


+ + + +
+

+

+ + + +


A Function


Short Precision Real psb_spnrm1
Long Precision Real psb_spnrm1
Short Precision Complexpsb_spnrm1
Long Precision Complex psb_spnrm1


+
Table 10: Data types
+ + + +

+
+ + + +
+psb_spnrm1(A, desc_a, info) + 
psb_norm1(A, desc_a, info) +
+

+

+Type:
Synchronous. +
+On Entry
+
+a
the local portion of the global sparse matrix A.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_Tspmat_type. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+On Return
+
+Function value
is the 1-norm of sparse submatrix A.
Scope: global
Specified as: a long precision real number. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu2.html b/docs/html/userhtmlsu2.html new file mode 100644 index 00000000..9c452948 --- /dev/null +++ b/docs/html/userhtmlsu2.html @@ -0,0 +1,129 @@ + + +Library contents + + + + + + + +

+

2.2 Library contents

+

The PSBLAS library consists of various classes of subroutines: +

+Computational routines
comprising: + +
+Communication routines
handling halo and overlap communications; +
+Data management and auxiliary routines
including: + +
+Preconditioner routines
+
+Iterative methods
a subset of Krylov subspace iterative methods
+

The following naming scheme has been adopted for all the symbols internally defined in +the PSBLAS software package: +

+

In the description of the subroutines, arguments or argument entries are classified +as: +

+global
For input arguments, the value must be the same on all processes + participating in the subroutine call; for output arguments the value is + guaranteed to be the same. +
+local
Each process has its own value(s) independently.
+

To finish our general description, we define a version string with the constant +

+psb_version_string_
+
+

whose current value is 3.4.0 + + + +

+

+ diff --git a/docs/html/userhtmlsu20.html b/docs/html/userhtmlsu20.html new file mode 100644 index 00000000..6b967d32 --- /dev/null +++ b/docs/html/userhtmlsu20.html @@ -0,0 +1,171 @@ + + +psb_normi — Infinity Norm of Sparse Matrix + + + + + + + +

+

4.11 psb_normi — Infinity Norm of Sparse Matrix

+

This function computes the infinity-norm of a matrix A:
+

+nrmi ←  ∥A∥∞
+
+

where: +

+A
represents the global matrix A
+
+ + + +


+ + + +
+

+

+ + + +


A Function


Short Precision Real psb_spnrmi
Long Precision Real psb_spnrmi
Short Precision Complexpsb_spnrmi
Long Precision Complex psb_spnrmi


+
Table 11: Data types
+ + + +

+
+ + + +
+psb_spnrmi(A, desc_a, info) + 
psb_normi(A, desc_a, info) +
+

+

+Type:
Synchronous. +
+On Entry
+
+a
the local portion of the global sparse matrix A.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_Tspmat_type. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+On Return
+
+Function value
is the infinity-norm of sparse submatrix A.
Scope: global
Specified as: a long precision real number. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu21.html b/docs/html/userhtmlsu21.html new file mode 100644 index 00000000..1473890e --- /dev/null +++ b/docs/html/userhtmlsu21.html @@ -0,0 +1,337 @@ + + +psb_spmm — Sparse Matrix by Dense Matrix Product + + + + + + + +

+

4.12 psb_spmm — Sparse Matrix by Dense Matrix Product

+

This subroutine computes the Sparse Matrix by Dense Matrix Product: +
+
+y ← αAx + βy
+
(1)
+

+
+
+y ← αAT x+ βy
+
(2)
+

+
+
+      H
+y ← αA  x+ βy
+                                                                  
+
+                                                                  
+
(3)
+

+

where: +

+x
is the global dense matrix x:,: +
+y
is the global dense matrix y:,: +
+A
is the global sparse matrix A
+
+ + + +


+ + + +
+

+

+ + + + +


A, x, y, α, β Subroutine


Short Precision Real psb_spmm
Long Precision Real psb_spmm
Short Precision Complexpsb_spmm
Long Precision Complex psb_spmm


+
Table 12: Data types
+ + + +

+
+ + + +
+call psb_spmm(alpha, a, x, beta, y, desc_a, info) + 
call psb_spmm(alpha, a, x, beta, y,desc_a, info, & + 
             & trans, work) +
+

+

+Type:
Synchronous. +
+On Entry
+
+alpha
the scalar α.
Scope: global
Type: required
Intent: in.
Specified as: a number of the data type indicated in Table 12. +
+a
the local portion of the sparse matrix A.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_Tspmat_type. +
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 12. The + rank of x must be the same of y. +
+beta
the scalar β.
Scope: global
Type: required
Intent: in.
Specified as: a number of the data type indicated in Table 12. +
+y
the local portion of global dense matrix y.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 12. The + rank of y must be the same of x. + + + +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+trans
indicates what kind of operation to perform. +
+ trans = N
the operation is specified by equation 1 +
+ trans = T
the operation is specified by equation 2 +
+ trans = C
the operation is specified by equation 3
+

Scope: global
Type: optional
Intent: in.
Default: trans = N
Specified as: a character variable. +

+work
work array.
Scope: local
Type: optional
Intent: inout.
Specified as: a rank one array of the same type of x and y with the TARGET + attribute. +
+On Return
+
+y
the local portion of result matrix y.
Scope: local
Type: required
Intent: inout.
Specified as: an array of rank one or two containing numbers of type specified + in Table 12. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu22.html b/docs/html/userhtmlsu22.html new file mode 100644 index 00000000..bd1ad807 --- /dev/null +++ b/docs/html/userhtmlsu22.html @@ -0,0 +1,400 @@ + + +psb_spsm — Triangular System Solve + + + + + + + +

+

4.13 psb_spsm — Triangular System Solve

+

This subroutine computes the Triangular System Solve: +

+
+y  ←   αT- 1x + βy
+           -1
+y  ←   αDT   x +βy
+y  ←   αT- 1Dx  +βy
+y  ←   αT- Tx+ βy
+y  ←   αDT -Tx + βy
+         - T
+y  ←   αT   Dx + βy
+y  ←   αT- Hx +βy
+y  ←   αDT -Hx + βy
+y  ←   αT- HDx + βy
+
+
+

where: +

+x
is the global dense matrix x:,: +
+y
is the global dense matrix y:,: +
+T
is the global sparse block triangular submatrix T +
+D
is the scaling diagonal matrix.
+ + + +
+call psb_spsm(alpha, t, x, beta, y, desc_a, info) + 
call psb_spsm(alpha, t, x, beta, y, desc_a, info,& + 
             & trans, unit, choice, diag, work) +
+

+

+ + + +


+ + + +
+

+

+ + + + +


T, x, y, D, α, β Subroutine


Short Precision Real psb_spsm
Long Precision Real psb_spsm
Short Precision Complexpsb_spsm
Long Precision Complex psb_spsm


+
Table 13: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+alpha
the scalar α.
Scope: global
Type: required
Intent: in.
Specified as: a number of the data type indicated in Table 13. +
+t
the global portion of the sparse matrix T.
Scope: local
Type: required
Intent: in.
Specified as: an object type specified in  3. +
+x
the local portion of global dense matrix x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 13. The + rank of x must be the same of y. +
+beta
the scalar β.
Scope: global
Type: required
Intent: in.
Specified as: a number of the data type indicated in Table 13. +
+y
the local portion of global dense matrix y.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 13. The + rank of y must be the same of x. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. + + + +
+trans
specify with unitd the operation to perform. +
+ trans = ’N’
the operation is with no transposed matrix +
+ trans = ’T’
the operation is with transposed matrix. +
+ trans = ’C’
the operation is with conjugate transposed matrix.
+

Scope: global
Type: optional
Intent: in.
Default: trans = N
Specified as: a character variable. +

+unitd
specify with trans the operation to perform. +
+ unitd = ’U’
the operation is with no scaling +
+ unitd = ’L’
the operation is with left scaling +
+ unitd = ’R’
the operation is with right scaling.
+

Scope: global
Type: optional
Intent: in.
Default: unitd = U
Specified as: a character variable. +

+choice
specifies the update of overlap elements to be performed on exit: +
+
psb_none_ +
+
psb_sum_ +
+
psb_avg_ +
+
psb_square_root_
+

Scope: global
Type: optional
Intent: in.
Default: psb_avg_
Specified as: an integer variable. + + + +

+diag
the diagonal scaling matrix.
Scope: local
Type: optional
Intent: in.
Default: diag(1) = 1(noscaling)
Specified as: a rank one array containing numbers of the type indicated in + Table 13. +
+work
a work array.
Scope: local
Type: optional
Intent: inout.
Specified as: a rank one array of the same type of x with the TARGET + attribute. +
+On Return
+
+y
the local portion of global dense matrix y.
Scope: local
Type: required
Intent: inout.
Specified as: an array of rank one or two containing numbers of type specified + in Table 13. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu23.html b/docs/html/userhtmlsu23.html new file mode 100644 index 00000000..720f7151 --- /dev/null +++ b/docs/html/userhtmlsu23.html @@ -0,0 +1,201 @@ + + +psb_gemlt — Entrywise Product + + + + + + + +

+

4.14 psb_gemlt — Entrywise Product

+

This function computes the entrywise product between two vectors x and +y +

+dot ← x(i)y(i).
+
+

+ + + +

+psb_gemlt(x, y, desc_a, info) +
+

+ + + +


+ + + +
+

+

+ + + + +


dot, x, y Function


Short Precision Real psb_gemlt
Long Precision Real psb_gemlt
Short Precision Complexpsb_gemlt
Long Precision Complex psb_gemlt


+
Table 14: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense vector x.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_T_vect_type containing numbers of + type specified in Table 2. +
+y
the local portion of global dense vector y.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_T_vect_type containing numbers of + type specified in Table 2. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+On Return
+
+y
the local portion of result submatrix y.
Scope: local
Type: required
Intent: inout.
Specified as: an object of type psb_T_vect_type containing numbers of + the type indicated in Table 14. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu24.html b/docs/html/userhtmlsu24.html new file mode 100644 index 00000000..bd88f8f7 --- /dev/null +++ b/docs/html/userhtmlsu24.html @@ -0,0 +1,215 @@ + + +psb_gediv — Entrywise Division + + + + + + + +

+

4.15 psb_gediv — Entrywise Division

+

This function computes the entrywise division between two vectors x and +y +

+∕ ← x(i)∕y(i).
+
+

+ + + +

+psb_gediv(x, y, desc_a, info, [flag) +
+

+ + + +


+ + + +
+

+

+ + + + +


, x, y Function


Short Precision Real psb_gediv
Long Precision Real psb_gediv
Short Precision Complexpsb_gediv
Long Precision Complex psb_gediv


+
Table 15: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense vector x.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_T_vect_type containing numbers of + type specified in Table 2. +
+y
the local portion of global dense vector y.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_T_vect_type containing numbers of + type specified in Table 2. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+flag
check if any of the y(i) = 0, and in case returns error halting the + computation.
Scope: local
Type: optional Intent: in.
Specified as: the logical value flag=.true. +
+On Return
+
+x
the local portion of result submatrix x.
Scope: local
Type: required
Intent: inout.
Specified as: an object of type psb_T_vect_type containing numbers of + the type indicated in Table 14. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu25.html b/docs/html/userhtmlsu25.html new file mode 100644 index 00000000..2e9a6410 --- /dev/null +++ b/docs/html/userhtmlsu25.html @@ -0,0 +1,194 @@ + + +psb_geinv — Entrywise Inversion + + + + + + + +

+

4.16 psb_geinv — Entrywise Inversion

+

This function computes the entrywise inverse of a vector x and puts it into +y +

+∕ ← 1∕x(i).
+
+

+ + + +

+psb_geinv(x, y, desc_a, info, [flag) +
+

+ + + +


+ + + +
+

+

+ + + + +


, x, y Function


Short Precision Real psb_geinv
Long Precision Real psb_geinv
Short Precision Complexpsb_geinv
Long Precision Complex psb_geinv


+
Table 16: Data types
+ + + +

+
+
+Type:
Synchronous. +
+On Entry
+
+x
the local portion of global dense vector x.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_T_vect_type containing numbers of + type specified in Table 2. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: an object of type psb_desc_type. +
+flag
check if any of the x(i) = 0, and in case returns error halting the + computation.
Scope: local
Type: optional Intent: in.
Specified as: the logical value flag=.true. +
+On Return
+
+y
the local portion of result submatrix x.
Scope: local
Type: required
Intent: out.
Specified as: an object of type psb_T_vect_type containing numbers of + the type indicated in Table 16. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu26.html b/docs/html/userhtmlsu26.html new file mode 100644 index 00000000..913b6f6a --- /dev/null +++ b/docs/html/userhtmlsu26.html @@ -0,0 +1,831 @@ + + +psb_halo — Halo Data Communication + + + + + + + +

+

5.1 psb_halo — Halo Data Communication

+

These subroutines gathers the values of the halo elements: +

+x ← x
+
+

where: +

+x
is a global dense submatrix.
+
+ + + +


+ + + +
+

+

+ + + + + +


α, x Subroutine


Integer psb_halo
Short Precision Real psb_halo
Long Precision Real psb_halo
Short Precision Complexpsb_halo
Long Precision Complex psb_halo


+
Table 17: Data types
+ + + +

+
+ +
call psb_halo(x, desc_a, info) 
call psb_halo(x, desc_a, info, work, data) + +
+
+Type:
Synchronous. +
+On Entry
+
+x
global dense matrix x.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 17. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+work
the work array.
Scope: local
Type: optional
Intent: inout.
Specified as: a rank one array of the same type of x. +
+data
index list selector.
Scope: global
Type: optional
Specified + as: an integer. Values:psb_comm_halo_,psb_comm_mov_, psb_comm_ext_, + default: psb_comm_halo_. Chooses the index list on which to base the data + exchange. +
+On Return
+
+x
global dense result matrix x.
Scope: local
Type: required
Intent: inout.
Returned as: a rank one or two array containing numbers of type specified + in Table 17. +
+info
the local portion of result submatrix y.
Scope: local
Type: required
Intent: out.
An integer value that contains an error code.
+


+
+

+

PIC

+
Figure 7: Sample discretization mesh.
+


+

Usage Example Consider the discretization mesh depicted in fig. 7, partitioned +among two processes as shown by the dashed line; the data distribution is such that +each process will own 32 entries in the index space, with a halo made of 8 entries +placed at local indices 33 through 40. If process 0 assigns an initial value of 1 to +its entries in the x vector, and process 1 assigns a value of 2, then after +a call to psb_halo the contents of the local vectors will be the following: +

+ + + +


+ + + +
+

+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Process 0
Process 1
+
IGLOB(I)X(I) IGLOB(I)X(I)
1 1 1.0 1 33 2.0
2 2 1.0 2 34 2.0
3 3 1.0 3 35 2.0
4 4 1.0 4 36 2.0
5 5 1.0 5 37 2.0
6 6 1.0 6 38 2.0
7 7 1.0 7 39 2.0
8 8 1.0 8 40 2.0
9 9 1.0 9 41 2.0
10 10 1.010 42 2.0
11 11 1.011 43 2.0
12 12 1.012 44 2.0
13 13 1.013 45 2.0
14 14 1.014 46 2.0
15 15 1.015 47 2.0
16 16 1.016 48 2.0
17 17 1.017 49 2.0
18 18 1.018 50 2.0
19 19 1.019 51 2.0
20 20 1.020 52 2.0
21 21 1.021 53 2.0
22 22 1.022 54 2.0
23 23 1.023 55 2.0
24 24 1.024 56 2.0
25 25 1.025 57 2.0
26 26 1.026 58 2.0
27 27 1.027 59 2.0
28 28 1.028 60 2.0
29 29 1.029 61 2.0
30 30 1.030 62 2.0
31 31 1.031 63 2.0
32 32 1.032 64 2.0
33 33 2.033 25 1.0
34 34 2.034 26 1.0
35 35 2.035 27 1.0
36 36 2.036 28 1.0
37 37 2.037 29 1.0
38 38 2.038 30 1.0
39 39 2.039 31 1.0
40 40 2.040 32 1.0
+ + + +

+
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu27.html b/docs/html/userhtmlsu27.html new file mode 100644 index 00000000..60e72cae --- /dev/null +++ b/docs/html/userhtmlsu27.html @@ -0,0 +1,1013 @@ + + +psb_ovrl — Overlap Update + + + + + + + +

+

5.2 psb_ovrl — Overlap Update

+

These subroutines applies an overlap operator to the input vector: +

+x ← Qx
+
+

where: +

+x
is the global dense submatrix x +
+Q
is the overlap operator; it is the composition of two operators Pa and PT.
+
+ + + +


+ + + +
+

+

+ + + +


x Subroutine


Short Precision Real psb_ovrl
Long Precision Real psb_ovrl
Short Precision Complexpsb_ovrl
Long Precision Complex psb_ovrl


+
Table 18: Data types
+ + + +

+
+ +
call psb_ovrl(x, desc_a, info) 
call psb_ovrl(x, desc_a, info, update=update_type, work=work) + +
+
+Type:
Synchronous. +
+On Entry
+
+x
global dense matrix x.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one or two array or an object of type + psb_T_vect_type containing numbers of type specified in Table 18. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+update
Update operator.
+
+ update = psb_none_
Do nothing; +
+ update = psb_add_
Sum overlap entries, i.e. apply PT; +
+ update = psb_avg_
Average overlap entries, i.e. apply PaPT;
+

Scope: global
Intent: in.
Default: update_type = psb_avg_
Scope: global
Specified as: a integer variable. +

+work
the work array.
Scope: local
Type: optional
Intent: inout.
Specified as: a one dimensional array of the same type of x. + + + +
+On Return
+
+x
global dense result matrix x.
Scope: local
Type: required
Intent: inout.
Specified as: an array of rank one or two containing numbers of type specified + in Table 18. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. If there is no overlap in the data distribution associated with the + descriptor, no operations are performed; +
  2. +
  3. The operator PT performs the reduction sum of overlap elements; it is a + “prolongation” operator PT that replicates overlap elements, accounting + for the physical replication of data; +
  4. +
  5. The operator Pa performs a scaling on the overlap elements by the + amount of replication; thus, when combined with the reduction operator, + it implements the average of replicated elements over all of their instances.
+


+ + + + + + + +
+

+

PIC

+
Figure 8: Sample discretization mesh.
+ + + +


+

Example of use Consider the discretization mesh depicted in fig. 8, partitioned +among two processes as shown by the dashed lines, with an overlap of 1 extra layer +with respect to the partition of fig. 7; the data distribution is such that +each process will own 40 entries in the index space, with an overlap of 16 +entries placed at local indices 25 through 40; the halo will run from local +index 41 through local index 48.. If process 0 assigns an initial value of 1 to +its entries in the x vector, and process 1 assigns a value of 2, then after a +call to psb_ovrl with psb_avg_ and a call to psb_halo_ the contents of +the local vectors will be the following (showing a transition among the two +subdomains) +

+ + + +


+ + + +
+

+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Process 0
Process 1
+
IGLOB(I)X(I) IGLOB(I)X(I)
1 1 1.0 1 33 1.5
2 2 1.0 2 34 1.5
3 3 1.0 3 35 1.5
4 4 1.0 4 36 1.5
5 5 1.0 5 37 1.5
6 6 1.0 6 38 1.5
7 7 1.0 7 39 1.5
8 8 1.0 8 40 1.5
9 9 1.0 9 41 2.0
10 10 1.010 42 2.0
11 11 1.011 43 2.0
12 12 1.012 44 2.0
13 13 1.013 45 2.0
14 14 1.014 46 2.0
15 15 1.015 47 2.0
16 16 1.016 48 2.0
17 17 1.017 49 2.0
18 18 1.018 50 2.0
19 19 1.019 51 2.0
20 20 1.020 52 2.0
21 21 1.021 53 2.0
22 22 1.022 54 2.0
23 23 1.023 55 2.0
24 24 1.024 56 2.0
25 25 1.525 57 2.0
26 26 1.526 58 2.0
27 27 1.527 59 2.0
28 28 1.528 60 2.0
29 29 1.529 61 2.0
30 30 1.530 62 2.0
31 31 1.531 63 2.0
32 32 1.532 64 2.0
33 33 1.533 25 1.5
34 34 1.534 26 1.5
35 35 1.535 27 1.5
36 36 1.536 28 1.5
37 37 1.537 29 1.5
38 38 1.538 30 1.5
39 39 1.539 31 1.5
40 40 1.540 32 1.5
41 41 2.041 17 1.0
42 42 2.042 18 1.0
43 43 2.043 19 1.0
44 44 2.044 20 1.0
45 45 2.045 21 1.0
46 46 2.046 22 1.0
47 47 2.047 23 1.0
48 48 2.048 24 1.0
+ + + +

+
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu28.html b/docs/html/userhtmlsu28.html new file mode 100644 index 00000000..45fa580e --- /dev/null +++ b/docs/html/userhtmlsu28.html @@ -0,0 +1,225 @@ + + +psb_gather — Gather Global Dense Matrix + + + + + + + +

+

5.3 psb_gather — Gather Global Dense Matrix

+

These subroutines collect the portions of global dense matrix distributed over all +process into one single array stored on one process. +

+glob-x ← collect(loc-xi)
+
+

where: +

+glob_x
is the global submatrix glob_x1:m,1:n +
+loc_xi
is the local portion of global dense matrix on process i. +
+collect
is the collect function.
+
+ + + +


+ + + +
+

+

+ + + + + +


xi,y Subroutine


Integer psb_gather
Short Precision Real psb_gather
Long Precision Real psb_gather
Short Precision Complexpsb_gather
Long Precision Complex psb_gather


+
Table 19: Data types
+ + + +

+
+ +
call psb_gather(glob_x, loc_x, desc_a, info, root) 
call psb_gather(glob_x, loc_x, desc_a, info, root) + +
+
+Type:
Synchronous. +
+On Entry
+
+loc_x
the local portion of global dense matrix glob_x.
Scope: local
Type: required
Intent: in.
Specified as: a rank one or two array or an object of type + psb_T_vect_type indicated in Table 19. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+root
The process that holds the global copy. If root = -1 all the processes will + have a copy of the global vector.
Scope: global
Type: optional
Intent: in.
Specified as: an integer variable -1 root np - 1, default -1. +
+On Return
+
+glob_x
The array where the local parts must be gathered.
Scope: global
Type: required
Intent: out.
Specified as: a rank one or two array with the ALLOCATABLE attribute. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu29.html b/docs/html/userhtmlsu29.html new file mode 100644 index 00000000..7186e307 --- /dev/null +++ b/docs/html/userhtmlsu29.html @@ -0,0 +1,244 @@ + + +psb_scatter — Scatter Global Dense Matrix + + + + + + + +

+

5.4 psb_scatter — Scatter Global Dense Matrix

+

These subroutines scatters the portions of global dense matrix owned by a process to +all the processes in the processes grid. +

+loc-xi ← scatter(glob-x)
+
+

where: +

+glob_x
is the global matrix glob_x1:m,1:n +
+loc_xi
is the local portion of global dense matrix on process i. +
+scatter
is the scatter function.
+
+ + + +


+ + + +
+

+

+ + + + + +


xi,y Subroutine


Integer psb_scatter
Short Precision Real psb_scatter
Long Precision Real psb_scatter
Short Precision Complexpsb_scatter
Long Precision Complex psb_scatter


+
Table 20: Data types
+ + + +

+
+ +
call psb_scatter(glob_x, loc_x, desc_a, info, root, mold) + +
+
+Type:
Synchronous. +
+On Entry
+
+glob_x
The array that must be scattered into local pieces.
Scope: global
Type: required
Intent: in.
Specified as: a rank one or two array. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+root
The process that holds the global copy. If root = -1 all the processes have + a copy of the global vector.
Scope: global
Type: optional
Intent: in.
Specified as: an integer variable -1 root np - 1, default psb_root_, + i.e. process 0. +
+mold
The desired dynamic type for the internal vector storage.
Scope: local.
Type: optional.
Intent: in.
Specified as: an object of a class derived from psb_T_base_vect_type; + this is only allowed when loc_x is of type psb_T_vect_type. +
+On Return
+
+loc_x
the local portion of global dense matrix glob_x.
Scope: local
Type: required
Intent: out.
Specified as: a rank one or two ALLOCATABLE array or an object of type + psb_T_vect_type containing numbers of the type indicated in Table 20. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu3.html b/docs/html/userhtmlsu3.html new file mode 100644 index 00000000..15721cf1 --- /dev/null +++ b/docs/html/userhtmlsu3.html @@ -0,0 +1,282 @@ + + +Application structure + + + + + + + +

+

2.3 Application structure

+

The main underlying principle of the PSBLAS library is that the library objects are +created and exist with reference to a discretized space to which there corresponds +an index space and a matrix sparsity pattern. As an example, consider a +cell-centered finite-volume discretization of the Navier-Stokes equations on a +simulation domain; the index space 1n is isomorphic to the set of cell centers, +whereas the pattern of the associated linear system matrix is isomorphic to the +adjacency graph imposed on the discretization mesh by the discretization +stencil. +

Thus the first order of business is to establish an index space, and this is done +with a call to psb_cdall in which we specify the size of the index space n and the +allocation of the elements of the index space to the various processes making up the +MPI (virtual) parallel machine. +

The index space is partitioned among processes, and this creates a mapping from +the “global” numbering 1n to a numbering “local” to each process; each process i +will own a certain subset 1nrowi, each element of which corresponds to a certain +element of 1n. The user does not set explicitly this mapping; when the application +needs to indicate to which element of the index space a certain item is related, +such as the row and column index of a matrix coefficient, it does so in the +“global” numbering, and the library will translate into the appropriate “local” +numbering. +

For a given index space 1n there are many possible associated topologies, i.e. +many different discretization stencils; thus the description of the index space is not +completed until the user has defined a sparsity pattern, either explicitly through +psb_cdins or implicitly through psb_spins. The descriptor is finalized with a call to +psb_cdasb and a sparse matrix with a call to psb_spasb. After psb_cdasb each +process i will have defined a set of “halo” (or “ghost”) indices nrowi + 1ncol +i, +denoting elements of the index space that are not assigned to process i; however the +variables associated with them are needed to complete computations associated with +the sparse matrix A, and thus they have to be fetched from (neighbouring) +processes. The descriptor of the index space is built exactly for the purpose +of properly sequencing the communication steps required to achieve this +objective. +

A simple application structure will walk through the index space allocation, +matrix/vector creation and linear system solution as follows: +

    +
  1. Initialize parallel environment with psb_init +
  2. +
  3. Initialize index space with psb_cdall +
  4. +
  5. Allocate sparse matrix and dense vectors with psb_spall and psb_geall + + + +
  6. +
  7. Loop over all local rows, generate matrix and vector entries, and insert + them with psb_spins and psb_geins +
  8. +
  9. Assemble the various entities: +
      +
    1. psb_cdasb +
    2. +
    3. psb_spasb +
    4. +
    5. psb_geasb
    +
  10. +
  11. Choose the preconditioner to be used with prec%init and build it with + prec%build3 . +
  12. +
  13. Call the iterative method of choice, e.g. psb_bicgstab
+

This is the structure of the sample programs in the directory test/pargen/. +

For a simulation in which the same discretization mesh is used over multiple time +steps, the following structure may be more appropriate: +

    +
  1. Initialize parallel environment with psb_init +
  2. +
  3. Initialize index space with psb_cdall +
  4. +
  5. Loop over the topology of the discretization mesh and build the descriptor + with psb_cdins +
  6. +
  7. Assemble the descriptor with psb_cdasb +
  8. +
  9. Allocate the sparse matrices and dense vectors with psb_spall and + psb_geall +
  10. +
  11. Loop over the time steps: +
      +
    1. If after first time step, reinitialize the sparse matrix with psb_sprn; + also zero out the dense vectors; +
    2. +
    3. Loop over the mesh, generate the coefficients and insert/update them + with psb_spins and psb_geins + + + +
    4. +
    5. Assemble with psb_spasb and psb_geasb +
    6. +
    7. Choose and build preconditioner with prec%init and prec%build +
    8. +
    9. Call the iterative method of choice, e.g. psb_bicgstab
    +
+

The insertion routines will be called as many times as needed; they only need to be +called on the data that is actually allocated to the current process, i.e. each process +generates its own data. +

In principle there is no specific order in the calls to psb_spins, nor is there a +requirement to build a matrix row in its entirety before calling the routine; this +allows the application programmer to walk through the discretization mesh element +by element, generating the main part of a given matrix row but also contributions to +the rows corresponding to neighbouring elements. +

From a functional point of view it is even possible to execute one call for each +nonzero coefficient; however this would have a substantial computational +overhead. It is therefore advisable to pack a certain amount of data into each +call to the insertion routine, say touching on a few tens of rows; the best +performng value would depend on both the architecture of the computer being +used and on the problem structure. At the opposite extreme, it would be +possible to generate the entire part of a coefficient matrix residing on a +process and pass it in a single call to psb_spins; this, however, would entail a +doubling of memory occupation, and thus would be almost always far from +optimal. +

+

2.3.1 User-defined index mappings
+

PSBLAS supports user-defined global to local index mappings, subject to the +constraints outlined in sec. 2.3: +

    +
  1. The set of indices owned locally must be mapped to the set 1nrowi; +
  2. +
  3. The set of halo points must be mapped to the set nrowi + 1ncol +i;
+

but otherwise the mapping is arbitrary. The user application is responsible to ensure +consistency of this mapping; some errors may be caught by the library, but +this is not guaranteed. The application structure to support this usage is as +follows: +

    +
  1. Initialize index + space with psb_cdall(ictx,desc,info,vl=vl,lidx=lidx) passing the + vectors vl(:) containing the set of global indices owned by the current + process and lidx(:) containing the corresponding local indices; + + + +
  2. +
  3. Add the halo points ja(:) and their associated local indices lidx(:) with + a(some) call(s) to psb_cdins(nz,ja,desc,info,lidx=lidx); +
  4. +
  5. Assemble the descriptor with psb_cdasb; +
  6. +
  7. Build the sparse matrices and vectors, optionally making use in psb_spins + and psb_geins of the local argument specifying that the indices in ia, + ja and irw, respectively, are already local indices.
+ + + + +

+ diff --git a/docs/html/userhtmlsu30.html b/docs/html/userhtmlsu30.html new file mode 100644 index 00000000..10ee1c9c --- /dev/null +++ b/docs/html/userhtmlsu30.html @@ -0,0 +1,419 @@ + + +psb_cdall — Allocates a communication descriptor + + + + + + + +

+

6.1 psb_cdall — Allocates a communication descriptor

+ + + +
+call psb_cdall(icontxt, desc_a, info,mg=mg,parts=parts) + 
call psb_cdall(icontxt, desc_a, info,vg=vg,[mg=mg,flag=flag]) + 
call psb_cdall(icontxt, desc_a, info,vl=vl,[nl=nl,globalcheck=.false.,lidx=lidx]) + 
call psb_cdall(icontxt, desc_a, info,nl=nl) + 
call psb_cdall(icontxt, desc_a, info,mg=mg,repl=.true.) +
+

+

This subroutine initializes the communication descriptor associated with an index +space. One of the optional arguments parts, vg, vl, nl or repl must be specified, +thereby choosing the specific initialization strategy. +

+On Entry
+
+Type:
Synchronous. +
+icontxt
the communication context.
Scope:global.
Type:required.
Intent: in.
Specified as: an integer value. +
+vg
Data allocation: each index i ∈{1mg} is allocated to process vg(i).
Scope:global.
Type:optional.
Intent: in.
Specified as: an integer array. +
+flag
Specifies whether entries in vg are zero- or one-based.
Scope:global.
Type:optional.
Intent: in.
Specified as: an integer value 0,1, default 0. +
+mg
the (global) number of rows of the problem.
Scope:global.
Type:optional.
Intent: in.
Specified as: an integer value. It is required if parts or repl is specified, + it is optional if vg is specified. +
+parts
the subroutine that defines the partitioning scheme.
Scope:global.
Type:required.
Specified as: a subroutine. + + + +
+vl
Data allocation: the set of global indices vl(1 : nl) belonging to the calling + process.
Scope:local.
Type:optional.
Intent: in.
Specified as: an integer array. +
+nl
Data allocation: in a generalized block-row distribution the number of indices + belonging to the current process.
Scope:local.
Type:optional.
Intent: in.
Specified as: an integer value. May be specified together with vl. +
+repl
Data allocation: build a replicated index space (i.e. all processes own all + indices).
Scope:global.
Type:optional.
Intent: in.
Specified as: the logical value .true. +
+globalcheck
Data allocation: do global checks on the local index lists vl
Scope:global.
Type:optional.
Intent: in.
Specified as: a logical value, default: .false. +
+lidx
Data allocation: the set of local indices lidx(1 : nl) to be assigned to the + global indices vl.
Scope:local.
Type:optional.
Intent: in.
Specified as: an integer array.
+

+

+On Return
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: out.
Specified as: a structured data of type psb_desc_type. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. One of the optional arguments parts, vg, vl, nl or repl must be specified, + thereby choosing the initialization strategy as follows: +
    + parts
    In this case we have a subroutine specifying the mapping between global + indices and process/local index pairs. If this optional argument is + specified, then it is mandatory to specify the argument mg as well. The + subroutine must conform to the following interface: + + + +
    +   interface +  
         subroutine psb_parts(glob_index,mg,np,pv,nv) +  
           integer, intent (in)  :: glob_index,np,mg +  
           integer, intent (out) :: nv, pv(*) +  
         end subroutine psb_parts +  
      end interface +
    +

    The input arguments are: +

    + glob_index
    The global index to be mapped; +
    + np
    The number of processes in the mapping; +
    + mg
    The total number of global rows in the mapping;
    +

    The output arguments are: +

    + nv
    The number of entries in pv; +
    + pv
    A vector containing the indices of the processes to which the + global index should be assigend; each entry must satisfy 0 + pv(i) < np; if nv > 1 we have an index assigned to multiple + processes, i.e. we have an overlap among the subdomains.
    +
    + vg
    In this case the association between an index and a process is specified via + an integer vector vg(1:mg); each index i ∈{1mg} is assigned to process + vg(i). The vector vg must be identical on all calling processes; its + entries may have the ranges (0np - 1) or (1np) according to the + value of flag. The size mg may be specified via the optional + argument mg; the default is to use the entire vector vg, thus having + mg=size(vg). +
    + vl
    In this case we are specifying the list of indices vl(1:nl) assigned to the + current process; thus, the global problem size mg is given by the range of + the aggregate of the individual vectors vl specified in the calling + processes. The size may be specified via the optional argument nl; the + default is to use the entire vector vl, thus having nl=size(vl). If + globalcheck=.true. the subroutine will check how many times each + entry in the global index space (1mg) is specified in the input lists vl, + thus allowing for the presence of overlap in the input, and checking for + “orphan” indices. If globalcheck=.false., the subroutine will not + check for overlap, and may be significantly faster, but the user is + implicitly guaranteeing that there are neither orphan nor overlap + indices. + + + +
    + lidx
    The optional argument lidx is available for those cases in which the user + has already established a global-to-local mapping; if it is specified, each + index in vl(i) will be mapped to the corresponding local index lidx(i). + When specifying the argument lidx the user would also likely employ + lidx in calls to psb_cdins and local in calls to psb_spins and + psb_geins; see also sec. 2.3.1. +
    + nl
    If this argument is specified alone (i.e. without vl) the result is a + generalized row-block distribution in which each process I gets assigned a + consecutive chunk of NI = nl global indices. +
    + repl
    This arguments specifies to replicate all indices on all processes. This is a + special purpose data allocation that is useful in the construction of some + multilevel preconditioners.
    +
  2. +
  3. On exit from this routine the descriptor is in the build state. +
  4. +
  5. Calling the routine with vg or parts implies that every process will scan the + entire index space to figure out the local indices. +
  6. +
  7. Overlapped indices are possible with both parts and vl invocations. +
  8. +
  9. When the subroutine is invoked with vl in conjunction with globalcheck=.true., + it will perform a scan of the index space to search for overlap or orphan + indices. +
  10. +
  11. When the subroutine is invoked with vl in conjunction with globalcheck=.false., + no index space scan will take place. Thus it is the responsibility of the user to + make sure that the indices specified in vl have neither orphans nor overlaps; if + this assumption fails, results will be unpredictable. +
  12. +
  13. Orphan and overlap indices are impossible by construction when the subroutine + is invoked with nl (alone), or vg.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu31.html b/docs/html/userhtmlsu31.html new file mode 100644 index 00000000..d666e2d5 --- /dev/null +++ b/docs/html/userhtmlsu31.html @@ -0,0 +1,206 @@ + + +psb_cdins — Communication descriptor insert routine + + + + + + + +

+

6.2 psb_cdins — Communication descriptor insert routine

+ + + +
+call psb_cdins(nz, ia, ja, desc_a, info [,ila,jla]) + 
call psb_cdins(nz,ja,desc,info[,jla,mask,lidx]) +
+

+

This subroutine examines the edges of the graph associated with the +discretization mesh (and isomorphic to the sparsity pattern of a linear system +coefficient matrix), storing them as necessary into the communication descriptor. In +the first form the edges are specified as pairs of indices ia(i),ja(i); the starting index +ia(i) should belong to the current process. In the second form only the remote indices +ja(i) are specified. +

+

+Type:
Asynchronous. +
+On Entry
+
+nz
the number of points being inserted.
Scope: local.
Type: required.
Intent: in.
Specified as: an integer value. +
+ia
the indices of the starting vertex of the edges being inserted.
Scope: local.
Type: required.
Intent: in.
Specified as: an integer array of length nz. +
+ja
the indices of the end vertex of the edges being inserted.
Scope: local.
Type: required.
Intent: in.
Specified as: an integer array of length nz. +
+mask
Mask entries in ja, they are inserted only when the corresponding mask + entries are .true.
Scope: local.
Type: optional.
Intent: in.
Specified as: a logical array of length nz, default .true.. + + + +
+lidx
User defined local indices for ja.
Scope: local.
Type: optional.
Intent: in.
Specified as: an integer array of length nz.
+

+

+On Return
+
+desc_a
the updated communication descriptor.
Scope:local.
Type:required.
Intent: inout.
Specified as: a structured data of type psb_desc_type. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected. +
+ila
the local indices of the starting vertex of the edges being inserted.
Scope: local.
Type: optional.
Intent: out.
Specified as: an integer array of length nz. +
+jla
the local indices of the end vertex of the edges being inserted.
Scope: local.
Type: optional.
Intent: out.
Specified as: an integer array of length nz. +
+

Notes +

    +
  1. This routine may only be called if the descriptor is in the build state; +
  2. +
  3. This routine automatically ignores edges that do not insist on the current + process, i.e. edges for which neither the starting nor the end vertex belong + to the current process. +
  4. +
  5. The second form of this routine will be useful when dealing with + user-specified index mappings; see also 2.3.1.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu32.html b/docs/html/userhtmlsu32.html new file mode 100644 index 00000000..78ac9388 --- /dev/null +++ b/docs/html/userhtmlsu32.html @@ -0,0 +1,136 @@ + + +psb_cdasb — Communication descriptor assembly routine + + + + + + + +

+

6.3 psb_cdasb — Communication descriptor assembly routine

+ + + +
+call psb_cdasb(desc_a, info [, mold]) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: inout.
Specified as: a structured data of type psb_desc_type. +
+mold
The desired dynamic type for the internal index storage.
Scope: local.
Type: optional.
Intent: in.
Specified as: a object of type derived from (integer) + psb_T_base_vect_type.
+

+

+On Return
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: inout.
Specified as: a structured data of type psb_desc_type. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. On exit from this routine the descriptor is in the assembled state.
+ + + +

This call will set up all the necessary information for the halo data exchanges. In doing +so, the library will need to identify the set of processes owning the halo indices +through the use of the desc%fnd_owner() method; the owning processes +are the topological neighbours of the calling process. If the user has some +background information on the processes that are neighbours of the current one, +it is possible to specify explicitly the list of adjacent processes with a call +to desc%set_p_adjcncy(list); this will speed up the subsequent call to +psb_cdasb. + + + + + + +

+

+ diff --git a/docs/html/userhtmlsu33.html b/docs/html/userhtmlsu33.html new file mode 100644 index 00000000..ca2898fe --- /dev/null +++ b/docs/html/userhtmlsu33.html @@ -0,0 +1,100 @@ + + +psb_cdcpy — Copies a communication descriptor + + + + + + + +

+

6.4 psb_cdcpy — Copies a communication descriptor

+ + + +
+call psb_cdcpy(desc_in, desc_out, info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc_in
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+

+

+On Return
+
+desc_out
the communication descriptor copy.
Scope:local.
Type:required.
Intent: out.
Specified as: a structured data of type psb_desc_type. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu34.html b/docs/html/userhtmlsu34.html new file mode 100644 index 00000000..ed9d8573 --- /dev/null +++ b/docs/html/userhtmlsu34.html @@ -0,0 +1,83 @@ + + +psb_cdfree — Frees a communication descriptor + + + + + + + +

+

6.5 psb_cdfree — Frees a communication descriptor

+ + + +
+call psb_cdfree(desc_a, info) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+desc_a
the communication descriptor to be freed.
Scope:local.
Type:required.
Intent: inout.
Specified as: a structured data of type psb_desc_type.
+

+

+On Return
+
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu35.html b/docs/html/userhtmlsu35.html new file mode 100644 index 00000000..414a315a --- /dev/null +++ b/docs/html/userhtmlsu35.html @@ -0,0 +1,163 @@ + + +psb_cdbldext — Build an extended communication descriptor + + + + + + + +

+

6.6 psb_cdbldext — Build an extended communication descriptor

+ + + +
+call psb_cdbldext(a,desc_a,nl,desc_out, info, extype) +
+

+

This subroutine builds an extended communication descriptor, based on the input +descriptor desc_a and on the stencil specified through the input sparse matrix +a. +

+Type:
Synchronous. +
+On Entry
+
+a
A sparse matrix Scope:local.
Type:required.
Intent: in.
Specified as: a structured data type. +
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_Tspmat_type. +
+nl
the number of additional layers desired.
Scope:global.
Type:required.
Intent: in.
Specified as: an integer value nl 0. +
+extype
the kind of estension required.
Scope:global.
Type:optional .
Intent: in.
Specified as: an integer value psb_ovt_xhal_, psb_ovt_asov_, default: + psb_ovt_xhal_ +
+

+

+On Return
+ + + +
+desc_out
the extended communication descriptor.
Scope:local.
Type:required.
Intent: inout.
Specified as: a structured data of type psb_desc_type. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. Specifying psb_ovt_xhal_ for the extype argument the user will obtain a + descriptor for a domain partition in which the additional layers are fetched + as part of an (extended) halo; however the index-to-process mapping is + identical to that of the base descriptor; +
  2. +
  3. Specifying psb_ovt_asov_ for the extype argument the user will obtain + a descriptor with an overlapped decomposition: the additional layer is + aggregated to the local subdomain (and thus is an overlap), and a new + halo extending beyond the last additional layer is formed.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu36.html b/docs/html/userhtmlsu36.html new file mode 100644 index 00000000..2d09e07a --- /dev/null +++ b/docs/html/userhtmlsu36.html @@ -0,0 +1,128 @@ + + +psb_spall — Allocates a sparse matrix + + + + + + + +

+

6.7 psb_spall — Allocates a sparse matrix

+ + + +
+call psb_spall(a, desc_a, info, nnz) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+nnz
An estimate of the number of nonzeroes in the local part of the assembled + matrix.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer value.
+

+

+On Return
+
+a
the matrix to be allocated.
Scope:local
Type:required
Intent: out.
Specified as: a structured data of type psb_Tspmat_type. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. On exit from this routine the sparse matrix is in the build state. + + + +
  2. +
  3. The descriptor may be in either the build or assembled state. +
  4. +
  5. Providing a good estimate for the number of nonzeroes nnz in the + assembled matrix may substantially improve performance in the matrix + build phase, as it will reduce or eliminate the need for (potentially + multiple) data reallocations.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu37.html b/docs/html/userhtmlsu37.html new file mode 100644 index 00000000..85e282e3 --- /dev/null +++ b/docs/html/userhtmlsu37.html @@ -0,0 +1,311 @@ + + +psb_spins — Insert a set of coefficients into a sparse matrix + + + + + + + +

+

6.8 psb_spins — Insert a set of coefficients into a sparse matrix

+ + + +
+call psb_spins(nz, ia, ja, val, a, desc_a, info [,local]) + 
call psb_spins(nr, irw, irp, ja, val, a, desc_a, info [,local]) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+nz
the number of coefficients to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an integer scalar. +
+nr
the number of rows to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an integer scalar. +
+irw
the first row to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an integer scalar. +
+ia
the row indices of the coefficients to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an integer array of size nz. +
+irp
the row pointers of the coefficients to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an integer array of size nr + 1. + + + +
+ja
the column indices of the coefficients to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an integer array of size nz. +
+val
the coefficients to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an array of size nz. Must be of the same type and kind of + the coefficients of the sparse matrix a. +
+desc_a
The communication descriptor.
Scope: local.
Type: required.
Intent: inout.
Specified as: a variable of type psb_desc_type.
+
+local
Whether the entries in the indices vectors ia, ja are already in local + numbering.
Scope:local.
Type:optional.
Specified as: a logical value; default: .false.. +
+

+

+On Return
+
+a
the matrix into which coefficients will be inserted.
Scope:local
Type:required
Intent: inout.
Specified as: a structured data of type psb_Tspmat_type. +
+desc_a
The communication descriptor.
Scope: local.
Type: required.
Intent: inout.
Specified as: a variable of type psb_desc_type.
+ + + +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. On entry to this routine the descriptor may be in either the build or + assembled state. +
  2. +
  3. On entry to this routine the sparse matrix may be in either the build or + update state. +
  4. +
  5. If the descriptor is in the build state, then the sparse matrix must also be + in the build state; the action of the routine is to (implicitly) call psb_cdins + to add entries to the sparsity pattern; each sparse matrix entry implicitly + defines a graph edge, that is passed to the descriptor routine for the + appropriate processing; +
  6. +
  7. The input data can be passed in either COO or CSR formats; +
  8. +
  9. In COO format the coefficients to be inserted are represented by the + ordered triples ia(i),ja(i),val(i), for i = 1,,nz; these triples should + belong to the current process, i.e. ia(i) should be one of the local indices, + but are otherwise arbitrary; +
  10. +
  11. In CSR format the coefficients to be inserted for each input row i = 1,nr + are represented by the ordered triples (i + irw - 1),ja(j),val(j), for + j = irp(i),,irp(i + 1) - 1; these triples should belong to the current + process, i.e. i+irw-1 should be one of the local indices, but are otherwise + arbitrary; +
  12. +
  13. There is no requirement that a given row must be passed in its entirety + to a single call to this routine: the buildup of a row may be split into as + many calls as desired (even in the CSR format); +
  14. +
  15. Coefficients from different rows may also be mixed up freely in a single + call, according to the application needs; +
  16. +
  17. Any coefficients from matrix rows not owned by the calling process are + silently ignored; + + + +
  18. +
  19. If the descriptor is in the assembled state, then any entries in the sparse + matrix that would generate additional communication requirements are + ignored; +
  20. +
  21. If the matrix is in the update state, any entries in positions that were not + present in the original matrix are ignored.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu38.html b/docs/html/userhtmlsu38.html new file mode 100644 index 00000000..d3f70743 --- /dev/null +++ b/docs/html/userhtmlsu38.html @@ -0,0 +1,186 @@ + + +psb_spasb — Sparse matrix assembly routine + + + + + + + +

+

6.9 psb_spasb — Sparse matrix assembly routine

+ + + +
+call psb_spasb(a, desc_a, info, afmt, upd, dupl, mold) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+afmt
the storage format for the sparse matrix.
Scope: local.
Type: optional.
Intent: in.
Specified as: an array of characters. Defalt: ’CSR’. +
+upd
Provide for updates to the matrix coefficients.
Scope: global.
Type: optional.
Intent: in.
Specified as: integer, possible values: psb_upd_srch_, psb_upd_perm_ +
+dupl
How to handle duplicate coefficients.
Scope: global.
Type: optional.
Intent: in.
Specified as: integer, possible values: psb_dupl_ovwrt_, psb_dupl_add_, + psb_dupl_err_. +
+mold
The desired dynamic type for the internal matrix storage.
Scope: local.
Type: optional.
Intent: in.
Specified as: an object of a class derived from psb_T_base_sparse_mat.
+

+ + + +

+On Return
+
+a
the matrix to be assembled.
Scope:local
Type:required
Intent: inout.
Specified as: a structured data of type psb_Tspmat_type. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. On entry to this routine the descriptor must be in the assembled state, + i.e. psb_cdasb must already have been called. +
  2. +
  3. The sparse matrix may be in either the build or update state; +
  4. +
  5. Duplicate entries are detected and handled in both build and update state, + with the exception of the error action that is only taken in the build state, + i.e. on the first assembly; +
  6. +
  7. If the update choice is psb_upd_perm_, then subsequent calls to psb_spins + to update the matrix must be arranged in such a way as to produce exactly + the same sequence of coefficient values as encountered at the first assembly; +
  8. +
  9. The output storage format need not be the same on all processes; +
  10. +
  11. On exit from this routine the matrix is in the assembled state, and thus + is suitable for the computational routines.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu39.html b/docs/html/userhtmlsu39.html new file mode 100644 index 00000000..e767aef9 --- /dev/null +++ b/docs/html/userhtmlsu39.html @@ -0,0 +1,98 @@ + + +psb_spfree — Frees a sparse matrix + + + + + + + +

+

6.10 psb_spfree — Frees a sparse matrix

+ + + +
+call psb_spfree(a, desc_a, info) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+a
the matrix to be freed.
Scope:local
Type:required
Intent: inout.
Specified as: a structured data of type psb_Tspmat_type. +
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type.
+

+

+On Return
+
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu4.html b/docs/html/userhtmlsu4.html new file mode 100644 index 00000000..ffc95516 --- /dev/null +++ b/docs/html/userhtmlsu4.html @@ -0,0 +1,61 @@ + + +Programming model + + + + + + + +

+

2.4 Programming model

+

The PSBLAS librarary is based on the Single Program Multiple Data (SPMD) +programming model: each process participating in the computation performs the +same actions on a chunk of data. Parallelism is thus data-driven. +

Because of this structure, many subroutines coordinate their action across the +various processes, thus providing an implicit synchronization point, and therefore +must be called simultaneously by all processes participating in the computation. This +is certainly true for the data allocation and assembly routines, for all the +computational routines and for some of the tools routines. +

However there are many cases where no synchronization, and indeed no +communication among processes, is implied; for instance, all the routines in sec. 3 +are only acting on the local data structures, and thus may be called independently. +The most important case is that of the coefficient insertion routines: since the +number of coefficients in the sparse and dense matrices varies among the processors, +and since the user is free to choose an arbitrary order in builiding the matrix entries, +these routines cannot imply a synchronization. +

Throughout this user’s guide each subroutine will be clearly indicated +as: +

+Synchronous:
must be called simultaneously by all the processes in the + relevant communication context; +
+Asynchronous:
may be called in a totally independent manner.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu40.html b/docs/html/userhtmlsu40.html new file mode 100644 index 00000000..2e95eec1 --- /dev/null +++ b/docs/html/userhtmlsu40.html @@ -0,0 +1,114 @@ + + +psb_sprn — Reinit sparse matrix structure for psblas routines. + + + + + + + +

+

6.11 psb_sprn — Reinit sparse matrix structure for psblas routines.

+ + + +
+call psb_sprn(a, decsc_a, info, clear) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+a
the matrix to be reinitialized.
Scope:local
Type:required
Intent: inout.
Specified as: a structured data of type psb_Tspmat_type. +
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+clear
Choose whether to zero out matrix coefficients
Scope:local.
Type:optional.
Intent: in.
Default: true.
+

+

+On Return
+
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. On exit from this routine the sparse matrix is in the update state.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu41.html b/docs/html/userhtmlsu41.html new file mode 100644 index 00000000..46b2ba28 --- /dev/null +++ b/docs/html/userhtmlsu41.html @@ -0,0 +1,132 @@ + + +psb_geall — Allocates a dense matrix + + + + + + + +

+

6.12 psb_geall — Allocates a dense matrix

+ + + +
+call psb_geall(x, desc_a, info, n, lb) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+desc_a
The communication descriptor.
Scope: local
Type: required
Intent: in.
Specified as: a variable of type psb_desc_type.
+
+n
The number of columns of the dense matrix to be allocated.
Scope: local
Type: optional
Intent: in.
Specified as: Integer scalar, default 1. It is not a valid argument if x is a + rank-1 array. +
+lb
The lower bound for the column index range of the dense matrix to be + allocated.
Scope: local
Type: optional
Intent: in.
Specified as: Integer scalar, default 1. It is not a valid argument if x is a + rank-1 array.
+

+

+On Return
+
+x
The dense matrix to be allocated.
Scope: local
Type: required
Intent: out.
Specified as: a rank one or two array with the ALLOCATABLE attribute + or an object of type psb_T_vect_type, of type real, complex or integer.
+ + + +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu42.html b/docs/html/userhtmlsu42.html new file mode 100644 index 00000000..7f215524 --- /dev/null +++ b/docs/html/userhtmlsu42.html @@ -0,0 +1,178 @@ + + +psb_geins — Dense matrix insertion routine + + + + + + + +

+

6.13 psb_geins — Dense matrix insertion routine

+ + + +
+call psb_geins(m, irw, val, x, desc_a, info [,dupl,local]) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+m
Number of rows in val to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: an integer value. +
+irw
Indices of the rows to be inserted. Specifically, row i of val will be + inserted into the local row corresponding to the global row index irw(i). + Scope:local.
Type:required.
Intent: in.
Specified as: an integer array. +
+val
the dense submatrix to be inserted.
Scope:local.
Type:required.
Intent: in.
Specified as: a rank 1 or 2 array. Specified as: an integer value. +
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+dupl
How to handle duplicate coefficients.
Scope: global.
Type: optional.
Intent: in.
Specified as: integer, possible values: psb_dupl_ovwrt_, psb_dupl_add_. + + + +
+local
Whether the entries in the index vector irw, are already in local + numbering.
Scope:local.
Type:optional.
Specified as: a logical value; default: .false.. +
+

+

+On Return
+
+x
the output dense matrix.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one or two array or an object of type + psb_T_vect_type, of type real, complex or integer.
+
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. Dense vectors/matrices do not have an associated state; +
  2. +
  3. Duplicate entries are either overwritten or added, there is no provision for + raising an error condition.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu43.html b/docs/html/userhtmlsu43.html new file mode 100644 index 00000000..3befcce9 --- /dev/null +++ b/docs/html/userhtmlsu43.html @@ -0,0 +1,123 @@ + + +psb_geasb — Assembly a dense matrix + + + + + + + +

+

6.14 psb_geasb — Assembly a dense matrix

+ + + +
+call psb_geasb(x, desc_a, info, mold) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+desc_a
The communication descriptor.
Scope: local
Type: required
Intent: in.
Specified as: a variable of type psb_desc_type.
+
+mold
The desired dynamic type for the internal vector storage.
Scope: local.
Type: optional.
Intent: in.
Specified as: an object of a class derived from psb_T_base_vect_type; + this is only allowed when x is of type psb_T_vect_type.
+

+

+On Return
+
+x
The dense matrix to be assembled.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one or two array with the ALLOCATABLE or an + object of type psb_T_vect_type, of type real, complex or integer.
+
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + +

+ diff --git a/docs/html/userhtmlsu44.html b/docs/html/userhtmlsu44.html new file mode 100644 index 00000000..90a8c1c7 --- /dev/null +++ b/docs/html/userhtmlsu44.html @@ -0,0 +1,102 @@ + + +psb_gefree — Frees a dense matrix + + + + + + + +

+

6.15 psb_gefree — Frees a dense matrix

+ + + +
+call psb_gefree(x, desc_a, info) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+x
The dense matrix to be freed.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one or two array with the ALLOCATABLE or an + object of type psb_T_vect_type, of type real, complex or integer.
+
+desc_a
The communication descriptor.
Scope: local
Type: required
Intent: in.
Specified as: a variable of type psb_desc_type.
+

+

+On Return
+
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu45.html b/docs/html/userhtmlsu45.html new file mode 100644 index 00000000..559a173a --- /dev/null +++ b/docs/html/userhtmlsu45.html @@ -0,0 +1,109 @@ + + +psb_gelp — Applies a left permutation to a dense matrix + + + + + + + +

+

6.16 psb_gelp — Applies a left permutation to a dense matrix

+ + + +
+call psb_gelp(trans, iperm, x, info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+trans
A character that specifies whether to permute A or AT.
Scope: local
Type: required
Intent: in.
Specified as: a single character with value ’N’ for A or ’T’ for AT.
+
+iperm
An integer array containing permutation information.
Scope: local
Type: required
Intent: in.
Specified as: an integer one-dimensional array.
+
+x
The dense matrix to be permuted.
Scope: local
Type: required
Intent: inout.
Specified as: a one or two dimensional array.
+

+

+On Return
+
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu46.html b/docs/html/userhtmlsu46.html new file mode 100644 index 00000000..3d5b5a42 --- /dev/null +++ b/docs/html/userhtmlsu46.html @@ -0,0 +1,162 @@ + + +psb_glob_to_loc — Global to local indices convertion + + + + + + + +

+

6.17 psb_glob_to_loc — Global to local indices convertion

+ + + +
+call psb_glob_to_loc(x, y, desc_a, info, iact,owned) + 
call psb_glob_to_loc(x, desc_a, info, iact,owned) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+x
An integer vector of indices to be converted.
Scope: local
Type: required
Intent: in, inout.
Specified as: a rank one integer array.
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+iact
specifies action to be taken in case of range errors. Scope: global
Type: optional
Intent: in.
Specified as: a character variable Ignore, Warning or Abort, default Ignore. +
+owned
Specfies valid range of input Scope: global
Type: optional
Intent: in.
If true, then only indices strictly owned by the current process are + considered valid, if false then halo indices are also accepted. Default: false.
+

+

+On Return
+
+x
If y is not present, then x is overwritten with the translated integer indices. + Scope: global
Type: required
Intent: inout.
Specified as: a rank one integer array. + + + +
+y
If y is present, then y is overwritten with the translated integer indices, and + x is left unchanged. Scope: global
Type: optional
Intent: out.
Specified as: a rank one integer array. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. If an input index is out of range, then the corresponding output index is + set to a negative number; +
  2. +
  3. The default Ignore means that the negative output is the only action + taken on an out-of-range input.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu47.html b/docs/html/userhtmlsu47.html new file mode 100644 index 00000000..166f1bad --- /dev/null +++ b/docs/html/userhtmlsu47.html @@ -0,0 +1,140 @@ + + +psb_loc_to_glob — Local to global indices conversion + + + + + + + +

+

6.18 psb_loc_to_glob — Local to global indices conversion

+ + + +
+call psb_loc_to_glob(x, y, desc_a, info, iact) + 
call psb_loc_to_glob(x, desc_a, info, iact) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+x
An integer vector of indices to be converted.
Scope: local
Type: required
Intent: in, inout.
Specified as: a rank one integer array.
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+iact
specifies action to be taken in case of range errors. Scope: global
Type: optional
Intent: in.
Specified as: a character variable Ignore, Warning or Abort, default Ignore.
+

+

+On Return
+
+x
If y is not present, then x is overwritten with the translated integer indices. + Scope: global
Type: required
Intent: inout.
Specified as: a rank one integer array. +
+y
If y is not present, then y is overwritten with the translated integer indices, + and x is left unchanged. Scope: global
Type: optional
Intent: out.
Specified as: a rank one integer array. + + + +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu48.html b/docs/html/userhtmlsu48.html new file mode 100644 index 00000000..9ed049f8 --- /dev/null +++ b/docs/html/userhtmlsu48.html @@ -0,0 +1,103 @@ + + +psb_is_owned — + + + + + + + +

+

6.19 psb_is_owned —

+ + + +
+call psb_is_owned(x, desc_a) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+x
Integer index.
Scope: local
Type: required
Intent: in.
Specified as: a scalar integer.
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type.
+

+

+On Return
+
+Function value
A logical mask which is true if x is owned by the current + process Scope: local
Type: required
Intent: out.
+

Notes +

    +
  1. This routine returns a .true. value for an index that is strictly owned by + the current process, excluding the halo indices
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu49.html b/docs/html/userhtmlsu49.html new file mode 100644 index 00000000..03b88635 --- /dev/null +++ b/docs/html/userhtmlsu49.html @@ -0,0 +1,131 @@ + + +psb_owned_index — + + + + + + + +

+

6.20 psb_owned_index —

+ + + +
+call psb_owned_index(y, x, desc_a, info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+x
Integer indices.
Scope: local
Type: required
Intent: in, inout.
Specified as: a scalar or a rank one integer array.
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+iact
specifies action to be taken in case of range errors. Scope: global
Type: optional
Intent: in.
Specified as: a character variable Ignore, Warning or Abort, default Ignore.
+

+

+On Return
+
+y
A logical mask which is true for all corresponding entries of x that are owned + by the current process Scope: local
Type: required
Intent: out.
Specified as: a scalar or rank one logical array. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + +

Notes +

    +
  1. This routine returns a .true. value for those indices that are strictly + owned by the current process, excluding the halo indices
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu5.html b/docs/html/userhtmlsu5.html new file mode 100644 index 00000000..a3b5df1a --- /dev/null +++ b/docs/html/userhtmlsu5.html @@ -0,0 +1,814 @@ + + +Descriptor data structure + + + + + + + + + + +

+

3.1 Descriptor data structure

+

All the general matrix informations and elements to be exchanged among processes +are stored within a data structure of the type psb_desc_type. Every structure of this +type is associated with a discretization pattern and enables data communications and +other operations that are necessary for implementing the various algorithms of +interest to us. +

The data structure itself psb_desc_type can be treated as an opaque object +handled via the tools routines of Sec. 6 or the query routines detailed below; +nevertheless we include here a description for the curious reader. +

First we describe the psb_indx_map type. This is a data structure that keeps +track of a certain number of basic issues such as: +

+

There are many different schemes for storing these data; therefore there are a number of +types extending the base one, and the descriptor structure holds a polymorphic +object whose dynamic type can be any of the extended types. The methods +associated with this data type answer the following queries: +

+ + + +

All methods but the last are purely local; the last method potentially requires +communication among processes, and thus is a synchronous method. The +choice of a specific dynamic type for the index map is made at the time the +descriptor is initially allocated, according to the mode of initialization (see +also 6). +

The descriptor contents are as follows: +

+indxmap
A polymorphic variable of a type that is any extension of the + indx_map type described above.
+
+halo_index
A list of the halo and boundary elements for the current process to be + exchanged with other processes; for each processes with which it is necessary to + communicate: +
    +
  1. Process identifier; +
  2. +
  3. Number of points to be received; +
  4. +
  5. Indices of points to be received; +
  6. +
  7. Number of points to be sent; +
  8. +
  9. Indices of points to be sent;
+

Specified as: a vector of integer type, see 3.3. +

+ext_index
A list of element indices to be exchanged to implement the mapping + between a base descriptor and a descriptor with overlap.
Specified as: a vector of integer type, see 3.3. +
+ovrlap_index
A list of the overlap elements for the current process, organized in + groups like the previous vector: +
    +
  1. Process identifier; +
  2. +
  3. Number of points to be received; +
  4. +
  5. Indices of points to be received; +
  6. +
  7. Number of points to be sent; +
  8. +
  9. Indices of points to be sent;
+ + + +

Specified as: a vector of integer type, see 3.3. +

+ovr_mst_idx
A list to retrieve the value of each overlap element from the respective + master process.
Specified as: a vector of integer type, see 3.3. +
+ovrlap_elem
For all overlap points belonging to th ecurrent process: +
    +
  1. Overlap point index; +
  2. +
  3. Number of processes sharing that overlap points; +
  4. +
  5. Index of a “master” process:
+

Specified as: an allocatable integer array of rank two. +

+bnd_elem
A list of all boundary points, i.e. points that have a connection with + other processes.
+

The Fortran 2003 declaration for psb_desc_type structures is as follows:


+
+

+

+type psb_desc_type + 
    class(psb_indx_map), allocatable :: indxmap + 
    type(psb_i_vect_type) :: v_halo_index + 
    type(psb_i_vect_type) :: v_ext_index + 
    type(psb_i_vect_type) :: v_ovrlap_index + 
    type(psb_i_vect_type) :: v_ovr_mst_idx + 
    integer, allocatable  :: ovrlap_elem(:,:) + 
    integer, allocatable  :: bnd_elem(:) + 
end type psb_desc_type +
+

+
Figure 3: The PSBLAS defined data type that contains the communication +descriptor.
+


+

A communication descriptor associated with a sparse matrix has a state, which +can take the following values: +

+Build:
State entered after the first allocation, and before the first assembly; in + this state it is possible to add communication requirements among different + processes. + + + +
+Assembled:
State entered after the assembly; computations using the + associated sparse matrix, such as matrix-vector products, are only possible + in this state.
+

+

3.1.1 Descriptor Methods
+

+

3.1.2 get_local_rows — Get number of local rows
+ + + +
+nr = desc%get_local_rows() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc
the communication descriptor.
Scope: local.
+

+

+On Return
+
+Function value
The number of local rows, i.e. the number of rows owned by + the current process; as explained in 1, it is equal to |Ii|+|Bi|. The returned + value is specific to the calling process.
+

+

3.1.3 get_local_cols — Get number of local cols
+ + + +
+nc = desc%get_local_cols() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc
the communication descriptor.
Scope: local.
+

+

+On Return
+
+Function value
The number of local cols, i.e. the number of indices used by + the current process, including both local and halo indices; as explained + in 1, it is equal to |Ii| + |Bi| + |Hi|. The returned value is specific to the + calling process.
+

+

3.1.4 get_global_rows — Get number of global rows
+ + + +
+nr = desc%get_global_rows() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc
the communication descriptor.
Scope: local.
+

+

+On Return
+
+Function value
The number of global rows, i.e. the size of the global index + space.
+

+

3.1.5 get_global_cols — Get number of global cols
+ + + +
+nr = desc%get_global_cols() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc
the communication descriptor.
Scope: local.
+

+

+On Return
+
+Function value
The number of global cols; usually this is equal to the number + of global rows.
+

+

3.1.6 get_global_indices — Get vector of global indices
+ + + +
+myidx = desc%get_global_indices([owned]) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc
the communication descriptor.
Scope: local.
Type: required.
+
+owned
Choose if you only want owned indices (owned=.true.) or also halo + indices (owned=.false.). Scope: local.
Type: optional; default: .true..
+

+

+On Return
+
+Function value
The global indices, returned as an allocatable integer array of + kind psb_lpk_ and rank 1.
+

+

3.1.7 get_context — Get communication context
+ + + +
+ictxt = desc%get_context() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc
the communication descriptor.
Scope: local.
+

+

+On Return
+
+Function value
The communication context.
+

+

3.1.8 Clone — clone current object
+ + + +
+call  desc%clone(descout,info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc
the communication descriptor.
Scope: local.
+

+

+On Return
+
+descout
A copy of the input object. +
+info
Return code.
+

+

3.1.9 CNV — convert internal storage format
+ + + +
+call  desc%cnv(mold) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc
the communication descriptor.
Scope: local.
+
+mold
the desired integer storage format.
Scope: local.
Specified as: a object of type derived from (integer) + psb_T_base_vect_type.
+

The mold arguments may be employed to interface with special devices, such as GPUs +and other accelerators. +

+

3.1.10 psb_cd_get_large_threshold — Get threshold for index mapping +switch
+ + + +
+ith = psb_cd_get_large_threshold() +
+

+

+

+Type:
Asynchronous. +
+On Return
+
+Function value
The current value for the size threshold. +
+

+

3.1.11 psb_cd_set_large_threshold — Set threshold for index mapping +switch
+ + + +
+call psb_cd_set_large_threshold(ith) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+ith
the new threshold for communication descriptors.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer value greater than zero.
+

Note: the threshold value is only queried by the library at the time a call to psb_cdall +is executed, therefore changing the threshold has no effect on communication +descriptors that have already been initialized. Moreover the threshold must have the +same value on all processes. +

+

3.1.12 get_p_adjcncy — Get process adjacency list
+ + + +
+list =  desc%get_p_adjcncy() +
+

+

+

+Type:
Asynchronous. +
+On Return
+
+Function value
The current list of adjacent processes, i.e. processes with + which the current one has to exchange halo data. +
+

+

3.1.13 set_p_adjcncy — Set process adjacency list
+ + + +
+call desc%set_p_adjcncy(list) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+list
the list of adjacent processes.
Scope: local.
Type: required.
Intent: in.
Specified as: a one-dimensional array of integers of kind psb_ipk_.
+

Note: this method can be called after a call to psb_cdall and before a call to +psb_cdasb. The user is specifying here some knowledge about which processes are +topological neighbours of the current process. The availability of this information +may speed up the execution of the assembly call psb_cdasb. +

+

3.1.14 fnd_owner — Find the owner process of a set of indices
+ + + +
+call desc%fnd_owner(idx,iprc,info) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+idx
the list of global indices for which we need the owning processes.
Scope: local.
Type: required.
Intent: in.
Specified as: a one-dimensional array of integers of kind psb_lpk_. +
+On Return
+
+iprc
the list of processes owning the indices in idx.
Scope: local.
Type: required.
Intent: in.
Specified as: an allocatable one-dimensional array of integers of kind + psb_ipk_.
+

Note: this method may or may not actually require communications, depending on the +exact internal data storage; given that the choice of storage may be altered by +runtime parameters, it is necessary for safety that this method is called by all +processes. +

+

3.1.15 Named Constants
+

+

+psb_none_
Generic no-op; +
+psb_root_
Default root process for broadcast and scatter operations; +
+psb_nohalo_
Do not fetch halo elements; +
+psb_halo_
Fetch halo elements from neighbouring processes; + + + +
+psb_sum_
Sum overlapped elements +
+psb_avg_
Average overlapped elements +
+psb_comm_halo_
Exchange data based on the halo_index list; +
+psb_comm_ext_
Exchange data based on the ext_index list; +
+psb_comm_ovr_
Exchange data based on the ovrlap_index list; +
+psb_comm_mov_
Exchange data based on the ovr_mst_idx list; +
+ + + + +

+ diff --git a/docs/html/userhtmlsu50.html b/docs/html/userhtmlsu50.html new file mode 100644 index 00000000..abeeb70d --- /dev/null +++ b/docs/html/userhtmlsu50.html @@ -0,0 +1,103 @@ + + +psb_is_local — + + + + + + + +

+

6.21 psb_is_local —

+ + + +
+call psb_is_local(x, desc_a) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+x
Integer index.
Scope: local
Type: required
Intent: in.
Specified as: a scalar integer.
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type.
+

+

+On Return
+
+Function value
A logical mask which is true if x is local to the current process + Scope: local
Type: required
Intent: out.
+

Notes +

    +
  1. This routine returns a .true. value for an index that is local to the current + process, including the halo indices
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu51.html b/docs/html/userhtmlsu51.html new file mode 100644 index 00000000..98b2f4aa --- /dev/null +++ b/docs/html/userhtmlsu51.html @@ -0,0 +1,131 @@ + + +psb_local_index — + + + + + + + +

+

6.22 psb_local_index —

+ + + +
+call psb_local_index(y, x, desc_a, info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+x
Integer indices.
Scope: local
Type: required
Intent: in, inout.
Specified as: a scalar or a rank one integer array.
+
+desc_a
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+iact
specifies action to be taken in case of range errors. Scope: global
Type: optional
Intent: in.
Specified as: a character variable Ignore, Warning or Abort, default Ignore.
+

+

+On Return
+
+y
A logical mask which is true for all corresponding entries of x that are local + to the current process Scope: local
Type: required
Intent: out.
Specified as: a scalar or rank one logical array. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + +

Notes +

    +
  1. This routine returns a .true. value for those indices that are local to the + current process, including the halo indices.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu52.html b/docs/html/userhtmlsu52.html new file mode 100644 index 00000000..d970c404 --- /dev/null +++ b/docs/html/userhtmlsu52.html @@ -0,0 +1,107 @@ + + +psb_get_boundary — Extract list of boundary elements + + + + + + + +

+

6.23 psb_get_boundary — Extract list of boundary elements

+ + + +
+call psb_get_boundary(bndel, desc, info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type.
+

+

+On Return
+
+bndel
The list of boundary elements on the calling process, in local numbering.
Scope: local
Type: required
Intent: out.
Specified as: a rank one array with the ALLOCATABLE attribute, of type + integer.
+
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. If there are no boundary elements (i.e., if the local part of the connectivity + graph is self-contained) the output vector is set to the “not allocated” + state. +
  2. +
  3. Otherwise the size of bndel will be exactly equal to the number of + boundary elements.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu53.html b/docs/html/userhtmlsu53.html new file mode 100644 index 00000000..4d5f699c --- /dev/null +++ b/docs/html/userhtmlsu53.html @@ -0,0 +1,106 @@ + + +psb_get_overlap — Extract list of overlap elements + + + + + + + +

+

6.24 psb_get_overlap — Extract list of overlap elements

+ + + +
+call psb_get_overlap(ovrel, desc, info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+desc
the communication descriptor.
Scope:local.
Type:required.
Intent: in.
Specified as: a structured data of type psb_desc_type.
+

+

+On Return
+
+ovrel
The list of overlap elements on the calling process, in local numbering.
Scope: local
Type: required
Intent: out.
Specified as: a rank one array with the ALLOCATABLE attribute, of type + integer.
+
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. If there are no overlap elements the output vector is set to the “not + allocated” state. +
  2. +
  3. Otherwise the size of ovrel will be exactly equal to the number of overlap + elements.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu54.html b/docs/html/userhtmlsu54.html new file mode 100644 index 00000000..e37335c6 --- /dev/null +++ b/docs/html/userhtmlsu54.html @@ -0,0 +1,209 @@ + + +psb_sp_getrow — Extract row(s) from a sparse matrix + + + + + + + +

+

6.25 psb_sp_getrow — Extract row(s) from a sparse matrix

+ + + +
+call psb_sp_getrow(row, a, nz, ia, ja, val, info, & + 
              & append, nzin, lrw) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+row
The (first) row to be extracted.
Scope:local
Type:required
Intent: in.
Specified as: an integer > 0. +
+a
the matrix from which to get rows.
Scope:local
Type:required
Intent: in.
Specified as: a structured data of type psb_Tspmat_type. +
+append
Whether to append or overwrite existing output.
Scope:local
Type:optional
Intent: in.
Specified as: a logical value default: false (overwrite). +
+nzin
Input size to be appended to.
Scope:local
Type:optional
Intent: in.
Specified as: an integer > 0. When append is true, specifies how many + entries in the output vectors are already filled. +
+lrw
The last row to be extracted.
Scope:local
Type:optional
Intent: in.
Specified as: an integer > 0, default: row. +
+ + + +

+

+On Return
+
+nz
the number of elements returned by this call.
Scope:local.
Type:required.
Intent: out.
Returned as: an integer scalar. +
+ia
the row indices.
Scope:local.
Type:required.
Intent: inout.
Specified as: an integer array with the ALLOCATABLE attribute. +
+ja
the column indices of the elements to be inserted.
Scope:local.
Type:required.
Intent: inout.
Specified as: an integer array with the ALLOCATABLE attribute. +
+val
the elements to be inserted.
Scope:local.
Type:required.
Intent: inout.
Specified as: a real array with the ALLOCATABLE attribute. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

Notes +

    +
  1. The output nz is always the size of the output generated by the current + call; thus, if append=.true., the total output size will be nzin + nz, with + the newly extracted coefficients stored in entries nzin+1:nzin+nz of the + array arguments; +
  2. +
  3. When append=.true. the output arrays are reallocated as necessary; +
  4. +
  5. The row and column indices are returned in the local numbering + scheme; if the global numbering is desired, the user may employ the + psb_loc_to_glob routine on the output.
+ + + + + + + + + + +

+ diff --git a/docs/html/userhtmlsu55.html b/docs/html/userhtmlsu55.html new file mode 100644 index 00000000..35b7c749 --- /dev/null +++ b/docs/html/userhtmlsu55.html @@ -0,0 +1,113 @@ + + +psb_sizeof — Memory occupation + + + + + + + +

+

6.26 psb_sizeof — Memory occupation

+

This function computes the memory occupation of a PSBLAS object. + + + +

+isz = psb_sizeof(a) + 
isz = psb_sizeof(desc_a) + 
isz = psb_sizeof(prec) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
A sparse matrix A.
Scope: local
Type: required
Intent: in.
Specified as: a structured data of type psb_Tspmat_type. +
+desc_a
Communication descriptor.
Scope: local
Type: required
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+prec
Scope: local
Type: required
Intent: in.
Specified as: a preconditioner data structure psb_prec_type. +
+On Return
+
+Function value
The memory occupation of the object specified in the calling + sequence, in bytes.
Scope: local
Returned as: an integer(psb_long_int_k_) number.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu56.html b/docs/html/userhtmlsu56.html new file mode 100644 index 00000000..047a538f --- /dev/null +++ b/docs/html/userhtmlsu56.html @@ -0,0 +1,229 @@ + + +Sorting utilities — + + + + + + + +

+

6.27 Sorting utilities —

+

psb_msort — Sorting by the Merge-sort algorithm +

psb_qsort — Sorting by the Quicksort algorithm +

psb_hsort — Sorting by the Heapsort algorithm + + + +

+call psb_msort(x,ix,dir,flag) + 
call psb_qsort(x,ix,dir,flag) + 
call psb_hsort(x,ix,dir,flag) +
+

+

These serial routines sort a sequence X into ascending or descending order. The +argument meaning is identical for the three calls; the only difference is the algorithm +used to accomplish the task (see Usage Notes below). +

+Type:
Asynchronous. +
+On Entry
+
+x
The sequence to be sorted.
Type:required.
Specified as: an integer, real or complex array of rank 1. +
+ix
A vector of indices.
Type:optional.
Specified as: an integer array of (at least) the same size as X. +
+dir
The desired ordering.
Type:optional.
Specified as: an integer value: +
+ Integer and real data:
psb_sort_up_, psb_sort_down_, + psb_asort_up_, psb_asort_down_; default psb_sort_up_. +
+ Complex data:
psb_lsort_up_, psb_lsort_down_, psb_asort_up_, + psb_asort_down_; default psb_lsort_up_.
+
+flag
Whether to keep the original values in IX.
Type:optional.
Specified as: an integer value psb_sort_ovw_idx_ or psb_sort_keep_idx_; + default psb_sort_ovw_idx_. +
+

+

+On Return
+ + + +
+x
The sequence of values, in the chosen ordering.
Type:required.
Specified as: an integer, real or complex array of rank 1. +
+ix
A vector of indices.
Type: Optional
An integer array of rank 1, whose entries are moved to the same position + as the corresponding entries in x.
+

Notes +

    +
  1. For integer or real data the sorting can be performed in the up/down + direction, on the natural or absolute values; +
  2. +
  3. For complex data the sorting can be done in a lexicographic order (i.e.: + sort on the real part with ties broken according to the imaginary part) or + on the absolute values; +
  4. +
  5. The routines return the items in the chosen ordering; the output difference + is the handling of ties (i.e. items with an equal value) in the original input. + With the merge-sort algorithm ties are preserved in the same relative + order as they had in the original sequence, while this is not guaranteed for + quicksort or heapsort; +
  6. +
  7. If flag = psb_sort_ovw_idx_ then the entries in ix(1 : n) where n is the size + of x are initialized to ix(i) i; thus, upon return from the subroutine, + for each index i we have in ix(i) the position that the item x(i) occupied + in the original data sequence; +
  8. +
  9. If flag = psb_sort_keep_idx_ the routine will assume that the entries in + ix(:) have already been initialized by the user; +
  10. +
  11. The three sorting algorithms have a similar O(nlog n) expected running time; + in the average case quicksort will be the fastest and merge-sort the slowest. + However note that: +
      +
    1. The worst case running time for quicksort is O(n2); the algorithm + implemented here follows the well-known median-of-three heuristics, + but the worst case may still apply; +
    2. +
    3. The worst case running time for merge-sort and heap-sort is + O(nlog n) as the average case; + + + +
    4. +
    5. The merge-sort algorithm is implemented to take advantage of + subsequences that may be already in the desired ordering prior to + the subroutine call; this situation is relatively common when dealing + with groups of indices of sparse matrix entries, thus merge-sort is the + preferred choice when a sorting is needed by other routines in the + library.
    +
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu57.html b/docs/html/userhtmlsu57.html new file mode 100644 index 00000000..9b44edbc --- /dev/null +++ b/docs/html/userhtmlsu57.html @@ -0,0 +1,121 @@ + + +psb_init — Initializes PSBLAS parallel environment + + + + + + + +

+

7.1 psb_init — Initializes PSBLAS parallel environment

+ + + +
+call psb_init(icontxt, np, basectxt, ids) +
+

+

This subroutine initializes the PSBLAS parallel environment, defining a virtual +parallel machine. +

+Type:
Synchronous. +
+On Entry
+
+np
Number of processes in the PSBLAS virtual parallel machine.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer value.  Default: use all available processes. +
+basectxt
the initial communication context. The new context will be defined + from the processes participating in the initial one.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer value.  Default: use MPI_COMM_WORLD. +
+ids
Identities of the processes to use for the new context; the argument is + ignored when np is not specified. This allows the processes in the new + environment to be in an order different from the original one.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer array.  Default: use the indices (0np - 1).
+

+

+On Return
+
+icontxt
the communication context identifying the virtual parallel machine. + Note that this is always a duplicate of basectxt, so that library + communications are completely separated from other communication + operations.
Scope: global.
Type: required.
Intent: out.
Specified as: an integer variable.
+ + + +

Notes +

    +
  1. A call to this routine must precede any other PSBLAS call. +
  2. +
  3. It is an error to specify a value for np greater than the number of processes + available in the underlying base parallel environment.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu58.html b/docs/html/userhtmlsu58.html new file mode 100644 index 00000000..2d6a8e06 --- /dev/null +++ b/docs/html/userhtmlsu58.html @@ -0,0 +1,118 @@ + + +psb_info — Return information about PSBLAS parallel environment + + + + + + + +

+

7.2 psb_info — Return information about PSBLAS parallel environment

+ + + +
+call psb_info(icontxt, iam, np) +
+

+

This subroutine returns information about the PSBLAS parallel environment, +defining a virtual parallel machine. +

+Type:
Asynchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable.
+

+

+On Return
+
+iam
Identifier of current process in the PSBLAS virtual parallel machine.
Scope: local.
Type: required.
Intent: out.
Specified as: an integer value. -1 iam np - 1  +
+np
Number of processes in the PSBLAS virtual parallel machine.
Scope: global.
Type: required.
Intent: out.
Specified as: an integer variable.  
+

Notes +

    +
  1. For processes in the virtual parallel machine the identifier will satisfy + 0 iam np - 1; +
  2. +
  3. If the user has requested on psb_init a number of processes less than + the total available in the parallel execution environment, the remaining + processes will have on return iam = -1; the only call involving icontxt + that any such process may execute is to psb_exit.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu59.html b/docs/html/userhtmlsu59.html new file mode 100644 index 00000000..6634744c --- /dev/null +++ b/docs/html/userhtmlsu59.html @@ -0,0 +1,101 @@ + + +psb_exit — Exit from PSBLAS parallel environment + + + + + + + +

+

7.3 psb_exit — Exit from PSBLAS parallel environment

+ + + +
+call psb_exit(icontxt) + 
call psb_exit(icontxt,close) +
+

+

This subroutine exits from the PSBLAS parallel virtual machine. +

+Type:
Synchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+close
Whether to close all data structures related to the virtual parallel + machine, besides those associated with icontxt.
Scope: global.
Type: optional.
Intent: in.
Specified as: a logical variable, default value: true.
+

Notes +

    +
  1. This routine may be called even if a previous call to psb_info has returned + with iam = -1; indeed, it it is the only routine that may be called with + argument icontxt in this situation. +
  2. +
  3. A call to this routine with close=.true. implies a call to MPI_Finalize, + after which no parallel routine may be called. +
  4. +
  5. If the user whishes to use multiple communication contexts in the + same program, or to enter and exit multiple times into the parallel + environment, this routine may be called to selectively close the contexts + with close=.false., while on the last call it should be called with + close=.true. to shutdown in a clean way the entire parallel environment.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu6.html b/docs/html/userhtmlsu6.html new file mode 100644 index 00000000..18b94c13 --- /dev/null +++ b/docs/html/userhtmlsu6.html @@ -0,0 +1,963 @@ + + +Sparse Matrix class + + + + + + + +

+

3.2 Sparse Matrix class

+

The psb_Tspmat_type class contains all information about the local portion of the +sparse matrix and its storage mode. Its design is based on the STATE design +pattern [13] as detailed in [11]; the type declaration is shown in figure 4 where T is a +placeholder for the data type and precision variants +

+S
Single precision real; +
+D
Double precision real; +
+C
Single precision complex; +
+Z
Double precision complex.
+

The actual data is contained in the polymorphic component a%a of type +psb_T_base_sparse_mat; its specific layout can be chosen dynamically among the +predefined types, or an entirely new storage layout can be implemented and passed to +the library at runtime via the psb_spasb routine.


+
+

+

+  type :: psb_Tspmat_type + 
    class(psb_T_base_sparse_mat), allocatable  :: a + 
  end type  psb_Tspmat_type +
+

+
Figure 4: The PSBLAS defined data type that contains a sparse matrix.
+


+

The following very common formats are precompiled in PSBLAS and thus are +always available: +

+psb_T_coo_sparse_mat
Coordinate storage; +
+psb_T_csr_sparse_mat
Compressed storage by rows; +
+psb_T_csc_sparse_mat
Compressed storage by columns;
+ + + +

The inner sparse matrix has an associated state, which can take the following +values: +

+Build:
State entered after the first allocation, and before the first assembly; in + this state it is possible to add nonzero entries. +
+Assembled:
State entered after the assembly; computations using the sparse + matrix, such as matrix-vector products, are only possible in this state; +
+Update:
State entered after a reinitalization; this is used to handle applications + in which the same sparsity pattern is used multiple times with different + coefficients. In this state it is only possible to enter coefficients for already + existing nonzero entries.
+

The only storage variant supporting the build state is COO; all other variants are +obtained by conversion to/from it. +

+

3.2.1 Sparse Matrix Methods
+

+

3.2.2 get_nrows — Get number of rows in a sparse matrix
+ + + +
+nr = a%get_nrows() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix
Scope: local
+

+

+On Return
+
+Function value
The number of rows of sparse matrix a.
+

+

3.2.3 get_ncols — Get number of columns in a sparse matrix
+ + + +
+nc = a%get_ncols() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix
Scope: local
+

+

+On Return
+
+Function value
The number of columns of sparse matrix a.
+

+

3.2.4 get_nnzeros — Get number of nonzero elements in a sparse matrix
+ + + +
+nz = a%get_nnzeros() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix
Scope: local
+

+

+On Return
+
+Function value
The number of nonzero elements stored in sparse matrix a.
+

Notes +

    +
  1. The function value is specific to the storage format of matrix a; some + storage formats employ padding, thus the returned value for the same + matrix may be different for different storage choices.
+

+

3.2.5 get_size — Get maximum number of nonzero elements in a sparse +matrix
+ + + +
+maxnz = a%get_size() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix
Scope: local
+

+

+On Return
+
+Function value
The maximum number of nonzero elements that can be stored + in sparse matrix a using its current memory allocation.
+

+

3.2.6 sizeof — Get memory occupation in bytes of a sparse matrix
+ + + +
+memory_size = a%sizeof() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix
Scope: local
+

+

+On Return
+
+Function value
The memory occupation in bytes.
+

+

3.2.7 get_fmt — Short description of the dynamic type
+ + + +
+write(*,*) a%get_fmt() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix
Scope: local
+

+

+On Return
+
+Function value
A short string describing the dynamic type of the matrix. + Predefined values include NULL, COO, CSR and CSC.
+

+

3.2.8 is_bld, is_upd, is_asb — Status check
+ + + +
+if (a%is_bld()) then + 
if (a%is_upd()) then + 
if (a%is_asb()) then +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix
Scope: local
+

+

+On Return
+
+Function value
A logical value indicating whether the matrix is in the Build, + Update or Assembled state, respectively.
+

+

3.2.9 is_lower, is_upper, is_triangle, is_unit — Format check
+ + + +
+if (a%is_triangle()) then + 
if (a%is_upper()) then + 
if (a%is_lower()) then + 
if (a%is_unit()) then +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix
Scope: local
+

+

+On Return
+
+Function value
A logical value indicating whether the matrix is triangular; + if is_triangle() returns .true. check also if it is lower, upper and with + a unit (i.e. assumed) diagonal.
+

+

3.2.10 cscnv — Convert to a different storage format
+ + + +
+call  a%cscnv(b,info [, type, mold, dupl]) + 
call  a%cscnv(info [, type, mold, dupl]) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix.
A variable of type psb_Tspmat_type.
Scope: local.
+
+type
a string requesting a new format.
Type: optional. +
+mold
a variable of class(psb_T_base_sparse_mat) requesting a new format.
Type: optional. +
+dupl
an integer value specifing how to handle duplicates (see Named Constants + below)
+

+

+On Return
+
+b,a
A copy of a with a new storage format.
A variable of type psb_Tspmat_type. +
+info
Return code.
+

The mold arguments may be employed to interface with special devices, such as GPUs +and other accelerators. +

+

3.2.11 csclip — Reduce to a submatrix
+ + + +
+    call a%csclip(b,info[,& + 
       & imin,imax,jmin,jmax,rscale,cscale]) +
+

+

Returns the submatrix A(imin:imax,jmin:jmax), optionally rescaling row/col +indices to the range 1:imax-imin+1,1:jmax-jmin+1. +

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix.
A variable of type psb_Tspmat_type.
Scope: local.
+
+imin,imax,jmin,jmax
Minimum and maximum row and column indices.
Type: optional. +
+rscale,cscale
Whether to rescale row/column indices. Type: optional.
+

+

+On Return
+
+b
A copy of a submatrix of a.
A variable of type psb_Tspmat_type. +
+info
Return code.
+

+

3.2.12 clean_zeros — Eliminate zero coefficients
+ + + +
+    call a%clean_zeros(info) +
+

+

Eliminates zero coefficients in the input matrix. Note that depending on the +internal storage format, there may still be some amount of zero padding in the +output. +

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix.
A variable of type psb_Tspmat_type.
Scope: local.
+

+

+On Return
+
+a
The matrix a without zero coefficients.
A variable of type psb_Tspmat_type. +
+info
Return code.
+

+

3.2.13 get_diag — Get main diagonal
+ + + +
+    call a%get_diag(d,info) +
+

+

Returns a copy of the main diagonal. +

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix.
A variable of type psb_Tspmat_type.
Scope: local.
+

+

+On Return
+
+d
A copy of the main diagonal.
A one-dimensional array of the appropriate type. +
+info
Return code.
+

+

3.2.14 clip_diag — Cut out main diagonal
+ + + +
+    call a%clip_diag(b,info) +
+

+

Returns a copy of a without the main diagonal. +

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix.
A variable of type psb_Tspmat_type.
Scope: local.
+

+

+On Return
+
+b
A copy of a without the main diagonal.
A variable of type psb_Tspmat_type. +
+info
Return code.
+

+

3.2.15 tril — Return the lower triangle
+ + + +
+    call a%tril(l,info[,& + 
       & diag,imin,imax,jmin,jmax,rscale,cscale,u]) +
+

+

Returns the lower triangular part of submatrix A(imin:imax,jmin:jmax), +optionally rescaling row/col indices to the range 1:imax-imin+1,1:jmax-jmin+1 and +returing the complementary upper triangle. +

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix.
A variable of type psb_Tspmat_type.
Scope: local.
+
+diag
Include diagonals up to this one; diag=1 means the first superdiagonal, + diag=-1 means the first subdiagonal. Default 0. +
+imin,imax,jmin,jmax
Minimum and maximum row and column indices.
Type: optional. +
+rscale,cscale
Whether to rescale row/column indices. Type: optional.
+

+

+On Return
+
+l
A copy of the lower triangle of a.
A variable of type psb_Tspmat_type. +
+u
(optional) A copy of the upper triangle of a.
A variable of type psb_Tspmat_type. +
+info
Return code.
+

+

3.2.16 triu — Return the upper triangle
+ + + +
+    call a%triu(u,info[,& + 
       & diag,imin,imax,jmin,jmax,rscale,cscale,l]) +
+

+

Returns the upper triangular part of submatrix A(imin:imax,jmin:jmax), +optionally rescaling row/col indices to the range 1:imax-imin+1,1:jmax-jmin+1, +and returing the complementary lower triangle. +

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix.
A variable of type psb_Tspmat_type.
Scope: local.
+
+diag
Include diagonals up to this one; diag=1 means the first superdiagonal, + diag=-1 means the first subdiagonal. Default 0. +
+imin,imax,jmin,jmax
Minimum and maximum row and column indices.
Type: optional. +
+rscale,cscale
Whether to rescale row/column indices. Type: optional.
+

+

+On Return
+
+u
A copy of the upper triangle of a.
A variable of type psb_Tspmat_type. +
+l
(optional) A copy of the lower triangle of a.
A variable of type psb_Tspmat_type. +
+info
Return code.
+

+

3.2.17 psb_set_mat_default — Set default storage format
+ + + +
+call  psb_set_mat_default(a) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
a variable of class(psb_T_base_sparse_mat) requesting a new default + storage format.
Type: required.
+

+

3.2.18 clone — Clone current object
+ + + +
+call  a%clone(b,info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix.
Scope: local.
+

+

+On Return
+
+b
A copy of the input object. +
+info
Return code.
+

+

3.2.19 Named Constants
+

+

+psb_dupl_ovwrt_
Duplicate coefficients should be overwritten (i.e. ignore + duplications) +
+psb_dupl_add_
Duplicate coefficients should be added; +
+psb_dupl_err_
Duplicate coefficients should trigger an error conditino +
+psb_upd_dflt_
Default update strategy for matrix coefficients; +
+psb_upd_srch_
Update strategy based on search into the data structure; +
+psb_upd_perm_
Update strategy based on additional permutation data (see + tools routine description).
+ + + + +

+ diff --git a/docs/html/userhtmlsu60.html b/docs/html/userhtmlsu60.html new file mode 100644 index 00000000..fb131e3f --- /dev/null +++ b/docs/html/userhtmlsu60.html @@ -0,0 +1,84 @@ + + +psb_get_mpi_comm — Get the MPI communicator + + + + + + + +

+

7.4 psb_get_mpi_comm — Get the MPI communicator

+ + + +
+icomm = psb_get_mpi_comm(icontxt) +
+

+

This function returns the MPI communicator associated with a PSBLAS +context +

+Type:
Asynchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable.
+

+

+On Return
+
+Function value
The MPI communicator associated with the PSBLAS virtual + parallel machine.
Scope: global.
Type: required.
Intent: out.
+

Notes The subroutine version psb_get_mpicomm is still available but is +deprecated. + + + + + + +

+

+ diff --git a/docs/html/userhtmlsu61.html b/docs/html/userhtmlsu61.html new file mode 100644 index 00000000..cad2fd88 --- /dev/null +++ b/docs/html/userhtmlsu61.html @@ -0,0 +1,99 @@ + + +psb_get_mpi_rank — Get the MPI rank + + + + + + + +

+

7.5 psb_get_mpi_rank — Get the MPI rank

+ + + +
+rank = psb_get_mpi_rank(icontxt, id) +
+

+

This function returns the MPI rank of the PSBLAS process id +

+Type:
Asynchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+id
Identifier of a process in the PSBLAS virtual parallel machine.
Scope: local.
Type: required.
Intent: in.
Specified as: an integer value. 0 id np -
+

+

+On Return
+
+Funciton value
The MPI rank associated with the PSBLAS process id.
Scope: local.
Type: required.
Intent: out.
+

Notes The subroutine version psb_get_rank is still available but is deprecated. + + + + + + +

+

+ diff --git a/docs/html/userhtmlsu62.html b/docs/html/userhtmlsu62.html new file mode 100644 index 00000000..2786fa5e --- /dev/null +++ b/docs/html/userhtmlsu62.html @@ -0,0 +1,58 @@ + + +psb_wtime — Wall clock timing + + + + + + + +

+

7.6 psb_wtime — Wall clock timing

+ + + +
+time = psb_wtime() +
+

+

This function returns a wall clock timer. The resolution of the timer is dependent +on the underlying parallel environment implementation. +

+Type:
Asynchronous. +
+On Exit
+
+Function value
the elapsed time in seconds.
Returned as: a real(psb_dpk_) variable.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu63.html b/docs/html/userhtmlsu63.html new file mode 100644 index 00000000..dd7f5c80 --- /dev/null +++ b/docs/html/userhtmlsu63.html @@ -0,0 +1,63 @@ + + +psb_barrier — Sinchronization point parallel environment + + + + + + + +

+

7.7 psb_barrier — Sinchronization point parallel environment

+ + + +
+call psb_barrier(icontxt) +
+

+

This subroutine acts as an explicit synchronization point for the PSBLAS parallel +virtual machine. +

+Type:
Synchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu64.html b/docs/html/userhtmlsu64.html new file mode 100644 index 00000000..a1df06cb --- /dev/null +++ b/docs/html/userhtmlsu64.html @@ -0,0 +1,62 @@ + + +psb_abort — Abort a computation + + + + + + + +

+

7.8 psb_abort — Abort a computation

+ + + +
+call psb_abort(icontxt) +
+

+

This subroutine aborts computation on the parallel virtual machine. +

+Type:
Asynchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu65.html b/docs/html/userhtmlsu65.html new file mode 100644 index 00000000..8c6cf1df --- /dev/null +++ b/docs/html/userhtmlsu65.html @@ -0,0 +1,110 @@ + + +psb_bcast — Broadcast data + + + + + + + +

+

7.9 psb_bcast — Broadcast data

+ + + +
+call psb_bcast(icontxt, dat, root) +
+

+

This subroutine implements a broadcast operation based on the underlying +communication library. +

+Type:
Synchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+dat
On the root process, the data to be broadcast.
Scope: global.
Type: required.
Intent: inout.
Specified as: an integer, real or complex variable, which may be a scalar, + or a rank 1 or 2 array, or a character or logical variable, which may be + a scalar or rank 1 array.  Type, kind, rank and size must agree on all + processes. +
+root
Root process holding data to be broadcast.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer value 0 <= root <= np - 1, default 0  
+

+

+On Return
+
+dat
On processes other than root, the data to be broadcast.
Scope: global.
Type: required.
Intent: inout.
Specified as: an integer, real or complex variable, which may be a scalar, + or a rank 1 or 2 array, or a character or logical scalar.  Type, kind, rank + and size must agree on all processes.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu66.html b/docs/html/userhtmlsu66.html new file mode 100644 index 00000000..8a22d312 --- /dev/null +++ b/docs/html/userhtmlsu66.html @@ -0,0 +1,124 @@ + + +psb_sum — Global sum + + + + + + + +

+

7.10 psb_sum — Global sum

+ + + +
+call psb_sum(icontxt, dat, root) +
+

+

This subroutine implements a sum reduction operation based on the underlying +communication library. +

+Type:
Synchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+dat
The local contribution to the global sum.
Scope: global.
Type: required.
Intent: inout.
Specified as: an integer, real or complex variable, which may be a scalar, or + a rank 1 or 2 array.  Type, kind, rank and size must agree on all processes. +
+root
Process to hold the final sum, or -1 to make it available on all processes.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer value -1 <= root <= np - 1, default -1.  
+

+

+On Return
+
+dat
On destination process(es), the result of the sum operation.
Scope: global.
Type: required.
Intent: inout.
Specified as: an integer, real or complex variable, which may be a scalar, + or a rank 1 or 2 array.
Type, kind, rank and size must agree on all processes.
+

Notes + + + +

    +
  1. The dat argument is both input and output, and its value may be changed + even on processes different from the final result destination. +
  2. +
  3. The dat argument may also be a long integer scalar.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu67.html b/docs/html/userhtmlsu67.html new file mode 100644 index 00000000..d9951c08 --- /dev/null +++ b/docs/html/userhtmlsu67.html @@ -0,0 +1,125 @@ + + +psb_max — Global maximum + + + + + + + +

+

7.11 psb_max — Global maximum

+ + + +
+call psb_max(icontxt, dat, root) +
+

+

This subroutine implements a maximum valuereduction operation based on the +underlying communication library. +

+Type:
Synchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+dat
The local contribution to the global maximum.
Scope: local.
Type: required.
Intent: inout.
Specified as: an integer or real variable, which may be a scalar, or a rank + 1 or 2 array.  Type, kind, rank and size must agree on all processes. +
+root
Process to hold the final maximum, or -1 to make it available on all + processes.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer value -1 <= root <= np - 1, default -1.
+

+

+On Return
+
+dat
On destination process(es), the result of the maximum operation.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer or real variable, which may be a scalar, or a rank + 1 or 2 array.  Type, kind, rank and size must agree on all processes.
+

Notes + + + +

    +
  1. The dat argument is both input and output, and its value may be changed + even on processes different from the final result destination. +
  2. +
  3. The dat argument may also be a long integer scalar.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu68.html b/docs/html/userhtmlsu68.html new file mode 100644 index 00000000..d05498b6 --- /dev/null +++ b/docs/html/userhtmlsu68.html @@ -0,0 +1,125 @@ + + +psb_min — Global minimum + + + + + + + +

+

7.12 psb_min — Global minimum

+ + + +
+call psb_min(icontxt, dat, root) +
+

+

This subroutine implements a minimum value reduction operation based on the +underlying communication library. +

+Type:
Synchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+dat
The local contribution to the global minimum.
Scope: local.
Type: required.
Intent: inout.
Specified as: an integer or real variable, which may be a scalar, or a rank + 1 or 2 array.  Type, kind, rank and size must agree on all processes. +
+root
Process to hold the final value, or -1 to make it available on all processes.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer value -1 <= root <= np - 1, default -1.
+

+

+On Return
+
+dat
On destination process(es), the result of the minimum operation.
Scope: global.
Type: required.
Intent: inout.
Specified as: an integer or real variable, which may be a scalar, or a rank + 1 or 2 array.
Type, kind, rank and size must agree on all processes.
+

Notes + + + +

    +
  1. The dat argument is both input and output, and its value may be changed + even on processes different from the final result destination. +
  2. +
  3. The dat argument may also be a long integer scalar.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu69.html b/docs/html/userhtmlsu69.html new file mode 100644 index 00000000..5c330ac6 --- /dev/null +++ b/docs/html/userhtmlsu69.html @@ -0,0 +1,124 @@ + + +psb_amx — Global maximum absolute value + + + + + + + +

+

7.13 psb_amx — Global maximum absolute value

+ + + +
+call psb_amx(icontxt, dat, root) +
+

+

This subroutine implements a maximum absolute value reduction operation based +on the underlying communication library. +

+Type:
Synchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+dat
The local contribution to the global maximum.
Scope: local.
Type: required.
Intent: inout.
Specified as: an integer, real or complex variable, which may be a scalar, or + a rank 1 or 2 array.  Type, kind, rank and size must agree on all processes. +
+root
Process to hold the final value, or -1 to make it available on all processes.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer value -1 <= root <= np - 1, default -1.
+

+

+On Return
+
+dat
On destination process(es), the result of the maximum operation.
Scope: global.
Type: required.
Intent: inout.
Specified as: an integer, real or complex variable, which may be a scalar, or + a rank 1 or 2 array.  Type, kind, rank and size must agree on all processes.
+

Notes + + + +

    +
  1. The dat argument is both input and output, and its value may be changed + even on processes different from the final result destination. +
  2. +
  3. The dat argument may also be a long integer scalar.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu7.html b/docs/html/userhtmlsu7.html new file mode 100644 index 00000000..87e649d8 --- /dev/null +++ b/docs/html/userhtmlsu7.html @@ -0,0 +1,352 @@ + + +Dense Vector Data Structure + + + + + + + +

+

3.3 Dense Vector Data Structure

+

The psb_T_vect_type data structure encapsulates the dense vectors in a way similar +to sparse matrices, i.e. including a base type psb_T_base_vect_type. The user will +not, in general, access the vector components directly, but rather via the routines of +sec. 6. Among other simple things, we define here an extraction method that +can be used to get a full copy of the part of the vector stored on the local +process. +

The type declaration is shown in figure 5 where T is a placeholder for the data +type and precision variants +

+I
Integer; +
+S
Single precision real; +
+D
Double precision real; +
+C
Single precision complex; +
+Z
Double precision complex.
+

The actual data is contained in the polymorphic component v%v; the separation between +the application and the actual data is essential for cases where it is necessary to link +to data storage made available elsewhere outside the direct control of the +compiler/application, e.g. data stored in a graphics accelerator’s private memory. +


+
+

+

+  type psb_T_base_vect_type + 
    TYPE(KIND_), allocatable :: v(:) + 
  end type psb_T_base_vect_type + 

  type psb_T_vect_type + 
    class(psb_T_base_vect_type), allocatable :: v + 
  end type  psb_T_vect_type + 
+
+

+ + + +
Figure 5: The PSBLAS defined data type that contains a dense vector.
+


+

+

3.3.1 Vector Methods
+

+

3.3.2 get_nrows — Get number of rows in a dense vector
+ + + +
+nr = v%get_nrows() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+v
the dense vector
Scope: local
+

+

+On Return
+
+Function value
The number of rows of dense vector v.
+

+

3.3.3 sizeof — Get memory occupation in bytes of a dense vector
+ + + +
+memory_size = v%sizeof() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+v
the dense vector
Scope: local
+

+

+On Return
+
+Function value
The memory occupation in bytes.
+

+

3.3.4 set — Set contents of the vector
+ + + +
+ call  v%set(alpha[,first,last]) + 
 call  v%set(vect[,first,last]) + 
 call  v%zero() +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+v
the dense vector
Scope: local
+
+alpha
A scalar value.
Scope: local
Type: required
Intent: in.
Specified as: a number of the data type indicated in Table 1. +
+first,last
Boundaries for setting in the vector.
Scope: local
Type: optional
Intent: in.
Specified as: integers. +
+vect
An array
Scope: local
Type: required
Intent: in.
Specified as: a number of the data type indicated in Table 1.
+

Note that a call to v%zero() is provided as a shorthand, but is equivalent to a call +to v%set(zero) with the zero constant having the appropriate type and +kind. +

+

+On Return
+
+v
the dense vector, with updated entries
Scope: local
+ + + +

+

3.3.5 get_vect — Get a copy of the vector contents
+ + + +
+extv = v%get_vect([n]) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+v
the dense vector
Scope: local
+
+n
Size to be returned
Scope: local.
Type: optional; default: entire vector.
+
+

+

+On Return
+
+Function value
An allocatable array holding a copy of the dense vector + contents. If the argument n is specified, the size of the returned array + equals the minimum between n and the internal size of the vector, or 0 if + n is negative; otherwise, the size of the array is the same as the internal + size of the vector.
+

+

3.3.6 clone — Clone current object
+ + + +
+call  x%clone(y,info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+x
the dense vector.
Scope: local.
+

+

+On Return
+
+y
A copy of the input object. +
+info
Return code.
+ + + + +

+ diff --git a/docs/html/userhtmlsu70.html b/docs/html/userhtmlsu70.html new file mode 100644 index 00000000..4a8fda93 --- /dev/null +++ b/docs/html/userhtmlsu70.html @@ -0,0 +1,125 @@ + + +psb_amn — Global minimum absolute value + + + + + + + +

+

7.14 psb_amn — Global minimum absolute value

+ + + +
+call psb_amn(icontxt, dat, root) +
+

+

This subroutine implements a minimum absolute value reduction operation based +on the underlying communication library. +

+Type:
Synchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+dat
The local contribution to the global minimum.
Scope: local.
Type: required.
Intent: inout.
Specified as: an integer, real or complex variable, which may be a scalar, or + a rank 1 or 2 array.  Type, kind, rank and size must agree on all processes. +
+root
Process to hold the final value, or -1 to make it available on all processes.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer value -1 <= root <= np - 1, default -1.
+

+

+On Return
+
+dat
On destination process(es), the result of the minimum operation.
Scope: global.
Type: required.
Intent: inout.
Specified as: an integer, real or complex variable, which may be a scalar, + or a rank 1 or 2 array.
Type, kind, rank and size must agree on all processes.
+

Notes + + + +

    +
  1. The dat argument is both input and output, and its value may be changed + even on processes different from the final result destination. +
  2. +
  3. The dat argument may also be a long integer scalar.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu71.html b/docs/html/userhtmlsu71.html new file mode 100644 index 00000000..11cd03ac --- /dev/null +++ b/docs/html/userhtmlsu71.html @@ -0,0 +1,141 @@ + + +psb_nrm2 — Global 2-norm reduction + + + + + + + +

+

7.15 psb_nrm2 — Global 2-norm reduction

+ + + +
+call psb_nrm2(icontxt, dat, root) +
+

+

This subroutine implements a 2-norm value reduction operation based on the +underlying communication library. +

+Type:
Synchronous. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+dat
The local contribution to the global minimum.
Scope: local.
Type: required.
Intent: inout.
Specified as: a real variable, which may be a scalar, or a rank 1 array. +  Kind, rank and size must agree on all processes. +
+root
Process to hold the final value, or -1 to make it available on all processes.
Scope: global.
Type: optional.
Intent: in.
Specified as: an integer value -1 <= root <= np - 1, default -1.
+

+

+On Return
+
+dat
On destination process(es), the result of the 2-norm reduction.
Scope: global.
Type: required.
Intent: inout.
Specified as: a real variable, which may be a scalar, or a rank 1 array.
Kind, rank and size must agree on all processes.
+

Notes + + + +

    +
  1. This reduction is appropriate to compute the results of multiple (local) + NRM2 operations at the same time. +
  2. +
  3. Denoting by dati the value of the variable dat on process i, the output res + is equivalent to the computation of +
    +      ∘ -------
+       ∑     2
+res =     dati,
+         i
+
    +

    with care taken to avoid unnecessary overflow. +

  4. +
  5. The dat argument is both input and output, and its value may be changed + even on processes different from the final result destination.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu72.html b/docs/html/userhtmlsu72.html new file mode 100644 index 00000000..c4e31009 --- /dev/null +++ b/docs/html/userhtmlsu72.html @@ -0,0 +1,129 @@ + + +psb_snd — Send data + + + + + + + +

+

7.16 psb_snd — Send data

+ + + +
+call psb_snd(icontxt, dat, dst, m) +
+

+

This subroutine sends a packet of data to a destination. +

+Type:
Synchronous: see usage notes. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+dat
The data to be sent.
Scope: local.
Type: required.
Intent: in.
Specified as: an integer, real or complex variable, which may be a scalar, + or a rank 1 or 2 array, or a character or logical scalar.  Type, kind and + rank must agree on sender and receiver process; if m is not specified, size + must agree as well. +
+dst
Destination process.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer value 0 <= dst <= np - 1.
+
+m
Number of rows.
Scope: global.
Type: Optional.
Intent: in.
Specified as: an integer value 0 <= m <= size(dat,1).
When dat is a rank 2 array, specifies the number of rows to be sent + independently of the leading dimension size(dat,1); must have the same + value on sending and receiving processes.
+

+

+On Return
+ + + +

Notes +

    +
  1. This subroutine implies a synchronization, but only between the calling + process and the destination process dst.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu73.html b/docs/html/userhtmlsu73.html new file mode 100644 index 00000000..58de2fb4 --- /dev/null +++ b/docs/html/userhtmlsu73.html @@ -0,0 +1,124 @@ + + +psb_rcv — Receive data + + + + + + + +

+

7.17 psb_rcv — Receive data

+ + + +
+call psb_rcv(icontxt, dat, src, m) +
+

+

This subroutine receives a packet of data to a destination. +

+Type:
Synchronous: see usage notes. +
+On Entry
+
+icontxt
the communication context identifying the virtual parallel machine.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer variable. +
+src
Source process.
Scope: global.
Type: required.
Intent: in.
Specified as: an integer value 0 <= src <= np - 1.
+
+m
Number of rows.
Scope: global.
Type: Optional.
Intent: in.
Specified as: an integer value 0 <= m <= size(dat,1).
When dat is a rank 2 array, specifies the number of rows to be sent + independently of the leading dimension size(dat,1); must have the same + value on sending and receiving processes.
+

+

+On Return
+
+dat
The data to be received.
Scope: local.
Type: required.
Intent: inout.
Specified as: an integer, real or complex variable, which may be a scalar, + or a rank 1 or 2 array, or a character or logical scalar.  Type, kind and + rank must agree on sender and receiver process; if m is not specified, size + must agree as well.
+ + + +

Notes +

    +
  1. This subroutine implies a synchronization, but only between the calling + process and the source process src.
+ + + + +

+ diff --git a/docs/html/userhtmlsu74.html b/docs/html/userhtmlsu74.html new file mode 100644 index 00000000..97ce49ad --- /dev/null +++ b/docs/html/userhtmlsu74.html @@ -0,0 +1,97 @@ + + +psb_errpush + + + + + + + +

+

8.1 psb_errpush

+

Pushes an error code onto the error stack + +

call psb_errpush(err_c, r_name, i_err, a_err) + +
+

+

+Type:
Asynchronous. +
+On Entry
+
+err_c
the error code
Scope: local
Type: required
Intent: in.
Specified as: an integer. +
+r_name
the soutine where the error has been caught.
Scope: local
Type: required
Intent: in.
Specified as: a string.
+
+i_err
addional info for error code
Scope: local
Type: optional
Specified as: an integer array
+
+a_err
addional info for error code
Scope: local
Type: optional
Specified as: a string.
+ + + + + + + + + + +

+ diff --git a/docs/html/userhtmlsu75.html b/docs/html/userhtmlsu75.html new file mode 100644 index 00000000..ef69584e --- /dev/null +++ b/docs/html/userhtmlsu75.html @@ -0,0 +1,62 @@ + + +psb_error + + + + + + + +

+

8.2 psb_error

+

Prints the error stack content and aborts execution + +

call psb_error(icontxt) + +
+

+

+Type:
Asynchronous. +
+On Entry
+
+icontxt
the communication context.
Scope: global
Type: optional
Intent: in.
Specified as: an integer.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu76.html b/docs/html/userhtmlsu76.html new file mode 100644 index 00000000..4300ad8f --- /dev/null +++ b/docs/html/userhtmlsu76.html @@ -0,0 +1,62 @@ + + +psb_set_errverbosity + + + + + + + +

+

8.3 psb_set_errverbosity

+

Sets the verbosity of error messages + +

call psb_set_errverbosity(v) + +
+

+

+Type:
Asynchronous. +
+On Entry
+
+v
the verbosity level
Scope: global
Type: required
Intent: in.
Specified as: an integer.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu77.html b/docs/html/userhtmlsu77.html new file mode 100644 index 00000000..312f8ad0 --- /dev/null +++ b/docs/html/userhtmlsu77.html @@ -0,0 +1,63 @@ + + +psb_set_erraction + + + + + + + +

+

8.4 psb_set_erraction

+

Set the type of action to be taken upon error condition + +

call psb_set_erraction(err_act) + +
+

+

+Type:
Asynchronous. +
+On Entry
+
+err_act
the type of action.
Scope: global
Type: required
Intent: in.
Specified as: an integer. Possible values: psb_act_ret, psb_act_abort.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu78.html b/docs/html/userhtmlsu78.html new file mode 100644 index 00000000..d7e6fd9f --- /dev/null +++ b/docs/html/userhtmlsu78.html @@ -0,0 +1,110 @@ + + + hb_read — Read a sparse matrix from a file in the Harwell–Boeing +format + + + + + + + +

+

9.1 hb_read — Read a sparse matrix from a file in the Harwell–Boeing +format

+ +
call hb_read(a, iret, iunit, filename, b, mtitle) + +
+

+

+Type:
Asynchronous. +
+On Entry
+
+filename
The name of the file to be read.
Type:optional.
Specified as: a character variable containing a valid file name, or -, in + which case the default input unit 5 (i.e. standard input in Unix jargon) is + used. Default: -. +
+iunit
The Fortran file unit number.
Type:optional.
Specified as: an integer value. Only meaningful if filename is not -.
+

+

+On Return
+
+a
the sparse matrix read from file.
Type:required.
Specified as: a structured data of type psb_Tspmat_type. + + + +
+b
Rigth hand side(s).
Type: Optional
An array of type real or complex, rank 2 and having the ALLOCATABLE + attribute; will be allocated and filled in if the input file contains a right + hand side, otherwise will be left in the UNALLOCATED state. +
+mtitle
Matrix title.
Type: Optional
A charachter variable of length 72 holding a copy of the matrix title as + specified by the Harwell-Boeing format and contained in the input file. +
+iret
Error code.
Type: required
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu79.html b/docs/html/userhtmlsu79.html new file mode 100644 index 00000000..47418d21 --- /dev/null +++ b/docs/html/userhtmlsu79.html @@ -0,0 +1,121 @@ + + +hb_write — Write a sparse matrix to a file in the Harwell–Boeing format + + + + + + + +

+

9.2 hb_write — Write a sparse matrix to a file in the Harwell–Boeing +format

+ +
call hb_write(a, iret, iunit, filename, key, rhs, mtitle) + +
+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix to be written.
Type:required.
Specified as: a structured data of type psb_Tspmat_type. +
+b
Rigth hand side.
Type: Optional
An array of type real or complex, rank 1 and having the ALLOCATABLE + attribute; will be allocated and filled in if the input file contains a right + hand side. +
+filename
The name of the file to be written to.
Type:optional.
Specified as: a character variable containing a valid file name, or -, in + which case the default output unit 6 (i.e. standard output in Unix jargon) + is used. Default: -. +
+iunit
The Fortran file unit number.
Type:optional.
Specified as: an integer value. Only meaningful if filename is not -. +
+key
Matrix key.
Type: Optional
A charachter variable of length 8 holding the matrix key as specified by + the Harwell-Boeing format and to be written to file. + + + +
+mtitle
Matrix title.
Type: Optional
A charachter variable of length 72 holding the matrix title as specified by + the Harwell-Boeing format and to be written to file.
+

+

+On Return
+
+iret
Error code.
Type: required
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu8.html b/docs/html/userhtmlsu8.html new file mode 100644 index 00000000..5c0ff71c --- /dev/null +++ b/docs/html/userhtmlsu8.html @@ -0,0 +1,71 @@ + + +Preconditioner data structure + + + + + + + +

+

3.4 Preconditioner data structure

+

Our base library offers support for simple well known preconditioners like Diagonal +Scaling or Block Jacobi with incomplete factorization ILU(0). +

A preconditioner is held in the psb_prec_type data structure reported in +figure 6. The psb_prec_type data type may contain a simple preconditioning matrix +with the associated communication descriptor.The internal preconditioner is +allocated appropriately with the dynamic type corresponding to the desired +preconditioner.


+ + + + + + + +
+

+


  type psb_Tprec_type + 
    class(psb_T_base_prec_type), allocatable :: prec + 
  end type psb_Tprec_type + 
+
+

+
Figure 6: The PSBLAS defined data type that contains a preconditioner.
+ + + +


+ + + + +

+ diff --git a/docs/html/userhtmlsu80.html b/docs/html/userhtmlsu80.html new file mode 100644 index 00000000..ee9c2c16 --- /dev/null +++ b/docs/html/userhtmlsu80.html @@ -0,0 +1,94 @@ + + +mm_mat_read — Read a sparse matrix from a file in the MatrixMarket +format + + + + + + + +

+

9.3 mm_mat_read — Read a sparse matrix from a file in the MatrixMarket +format

+ +
call mm_mat_read(a, iret, iunit, filename) + +
+

+

+Type:
Asynchronous. +
+On Entry
+
+filename
The name of the file to be read.
Type:optional.
Specified as: a character variable containing a valid file name, or -, in + which case the default input unit 5 (i.e. standard input in Unix jargon) is + used. Default: -. +
+iunit
The Fortran file unit number.
Type:optional.
Specified as: an integer value. Only meaningful if filename is not -.
+

+

+On Return
+
+a
the sparse matrix read from file.
Type:required.
Specified as: a structured data of type psb_Tspmat_type. +
+iret
Error code.
Type: required
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu81.html b/docs/html/userhtmlsu81.html new file mode 100644 index 00000000..7bcaa337 --- /dev/null +++ b/docs/html/userhtmlsu81.html @@ -0,0 +1,93 @@ + + +mm_array_read — Read a dense array from a file in the MatrixMarket +format + + + + + + + +

+

9.4 mm_array_read — Read a dense array from a file in the MatrixMarket +format

+ +
call mm_array_read(b, iret, iunit, filename) + +
+

+

+Type:
Asynchronous. +
+On Entry
+
+filename
The name of the file to be read.
Type:optional.
Specified as: a character variable containing a valid file name, or -, in + which case the default input unit 5 (i.e. standard input in Unix jargon) is + used. Default: -. +
+iunit
The Fortran file unit number.
Type:optional.
Specified as: an integer value. Only meaningful if filename is not -.
+

+

+On Return
+
+b
Rigth hand side(s).
Type: required
An array of type real or complex, rank 1 or 2 and having the + ALLOCATABLE attribute; will be allocated and filled in if the input file + contains a right hand side, otherwise will be left in the UNALLOCATED + state. +
+iret
Error code.
Type: required
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu82.html b/docs/html/userhtmlsu82.html new file mode 100644 index 00000000..eb9a66d0 --- /dev/null +++ b/docs/html/userhtmlsu82.html @@ -0,0 +1,105 @@ + + +mm_mat_write — Write a sparse matrix to a file in the MatrixMarket +format + + + + + + + +

+

9.5 mm_mat_write — Write a sparse matrix to a file in the MatrixMarket +format

+ +
call mm_mat_write(a, mtitle, iret, iunit, filename) + +
+

+

+Type:
Asynchronous. +
+On Entry
+
+a
the sparse matrix to be written.
Type:required.
Specified as: a structured data of type psb_Tspmat_type. +
+mtitle
Matrix title.
Type: required
A charachter variable holding a descriptive title for the matrix to be + written to file. +
+filename
The name of the file to be written to.
Type:optional.
Specified as: a character variable containing a valid file name, or -, in + which case the default output unit 6 (i.e. standard output in Unix jargon) + is used. Default: -. +
+iunit
The Fortran file unit number.
Type:optional.
Specified as: an integer value. Only meaningful if filename is not -.
+

+

+On Return
+
+iret
Error code.
Type: required
An integer value; 0 means no error has been detected.
+ + + + + + + + + + +

+ diff --git a/docs/html/userhtmlsu83.html b/docs/html/userhtmlsu83.html new file mode 100644 index 00000000..68d93ce9 --- /dev/null +++ b/docs/html/userhtmlsu83.html @@ -0,0 +1,88 @@ + + +mm_array_write — Write a dense array from a file in the MatrixMarket +format + + + + + + + +

+

9.6 mm_array_write — Write a dense array from a file in the MatrixMarket +format

+ +
call mm_array_write(b, iret, iunit, filename) + +
+

+

+Type:
Asynchronous. +
+On Entry
+
+b
Rigth hand side(s).
Type: required
An array of type real or complex, rank 1 or 2; will be written..  +
+filename
The name of the file to be written.
Type:optional.
Specified as: a character variable containing a valid file name, or -, in + which case the default input unit 5 (i.e. standard input in Unix jargon) is + used. Default: -. +
+iunit
The Fortran file unit number.
Type:optional.
Specified as: an integer value. Only meaningful if filename is not -.
+

+

+On Return
+
+iret
Error code.
Type: required
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu84.html b/docs/html/userhtmlsu84.html new file mode 100644 index 00000000..627c4fd6 --- /dev/null +++ b/docs/html/userhtmlsu84.html @@ -0,0 +1,125 @@ + + +init — Initialize a preconditioner + + + + + + + +

+

10.1 init — Initialize a preconditioner

+ + + +
+call prec%init(icontxt,ptype, info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+icontxt
the communication context.
Scope:global.
Type:required.
Intent: in.
Specified as: an integer value. +
+ptype
the type of preconditioner. Scope: global
Type: required
Intent: in.
Specified as: a character string, see usage notes. +
+On Exit
+
+prec
Scope: local
Type: required
Intent: inout.
Specified as: a preconditioner data structure psb_prec_type. +
+info
Scope: global
Type: required
Intent: out.
Error code: if no error, 0 is returned.
+

Notes Legal inputs to this subroutine are interpreted depending on the ptype string as +follows4 : +

+NONE
No preconditioning, i.e. the preconditioner is just a copy operator. +
+DIAG
Diagonal scaling; each entry of the input vector is multiplied by the + reciprocal of the sum of the absolute values of the coefficients in the + corresponding row of matrix A; + + + +
+BJAC
Precondition by a factorization of the block-diagonal of matrix A, + where block boundaries are determined by the data allocation boundaries + for each process; requires no communication. Only the incomplete + factorization ILU(0) is currently implemented.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu85.html b/docs/html/userhtmlsu85.html new file mode 100644 index 00000000..a8b076fd --- /dev/null +++ b/docs/html/userhtmlsu85.html @@ -0,0 +1,186 @@ + + +build — Builds a preconditioner + + + + + + + +

+

10.2 build — Builds a preconditioner

+ + + +
+call prec%build(a, desc_a, info[,amold,vmold,imold]) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+a
the system sparse matrix. Scope: local
Type: required
Intent: in, target.
Specified as: a sparse matrix data structure psb_Tspmat_type. +
+prec
the preconditioner.
Scope: local
Type: required
Intent: inout.
Specified as: an already initialized precondtioner data structure + psb_prec_type
+
+desc_a
the problem communication descriptor. Scope: local
Type: required
Intent: in, target.
Specified as: a communication descriptor data structure psb_desc_type. +
+amold
The desired dynamic type for the internal matrix storage.
Scope: local.
Type: optional.
Intent: in.
Specified as: an object of a class derived from psb_T_base_sparse_mat. +
+vmold
The desired dynamic type for the internal vector storage.
Scope: local.
Type: optional.
Intent: in.
Specified as: an object of a class derived from psb_T_base_vect_type. +
+imold
The desired dynamic type for the internal integer vector storage.
Scope: local.
Type: optional.
Intent: in.
Specified as: an object of a class derived from (integer) + psb_T_base_vect_type.
+

+

+On Return
+
+prec
the preconditioner.
Scope: local
Type: required
Intent: inout.
Specified as: a precondtioner data structure psb_prec_type
+
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+

The amold, vmold and imold arguments may be employed to interface with special +devices, such as GPUs and other accelerators. + + + + + + +

+

+ diff --git a/docs/html/userhtmlsu86.html b/docs/html/userhtmlsu86.html new file mode 100644 index 00000000..49e92286 --- /dev/null +++ b/docs/html/userhtmlsu86.html @@ -0,0 +1,149 @@ + + +apply — Preconditioner application routine + + + + + + + +

+

10.3 apply — Preconditioner application routine

+ + + +
+call prec%apply(x,y,desc_a,info,trans,work) + 
call prec%apply(x,desc_a,info,trans) +
+

+

+

+Type:
Synchronous. +
+On Entry
+
+prec
the preconditioner. Scope: local
Type: required
Intent: in.
Specified as: a preconditioner data structure psb_prec_type. +
+x
the source vector. Scope: local
Type: required
Intent: inout.
Specified as: a rank one array or an object of type psb_T_vect_type. +
+desc_a
the problem communication descriptor. Scope: local
Type: required
Intent: in.
Specified as: a communication data structure psb_desc_type. +
+trans
Scope:
Type: optional
Intent: in.
Specified as: a character. +
+work
an optional work space Scope: local
Type: optional
Intent: inout.
Specified as: a double precision array.
+

+

+On Return
+
+y
the destination vector. Scope: local
Type: required
Intent: inout.
Specified as: a rank one array or an object of type psb_T_vect_type. + + + +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu87.html b/docs/html/userhtmlsu87.html new file mode 100644 index 00000000..25207037 --- /dev/null +++ b/docs/html/userhtmlsu87.html @@ -0,0 +1,91 @@ + + +descr — Prints a description of current preconditioner + + + + + + + +

+

10.4 descr — Prints a description of current preconditioner

+ + + +
+call prec%descr() + 
call prec%descr(iout, root) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+prec
the preconditioner. Scope: local
Type: required
Intent: in.
Specified as: a preconditioner data structure psb_prec_type. +
+iout
output unit. Scope: local
Type: optional
Intent: in.
Specified as: an integer number. Default: default output unit. +
+root
Process from which to print Scope: local
Type: optional
Intent: in.
Specified as: an integer number between 0 and np - 1, in which case + the specified process will print the description, or -1, in which case all + processes will print. Default: 0.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu88.html b/docs/html/userhtmlsu88.html new file mode 100644 index 00000000..1478c831 --- /dev/null +++ b/docs/html/userhtmlsu88.html @@ -0,0 +1,69 @@ + + +clone — clone current preconditioner + + + + + + + +

+

10.5 clone — clone current preconditioner

+ + + +
+call  prec%clone(precout,info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+prec
the preconditioner.
Scope: local.
+

+

+On Return
+
+precout
A copy of the input object. +
+info
Return code.
+ + + + + + + +

+ diff --git a/docs/html/userhtmlsu89.html b/docs/html/userhtmlsu89.html new file mode 100644 index 00000000..7d0b20b2 --- /dev/null +++ b/docs/html/userhtmlsu89.html @@ -0,0 +1,94 @@ + + +free — Free a preconditioner + + + + + + + +

+

10.6 free — Free a preconditioner

+ + + +
+call prec%free(info) +
+

+

+

+Type:
Asynchronous. +
+On Entry
+
+prec
the preconditioner.
Scope: local.
Type: required
Intent: inout.
Specified as: a preconditioner data structure psb_prec_type. +
+On Exit
+
+prec
Scope: local
Type: required
Intent: inout.
Specified as: a preconditioner data structure psb_prec_type. +
+info
Scope: global
Type: required
Intent: out.
Error code: if no error, 0 is returned.
+

Notes Releases all internal storage. + + + + + + +

+

+ diff --git a/docs/html/userhtmlsu9.html b/docs/html/userhtmlsu9.html new file mode 100644 index 00000000..e78edec3 --- /dev/null +++ b/docs/html/userhtmlsu9.html @@ -0,0 +1,79 @@ + + +Heap data structure + + + + + + + +

+

3.5 Heap data structure

+

Among the tools routines of sec. 6, we have a number of sorting utilities; the heap +sort is implemented in terms of heaps having the following signatures: +

+psb_T_heap
: a heap containing elements of type T, where T can be i,s,c,d,z + for integer, real and complex data; +
+psb_T_idx_heap
: a heap containing elements of type T, as above, together + with an integer index.
+

Given a heap object, the following methods are defined on it: +

+init
Initialize memory; also choose ascending or descending order; +
+howmany
Current heap occupancy; +
+insert
Add an item (or an item and its index); +
+get_first
Remove and return the first element; +
+dump
Print on file; +
+free
Release memory.
+

These objects are used in MLD2P4 to implement the factorization algorithms. + + + + + + +

+

+ diff --git a/docs/html/userhtmlsu90.html b/docs/html/userhtmlsu90.html new file mode 100644 index 00000000..751fcd56 --- /dev/null +++ b/docs/html/userhtmlsu90.html @@ -0,0 +1,357 @@ + + +psb_krylov — Krylov Methods Driver Routine + + + + + + + +

+

11.1 psb_krylov — Krylov Methods Driver Routine

+

This subroutine is a driver that provides a general interface for all the Krylov-Subspace +family methods implemented in PSBLAS version 2. +

The stopping criterion can take the following values: +

+1
normwise backward error in the infinity norm; the iteration is stopped when +
+ err = -----∥ri∥------< eps
+      (∥A ∥∥xi∥ + ∥b∥)
+
+

+

+2
Relative residual in the 2-norm; the iteration is stopped when +
+ err = ∥ri∥-< eps
+      ∥b∥2
+
+

+

+3
Relative residual reduction in the 2-norm; the iteration is stopped when +
+ err = -∥ri∥-< eps
+     ∥r0∥2
+
+

+

The behaviour is controlled by the istop argument (see later). In the above formulae, xi +is the tentative solution and ri = b - Axi the corresponding residual at the i-th +iteration. + +

call psb_krylov(method,a,prec,b,x,eps,desc_a,info,& 
     & itmax,iter,err,itrace,irst,istop,cond) + +
+

+ + + +

+Type:
Synchronous. +
+On Entry
+
+method
a string that defines the iterative method to be used. Supported values + are: +
+ CG:
the Conjugate Gradient method; +
+ CGS:
the Conjugate Gradient Stabilized method; +
+ GCR:
the Generalized Conjugate Residual method; +
+ FCG:
the Flexible Conjugate Gradient method5 ; +
+ BICG:
the Bi-Conjugate Gradient method; +
+ BICGSTAB:
the Bi-Conjugate Gradient Stabilized method; +
+ BICGSTABL:
the Bi-Conjugate Gradient Stabilized method with + restarting; +
+ RGMRES:
the Generalized Minimal Residual method with restarting.
+
+a
the local portion of global sparse matrix A.
Scope: local
Type: required
Intent: in.
Specified as: a structured data of type psb_Tspmat_type. +
+prec
The data structure containing the preconditioner.
Scope: local
Type: required
Intent: in.
Specified as: a structured data of type psb_prec_type. +
+b
The RHS vector.
Scope: local
Type: required
Intent: in.
Specified as: a rank one array or an object of type psb_T_vect_type. + + + +
+x
The initial guess.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one array or an object of type psb_T_vect_type. +
+eps
The stopping tolerance.
Scope: global
Type: required
Intent: in.
Specified as: a real number. +
+desc_a
contains data structures for communications.
Scope: local
Type: required
Intent: in.
Specified as: a structured data of type psb_desc_type. +
+itmax
The maximum number of iterations to perform.
Scope: global
Type: optional
Intent: in.
Default: itmax = 1000.
Specified as: an integer variable itmax 1. +
+itrace
If > 0 print out an informational message about convergence every itrace + iterations. If = 0 print a message in case of convergence failure.
Scope: global
Type: optional
Intent: in.
Default: itrace = -1.
+
+irst
An integer specifying the restart parameter.
Scope: global
Type: optional.
Intent: in.
Values: irst > 0. This is employed for the BiCGSTABL or RGMRES methods, + otherwise it is ignored. +
+istop
An integer specifying the stopping criterion.
Scope: global
Type: optional.
Intent: in.
Values: 1: use the normwise backward error, 2: use the scaled 2-norm + + + + of the residual, 3: use the residual reduction in the 2-norm. Default: + 2. +
+On Return
+
+x
The computed solution.
Scope: local
Type: required
Intent: inout.
Specified as: a rank one array or an object of type psb_T_vect_type. +
+iter
The number of iterations performed.
Scope: global
Type: optional
Intent: out.
Returned as: an integer variable. +
+err
The convergence estimate on exit.
Scope: global
Type: optional
Intent: out.
Returned as: a real number. +
+cond
An estimate of the condition number of matrix A; only available with the CG + method on real data.
Scope: global
Type: optional
Intent: out.
Returned as: a real number. A correct result will be greater than or + equal to one; if specified for non-real data, or an error occurred, zero is + returned. +
+info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
+ + + + + + + +

+ diff --git a/docs/psblas-3.7.pdf b/docs/psblas-3.7.pdf index 9e133b9f..36a7478c 100644 --- a/docs/psblas-3.7.pdf +++ b/docs/psblas-3.7.pdf @@ -4,20 +4,20 @@ << /Type /ObjStm /N 100 -/First 818 -/Length 4688 +/First 819 +/Length 6377 >> stream 1 0 5 38 6 77 9 117 10 144 13 185 14 217 17 263 18 299 21 345 22 379 25 425 26 464 29 515 30 562 33 608 34 643 37 684 38 727 41 773 -42 816 45 867 46 905 49 947 50 981 53 1023 54 1057 57 1099 58 1134 61 1176 -62 1211 65 1253 66 1291 69 1333 70 1361 73 1403 74 1422 77 1464 78 1481 81 1524 -82 1576 85 1619 86 1671 89 1714 90 1747 93 1790 94 1823 97 1866 98 1892 101 1943 -102 1979 105 2026 106 2064 109 2116 110 2158 113 2202 114 2229 117 2273 118 2300 121 2344 -122 2373 125 2417 126 2444 129 2488 130 2510 133 2554 134 2580 137 2624 138 2671 141 2715 -142 2782 145 2826 146 2846 149 2890 150 2911 153 2955 154 2984 157 3028 158 3054 161 3098 -162 3125 165 3169 166 3188 169 3232 170 3251 173 3295 174 3338 177 3382 178 3402 181 3454 -182 3490 185 3537 186 3583 189 3635 190 3670 193 3714 194 3741 197 3785 198 3807 201 3851 +42 816 45 867 46 905 49 956 50 1026 53 1077 54 1147 57 1198 58 1270 61 1321 +62 1393 65 1444 66 1522 69 1573 70 1638 73 1689 74 1740 77 1791 78 1851 81 1903 +82 2006 85 2058 86 2161 89 2213 90 2285 93 2337 94 2409 97 2461 98 2542 101 2594 +102 2631 105 2678 106 2716 109 2768 110 2810 113 2862 114 2938 117 2990 118 3069 121 3121 +122 3211 125 3263 126 3358 129 3410 130 3492 133 3544 134 3618 137 3670 138 3740 141 3792 +142 3883 145 3936 146 4006 149 4059 150 4114 153 4167 154 4236 157 4289 158 4345 161 4398 +162 4459 165 4512 166 4569 169 4622 170 4679 173 4732 174 4814 177 4867 178 4920 181 4973 +182 5010 185 5057 186 5103 189 5155 190 5190 193 5242 194 5317 197 5369 198 5450 201 5502 % 1 0 obj << /S /GoTo /D (title.0) >> % 5 0 obj @@ -63,61 +63,61 @@ stream % 45 0 obj (3.1.1 Descriptor Methods) % 46 0 obj -<< /S /GoTo /D (section*.2) >> +<< /S /GoTo /D (subsubsection.3.1.2) >> % 49 0 obj -(get\137local\137rows) +(3.1.2 get\137local\137rows \204 Get number of local rows) % 50 0 obj -<< /S /GoTo /D (section*.3) >> +<< /S /GoTo /D (subsubsection.3.1.3) >> % 53 0 obj -(get\137local\137cols) +(3.1.3 get\137local\137cols \204 Get number of local cols) % 54 0 obj -<< /S /GoTo /D (section*.4) >> +<< /S /GoTo /D (subsubsection.3.1.4) >> % 57 0 obj -(get\137global\137rows) +(3.1.4 get\137global\137rows \204 Get number of global rows) % 58 0 obj -<< /S /GoTo /D (section*.5) >> +<< /S /GoTo /D (subsubsection.3.1.5) >> % 61 0 obj -(get\137global\137cols) +(3.1.5 get\137global\137cols \204 Get number of global cols) % 62 0 obj -<< /S /GoTo /D (section*.6) >> +<< /S /GoTo /D (subsubsection.3.1.6) >> % 65 0 obj -(get\137global\137indices) +(3.1.6 get\137global\137indices \204 Get vector of global indices) % 66 0 obj -<< /S /GoTo /D (section*.7) >> +<< /S /GoTo /D (subsubsection.3.1.7) >> % 69 0 obj -(get\137context) +(3.1.7 get\137context \204 Get communication context) % 70 0 obj -<< /S /GoTo /D (section*.8) >> +<< /S /GoTo /D (subsubsection.3.1.8) >> % 73 0 obj -(Clone) +(3.1.8 Clone \204 clone current object) % 74 0 obj -<< /S /GoTo /D (section*.9) >> +<< /S /GoTo /D (subsubsection.3.1.9) >> % 77 0 obj -(CNV) +(3.1.9 CNV \204 convert internal storage format) % 78 0 obj -<< /S /GoTo /D (section*.10) >> +<< /S /GoTo /D (subsubsection.3.1.10) >> % 81 0 obj -(psb\137cd\137get\137large\137threshold) +(3.1.10 psb\137cd\137get\137large\137threshold \204 Get threshold for index mapping switch) % 82 0 obj -<< /S /GoTo /D (section*.11) >> +<< /S /GoTo /D (subsubsection.3.1.11) >> % 85 0 obj -(psb\137cd\137set\137large\137threshold) +(3.1.11 psb\137cd\137set\137large\137threshold \204 Set threshold for index mapping switch) % 86 0 obj -<< /S /GoTo /D (section*.12) >> +<< /S /GoTo /D (subsubsection.3.1.12) >> % 89 0 obj -(get\137p\137adjcncy) +(3.1.12 get\137p\137adjcncy \204 Get process adjacency list) % 90 0 obj -<< /S /GoTo /D (section*.13) >> +<< /S /GoTo /D (subsubsection.3.1.13) >> % 93 0 obj -(set\137p\137adjcncy) +(3.1.13 set\137p\137adjcncy \204 Set process adjacency list) % 94 0 obj -<< /S /GoTo /D (section*.14) >> +<< /S /GoTo /D (subsubsection.3.1.14) >> % 97 0 obj -(fnd\137owner) +(3.1.14 fnd\137owner \204 Find the owner process of a set of indices) % 98 0 obj -<< /S /GoTo /D (subsubsection.3.1.2) >> +<< /S /GoTo /D (subsubsection.3.1.15) >> % 101 0 obj -(3.1.2 Named Constants) +(3.1.15 Named Constants) % 102 0 obj << /S /GoTo /D (subsection.3.2) >> % 105 0 obj @@ -127,77 +127,77 @@ stream % 109 0 obj (3.2.1 Sparse Matrix Methods) % 110 0 obj -<< /S /GoTo /D (section*.15) >> +<< /S /GoTo /D (subsubsection.3.2.2) >> % 113 0 obj -(get\137nrows) +(3.2.2 get\137nrows \204 Get number of rows in a sparse matrix) % 114 0 obj -<< /S /GoTo /D (section*.16) >> +<< /S /GoTo /D (subsubsection.3.2.3) >> % 117 0 obj -(get\137ncols) +(3.2.3 get\137ncols \204 Get number of columns in a sparse matrix) % 118 0 obj -<< /S /GoTo /D (section*.17) >> +<< /S /GoTo /D (subsubsection.3.2.4) >> % 121 0 obj -(get\137nnzeros) +(3.2.4 get\137nnzeros \204 Get number of nonzero elements in a sparse matrix) % 122 0 obj -<< /S /GoTo /D (section*.18) >> +<< /S /GoTo /D (subsubsection.3.2.5) >> % 125 0 obj -(get\137size ) +(3.2.5 get\137size \204 Get maximum number of nonzero elements in a sparse matrix) % 126 0 obj -<< /S /GoTo /D (section*.19) >> +<< /S /GoTo /D (subsubsection.3.2.6) >> % 129 0 obj -(sizeof ) +(3.2.6 sizeof \204 Get memory occupation in bytes of a sparse matrix) % 130 0 obj -<< /S /GoTo /D (section*.20) >> +<< /S /GoTo /D (subsubsection.3.2.7) >> % 133 0 obj -(get\137fmt ) +(3.2.7 get\137fmt \204 Short description of the dynamic type) % 134 0 obj -<< /S /GoTo /D (section*.21) >> +<< /S /GoTo /D (subsubsection.3.2.8) >> % 137 0 obj -(is\137bld, is\137upd, is\137asb ) +(3.2.8 is\137bld, is\137upd, is\137asb \204 Status check) % 138 0 obj -<< /S /GoTo /D (section*.22) >> +<< /S /GoTo /D (subsubsection.3.2.9) >> % 141 0 obj -(is\137lower, is\137upper, is\137triangle, is\137unit) +(3.2.9 is\137lower, is\137upper, is\137triangle, is\137unit \204 Format check) % 142 0 obj -<< /S /GoTo /D (section*.23) >> +<< /S /GoTo /D (subsubsection.3.2.10) >> % 145 0 obj -(cscnv) +(3.2.10 cscnv \204 Convert to a different storage format) % 146 0 obj -<< /S /GoTo /D (section*.24) >> +<< /S /GoTo /D (subsubsection.3.2.11) >> % 149 0 obj -(csclip) +(3.2.11 csclip \204 Reduce to a submatrix) % 150 0 obj -<< /S /GoTo /D (section*.25) >> +<< /S /GoTo /D (subsubsection.3.2.12) >> % 153 0 obj -(clean\137zeros) +(3.2.12 clean\137zeros \204 Eliminate zero coefficients) % 154 0 obj -<< /S /GoTo /D (section*.26) >> +<< /S /GoTo /D (subsubsection.3.2.13) >> % 157 0 obj -(get\137diag) +(3.2.13 get\137diag \204 Get main diagonal) % 158 0 obj -<< /S /GoTo /D (section*.27) >> +<< /S /GoTo /D (subsubsection.3.2.14) >> % 161 0 obj -(clip\137diag) +(3.2.14 clip\137diag \204 Cut out main diagonal) % 162 0 obj -<< /S /GoTo /D (section*.28) >> +<< /S /GoTo /D (subsubsection.3.2.15) >> % 165 0 obj -(tril) +(3.2.15 tril \204 Return the lower triangle) % 166 0 obj -<< /S /GoTo /D (section*.29) >> +<< /S /GoTo /D (subsubsection.3.2.16) >> % 169 0 obj -(triu) +(3.2.16 triu \204 Return the upper triangle) % 170 0 obj -<< /S /GoTo /D (section*.30) >> +<< /S /GoTo /D (subsubsection.3.2.17) >> % 173 0 obj -(psb\137set\137mat\137default) +(3.2.17 psb\137set\137mat\137default \204 Set default storage format) % 174 0 obj -<< /S /GoTo /D (section*.31) >> +<< /S /GoTo /D (subsubsection.3.2.18) >> % 177 0 obj -(clone) +(3.2.18 clone \204 Clone current object) % 178 0 obj -<< /S /GoTo /D (subsubsection.3.2.2) >> +<< /S /GoTo /D (subsubsection.3.2.19) >> % 181 0 obj -(3.2.2 Named Constants) +(3.2.19 Named Constants) % 182 0 obj << /S /GoTo /D (subsection.3.3) >> % 185 0 obj @@ -207,17 +207,17 @@ stream % 189 0 obj (3.3.1 Vector Methods) % 190 0 obj -<< /S /GoTo /D (section*.32) >> +<< /S /GoTo /D (subsubsection.3.3.2) >> % 193 0 obj -(get\137nrows) +(3.3.2 get\137nrows \204 Get number of rows in a dense vector) % 194 0 obj -<< /S /GoTo /D (section*.33) >> +<< /S /GoTo /D (subsubsection.3.3.3) >> % 197 0 obj -(sizeof ) +(3.3.3 sizeof \204 Get memory occupation in bytes of a dense vector) % 198 0 obj -<< /S /GoTo /D (section*.34) >> +<< /S /GoTo /D (subsubsection.3.3.4) >> % 201 0 obj -(set ) +(3.3.4 set \204 Set contents of the vector) endstream endobj @@ -225,28 +225,28 @@ endobj << /Type /ObjStm /N 100 -/First 869 -/Length 4579 +/First 877 +/Length 6351 >> stream -202 0 206 44 207 71 210 115 211 135 214 182 215 230 218 277 219 315 222 357 -223 396 226 440 227 469 230 513 231 540 234 584 235 612 238 656 239 683 242 727 -243 756 246 800 247 827 250 871 251 900 254 944 255 971 258 1015 259 1044 262 1088 -263 1115 266 1159 267 1186 270 1230 271 1256 274 1300 275 1326 278 1368 279 1407 282 1451 -283 1477 286 1521 287 1547 290 1591 291 1619 294 1663 295 1692 298 1734 299 1775 302 1819 -303 1846 306 1890 307 1917 310 1961 311 1988 314 2032 315 2059 318 2103 319 2131 322 2175 -323 2205 326 2249 327 2276 330 2320 331 2347 334 2391 335 2418 338 2462 339 2490 342 2534 -343 2560 346 2604 347 2631 350 2675 351 2702 354 2746 355 2773 358 2817 359 2845 362 2889 -363 2915 366 2959 367 2998 370 3042 371 3081 374 3125 375 3159 378 3203 379 3240 382 3284 -383 3318 386 3362 387 3399 390 3443 391 3480 394 3524 395 3560 398 3604 399 3638 402 3682 +202 0 206 52 207 123 210 175 211 227 214 274 215 322 218 369 219 407 222 449 +223 488 226 535 227 598 230 645 231 693 234 740 235 801 238 848 239 908 242 955 +243 1019 246 1066 247 1119 250 1166 251 1233 254 1280 255 1333 258 1380 259 1447 262 1495 +263 1556 266 1604 267 1672 270 1720 271 1794 274 1842 275 1902 278 1950 279 2005 282 2053 +283 2109 286 2157 287 2214 290 2256 291 2295 294 2342 295 2401 298 2448 299 2498 302 2545 +303 2609 306 2656 307 2722 310 2764 311 2805 314 2852 315 2925 318 2972 319 3048 322 3095 +323 3173 326 3220 327 3290 330 3337 331 3407 334 3454 335 3536 338 3583 339 3645 342 3692 +343 3778 346 3825 347 3892 350 3940 351 4000 354 4048 355 4136 358 4184 359 4246 362 4294 +363 4362 366 4410 367 4471 370 4519 371 4578 374 4626 375 4707 378 4755 379 4839 382 4887 +383 4971 386 5019 387 5063 390 5111 391 5158 394 5206 395 5250 398 5298 399 5345 402 5393 % 202 0 obj -<< /S /GoTo /D (section*.35) >> +<< /S /GoTo /D (subsubsection.3.3.5) >> % 206 0 obj -(get\137vect ) +(3.3.5 get\137vect \204 Get a copy of the vector contents) % 207 0 obj -<< /S /GoTo /D (section*.36) >> +<< /S /GoTo /D (subsubsection.3.3.6) >> % 210 0 obj -(clone) +(3.3.6 clone \204 Clone current object) % 211 0 obj << /S /GoTo /D (subsection.3.4) >> % 214 0 obj @@ -260,189 +260,189 @@ stream % 222 0 obj (4 Computational routines) % 223 0 obj -<< /S /GoTo /D (section*.37) >> +<< /S /GoTo /D (subsection.4.1) >> % 226 0 obj -(psb\137geaxpby) +(4.1 psb\137geaxpby \204 General Dense Matrix Sum) % 227 0 obj -<< /S /GoTo /D (section*.38) >> +<< /S /GoTo /D (subsection.4.2) >> % 230 0 obj -(psb\137gedot) +(4.2 psb\137gedot \204 Dot Product) % 231 0 obj -<< /S /GoTo /D (section*.39) >> +<< /S /GoTo /D (subsection.4.3) >> % 234 0 obj -(psb\137gedots) +(4.3 psb\137gedots \204 Generalized Dot Product) % 235 0 obj -<< /S /GoTo /D (section*.40) >> +<< /S /GoTo /D (subsection.4.4) >> % 238 0 obj -(psb\137normi) +(4.4 psb\137normi \204 Infinity-Norm of Vector) % 239 0 obj -<< /S /GoTo /D (section*.41) >> +<< /S /GoTo /D (subsection.4.5) >> % 242 0 obj -(psb\137geamaxs) +(4.5 psb\137geamaxs \204 Generalized Infinity Norm) % 243 0 obj -<< /S /GoTo /D (section*.42) >> +<< /S /GoTo /D (subsection.4.6) >> % 246 0 obj -(psb\137norm1) +(4.6 psb\137norm1 \204 1-Norm of Vector) % 247 0 obj -<< /S /GoTo /D (section*.43) >> +<< /S /GoTo /D (subsection.4.7) >> % 250 0 obj -(psb\137geasums) +(4.7 psb\137geasums \204 Generalized 1-Norm of Vector) % 251 0 obj -<< /S /GoTo /D (section*.44) >> +<< /S /GoTo /D (subsection.4.8) >> % 254 0 obj -(psb\137norm2) +(4.8 psb\137norm2 \204 2-Norm of Vector) % 255 0 obj -<< /S /GoTo /D (section*.45) >> +<< /S /GoTo /D (subsection.4.9) >> % 258 0 obj -(psb\137genrm2s) +(4.9 psb\137genrm2s \204 Generalized 2-Norm of Vector) % 259 0 obj -<< /S /GoTo /D (section*.46) >> +<< /S /GoTo /D (subsection.4.10) >> % 262 0 obj -(psb\137norm1) +(4.10 psb\137norm1 \204 1-Norm of Sparse Matrix) % 263 0 obj -<< /S /GoTo /D (section*.47) >> +<< /S /GoTo /D (subsection.4.11) >> % 266 0 obj -(psb\137normi) +(4.11 psb\137normi \204 Infinity Norm of Sparse Matrix) % 267 0 obj -<< /S /GoTo /D (section*.48) >> +<< /S /GoTo /D (subsection.4.12) >> % 270 0 obj -(psb\137spmm) +(4.12 psb\137spmm \204 Sparse Matrix by Dense Matrix Product) % 271 0 obj -<< /S /GoTo /D (section*.49) >> +<< /S /GoTo /D (subsection.4.13) >> % 274 0 obj -(psb\137spsm) +(4.13 psb\137spsm \204 Triangular System Solve) % 275 0 obj -<< /S /GoTo /D (section.5) >> +<< /S /GoTo /D (subsection.4.14) >> % 278 0 obj -(5 Communication routines) +(4.14 psb\137gemlt \204 Entrywise Product) % 279 0 obj -<< /S /GoTo /D (section*.50) >> +<< /S /GoTo /D (subsection.4.15) >> % 282 0 obj -(psb\137halo) +(4.15 psb\137gediv \204 Entrywise Division) % 283 0 obj -<< /S /GoTo /D (section*.51) >> +<< /S /GoTo /D (subsection.4.16) >> % 286 0 obj -(psb\137ovrl) +(4.16 psb\137geinv \204 Entrywise Inversion) % 287 0 obj -<< /S /GoTo /D (section*.52) >> +<< /S /GoTo /D (section.5) >> % 290 0 obj -(psb\137gather) +(5 Communication routines) % 291 0 obj -<< /S /GoTo /D (section*.53) >> +<< /S /GoTo /D (subsection.5.1) >> % 294 0 obj -(psb\137scatter) +(5.1 psb\137halo \204 Halo Data Communication) % 295 0 obj -<< /S /GoTo /D (section.6) >> +<< /S /GoTo /D (subsection.5.2) >> % 298 0 obj -(6 Data management routines) +(5.2 psb\137ovrl \204 Overlap Update) % 299 0 obj -<< /S /GoTo /D (section*.54) >> +<< /S /GoTo /D (subsection.5.3) >> % 302 0 obj -(psb\137cdall) +(5.3 psb\137gather \204 Gather Global Dense Matrix) % 303 0 obj -<< /S /GoTo /D (section*.55) >> +<< /S /GoTo /D (subsection.5.4) >> % 306 0 obj -(psb\137cdins) +(5.4 psb\137scatter \204 Scatter Global Dense Matrix) % 307 0 obj -<< /S /GoTo /D (section*.56) >> +<< /S /GoTo /D (section.6) >> % 310 0 obj -(psb\137cdasb) +(6 Data management routines) % 311 0 obj -<< /S /GoTo /D (section*.57) >> +<< /S /GoTo /D (subsection.6.1) >> % 314 0 obj -(psb\137cdcpy) +(6.1 psb\137cdall \204 Allocates a communication descriptor) % 315 0 obj -<< /S /GoTo /D (section*.58) >> +<< /S /GoTo /D (subsection.6.2) >> % 318 0 obj -(psb\137cdfree) +(6.2 psb\137cdins \204 Communication descriptor insert routine) % 319 0 obj -<< /S /GoTo /D (section*.59) >> +<< /S /GoTo /D (subsection.6.3) >> % 322 0 obj -(psb\137cdbldext) +(6.3 psb\137cdasb \204 Communication descriptor assembly routine) % 323 0 obj -<< /S /GoTo /D (section*.60) >> +<< /S /GoTo /D (subsection.6.4) >> % 326 0 obj -(psb\137spall) +(6.4 psb\137cdcpy \204 Copies a communication descriptor) % 327 0 obj -<< /S /GoTo /D (section*.61) >> +<< /S /GoTo /D (subsection.6.5) >> % 330 0 obj -(psb\137spins) +(6.5 psb\137cdfree \204 Frees a communication descriptor) % 331 0 obj -<< /S /GoTo /D (section*.62) >> +<< /S /GoTo /D (subsection.6.6) >> % 334 0 obj -(psb\137spasb) +(6.6 psb\137cdbldext \204 Build an extended communication descriptor) % 335 0 obj -<< /S /GoTo /D (section*.63) >> +<< /S /GoTo /D (subsection.6.7) >> % 338 0 obj -(psb\137spfree) +(6.7 psb\137spall \204 Allocates a sparse matrix) % 339 0 obj -<< /S /GoTo /D (section*.64) >> +<< /S /GoTo /D (subsection.6.8) >> % 342 0 obj -(psb\137sprn) +(6.8 psb\137spins \204 Insert a set of coefficients into a sparse matrix) % 343 0 obj -<< /S /GoTo /D (section*.65) >> +<< /S /GoTo /D (subsection.6.9) >> % 346 0 obj -(psb\137geall) +(6.9 psb\137spasb \204 Sparse matrix assembly routine) % 347 0 obj -<< /S /GoTo /D (section*.66) >> +<< /S /GoTo /D (subsection.6.10) >> % 350 0 obj -(psb\137geins) +(6.10 psb\137spfree \204 Frees a sparse matrix) % 351 0 obj -<< /S /GoTo /D (section*.67) >> +<< /S /GoTo /D (subsection.6.11) >> % 354 0 obj -(psb\137geasb) +(6.11 psb\137sprn \204 Reinit sparse matrix structure for psblas routines.) % 355 0 obj -<< /S /GoTo /D (section*.68) >> +<< /S /GoTo /D (subsection.6.12) >> % 358 0 obj -(psb\137gefree) +(6.12 psb\137geall \204 Allocates a dense matrix) % 359 0 obj -<< /S /GoTo /D (section*.69) >> +<< /S /GoTo /D (subsection.6.13) >> % 362 0 obj -(psb\137gelp) +(6.13 psb\137geins \204 Dense matrix insertion routine) % 363 0 obj -<< /S /GoTo /D (section*.70) >> +<< /S /GoTo /D (subsection.6.14) >> % 366 0 obj -(psb\137glob\137to\137loc) +(6.14 psb\137geasb \204 Assembly a dense matrix) % 367 0 obj -<< /S /GoTo /D (section*.71) >> +<< /S /GoTo /D (subsection.6.15) >> % 370 0 obj -(psb\137loc\137to\137glob) +(6.15 psb\137gefree \204 Frees a dense matrix) % 371 0 obj -<< /S /GoTo /D (section*.72) >> +<< /S /GoTo /D (subsection.6.16) >> % 374 0 obj -(psb\137is\137owned ) +(6.16 psb\137gelp \204 Applies a left permutation to a dense matrix) % 375 0 obj -<< /S /GoTo /D (section*.73) >> +<< /S /GoTo /D (subsection.6.17) >> % 378 0 obj -(psb\137owned\137index ) +(6.17 psb\137glob\137to\137loc \204 Global to local indices convertion) % 379 0 obj -<< /S /GoTo /D (section*.74) >> +<< /S /GoTo /D (subsection.6.18) >> % 382 0 obj -(psb\137is\137local ) +(6.18 psb\137loc\137to\137glob \204 Local to global indices conversion) % 383 0 obj -<< /S /GoTo /D (section*.75) >> +<< /S /GoTo /D (subsection.6.19) >> % 386 0 obj -(psb\137local\137index ) +(6.19 psb\137is\137owned \204 ) % 387 0 obj -<< /S /GoTo /D (section*.76) >> +<< /S /GoTo /D (subsection.6.20) >> % 390 0 obj -(psb\137get\137boundary) +(6.20 psb\137owned\137index \204 ) % 391 0 obj -<< /S /GoTo /D (section*.77) >> +<< /S /GoTo /D (subsection.6.21) >> % 394 0 obj -(psb\137get\137overlap) +(6.21 psb\137is\137local \204 ) % 395 0 obj -<< /S /GoTo /D (section*.78) >> +<< /S /GoTo /D (subsection.6.22) >> % 398 0 obj -(psb\137sp\137getrow) +(6.22 psb\137local\137index \204 ) % 399 0 obj -<< /S /GoTo /D (section*.79) >> +<< /S /GoTo /D (subsection.6.23) >> % 402 0 obj -(psb\137sizeof) +(6.23 psb\137get\137boundary \204 Extract list of boundary elements) endstream endobj -567 0 obj +579 0 obj << /Length 584 >> @@ -470,7 +470,7 @@ ET endstream endobj -577 0 obj +589 0 obj << /Length 77 >> @@ -485,9 +485,9 @@ ET endstream endobj -628 0 obj +636 0 obj << -/Length 17396 +/Length 15926 >> stream 0 g 0 G @@ -495,614 +495,585 @@ stream BT /F16 14.3462 Tf 99.895 706.129 Td [(Con)31(ten)31(ts)]TJ 0 0 1 rg 0 0 1 RG -/F27 9.9626 Tf 0 -22.125 Td [(1)-925(In)32(tro)-32(duction)]TJ +/F27 9.9626 Tf 0 -22.144 Td [(1)-925(In)32(tro)-32(duction)]TJ 0 g 0 G [-26085(1)]TJ 0 0 1 rg 0 0 1 RG - 0 -22.126 Td [(2)-925(General)-383(o)32(v)31(erview)]TJ + 0 -22.145 Td [(2)-925(General)-383(o)32(v)31(erview)]TJ 0 g 0 G [-23689(2)]TJ 0 0 1 rg 0 0 1 RG -/F8 9.9626 Tf 14.944 -12.08 Td [(2.1)-1022(Basic)-334(Nomenclature)]TJ +/F8 9.9626 Tf 14.944 -12.091 Td [(2.1)-1022(Basic)-334(Nomenclature)]TJ 0 g 0 G [-927(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1583(3)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.079 Td [(2.2)-1022(Library)-333(con)27(ten)28(ts)]TJ + 0 -12.091 Td [(2.2)-1022(Library)-333(con)27(ten)28(ts)]TJ 0 g 0 G [-897(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1584(4)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.08 Td [(2.3)-1022(Application)-333(structure)]TJ + 0 -12.091 Td [(2.3)-1022(Application)-333(structure)]TJ 0 g 0 G [-300(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ 0 g 0 G [-1584(6)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 22.914 -12.08 Td [(2.3.1)-1144(Us)-1(er-de\014n)1(e)-1(d)-333(index)-333(mappings)]TJ + 22.914 -12.091 Td [(2.3.1)-1144(Us)-1(er-de\014n)1(e)-1(d)-333(index)-333(mappings)]TJ 0 g 0 G [-847(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ 0 g 0 G [-1584(8)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -22.914 -12.079 Td [(2.4)-1022(Programming)-334(mo)-27(del)]TJ + -22.914 -12.091 Td [(2.4)-1022(Programming)-334(mo)-27(del)]TJ 0 g 0 G [-736(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ 0 g 0 G [-1584(8)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG -/F27 9.9626 Tf -14.944 -22.126 Td [(3)-925(Data)-383(Struct)-1(ure)1(s)-384(and)-383(Classes)]TJ +/F27 9.9626 Tf -14.944 -22.144 Td [(3)-925(Data)-383(Struct)-1(ure)1(s)-384(and)-383(Classes)]TJ 0 g 0 G [-18144(9)]TJ 0 0 1 rg 0 0 1 RG -/F8 9.9626 Tf 14.944 -12.079 Td [(3.1)-1022(Descriptor)-334(data)-333(structure)]TJ +/F8 9.9626 Tf 14.944 -12.091 Td [(3.1)-1022(Descriptor)-334(data)-333(structure)]TJ 0 g 0 G [-886(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1584(9)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 22.914 -12.08 Td [(3.1.1)-1144(Des)-1(crip)1(tor)-334(Metho)-28(ds)]TJ + 22.914 -12.091 Td [(3.1.1)-1144(Des)-1(crip)1(tor)-334(Metho)-28(ds)]TJ 0 g 0 G [-913(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1083(12)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 31.881 -12.08 Td [(get)]TJ + 0 -12.091 Td [(3.1.2)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 543.314 cm +1 0 0 1 183.515 543.167 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 543.115 Td [(lo)-28(cal)]TJ +/F8 9.9626 Tf 186.504 542.968 Td [(lo)-28(cal)]TJ ET q -1 0 0 1 207.304 543.314 cm +1 0 0 1 207.304 543.167 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 210.293 543.115 Td [(ro)28(ws)]TJ +/F8 9.9626 Tf 210.293 542.968 Td [(ro)28(ws)-334(|)-333(Get)-333(n)28(um)27(b)-27(er)-334(of)-333(lo)-28(cal)-333(ro)28(ws)]TJ 0 g 0 G - [-411(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-893(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(12)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -40.659 -12.08 Td [(get)]TJ + -72.54 -12.091 Td [(3.1.3)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 531.235 cm +1 0 0 1 183.515 531.076 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 531.035 Td [(lo)-28(cal)]TJ +/F8 9.9626 Tf 186.504 530.877 Td [(lo)-28(cal)]TJ ET q -1 0 0 1 207.304 531.235 cm +1 0 0 1 207.304 531.076 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 210.293 531.035 Td [(cols)]TJ +/F8 9.9626 Tf 210.293 530.877 Td [(cols)-333(|)-334(Get)-333(n)28(um)27(b)-27(er)-334(of)-333(lo)-28(cal)-333(cols)]TJ 0 g 0 G - [-774(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-842(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(12)]TJ + [-1084(12)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -40.659 -12.079 Td [(get)]TJ + -72.54 -12.091 Td [(3.1.4)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 519.155 cm +1 0 0 1 183.515 518.985 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 518.956 Td [(global)]TJ +/F8 9.9626 Tf 186.504 518.786 Td [(global)]TJ ET q -1 0 0 1 213.115 519.155 cm +1 0 0 1 213.115 518.985 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 216.104 518.956 Td [(ro)28(ws)]TJ +/F8 9.9626 Tf 216.104 518.786 Td [(ro)28(ws)-334(|)-333(Get)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(global)-333(ro)27(ws)]TJ 0 g 0 G - [-605(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-503(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(12)]TJ + [-1083(12)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -46.47 -12.08 Td [(get)]TJ + -78.351 -12.091 Td [(3.1.5)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 507.075 cm +1 0 0 1 183.515 506.894 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 506.876 Td [(global)]TJ +/F8 9.9626 Tf 186.504 506.695 Td [(global)]TJ ET q -1 0 0 1 213.115 507.075 cm +1 0 0 1 213.115 506.894 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 216.104 506.876 Td [(cols)]TJ +/F8 9.9626 Tf 216.104 506.695 Td [(cols)-333(|)-334(Get)-333(n)28(um)27(b)-27(er)-334(of)-333(global)-333(cols)]TJ 0 g 0 G - [-969(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-453(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(13)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -46.47 -12.08 Td [(get)]TJ + -78.351 -12.091 Td [(3.1.6)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 494.996 cm +1 0 0 1 183.515 494.803 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 494.796 Td [(global)]TJ +/F8 9.9626 Tf 186.504 494.604 Td [(global)]TJ ET q -1 0 0 1 213.115 494.996 cm +1 0 0 1 213.115 494.803 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 216.104 494.796 Td [(indices)]TJ +/F8 9.9626 Tf 216.104 494.604 Td [(indices)-333(|)-334(Get)-333(v)28(ector)-334(of)-333(global)-333(indices)]TJ 0 g 0 G - [-413(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ + [-759(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(13)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -46.47 -12.079 Td [(get)]TJ + -78.351 -12.091 Td [(3.1.7)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 482.916 cm +1 0 0 1 183.515 482.712 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 482.717 Td [(con)28(text)]TJ +/F8 9.9626 Tf 186.504 482.513 Td [(con)28(text)-334(|)-333(Get)-333(comm)27(unication)-333(con)28(text)]TJ 0 g 0 G - [-779(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-966(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(13)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -16.87 -12.08 Td [(Clone)]TJ + -48.751 -12.091 Td [(3.1.8)-1144(Clone)-334(|)-333(clone)-334(cur)1(ren)27(t)-333(ob)-56(j)1(e)-1(ct)]TJ 0 g 0 G - [-861(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-577(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(14)]TJ + [-1083(14)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.08 Td [(CNV)]TJ + 0 -12.091 Td [(3.1.9)-1144(CNV)-334(|)-333(con)28(v)27(ert)-333(in)28(ternal)-333(storage)-334(format)]TJ 0 g 0 G - [-361(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-649(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(14)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.079 Td [(psb)]TJ + 0 -12.091 Td [(3.1.10)-644(psb)]TJ ET q -1 0 0 1 185.231 446.677 cm +1 0 0 1 185.231 446.439 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 188.22 446.478 Td [(cd)]TJ +/F8 9.9626 Tf 188.22 446.24 Td [(cd)]TJ ET q -1 0 0 1 198.78 446.677 cm +1 0 0 1 198.78 446.439 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 201.769 446.478 Td [(get)]TJ +/F8 9.9626 Tf 201.769 446.24 Td [(get)]TJ ET q -1 0 0 1 215.65 446.677 cm +1 0 0 1 215.65 446.439 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 218.639 446.478 Td [(large)]TJ +/F8 9.9626 Tf 218.639 446.24 Td [(large)]TJ ET q -1 0 0 1 240.297 446.677 cm +1 0 0 1 240.297 446.439 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 243.286 446.478 Td [(threshold)]TJ +/F8 9.9626 Tf 243.286 446.24 Td [(threshold)-222(|)-222(Get)-223(threshold)-222(for)-222(index)-222(map-)]TJ -73.652 -11.955 Td [(ping)-333(switc)27(h)]TJ 0 g 0 G - [-460(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-716(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(14)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -73.652 -12.08 Td [(psb)]TJ + -31.88 -12.091 Td [(3.1.11)-644(psb)]TJ ET q -1 0 0 1 185.231 434.597 cm +1 0 0 1 185.231 422.393 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 188.22 434.398 Td [(cd)]TJ +/F8 9.9626 Tf 188.22 422.194 Td [(cd)]TJ ET q -1 0 0 1 198.78 434.597 cm +1 0 0 1 198.78 422.393 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 201.769 434.398 Td [(set)]TJ +/F8 9.9626 Tf 201.769 422.194 Td [(set)]TJ ET q -1 0 0 1 214.599 434.597 cm +1 0 0 1 214.599 422.393 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 217.588 434.398 Td [(large)]TJ +/F8 9.9626 Tf 217.588 422.194 Td [(large)]TJ ET q -1 0 0 1 239.245 434.597 cm +1 0 0 1 239.245 422.393 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 242.234 434.398 Td [(threshold)]TJ +/F8 9.9626 Tf 242.234 422.194 Td [(threshold)-228(|)-227(Set)-228(threshold)-227(for)-228(index)-227(map-)]TJ -72.6 -11.956 Td [(ping)-333(switc)27(h)]TJ 0 g 0 G - [-565(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-716(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(14)]TJ + [-1084(14)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -72.6 -12.08 Td [(get)]TJ + -31.881 -12.091 Td [(3.1.12)-644(ge)-1(t)]TJ ET q -1 0 0 1 183.515 422.517 cm +1 0 0 1 183.515 398.347 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 422.318 Td [(p)]TJ +/F8 9.9626 Tf 186.504 398.147 Td [(p)]TJ ET q -1 0 0 1 192.637 422.517 cm +1 0 0 1 192.637 398.347 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 195.625 422.318 Td [(adjcncy)]TJ +/F8 9.9626 Tf 195.625 398.147 Td [(adjcncy)-333(|)-334(Get)-333(pro)-28(cess)-333(adjacency)-334(list)]TJ 0 g 0 G - [-530(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-697(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(15)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -25.991 -12.08 Td [(set)]TJ + -57.872 -12.091 Td [(3.1.13)-644(s)-1(et)]TJ ET q -1 0 0 1 182.464 410.438 cm +1 0 0 1 182.464 386.256 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 185.452 410.238 Td [(p)]TJ +/F8 9.9626 Tf 185.452 386.056 Td [(p)]TJ ET q -1 0 0 1 191.585 410.438 cm +1 0 0 1 191.585 386.256 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 194.574 410.238 Td [(adjcncy)]TJ +/F8 9.9626 Tf 194.574 386.056 Td [(adjcncy)-333(|)-334(Set)-333(pro)-28(cess)-333(adjacency)-333(list)]TJ 0 g 0 G - [-635(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-255(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(15)]TJ + [-1084(15)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -24.94 -12.079 Td [(fnd)]TJ + -56.821 -12.091 Td [(3.1.14)-644(fnd)]TJ ET q -1 0 0 1 184.345 398.358 cm +1 0 0 1 184.345 374.165 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 187.334 398.159 Td [(o)28(wner)]TJ +/F8 9.9626 Tf 187.334 373.965 Td [(o)28(wner)-334(|)-333(Find)-333(the)-333(o)27(wner)-333(pro)-28(cess)-333(of)-334(a)-333(set)-333(of)-334(ind)1(ic)-1(es)]TJ 0 g 0 G - [-554(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-984(.)]TJ 0 g 0 G - [-1084(15)]TJ + [-1083(15)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -49.581 -12.08 Td [(3.1.2)-1144(Nam)-1(ed)-333(Constan)28(ts)]TJ + -49.581 -12.091 Td [(3.1.15)-644(Nam)-1(ed)-333(Constan)28(ts)]TJ 0 g 0 G [-1017(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(16)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -22.914 -12.08 Td [(3.2)-1022(Sparse)-334(Matri)1(x)-334(class)]TJ + -22.914 -12.091 Td [(3.2)-1022(Sparse)-334(Matri)1(x)-334(class)]TJ 0 g 0 G [-372(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(16)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 22.914 -12.079 Td [(3.2.1)-1144(Sparse)-334(Matrix)-333(Metho)-28(ds)]TJ + 22.914 -12.091 Td [(3.2.1)-1144(Sparse)-334(Matrix)-333(Metho)-28(ds)]TJ 0 g 0 G [-844(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(17)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 31.881 -12.08 Td [(get)]TJ + 0 -12.091 Td [(3.2.2)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 350.039 cm +1 0 0 1 183.515 325.801 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 349.84 Td [(nro)28(ws)]TJ +/F8 9.9626 Tf 186.504 325.601 Td [(nro)28(ws)-334(|)-333(Get)-333(n)28(um)27(b)-27(er)-334(of)-333(ro)28(ws)-334(in)-333(a)-333(sparse)-334(matrix)]TJ 0 g 0 G - [-687(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ + [-707(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(17)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -16.87 -12.08 Td [(get)]TJ + -48.751 -12.091 Td [(3.2.3)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 337.96 cm +1 0 0 1 183.515 313.71 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 337.76 Td [(ncols)]TJ +/F8 9.9626 Tf 186.504 313.51 Td [(ncols)-333(|)-334(Get)-333(n)28(um)27(b)-27(er)-334(of)-333(columns)-333(in)-334(a)-333(sparse)-333(matrix)]TJ 0 g 0 G - [-273(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-269(.)-500(.)]TJ 0 g 0 G [-1084(17)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -16.87 -12.079 Td [(get)]TJ + -48.751 -12.091 Td [(3.2.4)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 325.88 cm +1 0 0 1 183.515 301.619 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 325.681 Td [(nnzeros)]TJ +/F8 9.9626 Tf 186.504 301.419 Td [(nnzeros)-231(|)-231(Get)-231(n)28(um)28(b)-28(er)-231(of)-230(nonzero)-231(elemen)27(t)1(s)-231(in)-231(a)-231(sparse)]TJ -16.87 -11.955 Td [(matrix)]TJ 0 g 0 G - [-715(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-441(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(18)]TJ + [-1083(18)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -16.87 -12.08 Td [(get)]TJ + -31.881 -12.091 Td [(3.2.5)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 313.8 cm +1 0 0 1 183.515 277.572 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 313.601 Td [(size)]TJ +/F8 9.9626 Tf 186.504 277.373 Td [(size)-331(|)-332(Get)-331(maxim)28(um)-331(n)28(um)27(b)-27(er)-332(of)-331(nonzero)-331(elemen)28(ts)-332(in)]TJ -16.87 -11.955 Td [(a)-333(sparse)-334(matrix)]TJ 0 g 0 G - [-884(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-483(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(18)]TJ + [-1084(18)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -16.87 -12.08 Td [(sizeof)]TJ + -31.881 -12.091 Td [(3.2.6)-1144(s)-1(i)1(z)-1(eof)-266(|)-266(Get)-266(memory)-267(o)-27(cc)-1(u)1(pation)-267(in)-266(b)28(ytes)-266(of)-267(a)-266(sparse)-266(matrix)]TJ 0 g 0 G - [-994(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)]TJ 0 g 0 G - [-1084(19)]TJ + [-550(19)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.08 Td [(get)]TJ + 0 -12.091 Td [(3.2.7)-1144(ge)-1(t)]TJ ET q -1 0 0 1 183.515 289.641 cm +1 0 0 1 183.515 241.435 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 289.441 Td [(fm)28(t)]TJ +/F8 9.9626 Tf 186.504 241.236 Td [(fm)28(t)-334(|)-333(Short)-333(description)-333(of)-334(the)-333(dynamic)-333(t)27(yp)-27(e)]TJ 0 g 0 G - [-946(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-518(.)-500(.)-500(.)-499(.)-500(.)]TJ 0 g 0 G [-1084(19)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -16.87 -12.079 Td [(is)]TJ + -48.751 -12.091 Td [(3.2.8)-1144(is)]TJ ET q -1 0 0 1 176.929 277.561 cm +1 0 0 1 176.929 229.344 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 179.918 277.362 Td [(bld,)-333(is)]TJ +/F8 9.9626 Tf 179.918 229.145 Td [(bld,)-333(is)]TJ ET q -1 0 0 1 207.138 277.561 cm +1 0 0 1 207.138 229.344 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 210.127 277.362 Td [(up)-28(d,)-333(is)]TJ +/F8 9.9626 Tf 210.127 229.145 Td [(up)-28(d,)-333(is)]TJ ET q -1 0 0 1 240.391 277.561 cm +1 0 0 1 240.391 229.344 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 243.38 277.362 Td [(asb)]TJ +/F8 9.9626 Tf 243.38 229.145 Td [(asb)-333(|)-334(Status)-333(c)28(hec)28(k)]TJ 0 g 0 G - [-731(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-587(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(19)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -73.746 -12.08 Td [(is)]TJ + -105.626 -12.091 Td [(3.2.9)-1144(is)]TJ ET q -1 0 0 1 176.929 265.481 cm +1 0 0 1 176.929 217.253 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 179.918 265.282 Td [(lo)28(w)28(er,)-334(is)]TJ +/F8 9.9626 Tf 179.918 217.054 Td [(lo)28(w)28(er,)-334(is)]TJ ET q -1 0 0 1 216.021 265.481 cm +1 0 0 1 216.021 217.253 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 219.01 265.282 Td [(upp)-28(er,)-333(is)]TJ +/F8 9.9626 Tf 219.01 217.054 Td [(upp)-28(er,)-333(is)]TJ ET q -1 0 0 1 257.604 265.481 cm +1 0 0 1 257.604 217.253 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 260.593 265.282 Td [(triangle,)-333(is)]TJ +/F8 9.9626 Tf 260.593 217.054 Td [(triangle,)-333(is)]TJ ET q -1 0 0 1 307.213 265.481 cm +1 0 0 1 307.213 217.253 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 310.202 265.282 Td [(unit)]TJ +/F8 9.9626 Tf 310.201 217.054 Td [(unit)-333(|)-334(F)84(ormat)-334(c)28(hec)28(k)]TJ 0 g 0 G - [-696(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-929(.)-500(.)]TJ 0 g 0 G [-1084(20)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -140.568 -12.08 Td [(cscn)28(v)]TJ + -172.448 -12.091 Td [(3.2.10)-644(c)-1(scn)28(v)-333(|)-333(Con)27(v)28(ert)-333(to)-334(a)-333(di\013eren)28(t)-333(storage)-334(format)]TJ 0 g 0 G - [-1022(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)]TJ + [-283(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ 0 g 0 G [-1084(20)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.079 Td [(csclip)]TJ + 0 -12.091 Td [(3.2.11)-644(c)-1(sclip)-333(|)-333(Reduce)-334(to)-333(a)-333(submatrix)]TJ 0 g 0 G - [-967(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-972(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1083(21)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.08 Td [(clean)]TJ + 0 -12.091 Td [(3.2.12)-644(c)-1(l)1(e)-1(an)]TJ ET q -1 0 0 1 192.371 229.242 cm +1 0 0 1 192.371 180.98 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 195.36 229.043 Td [(zeros)]TJ +/F8 9.9626 Tf 195.36 180.781 Td [(zeros)-333(|)-334(Eliminate)-333(zero)-333(co)-28(e\016cien)27(ts)]TJ 0 g 0 G - [-937(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-303(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(21)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -25.726 -12.08 Td [(get)]TJ + -57.607 -12.091 Td [(3.2.13)-644(ge)-1(t)]TJ ET q -1 0 0 1 183.515 217.162 cm +1 0 0 1 183.515 168.889 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 186.504 216.963 Td [(diag)]TJ +/F8 9.9626 Tf 186.504 168.69 Td [(diag)-333(|)-334(Get)-333(main)-333(diagonal)]TJ 0 g 0 G - [-612(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-938(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(22)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -16.87 -12.079 Td [(clip)]TJ + -48.751 -12.091 Td [(3.2.14)-644(c)-1(l)1(ip)]TJ ET q -1 0 0 1 185.729 205.083 cm +1 0 0 1 185.729 156.798 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 188.718 204.884 Td [(diag)]TJ +/F8 9.9626 Tf 188.718 156.599 Td [(diag)-333(|)-334(Cut)-333(out)-333(main)-334(d)1(iagonal)]TJ 0 g 0 G - [-390(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-446(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(22)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -19.084 -12.08 Td [(tril)]TJ + -50.965 -12.091 Td [(3.2.15)-644(tril)-334(|)-333(Return)-333(the)-334(lo)28(w)28(er)-333(triangle)]TJ 0 g 0 G - [-469(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-947(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(22)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.08 Td [(triu)]TJ + 0 -12.091 Td [(3.2.16)-644(triu)-334(|)-333(Return)-333(the)-334(upp)-27(er)-334(triangle)]TJ 0 g 0 G - [-969(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-419(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(23)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.08 Td [(psb)]TJ + 0 -12.091 Td [(3.2.17)-644(psb)]TJ ET q -1 0 0 1 185.231 168.844 cm +1 0 0 1 185.231 120.525 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 188.22 168.644 Td [(set)]TJ +/F8 9.9626 Tf 188.22 120.326 Td [(set)]TJ ET q -1 0 0 1 201.05 168.844 cm +1 0 0 1 201.05 120.525 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 204.038 168.644 Td [(mat)]TJ +/F8 9.9626 Tf 204.038 120.326 Td [(mat)]TJ ET q -1 0 0 1 221.794 168.844 cm +1 0 0 1 221.794 120.525 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 224.783 168.644 Td [(default)]TJ -0 g 0 G - [-1020(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ -0 g 0 G - [-1084(24)]TJ +/F8 9.9626 Tf 224.783 120.326 Td [(default)-333(|)-334(Set)-333(default)-333(storage)-334(f)1(ormat)]TJ 0 g 0 G -0 0 1 rg 0 0 1 RG - -55.149 -12.079 Td [(clone)]TJ -0 g 0 G - [-361(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ -0 g 0 G - [-1084(24)]TJ -0 g 0 G -0 0 1 rg 0 0 1 RG - -31.88 -12.08 Td [(3.2.2)-1144(Named)-334(Constan)28(ts)]TJ -0 g 0 G - [-1016(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-342(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(24)]TJ 0 g 0 G -0 0 1 rg 0 0 1 RG - -22.915 -12.08 Td [(3.3)-1022(Dense)-334(V)84(ector)-334(Data)-333(Structure)]TJ -0 g 0 G - [-852(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ -0 g 0 G - [-1084(24)]TJ -0 g 0 G -0 0 1 rg 0 0 1 RG - 22.915 -12.079 Td [(3.3.1)-1144(V)83(ector)-333(Metho)-28(ds)]TJ -0 g 0 G - [-297(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ 0 g 0 G - [-1084(25)]TJ -0 g 0 G -0 g 0 G - 132.613 -29.888 Td [(i)]TJ + 45.584 -29.888 Td [(i)]TJ 0 g 0 G ET @@ -1112,382 +1083,373 @@ endobj << /Type /ObjStm /N 100 -/First 867 -/Length 6492 +/First 877 +/Length 7331 >> stream -403 0 407 44 408 76 411 118 412 164 415 208 416 234 419 278 420 304 423 348 -424 374 427 418 428 458 431 502 432 542 435 586 436 613 439 657 440 686 443 730 -444 757 447 801 448 828 451 872 452 897 455 941 456 966 459 1010 460 1035 463 1079 -464 1104 467 1148 468 1173 471 1217 472 1243 475 1287 476 1312 479 1356 480 1381 483 1423 -484 1454 487 1498 488 1527 491 1571 492 1598 495 1643 496 1684 499 1729 500 1767 503 1809 -504 1835 507 1880 508 1905 511 1950 512 1976 515 2021 516 2053 519 2098 520 2132 523 2177 -524 2210 527 2255 528 2290 531 2333 532 2374 535 2419 536 2446 539 2491 540 2519 543 2564 -544 2592 547 2637 548 2665 551 2710 552 2730 555 2775 556 2802 559 2845 560 2880 563 2925 -564 2953 565 2998 568 3112 569 3168 3 3224 566 3278 576 3383 578 3497 575 3554 627 3620 -579 4114 580 4260 581 4406 582 4558 583 4710 584 4862 585 5019 586 5171 587 5317 588 5469 +403 0 407 48 408 127 411 175 412 257 415 305 416 361 419 409 420 452 423 494 +424 540 427 587 428 662 431 709 432 797 435 844 436 917 439 964 440 1038 443 1085 +444 1151 447 1198 448 1252 451 1299 452 1380 455 1427 456 1483 459 1530 460 1581 463 1629 +464 1675 467 1723 468 1773 471 1821 472 1871 475 1919 476 1984 479 2032 480 2097 483 2145 +484 2205 487 2253 488 2298 491 2346 492 2394 495 2436 496 2467 499 2514 500 2547 503 2594 +504 2625 507 2672 508 2717 511 2764 512 2806 515 2848 516 2874 519 2921 520 3024 523 3071 +524 3170 527 3217 528 3318 531 3365 532 3466 535 3513 536 3614 539 3661 540 3764 543 3807 +544 3848 547 3896 548 3953 551 4001 552 4055 555 4103 556 4168 559 4216 560 4293 563 4341 +564 4400 567 4448 568 4499 571 4542 572 4577 575 4625 576 4697 577 4742 580 4856 581 4912 +3 4968 578 5022 588 5127 590 5241 587 5298 635 5364 591 5858 592 6004 593 6150 594 6302 % 403 0 obj -<< /S /GoTo /D (section*.80) >> +<< /S /GoTo /D (subsection.6.24) >> % 407 0 obj -(Sorting utilities) +(6.24 psb\137get\137overlap \204 Extract list of overlap elements) % 408 0 obj -<< /S /GoTo /D (section.7) >> +<< /S /GoTo /D (subsection.6.25) >> % 411 0 obj -(7 Parallel environment routines) +(6.25 psb\137sp\137getrow \204 Extract row\(s\) from a sparse matrix) % 412 0 obj -<< /S /GoTo /D (section*.81) >> +<< /S /GoTo /D (subsection.6.26) >> % 415 0 obj -(psb\137init) +(6.26 psb\137sizeof \204 Memory occupation) % 416 0 obj -<< /S /GoTo /D (section*.82) >> +<< /S /GoTo /D (subsection.6.27) >> % 419 0 obj -(psb\137info) +(6.27 Sorting utilities \204 ) % 420 0 obj -<< /S /GoTo /D (section*.83) >> +<< /S /GoTo /D (section.7) >> % 423 0 obj -(psb\137exit) +(7 Parallel environment routines) % 424 0 obj -<< /S /GoTo /D (section*.84) >> +<< /S /GoTo /D (subsection.7.1) >> % 427 0 obj -(psb\137get\137mpi\137comm) +(7.1 psb\137init \204 Initializes PSBLAS parallel environment) % 428 0 obj -<< /S /GoTo /D (section*.85) >> +<< /S /GoTo /D (subsection.7.2) >> % 431 0 obj -(psb\137get\137mpi\137rank) +(7.2 psb\137info \204 Return information about PSBLAS parallel environment) % 432 0 obj -<< /S /GoTo /D (section*.86) >> +<< /S /GoTo /D (subsection.7.3) >> % 435 0 obj -(psb\137wtime) +(7.3 psb\137exit \204 Exit from PSBLAS parallel environment) % 436 0 obj -<< /S /GoTo /D (section*.87) >> +<< /S /GoTo /D (subsection.7.4) >> % 439 0 obj -(psb\137barrier) +(7.4 psb\137get\137mpi\137comm \204 Get the MPI communicator) % 440 0 obj -<< /S /GoTo /D (section*.88) >> +<< /S /GoTo /D (subsection.7.5) >> % 443 0 obj -(psb\137abort) +(7.5 psb\137get\137mpi\137rank \204 Get the MPI rank) % 444 0 obj -<< /S /GoTo /D (section*.89) >> +<< /S /GoTo /D (subsection.7.6) >> % 447 0 obj -(psb\137bcast) +(7.6 psb\137wtime \204 Wall clock timing) % 448 0 obj -<< /S /GoTo /D (section*.90) >> +<< /S /GoTo /D (subsection.7.7) >> % 451 0 obj -(psb\137sum) +(7.7 psb\137barrier \204 Sinchronization point parallel environment) % 452 0 obj -<< /S /GoTo /D (section*.91) >> +<< /S /GoTo /D (subsection.7.8) >> % 455 0 obj -(psb\137max) +(7.8 psb\137abort \204 Abort a computation) % 456 0 obj -<< /S /GoTo /D (section*.92) >> +<< /S /GoTo /D (subsection.7.9) >> % 459 0 obj -(psb\137min) +(7.9 psb\137bcast \204 Broadcast data) % 460 0 obj -<< /S /GoTo /D (section*.93) >> +<< /S /GoTo /D (subsection.7.10) >> % 463 0 obj -(psb\137amx) +(7.10 psb\137sum \204 Global sum) % 464 0 obj -<< /S /GoTo /D (section*.94) >> +<< /S /GoTo /D (subsection.7.11) >> % 467 0 obj -(psb\137amn) +(7.11 psb\137max \204 Global maximum) % 468 0 obj -<< /S /GoTo /D (section*.95) >> +<< /S /GoTo /D (subsection.7.12) >> % 471 0 obj -(psb\137nrm2) +(7.12 psb\137min \204 Global minimum) % 472 0 obj -<< /S /GoTo /D (section*.96) >> +<< /S /GoTo /D (subsection.7.13) >> % 475 0 obj -(psb\137snd) +(7.13 psb\137amx \204 Global maximum absolute value) % 476 0 obj -<< /S /GoTo /D (section*.97) >> +<< /S /GoTo /D (subsection.7.14) >> % 479 0 obj -(psb\137rcv) +(7.14 psb\137amn \204 Global minimum absolute value) % 480 0 obj -<< /S /GoTo /D (section.8) >> +<< /S /GoTo /D (subsection.7.15) >> % 483 0 obj -(8 Error handling) +(7.15 psb\137nrm2 \204 Global 2-norm reduction) % 484 0 obj -<< /S /GoTo /D (section*.98) >> +<< /S /GoTo /D (subsection.7.16) >> % 487 0 obj -(psb\137errpush) +(7.16 psb\137snd \204 Send data) % 488 0 obj -<< /S /GoTo /D (section*.99) >> +<< /S /GoTo /D (subsection.7.17) >> % 491 0 obj -(psb\137error) +(7.17 psb\137rcv \204 Receive data) % 492 0 obj -<< /S /GoTo /D (section*.100) >> +<< /S /GoTo /D (section.8) >> % 495 0 obj -(psb\137set\137errverbosity) +(8 Error handling) % 496 0 obj -<< /S /GoTo /D (section*.101) >> +<< /S /GoTo /D (subsection.8.1) >> % 499 0 obj -(psb\137set\137erraction) +(8.1 psb\137errpush) % 500 0 obj -<< /S /GoTo /D (section.9) >> +<< /S /GoTo /D (subsection.8.2) >> % 503 0 obj -(9 Utilities) +(8.2 psb\137error) % 504 0 obj -<< /S /GoTo /D (section*.102) >> +<< /S /GoTo /D (subsection.8.3) >> % 507 0 obj -(hb\137read) +(8.3 psb\137set\137errverbosity) % 508 0 obj -<< /S /GoTo /D (section*.103) >> +<< /S /GoTo /D (subsection.8.4) >> % 511 0 obj -(hb\137write) +(8.4 psb\137set\137erraction) % 512 0 obj -<< /S /GoTo /D (section*.104) >> +<< /S /GoTo /D (section.9) >> % 515 0 obj -(mm\137mat\137read) +(9 Utilities) % 516 0 obj -<< /S /GoTo /D (section*.105) >> +<< /S /GoTo /D (subsection.9.1) >> % 519 0 obj -(mm\137array\137read) +(9.1 \040hb\137read \204 Read a sparse matrix from a file in the Harwell\205Boeing format) % 520 0 obj -<< /S /GoTo /D (section*.106) >> +<< /S /GoTo /D (subsection.9.2) >> % 523 0 obj -(mm\137mat\137write) +(9.2 hb\137write \204 Write a sparse matrix to a file in the Harwell\205Boeing format) % 524 0 obj -<< /S /GoTo /D (section*.107) >> +<< /S /GoTo /D (subsection.9.3) >> % 527 0 obj -(mm\137array\137write) +(9.3 mm\137mat\137read \204 Read a sparse matrix from a file in the MatrixMarket format) % 528 0 obj -<< /S /GoTo /D (section.10) >> +<< /S /GoTo /D (subsection.9.4) >> % 531 0 obj -(10 Preconditioner routines) +(9.4 mm\137array\137read \204 Read a dense array from a file in the MatrixMarket format) % 532 0 obj -<< /S /GoTo /D (section*.108) >> +<< /S /GoTo /D (subsection.9.5) >> % 535 0 obj -(prec\045init) +(9.5 mm\137mat\137write \204 Write a sparse matrix to a file in the MatrixMarket format) % 536 0 obj -<< /S /GoTo /D (section*.109) >> +<< /S /GoTo /D (subsection.9.6) >> % 539 0 obj -(prec\045build) +(9.6 mm\137array\137write \204 Write a dense array from a file in the MatrixMarket format) % 540 0 obj -<< /S /GoTo /D (section*.110) >> +<< /S /GoTo /D (section.10) >> % 543 0 obj -(prec\045apply) +(10 Preconditioner routines) % 544 0 obj -<< /S /GoTo /D (section*.111) >> +<< /S /GoTo /D (subsection.10.1) >> % 547 0 obj -(prec\045descr) +(10.1 init \204 Initialize a preconditioner) % 548 0 obj -<< /S /GoTo /D (section*.112) >> +<< /S /GoTo /D (subsection.10.2) >> % 551 0 obj -(clone) +(10.2 build \204 Builds a preconditioner) % 552 0 obj -<< /S /GoTo /D (section*.113) >> +<< /S /GoTo /D (subsection.10.3) >> % 555 0 obj -(prec\045free) +(10.3 apply \204 Preconditioner application routine) % 556 0 obj -<< /S /GoTo /D (section.11) >> +<< /S /GoTo /D (subsection.10.4) >> % 559 0 obj -(11 Iterative Methods) +(10.4 descr \204 Prints a description of current preconditioner) % 560 0 obj -<< /S /GoTo /D (section*.114) >> +<< /S /GoTo /D (subsection.10.5) >> % 563 0 obj -(psb\137krylov) +(10.5 clone \204 clone current preconditioner) % 564 0 obj -<< /S /GoTo /D [565 0 R /Fit] >> -% 565 0 obj +<< /S /GoTo /D (subsection.10.6) >> +% 567 0 obj +(10.6 free \204 Free a preconditioner) +% 568 0 obj +<< /S /GoTo /D (section.11) >> +% 571 0 obj +(11 Iterative Methods) +% 572 0 obj +<< /S /GoTo /D (subsection.11.1) >> +% 575 0 obj +(11.1 psb\137krylov \040\204 Krylov Methods Driver Routine) +% 576 0 obj +<< /S /GoTo /D [577 0 R /Fit] >> +% 577 0 obj << /Type /Page -/Contents 567 0 R -/Resources 566 0 R +/Contents 579 0 R +/Resources 578 0 R /MediaBox [0 0 595.276 841.89] -/Parent 574 0 R +/Parent 586 0 R >> -% 568 0 obj +% 580 0 obj << -/D [565 0 R /XYZ 98.895 753.953 null] +/D [577 0 R /XYZ 98.895 753.953 null] >> -% 569 0 obj +% 581 0 obj << -/D [565 0 R /XYZ 99.895 716.092 null] +/D [577 0 R /XYZ 99.895 716.092 null] >> % 3 0 obj << -/D [565 0 R /XYZ 99.895 716.092 null] +/D [577 0 R /XYZ 99.895 716.092 null] >> -% 566 0 obj +% 578 0 obj << -/Font << /F16 570 0 R /F18 571 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F18 583 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 576 0 obj +% 588 0 obj << /Type /Page -/Contents 577 0 R -/Resources 575 0 R +/Contents 589 0 R +/Resources 587 0 R /MediaBox [0 0 595.276 841.89] -/Parent 574 0 R +/Parent 586 0 R >> -% 578 0 obj +% 590 0 obj << -/D [576 0 R /XYZ 149.705 753.953 null] +/D [588 0 R /XYZ 149.705 753.953 null] >> -% 575 0 obj +% 587 0 obj << -/Font << /F8 573 0 R >> +/Font << /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 627 0 obj +% 635 0 obj << /Type /Page -/Contents 628 0 R -/Resources 626 0 R +/Contents 636 0 R +/Resources 634 0 R /MediaBox [0 0 595.276 841.89] -/Parent 574 0 R -/Annots [ 579 0 R 580 0 R 581 0 R 582 0 R 583 0 R 584 0 R 585 0 R 586 0 R 587 0 R 588 0 R 589 0 R 590 0 R 591 0 R 592 0 R 593 0 R 594 0 R 595 0 R 596 0 R 597 0 R 598 0 R 599 0 R 600 0 R 601 0 R 602 0 R 603 0 R 604 0 R 605 0 R 606 0 R 607 0 R 608 0 R 609 0 R 610 0 R 611 0 R 612 0 R 613 0 R 614 0 R 615 0 R 616 0 R 617 0 R 618 0 R 619 0 R 620 0 R 621 0 R 622 0 R 623 0 R 624 0 R ] +/Parent 586 0 R +/Annots [ 591 0 R 592 0 R 593 0 R 594 0 R 595 0 R 596 0 R 597 0 R 598 0 R 599 0 R 600 0 R 601 0 R 602 0 R 603 0 R 604 0 R 605 0 R 606 0 R 607 0 R 608 0 R 609 0 R 639 0 R 610 0 R 640 0 R 611 0 R 612 0 R 613 0 R 614 0 R 615 0 R 616 0 R 617 0 R 618 0 R 619 0 R 641 0 R 620 0 R 642 0 R 621 0 R 622 0 R 623 0 R 624 0 R 625 0 R 626 0 R 627 0 R 628 0 R 629 0 R 630 0 R 631 0 R 632 0 R ] >> -% 579 0 obj +% 591 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [98.899 683.007 179.001 691.918] +/Rect [98.899 682.988 179.001 691.899] /A << /S /GoTo /D (section.1) >> >> -% 580 0 obj +% 592 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [98.899 660.882 202.863 669.793] +/Rect [98.899 660.844 202.863 669.755] /A << /S /GoTo /D (section.2) >> >> -% 581 0 obj +% 593 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 648.802 225.868 657.713] +/Rect [113.843 648.753 225.868 657.664] /A << /S /GoTo /D (subsection.2.1) >> >> -% 582 0 obj +% 594 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 634.785 210.675 645.633] +/Rect [113.843 634.725 210.675 645.573] /A << /S /GoTo /D (subsection.2.2) >> >> -% 583 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 622.706 232.122 633.554] -/A << /S /GoTo /D (subsection.2.3) >> ->> -% 584 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [136.757 610.626 296.409 621.474] -/A << /S /GoTo /D (subsubsection.2.3.1) >> ->> -% 585 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 598.546 227.777 609.394] -/A << /S /GoTo /D (subsection.2.4) >> ->> -% 586 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [98.899 578.358 258.112 587.269] -/A << /S /GoTo /D (section.3) >> ->> -% 587 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 564.341 249.529 575.189] -/A << /S /GoTo /D (subsection.3.1) >> ->> -% 588 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [136.757 552.261 257.001 563.11] -/A << /S /GoTo /D (subsubsection.3.1.1) >> ->> endstream endobj -681 0 obj +693 0 obj << -/Length 20011 +/Length 15806 >> stream 0 g 0 G 0 g 0 G 0 0 1 rg 0 0 1 RG BT -/F8 9.9626 Tf 220.443 706.129 Td [(get)]TJ +/F8 9.9626 Tf 188.563 706.129 Td [(3.2.18)-644(clone)-334(|)-333(Clone)-333(c)-1(u)1(rren)27(t)-333(ob)-55(jec)-1(t)]TJ +0 g 0 G + [-577(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-1083(24)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG + 0 -12.08 Td [(3.2.19)-644(Named)-334(Constan)28(ts)]TJ +0 g 0 G + [-1016(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-1084(24)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG + -22.914 -12.08 Td [(3.3)-1022(Dense)-334(V)84(ector)-334(Data)-333(Structure)]TJ +0 g 0 G + [-852(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-1084(24)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG + 22.914 -12.079 Td [(3.3.1)-1144(V)83(ector)-333(Metho)-28(ds)]TJ +0 g 0 G + [-297(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-1083(25)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG + 0 -12.08 Td [(3.3.2)-1144(get)]TJ ET q -1 0 0 1 234.325 706.328 cm +1 0 0 1 234.325 658.009 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 237.314 706.129 Td [(nro)28(ws)]TJ +/F8 9.9626 Tf 237.314 657.81 Td [(nro)28(ws)-334(|)-333(Get)-333(n)28(um)27(b)-27(er)-334(of)-333(ro)28(ws)-334(in)-333(a)-333(dense)-334(v)28(ector)]TJ 0 g 0 G - [-687(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)]TJ + [-466(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(25)]TJ + [-1083(25)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -16.871 -12.08 Td [(sizeof)]TJ + -48.751 -12.08 Td [(3.3.3)-1144(size)-1(of)-319(|)-320(Get)-320(memory)-320(o)-28(ccupation)-320(in)-319(b)27(ytes)-320(of)-319(a)-320(dense)-320(v)28(ector)]TJ 0 g 0 G - [-994(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(25)]TJ + [-550(25)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.08 Td [(set)]TJ + 0 -12.079 Td [(3.3.4)-1144(set)-334(|)-333(Set)-333(c)-1(on)28(ten)28(ts)-333(of)-334(the)-333(v)28(ector)]TJ 0 g 0 G - [-1356(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-930(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(26)]TJ + [-1084(26)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.079 Td [(get)]TJ + 0 -12.08 Td [(3.3.5)-1144(get)]TJ ET q -1 0 0 1 234.325 670.089 cm +1 0 0 1 234.325 621.77 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 237.314 669.89 Td [(v)28(ect)]TJ +/F8 9.9626 Tf 237.314 621.571 Td [(v)28(ect)-334(|)-333(Get)-333(a)-334(cop)28(y)-333(of)-333(the)-334(v)28(ector)-333(con)27(ten)28(ts)]TJ 0 g 0 G - [-668(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-735(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(27)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -16.871 -12.08 Td [(clone)]TJ + -48.751 -12.08 Td [(3.3.6)-1144(clone)-334(|)-333(Clone)-333(c)-1(u)1(rren)27(t)-333(ob)-55(jec)-1(t)]TJ 0 g 0 G - [-361(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-577(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(27)]TJ + [-1083(27)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -54.794 -12.08 Td [(3.4)-1022(Preconditioner)-333(data)-334(structure)]TJ + -22.914 -12.079 Td [(3.4)-1022(Preconditioner)-333(data)-334(structure)]TJ 0 g 0 G [-585(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(27)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - 0 -12.079 Td [(3.5)-1022(Heap)-334(dat)1(a)-334(structure)]TJ + 0 -12.08 Td [(3.5)-1022(Heap)-334(dat)1(a)-334(structure)]TJ 0 g 0 G [-855(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)]TJ 0 g 0 G @@ -1498,2066 +1460,2108 @@ BT 0 g 0 G [-19887(29)]TJ 0 0 1 rg 0 0 1 RG -/F8 9.9626 Tf 14.944 -12.079 Td [(psb)]TJ +/F8 9.9626 Tf 14.944 -12.079 Td [(4.1)-1022(psb)]TJ ET q -1 0 0 1 181.246 599.645 cm +1 0 0 1 204.16 551.326 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 599.446 Td [(geaxpb)28(y)]TJ +/F8 9.9626 Tf 207.149 551.127 Td [(geaxpb)28(y)-333(|)-334(General)-333(Dense)-334(Matrix)-333(Sum)]TJ 0 g 0 G - [-301(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-719(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(30)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(4.2)-1022(psb)]TJ ET q -1 0 0 1 181.246 587.565 cm +1 0 0 1 204.16 539.246 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 587.366 Td [(gedot)]TJ +/F8 9.9626 Tf 207.149 539.047 Td [(gedot)-333(|)-334(Dot)-333(Pro)-28(duct)]TJ 0 g 0 G - [-718(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-553(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1083(32)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(4.3)-1022(psb)]TJ ET q -1 0 0 1 181.246 575.485 cm +1 0 0 1 204.16 527.167 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 575.286 Td [(gedots)]TJ +/F8 9.9626 Tf 207.149 526.967 Td [(gedots)-333(|)-334(Generalized)-333(Dot)-333(Pro)-28(duct)]TJ 0 g 0 G - [-323(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-927(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(34)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.079 Td [(4.4)-1022(psb)]TJ ET q -1 0 0 1 181.246 563.406 cm +1 0 0 1 204.16 515.087 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 563.206 Td [(normi)]TJ +/F8 9.9626 Tf 207.149 514.888 Td [(normi)-333(|)-334(In\014ni)1(t)27(y-Norm)-333(of)-333(V)83(ector)]TJ 0 g 0 G - [-548(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-270(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(36)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.079 Td [(psb)]TJ + -41.5 -12.08 Td [(4.5)-1022(psb)]TJ ET q -1 0 0 1 181.246 551.326 cm +1 0 0 1 204.16 503.007 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 551.127 Td [(geamaxs)]TJ +/F8 9.9626 Tf 207.149 502.808 Td [(geamaxs)-333(|)-334(Generalized)-333(In\014nit)28(y)-334(Norm)]TJ 0 g 0 G - [-962(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-316(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(38)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(4.6)-1022(psb)]TJ ET q -1 0 0 1 181.246 539.246 cm +1 0 0 1 204.16 490.928 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 539.047 Td [(norm1)]TJ +/F8 9.9626 Tf 207.149 490.728 Td [(norm1)-333(|)-334(1-Norm)-333(of)-333(V)83(ector)]TJ 0 g 0 G - [-326(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-409(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(39)]TJ + [-1083(39)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.079 Td [(4.7)-1022(psb)]TJ ET q -1 0 0 1 181.246 527.167 cm +1 0 0 1 204.16 478.848 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 526.967 Td [(geasums)]TJ +/F8 9.9626 Tf 207.149 478.649 Td [(geasums)-333(|)-334(Generalized)-333(1-Norm)-334(of)-333(V)83(ector)]TJ 0 g 0 G - [-262(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-335(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(41)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.079 Td [(psb)]TJ + -41.5 -12.08 Td [(4.8)-1022(psb)]TJ ET q -1 0 0 1 181.246 515.087 cm +1 0 0 1 204.16 466.768 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 514.888 Td [(norm2)]TJ +/F8 9.9626 Tf 207.149 466.569 Td [(norm2)-333(|)-334(2-Norm)-333(of)-333(V)83(ector)]TJ 0 g 0 G - [-326(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-409(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(43)]TJ + [-1083(43)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(4.9)-1022(psb)]TJ ET q -1 0 0 1 181.246 503.007 cm +1 0 0 1 204.16 454.688 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 502.808 Td [(genrm2s)]TJ +/F8 9.9626 Tf 207.149 454.489 Td [(genrm2s)-333(|)-334(Generalized)-333(2-Norm)-333(of)-334(V)84(e)-1(ctor)]TJ 0 g 0 G - [-265(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-338(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(45)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(4.10)-522(psb)]TJ ET q -1 0 0 1 181.246 490.928 cm +1 0 0 1 204.16 442.609 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 490.728 Td [(norm1)]TJ +/F8 9.9626 Tf 207.149 442.409 Td [(norm1)-333(|)-334(1-Norm)-333(of)-333(Sparse)-334(Matrix)]TJ 0 g 0 G - [-326(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-956(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(46)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.079 Td [(psb)]TJ + -41.5 -12.079 Td [(4.11)-522(psb)]TJ ET q -1 0 0 1 181.246 478.848 cm +1 0 0 1 204.16 430.529 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 478.649 Td [(normi)]TJ +/F8 9.9626 Tf 207.149 430.33 Td [(normi)-333(|)-334(In\014ni)1(t)27(y)-333(Norm)-333(of)-334(Sparse)-333(Matrix)]TJ 0 g 0 G - [-548(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-817(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(47)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(4.12)-522(psb)]TJ ET q -1 0 0 1 181.246 466.768 cm +1 0 0 1 204.16 418.449 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 466.569 Td [(spmm)]TJ +/F8 9.9626 Tf 207.149 418.25 Td [(spmm)-333(|)-334(Sparse)-333(Matrix)-333(b)28(y)-334(Dense)-333(Matrix)-333(Pro)-28(duct)]TJ 0 g 0 G - [-490(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-584(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(48)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(4.13)-522(psb)]TJ ET q -1 0 0 1 181.246 454.688 cm +1 0 0 1 204.16 406.37 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 454.489 Td [(spsm)]TJ +/F8 9.9626 Tf 207.149 406.17 Td [(spsm)-333(|)-334(T)84(riangular)-334(System)-333(Solv)28(e)]TJ 0 g 0 G - [-929(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-284(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(50)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG -/F27 9.9626 Tf -33.53 -22.125 Td [(5)-925(Comm)32(unication)-383(r)-1(ou)1(t)-1(ines)]TJ + -41.5 -12.079 Td [(4.14)-522(psb)]TJ +ET +q +1 0 0 1 204.16 394.29 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 207.149 394.091 Td [(gemlt)-333(|)-334(En)28(trywise)-333(Pro)-28(duct)]TJ +0 g 0 G + [-906(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-1084(53)]TJ 0 g 0 G - [-19454(53)]TJ 0 0 1 rg 0 0 1 RG -/F8 9.9626 Tf 14.944 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(4.15)-522(psb)]TJ ET q -1 0 0 1 181.246 420.483 cm +1 0 0 1 204.16 382.21 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 420.284 Td [(halo)]TJ +/F8 9.9626 Tf 207.149 382.011 Td [(gediv)-333(|)-334(En)28(trywise)-333(Division)]TJ 0 g 0 G - [-495(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-1015(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(54)]TJ + [-1084(55)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(4.16)-522(psb)]TJ ET q -1 0 0 1 181.246 408.404 cm +1 0 0 1 204.16 370.131 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 408.204 Td [(o)28(vrl)]TJ +/F8 9.9626 Tf 207.149 369.931 Td [(gein)28(v)-334(|)-333(En)28(trywise)-333(In)27(v)28(ersion)]TJ 0 g 0 G - [-659(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ + [-664(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-1084(57)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.079 Td [(psb)]TJ +/F27 9.9626 Tf -56.444 -22.125 Td [(5)-925(Comm)32(unication)-383(r)-1(ou)1(t)-1(ines)]TJ +0 g 0 G + [-19454(58)]TJ +0 0 1 rg 0 0 1 RG +/F8 9.9626 Tf 14.944 -12.08 Td [(5.1)-1022(psb)]TJ ET q -1 0 0 1 181.246 396.324 cm +1 0 0 1 204.16 335.925 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 396.125 Td [(gather)]TJ +/F8 9.9626 Tf 207.149 335.726 Td [(halo)-333(|)-334(Halo)-333(Data)-333(Comm)27(un)1(ic)-1(ati)1(o)-1(n)]TJ 0 g 0 G - [-326(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-320(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(61)]TJ + [-1084(59)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(5.2)-1022(psb)]TJ ET q -1 0 0 1 181.246 384.244 cm +1 0 0 1 204.16 323.846 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 384.045 Td [(scatter)]TJ +/F8 9.9626 Tf 207.149 323.647 Td [(o)28(vrl)-333(|)-334(Ov)28(erlap)-333(Up)-28(date)]TJ 0 g 0 G - [-932(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-579(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(63)]TJ + [-1084(62)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG -/F27 9.9626 Tf -33.53 -22.125 Td [(6)-925(Data)-383(managem)-1(e)1(n)31(t)-383(routines)]TJ + -41.5 -12.08 Td [(5.3)-1022(psb)]TJ +ET +q +1 0 0 1 204.16 311.766 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 207.149 311.567 Td [(gather)-333(|)-334(Gather)-333(Global)-333(Dense)-334(Matrix)]TJ +0 g 0 G + [-903(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-1084(66)]TJ 0 g 0 G - [-18205(65)]TJ 0 0 1 rg 0 0 1 RG -/F8 9.9626 Tf 14.944 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(5.4)-1022(psb)]TJ ET q -1 0 0 1 181.246 350.039 cm +1 0 0 1 204.16 299.686 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 349.84 Td [(cdall)]TJ +/F8 9.9626 Tf 207.149 299.487 Td [(scatter)-333(|)-334(Scatter)-333(Global)-333(Dense)-334(Matrix)]TJ +0 g 0 G + [-682(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-273(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-1084(68)]TJ 0 g 0 G - [-1084(65)]TJ +0 0 1 rg 0 0 1 RG +/F27 9.9626 Tf -56.444 -22.125 Td [(6)-925(Data)-383(managem)-1(e)1(n)31(t)-383(routines)]TJ 0 g 0 G + [-18205(70)]TJ 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ +/F8 9.9626 Tf 14.944 -12.08 Td [(6.1)-1022(psb)]TJ ET q -1 0 0 1 181.246 337.96 cm +1 0 0 1 204.16 265.481 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 337.76 Td [(cdins)]TJ +/F8 9.9626 Tf 207.149 265.282 Td [(cdall)-333(|)-334(Allo)-27(cates)-334(a)-333(comm)27(u)1(nication)-334(descriptor)]TJ 0 g 0 G - [-879(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-817(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(69)]TJ + [-1084(70)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.079 Td [(psb)]TJ + -41.5 -12.08 Td [(6.2)-1022(psb)]TJ ET q -1 0 0 1 181.246 325.88 cm +1 0 0 1 204.16 253.402 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 325.681 Td [(cdasb)]TJ +/F8 9.9626 Tf 207.149 253.202 Td [(cdins)-333(|)-334(Comm)28(unication)-333(descriptor)-333(inse)-1(r)1(t)-334(routine)]TJ 0 g 0 G - [-657(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-861(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(71)]TJ + [-1084(74)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.079 Td [(6.3)-1022(psb)]TJ ET q -1 0 0 1 181.246 313.8 cm +1 0 0 1 204.16 241.322 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 313.601 Td [(cdcp)28(y)]TJ +/F8 9.9626 Tf 207.149 241.123 Td [(cdasb)-333(|)-334(Comm)28(unication)-333(descriptor)-334(assem)28(bly)-333(routine)]TJ 0 g 0 G - [-607(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-748(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(72)]TJ + [-1084(76)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(6.4)-1022(psb)]TJ ET q -1 0 0 1 181.246 301.72 cm +1 0 0 1 204.16 229.242 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 301.521 Td [(cdfree)]TJ +/F8 9.9626 Tf 207.149 229.043 Td [(cdcp)28(y)-334(|)-333(Copies)-333(a)-334(comm)28(unication)-333(descriptor)]TJ 0 g 0 G - [-520(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)]TJ + [-706(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(73)]TJ + [-1084(77)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(6.5)-1022(psb)]TJ ET q -1 0 0 1 181.246 289.641 cm +1 0 0 1 204.16 217.162 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 289.441 Td [(cdbldext)]TJ +/F8 9.9626 Tf 207.149 216.963 Td [(cdfree)-333(|)-334(F)84(rees)-334(a)-333(comm)28(unication)-334(descriptor)]TJ 0 g 0 G - [-912(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-492(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(74)]TJ + [-1084(78)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.079 Td [(psb)]TJ + -41.5 -12.079 Td [(6.6)-1022(psb)]TJ ET q -1 0 0 1 181.246 277.561 cm +1 0 0 1 204.16 205.083 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 277.362 Td [(spall)]TJ +/F8 9.9626 Tf 207.149 204.884 Td [(cdbldext)-333(|)-334(Build)-333(an)-333(extended)-333(co)-1(mm)28(unication)-333(descriptor)]TJ 0 g 0 G - [-323(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-614(.)-500(.)]TJ 0 g 0 G - [-1084(76)]TJ + [-1084(79)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(6.7)-1022(psb)]TJ ET q -1 0 0 1 181.246 265.481 cm +1 0 0 1 204.16 193.003 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 265.282 Td [(spins)]TJ +/F8 9.9626 Tf 207.149 192.804 Td [(spall)-333(|)-334(Allo)-27(cates)-334(a)-333(sparse)-334(matrix)]TJ 0 g 0 G - [-929(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-806(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(77)]TJ + [-1084(81)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(6.8)-1022(psb)]TJ ET q -1 0 0 1 181.246 253.402 cm +1 0 0 1 204.16 180.923 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 253.202 Td [(spasb)]TJ +/F8 9.9626 Tf 207.149 180.724 Td [(spins)-333(|)-334(Insert)-333(a)-333(set)-334(of)-333(co)-28(e\016cien)28(ts)-334(in)28(to)-333(a)-333(sparse)-334(matrix)]TJ 0 g 0 G - [-707(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-814(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(80)]TJ + [-1084(82)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.079 Td [(psb)]TJ + -41.5 -12.08 Td [(6.9)-1022(psb)]TJ ET q -1 0 0 1 181.246 241.322 cm +1 0 0 1 204.16 168.844 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 241.123 Td [(spfree)]TJ +/F8 9.9626 Tf 207.149 168.644 Td [(spasb)-333(|)-334(Sparse)-333(matrix)-333(assem)27(bly)-333(routine)]TJ 0 g 0 G - [-570(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)]TJ + [-853(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(82)]TJ + [-1084(85)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG + -41.5 -12.079 Td [(6.10)-522(psb)]TJ +ET +q +1 0 0 1 204.16 156.764 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 207.149 156.565 Td [(spfree)-333(|)-334(F)84(rees)-334(a)-333(sparse)-334(matri)1(x)]TJ +0 g 0 G + [-482(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-1084(87)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(6.11)-522(psb)]TJ ET q -1 0 0 1 181.246 229.242 cm +1 0 0 1 204.16 144.684 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 229.043 Td [(sprn)]TJ +/F8 9.9626 Tf 207.149 144.485 Td [(sprn)-333(|)-334(Reinit)-333(sparse)-333(matrix)-334(structure)-333(for)-333(psblas)-333(routines.)]TJ 0 g 0 G - [-431(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ + [-1012(.)]TJ 0 g 0 G - [-1084(83)]TJ + [-1084(88)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.08 Td [(6.12)-522(psb)]TJ ET q -1 0 0 1 181.246 217.162 cm +1 0 0 1 204.16 132.605 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 216.963 Td [(geall)]TJ +/F8 9.9626 Tf 207.149 132.405 Td [(geall)-333(|)-334(Allo)-27(cates)-334(a)-333(dense)-334(matrix)]TJ 0 g 0 G - [-329(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-320(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(84)]TJ + [-1084(89)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.079 Td [(psb)]TJ + -41.5 -12.079 Td [(6.13)-522(psb)]TJ ET q -1 0 0 1 181.246 205.083 cm +1 0 0 1 204.16 120.525 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 204.884 Td [(geins)]TJ +/F8 9.9626 Tf 207.149 120.326 Td [(geins)-333(|)-334(Dense)-333(matrix)-333(insertion)-334(routine)]TJ 0 g 0 G - [-934(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-656(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-1083(90)]TJ +0 g 0 G +0 g 0 G + 112.644 -29.888 Td [(ii)]TJ +0 g 0 G +ET + +endstream +endobj +739 0 obj +<< +/Length 18635 +>> +stream 0 g 0 G - [-1084(85)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ +BT +/F8 9.9626 Tf 114.839 706.129 Td [(6.14)-522(psb)]TJ ET q -1 0 0 1 181.246 193.003 cm +1 0 0 1 153.351 706.328 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 192.804 Td [(geasb)]TJ +/F8 9.9626 Tf 156.339 706.129 Td [(geasb)-333(|)-334(Assem)28(bly)-333(a)-334(dense)-333(matrix)]TJ 0 g 0 G - [-712(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-559(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(87)]TJ + [-1084(92)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.094 Td [(6.15)-522(psb)]TJ ET q -1 0 0 1 181.246 180.923 cm +1 0 0 1 153.351 694.234 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 180.724 Td [(gefree)]TJ +/F8 9.9626 Tf 156.339 694.035 Td [(gefree)-333(|)-334(F)84(rees)-334(a)-333(dense)-334(matrix)]TJ 0 g 0 G - [-576(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-773(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(88)]TJ + [-1084(93)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.08 Td [(psb)]TJ + -41.5 -12.094 Td [(6.16)-522(psb)]TJ ET q -1 0 0 1 181.246 168.844 cm +1 0 0 1 153.351 682.14 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 168.644 Td [(gelp)]TJ +/F8 9.9626 Tf 156.339 681.941 Td [(gelp)-333(|)-334(Applies)-333(a)-333(left)-334(p)-27(erm)27(utation)-333(to)-333(a)-334(dense)-333(matrix)]TJ 0 g 0 G - [-551(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-317(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(89)]TJ + [-1084(94)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.079 Td [(psb)]TJ + -41.5 -12.095 Td [(6.17)-522(psb)]TJ ET q -1 0 0 1 181.246 156.764 cm +1 0 0 1 153.351 670.046 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 156.565 Td [(glob)]TJ +/F8 9.9626 Tf 156.339 669.846 Td [(glob)]TJ ET q -1 0 0 1 203.097 156.764 cm +1 0 0 1 175.202 670.046 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 206.086 156.565 Td [(to)]TJ +/F8 9.9626 Tf 178.191 669.846 Td [(to)]TJ ET q -1 0 0 1 215.54 156.764 cm +1 0 0 1 187.644 670.046 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 218.528 156.565 Td [(lo)-28(c)]TJ +/F8 9.9626 Tf 190.633 669.846 Td [(lo)-28(c)-333(|)-333(G)-1(l)1(obal)-334(to)-333(lo)-28(cal)-333(indices)-334(con)28(v)28(ertion)]TJ 0 g 0 G - [-747(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-821(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(90)]TJ + [-1083(95)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -52.879 -12.08 Td [(psb)]TJ + -75.794 -12.094 Td [(6.18)-522(psb)]TJ ET q -1 0 0 1 181.246 144.684 cm +1 0 0 1 153.351 657.951 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 144.485 Td [(lo)-28(c)]TJ +/F8 9.9626 Tf 156.339 657.752 Td [(lo)-28(c)]TJ ET q -1 0 0 1 197.286 144.684 cm +1 0 0 1 169.39 657.951 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 200.275 144.485 Td [(to)]TJ +/F8 9.9626 Tf 172.379 657.752 Td [(to)]TJ ET q -1 0 0 1 209.728 144.684 cm +1 0 0 1 181.833 657.951 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 212.717 144.485 Td [(glob)]TJ +/F8 9.9626 Tf 184.822 657.752 Td [(glob)-333(|)-334(Lo)-27(cal)-334(to)-333(global)-333(indices)-334(con)28(v)28(ersion)]TJ 0 g 0 G - [-748(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-753(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(92)]TJ + [-1084(97)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -47.068 -12.08 Td [(psb)]TJ + -69.983 -12.094 Td [(6.19)-522(psb)]TJ ET q -1 0 0 1 181.246 132.605 cm +1 0 0 1 153.351 645.857 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 132.405 Td [(is)]TJ +/F8 9.9626 Tf 156.339 645.658 Td [(is)]TJ ET q -1 0 0 1 191.53 132.605 cm +1 0 0 1 163.634 645.857 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 194.518 132.405 Td [(o)28(wned)]TJ +/F8 9.9626 Tf 166.623 645.658 Td [(o)28(wned)-334(|)]TJ 0 g 0 G - [-880(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-1135(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(93)]TJ + [-1084(98)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -28.869 -12.079 Td [(psb)]TJ + -51.784 -12.094 Td [(6.20)-522(psb)]TJ ET q -1 0 0 1 181.246 120.525 cm +1 0 0 1 153.351 633.763 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 120.326 Td [(o)28(wned)]TJ +/F8 9.9626 Tf 156.339 633.564 Td [(o)28(wned)]TJ ET q -1 0 0 1 212.23 120.525 cm +1 0 0 1 184.334 633.763 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 215.219 120.326 Td [(index)]TJ -0 g 0 G - [-746(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +/F8 9.9626 Tf 187.323 633.564 Td [(index)-333(|)]TJ 0 g 0 G - [-1083(94)]TJ -0 g 0 G -0 g 0 G - 104.574 -29.888 Td [(ii)]TJ -0 g 0 G -ET - -endstream -endobj -730 0 obj -<< -/Length 19307 ->> -stream + [-1002(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G + [-1083(99)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG -BT -/F8 9.9626 Tf 114.839 706.129 Td [(psb)]TJ + -72.484 -12.094 Td [(6.21)-522(psb)]TJ ET q -1 0 0 1 130.436 706.328 cm +1 0 0 1 153.351 621.669 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 706.129 Td [(is)]TJ +/F8 9.9626 Tf 156.339 621.47 Td [(is)]TJ ET q -1 0 0 1 140.72 706.328 cm +1 0 0 1 163.634 621.669 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 143.709 706.129 Td [(lo)-28(cal)]TJ +/F8 9.9626 Tf 166.623 621.47 Td [(lo)-28(cal)-333(|)]TJ 0 g 0 G - [-824(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-1080(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(95)]TJ + [-584(100)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -28.87 -12.653 Td [(psb)]TJ + -51.784 -12.095 Td [(6.22)-522(psb)]TJ ET q -1 0 0 1 130.436 693.675 cm +1 0 0 1 153.351 609.575 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 693.476 Td [(lo)-28(cal)]TJ +/F8 9.9626 Tf 156.339 609.375 Td [(lo)-28(cal)]TJ ET q -1 0 0 1 154.225 693.675 cm +1 0 0 1 177.139 609.575 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 157.214 693.476 Td [(index)]TJ +/F8 9.9626 Tf 180.128 609.375 Td [(index)-333(|)]TJ 0 g 0 G - [-691(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-947(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(96)]TJ + [-584(101)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -42.375 -12.654 Td [(psb)]TJ + -65.289 -12.094 Td [(6.23)-522(psb)]TJ ET q -1 0 0 1 130.436 681.022 cm +1 0 0 1 153.351 597.481 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 680.822 Td [(get)]TJ +/F8 9.9626 Tf 156.339 597.281 Td [(get)]TJ ET q -1 0 0 1 147.307 681.022 cm +1 0 0 1 170.221 597.481 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 150.295 680.822 Td [(b)-28(oundary)]TJ +/F8 9.9626 Tf 173.209 597.281 Td [(b)-28(oundary)-333(|)-333(Extract)-334(list)-333(of)-333(b)-28(oundary)-333(elemen)28(ts)]TJ 0 g 0 G - [-354(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-330(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1083(97)]TJ + [-584(102)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -35.456 -12.653 Td [(psb)]TJ + -58.37 -12.094 Td [(6.24)-522(psb)]TJ ET q -1 0 0 1 130.436 668.368 cm +1 0 0 1 153.351 585.386 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 668.169 Td [(get)]TJ +/F8 9.9626 Tf 156.339 585.187 Td [(get)]TJ ET q -1 0 0 1 147.307 668.368 cm +1 0 0 1 170.221 585.386 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 150.295 668.169 Td [(o)28(v)28(e)-1(r)1(lap)]TJ +/F8 9.9626 Tf 173.209 585.187 Td [(o)28(v)28(e)-1(r)1(lap)-334(|)-333(Extract)-333(list)-334(of)-333(o)28(v)28(erlap)-334(elemen)28(ts)]TJ 0 g 0 G - [-605(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-830(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ 0 g 0 G - [-1084(98)]TJ + [-584(103)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -35.456 -12.653 Td [(psb)]TJ + -58.37 -12.094 Td [(6.25)-522(psb)]TJ ET q -1 0 0 1 130.436 655.715 cm +1 0 0 1 153.351 573.292 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 655.516 Td [(sp)]TJ +/F8 9.9626 Tf 156.339 573.093 Td [(sp)]TJ ET q -1 0 0 1 143.488 655.715 cm +1 0 0 1 166.402 573.292 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 146.476 655.516 Td [(getro)28(w)]TJ +/F8 9.9626 Tf 169.39 573.093 Td [(getro)28(w)-334(|)-333(Extract)-333(ro)28(w\050s)-1(\051)-333(from)-333(a)-333(s)-1(p)1(arse)-334(matrix)]TJ 0 g 0 G - [-433(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-810(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-1084(99)]TJ + [-584(104)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -31.637 -12.654 Td [(psb)]TJ + -54.551 -12.094 Td [(6.26)-522(psb)]TJ ET q -1 0 0 1 130.436 643.062 cm +1 0 0 1 153.351 561.198 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 642.862 Td [(sizeof)]TJ +/F8 9.9626 Tf 156.339 560.999 Td [(sizeof)-333(|)-334(Memory)-333(o)-28(ccupation)]TJ 0 g 0 G - [-740(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-520(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(101)]TJ + [-583(106)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(Sorting)-333(utilities)]TJ + -41.5 -12.094 Td [(6.27)-522(Sorting)-333(utilities)-334(|)]TJ 0 g 0 G - [-519(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-775(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-583(102)]TJ + [-584(107)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG -/F27 9.9626 Tf -14.944 -23.081 Td [(7)-925(P)32(arallel)-384(en)32(vironmen)32(t)-383(routines)]TJ +/F27 9.9626 Tf -14.944 -22.15 Td [(7)-925(P)32(arallel)-384(en)32(vironmen)32(t)-383(routines)]TJ 0 g 0 G - [-16316(104)]TJ + [-16316(109)]TJ 0 0 1 rg 0 0 1 RG -/F8 9.9626 Tf 14.944 -12.653 Td [(psb)]TJ +/F8 9.9626 Tf 14.944 -12.094 Td [(7.1)-1022(psb)]TJ ET q -1 0 0 1 130.436 594.674 cm +1 0 0 1 153.351 514.86 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 594.475 Td [(init)]TJ +/F8 9.9626 Tf 156.339 514.661 Td [(init)-333(|)-334(Initializes)-333(PSBLAS)-333(parallel)-333(e)-1(n)28(vironmen)28(t)]TJ 0 g 0 G - [-829(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-920(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-583(105)]TJ + [-584(110)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.654 Td [(psb)]TJ + -41.5 -12.094 Td [(7.2)-1022(psb)]TJ ET q -1 0 0 1 130.436 582.021 cm +1 0 0 1 153.351 502.766 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 581.821 Td [(info)]TJ +/F8 9.9626 Tf 156.339 502.567 Td [(info)-329(|)-328(Return)-329(information)-329(ab)-27(out)-329(PSBLAS)-329(parallel)-328(en)27(vir)1(on-)]TJ -18.586 -11.956 Td [(men)28(t)]TJ 0 g 0 G - [-690(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-478(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(106)]TJ + [-584(111)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -22.914 -12.094 Td [(7.3)-1022(psb)]TJ ET q -1 0 0 1 130.436 569.367 cm +1 0 0 1 153.351 478.717 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 569.168 Td [(exit)]TJ +/F8 9.9626 Tf 156.339 478.517 Td [(exit)-333(|)-334(Exit)-333(from)-333(PSBLAS)-334(p)1(arallel)-334(en)28(vironmen)28(t)]TJ 0 g 0 G - [-690(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-742(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(107)]TJ + [-584(112)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -41.5 -12.094 Td [(7.4)-1022(psb)]TJ ET q -1 0 0 1 130.436 556.714 cm +1 0 0 1 153.351 466.622 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 556.515 Td [(get)]TJ +/F8 9.9626 Tf 156.339 466.423 Td [(get)]TJ ET q -1 0 0 1 147.307 556.714 cm +1 0 0 1 170.221 466.622 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 150.295 556.515 Td [(mpi)]TJ +/F8 9.9626 Tf 173.209 466.423 Td [(mpi)]TJ ET q -1 0 0 1 167.498 556.714 cm +1 0 0 1 190.412 466.622 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 170.486 556.515 Td [(comm)]TJ +/F8 9.9626 Tf 193.4 466.423 Td [(comm)-334(|)-333(Get)-333(the)-334(MPI)-333(comm)28(unicator)]TJ 0 g 0 G - [-664(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-868(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-583(108)]TJ + [-584(113)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -55.647 -12.654 Td [(psb)]TJ + -78.561 -12.094 Td [(7.5)-1022(psb)]TJ ET q -1 0 0 1 130.436 544.061 cm +1 0 0 1 153.351 454.528 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 543.861 Td [(get)]TJ +/F8 9.9626 Tf 156.339 454.329 Td [(get)]TJ ET q -1 0 0 1 147.307 544.061 cm +1 0 0 1 170.221 454.528 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 150.295 543.861 Td [(mpi)]TJ +/F8 9.9626 Tf 173.209 454.329 Td [(mpi)]TJ ET q -1 0 0 1 167.498 544.061 cm +1 0 0 1 190.412 454.528 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 170.486 543.861 Td [(rank)]TJ +/F8 9.9626 Tf 193.4 454.329 Td [(rank)-333(|)-334(Get)-333(the)-333(MPI)-334(rank)]TJ 0 g 0 G - [-523(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-282(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-583(109)]TJ + [-584(114)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -55.647 -12.653 Td [(psb)]TJ + -78.561 -12.094 Td [(7.6)-1022(psb)]TJ ET q -1 0 0 1 130.436 531.407 cm +1 0 0 1 153.351 442.434 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 531.208 Td [(wtime)]TJ +/F8 9.9626 Tf 156.339 442.235 Td [(wtime)-333(|)-334(W)84(all)-334(clo)-28(c)28(k)-333(timing)]TJ 0 g 0 G - [-440(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-445(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(110)]TJ + [-584(115)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -41.5 -12.094 Td [(7.7)-1022(psb)]TJ ET q -1 0 0 1 130.436 518.754 cm +1 0 0 1 153.351 430.34 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 518.555 Td [(barrier)]TJ +/F8 9.9626 Tf 156.339 430.141 Td [(barrier)-333(|)-334(Sinc)28(hronization)-333(p)-28(oin)28(t)-333(parallel)-333(en)27(vironmen)28(t)]TJ 0 g 0 G - [-931(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)]TJ + [-845(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(111)]TJ + [-584(116)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -41.5 -12.095 Td [(7.8)-1022(psb)]TJ ET q -1 0 0 1 130.436 506.101 cm +1 0 0 1 153.351 418.246 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 505.902 Td [(ab)-28(ort)]TJ +/F8 9.9626 Tf 156.339 418.046 Td [(ab)-28(ort)-333(|)-333(Ab)-28(ort)-333(a)-334(computation)]TJ 0 g 0 G - [-742(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)]TJ + [-717(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(112)]TJ + [-583(117)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.654 Td [(psb)]TJ + -41.5 -12.094 Td [(7.9)-1022(psb)]TJ ET q -1 0 0 1 130.436 493.448 cm +1 0 0 1 153.351 406.151 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 493.248 Td [(b)-28(cast)]TJ +/F8 9.9626 Tf 156.339 405.952 Td [(b)-28(cast)-333(|)-334(Broadcast)-333(data)]TJ 0 g 0 G - [-795(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-278(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(113)]TJ + [-584(118)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -41.5 -12.094 Td [(7.10)-522(psb)]TJ ET q -1 0 0 1 130.436 480.794 cm +1 0 0 1 153.351 394.057 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 480.595 Td [(sum)]TJ +/F8 9.9626 Tf 156.339 393.858 Td [(sum)-333(|)-334(Global)-333(sum)]TJ 0 g 0 G - [-546(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)]TJ + [-900(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(114)]TJ + [-584(119)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -41.5 -12.094 Td [(7.11)-522(psb)]TJ ET q -1 0 0 1 130.436 468.141 cm +1 0 0 1 153.351 381.963 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 467.942 Td [(max)]TJ +/F8 9.9626 Tf 156.339 381.764 Td [(max)-333(|)-334(Global)-333(maxim)28(um)]TJ 0 g 0 G - [-468(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-605(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-583(115)]TJ + [-583(120)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -41.5 -12.094 Td [(7.12)-522(psb)]TJ ET q -1 0 0 1 130.436 455.488 cm +1 0 0 1 153.351 369.869 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 455.289 Td [(min)]TJ +/F8 9.9626 Tf 156.339 369.67 Td [(min)-333(|)-334(Global)-333(minim)28(um)]TJ 0 g 0 G - [-662(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-994(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)]TJ 0 g 0 G - [-584(116)]TJ + [-584(121)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.654 Td [(psb)]TJ + -41.5 -12.094 Td [(7.13)-522(psb)]TJ ET q -1 0 0 1 130.436 442.835 cm +1 0 0 1 153.351 357.775 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 442.635 Td [(amx)]TJ +/F8 9.9626 Tf 156.339 357.576 Td [(amx)-333(|)-334(Global)-333(maxim)28(um)-334(absolute)-333(v)56(alue)]TJ 0 g 0 G - [-468(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-294(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-583(117)]TJ + [-584(122)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -41.5 -12.095 Td [(7.14)-522(psb)]TJ ET q -1 0 0 1 130.436 430.181 cm +1 0 0 1 153.351 345.681 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 429.982 Td [(amn)]TJ +/F8 9.9626 Tf 156.339 345.481 Td [(amn)-333(|)-334(Global)-333(minim)28(um)-334(absolu)1(te)-334(v)56(alue)]TJ 0 g 0 G - [-440(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-461(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(118)]TJ + [-584(123)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -41.5 -12.094 Td [(7.15)-522(psb)]TJ ET q -1 0 0 1 130.436 417.528 cm +1 0 0 1 153.351 333.586 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 417.329 Td [(nrm2)]TJ +/F8 9.9626 Tf 156.339 333.387 Td [(nrm2)-333(|)-334(Global)-333(2-norm)-333(reduction)]TJ 0 g 0 G - [-826(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-847(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(119)]TJ + [-584(124)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.654 Td [(psb)]TJ + -41.5 -12.094 Td [(7.16)-522(psb)]TJ ET q -1 0 0 1 130.436 404.875 cm +1 0 0 1 153.351 321.492 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 404.675 Td [(snd)]TJ +/F8 9.9626 Tf 156.339 321.293 Td [(snd)-333(|)-334(Send)-333(data)]TJ 0 g 0 G - [-823(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-1023(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(120)]TJ + [-584(125)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -41.5 -12.094 Td [(7.17)-522(psb)]TJ ET q -1 0 0 1 130.436 392.221 cm +1 0 0 1 153.351 309.398 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 392.022 Td [(rcv)]TJ +/F8 9.9626 Tf 156.339 309.199 Td [(rcv)-333(|)-334(Receiv)28(e)-333(data)]TJ 0 g 0 G - [-965(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-762(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(121)]TJ + [-583(126)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG -/F27 9.9626 Tf -33.53 -23.081 Td [(8)-925(Error)-383(handling)]TJ +/F27 9.9626 Tf -56.444 -22.15 Td [(8)-925(Error)-383(handling)]TJ 0 g 0 G - [-23812(122)]TJ + [-23812(127)]TJ 0 0 1 rg 0 0 1 RG -/F8 9.9626 Tf 14.944 -12.654 Td [(psb)]TJ +/F8 9.9626 Tf 14.944 -12.094 Td [(8.1)-1022(psb)]TJ ET q -1 0 0 1 130.436 356.487 cm +1 0 0 1 153.351 275.154 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 356.288 Td [(errpush)]TJ +/F8 9.9626 Tf 156.339 274.955 Td [(errpush)]TJ 0 g 0 G - [-595(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)]TJ + [-629(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(124)]TJ + [-584(129)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.654 Td [(psb)]TJ + -41.5 -12.094 Td [(8.2)-1022(psb)]TJ ET q -1 0 0 1 130.436 343.833 cm +1 0 0 1 153.351 263.06 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 343.634 Td [(error)]TJ +/F8 9.9626 Tf 156.339 262.861 Td [(error)]TJ 0 g 0 G - [-987(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-1020(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)]TJ 0 g 0 G - [-584(125)]TJ + [-584(130)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -18.586 -12.653 Td [(psb)]TJ + -41.5 -12.094 Td [(8.3)-1022(psb)]TJ ET q -1 0 0 1 130.436 331.18 cm +1 0 0 1 153.351 250.966 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 133.425 330.981 Td [(set)]TJ +/F8 9.9626 Tf 156.339 250.767 Td [(set)]TJ ET q -1 0 0 1 146.255 331.18 cm +1 0 0 1 169.169 250.966 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 149.244 330.981 Td [(errv)28(erb)-28(osit)28(y)]TJ +/F8 9.9626 Tf 172.158 250.767 Td [(errv)28(erb)-28(osit)28(y)]TJ 0 g 0 G - [-977(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-1010(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(126)]TJ + [-584(131)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -34.405 -12.653 Td [(psb)]TJ -ET -q -1 0 0 1 130.436 318.527 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 133.425 318.328 Td [(set)]TJ + -57.319 -12.094 Td [(8.4)-1022(psb)]TJ ET q -1 0 0 1 146.255 318.527 cm +1 0 0 1 153.351 238.872 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 149.244 318.328 Td [(erraction)]TJ -0 g 0 G - [-735(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ -0 g 0 G - [-584(127)]TJ -0 g 0 G -0 0 1 rg 0 0 1 RG -/F27 9.9626 Tf -49.349 -23.082 Td [(9)-925(Utilities)]TJ -0 g 0 G - [-27238(128)]TJ -0 0 1 rg 0 0 1 RG -/F8 9.9626 Tf 14.944 -12.653 Td [(h)28(b)]TJ +/F8 9.9626 Tf 156.339 238.673 Td [(set)]TJ ET q -1 0 0 1 126.23 282.792 cm +1 0 0 1 169.169 238.872 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 129.219 282.593 Td [(read)]TJ +/F8 9.9626 Tf 172.158 238.673 Td [(erraction)]TJ 0 g 0 G - [-859(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-769(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(129)]TJ + [-584(132)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -14.38 -12.653 Td [(h)28(b)]TJ -ET -q -1 0 0 1 126.23 270.139 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 129.219 269.94 Td [(write)]TJ -0 g 0 G - [-526(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ -0 g 0 G - [-584(130)]TJ +/F27 9.9626 Tf -72.263 -22.15 Td [(9)-925(Utilities)]TJ 0 g 0 G + [-27238(133)]TJ 0 0 1 rg 0 0 1 RG - -14.38 -12.654 Td [(mm)]TJ +/F8 9.9626 Tf 14.944 -12.094 Td [(9.1)-1490(h)28(b)]TJ ET q -1 0 0 1 132.042 257.486 cm +1 0 0 1 153.803 204.628 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 135.03 257.286 Td [(mat)]TJ -ET -q -1 0 0 1 152.786 257.486 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 155.775 257.286 Td [(read)]TJ +/F8 9.9626 Tf 156.792 204.429 Td [(read)-468(|)-467(Read)-468(a)-468(sparse)-468(matri)1(x)-468(from)-468(a)-467(\014le)-468(in)-468(the)-467(Harw)27(ell{)]TJ -19.039 -11.955 Td [(Bo)-28(eing)-333(format)]TJ 0 g 0 G - [-527(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-294(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-584(131)]TJ + [-583(134)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -40.936 -12.653 Td [(mm)]TJ -ET -q -1 0 0 1 132.042 244.832 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 135.03 244.633 Td [(arra)28(y)]TJ + -22.914 -12.094 Td [(9.2)-1022(h)28(b)]TJ ET q -1 0 0 1 158.376 244.832 cm +1 0 0 1 149.144 180.579 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 161.365 244.633 Td [(read)]TJ +/F8 9.9626 Tf 152.133 180.38 Td [(write)-291(|)-290(W)83(rite)-290(a)-291(sparse)-290(matrix)-291(to)-290(a)-291(\014le)-290(in)-291(the)-290(Harw)28(ell{Bo)-28(eing)]TJ -14.38 -11.956 Td [(format)]TJ 0 g 0 G - [-744(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-530(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ 0 g 0 G - [-584(132)]TJ + [-584(135)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -46.526 -12.653 Td [(mm)]TJ + -22.914 -12.094 Td [(9.3)-1022(mm)]TJ ET q -1 0 0 1 132.042 232.179 cm +1 0 0 1 154.956 156.529 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 135.03 231.98 Td [(mat)]TJ +/F8 9.9626 Tf 157.944 156.33 Td [(mat)]TJ ET q -1 0 0 1 152.786 232.179 cm +1 0 0 1 175.7 156.529 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 155.775 231.98 Td [(write)]TJ +/F8 9.9626 Tf 178.689 156.33 Td [(read)-313(|)-314(Read)-313(a)-313(sparse)-314(matrix)-313(from)-313(a)-314(\014le)-313(in)-313(the)-314(Matr)1(ix-)]TJ -40.935 -11.955 Td [(Mark)28(et)-333(format)]TJ 0 g 0 G - [-972(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-945(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-583(133)]TJ + [-584(136)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG - -40.936 -12.653 Td [(mm)]TJ + -22.915 -12.094 Td [(9.4)-1022(mm)]TJ ET q -1 0 0 1 132.042 219.526 cm +1 0 0 1 154.956 132.48 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 135.03 219.327 Td [(arra)28(y)]TJ +/F8 9.9626 Tf 157.944 132.281 Td [(arra)28(y)]TJ ET q -1 0 0 1 158.376 219.526 cm +1 0 0 1 181.29 132.48 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 161.365 219.327 Td [(write)]TJ -0 g 0 G - [-410(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ -0 g 0 G - [-583(134)]TJ +/F8 9.9626 Tf 184.279 132.281 Td [(read)-346(|)-346(Read)-346(a)-347(dense)-346(arra)28(y)-346(from)-346(a)-346(\014le)-347(in)-346(the)-346(Matrix-)]TJ -46.526 -11.955 Td [(Mark)28(et)-334(format)]TJ 0 g 0 G -0 0 1 rg 0 0 1 RG -/F27 9.9626 Tf -61.47 -23.082 Td [(10)-350(Preconditioner)-383(routi)-1(n)1(es)]TJ -0 g 0 G - [-19367(135)]TJ -0 0 1 rg 0 0 1 RG -/F8 9.9626 Tf 14.944 -12.653 Td [(prec%init)]TJ -0 g 0 G - [-803(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ -0 g 0 G - [-583(136)]TJ -0 g 0 G -0 0 1 rg 0 0 1 RG - 0 -12.653 Td [(prec%build)]TJ -0 g 0 G - [-858(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-944(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G [-584(137)]TJ 0 g 0 G -0 0 1 rg 0 0 1 RG - 0 -12.654 Td [(prec%apply)]TJ -0 g 0 G - [-664(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ -0 g 0 G - [-584(139)]TJ -0 g 0 G -0 0 1 rg 0 0 1 RG - 0 -12.653 Td [(prec%descr)]TJ -0 g 0 G - [-850(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ -0 g 0 G - [-584(140)]TJ -0 g 0 G -0 0 1 rg 0 0 1 RG - 0 -12.653 Td [(clone)]TJ -0 g 0 G - [-417(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ -0 g 0 G - [-583(141)]TJ -0 g 0 G -0 0 1 rg 0 0 1 RG - 0 -12.653 Td [(prec%free)]TJ -0 g 0 G - [-717(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ -0 g 0 G - [-583(142)]TJ 0 g 0 G -0 g 0 G - 152.761 -29.888 Td [(iii)]TJ + 129.847 -29.888 Td [(iii)]TJ 0 g 0 G ET endstream endobj -631 0 obj +643 0 obj << /Type /ObjStm /N 100 -/First 924 -/Length 16095 +/First 927 +/Length 16607 >> stream -589 0 590 147 591 294 592 442 593 590 594 737 595 885 596 1033 597 1181 598 1330 -599 1479 600 1628 601 1777 602 1926 603 2083 604 2235 605 2391 606 2540 607 2689 608 2838 -609 2987 610 3136 611 3285 612 3434 613 3583 614 3732 615 3881 616 4030 617 4178 618 4326 -619 4475 620 4624 621 4773 622 4921 623 5076 624 5228 629 5384 630 5440 626 5496 680 5588 -625 6090 632 6239 633 6388 634 6537 635 6686 636 6835 637 6987 638 7139 639 7285 640 7433 -641 7582 642 7730 643 7879 644 8028 645 8177 646 8326 647 8475 648 8623 649 8772 650 8921 -651 9068 652 9217 653 9364 654 9513 655 9662 656 9811 657 9959 658 10105 659 10253 660 10402 -661 10551 662 10700 663 10849 664 10998 665 11147 666 11296 667 11445 668 11594 669 11743 670 11891 -671 12039 672 12187 673 12336 674 12485 675 12633 676 12780 677 12928 682 13076 679 13133 729 13212 -678 13690 683 13839 684 13987 685 14135 686 14284 687 14433 688 14578 689 14727 690 14873 691 15022 -% 589 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 540.182 231.021 551.03] -/A << /S /GoTo /D (section*.2) >> ->> -% 590 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 528.102 227.395 538.95] -/A << /S /GoTo /D (section*.3) >> ->> -% 591 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 516.022 236.832 526.871] -/A << /S /GoTo /D (section*.4) >> ->> -% 592 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 503.943 233.207 514.791] -/A << /S /GoTo /D (section*.5) >> ->> -% 593 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 491.863 246.49 502.711] -/A << /S /GoTo /D (section*.6) >> ->> -% 594 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 479.783 219.602 490.133] -/A << /S /GoTo /D (section*.7) >> ->> +595 0 596 152 597 309 598 459 599 605 600 757 601 914 602 1071 603 1228 604 1385 +605 1540 606 1696 607 1853 608 2010 609 2167 639 2325 610 2482 640 2639 611 2796 612 2954 +613 3111 614 3268 615 3426 616 3577 617 3733 618 3890 619 4046 641 4203 620 4359 642 4515 +621 4671 622 4828 623 4985 624 5137 625 5293 626 5451 627 5609 628 5767 629 5925 630 6083 +631 6240 632 6398 637 6555 638 6611 634 6667 692 6759 633 7261 644 7419 645 7577 646 7729 +647 7886 648 8043 649 8199 650 8356 651 8513 652 8670 653 8822 654 8974 655 9121 656 9273 +657 9425 658 9577 659 9729 660 9881 661 10033 662 10185 663 10337 664 10489 665 10642 666 10795 +667 10948 668 11101 669 11254 670 11407 671 11560 672 11706 673 11858 674 12010 675 12162 676 12314 +677 12460 678 12612 679 12764 680 12916 681 13067 682 13218 683 13369 684 13520 685 13672 686 13824 +687 13976 688 14127 689 14279 694 14431 691 14488 738 14567 690 15069 695 15222 696 15375 697 15527 % 595 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 469.641 195.537 478.552] -/A << /S /GoTo /D (section*.8) >> +/Rect [113.843 622.634 232.122 633.482] +/A << /S /GoTo /D (subsection.2.3) >> >> % 596 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 457.561 192.769 466.361] -/A << /S /GoTo /D (section*.9) >> +/Rect [136.757 610.543 296.409 621.391] +/A << /S /GoTo /D (subsubsection.2.3.1) >> >> % 597 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 443.544 284.769 454.392] -/A << /S /GoTo /D (section*.10) >> +/Rect [113.843 598.452 227.777 609.3] +/A << /S /GoTo /D (subsection.2.4) >> >> % 598 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 431.464 283.717 442.313] -/A << /S /GoTo /D (section*.11) >> +/Rect [98.899 578.245 258.112 587.156] +/A << /S /GoTo /D (section.3) >> >> % 599 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 419.385 229.831 430.233] -/A << /S /GoTo /D (section*.12) >> +/Rect [113.843 564.217 249.529 575.065] +/A << /S /GoTo /D (subsection.3.1) >> >> % 600 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 407.305 228.779 418.153] -/A << /S /GoTo /D (section*.13) >> +/Rect [136.757 552.126 257.001 562.974] +/A << /S /GoTo /D (subsubsection.3.1.1) >> >> % 601 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 397.162 214.095 406.074] -/A << /S /GoTo /D (section*.14) >> +/Rect [136.757 540.035 357.948 550.883] +/A << /S /GoTo /D (subsubsection.3.1.2) >> >> % 602 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [136.757 385.083 248.228 393.994] -/A << /S /GoTo /D (subsubsection.3.1.2) >> +/Rect [136.757 527.944 350.697 538.792] +/A << /S /GoTo /D (subsubsection.3.1.3) >> >> % 603 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 371.066 223.654 381.914] -/A << /S /GoTo /D (subsection.3.2) >> +/Rect [136.757 515.852 369.571 526.701] +/A << /S /GoTo /D (subsubsection.3.1.4) >> >> % 604 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [136.757 358.986 273.19 369.834] -/A << /S /GoTo /D (subsubsection.3.2.1) >> +/Rect [136.757 503.761 362.32 514.61] +/A << /S /GoTo /D (subsubsection.3.1.5) >> >> % 605 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 346.906 212.767 357.257] -/A << /S /GoTo /D (section*.15) >> +/Rect [136.757 491.67 382.522 502.519] +/A << /S /GoTo /D (subsubsection.3.1.6) >> >> % 606 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 334.827 209.141 345.675] -/A << /S /GoTo /D (section*.16) >> +/Rect [136.757 479.579 357.211 490.317] +/A << /S /GoTo /D (subsubsection.3.1.7) >> >> % 607 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 322.747 220.239 333.097] -/A << /S /GoTo /D (section*.17) >> +/Rect [136.757 467.488 299.093 478.337] +/A << /S /GoTo /D (subsubsection.3.1.8) >> >> % 608 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 310.667 206.374 321.251] -/A << /S /GoTo /D (section*.18) >> +/Rect [136.757 455.397 344.866 466.246] +/A << /S /GoTo /D (subsubsection.3.1.9) >> >> % 609 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 300.525 197.529 309.436] -/A << /S /GoTo /D (section*.19) >> +/Rect [136.757 443.306 444.603 454.155] +/A << /S /GoTo /D (subsubsection.3.1.10) >> +>> +% 639 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [98.899 431.351 220.222 442.199] +/A << /S /GoTo /D (subsubsection.3.1.10) >> >> % 610 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 286.508 205.765 297.356] -/A << /S /GoTo /D (section*.20) >> +/Rect [136.757 419.26 444.603 430.108] +/A << /S /GoTo /D (subsubsection.3.1.11) >> +>> +% 640 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [98.899 407.305 220.222 418.153] +/A << /S /GoTo /D (subsubsection.3.1.11) >> >> % 611 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 274.428 262.143 285.276] -/A << /S /GoTo /D (section*.21) >> +/Rect [136.757 395.214 359.885 406.062] +/A << /S /GoTo /D (subsubsection.3.1.12) >> >> % 612 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 262.349 328.909 273.197] -/A << /S /GoTo /D (section*.22) >> +/Rect [136.757 383.123 356.55 393.971] +/A << /S /GoTo /D (subsubsection.3.1.13) >> >> % 613 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 252.206 193.932 260.619] -/A << /S /GoTo /D (section*.23) >> +/Rect [136.757 371.032 411.273 381.88] +/A << /S /GoTo /D (subsubsection.3.1.14) >> >> % 614 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 238.189 194.485 249.037] -/A << /S /GoTo /D (section*.24) >> +/Rect [136.757 360.878 248.228 369.789] +/A << /S /GoTo /D (subsubsection.3.1.15) >> >> % 615 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 228.047 218.025 236.958] -/A << /S /GoTo /D (section*.25) >> +/Rect [113.843 346.85 223.654 357.698] +/A << /S /GoTo /D (subsection.3.2) >> >> % 616 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 214.03 205.765 224.878] -/A << /S /GoTo /D (section*.26) >> +/Rect [136.757 334.759 273.19 345.607] +/A << /S /GoTo /D (subsubsection.3.2.1) >> >> % 617 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 201.95 207.979 212.798] -/A << /S /GoTo /D (section*.27) >> +/Rect [136.757 322.668 398.529 333.516] +/A << /S /GoTo /D (subsubsection.3.2.2) >> >> % 618 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 191.808 183.941 200.719] -/A << /S /GoTo /D (section*.28) >> +/Rect [136.757 310.577 410.65 321.425] +/A << /S /GoTo /D (subsubsection.3.2.3) >> >> % 619 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 179.728 186.709 188.374] -/A << /S /GoTo /D (section*.29) >> +/Rect [136.757 298.486 444.603 309.334] +/A << /S /GoTo /D (subsubsection.3.2.4) >> >> -% 620 0 obj +% 641 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 165.711 255.944 176.559] -/A << /S /GoTo /D (section*.30) >> +/Rect [98.899 288.468 199.716 297.114] +/A << /S /GoTo /D (subsubsection.3.2.4) >> >> -% 621 0 obj +% 620 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [168.638 155.568 192.769 164.48] -/A << /S /GoTo /D (section*.31) >> +/Rect [136.757 274.44 444.603 285.288] +/A << /S /GoTo /D (subsubsection.3.2.5) >> >> -% 622 0 obj +% 642 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [136.757 143.489 248.228 152.4] -/A << /S /GoTo /D (subsubsection.3.2.2) >> +/Rect [98.899 262.484 238.044 273.068] +/A << /S /GoTo /D (subsubsection.3.2.5) >> >> -% 623 0 obj +% 621 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 131.409 265.358 140.209] -/A << /S /GoTo /D (subsection.3.3) >> +/Rect [136.757 250.393 429.161 261.242] +/A << /S /GoTo /D (subsubsection.3.2.6) >> >> -% 624 0 obj +% 622 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [136.757 119.329 239.898 128.24] -/A << /S /GoTo /D (subsubsection.3.3.1) >> ->> -% 629 0 obj -<< -/D [627 0 R /XYZ 98.895 753.953 null] ->> -% 630 0 obj -<< -/D [627 0 R /XYZ 99.895 724.062 null] ->> -% 626 0 obj -<< -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 680 0 obj -<< -/Type /Page -/Contents 681 0 R -/Resources 679 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 574 0 R -/Annots [ 625 0 R 632 0 R 633 0 R 634 0 R 635 0 R 636 0 R 637 0 R 638 0 R 639 0 R 640 0 R 641 0 R 642 0 R 643 0 R 644 0 R 645 0 R 646 0 R 647 0 R 648 0 R 649 0 R 650 0 R 651 0 R 652 0 R 653 0 R 654 0 R 655 0 R 656 0 R 657 0 R 658 0 R 659 0 R 660 0 R 661 0 R 662 0 R 663 0 R 664 0 R 665 0 R 666 0 R 667 0 R 668 0 R 669 0 R 670 0 R 671 0 R 672 0 R 673 0 R 674 0 R 675 0 R 676 0 R 677 0 R ] +/Rect [136.757 238.302 384.927 249.151] +/A << /S /GoTo /D (subsubsection.3.2.7) >> >> -% 625 0 obj +% 623 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [219.447 703.195 263.576 713.546] -/A << /S /GoTo /D (section*.32) >> +/Rect [136.757 226.211 330 237.06] +/A << /S /GoTo /D (subsubsection.3.2.8) >> >> -% 632 0 obj +% 624 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [219.447 693.053 248.339 701.964] -/A << /S /GoTo /D (section*.33) >> +/Rect [136.757 214.12 404.072 224.969] +/A << /S /GoTo /D (subsubsection.3.2.9) >> >> -% 633 0 obj +% 625 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [219.447 680.973 236.992 689.386] -/A << /S /GoTo /D (section*.34) >> +/Rect [136.757 202.029 371.765 212.878] +/A << /S /GoTo /D (subsubsection.3.2.10) >> >> -% 634 0 obj +% 626 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [219.447 666.956 259.342 677.306] -/A << /S /GoTo /D (section*.35) >> +/Rect [136.757 189.938 310.661 200.787] +/A << /S /GoTo /D (subsubsection.3.2.11) >> >> -% 635 0 obj +% 627 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [219.447 656.814 243.579 665.725] -/A << /S /GoTo /D (section*.36) >> +/Rect [136.757 179.784 348.314 188.695] +/A << /S /GoTo /D (subsubsection.3.2.12) >> >> -% 636 0 obj +% 628 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 644.734 318.825 653.645] -/A << /S /GoTo /D (subsection.3.4) >> +/Rect [136.757 165.756 303.247 176.604] +/A << /S /GoTo /D (subsubsection.3.2.13) >> >> -% 637 0 obj +% 629 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 630.717 277.397 641.565] -/A << /S /GoTo /D (subsection.3.5) >> +/Rect [136.757 153.665 323.657 164.513] +/A << /S /GoTo /D (subsubsection.3.2.14) >> >> -% 638 0 obj +% 630 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [149.709 608.592 285.838 619.44] -/A << /S /GoTo /D (section.4) >> +/Rect [136.757 141.574 310.91 152.422] +/A << /S /GoTo /D (subsubsection.3.2.15) >> >> -% 639 0 obj +% 631 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 596.512 220.931 607.36] -/A << /S /GoTo /D (section*.37) >> +/Rect [136.757 129.483 316.168 140.331] +/A << /S /GoTo /D (subsubsection.3.2.16) >> >> -% 640 0 obj +% 632 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 584.432 209.031 595.281] -/A << /S /GoTo /D (section*.38) >> +/Rect [136.757 117.392 386.676 128.24] +/A << /S /GoTo /D (subsubsection.3.2.17) >> >> -% 641 0 obj +% 637 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 572.353 212.96 583.201] -/A << /S /GoTo /D (section*.39) >> +/D [635 0 R /XYZ 98.895 753.953 null] >> -% 642 0 obj +% 638 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 560.273 210.719 571.121] -/A << /S /GoTo /D (section*.40) >> +/D [635 0 R /XYZ 99.895 724.062 null] +>> +% 634 0 obj +<< +/Font << /F16 582 0 R /F27 584 0 R /F8 585 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 692 0 obj +<< +/Type /Page +/Contents 693 0 R +/Resources 691 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 586 0 R +/Annots [ 633 0 R 644 0 R 645 0 R 646 0 R 647 0 R 648 0 R 649 0 R 650 0 R 651 0 R 652 0 R 653 0 R 654 0 R 655 0 R 656 0 R 657 0 R 658 0 R 659 0 R 660 0 R 661 0 R 662 0 R 663 0 R 664 0 R 665 0 R 666 0 R 667 0 R 668 0 R 669 0 R 670 0 R 671 0 R 672 0 R 673 0 R 674 0 R 675 0 R 676 0 R 677 0 R 678 0 R 679 0 R 680 0 R 681 0 R 682 0 R 683 0 R 684 0 R 685 0 R 686 0 R 687 0 R 688 0 R 689 0 R ] >> -% 643 0 obj +% 633 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 548.193 222.093 559.042] -/A << /S /GoTo /D (section*.41) >> +/Rect [187.567 703.195 349.903 714.044] +/A << /S /GoTo /D (subsubsection.3.2.18) >> >> % 644 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 536.114 212.933 546.962] -/A << /S /GoTo /D (section*.42) >> +/Rect [187.567 693.053 299.038 701.964] +/A << /S /GoTo /D (subsubsection.3.2.19) >> >> % 645 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 524.034 221.318 534.882] -/A << /S /GoTo /D (section*.43) >> +/Rect [164.653 680.973 316.168 689.774] +/A << /S /GoTo /D (subsection.3.3) >> >> % 646 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 511.954 212.933 522.802] -/A << /S /GoTo /D (section*.44) >> +/Rect [187.567 668.894 290.708 677.805] +/A << /S /GoTo /D (subsubsection.3.3.1) >> >> % 647 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 499.875 221.29 510.723] -/A << /S /GoTo /D (section*.45) >> +/Rect [187.567 654.877 443.997 665.725] +/A << /S /GoTo /D (subsubsection.3.3.2) >> >> % 648 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 487.795 212.933 498.643] -/A << /S /GoTo /D (section*.46) >> +/Rect [187.567 642.797 479.97 653.645] +/A << /S /GoTo /D (subsubsection.3.3.3) >> >> % 649 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 475.715 210.719 486.563] -/A << /S /GoTo /D (section*.47) >> +/Rect [187.567 632.654 361.885 641.565] +/A << /S /GoTo /D (subsubsection.3.3.4) >> >> % 650 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 463.635 211.3 474.484] -/A << /S /GoTo /D (section*.48) >> +/Rect [187.567 618.638 418.066 629.486] +/A << /S /GoTo /D (subsubsection.3.3.5) >> >> % 651 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 451.556 206.927 462.404] -/A << /S /GoTo /D (section*.49) >> +/Rect [187.567 606.558 349.903 617.406] +/A << /S /GoTo /D (subsubsection.3.3.6) >> >> % 652 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [149.709 431.368 290.134 440.279] -/A << /S /GoTo /D (section.5) >> +/Rect [164.653 596.415 318.825 605.326] +/A << /S /GoTo /D (subsection.3.4) >> >> % 653 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 417.351 203.496 428.199] -/A << /S /GoTo /D (section*.50) >> +/Rect [164.653 582.398 277.397 593.247] +/A << /S /GoTo /D (subsection.3.5) >> >> % 654 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 405.271 201.863 416.119] -/A << /S /GoTo /D (section*.51) >> +/Rect [149.709 560.273 285.838 571.121] +/A << /S /GoTo /D (section.4) >> >> % 655 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 393.191 212.933 404.039] -/A << /S /GoTo /D (section*.52) >> +/Rect [164.653 548.193 379.489 559.042] +/A << /S /GoTo /D (subsection.4.1) >> >> % 656 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 381.112 214.648 391.96] -/A << /S /GoTo /D (section*.53) >> +/Rect [164.653 536.114 303.648 546.962] +/A << /S /GoTo /D (subsection.4.2) >> >> % 657 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [149.709 358.986 302.58 369.834] -/A << /S /GoTo /D (section.6) >> +/Rect [164.653 524.034 361.916 534.882] +/A << /S /GoTo /D (subsection.4.3) >> >> % 658 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 346.906 205.71 357.755] -/A << /S /GoTo /D (section*.54) >> +/Rect [164.653 511.954 352.963 522.802] +/A << /S /GoTo /D (subsection.4.4) >> >> % 659 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 334.827 207.426 345.675] -/A << /S /GoTo /D (section*.55) >> +/Rect [164.653 499.875 375.753 510.723] +/A << /S /GoTo /D (subsection.4.5) >> >> % 660 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 322.747 209.639 333.595] -/A << /S /GoTo /D (section*.56) >> +/Rect [164.653 487.795 328.334 498.643] +/A << /S /GoTo /D (subsection.4.6) >> >> % 661 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 310.667 210.138 321.516] -/A << /S /GoTo /D (section*.57) >> +/Rect [164.653 475.715 391.057 486.563] +/A << /S /GoTo /D (subsection.4.7) >> >> % 662 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 298.588 210.996 309.436] -/A << /S /GoTo /D (section*.58) >> +/Rect [164.653 463.635 328.334 474.484] +/A << /S /GoTo /D (subsection.4.8) >> >> % 663 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 286.508 222.591 297.356] -/A << /S /GoTo /D (section*.59) >> +/Rect [164.653 451.556 391.029 462.404] +/A << /S /GoTo /D (subsection.4.9) >> >> % 664 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 274.428 205.212 285.276] -/A << /S /GoTo /D (section*.60) >> +/Rect [164.653 439.476 361.625 450.324] +/A << /S /GoTo /D (subsection.4.10) >> >> % 665 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 262.349 206.927 273.197] -/A << /S /GoTo /D (section*.61) >> +/Rect [164.653 427.396 386.255 438.245] +/A << /S /GoTo /D (subsection.4.11) >> >> % 666 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 250.269 209.141 261.117] -/A << /S /GoTo /D (section*.62) >> +/Rect [164.653 415.317 427.324 426.165] +/A << /S /GoTo /D (subsection.4.12) >> >> % 667 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 238.189 210.497 249.037] -/A << /S /GoTo /D (section*.63) >> +/Rect [164.653 403.237 352.825 414.085] +/A << /S /GoTo /D (subsection.4.13) >> >> % 668 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 226.109 204.132 236.958] -/A << /S /GoTo /D (section*.64) >> +/Rect [164.653 391.157 331.129 402.005] +/A << /S /GoTo /D (subsection.4.14) >> >> % 669 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 214.03 205.156 224.878] -/A << /S /GoTo /D (section*.65) >> +/Rect [164.653 379.078 330.049 389.926] +/A << /S /GoTo /D (subsection.4.15) >> >> % 670 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 201.95 206.872 212.798] -/A << /S /GoTo /D (section*.66) >> +/Rect [164.653 366.998 333.536 377.846] +/A << /S /GoTo /D (subsection.4.16) >> >> % 671 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 189.87 209.086 200.719] -/A << /S /GoTo /D (section*.67) >> +/Rect [149.709 346.81 290.134 355.721] +/A << /S /GoTo /D (section.5) >> >> % 672 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 177.791 210.442 188.639] -/A << /S /GoTo /D (section*.68) >> +/Rect [164.653 332.793 360.214 343.641] +/A << /S /GoTo /D (subsection.5.1) >> >> % 673 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 165.711 202.942 176.559] -/A << /S /GoTo /D (section*.69) >> +/Rect [164.653 320.713 311.148 331.561] +/A << /S /GoTo /D (subsection.5.2) >> >> % 674 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 153.631 231.978 164.48] -/A << /S /GoTo /D (section*.70) >> +/Rect [164.653 308.633 377.649 319.482] +/A << /S /GoTo /D (subsection.5.3) >> >> % 675 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 141.552 231.978 152.4] -/A << /S /GoTo /D (section*.71) >> +/Rect [164.653 296.554 379.849 307.402] +/A << /S /GoTo /D (subsection.5.4) >> >> % 676 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 129.472 226.233 140.32] -/A << /S /GoTo /D (section*.72) >> +/Rect [149.709 274.428 302.58 285.276] +/A << /S /GoTo /D (section.6) >> >> % 677 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 117.392 243.059 128.24] -/A << /S /GoTo /D (section*.73) >> +/Rect [164.653 262.349 409.502 273.197] +/A << /S /GoTo /D (subsection.6.1) >> >> -% 682 0 obj +% 678 0 obj << -/D [680 0 R /XYZ 149.705 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 250.269 424.556 261.117] +/A << /S /GoTo /D (subsection.6.2) >> >> % 679 0 obj << -/Font << /F8 573 0 R /F27 572 0 R >> -/ProcSet [ /PDF /Text ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 238.189 441.188 249.037] +/A << /S /GoTo /D (subsection.6.3) >> >> -% 729 0 obj +% 680 0 obj << -/Type /Page -/Contents 730 0 R -/Resources 728 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 574 0 R -/Annots [ 678 0 R 683 0 R 684 0 R 685 0 R 686 0 R 687 0 R 688 0 R 689 0 R 690 0 R 691 0 R 692 0 R 693 0 R 694 0 R 695 0 R 696 0 R 697 0 R 698 0 R 699 0 R 700 0 R 701 0 R 702 0 R 703 0 R 704 0 R 705 0 R 706 0 R 707 0 R 708 0 R 709 0 R 710 0 R 711 0 R 712 0 R 713 0 R 714 0 R 715 0 R 716 0 R 717 0 R 718 0 R 719 0 R 720 0 R 721 0 R 722 0 R 723 0 R 724 0 R 725 0 R ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 226.109 402.86 236.958] +/A << /S /GoTo /D (subsection.6.4) >> >> -% 678 0 obj +% 681 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 214.03 397.242 224.878] +/A << /S /GoTo /D (subsection.6.5) >> +>> +% 682 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 703.195 168.228 714.044] -/A << /S /GoTo /D (section*.74) >> +/Rect [164.653 201.95 458.014 212.798] +/A << /S /GoTo /D (subsection.6.6) >> >> % 683 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 690.542 185.054 701.39] -/A << /S /GoTo /D (section*.75) >> +/Rect [164.653 189.87 355.371 200.719] +/A << /S /GoTo /D (subsection.6.7) >> >> % 684 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 677.889 192.83 688.737] -/A << /S /GoTo /D (section*.76) >> +/Rect [164.653 177.791 448.273 188.639] +/A << /S /GoTo /D (subsection.6.8) >> >> % 685 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 665.236 182.591 676.084] -/A << /S /GoTo /D (section*.77) >> +/Rect [164.653 165.711 385.896 176.559] +/A << /S /GoTo /D (subsection.6.9) >> >> % 686 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 652.582 176.558 663.431] -/A << /S /GoTo /D (section*.78) >> +/Rect [164.653 153.631 343.111 164.48] +/A << /S /GoTo /D (subsection.6.10) >> >> % 687 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 639.929 158 650.777] -/A << /S /GoTo /D (section*.79) >> +/Rect [164.653 141.552 461.805 152.4] +/A << /S /GoTo /D (subsection.6.11) >> >> % 688 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 627.276 183.443 638.124] -/A << /S /GoTo /D (section*.80) >> +/Rect [164.653 129.472 352.465 140.32] +/A << /S /GoTo /D (subsection.6.12) >> >> % 689 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [98.899 606.132 264.868 615.043] -/A << /S /GoTo /D (section.7) >> +/Rect [164.653 117.392 380.112 128.24] +/A << /S /GoTo /D (subsection.6.13) >> +>> +% 694 0 obj +<< +/D [692 0 R /XYZ 149.705 753.953 null] +>> +% 691 0 obj +<< +/Font << /F8 585 0 R /F27 584 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 738 0 obj +<< +/Type /Page +/Contents 739 0 R +/Resources 737 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 586 0 R +/Annots [ 690 0 R 695 0 R 696 0 R 697 0 R 698 0 R 699 0 R 700 0 R 701 0 R 702 0 R 703 0 R 704 0 R 705 0 R 706 0 R 707 0 R 708 0 R 709 0 R 710 0 R 741 0 R 711 0 R 712 0 R 713 0 R 714 0 R 715 0 R 716 0 R 717 0 R 718 0 R 719 0 R 720 0 R 721 0 R 722 0 R 723 0 R 724 0 R 725 0 R 726 0 R 727 0 R 728 0 R 729 0 R 730 0 R 731 0 R 732 0 R 742 0 R 733 0 R 743 0 R 734 0 R 744 0 R 735 0 R 745 0 R ] >> % 690 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 591.541 149.366 602.389] -/A << /S /GoTo /D (section*.81) >> +/Rect [113.843 703.195 307.025 714.044] +/A << /S /GoTo /D (subsection.6.14) >> >> -% 691 0 obj +% 695 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 578.888 150.749 589.736] -/A << /S /GoTo /D (section*.82) >> +/Rect [113.843 691.101 289.396 701.949] +/A << /S /GoTo /D (subsection.6.15) >> >> - -endstream -endobj -735 0 obj +% 696 0 obj << -/Length 660 +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [113.843 679.007 386.92 689.855] +/A << /S /GoTo /D (subsection.6.16) >> >> -stream +% 697 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [113.843 666.913 366.405 677.761] +/A << /S /GoTo /D (subsection.6.17) >> +>> + +endstream +endobj +759 0 obj +<< +/Length 3702 +>> +stream +0 g 0 G +0 g 0 G +0 0 1 rg 0 0 1 RG +BT +/F8 9.9626 Tf 165.649 706.129 Td [(9.5)-1022(mm)]TJ +ET +q +1 0 0 1 205.765 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 208.754 706.129 Td [(mat)]TJ +ET +q +1 0 0 1 226.51 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 229.498 706.129 Td [(write)-368(|)-367(W)83(rite)-368(a)-367(sparse)-368(matrix)-367(to)-368(a)-368(\014le)-367(in)-368(the)-367(Matrix-)]TJ -40.935 -11.955 Td [(Mark)28(et)-334(f)1(ormat)]TJ 0 g 0 G + [-945(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-584(138)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG + -22.914 -11.955 Td [(9.6)-1022(mm)]TJ +ET +q +1 0 0 1 205.765 682.418 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 208.754 682.219 Td [(arra)28(y)]TJ +ET +q +1 0 0 1 232.1 682.418 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q BT -/F27 9.9626 Tf 150.705 706.129 Td [(11)-350(Iterativ)32(e)-384(M)1(etho)-32(ds)]TJ +/F8 9.9626 Tf 235.089 682.219 Td [(write)-297(|)-296(W)83(rite)-297(a)-296(dense)-297(arra)28(y)-297(from)-296(a)-297(\014le)-297(in)-296(the)-297(Matrix-)]TJ -46.526 -11.956 Td [(Mark)28(et)-334(f)1(ormat)]TJ +0 g 0 G + [-945(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-584(139)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG +/F27 9.9626 Tf -37.858 -21.917 Td [(10)-350(Preconditioner)-383(routines)]TJ +0 g 0 G + [-19367(140)]TJ +0 0 1 rg 0 0 1 RG +/F8 9.9626 Tf 14.944 -11.956 Td [(10.1)-522(init)-333(|)-334(Initialize)-333(a)-333(preconditioner)]TJ +0 g 0 G + [-694(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-584(141)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG + 0 -11.955 Td [(10.2)-522(build)-333(|)-334(Builds)-333(a)-333(preconditioner)]TJ +0 g 0 G + [-1008(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-583(1)-1(42)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG + 0 -11.955 Td [(10.3)-522(apply)-333(|)-334(Preconditioner)-333(application)-333(routine)]TJ +0 g 0 G + [-677(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-584(144)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG + 0 -11.955 Td [(10.4)-522(descr)-334(|)-333(Prin)28(ts)-333(a)-334(description)-333(of)-333(curren)28(t)-334(preconditioner)]TJ +0 g 0 G + [-705(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-583(145)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG + 0 -11.955 Td [(10.5)-522(clone)-334(|)-333(clone)-333(curren)28(t)-334(preconditioner)]TJ +0 g 0 G + [-466(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ +0 g 0 G + [-583(146)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG + 0 -11.956 Td [(10.6)-522(free)-334(|)-333(F)83(ree)-333(a)-333(preconditioner)]TJ +0 g 0 G + [-1008(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-22176(143)]TJ + [-583(147)]TJ +0 g 0 G +0 0 1 rg 0 0 1 RG +/F27 9.9626 Tf -14.944 -21.917 Td [(11)-350(Iterativ)32(e)-384(M)1(etho)-32(ds)]TJ +0 g 0 G + [-22176(148)]TJ 0 0 1 rg 0 0 1 RG -/F8 9.9626 Tf 14.944 -11.955 Td [(psb)]TJ +/F8 9.9626 Tf 14.944 -11.956 Td [(11.1)-522(psb)]TJ ET q -1 0 0 1 181.246 694.373 cm +1 0 0 1 204.16 542.941 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 184.235 694.174 Td [(krylo)28(v)]TJ +/F8 9.9626 Tf 207.149 542.742 Td [(krylo)28(v)-333(|)-334(Krylo)28(v)-333(Metho)-28(ds)-333(Driv)28(e)-1(r)-333(Routine)]TJ 0 g 0 G - [-382(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ + [-317(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ 0 g 0 G - [-583(144)]TJ + [-584(149)]TJ 0 g 0 G 0 g 0 G - 134.313 -603.736 Td [(iv)]TJ + 111.399 -452.304 Td [(iv)]TJ 0 g 0 G ET endstream endobj -749 0 obj +775 0 obj << /Length 8518 >> @@ -3613,7 +3617,7 @@ ET endstream endobj -769 0 obj +795 0 obj << /Length 5579 >> @@ -3660,20 +3664,20 @@ ET endstream endobj -765 0 obj +791 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (./figures/psblas.pdf) /PTEX.PageNumber 1 -/PTEX.InfoDict 772 0 R +/PTEX.InfoDict 798 0 R /BBox [0 0 197 215] /Resources << /ProcSet [ /PDF /Text ] /ExtGState << -/R7 773 0 R ->>/Font << /R8 774 0 R>> +/R7 799 0 R +>>/Font << /R8 800 0 R>> >> /Length 898 /Filter /FlateDecode @@ -3694,7 +3698,7 @@ x Ͻ'Ǜa>=|9hBu湣$Lq5k^޽;>NiZ\V+9D8NLG׻~0+'mw>o;{=EaѲ8S4%ǥ_N#OΏ endstream endobj -776 0 obj +802 0 obj << /Filter /FlateDecode /Subtype /Type1C @@ -3714,7 +3718,7 @@ p IZt4w!}^gh9@^ ҅s2=3B2H>yn7C#h-whGtBVպ`u1F3vo34\z",P&+ڻoB03xs!F/m'~n?vaD+5t0 +ԷsRztJxFzQ`/d2j@7G.?wyc$OI(SMEߌ| ^`2!-"VIN"̂B-e/uV9:6:.ǰMɪH endstream endobj -782 0 obj +808 0 obj << /Length 8854 >> @@ -3763,7 +3767,7 @@ ET endstream endobj -798 0 obj +824 0 obj << /Length 5346 >> @@ -3840,20 +3844,20 @@ ET endstream endobj -795 0 obj +821 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (./figures/points.pdf) /PTEX.PageNumber 1 -/PTEX.InfoDict 801 0 R +/PTEX.InfoDict 827 0 R /BBox [0 0 274 308] /Resources << /ProcSet [ /PDF /Text ] /ExtGState << -/R7 802 0 R ->>/Font << /R8 803 0 R>> +/R7 828 0 R +>>/Font << /R8 829 0 R>> >> /Length 1397 /Filter /FlateDecode @@ -3863,487 +3867,509 @@ x  3B=bAH}ϩc?ׄe]_?dwGad"沾}e4ߠ,s,_x/w׷~[Z.1uoO*x/22T<ᜇd&o/VC1V^dR 9^Ӿ͚zzõ7!SjJRWZSNm ide3fyRO|J_F~]~z2}VНm΀sQ<I}y5N p%UW@E$|pxE`&U %AIU0G]&MJxT.)~C8}~WۢvKK,8͗&`[C*ONs m 9؆u!`{P9mKI7oB*O샹~̳'^IavRy!zw'`x"0.Ѥb'i|sP:-%X/[^#ahdPY/)Zq&-VֽONtnGY& ˒וB̜Mnng%#؜ǂ"d;)(\X0}Zp#`ӆS%Hvţf``-+ЎQ49Ç,xO/,f,zinv$-܌`?禩|,7c;@!os]?ݲta0yҥZdyORܐ<%9䃀[}拇6m8uIPhf>m))YꓠҐ<%9䃀[}kWOr= A} 0' 9S,ir+\_uݿѐE?{'ȋB#4_$&`[qq&/> M5^_'`[BO% /]07o[qq &/M 5^_'n޶4.16sܥ%]!CgVe@ٖ$)5-5}?Lg+ |>{>hO‘jX5~,>0x},1c X€5Xb$3 څt=>tp8Շ$i>-%TXJR#gL“-J/0jȶw.ickZ,Ԥ^kU Wjǂ.UEzgP,"e̋:t!*%~ *Q@emPM1:ޒX(4 N]J' endstream endobj -810 0 obj -<< -/Length 5462 ->> -stream -0 g 0 G -0 g 0 G -0 g 0 G -BT -/F27 9.9626 Tf 99.895 706.129 Td [(Data)-383(m)-1(anagemen)32(t)-383(and)-383(auxiliary)-384(routines)]TJ -0 g 0 G -/F8 9.9626 Tf 210.717 0 Td [(including:)]TJ -0 g 0 G -/F14 9.9626 Tf -173.855 -24.208 Td [(\017)]TJ -0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(P)28(arallel)-333(en)27(vironmen)28(t)-333(managemen)28(t)]TJ -0 g 0 G -/F14 9.9626 Tf -9.963 -18.081 Td [(\017)]TJ -0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(Comm)28(unication)-334(d)1(e)-1(scriptor)1(s)-334(allo)-28(cation;)]TJ -0 g 0 G -/F14 9.9626 Tf -9.963 -18.082 Td [(\017)]TJ -0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(Dense)-333(and)-334(sparse)-333(matrix)-333(allo)-28(cation;)]TJ -0 g 0 G -/F14 9.9626 Tf -9.963 -18.081 Td [(\017)]TJ -0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(Dense)-333(and)-334(sparse)-333(matrix)-333(build)-334(an)1(d)-334(up)-27(date;)]TJ -0 g 0 G -/F14 9.9626 Tf -9.963 -18.082 Td [(\017)]TJ -0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(Sparse)-333(matrix)-334(and)-333(data)-333(distribution)-333(prepro)-28(cessing.)]TJ -0 g 0 G -/F27 9.9626 Tf -46.825 -24.207 Td [(Preconditioner)-383(routi)-1(n)1(es)]TJ -0 g 0 G -0 g 0 G - 0 -24.208 Td [(Iterativ)32(e)-384(metho)-32(ds)]TJ -0 g 0 G -/F8 9.9626 Tf 94.307 0 Td [(a)-333(subset)-334(of)-333(Krylo)28(v)-334(sub)1(s)-1(p)1(ac)-1(e)-333(iterativ)28(e)-333(me)-1(th)1(o)-28(ds)]TJ -94.307 -23.137 Td [(The)-391(follo)27(wing)-391(naming)-391(sc)27(heme)-391(has)-392(b)-27(een)-392(adopted)-391(for)-391(all)-392(the)-391(sym)27(b)-27(ols)-392(in)28(ternally)]TJ 0 -11.955 Td [(de\014ned)-333(in)-334(the)-333(PSBLAS)-333(soft)28(w)27(are)-333(pac)28(k)55(age:)]TJ -0 g 0 G -/F14 9.9626 Tf 14.944 -23.137 Td [(\017)]TJ -0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(all)-333(sym)27(b)-27(ols)-334(\050i.e.)-444(subroutine)-333(names,)-334(data)-333(t)28(yp)-28(es...\051)-444(are)-334(pre\014xed)-333(b)28(y)]TJ/F30 9.9626 Tf 286.233 0 Td [(psb_)]TJ -0 g 0 G -/F14 9.9626 Tf -296.196 -24.208 Td [(\017)]TJ -0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(all)-333(data)-334(t)28(yp)-28(e)-333(names)-333(are)-334(su\016xed)-333(b)28(y)]TJ/F30 9.9626 Tf 156.22 0 Td [(_type)]TJ -0 g 0 G -/F14 9.9626 Tf -166.183 -24.208 Td [(\017)]TJ -0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(all)-333(constan)27(ts)-333(are)-333(su\016xed)-334(b)28(y)]TJ/F30 9.9626 Tf 124.727 0 Td [(_)]TJ -0 g 0 G -/F14 9.9626 Tf -134.69 -24.208 Td [(\017)]TJ -0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(all)-390(top-lev)28(e)-1(l)-390(subroutine)-390(names)-390(follo)28(w)-391(the)-390(rule)]TJ/F30 9.9626 Tf 203.944 0 Td [(psb_xxname)]TJ/F8 9.9626 Tf 56.192 0 Td [(where)]TJ/F30 9.9626 Tf 29.376 0 Td [(xx)]TJ/F8 9.9626 Tf 14.348 0 Td [(can)]TJ -303.86 -11.955 Td [(b)-28(e)-333(either:)]TJ -0 g 0 G -/F27 9.9626 Tf 11.208 -24.208 Td [({)]TJ -0 g 0 G -/F30 9.9626 Tf 10.71 0 Td [(ge)]TJ/F8 9.9626 Tf 10.461 0 Td [(:)-444(the)-334(routine)-333(is)-333(related)-334(to)-333(dense)-333(data,)]TJ -0 g 0 G -/F27 9.9626 Tf -21.171 -18.081 Td [({)]TJ -0 g 0 G -/F30 9.9626 Tf 10.71 0 Td [(sp)]TJ/F8 9.9626 Tf 10.461 0 Td [(:)-444(the)-334(routine)-333(is)-333(related)-334(to)-333(sparse)-333(data,)]TJ -0 g 0 G -/F27 9.9626 Tf -21.171 -18.081 Td [({)]TJ -0 g 0 G -/F30 9.9626 Tf 10.71 0 Td [(cd)]TJ/F8 9.9626 Tf 10.461 0 Td [(:)-444(the)-334(routine)-333(is)-333(related)-334(to)-333(comm)28(unication)-334(d)1(e)-1(scriptor)-333(\050see)]TJ -0 0 1 rg 0 0 1 RG - [-333(3)]TJ -0 g 0 G - [(\051.)]TJ -32.379 -24.208 Td [(F)83(or)-275(example)-276(the)]TJ/F30 9.9626 Tf 72.33 0 Td [(psb_geins)]TJ/F8 9.9626 Tf 47.073 0 Td [(,)]TJ/F30 9.9626 Tf 5.628 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 49.818 0 Td [(and)]TJ/F30 9.9626 Tf 18.797 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf 49.818 0 Td [(p)-28(erform)-275(the)-276(same)]TJ -243.464 -11.955 Td [(action)-343(\050see)]TJ -0 0 1 rg 0 0 1 RG - [-343(6)]TJ -0 g 0 G - [(\051)-343(on)-342(dense)-343(matrices,)-345(s)-1(p)1(ars)-1(e)-342(matrices)-343(and)-343(comm)28(unication)-343(de-)]TJ 0 -11.956 Td [(scriptors)-357(resp)-28(ectiv)28(ely)83(.)-514(In)27(terface)-356(o)27(v)28(erloading)-357(allo)28(ws)-357(the)-357(u)1(s)-1(age)-356(of)-357(the)-357(same)]TJ 0 -11.955 Td [(subroutine)-333(names)-334(for)-333(b)-28(oth)-333(real)-333(and)-334(complex)-333(data.)]TJ -24.907 -23.137 Td [(In)-320(the)-320(desc)-1(r)1(iption)-321(of)-320(the)-320(subroutines,)-323(argumen)28(ts)-320(or)-320(argumen)27(t)-320(en)28(tries)-320(are)-320(clas)-1(si-)]TJ 0 -11.955 Td [(\014ed)-333(as:)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -23.137 Td [(global)]TJ -0 g 0 G -/F8 9.9626 Tf 34.738 0 Td [(F)83(or)-228(input)-228(argumen)28(ts,)-250(the)-228(v)56(alue)-229(m)28(ust)-228(b)-28(e)-228(the)-228(same)-229(on)-228(all)-228(pro)-28(cesses)-229(part)1(ic)-1(i)1(-)]TJ -9.831 -11.955 Td [(pating)-253(i)1(n)-253(the)-253(subroutin)1(e)-253(call;)-280(for)-252(output)-253(argumen)28(ts)-252(the)-253(v)56(alue)-253(is)-253(guaran)28(teed)]TJ 0 -11.955 Td [(to)-333(b)-28(e)-333(the)-334(same.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -24.208 Td [(lo)-32(cal)]TJ -0 g 0 G -/F8 9.9626 Tf 28.055 0 Td [(Eac)28(h)-334(p)1(ro)-28(cess)-334(has)-333(its)-333(o)27(wn)-333(v)56(alue\050s\051)-334(indep)-27(enden)27(tly)84(.)]TJ -28.055 -23.137 Td [(T)83(o)-333(\014nish)-333(our)-334(general)-333(description,)-333(w)28(e)-334(de\014ne)-333(a)-333(v)27(ersion)-333(string)-333(with)-334(th)1(e)-334(constan)28(t)]TJ/F30 9.9626 Tf 122.168 -24.059 Td [(psb_version_string_)]TJ/F8 9.9626 Tf -122.168 -24.059 Td [(whose)-333(curren)27(t)-333(v)56(alue)-334(is)]TJ/F30 9.9626 Tf 99.793 0 Td [(3.4.0)]TJ -0 g 0 G -/F8 9.9626 Tf 69.572 -29.888 Td [(5)]TJ -0 g 0 G -ET - -endstream -endobj -815 0 obj -<< -/Length 8659 ->> -stream -0 g 0 G -0 g 0 G -BT -/F16 11.9552 Tf 150.705 706.129 Td [(2.3)-1125(Application)-375(structure)]TJ/F8 9.9626 Tf 0 -18.928 Td [(The)-274(main)-275(und)1(e)-1(r)1(lying)-275(principle)-274(of)-274(the)-274(PSBLAS)-275(librar)1(y)-275(is)-274(that)-274(the)-275(library)-274(ob)-55(jects)]TJ 0 -11.955 Td [(are)-311(created)-311(and)-311(exist)-311(with)-312(r)1(e)-1(f)1(e)-1(rence)-311(to)-311(a)-311(discretized)-311(space)-311(to)-311(whic)27(h)-311(there)-311(corre-)]TJ 0 -11.955 Td [(sp)-28(onds)-339(an)-340(index)-339(space)-340(and)-339(a)-340(matrix)-340(sparsit)28(y)-339(pattern.)-463(As)-340(an)-340(example,)-341(consider)]TJ 0 -11.955 Td [(a)-355(cell-cen)27(tered)-355(\014nite-v)28(olume)-355(discretization)-356(of)-355(the)-355(Na)28(vier-Stok)28(es)-356(equations)-355(on)-355(a)]TJ 0 -11.956 Td [(sim)28(ulation)-371(domain;)-390(the)-371(index)-371(space)-371(1)]TJ/F11 9.9626 Tf 166.003 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 22.959 0 Td [(is)-371(isomorphic)-371(to)-371(the)-371(set)-371(of)-371(cell)-371(cen-)]TJ -188.962 -11.955 Td [(ters,)-388(whereas)-378(the)-377(pattern)-377(of)-377(the)-378(asso)-28(ciated)-377(linear)-377(system)-377(m)-1(atr)1(ix)-378(is)-377(isomorphic)]TJ 0 -11.955 Td [(to)-277(the)-278(adjacency)-278(grap)1(h)-278(imp)-28(osed)-277(on)-278(the)-277(discretization)-278(mesh)-277(b)27(y)-277(the)-278(discretization)]TJ 0 -11.955 Td [(stencil.)]TJ 14.944 -12.245 Td [(Th)28(us)-409(the)-408(\014rst)-408(order)-409(of)-408(business)-408(is)-409(to)-408(establish)-409(an)-408(index)-408(space,)-427(and)-409(this)-408(is)]TJ -14.944 -11.955 Td [(done)-371(with)-371(a)-371(call)-371(to)]TJ/F30 9.9626 Tf 87.109 0 Td [(psb_cdall)]TJ/F8 9.9626 Tf 50.768 0 Td [(in)-371(whic)28(h)-371(w)28(e)-371(sp)-28(ecify)-371(the)-371(size)-371(of)-371(the)-371(index)-371(space)]TJ/F11 9.9626 Tf -137.877 -11.955 Td [(n)]TJ/F8 9.9626 Tf 9.142 0 Td [(and)-317(the)-318(allo)-28(cation)-317(of)-317(the)-318(elemen)28(ts)-318(of)-317(the)-317(index)-318(space)-317(to)-318(the)-317(v)55(arious)-317(pro)-28(cesses)]TJ -9.142 -11.955 Td [(making)-333(up)-334(th)1(e)-334(MPI)-333(\050virtual\051)-333(parallel)-334(mac)28(hine.)]TJ 14.944 -12.245 Td [(The)-308(index)-309(space)-308(is)-309(parti)1(tioned)-309(among)-308(pro)-28(cesses,)-314(an)1(d)-309(this)-308(creates)-309(a)-308(mapping)]TJ -14.944 -11.955 Td [(from)-249(the)-249(\134global")-249(n)28(um)28(b)-28(ering)-249(1)]TJ/F11 9.9626 Tf 132.852 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 21.744 0 Td [(to)-249(a)-249(n)28(um)28(b)-28(ering)-249(\134lo)-28(cal")-249(to)-249(eac)28(h)-249(pro)-28(cess;)-277(eac)27(h)]TJ -154.596 -11.955 Td [(pro)-28(cess)]TJ/F11 9.9626 Tf 33.771 0 Td [(i)]TJ/F8 9.9626 Tf 5.794 0 Td [(will)-237(o)28(wn)-237(a)-237(certain)-237(subset)-237(1)]TJ/F11 9.9626 Tf 113.508 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.264 -1.494 Td [(ro)28(w)]TJ/F9 4.9813 Tf 15.801 -0.997 Td [(i)]TJ/F8 9.9626 Tf 3.655 2.491 Td [(,)-256(eac)27(h)-237(elemen)28(t)-237(of)-237(whic)28(h)-237(corresp)-28(onds)]TJ -191.793 -11.955 Td [(to)-390(a)-389(certain)-390(elemen)28(t)-390(of)-389(1)]TJ/F11 9.9626 Tf 111.313 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.264 0 Td [(.)-613(The)-390(user)-389(do)-28(es)-390(not)-389(s)-1(et)-389(explicitly)-390(this)-389(mapping;)]TJ -130.577 -11.955 Td [(when)-392(the)-393(appl)1(ic)-1(ati)1(on)-393(needs)-392(to)-392(indicate)-393(to)-392(whic)28(h)-392(e)-1(lemen)28(t)-392(of)-392(the)-393(index)-392(space)-392(a)]TJ 0 -11.955 Td [(certain)-273(item)-273(is)-273(related,)-285(suc)28(h)-273(as)-273(the)-273(ro)28(w)-273(and)-273(column)-273(index)-273(of)-273(a)-273(matrix)-273(co)-27(e\016c)-1(ien)28(t,)]TJ 0 -11.956 Td [(it)-449(do)-27(es)-449(so)-449(in)-448(the)-449(\134global")-449(n)28(um)28(b)-28(ering,)-477(and)-449(the)-448(library)-449(will)-448(translate)-449(in)28(to)-449(the)]TJ 0 -11.955 Td [(appropriate)-333(\134lo)-28(cal")-333(n)28(um)27(b)-27(ering.)]TJ 14.944 -12.244 Td [(F)83(or)-273(a)-274(giv)28(en)-274(index)-274(space)-273(1)]TJ/F11 9.9626 Tf 109.331 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 21.99 0 Td [(there)-274(are)-273(m)-1(an)28(y)-273(p)-28(ossible)-274(asso)-28(ciated)-274(top)-27(ologies,)]TJ -146.265 -11.955 Td [(i.e.)-418(man)28(y)-254(di\013eren)27(t)-254(discretization)-254(stencils;)-281(th)28(us)-254(the)-254(description)-254(of)-254(the)-254(index)-255(space)]TJ 0 -11.956 Td [(is)-355(not)-355(completed)-355(un)28(til)-356(th)1(e)-356(user)-355(has)-355(de\014ned)-355(a)-355(sparsit)28(y)-355(pattern,)-361(either)-355(explicitly)]TJ 0 -11.955 Td [(through)]TJ/F30 9.9626 Tf 36.93 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf 49.66 0 Td [(or)-260(implicitly)-259(through)]TJ/F30 9.9626 Tf 92.223 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)-420(The)-260(descriptor)-259(is)-260(\014nalized)]TJ -225.886 -11.955 Td [(with)-354(a)-355(call)-354(to)]TJ/F30 9.9626 Tf 62.274 0 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 50.603 0 Td [(and)-354(a)-355(sparse)-354(matrix)-354(with)-355(a)-354(call)-354(to)]TJ/F30 9.9626 Tf 153.217 0 Td [(psb_spasb)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)-507(After)]TJ/F30 9.9626 Tf -313.167 -11.955 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 50.443 0 Td [(eac)28(h)-338(pro)-28(cess)]TJ/F11 9.9626 Tf 57.244 0 Td [(i)]TJ/F8 9.9626 Tf 6.802 0 Td [(will)-338(ha)28(v)27(e)-338(de\014ned)-338(a)-338(set)-339(of)-338(\134halo")-338(\050or)-338(\134ghost"\051)-339(i)1(ndices)]TJ/F11 9.9626 Tf -114.489 -11.955 Td [(n)]TJ/F8 9.9626 Tf 5.98 -1.495 Td [(ro)28(w)]TJ/F9 4.9813 Tf 15.802 -0.996 Td [(i)]TJ/F8 9.9626 Tf 5.985 2.491 Td [(+)-234(1)]TJ/F11 9.9626 Tf 16.722 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.263 -3.487 Td [(col)]TJ/F9 4.9813 Tf 12.176 -0.996 Td [(i)]TJ/F8 9.9626 Tf 3.655 4.483 Td [(,)-355(denoting)-351(elemen)27(ts)-351(of)-351(th)1(e)-351(index)-351(space)-351(that)-351(are)]TJ/F17 9.9626 Tf 209.596 0 Td [(not)]TJ/F8 9.9626 Tf 18.445 0 Td [(assigned)]TJ -307.624 -11.955 Td [(to)-284(pro)-28(cess)]TJ/F11 9.9626 Tf 45.92 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(;)-300(ho)28(w)27(ev)28(er)-284(the)-284(v)56(ariables)-284(asso)-28(ciated)-283(with)-284(them)-284(are)-284(needed)-284(to)-283(c)-1(omplete)]TJ -49.353 -11.956 Td [(computations)-409(a)-1(sso)-27(ciated)-410(with)-409(the)-410(sparse)-409(m)-1(atr)1(ix)]TJ/F11 9.9626 Tf 216.316 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(,)-429(an)1(d)-410(th)28(us)-410(they)-409(ha)28(v)27(e)-409(to)-410(b)-27(e)]TJ -223.788 -11.955 Td [(fetc)28(hed)-464(from)-464(\050)1(neigh)27(b)-27(ouring\051)-464(pro)-28(cesses.)-835(The)-464(descriptor)-464(of)-463(the)-464(index)-463(space)-464(is)]TJ 0 -11.955 Td [(built)-394(exactly)-394(for)-393(the)-394(purp)-28(ose)-394(of)-394(prop)-27(e)-1(r)1(ly)-394(sequencing)-394(the)-394(comm)28(unication)-394(steps)]TJ 0 -11.955 Td [(required)-333(to)-334(ac)28(hiev)28(e)-333(this)-334(ob)-55(jectiv)28(e)-1(.)]TJ 14.944 -12.245 Td [(A)-306(simple)-306(application)-305(structure)-306(will)-306(w)28(alk)-306(through)-306(the)-306(in)1(dex)-306(space)-306(allo)-28(cation,)]TJ -14.944 -11.955 Td [(matrix/v)28(ector)-334(creation)-333(and)-333(linear)-333(syste)-1(m)-333(solution)-333(as)-334(f)1(o)-1(l)1(lo)27(ws:)]TJ -0 g 0 G - 12.177 -20.793 Td [(1.)]TJ -0 g 0 G - [-500(Initialize)-333(parallel)-334(en)28(vironmen)28(t)-333(with)]TJ/F30 9.9626 Tf 169.42 0 Td [(psb_init)]TJ -0 g 0 G -/F8 9.9626 Tf -169.42 -21.082 Td [(2.)]TJ -0 g 0 G - [-500(Initialize)-333(index)-334(space)-333(with)]TJ/F30 9.9626 Tf 130.123 0 Td [(psb_cdall)]TJ -0 g 0 G -/F8 9.9626 Tf -130.123 -21.083 Td [(3.)]TJ -0 g 0 G - [-500(Allo)-28(cate)-301(sparse)-302(matrix)-301(and)-302(dense)-302(v)28(ectors)-301(with)]TJ/F30 9.9626 Tf 215.329 0 Td [(psb_spall)]TJ/F8 9.9626 Tf 50.077 0 Td [(and)]TJ/F30 9.9626 Tf 19.055 0 Td [(psb_geall)]TJ -0 g 0 G -/F8 9.9626 Tf -284.461 -21.082 Td [(4.)]TJ -0 g 0 G - [-500(Lo)-28(op)-411(o)28(v)28(er)-411(all)-411(lo)-28(cal)-411(ro)27(ws,)-430(generate)-411(matrix)-411(and)-411(v)27(ector)-411(en)28(tries,)-431(an)1(d)-412(in)1(s)-1(ert)]TJ 12.73 -11.955 Td [(them)-333(with)]TJ/F30 9.9626 Tf 48.153 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 50.393 0 Td [(and)]TJ/F30 9.9626 Tf 19.372 0 Td [(psb_geins)]TJ -0 g 0 G -/F8 9.9626 Tf -130.648 -21.083 Td [(5.)]TJ -0 g 0 G - [-500(Assem)28(ble)-334(the)-333(v)56(arious)-334(en)28(tities:)]TJ -0 g 0 G - 16.936 -21.082 Td [(\050a\051)]TJ -0 g 0 G -/F30 9.9626 Tf 17.711 0 Td [(psb_cdasb)]TJ -0 g 0 G -/F8 9.9626 Tf -18.264 -16.519 Td [(\050b\051)]TJ -0 g 0 G -/F30 9.9626 Tf 18.264 0 Td [(psb_spasb)]TJ -0 g 0 G -/F8 9.9626 Tf -17.157 -16.519 Td [(\050c\051)]TJ -0 g 0 G -/F30 9.9626 Tf 17.157 0 Td [(psb_geasb)]TJ -0 g 0 G -/F8 9.9626 Tf 122.541 -29.888 Td [(6)]TJ -0 g 0 G -ET - -endstream -endobj -732 0 obj +746 0 obj << /Type /ObjStm /N 100 -/First 916 -/Length 13603 +/First 919 +/Length 15220 >> stream -692 0 693 149 694 297 695 446 696 595 697 743 698 892 699 1041 700 1189 701 1338 -702 1487 703 1635 704 1783 705 1932 706 2080 707 2229 708 2375 709 2524 710 2673 711 2823 -712 2973 713 3118 714 3268 715 3418 716 3567 717 3715 718 3864 719 4014 720 4160 721 4309 -722 4458 723 4608 724 4756 725 4906 731 5056 728 5112 734 5191 726 5333 727 5481 736 5630 -733 5687 748 5766 737 5972 738 6121 739 6272 740 6424 741 6578 742 6729 743 6878 744 7027 -745 7175 746 7323 7 7471 747 7525 768 7617 772 7767 773 8008 774 8050 775 8436 762 8736 -763 8881 764 9029 11 9176 771 9232 767 9287 781 9407 766 9557 778 9703 779 9852 783 10000 -15 10056 789 10111 791 10168 780 10225 797 10420 801 10562 802 10676 803 10718 793 10787 794 10935 -799 11083 800 11140 19 11197 796 11253 809 11412 806 11554 807 11700 811 11847 808 11903 814 12008 -816 12122 23 12179 818 12235 819 12292 820 12349 821 12405 822 12462 823 12518 824 12573 825 12630 -% 692 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 566.235 150.749 577.083] -/A << /S /GoTo /D (section*.83) >> ->> -% 693 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 553.581 197.496 564.43] -/A << /S /GoTo /D (section*.84) >> ->> -% 694 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 540.928 191.159 551.776] -/A << /S /GoTo /D (section*.85) >> ->> -% 695 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 528.275 160.989 539.123] -/A << /S /GoTo /D (section*.86) >> ->> -% 696 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 515.621 163.839 526.47] -/A << /S /GoTo /D (section*.87) >> ->> -% 697 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 502.968 157.972 513.816] -/A << /S /GoTo /D (section*.88) >> ->> +698 0 699 153 700 306 701 458 702 611 703 763 704 916 705 1068 706 1221 707 1374 +708 1527 709 1672 710 1824 741 1976 711 2127 712 2279 713 2430 714 2582 715 2733 716 2884 +717 3035 718 3187 719 3340 720 3492 721 3644 722 3796 723 3949 724 4101 725 4253 726 4406 +727 4552 728 4703 729 4855 730 5007 731 5159 732 5305 742 5457 733 5607 743 5759 734 5910 +744 6062 735 6212 745 6364 740 6514 737 6570 758 6649 736 6879 761 7031 747 7183 762 7335 +748 7487 749 7634 750 7787 751 7939 752 8092 753 8244 754 8396 755 8549 756 8695 760 8848 +757 8905 774 8984 763 9190 764 9339 765 9490 766 9642 767 9796 768 9947 769 10096 770 10245 +771 10393 772 10541 7 10689 773 10743 794 10835 798 10985 799 11226 800 11268 801 11654 788 11954 +789 12099 790 12247 11 12394 797 12450 793 12505 807 12625 792 12775 804 12921 805 13070 809 13218 +15 13274 815 13329 817 13386 806 13443 823 13638 827 13780 828 13894 829 13936 819 14005 820 14153 % 698 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 490.315 157.446 501.163] -/A << /S /GoTo /D (section*.89) >> +/Rect [113.843 654.819 367.083 665.667] +/A << /S /GoTo /D (subsection.6.18) >> >> % 699 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 477.662 152.188 488.51] -/A << /S /GoTo /D (section*.90) >> +/Rect [113.843 642.725 211.621 653.573] +/A << /S /GoTo /D (subsection.6.19) >> >> % 700 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 465.008 152.963 475.857] -/A << /S /GoTo /D (section*.91) >> +/Rect [113.843 630.63 228.447 641.479] +/A << /S /GoTo /D (subsection.6.20) >> >> % 701 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 452.355 151.026 463.203] -/A << /S /GoTo /D (section*.92) >> +/Rect [113.843 618.536 204.426 629.384] +/A << /S /GoTo /D (subsection.6.21) >> >> % 702 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 439.702 152.963 450.55] -/A << /S /GoTo /D (section*.93) >> +/Rect [113.843 606.442 221.252 617.29] +/A << /S /GoTo /D (subsection.6.22) >> >> % 703 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 427.049 153.24 437.897] -/A << /S /GoTo /D (section*.94) >> +/Rect [113.843 594.348 379.049 605.196] +/A << /S /GoTo /D (subsection.6.23) >> >> % 704 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 414.395 157.142 425.243] -/A << /S /GoTo /D (section*.95) >> +/Rect [113.843 582.254 358.57 593.102] +/A << /S /GoTo /D (subsection.6.24) >> >> % 705 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 401.742 149.421 412.59] -/A << /S /GoTo /D (section*.96) >> +/Rect [113.843 569.606 374.261 581.561] +/A << /S /GoTo /D (subsection.6.25) >> >> % 706 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 389.089 148.009 399.937] -/A << /S /GoTo /D (section*.97) >> +/Rect [113.843 558.065 284.166 568.913] +/A << /S /GoTo /D (subsection.6.26) >> >> % 707 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [98.899 366.007 190.188 376.856] -/A << /S /GoTo /D (section.8) >> +/Rect [113.843 545.971 222.962 556.819] +/A << /S /GoTo /D (subsection.6.27) >> >> % 708 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 353.354 167.188 364.202] -/A << /S /GoTo /D (section*.98) >> +/Rect [98.899 525.759 264.868 534.67] +/A << /S /GoTo /D (section.7) >> >> % 709 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 340.701 155.537 351.549] -/A << /S /GoTo /D (section*.99) >> +/Rect [113.843 511.727 365.417 522.576] +/A << /S /GoTo /D (subsection.7.1) >> >> % 710 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 328.048 202.129 338.896] -/A << /S /GoTo /D (section*.100) >> +/Rect [113.843 499.633 444.603 510.481] +/A << /S /GoTo /D (subsection.7.2) >> +>> +% 741 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [98.899 489.615 160.612 498.028] +/A << /S /GoTo /D (subsection.7.2) >> >> % 711 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 315.394 189.039 326.242] -/A << /S /GoTo /D (section*.101) >> +/Rect [113.843 475.584 367.188 486.432] +/A << /S /GoTo /D (subsection.7.3) >> >> % 712 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [98.899 294.25 156.061 303.161] -/A << /S /GoTo /D (section.9) >> +/Rect [113.843 463.49 358.186 474.338] +/A << /S /GoTo /D (subsection.7.4) >> >> % 713 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 281.597 149.061 290.508] -/A << /S /GoTo /D (section*.102) >> +/Rect [113.843 451.395 309.784 462.244] +/A << /S /GoTo /D (subsection.7.5) >> >> % 714 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 268.944 152.382 277.855] -/A << /S /GoTo /D (section*.103) >> +/Rect [113.843 439.301 277.164 450.15] +/A << /S /GoTo /D (subsection.7.6) >> >> % 715 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 256.29 175.617 265.201] -/A << /S /GoTo /D (section*.104) >> +/Rect [113.843 427.207 389.41 438.055] +/A << /S /GoTo /D (subsection.7.7) >> >> % 716 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 241.7 181.207 252.548] -/A << /S /GoTo /D (section*.105) >> +/Rect [113.843 415.113 289.95 425.961] +/A << /S /GoTo /D (subsection.7.8) >> >> % 717 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 230.984 178.938 239.63] -/A << /S /GoTo /D (section*.106) >> +/Rect [113.843 403.019 263.327 413.867] +/A << /S /GoTo /D (subsection.7.9) >> >> % 718 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 216.393 184.528 226.977] -/A << /S /GoTo /D (section*.107) >> +/Rect [113.843 390.925 241.645 401.773] +/A << /S /GoTo /D (subsection.7.10) >> >> % 719 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [98.899 195.249 234.475 204.16] -/A << /S /GoTo /D (section.10) >> +/Rect [113.843 378.83 267.824 389.679] +/A << /S /GoTo /D (subsection.7.11) >> >> % 720 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 180.659 157.374 192.06] -/A << /S /GoTo /D (section*.108) >> +/Rect [113.843 366.736 263.95 377.584] +/A << /S /GoTo /D (subsection.7.12) >> >> % 721 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 168.005 164.57 179.407] -/A << /S /GoTo /D (section*.109) >> +/Rect [113.843 354.642 332.914 365.49] +/A << /S /GoTo /D (subsection.7.13) >> >> % 722 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 155.352 166.507 166.754] -/A << /S /GoTo /D (section*.110) >> +/Rect [113.843 342.548 331.253 353.396] +/A << /S /GoTo /D (subsection.7.14) >> >> % 723 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 142.699 164.653 154.1] -/A << /S /GoTo /D (section*.111) >> +/Rect [113.843 330.454 304.16 341.302] +/A << /S /GoTo /D (subsection.7.15) >> >> % 724 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 131.983 137.975 140.894] -/A << /S /GoTo /D (section*.112) >> +/Rect [113.843 318.36 232.664 329.208] +/A << /S /GoTo /D (subsection.7.16) >> >> % 725 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [113.843 117.392 158.232 128.794] -/A << /S /GoTo /D (section*.113) >> +/Rect [113.843 306.265 243.014 317.114] +/A << /S /GoTo /D (subsection.7.17) >> >> -% 731 0 obj +% 726 0 obj << -/D [729 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [98.899 284.116 190.188 294.964] +/A << /S /GoTo /D (section.8) >> +>> +% 727 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [113.843 272.022 190.102 282.87] +/A << /S /GoTo /D (subsection.8.1) >> >> % 728 0 obj << -/Font << /F8 573 0 R /F27 572 0 R >> -/ProcSet [ /PDF /Text ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [113.843 259.927 178.451 270.776] +/A << /S /GoTo /D (subsection.8.2) >> +>> +% 729 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [113.843 247.833 225.043 258.681] +/A << /S /GoTo /D (subsection.8.3) >> +>> +% 730 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [113.843 235.739 211.953 246.587] +/A << /S /GoTo /D (subsection.8.4) >> +>> +% 731 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [98.899 215.527 156.061 224.438] +/A << /S /GoTo /D (section.9) >> +>> +% 732 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [113.843 201.495 444.603 212.344] +/A << /S /GoTo /D (subsection.9.1) >> +>> +% 742 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [98.899 189.54 201.182 200.388] +/A << /S /GoTo /D (subsection.9.1) >> +>> +% 733 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [113.843 177.446 444.603 188.294] +/A << /S /GoTo /D (subsection.9.2) >> +>> +% 743 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [98.899 167.428 167.835 176.339] +/A << /S /GoTo /D (subsection.9.2) >> >> % 734 0 obj << +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [113.843 153.397 444.603 164.245] +/A << /S /GoTo /D (subsection.9.3) >> +>> +% 744 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [98.899 143.379 202.455 152.29] +/A << /S /GoTo /D (subsection.9.3) >> +>> +% 735 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [113.843 129.347 444.603 140.196] +/A << /S /GoTo /D (subsection.9.4) >> +>> +% 745 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [98.899 119.329 202.455 128.24] +/A << /S /GoTo /D (subsection.9.4) >> +>> +% 740 0 obj +<< +/D [738 0 R /XYZ 98.895 753.953 null] +>> +% 737 0 obj +<< +/Font << /F8 585 0 R /F27 584 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 758 0 obj +<< /Type /Page -/Contents 735 0 R -/Resources 733 0 R +/Contents 759 0 R +/Resources 757 0 R /MediaBox [0 0 595.276 841.89] -/Parent 574 0 R -/Annots [ 726 0 R 727 0 R ] +/Parent 586 0 R +/Annots [ 736 0 R 761 0 R 747 0 R 762 0 R 748 0 R 749 0 R 750 0 R 751 0 R 752 0 R 753 0 R 754 0 R 755 0 R 756 0 R ] >> -% 726 0 obj +% 736 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 703.195 495.412 714.044] +/A << /S /GoTo /D (subsection.9.5) >> +>> +% 761 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [149.709 693.177 253.265 702.088] +/A << /S /GoTo /D (subsection.9.5) >> +>> +% 747 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 679.285 495.412 690.133] +/A << /S /GoTo /D (subsection.9.6) >> +>> +% 762 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [149.709 669.267 253.265 678.178] +/A << /S /GoTo /D (subsection.9.6) >> +>> +% 748 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [149.709 647.349 285.284 656.26] +/A << /S /GoTo /D (section.10) >> +>> +% 749 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 633.457 333.243 644.305] +/A << /S /GoTo /D (subsection.10.1) >> +>> +% 750 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 621.502 330.116 632.35] +/A << /S /GoTo /D (subsection.10.2) >> +>> +% 751 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 609.547 379.901 620.395] +/A << /S /GoTo /D (subsection.10.3) >> +>> +% 752 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 597.591 426.117 608.44] +/A << /S /GoTo /D (subsection.10.4) >> +>> +% 753 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 585.636 351.01 596.484] +/A << /S /GoTo /D (subsection.10.5) >> +>> +% 754 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [164.653 573.681 314.618 584.529] +/A << /S /GoTo /D (subsection.10.6) >> +>> +% 755 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [149.709 705.133 257.299 714.044] +/Rect [149.709 553.7 257.299 562.611] /A << /S /GoTo /D (section.11) >> >> -% 727 0 obj +% 756 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [164.653 691.24 212.379 702.088] -/A << /S /GoTo /D (section*.114) >> +/Rect [164.653 539.808 391.237 550.656] +/A << /S /GoTo /D (subsection.11.1) >> >> -% 736 0 obj +% 760 0 obj << -/D [734 0 R /XYZ 149.705 753.953 null] +/D [758 0 R /XYZ 149.705 753.953 null] >> -% 733 0 obj +% 757 0 obj << -/Font << /F27 572 0 R /F8 573 0 R >> +/Font << /F8 585 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 748 0 obj +% 774 0 obj << /Type /Page -/Contents 749 0 R -/Resources 747 0 R +/Contents 775 0 R +/Resources 773 0 R /MediaBox [0 0 595.276 841.89] -/Parent 751 0 R -/Annots [ 737 0 R 738 0 R 739 0 R 740 0 R 741 0 R 742 0 R 743 0 R 744 0 R 745 0 R 746 0 R ] +/Parent 777 0 R +/Annots [ 763 0 R 764 0 R 765 0 R 766 0 R 767 0 R 768 0 R 769 0 R 770 0 R 771 0 R 772 0 R ] >> -% 737 0 obj +% 763 0 obj << /Type /Annot /Subtype /Link @@ -4351,7 +4377,7 @@ stream /Rect [408.982 586.91 420.937 595.323] /A << /S /GoTo /D (cite.metcalf) >> >> -% 738 0 obj +% 764 0 obj << /Type /Annot /Subtype /Link @@ -4359,7 +4385,7 @@ stream /Rect [277.684 514.913 289.639 523.326] /A << /S /GoTo /D (cite.Sparse03) >> >> -% 739 0 obj +% 765 0 obj << /Type /Annot /Subtype /Link @@ -4367,7 +4393,7 @@ stream /Rect [265.763 502.958 272.737 511.371] /A << /S /GoTo /D (cite.DesPat:11) >> >> -% 740 0 obj +% 766 0 obj << /Type /Annot /Subtype /Link @@ -4375,7 +4401,7 @@ stream /Rect [276.283 502.958 288.238 511.371] /A << /S /GoTo /D (cite.RouXiaXu:11) >> >> -% 741 0 obj +% 767 0 obj << /Type /Annot /Subtype /Link @@ -4383,7 +4409,7 @@ stream /Rect [210.166 442.916 222.121 451.329] /A << /S /GoTo /D (cite.machiels) >> >> -% 742 0 obj +% 768 0 obj << /Type /Annot /Subtype /Link @@ -4391,7 +4417,7 @@ stream /Rect [241.566 370.919 248.54 379.332] /A << /S /GoTo /D (cite.sblas97) >> >> -% 743 0 obj +% 769 0 obj << /Type /Annot /Subtype /Link @@ -4399,7 +4425,7 @@ stream /Rect [252.056 370.919 259.03 379.332] /A << /S /GoTo /D (cite.sblas02) >> >> -% 744 0 obj +% 770 0 obj << /Type /Annot /Subtype /Link @@ -4407,7 +4433,7 @@ stream /Rect [227.473 358.964 239.428 367.377] /A << /S /GoTo /D (cite.BLAS1) >> >> -% 745 0 obj +% 771 0 obj << /Type /Annot /Subtype /Link @@ -4415,7 +4441,7 @@ stream /Rect [243.524 358.964 250.498 367.377] /A << /S /GoTo /D (cite.BLAS2) >> >> -% 746 0 obj +% 772 0 obj << /Type /Annot /Subtype /Link @@ -4425,23 +4451,23 @@ stream >> % 7 0 obj << -/D [748 0 R /XYZ 99.895 716.092 null] +/D [774 0 R /XYZ 99.895 716.092 null] >> -% 747 0 obj +% 773 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F17 750 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F17 776 0 R >> /ProcSet [ /PDF /Text ] >> -% 768 0 obj +% 794 0 obj << /Type /Page -/Contents 769 0 R -/Resources 767 0 R +/Contents 795 0 R +/Resources 793 0 R /MediaBox [0 0 595.276 841.89] -/Parent 751 0 R -/Annots [ 762 0 R 763 0 R 764 0 R ] +/Parent 777 0 R +/Annots [ 788 0 R 789 0 R 790 0 R ] >> -% 772 0 obj +% 798 0 obj << /Producer (GPL Ghostscript 9.04) /CreationDate (D:20111215145523+01'00') @@ -4450,15 +4476,15 @@ stream /Creator (fig2dev Version 3.2 Patchlevel 5d) /Author (sfilippo@donald \(Salvatore Filippone\)) >> -% 773 0 obj +% 799 0 obj << /Type /ExtGState /OPM 1 >> -% 774 0 obj +% 800 0 obj << /BaseFont /JEJNJE+Times-Roman -/FontDescriptor 775 0 R +/FontDescriptor 801 0 R /Type /Font /FirstChar 32 /LastChar 116 @@ -4466,7 +4492,7 @@ stream /Encoding /WinAnsiEncoding /Subtype /Type1 >> -% 775 0 obj +% 801 0 obj << /Type /FontDescriptor /FontName /JEJNJE+Times-Roman @@ -4480,9 +4506,9 @@ stream /MissingWidth 500 /XHeight 460 /CharSet (/A/B/F/I/L/M/P/S/a/c/e/f/g/i/l/n/o/p/r/s/space/t/three/two/zero) -/FontFile3 776 0 R +/FontFile3 802 0 R >> -% 762 0 obj +% 788 0 obj << /Type /Annot /Subtype /Link @@ -4490,7 +4516,7 @@ stream /Rect [310.543 541.042 317.517 551.89] /A << /S /GoTo /D (figure.1) >> >> -% 763 0 obj +% 789 0 obj << /Type /Annot /Subtype /Link @@ -4498,7 +4524,7 @@ stream /Rect [446.018 471.248 452.992 479.661] /A << /S /GoTo /D (cite.BLACS) >> >> -% 764 0 obj +% 790 0 obj << /Type /Annot /Subtype /Link @@ -4508,28 +4534,28 @@ stream >> % 11 0 obj << -/D [768 0 R /XYZ 150.705 677.433 null] +/D [794 0 R /XYZ 150.705 677.433 null] >> -% 771 0 obj +% 797 0 obj << -/D [768 0 R /XYZ 258.703 263.3 null] +/D [794 0 R /XYZ 258.703 263.3 null] >> -% 767 0 obj +% 793 0 obj << -/Font << /F8 573 0 R /F16 570 0 R /F11 770 0 R >> -/XObject << /Im1 765 0 R >> +/Font << /F8 585 0 R /F16 582 0 R /F11 796 0 R >> +/XObject << /Im1 791 0 R >> /ProcSet [ /PDF /Text ] >> -% 781 0 obj +% 807 0 obj << /Type /Page -/Contents 782 0 R -/Resources 780 0 R +/Contents 808 0 R +/Resources 806 0 R /MediaBox [0 0 595.276 841.89] -/Parent 751 0 R -/Annots [ 766 0 R 778 0 R 779 0 R ] +/Parent 777 0 R +/Annots [ 792 0 R 804 0 R 805 0 R ] >> -% 766 0 obj +% 792 0 obj << /Type /Annot /Subtype /Link @@ -4537,7 +4563,7 @@ stream /Rect [219.5 609.491 231.455 617.904] /A << /S /GoTo /D (cite.METIS) >> >> -% 778 0 obj +% 804 0 obj << /Type /Annot /Subtype /Link @@ -4545,7 +4571,7 @@ stream /Rect [210.854 546.467 217.316 558.506] /A << /S /GoTo /D (Hfootnote.1) >> >> -% 779 0 obj +% 805 0 obj << /Type /Annot /Subtype /Link @@ -4553,54 +4579,54 @@ stream /Rect [155.908 188.124 162.37 200.163] /A << /S /GoTo /D (Hfootnote.2) >> >> -% 783 0 obj +% 809 0 obj << -/D [781 0 R /XYZ 98.895 753.953 null] +/D [807 0 R /XYZ 98.895 753.953 null] >> % 15 0 obj << -/D [781 0 R /XYZ 99.895 515.919 null] +/D [807 0 R /XYZ 99.895 515.919 null] >> -% 789 0 obj +% 815 0 obj << -/D [781 0 R /XYZ 115.138 167.688 null] +/D [807 0 R /XYZ 115.138 167.688 null] >> -% 791 0 obj +% 817 0 obj << -/D [781 0 R /XYZ 115.138 158.184 null] +/D [807 0 R /XYZ 115.138 158.184 null] >> -% 780 0 obj +% 806 0 obj << -/Font << /F8 573 0 R /F17 750 0 R /F30 784 0 R /F7 785 0 R /F16 570 0 R /F11 770 0 R /F10 786 0 R /F14 787 0 R /F27 572 0 R /F32 788 0 R /F31 790 0 R >> +/Font << /F8 585 0 R /F17 776 0 R /F30 810 0 R /F7 811 0 R /F16 582 0 R /F11 796 0 R /F10 812 0 R /F14 813 0 R /F27 584 0 R /F32 814 0 R /F31 816 0 R >> /ProcSet [ /PDF /Text ] >> -% 797 0 obj +% 823 0 obj << /Type /Page -/Contents 798 0 R -/Resources 796 0 R +/Contents 824 0 R +/Resources 822 0 R /MediaBox [0 0 595.276 841.89] -/Parent 751 0 R -/Annots [ 793 0 R 794 0 R ] +/Parent 777 0 R +/Annots [ 819 0 R 820 0 R ] >> -% 801 0 obj +% 827 0 obj << /Producer (ESP Ghostscript 815.03) /CreationDate (D:20070123225315) /ModDate (D:20070123225315) >> -% 802 0 obj +% 828 0 obj << /Type /ExtGState /OPM 1 >> -% 803 0 obj +% 829 0 obj << /BaseFont /Times-Roman /Type /Font /Subtype /Type1 >> -% 793 0 obj +% 819 0 obj << /Type /Annot /Subtype /Link @@ -4608,7 +4634,7 @@ stream /Rect [294.665 637.885 301.639 646.297] /A << /S /GoTo /D (cite.2007c) >> >> -% 794 0 obj +% 820 0 obj << /Type /Annot /Subtype /Link @@ -4616,110 +4642,148 @@ stream /Rect [305.735 637.885 312.709 646.297] /A << /S /GoTo /D (cite.2007d) >> >> -% 799 0 obj -<< -/D [797 0 R /XYZ 149.705 753.953 null] ->> -% 800 0 obj -<< -/D [797 0 R /XYZ 303.562 347.015 null] ->> -% 19 0 obj -<< -/D [797 0 R /XYZ 150.705 272.271 null] ->> -% 796 0 obj -<< -/Font << /F27 572 0 R /F8 573 0 R /F14 787 0 R /F11 770 0 R /F10 786 0 R /F16 570 0 R >> -/XObject << /Im2 795 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 809 0 obj -<< -/Type /Page -/Contents 810 0 R -/Resources 808 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 751 0 R -/Annots [ 806 0 R 807 0 R ] ->> -% 806 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [406.358 354.515 413.331 366.47] -/A << /S /GoTo /D (section.3) >> ->> -% 807 0 obj + +endstream +endobj +837 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [173.863 318.352 180.837 330.307] -/A << /S /GoTo /D (section.6) >> +/Length 5462 >> -% 811 0 obj -<< -/D [809 0 R /XYZ 98.895 753.953 null] ->> -% 808 0 obj -<< -/Font << /F27 572 0 R /F8 573 0 R /F14 787 0 R /F30 784 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 814 0 obj -<< -/Type /Page -/Contents 815 0 R -/Resources 813 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 751 0 R ->> -% 816 0 obj -<< -/D [814 0 R /XYZ 149.705 753.953 null] ->> -% 23 0 obj -<< -/D [814 0 R /XYZ 150.705 716.092 null] ->> -% 818 0 obj -<< -/D [814 0 R /XYZ 150.705 284.758 null] ->> -% 819 0 obj -<< -/D [814 0 R /XYZ 150.705 263.953 null] ->> -% 820 0 obj -<< -/D [814 0 R /XYZ 150.705 242.87 null] ->> -% 821 0 obj -<< -/D [814 0 R /XYZ 150.705 221.788 null] ->> -% 822 0 obj -<< -/D [814 0 R /XYZ 150.705 188.75 null] ->> -% 823 0 obj -<< -/D [814 0 R /XYZ 150.705 167.6 null] ->> -% 824 0 obj -<< -/D [814 0 R /XYZ 150.705 148.591 null] ->> -% 825 0 obj +stream +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F27 9.9626 Tf 99.895 706.129 Td [(Data)-383(m)-1(anagemen)32(t)-383(and)-383(auxiliary)-384(routines)]TJ +0 g 0 G +/F8 9.9626 Tf 210.717 0 Td [(including:)]TJ +0 g 0 G +/F14 9.9626 Tf -173.855 -24.208 Td [(\017)]TJ +0 g 0 G +/F8 9.9626 Tf 9.963 0 Td [(P)28(arallel)-333(en)27(vironmen)28(t)-333(managemen)28(t)]TJ +0 g 0 G +/F14 9.9626 Tf -9.963 -18.081 Td [(\017)]TJ +0 g 0 G +/F8 9.9626 Tf 9.963 0 Td [(Comm)28(unication)-334(d)1(e)-1(scriptor)1(s)-334(allo)-28(cation;)]TJ +0 g 0 G +/F14 9.9626 Tf -9.963 -18.082 Td [(\017)]TJ +0 g 0 G +/F8 9.9626 Tf 9.963 0 Td [(Dense)-333(and)-334(sparse)-333(matrix)-333(allo)-28(cation;)]TJ +0 g 0 G +/F14 9.9626 Tf -9.963 -18.081 Td [(\017)]TJ +0 g 0 G +/F8 9.9626 Tf 9.963 0 Td [(Dense)-333(and)-334(sparse)-333(matrix)-333(build)-334(an)1(d)-334(up)-27(date;)]TJ +0 g 0 G +/F14 9.9626 Tf -9.963 -18.082 Td [(\017)]TJ +0 g 0 G +/F8 9.9626 Tf 9.963 0 Td [(Sparse)-333(matrix)-334(and)-333(data)-333(distribution)-333(prepro)-28(cessing.)]TJ +0 g 0 G +/F27 9.9626 Tf -46.825 -24.207 Td [(Preconditioner)-383(routi)-1(n)1(es)]TJ +0 g 0 G +0 g 0 G + 0 -24.208 Td [(Iterativ)32(e)-384(metho)-32(ds)]TJ +0 g 0 G +/F8 9.9626 Tf 94.307 0 Td [(a)-333(subset)-334(of)-333(Krylo)28(v)-334(sub)1(s)-1(p)1(ac)-1(e)-333(iterativ)28(e)-333(me)-1(th)1(o)-28(ds)]TJ -94.307 -23.137 Td [(The)-391(follo)27(wing)-391(naming)-391(sc)27(heme)-391(has)-392(b)-27(een)-392(adopted)-391(for)-391(all)-392(the)-391(sym)27(b)-27(ols)-392(in)28(ternally)]TJ 0 -11.955 Td [(de\014ned)-333(in)-334(the)-333(PSBLAS)-333(soft)28(w)27(are)-333(pac)28(k)55(age:)]TJ +0 g 0 G +/F14 9.9626 Tf 14.944 -23.137 Td [(\017)]TJ +0 g 0 G +/F8 9.9626 Tf 9.963 0 Td [(all)-333(sym)27(b)-27(ols)-334(\050i.e.)-444(subroutine)-333(names,)-334(data)-333(t)28(yp)-28(es...\051)-444(are)-334(pre\014xed)-333(b)28(y)]TJ/F30 9.9626 Tf 286.233 0 Td [(psb_)]TJ +0 g 0 G +/F14 9.9626 Tf -296.196 -24.208 Td [(\017)]TJ +0 g 0 G +/F8 9.9626 Tf 9.963 0 Td [(all)-333(data)-334(t)28(yp)-28(e)-333(names)-333(are)-334(su\016xed)-333(b)28(y)]TJ/F30 9.9626 Tf 156.22 0 Td [(_type)]TJ +0 g 0 G +/F14 9.9626 Tf -166.183 -24.208 Td [(\017)]TJ +0 g 0 G +/F8 9.9626 Tf 9.963 0 Td [(all)-333(constan)27(ts)-333(are)-333(su\016xed)-334(b)28(y)]TJ/F30 9.9626 Tf 124.727 0 Td [(_)]TJ +0 g 0 G +/F14 9.9626 Tf -134.69 -24.208 Td [(\017)]TJ +0 g 0 G +/F8 9.9626 Tf 9.963 0 Td [(all)-390(top-lev)28(e)-1(l)-390(subroutine)-390(names)-390(follo)28(w)-391(the)-390(rule)]TJ/F30 9.9626 Tf 203.944 0 Td [(psb_xxname)]TJ/F8 9.9626 Tf 56.192 0 Td [(where)]TJ/F30 9.9626 Tf 29.376 0 Td [(xx)]TJ/F8 9.9626 Tf 14.348 0 Td [(can)]TJ -303.86 -11.955 Td [(b)-28(e)-333(either:)]TJ +0 g 0 G +/F27 9.9626 Tf 11.208 -24.208 Td [({)]TJ +0 g 0 G +/F30 9.9626 Tf 10.71 0 Td [(ge)]TJ/F8 9.9626 Tf 10.461 0 Td [(:)-444(the)-334(routine)-333(is)-333(related)-334(to)-333(dense)-333(data,)]TJ +0 g 0 G +/F27 9.9626 Tf -21.171 -18.081 Td [({)]TJ +0 g 0 G +/F30 9.9626 Tf 10.71 0 Td [(sp)]TJ/F8 9.9626 Tf 10.461 0 Td [(:)-444(the)-334(routine)-333(is)-333(related)-334(to)-333(sparse)-333(data,)]TJ +0 g 0 G +/F27 9.9626 Tf -21.171 -18.081 Td [({)]TJ +0 g 0 G +/F30 9.9626 Tf 10.71 0 Td [(cd)]TJ/F8 9.9626 Tf 10.461 0 Td [(:)-444(the)-334(routine)-333(is)-333(related)-334(to)-333(comm)28(unication)-334(d)1(e)-1(scriptor)-333(\050see)]TJ +0 0 1 rg 0 0 1 RG + [-333(3)]TJ +0 g 0 G + [(\051.)]TJ -32.379 -24.208 Td [(F)83(or)-275(example)-276(the)]TJ/F30 9.9626 Tf 72.33 0 Td [(psb_geins)]TJ/F8 9.9626 Tf 47.073 0 Td [(,)]TJ/F30 9.9626 Tf 5.628 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 49.818 0 Td [(and)]TJ/F30 9.9626 Tf 18.797 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf 49.818 0 Td [(p)-28(erform)-275(the)-276(same)]TJ -243.464 -11.955 Td [(action)-343(\050see)]TJ +0 0 1 rg 0 0 1 RG + [-343(6)]TJ +0 g 0 G + [(\051)-343(on)-342(dense)-343(matrices,)-345(s)-1(p)1(ars)-1(e)-342(matrices)-343(and)-343(comm)28(unication)-343(de-)]TJ 0 -11.956 Td [(scriptors)-357(resp)-28(ectiv)28(ely)83(.)-514(In)27(terface)-356(o)27(v)28(erloading)-357(allo)28(ws)-357(the)-357(u)1(s)-1(age)-356(of)-357(the)-357(same)]TJ 0 -11.955 Td [(subroutine)-333(names)-334(for)-333(b)-28(oth)-333(real)-333(and)-334(complex)-333(data.)]TJ -24.907 -23.137 Td [(In)-320(the)-320(desc)-1(r)1(iption)-321(of)-320(the)-320(subroutines,)-323(argumen)28(ts)-320(or)-320(argumen)27(t)-320(en)28(tries)-320(are)-320(clas)-1(si-)]TJ 0 -11.955 Td [(\014ed)-333(as:)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -23.137 Td [(global)]TJ +0 g 0 G +/F8 9.9626 Tf 34.738 0 Td [(F)83(or)-228(input)-228(argumen)28(ts,)-250(the)-228(v)56(alue)-229(m)28(ust)-228(b)-28(e)-228(the)-228(same)-229(on)-228(all)-228(pro)-28(cesses)-229(part)1(ic)-1(i)1(-)]TJ -9.831 -11.955 Td [(pating)-253(i)1(n)-253(the)-253(subroutin)1(e)-253(call;)-280(for)-252(output)-253(argumen)28(ts)-252(the)-253(v)56(alue)-253(is)-253(guaran)28(teed)]TJ 0 -11.955 Td [(to)-333(b)-28(e)-333(the)-334(same.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -24.208 Td [(lo)-32(cal)]TJ +0 g 0 G +/F8 9.9626 Tf 28.055 0 Td [(Eac)28(h)-334(p)1(ro)-28(cess)-334(has)-333(its)-333(o)27(wn)-333(v)56(alue\050s\051)-334(indep)-27(enden)27(tly)84(.)]TJ -28.055 -23.137 Td [(T)83(o)-333(\014nish)-333(our)-334(general)-333(description,)-333(w)28(e)-334(de\014ne)-333(a)-333(v)27(ersion)-333(string)-333(with)-334(th)1(e)-334(constan)28(t)]TJ/F30 9.9626 Tf 122.168 -24.059 Td [(psb_version_string_)]TJ/F8 9.9626 Tf -122.168 -24.059 Td [(whose)-333(curren)27(t)-333(v)56(alue)-334(is)]TJ/F30 9.9626 Tf 99.793 0 Td [(3.4.0)]TJ +0 g 0 G +/F8 9.9626 Tf 69.572 -29.888 Td [(5)]TJ +0 g 0 G +ET + +endstream +endobj +842 0 obj << -/D [814 0 R /XYZ 150.705 132.072 null] +/Length 8659 >> +stream +0 g 0 G +0 g 0 G +BT +/F16 11.9552 Tf 150.705 706.129 Td [(2.3)-1125(Application)-375(structure)]TJ/F8 9.9626 Tf 0 -18.928 Td [(The)-274(main)-275(und)1(e)-1(r)1(lying)-275(principle)-274(of)-274(the)-274(PSBLAS)-275(librar)1(y)-275(is)-274(that)-274(the)-275(library)-274(ob)-55(jects)]TJ 0 -11.955 Td [(are)-311(created)-311(and)-311(exist)-311(with)-312(r)1(e)-1(f)1(e)-1(rence)-311(to)-311(a)-311(discretized)-311(space)-311(to)-311(whic)27(h)-311(there)-311(corre-)]TJ 0 -11.955 Td [(sp)-28(onds)-339(an)-340(index)-339(space)-340(and)-339(a)-340(matrix)-340(sparsit)28(y)-339(pattern.)-463(As)-340(an)-340(example,)-341(consider)]TJ 0 -11.955 Td [(a)-355(cell-cen)27(tered)-355(\014nite-v)28(olume)-355(discretization)-356(of)-355(the)-355(Na)28(vier-Stok)28(es)-356(equations)-355(on)-355(a)]TJ 0 -11.956 Td [(sim)28(ulation)-371(domain;)-390(the)-371(index)-371(space)-371(1)]TJ/F11 9.9626 Tf 166.003 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 22.959 0 Td [(is)-371(isomorphic)-371(to)-371(the)-371(set)-371(of)-371(cell)-371(cen-)]TJ -188.962 -11.955 Td [(ters,)-388(whereas)-378(the)-377(pattern)-377(of)-377(the)-378(asso)-28(ciated)-377(linear)-377(system)-377(m)-1(atr)1(ix)-378(is)-377(isomorphic)]TJ 0 -11.955 Td [(to)-277(the)-278(adjacency)-278(grap)1(h)-278(imp)-28(osed)-277(on)-278(the)-277(discretization)-278(mesh)-277(b)27(y)-277(the)-278(discretization)]TJ 0 -11.955 Td [(stencil.)]TJ 14.944 -12.245 Td [(Th)28(us)-409(the)-408(\014rst)-408(order)-409(of)-408(business)-408(is)-409(to)-408(establish)-409(an)-408(index)-408(space,)-427(and)-409(this)-408(is)]TJ -14.944 -11.955 Td [(done)-371(with)-371(a)-371(call)-371(to)]TJ/F30 9.9626 Tf 87.109 0 Td [(psb_cdall)]TJ/F8 9.9626 Tf 50.768 0 Td [(in)-371(whic)28(h)-371(w)28(e)-371(sp)-28(ecify)-371(the)-371(size)-371(of)-371(the)-371(index)-371(space)]TJ/F11 9.9626 Tf -137.877 -11.955 Td [(n)]TJ/F8 9.9626 Tf 9.142 0 Td [(and)-317(the)-318(allo)-28(cation)-317(of)-317(the)-318(elemen)28(ts)-318(of)-317(the)-317(index)-318(space)-317(to)-318(the)-317(v)55(arious)-317(pro)-28(cesses)]TJ -9.142 -11.955 Td [(making)-333(up)-334(th)1(e)-334(MPI)-333(\050virtual\051)-333(parallel)-334(mac)28(hine.)]TJ 14.944 -12.245 Td [(The)-308(index)-309(space)-308(is)-309(parti)1(tioned)-309(among)-308(pro)-28(cesses,)-314(an)1(d)-309(this)-308(creates)-309(a)-308(mapping)]TJ -14.944 -11.955 Td [(from)-249(the)-249(\134global")-249(n)28(um)28(b)-28(ering)-249(1)]TJ/F11 9.9626 Tf 132.852 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 21.744 0 Td [(to)-249(a)-249(n)28(um)28(b)-28(ering)-249(\134lo)-28(cal")-249(to)-249(eac)28(h)-249(pro)-28(cess;)-277(eac)27(h)]TJ -154.596 -11.955 Td [(pro)-28(cess)]TJ/F11 9.9626 Tf 33.771 0 Td [(i)]TJ/F8 9.9626 Tf 5.794 0 Td [(will)-237(o)28(wn)-237(a)-237(certain)-237(subset)-237(1)]TJ/F11 9.9626 Tf 113.508 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.264 -1.494 Td [(ro)28(w)]TJ/F9 4.9813 Tf 15.801 -0.997 Td [(i)]TJ/F8 9.9626 Tf 3.655 2.491 Td [(,)-256(eac)27(h)-237(elemen)28(t)-237(of)-237(whic)28(h)-237(corresp)-28(onds)]TJ -191.793 -11.955 Td [(to)-390(a)-389(certain)-390(elemen)28(t)-390(of)-389(1)]TJ/F11 9.9626 Tf 111.313 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.264 0 Td [(.)-613(The)-390(user)-389(do)-28(es)-390(not)-389(s)-1(et)-389(explicitly)-390(this)-389(mapping;)]TJ -130.577 -11.955 Td [(when)-392(the)-393(appl)1(ic)-1(ati)1(on)-393(needs)-392(to)-392(indicate)-393(to)-392(whic)28(h)-392(e)-1(lemen)28(t)-392(of)-392(the)-393(index)-392(space)-392(a)]TJ 0 -11.955 Td [(certain)-273(item)-273(is)-273(related,)-285(suc)28(h)-273(as)-273(the)-273(ro)28(w)-273(and)-273(column)-273(index)-273(of)-273(a)-273(matrix)-273(co)-27(e\016c)-1(ien)28(t,)]TJ 0 -11.956 Td [(it)-449(do)-27(es)-449(so)-449(in)-448(the)-449(\134global")-449(n)28(um)28(b)-28(ering,)-477(and)-449(the)-448(library)-449(will)-448(translate)-449(in)28(to)-449(the)]TJ 0 -11.955 Td [(appropriate)-333(\134lo)-28(cal")-333(n)28(um)27(b)-27(ering.)]TJ 14.944 -12.244 Td [(F)83(or)-273(a)-274(giv)28(en)-274(index)-274(space)-273(1)]TJ/F11 9.9626 Tf 109.331 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 21.99 0 Td [(there)-274(are)-273(m)-1(an)28(y)-273(p)-28(ossible)-274(asso)-28(ciated)-274(top)-27(ologies,)]TJ -146.265 -11.955 Td [(i.e.)-418(man)28(y)-254(di\013eren)27(t)-254(discretization)-254(stencils;)-281(th)28(us)-254(the)-254(description)-254(of)-254(the)-254(index)-255(space)]TJ 0 -11.956 Td [(is)-355(not)-355(completed)-355(un)28(til)-356(th)1(e)-356(user)-355(has)-355(de\014ned)-355(a)-355(sparsit)28(y)-355(pattern,)-361(either)-355(explicitly)]TJ 0 -11.955 Td [(through)]TJ/F30 9.9626 Tf 36.93 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf 49.66 0 Td [(or)-260(implicitly)-259(through)]TJ/F30 9.9626 Tf 92.223 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)-420(The)-260(descriptor)-259(is)-260(\014nalized)]TJ -225.886 -11.955 Td [(with)-354(a)-355(call)-354(to)]TJ/F30 9.9626 Tf 62.274 0 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 50.603 0 Td [(and)-354(a)-355(sparse)-354(matrix)-354(with)-355(a)-354(call)-354(to)]TJ/F30 9.9626 Tf 153.217 0 Td [(psb_spasb)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)-507(After)]TJ/F30 9.9626 Tf -313.167 -11.955 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 50.443 0 Td [(eac)28(h)-338(pro)-28(cess)]TJ/F11 9.9626 Tf 57.244 0 Td [(i)]TJ/F8 9.9626 Tf 6.802 0 Td [(will)-338(ha)28(v)27(e)-338(de\014ned)-338(a)-338(set)-339(of)-338(\134halo")-338(\050or)-338(\134ghost"\051)-339(i)1(ndices)]TJ/F11 9.9626 Tf -114.489 -11.955 Td [(n)]TJ/F8 9.9626 Tf 5.98 -1.495 Td [(ro)28(w)]TJ/F9 4.9813 Tf 15.802 -0.996 Td [(i)]TJ/F8 9.9626 Tf 5.985 2.491 Td [(+)-234(1)]TJ/F11 9.9626 Tf 16.722 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.263 -3.487 Td [(col)]TJ/F9 4.9813 Tf 12.176 -0.996 Td [(i)]TJ/F8 9.9626 Tf 3.655 4.483 Td [(,)-355(denoting)-351(elemen)27(ts)-351(of)-351(th)1(e)-351(index)-351(space)-351(that)-351(are)]TJ/F17 9.9626 Tf 209.596 0 Td [(not)]TJ/F8 9.9626 Tf 18.445 0 Td [(assigned)]TJ -307.624 -11.955 Td [(to)-284(pro)-28(cess)]TJ/F11 9.9626 Tf 45.92 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(;)-300(ho)28(w)27(ev)28(er)-284(the)-284(v)56(ariables)-284(asso)-28(ciated)-283(with)-284(them)-284(are)-284(needed)-284(to)-283(c)-1(omplete)]TJ -49.353 -11.956 Td [(computations)-409(a)-1(sso)-27(ciated)-410(with)-409(the)-410(sparse)-409(m)-1(atr)1(ix)]TJ/F11 9.9626 Tf 216.316 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(,)-429(an)1(d)-410(th)28(us)-410(they)-409(ha)28(v)27(e)-409(to)-410(b)-27(e)]TJ -223.788 -11.955 Td [(fetc)28(hed)-464(from)-464(\050)1(neigh)27(b)-27(ouring\051)-464(pro)-28(cesses.)-835(The)-464(descriptor)-464(of)-463(the)-464(index)-463(space)-464(is)]TJ 0 -11.955 Td [(built)-394(exactly)-394(for)-393(the)-394(purp)-28(ose)-394(of)-394(prop)-27(e)-1(r)1(ly)-394(sequencing)-394(the)-394(comm)28(unication)-394(steps)]TJ 0 -11.955 Td [(required)-333(to)-334(ac)28(hiev)28(e)-333(this)-334(ob)-55(jectiv)28(e)-1(.)]TJ 14.944 -12.245 Td [(A)-306(simple)-306(application)-305(structure)-306(will)-306(w)28(alk)-306(through)-306(the)-306(in)1(dex)-306(space)-306(allo)-28(cation,)]TJ -14.944 -11.955 Td [(matrix/v)28(ector)-334(creation)-333(and)-333(linear)-333(syste)-1(m)-333(solution)-333(as)-334(f)1(o)-1(l)1(lo)27(ws:)]TJ +0 g 0 G + 12.177 -20.793 Td [(1.)]TJ +0 g 0 G + [-500(Initialize)-333(parallel)-334(en)28(vironmen)28(t)-333(with)]TJ/F30 9.9626 Tf 169.42 0 Td [(psb_init)]TJ +0 g 0 G +/F8 9.9626 Tf -169.42 -21.082 Td [(2.)]TJ +0 g 0 G + [-500(Initialize)-333(index)-334(space)-333(with)]TJ/F30 9.9626 Tf 130.123 0 Td [(psb_cdall)]TJ +0 g 0 G +/F8 9.9626 Tf -130.123 -21.083 Td [(3.)]TJ +0 g 0 G + [-500(Allo)-28(cate)-301(sparse)-302(matrix)-301(and)-302(dense)-302(v)28(ectors)-301(with)]TJ/F30 9.9626 Tf 215.329 0 Td [(psb_spall)]TJ/F8 9.9626 Tf 50.077 0 Td [(and)]TJ/F30 9.9626 Tf 19.055 0 Td [(psb_geall)]TJ +0 g 0 G +/F8 9.9626 Tf -284.461 -21.082 Td [(4.)]TJ +0 g 0 G + [-500(Lo)-28(op)-411(o)28(v)28(er)-411(all)-411(lo)-28(cal)-411(ro)27(ws,)-430(generate)-411(matrix)-411(and)-411(v)27(ector)-411(en)28(tries,)-431(an)1(d)-412(in)1(s)-1(ert)]TJ 12.73 -11.955 Td [(them)-333(with)]TJ/F30 9.9626 Tf 48.153 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 50.393 0 Td [(and)]TJ/F30 9.9626 Tf 19.372 0 Td [(psb_geins)]TJ +0 g 0 G +/F8 9.9626 Tf -130.648 -21.083 Td [(5.)]TJ +0 g 0 G + [-500(Assem)28(ble)-334(the)-333(v)56(arious)-334(en)28(tities:)]TJ +0 g 0 G + 16.936 -21.082 Td [(\050a\051)]TJ +0 g 0 G +/F30 9.9626 Tf 17.711 0 Td [(psb_cdasb)]TJ +0 g 0 G +/F8 9.9626 Tf -18.264 -16.519 Td [(\050b\051)]TJ +0 g 0 G +/F30 9.9626 Tf 18.264 0 Td [(psb_spasb)]TJ +0 g 0 G +/F8 9.9626 Tf -17.157 -16.519 Td [(\050c\051)]TJ +0 g 0 G +/F30 9.9626 Tf 17.157 0 Td [(psb_geasb)]TJ +0 g 0 G +/F8 9.9626 Tf 122.541 -29.888 Td [(6)]TJ +0 g 0 G +ET endstream endobj -830 0 obj +856 0 obj << /Length 7719 >> @@ -4813,7 +4877,7 @@ ET endstream endobj -851 0 obj +877 0 obj << /Length 7473 >> @@ -4869,7 +4933,7 @@ ET endstream endobj -862 0 obj +888 0 obj << /Length 8464 >> @@ -5009,7 +5073,7 @@ ET endstream endobj -870 0 obj +896 0 obj << /Length 6827 >> @@ -5136,7 +5200,7 @@ ET endstream endobj -881 0 obj +907 0 obj << /Length 5178 >> @@ -5247,32 +5311,32 @@ ET endstream endobj -896 0 obj +922 0 obj << -/Length 5199 +/Length 5236 >> stream 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 150.705 706.129 Td [(3.1.1)-1150(Descriptor)-384(M)1(etho)-32(ds)]TJ 0 -18.549 Td [(get)]TJ +/F27 9.9626 Tf 150.705 706.129 Td [(3.1.1)-1150(Descriptor)-384(M)1(etho)-32(ds)]TJ 0 -18.549 Td [(3.1.2)-1150(get)]TJ ET q -1 0 0 1 166.827 687.78 cm +1 0 0 1 201.835 687.78 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 170.264 687.58 Td [(lo)-32(cal)]TJ +/F27 9.9626 Tf 205.272 687.58 Td [(lo)-32(cal)]TJ ET q -1 0 0 1 194.025 687.78 cm +1 0 0 1 229.032 687.78 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 197.462 687.58 Td [(ro)32(ws)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(lo)-32(cal)-383(ro)32(ws)]TJ +/F27 9.9626 Tf 232.469 687.58 Td [(ro)32(ws)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(lo)-32(cal)-383(ro)32(ws)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -46.757 -18.548 Td [(nr)-525(=)-525(desc%get_local_rows\050\051)]TJ +/F30 9.9626 Tf -81.764 -18.548 Td [(nr)-525(=)-525(desc%get_local_rows\050\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -22.174 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -5294,24 +5358,24 @@ BT 0 0 1 rg 0 0 1 RG [-401(1)]TJ 0 g 0 G - [(,)-418(it)-401(is)-401(equal)-401(to)]TJ/F14 9.9626 Tf 249.678 0 Td [(jI)]TJ/F10 6.9738 Tf 8.192 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(j)]TJ/F8 9.9626 Tf 5.431 0 Td [(+)]TJ/F14 9.9626 Tf 10.413 0 Td [(jB)]TJ/F10 6.9738 Tf 9.311 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(j)]TJ/F8 9.9626 Tf 2.767 0 Td [(.)-648(The)]TJ -292.426 -11.955 Td [(returned)-333(v)55(alue)-333(is)-333(sp)-28(eci\014c)-334(to)-333(the)-333(calling)-334(p)1(ro)-28(cess.)]TJ/F27 9.9626 Tf -24.906 -26.35 Td [(get)]TJ + [(,)-418(it)-401(is)-401(equal)-401(to)]TJ/F14 9.9626 Tf 249.678 0 Td [(jI)]TJ/F10 6.9738 Tf 8.192 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(j)]TJ/F8 9.9626 Tf 5.431 0 Td [(+)]TJ/F14 9.9626 Tf 10.413 0 Td [(jB)]TJ/F10 6.9738 Tf 9.311 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(j)]TJ/F8 9.9626 Tf 2.767 0 Td [(.)-648(The)]TJ -292.426 -11.955 Td [(returned)-333(v)55(alue)-333(is)-333(sp)-28(eci\014c)-334(to)-333(the)-333(calling)-334(p)1(ro)-28(cess.)]TJ/F27 9.9626 Tf -24.906 -26.35 Td [(3.1.3)-1150(get)]TJ ET q -1 0 0 1 166.827 489.912 cm +1 0 0 1 201.835 489.912 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 170.264 489.712 Td [(lo)-32(cal)]TJ +/F27 9.9626 Tf 205.272 489.712 Td [(lo)-32(cal)]TJ ET q -1 0 0 1 194.025 489.912 cm +1 0 0 1 229.032 489.912 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 197.462 489.712 Td [(cols)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(lo)-32(cal)-383(cols)]TJ +/F27 9.9626 Tf 232.469 489.712 Td [(cols)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(lo)-32(cal)-383(cols)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -46.757 -18.548 Td [(nc)-525(=)-525(desc%get_local_cols\050\051)]TJ +/F30 9.9626 Tf -81.764 -18.548 Td [(nc)-525(=)-525(desc%get_local_cols\050\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -22.174 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -5333,24 +5397,24 @@ BT 0 0 1 rg 0 0 1 RG [-344(1)]TJ 0 g 0 G - [(,)-346(it)-343(is)-344(equal)-343(to)]TJ/F14 9.9626 Tf 81.777 0 Td [(jI)]TJ/F10 6.9738 Tf 8.192 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(j)]TJ/F8 9.9626 Tf 5.049 0 Td [(+)]TJ/F14 9.9626 Tf 10.031 0 Td [(jB)]TJ/F10 6.9738 Tf 9.311 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(j)]TJ/F8 9.9626 Tf 5.049 0 Td [(+)]TJ/F14 9.9626 Tf 10.03 0 Td [(jH)]TJ/F10 6.9738 Tf 11.181 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(j)]TJ/F8 9.9626 Tf 2.768 0 Td [(.)-475(The)-344(returned)-343(v)55(al)1(ue)-344(is)-344(sp)-27(ec)-1(i)1(\014c)-344(to)-344(the)]TJ -153.339 -11.956 Td [(calling)-333(pro)-28(cess.)]TJ/F27 9.9626 Tf -24.906 -26.349 Td [(get)]TJ + [(,)-346(it)-343(is)-344(equal)-343(to)]TJ/F14 9.9626 Tf 81.777 0 Td [(jI)]TJ/F10 6.9738 Tf 8.192 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(j)]TJ/F8 9.9626 Tf 5.049 0 Td [(+)]TJ/F14 9.9626 Tf 10.031 0 Td [(jB)]TJ/F10 6.9738 Tf 9.311 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(j)]TJ/F8 9.9626 Tf 5.049 0 Td [(+)]TJ/F14 9.9626 Tf 10.03 0 Td [(jH)]TJ/F10 6.9738 Tf 11.181 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(j)]TJ/F8 9.9626 Tf 2.768 0 Td [(.)-475(The)-344(returned)-343(v)55(al)1(ue)-344(is)-344(sp)-27(ec)-1(i)1(\014c)-344(to)-344(the)]TJ -153.339 -11.956 Td [(calling)-333(pro)-28(cess.)]TJ/F27 9.9626 Tf -24.906 -26.349 Td [(3.1.4)-1150(get)]TJ ET q -1 0 0 1 166.827 280.088 cm +1 0 0 1 201.835 280.088 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 170.264 279.889 Td [(global)]TJ +/F27 9.9626 Tf 205.272 279.889 Td [(global)]TJ ET q -1 0 0 1 200.708 280.088 cm +1 0 0 1 235.716 280.088 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 204.145 279.889 Td [(ro)32(ws)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(global)-383(ro)32(ws)]TJ +/F27 9.9626 Tf 239.153 279.889 Td [(ro)32(ws)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(global)-383(ro)32(ws)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -53.44 -18.548 Td [(nr)-525(=)-525(desc%get_global_rows\050\051)]TJ +/F30 9.9626 Tf -88.448 -18.548 Td [(nr)-525(=)-525(desc%get_global_rows\050\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -22.174 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -5376,32 +5440,32 @@ ET endstream endobj -900 0 obj +926 0 obj << -/Length 4398 +/Length 4435 >> stream 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 99.895 706.129 Td [(get)]TJ +/F27 9.9626 Tf 99.895 706.129 Td [(3.1.5)-1150(get)]TJ ET q -1 0 0 1 116.018 706.328 cm +1 0 0 1 151.025 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 119.455 706.129 Td [(global)]TJ +/F27 9.9626 Tf 154.462 706.129 Td [(global)]TJ ET q -1 0 0 1 149.899 706.328 cm +1 0 0 1 184.906 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 153.336 706.129 Td [(cols)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(global)-383(cols)]TJ +/F27 9.9626 Tf 188.343 706.129 Td [(cols)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(global)-383(cols)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -53.441 -18.505 Td [(nr)-525(=)-525(desc%get_global_cols\050\051)]TJ +/F30 9.9626 Tf -88.448 -18.505 Td [(nr)-525(=)-525(desc%get_global_cols\050\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -22.105 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -5419,24 +5483,24 @@ BT 0 g 0 G 0 -20.174 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(The)-273(n)28(um)28(b)-28(er)-273(of)-272(global)-273(cols;)-293(usually)-273(this)-273(is)-272(e)-1(q)1(ual)-273(to)-273(the)-273(n)28(um)28(b)-28(er)]TJ -53.48 -11.956 Td [(of)-333(global)-334(ro)28(ws.)]TJ/F27 9.9626 Tf -24.907 -26.226 Td [(get)]TJ +/F8 9.9626 Tf 78.387 0 Td [(The)-273(n)28(um)28(b)-28(er)-273(of)-272(global)-273(cols;)-293(usually)-273(this)-273(is)-272(e)-1(q)1(ual)-273(to)-273(the)-273(n)28(um)28(b)-28(er)]TJ -53.48 -11.956 Td [(of)-333(global)-334(ro)28(ws.)]TJ/F27 9.9626 Tf -24.907 -26.226 Td [(3.1.6)-1150(get)]TJ ET q -1 0 0 1 116.018 520.998 cm +1 0 0 1 151.025 520.998 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 119.455 520.799 Td [(global)]TJ +/F27 9.9626 Tf 154.462 520.799 Td [(global)]TJ ET q -1 0 0 1 149.899 520.998 cm +1 0 0 1 184.906 520.998 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 153.336 520.799 Td [(indices)-383(|)-384(Get)-383(v)32(ector)-383(of)-384(global)-383(indices)]TJ +/F27 9.9626 Tf 188.343 520.799 Td [(indices)-383(|)-384(Get)-383(v)32(ector)-383(of)-384(global)-383(indices)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -53.441 -18.505 Td [(myidx)-525(=)-525(desc%get_global_indices\050[owned]\051)]TJ +/F30 9.9626 Tf -88.448 -18.505 Td [(myidx)-525(=)-525(desc%get_global_indices\050[owned]\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -22.105 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -5458,17 +5522,17 @@ BT 0 g 0 G 0 -20.174 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(The)-292(global)-292(ind)1(ice)-1(s,)-300(returned)-291(as)-292(an)-292(allo)-28(catable)-292(in)28(teger)-292(arra)28(y)-292(of)]TJ -53.48 -11.956 Td [(kind)]TJ/F30 9.9626 Tf 22.416 0 Td [(psb_lpk_)]TJ/F8 9.9626 Tf 45.164 0 Td [(and)-333(rank)-333(1.)]TJ/F27 9.9626 Tf -92.487 -26.226 Td [(get)]TJ +/F8 9.9626 Tf 78.387 0 Td [(The)-292(global)-292(ind)1(ice)-1(s,)-300(returned)-291(as)-292(an)-292(allo)-28(catable)-292(in)28(teger)-292(arra)28(y)-292(of)]TJ -53.48 -11.956 Td [(kind)]TJ/F30 9.9626 Tf 22.416 0 Td [(psb_lpk_)]TJ/F8 9.9626 Tf 45.164 0 Td [(and)-333(rank)-333(1.)]TJ/F27 9.9626 Tf -92.487 -26.226 Td [(3.1.7)-1150(get)]TJ ET q -1 0 0 1 116.018 267.673 cm +1 0 0 1 151.025 267.673 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 119.455 267.474 Td [(con)32(text)-383(|)-384(Get)-383(comm)32(unication)-384(con)32(text)]TJ +/F27 9.9626 Tf 154.462 267.474 Td [(con)32(text)-383(|)-384(Get)-383(comm)32(unication)-384(con)32(text)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -19.56 -18.505 Td [(ictxt)-525(=)-525(desc%get_context\050\051)]TJ +/F30 9.9626 Tf -54.567 -18.505 Td [(ictxt)-525(=)-525(desc%get_context\050\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -22.105 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -5494,165 +5558,165 @@ ET endstream endobj -905 0 obj +931 0 obj << -/Length 4852 +/Length 4956 >> stream 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 150.705 706.129 Td [(Clone)-383(|)-384(clone)-383(curren)32(t)-383(ob)-64(ject)]TJ +/F27 9.9626 Tf 150.705 706.129 Td [(3.1.8)-1150(Clone)-383(|)-384(clone)-383(curren)32(t)-383(ob)-64(ject)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf 0 -18.844 Td [(call)-1050(desc%clone\050descout,info\051)]TJ +/F30 9.9626 Tf 0 -18.389 Td [(call)-1050(desc%clone\050descout,info\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -22.65 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.557 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -20.902 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.781 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -20.902 Td [(desc)]TJ + 0 -19.781 Td [(desc)]TJ 0 g 0 G -/F8 9.9626 Tf 26.208 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -1.302 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ +/F8 9.9626 Tf 26.208 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -1.302 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -80.358 -34.605 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -80.358 -33.512 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -20.902 Td [(descout)]TJ + 0 -19.781 Td [(descout)]TJ 0 g 0 G /F8 9.9626 Tf 42.757 0 Td [(A)-333(cop)27(y)-333(of)-333(the)-334(in)1(put)-334(ob)-55(ject.)]TJ 0 g 0 G -/F27 9.9626 Tf -42.757 -20.902 Td [(info)]TJ +/F27 9.9626 Tf -42.757 -19.78 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -27.192 Td [(CNV)-383(|)-384(con)32(v)32(ert)-383(in)32(ternal)-384(storage)-383(format)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -25.834 Td [(3.1.9)-1150(CNV)-383(|)-384(con)32(v)32(ert)-383(in)32(ternal)-384(storage)-383(format)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf 0 -18.844 Td [(call)-1050(desc%cnv\050mold\051)]TJ +/F30 9.9626 Tf 0 -18.39 Td [(call)-1050(desc%cnv\050mold\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -22.65 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.556 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -20.902 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.781 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -20.902 Td [(desc)]TJ + 0 -19.781 Td [(desc)]TJ 0 g 0 G /F8 9.9626 Tf 26.208 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -1.302 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -80.358 -32.858 Td [(mold)]TJ +/F27 9.9626 Tf -80.358 -31.736 Td [(mold)]TJ 0 g 0 G /F8 9.9626 Tf 29.805 0 Td [(the)-333(desired)-334(in)28(teger)-333(storage)-334(format.)]TJ -4.899 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(Sp)-28(eci\014ed)-222(as:)-389(a)-222(ob)-56(ject)-222(of)-222(t)28(yp)-28(e)-222(deriv)28(e)-1(d)-222(from)-222(\050in)28(teger\051)]TJ/F30 9.9626 Tf 219.871 0 Td [(psb)]TJ ET q -1 0 0 1 411.8 355.452 cm +1 0 0 1 411.8 368.849 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 414.939 355.253 Td [(T)]TJ +/F30 9.9626 Tf 414.939 368.65 Td [(T)]TJ ET q -1 0 0 1 420.797 355.452 cm +1 0 0 1 420.797 368.849 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 423.935 355.253 Td [(base)]TJ +/F30 9.9626 Tf 423.935 368.65 Td [(base)]TJ ET q -1 0 0 1 445.484 355.452 cm +1 0 0 1 445.484 368.849 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 448.622 355.253 Td [(vect)]TJ +/F30 9.9626 Tf 448.622 368.65 Td [(vect)]TJ ET q -1 0 0 1 470.171 355.452 cm +1 0 0 1 470.171 368.849 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 473.309 355.253 Td [(type)]TJ/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -343.526 -22.895 Td [(The)]TJ/F30 9.9626 Tf 20.085 0 Td [(mold)]TJ/F8 9.9626 Tf 23.848 0 Td [(argumen)28(ts)-294(ma)28(y)-294(b)-28(e)-294(emplo)28(y)28(ed)-294(to)-294(in)28(terface)-294(with)-293(sp)-28(ecial)-294(devices,)-302(suc)28(h)-294(as)]TJ -43.933 -11.955 Td [(GPUs)-333(and)-334(other)-333(accelerators.)]TJ/F27 9.9626 Tf 0 -27.191 Td [(psb)]TJ +/F30 9.9626 Tf 473.309 368.65 Td [(type)]TJ/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -343.526 -21.557 Td [(The)]TJ/F30 9.9626 Tf 20.085 0 Td [(mold)]TJ/F8 9.9626 Tf 23.848 0 Td [(argumen)28(ts)-294(ma)28(y)-294(b)-28(e)-294(emplo)28(y)28(ed)-294(to)-294(in)28(terface)-294(with)-293(sp)-28(ecial)-294(devices,)-302(suc)28(h)-294(as)]TJ -43.933 -11.955 Td [(GPUs)-333(and)-334(other)-333(accelerators.)]TJ/F27 9.9626 Tf 0 -25.834 Td [(3.1.10)-1150(psb)]TJ ET q -1 0 0 1 168.641 293.411 cm +1 0 0 1 209.377 309.503 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 172.078 293.212 Td [(cd)]TJ +/F27 9.9626 Tf 212.814 309.304 Td [(cd)]TJ ET q -1 0 0 1 184.223 293.411 cm +1 0 0 1 224.959 309.503 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 187.66 293.212 Td [(get)]TJ +/F27 9.9626 Tf 228.396 309.304 Td [(get)]TJ ET q -1 0 0 1 203.782 293.411 cm +1 0 0 1 244.518 309.503 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 207.22 293.212 Td [(large)]TJ +/F27 9.9626 Tf 247.955 309.304 Td [(large)]TJ ET q -1 0 0 1 232.357 293.411 cm +1 0 0 1 273.093 309.503 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 235.794 293.212 Td [(threshold)-268(|)-268(Get)-268(threshold)-269(for)-268(index)-268(mapping)-268(switc)32(h)]TJ +/F27 9.9626 Tf 276.53 309.304 Td [(threshold)-458(|)-457(Get)-458(threshold)-458(for)-457(index)-458(map-)]TJ -85.089 -11.955 Td [(ping)-383(switc)32(h)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -85.089 -18.844 Td [(ith)-525(=)-525(psb_cd_get_large_threshold\050\051)]TJ +/F30 9.9626 Tf -40.736 -18.389 Td [(ith)-525(=)-525(psb_cd_get_large_threshold\050\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -22.65 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.557 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -20.902 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -33.797 -19.781 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -20.903 Td [(F)96(unction)-384(v)64(alue)]TJ + 0 -19.781 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.386 0 Td [(The)-333(curren)27(t)-333(v)56(alue)-334(for)-333(the)-333(size)-334(threshold.)]TJ/F27 9.9626 Tf -78.386 -27.191 Td [(psb)]TJ +/F8 9.9626 Tf 78.386 0 Td [(The)-333(curren)27(t)-333(v)56(alue)-334(for)-333(the)-333(size)-334(threshold.)]TJ/F27 9.9626 Tf -78.386 -25.833 Td [(3.1.11)-1150(psb)]TJ ET q -1 0 0 1 168.641 182.921 cm +1 0 0 1 209.377 192.207 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 172.078 182.722 Td [(cd)]TJ +/F27 9.9626 Tf 212.814 192.008 Td [(cd)]TJ ET q -1 0 0 1 184.223 182.921 cm +1 0 0 1 224.959 192.207 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 187.66 182.722 Td [(set)]TJ +/F27 9.9626 Tf 228.396 192.008 Td [(set)]TJ ET q -1 0 0 1 202.573 182.921 cm +1 0 0 1 243.309 192.207 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 206.01 182.722 Td [(large)]TJ +/F27 9.9626 Tf 246.746 192.008 Td [(large)]TJ ET q -1 0 0 1 231.147 182.921 cm +1 0 0 1 271.883 192.207 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 234.585 182.722 Td [(threshold)-323(|)-324(Set)-323(threshold)-323(for)-324(index)-323(mapping)-324(switc)32(h)]TJ +/F27 9.9626 Tf 275.32 192.008 Td [(threshold)-522(|)-522(Set)-522(threshold)-522(for)-523(index)-522(map-)]TJ -83.879 -11.956 Td [(ping)-383(switc)32(h)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -83.88 -18.844 Td [(call)-525(psb_cd_set_large_threshold\050ith\051)]TJ +/F30 9.9626 Tf -40.736 -18.389 Td [(call)-525(psb_cd_set_large_threshold\050ith\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -22.65 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.557 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -20.902 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.78 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G /F8 9.9626 Tf 166.874 -29.888 Td [(14)]TJ @@ -5661,425 +5725,139 @@ ET endstream endobj -910 0 obj +832 0 obj << -/Length 5879 +/Type /ObjStm +/N 100 +/First 874 +/Length 9084 >> stream -0 g 0 G -0 g 0 G -0 g 0 G -BT -/F27 9.9626 Tf 99.895 706.129 Td [(ith)]TJ -0 g 0 G -/F8 9.9626 Tf 18.985 0 Td [(the)-333(new)-334(threshold)-333(for)-333(comm)27(u)1(nication)-334(descriptors.)]TJ 5.922 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(greater)-333(than)-334(zero.)]TJ -24.907 -21.496 Td [(Note:)-756(the)-490(threshold)-489(v)56(alue)-489(is)-490(only)-489(queried)-489(b)28(y)-490(th)1(e)-490(library)-489(at)-489(the)-489(time)-490(a)-489(call)]TJ 0 -11.955 Td [(to)]TJ/F30 9.9626 Tf 13.432 0 Td [(psb_cdall)]TJ/F8 9.9626 Tf 51.648 0 Td [(is)-459(executed,)-491(therefore)-459(c)27(hangi)1(ng)-460(the)-459(threshold)-459(has)-459(no)-460(e\013ect)-459(on)]TJ -65.08 -11.955 Td [(comm)28(unication)-464(desc)-1(r)1(iptors)-465(that)-464(ha)28(v)28(e)-464(already)-464(b)-28(een)-464(initialized.)-837(Moreo)28(v)27(er)-464(the)]TJ 0 -11.955 Td [(threshold)-333(m)27(ust)-333(ha)28(v)28(e)-334(the)-333(same)-333(v)55(alue)-333(on)-333(all)-334(pro)-27(c)-1(esses.)]TJ/F27 9.9626 Tf 0 -25.823 Td [(get)]TJ -ET -q -1 0 0 1 116.018 575.323 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 119.455 575.124 Td [(p)]TJ -ET -q -1 0 0 1 126.507 575.323 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 129.944 575.124 Td [(adjcncy)-383(|)-384(Get)-383(pro)-32(cess)-383(adjacency)-384(list)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -30.049 -18.39 Td [(list)-525(=)-1050(desc%get_p_adjcncy\050\051)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -21.495 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.757 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.756 Td [(F)96(unction)-384(v)64(alue)]TJ -0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(The)-498(c)-1(u)1(rren)27(t)-498(list)-499(of)-498(adjacen)28(t)-499(pro)-28(cesses,)-540(i.e.)-940(pro)-27(cesse)-1(s)-498(with)]TJ -53.48 -11.955 Td [(whic)28(h)-334(th)1(e)-334(curren)28(t)-333(one)-334(has)-333(to)-333(exc)27(hange)-333(halo)-333(data.)]TJ/F27 9.9626 Tf -24.907 -25.824 Td [(set)]TJ -ET -q -1 0 0 1 114.808 458.147 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 118.246 457.947 Td [(p)]TJ -ET -q -1 0 0 1 125.298 458.147 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 128.735 457.947 Td [(adjcncy)-383(|)-384(Set)-383(pro)-32(cess)-383(adjacency)-384(list)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -28.84 -18.389 Td [(call)-525(desc%set_p_adjcncy\050list\051)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -21.496 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.756 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.757 Td [(list)]TJ -0 g 0 G -/F8 9.9626 Tf 20.321 0 Td [(the)-333(list)-334(of)-333(adjacen)28(t)-334(p)1(ro)-28(cesses.)]TJ 4.586 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(one-dimensional)-333(arra)28(y)-334(of)-333(in)28(tegers)-334(of)-333(kind)]TJ/F30 9.9626 Tf 247.378 0 Td [(psb_ipk_)]TJ/F8 9.9626 Tf 41.843 0 Td [(.)]TJ -314.128 -21.496 Td [(Note:)-643(this)-432(metho)-28(d)-432(can)-433(b)-27(e)-433(called)-432(after)-433(a)-432(call)-432(to)]TJ/F30 9.9626 Tf 216.836 0 Td [(psb_cdall)]TJ/F8 9.9626 Tf 51.381 0 Td [(and)-432(b)-28(efore)-432(a)-433(call)]TJ -268.217 -11.955 Td [(to)]TJ/F30 9.9626 Tf 12.939 0 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)-674(The)-410(user)-410(is)-409(s)-1(p)-27(ecifying)-410(here)-410(some)-410(kno)28(wledge)-410(ab)-28(out)-409(whic)27(h)-409(pro-)]TJ -60.012 -11.955 Td [(cesses)-304(are)-304(top)-28(ological)-304(neigh)28(b)-28(ours)-304(of)-304(the)-304(curren)28(t)-304(pro)-28(cess.)-435(The)-304(a)28(v)56(ailabilit)27(y)-304(of)-304(this)]TJ 0 -11.956 Td [(information)-333(ma)28(y)-334(sp)-28(eed)-333(up)-333(the)-334(execution)-333(of)-333(the)-334(assem)28(bly)-333(call)]TJ/F30 9.9626 Tf 268.079 0 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)]TJ/F27 9.9626 Tf -315.152 -25.823 Td [(fnd)]TJ -ET -q -1 0 0 1 116.813 247.744 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 120.251 247.544 Td [(o)32(wner)-383(|)-384(Find)-383(the)-383(o)32(wner)-384(pro)-32(cess)-383(of)-383(a)-384(set)-383(of)-383(indices)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -20.356 -18.389 Td [(call)-525(desc%fnd_owner\050idx,iprc,info\051)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -21.496 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.756 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.757 Td [(idx)]TJ -0 g 0 G -/F8 9.9626 Tf 20.576 0 Td [(the)-333(list)-334(of)-333(global)-333(indices)-334(for)-333(whic)28(h)-333(w)27(e)-333(need)-333(the)-334(o)28(wning)-333(pro)-28(cesses.)]TJ 4.331 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(one-dimensional)-333(arra)28(y)-334(of)-333(in)28(tegers)-334(of)-333(kind)]TJ/F30 9.9626 Tf 247.378 0 Td [(psb_lpk_)]TJ/F8 9.9626 Tf 41.843 0 Td [(.)]TJ -0 g 0 G - -147.253 -29.888 Td [(15)]TJ -0 g 0 G -ET - -endstream -endobj -917 0 obj +825 0 826 57 19 114 822 170 836 329 833 471 834 617 838 764 835 820 841 925 +843 1039 23 1096 845 1152 846 1209 847 1266 848 1322 849 1379 850 1435 851 1490 852 1547 +840 1604 855 1734 839 1868 857 2016 858 2072 859 2128 860 2184 861 2239 862 2295 863 2351 +864 2407 865 2463 866 2519 867 2575 868 2631 869 2687 870 2743 871 2799 854 2856 876 2986 +853 3128 874 3280 878 3427 27 3484 879 3540 880 3597 881 3654 882 3711 883 3768 884 3825 +31 3882 875 3938 887 4081 885 4215 889 4362 35 4418 39 4473 890 4528 886 4585 895 4703 +891 4853 892 5000 893 5152 897 5304 898 5361 899 5418 900 5475 901 5532 902 5589 894 5646 +906 5738 903 5880 904 6032 908 6184 909 6240 910 6296 911 6352 912 6407 913 6463 914 6519 +915 6575 916 6631 917 6687 905 6744 921 6836 918 6978 919 7124 923 7270 43 7327 47 7383 +51 7439 55 7495 920 7551 925 7669 927 7783 59 7839 63 7894 67 7949 924 8004 930 8096 +% 825 0 obj << -/Length 9166 +/D [823 0 R /XYZ 149.705 753.953 null] >> -stream -0 g 0 G -0 g 0 G -0 g 0 G -BT -/F27 9.9626 Tf 150.705 706.129 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.686 Td [(iprc)]TJ -0 g 0 G -/F8 9.9626 Tf 24.339 0 Td [(the)-333(list)-334(of)-333(pro)-28(cesses)-333(o)28(w)-1(n)1(ing)-334(the)-333(indices)-333(in)]TJ/F30 9.9626 Tf 183.783 0 Td [(idx)]TJ/F8 9.9626 Tf 15.691 0 Td [(.)]TJ -198.907 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-525(as:)-828(an)-526(allo)-27(catable)-526(one-dimensional)-525(arra)28(y)-525(of)-526(in)28(tegers)-525(of)-525(kind)]TJ/F30 9.9626 Tf 0 -11.955 Td [(psb_ipk_)]TJ/F8 9.9626 Tf 41.843 0 Td [(.)]TJ -66.749 -21.318 Td [(Note:)-417(th)1(is)-278(metho)-28(d)-277(ma)28(y)-278(or)-277(ma)27(y)-277(not)-278(actual)1(ly)-278(require)-277(comm)27(unications,)-288(dep)-28(ending)]TJ 0 -11.956 Td [(on)-466(the)-465(exact)-466(in)28(ternal)-466(data)-465(storage;)-532(giv)28(en)-466(that)-465(the)-466(c)28(hoice)-466(of)-466(storage)-465(ma)27(y)-465(b)-28(e)]TJ 0 -11.955 Td [(altered)-440(b)28(y)-440(run)28(time)-440(parameters,)-467(it)-439(is)-440(nece)-1(ssary)-439(for)-440(safet)27(y)-439(that)-440(this)-440(metho)-28(d)-440(is)]TJ 0 -11.955 Td [(called)-333(b)27(y)-333(all)-333(pro)-28(cesses.)]TJ/F27 9.9626 Tf 0 -25.793 Td [(3.1.2)-1150(Named)-383(Constan)32(ts)]TJ -0 g 0 G - 0 -18.389 Td [(psb)]TJ -ET -q -1 0 0 1 168.641 525.501 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 172.078 525.302 Td [(none)]TJ -ET -q -1 0 0 1 196.475 525.501 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 204.894 525.302 Td [(Generic)-333(no-op;)]TJ -0 g 0 G -/F27 9.9626 Tf -54.189 -19.685 Td [(psb)]TJ -ET -q -1 0 0 1 168.641 505.816 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 172.078 505.617 Td [(ro)-32(ot)]TJ -ET -q -1 0 0 1 193.715 505.816 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 202.133 505.617 Td [(Default)-333(ro)-28(ot)-333(pro)-28(cess)-334(for)-333(broadcast)-333(and)-333(sc)-1(atter)-333(op)-28(erations;)]TJ -0 g 0 G -/F27 9.9626 Tf -51.428 -19.686 Td [(psb)]TJ -ET -q -1 0 0 1 168.641 486.131 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 172.078 485.931 Td [(nohalo)]TJ -ET -q -1 0 0 1 205.705 486.131 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 214.123 485.931 Td [(Do)-333(not)-334(fetc)28(h)-333(halo)-333(e)-1(l)1(e)-1(men)28(ts;)]TJ -0 g 0 G -/F27 9.9626 Tf -63.418 -19.685 Td [(psb)]TJ -ET -q -1 0 0 1 168.641 466.445 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 172.078 466.246 Td [(halo)]TJ -ET -q -1 0 0 1 193.611 466.445 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 202.03 466.246 Td [(F)83(etc)28(h)-333(halo)-333(e)-1(lemen)28(ts)-333(from)-333(neigh)27(b)-27(ouring)-334(pro)-27(cesse)-1(s;)]TJ -0 g 0 G -/F27 9.9626 Tf -51.325 -19.686 Td [(psb)]TJ -ET -q -1 0 0 1 168.641 446.76 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 172.078 446.56 Td [(sum)]TJ -ET -q -1 0 0 1 193.197 446.76 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 201.616 446.56 Td [(Sum)-333(o)27(v)28(erlapp)-27(ed)-334(elemen)28(ts)]TJ -0 g 0 G -/F27 9.9626 Tf -50.911 -19.685 Td [(psb)]TJ -ET -q -1 0 0 1 168.641 427.074 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 172.078 426.875 Td [(a)32(vg)]TJ -ET -q -1 0 0 1 189.792 427.074 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 198.211 426.875 Td [(Av)28(erage)-334(o)28(v)28(erlapp)-28(ed)-333(elemen)28(ts)]TJ -0 g 0 G -/F27 9.9626 Tf -47.506 -19.685 Td [(psb)]TJ -ET -q -1 0 0 1 168.641 407.389 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 172.078 407.19 Td [(comm)]TJ -ET -q -1 0 0 1 202.681 407.389 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 206.118 407.19 Td [(halo)]TJ -ET -q -1 0 0 1 227.651 407.389 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 236.07 407.19 Td [(Exc)28(hange)-333(data)-334(based)-333(on)-333(the)]TJ/F30 9.9626 Tf 126.387 0 Td [(halo_index)]TJ/F8 9.9626 Tf 55.624 0 Td [(list;)]TJ -0 g 0 G -/F27 9.9626 Tf -267.376 -19.686 Td [(psb)]TJ -ET -q -1 0 0 1 168.641 387.704 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 172.078 387.504 Td [(comm)]TJ -ET -q -1 0 0 1 202.681 387.704 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 206.118 387.504 Td [(ext)]TJ -ET -q -1 0 0 1 222.559 387.704 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 230.978 387.504 Td [(Exc)28(hange)-333(data)-334(based)-333(on)-333(the)]TJ/F30 9.9626 Tf 126.387 0 Td [(ext_index)]TJ/F8 9.9626 Tf 50.394 0 Td [(list;)]TJ -0 g 0 G -/F27 9.9626 Tf -257.054 -19.685 Td [(psb)]TJ -ET -q -1 0 0 1 168.641 368.018 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 172.078 367.819 Td [(comm)]TJ -ET -q -1 0 0 1 202.681 368.018 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 206.118 367.819 Td [(o)32(vr)]TJ -ET -q -1 0 0 1 222.981 368.018 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 231.4 367.819 Td [(Exc)28(hange)-333(data)-334(based)-333(on)-333(the)]TJ/F30 9.9626 Tf 126.387 0 Td [(ovrlap_index)]TJ/F8 9.9626 Tf 66.085 0 Td [(list;)]TJ -0 g 0 G -/F27 9.9626 Tf -273.167 -19.685 Td [(psb)]TJ -ET -q -1 0 0 1 168.641 348.333 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 172.078 348.134 Td [(comm)]TJ -ET -q -1 0 0 1 202.681 348.333 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 206.118 348.134 Td [(mo)32(v)]TJ -ET -q -1 0 0 1 227.81 348.333 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 236.229 348.134 Td [(Exc)28(hange)-333(data)-334(based)-333(on)-333(the)]TJ/F30 9.9626 Tf 126.387 0 Td [(ovr_mst_idx)]TJ/F8 9.9626 Tf 60.855 0 Td [(list;)]TJ/F16 11.9552 Tf -272.766 -27.786 Td [(3.2)-1125(Sparse)-375(Matrix)-375(class)]TJ/F8 9.9626 Tf 0 -18.389 Td [(The)]TJ/F30 9.9626 Tf 20.653 0 Td [(psb)]TJ -ET -q -1 0 0 1 187.676 302.158 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 190.814 301.959 Td [(Tspmat)]TJ -ET -q -1 0 0 1 222.824 302.158 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 225.962 301.959 Td [(type)]TJ/F8 9.9626 Tf 24.416 0 Td [(class)-351(con)28(tains)-351(all)-351(information)-350(ab)-28(out)-351(the)-351(lo)-27(cal)-351(p)-28(ortion)-351(of)]TJ -99.673 -11.955 Td [(the)-249(sparse)-249(matrix)-248(and)-249(its)-249(storage)-249(mo)-27(de.)-417(Its)-248(design)-249(is)-249(based)-249(on)-248(the)-249(ST)83(A)84(TE)-249(design)]TJ 0 -11.955 Td [(pattern)-347([)]TJ -1 0 0 rg 1 0 0 RG - [(13)]TJ -0 g 0 G - [(])-346(as)-347(detailed)-347(in)-347([)]TJ -1 0 0 rg 1 0 0 RG - [(11)]TJ -0 g 0 G - [(])1(;)-354(the)-347(t)28(yp)-28(e)-346(declaration)-347(is)-347(sho)28(wn)-347(in)-346(\014gure)]TJ -0 0 1 rg 0 0 1 RG - [-347(4)]TJ -0 g 0 G - [-347(where)]TJ/F30 9.9626 Tf 0 -11.956 Td [(T)]TJ/F8 9.9626 Tf 8.551 0 Td [(is)-333(a)-334(placeholder)-333(for)-333(the)-334(data)-333(t)28(yp)-28(e)-333(and)-333(precision)-334(v)56(arian)28(ts)]TJ -0 g 0 G -/F27 9.9626 Tf -8.551 -19.445 Td [(S)]TJ -0 g 0 G -/F8 9.9626 Tf 11.346 0 Td [(Single)-333(precision)-334(real;)]TJ -0 g 0 G -/F27 9.9626 Tf -11.346 -19.685 Td [(D)]TJ -0 g 0 G -/F8 9.9626 Tf 13.768 0 Td [(Double)-333(precision)-334(real;)]TJ -0 g 0 G -/F27 9.9626 Tf -13.768 -19.686 Td [(C)]TJ -0 g 0 G -/F8 9.9626 Tf 13.256 0 Td [(Single)-333(precision)-334(complex;)]TJ -0 g 0 G -/F27 9.9626 Tf -13.256 -19.685 Td [(Z)]TJ -0 g 0 G -/F8 9.9626 Tf 11.983 0 Td [(Double)-333(precision)-334(complex.)]TJ -11.983 -19.446 Td [(The)-222(actual)-222(data)-223(is)-222(con)28(tained)-222(in)-222(the)-223(p)-27(olymorphic)-223(comp)-27(onen)27(t)]TJ/F30 9.9626 Tf 255.514 0 Td [(a%a)]TJ/F8 9.9626 Tf 17.905 0 Td [(of)-222(t)28(yp)-28(e)]TJ/F30 9.9626 Tf 31.549 0 Td [(psb)]TJ -ET -q -1 0 0 1 471.991 168.346 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 475.13 168.146 Td [(T)]TJ -ET -q -1 0 0 1 480.988 168.346 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 484.126 168.146 Td [(base)]TJ -ET -q -1 0 0 1 505.675 168.346 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 508.813 168.146 Td [(sparse)]TJ -ET -q -1 0 0 1 540.823 168.346 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 543.961 168.146 Td [(mat)]TJ/F8 9.9626 Tf 15.691 0 Td [(;)]TJ -408.947 -11.955 Td [(its)-300(sp)-28(eci\014c)-301(la)28(y)28(out)-300(can)-301(b)-27(e)-301(c)28(hosen)-301(d)1(ynamically)-301(among)-300(the)-301(pr)1(e)-1(d)1(e)-1(\014n)1(e)-1(d)-300(t)28(yp)-28(es,)-307(or)-300(an)]TJ 0 -11.955 Td [(en)28(tirely)-419(new)-419(storage)-419(la)28(y)27(out)-419(can)-419(b)-27(e)-419(implemen)27(ted)-419(an)1(d)-419(passe)-1(d)-418(to)-419(the)-419(library)-419(at)]TJ 0 -11.955 Td [(run)28(time)-420(via)-419(the)]TJ/F30 9.9626 Tf 73.447 0 Td [(psb_spasb)]TJ/F8 9.9626 Tf 51.252 0 Td [(routine.)-703(The)-419(follo)28(wing)-420(v)28(ery)-419(common)-420(formats)-419(are)]TJ -124.699 -11.955 Td [(precompiled)-333(in)-334(PSBLAS)-333(and)-333(th)28(us)-334(are)-333(alw)28(a)28(ys)-334(a)28(v)56(ailable:)]TJ -0 g 0 G - 166.874 -29.888 Td [(16)]TJ -0 g 0 G -ET - -endstream -endobj -826 0 obj +% 826 0 obj << -/Type /ObjStm -/N 100 -/First 865 -/Length 9099 +/D [823 0 R /XYZ 303.562 347.015 null] >> -stream -813 0 829 130 812 264 831 412 832 468 833 524 834 580 835 635 836 691 837 747 -838 803 839 859 840 915 841 971 842 1027 843 1083 844 1139 845 1195 828 1252 850 1382 -827 1524 848 1676 852 1823 27 1880 853 1936 854 1993 855 2050 856 2107 857 2164 858 2221 -31 2278 849 2334 861 2477 859 2611 863 2758 35 2814 39 2869 864 2924 860 2981 869 3099 -865 3249 866 3396 867 3548 871 3700 872 3757 873 3814 874 3871 875 3928 876 3985 868 4042 -880 4134 877 4276 878 4428 882 4580 883 4636 884 4692 885 4748 886 4803 887 4859 888 4915 -889 4971 890 5027 891 5083 879 5140 895 5232 892 5374 893 5520 897 5666 43 5723 47 5779 -51 5835 55 5891 894 5947 899 6065 901 6179 59 6235 63 6290 67 6345 898 6400 904 6492 -906 6606 71 6663 75 6719 907 6775 79 6832 83 6888 903 6944 909 7036 911 7150 87 7206 -91 7261 95 7316 908 7371 916 7463 912 7613 913 7769 914 7919 918 8064 99 8121 103 8177 -% 813 0 obj +% 19 0 obj +<< +/D [823 0 R /XYZ 150.705 272.271 null] +>> +% 822 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F30 784 0 R /F9 817 0 R /F17 750 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F14 813 0 R /F11 796 0 R /F10 812 0 R /F16 582 0 R >> +/XObject << /Im2 821 0 R >> /ProcSet [ /PDF /Text ] >> -% 829 0 obj +% 836 0 obj << /Type /Page -/Contents 830 0 R -/Resources 828 0 R +/Contents 837 0 R +/Resources 835 0 R /MediaBox [0 0 595.276 841.89] -/Parent 847 0 R -/Annots [ 812 0 R ] +/Parent 777 0 R +/Annots [ 833 0 R 834 0 R ] >> -% 812 0 obj +% 833 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [406.358 354.515 413.331 366.47] +/A << /S /GoTo /D (section.3) >> +>> +% 834 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [173.863 318.352 180.837 330.307] +/A << /S /GoTo /D (section.6) >> +>> +% 838 0 obj +<< +/D [836 0 R /XYZ 98.895 753.953 null] +>> +% 835 0 obj +<< +/Font << /F27 584 0 R /F8 585 0 R /F14 813 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 841 0 obj +<< +/Type /Page +/Contents 842 0 R +/Resources 840 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 777 0 R +>> +% 843 0 obj +<< +/D [841 0 R /XYZ 149.705 753.953 null] +>> +% 23 0 obj +<< +/D [841 0 R /XYZ 150.705 716.092 null] +>> +% 845 0 obj +<< +/D [841 0 R /XYZ 150.705 284.758 null] +>> +% 846 0 obj +<< +/D [841 0 R /XYZ 150.705 263.953 null] +>> +% 847 0 obj +<< +/D [841 0 R /XYZ 150.705 242.87 null] +>> +% 848 0 obj +<< +/D [841 0 R /XYZ 150.705 221.788 null] +>> +% 849 0 obj +<< +/D [841 0 R /XYZ 150.705 188.75 null] +>> +% 850 0 obj +<< +/D [841 0 R /XYZ 150.705 167.6 null] +>> +% 851 0 obj +<< +/D [841 0 R /XYZ 150.705 148.591 null] +>> +% 852 0 obj +<< +/D [841 0 R /XYZ 150.705 132.072 null] +>> +% 840 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F30 810 0 R /F9 844 0 R /F17 776 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 855 0 obj +<< +/Type /Page +/Contents 856 0 R +/Resources 854 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 873 0 R +/Annots [ 839 0 R ] +>> +% 839 0 obj << /Type /Annot /Subtype /Link @@ -6087,81 +5865,81 @@ stream /Rect [176.109 690.964 182.571 703.28] /A << /S /GoTo /D (Hfootnote.3) >> >> -% 831 0 obj +% 857 0 obj << -/D [829 0 R /XYZ 98.895 753.953 null] +/D [855 0 R /XYZ 98.895 753.953 null] >> -% 832 0 obj +% 858 0 obj << -/D [829 0 R /XYZ 99.895 716.092 null] +/D [855 0 R /XYZ 99.895 716.092 null] >> -% 833 0 obj +% 859 0 obj << -/D [829 0 R /XYZ 99.895 686.739 null] +/D [855 0 R /XYZ 99.895 686.739 null] >> -% 834 0 obj +% 860 0 obj << -/D [829 0 R /XYZ 99.895 618.93 null] +/D [855 0 R /XYZ 99.895 618.93 null] >> -% 835 0 obj +% 861 0 obj << -/D [829 0 R /XYZ 99.895 596.257 null] +/D [855 0 R /XYZ 99.895 596.257 null] >> -% 836 0 obj +% 862 0 obj << -/D [829 0 R /XYZ 99.895 573.861 null] +/D [855 0 R /XYZ 99.895 573.861 null] >> -% 837 0 obj +% 863 0 obj << -/D [829 0 R /XYZ 99.895 539.509 null] +/D [855 0 R /XYZ 99.895 539.509 null] >> -% 838 0 obj +% 864 0 obj << -/D [829 0 R /XYZ 99.895 517.113 null] +/D [855 0 R /XYZ 99.895 517.113 null] >> -% 839 0 obj +% 865 0 obj << -/D [829 0 R /XYZ 99.895 494.716 null] +/D [855 0 R /XYZ 99.895 494.716 null] >> -% 840 0 obj +% 866 0 obj << -/D [829 0 R /XYZ 99.895 469.986 null] +/D [855 0 R /XYZ 99.895 469.986 null] >> -% 841 0 obj +% 867 0 obj << -/D [829 0 R /XYZ 99.895 440.855 null] +/D [855 0 R /XYZ 99.895 440.855 null] >> -% 842 0 obj +% 868 0 obj << -/D [829 0 R /XYZ 99.895 411.448 null] +/D [855 0 R /XYZ 99.895 411.448 null] >> -% 843 0 obj +% 869 0 obj << -/D [829 0 R /XYZ 99.895 393.995 null] +/D [855 0 R /XYZ 99.895 393.995 null] >> -% 844 0 obj +% 870 0 obj << -/D [829 0 R /XYZ 99.895 376.819 null] +/D [855 0 R /XYZ 99.895 376.819 null] >> -% 845 0 obj +% 871 0 obj << -/D [829 0 R /XYZ 115.138 139.255 null] +/D [855 0 R /XYZ 115.138 139.255 null] >> -% 828 0 obj +% 854 0 obj << -/Font << /F8 573 0 R /F30 784 0 R /F7 785 0 R /F32 788 0 R /F31 790 0 R /F45 846 0 R >> +/Font << /F8 585 0 R /F30 810 0 R /F7 811 0 R /F32 814 0 R /F31 816 0 R /F45 872 0 R >> /ProcSet [ /PDF /Text ] >> -% 850 0 obj +% 876 0 obj << /Type /Page -/Contents 851 0 R -/Resources 849 0 R +/Contents 877 0 R +/Resources 875 0 R /MediaBox [0 0 595.276 841.89] -/Parent 847 0 R -/Annots [ 827 0 R 848 0 R ] +/Parent 873 0 R +/Annots [ 853 0 R 874 0 R ] >> -% 827 0 obj +% 853 0 obj << /Type /Annot /Subtype /Link @@ -6169,7 +5947,7 @@ stream /Rect [269.731 674.788 284.454 683.699] /A << /S /GoTo /D (subsection.2.3) >> >> -% 848 0 obj +% 874 0 obj << /Type /Annot /Subtype /Link @@ -6177,57 +5955,57 @@ stream /Rect [169.998 271.903 176.972 282.751] /A << /S /GoTo /D (section.3) >> >> -% 852 0 obj +% 878 0 obj << -/D [850 0 R /XYZ 149.705 753.953 null] +/D [876 0 R /XYZ 149.705 753.953 null] >> % 27 0 obj << -/D [850 0 R /XYZ 150.705 716.092 null] +/D [876 0 R /XYZ 150.705 716.092 null] >> -% 853 0 obj +% 879 0 obj << -/D [850 0 R /XYZ 150.705 671.799 null] +/D [876 0 R /XYZ 150.705 671.799 null] >> -% 854 0 obj +% 880 0 obj << -/D [850 0 R /XYZ 150.705 649.383 null] +/D [876 0 R /XYZ 150.705 649.383 null] >> -% 855 0 obj +% 881 0 obj << -/D [850 0 R /XYZ 150.705 576.158 null] +/D [876 0 R /XYZ 150.705 576.158 null] >> -% 856 0 obj +% 882 0 obj << -/D [850 0 R /XYZ 150.705 530.385 null] +/D [876 0 R /XYZ 150.705 530.385 null] >> -% 857 0 obj +% 883 0 obj << -/D [850 0 R /XYZ 150.705 497.951 null] +/D [876 0 R /XYZ 150.705 497.951 null] >> -% 858 0 obj +% 884 0 obj << -/D [850 0 R /XYZ 150.705 478.303 null] +/D [876 0 R /XYZ 150.705 478.303 null] >> % 31 0 obj << -/D [850 0 R /XYZ 150.705 424.511 null] +/D [876 0 R /XYZ 150.705 424.511 null] >> -% 849 0 obj +% 875 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F11 770 0 R /F9 817 0 R /F30 784 0 R /F16 570 0 R /F17 750 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F11 796 0 R /F9 844 0 R /F30 810 0 R /F16 582 0 R /F17 776 0 R >> /ProcSet [ /PDF /Text ] >> -% 861 0 obj +% 887 0 obj << /Type /Page -/Contents 862 0 R -/Resources 860 0 R +/Contents 888 0 R +/Resources 886 0 R /MediaBox [0 0 595.276 841.89] -/Parent 847 0 R -/Annots [ 859 0 R ] +/Parent 873 0 R +/Annots [ 885 0 R ] >> -% 859 0 obj +% 885 0 obj << /Type /Annot /Subtype /Link @@ -6235,37 +6013,37 @@ stream /Rect [269.318 174.287 276.292 185.135] /A << /S /GoTo /D (section.6) >> >> -% 863 0 obj +% 889 0 obj << -/D [861 0 R /XYZ 98.895 753.953 null] +/D [887 0 R /XYZ 98.895 753.953 null] >> % 35 0 obj << -/D [861 0 R /XYZ 99.895 716.092 null] +/D [887 0 R /XYZ 99.895 716.092 null] >> % 39 0 obj << -/D [861 0 R /XYZ 99.895 280.417 null] +/D [887 0 R /XYZ 99.895 280.417 null] >> -% 864 0 obj +% 890 0 obj << -/D [861 0 R /XYZ 342.427 237.273 null] +/D [887 0 R /XYZ 342.427 237.273 null] >> -% 860 0 obj +% 886 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F30 784 0 R /F27 572 0 R /F14 787 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F30 810 0 R /F27 584 0 R /F14 813 0 R >> /ProcSet [ /PDF /Text ] >> -% 869 0 obj +% 895 0 obj << /Type /Page -/Contents 870 0 R -/Resources 868 0 R +/Contents 896 0 R +/Resources 894 0 R /MediaBox [0 0 595.276 841.89] -/Parent 847 0 R -/Annots [ 865 0 R 866 0 R 867 0 R ] +/Parent 873 0 R +/Annots [ 891 0 R 892 0 R 893 0 R ] >> -% 865 0 obj +% 891 0 obj << /Type /Annot /Subtype /Link @@ -6273,7 +6051,7 @@ stream /Rect [452.103 399.657 459.077 411.612] /A << /S /GoTo /D (section.6) >> >> -% 866 0 obj +% 892 0 obj << /Type /Annot /Subtype /Link @@ -6281,7 +6059,7 @@ stream /Rect [356.323 194.074 371.046 204.923] /A << /S /GoTo /D (subsection.3.3) >> >> -% 867 0 obj +% 893 0 obj << /Type /Annot /Subtype /Link @@ -6289,45 +6067,45 @@ stream /Rect [356.323 149.756 371.046 160.604] /A << /S /GoTo /D (subsection.3.3) >> >> -% 871 0 obj +% 897 0 obj << -/D [869 0 R /XYZ 149.705 753.953 null] +/D [895 0 R /XYZ 149.705 753.953 null] >> -% 872 0 obj +% 898 0 obj << -/D [869 0 R /XYZ 150.705 294.274 null] +/D [895 0 R /XYZ 150.705 294.274 null] >> -% 873 0 obj +% 899 0 obj << -/D [869 0 R /XYZ 150.705 278.093 null] +/D [895 0 R /XYZ 150.705 278.093 null] >> -% 874 0 obj +% 900 0 obj << -/D [869 0 R /XYZ 150.705 261.911 null] +/D [895 0 R /XYZ 150.705 261.911 null] >> -% 875 0 obj +% 901 0 obj << -/D [869 0 R /XYZ 150.705 245.729 null] +/D [895 0 R /XYZ 150.705 245.729 null] >> -% 876 0 obj +% 902 0 obj << -/D [869 0 R /XYZ 150.705 229.547 null] +/D [895 0 R /XYZ 150.705 229.547 null] >> -% 868 0 obj +% 894 0 obj << -/Font << /F14 787 0 R /F8 573 0 R /F27 572 0 R >> +/Font << /F14 813 0 R /F8 585 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 880 0 obj +% 906 0 obj << /Type /Page -/Contents 881 0 R -/Resources 879 0 R +/Contents 907 0 R +/Resources 905 0 R /MediaBox [0 0 595.276 841.89] -/Parent 847 0 R -/Annots [ 877 0 R 878 0 R ] +/Parent 873 0 R +/Annots [ 903 0 R 904 0 R ] >> -% 877 0 obj +% 903 0 obj << /Type /Annot /Subtype /Link @@ -6335,7 +6113,7 @@ stream /Rect [305.513 611.433 320.236 622.281] /A << /S /GoTo /D (subsection.3.3) >> >> -% 878 0 obj +% 904 0 obj << /Type /Annot /Subtype /Link @@ -6343,61 +6121,61 @@ stream /Rect [305.513 564.905 320.236 575.753] /A << /S /GoTo /D (subsection.3.3) >> >> -% 882 0 obj +% 908 0 obj << -/D [880 0 R /XYZ 98.895 753.953 null] +/D [906 0 R /XYZ 98.895 753.953 null] >> -% 883 0 obj +% 909 0 obj << -/D [880 0 R /XYZ 99.895 716.092 null] +/D [906 0 R /XYZ 99.895 716.092 null] >> -% 884 0 obj +% 910 0 obj << -/D [880 0 R /XYZ 99.895 701.526 null] +/D [906 0 R /XYZ 99.895 701.526 null] >> -% 885 0 obj +% 911 0 obj << -/D [880 0 R /XYZ 99.895 684.24 null] +/D [906 0 R /XYZ 99.895 684.24 null] >> -% 886 0 obj +% 912 0 obj << -/D [880 0 R /XYZ 99.895 666.954 null] +/D [906 0 R /XYZ 99.895 666.954 null] >> -% 887 0 obj +% 913 0 obj << -/D [880 0 R /XYZ 99.895 649.667 null] +/D [906 0 R /XYZ 99.895 649.667 null] >> -% 888 0 obj +% 914 0 obj << -/D [880 0 R /XYZ 99.895 535.287 null] +/D [906 0 R /XYZ 99.895 535.287 null] >> -% 889 0 obj +% 915 0 obj << -/D [880 0 R /XYZ 99.895 518.001 null] +/D [906 0 R /XYZ 99.895 518.001 null] >> -% 890 0 obj +% 916 0 obj << -/D [880 0 R /XYZ 99.895 500.715 null] +/D [906 0 R /XYZ 99.895 500.715 null] >> -% 891 0 obj +% 917 0 obj << -/D [880 0 R /XYZ 147.412 273.553 null] +/D [906 0 R /XYZ 147.412 273.553 null] >> -% 879 0 obj +% 905 0 obj << -/Font << /F8 573 0 R /F27 572 0 R /F30 784 0 R >> +/Font << /F8 585 0 R /F27 584 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 895 0 obj +% 921 0 obj << /Type /Page -/Contents 896 0 R -/Resources 894 0 R +/Contents 922 0 R +/Resources 920 0 R /MediaBox [0 0 595.276 841.89] -/Parent 847 0 R -/Annots [ 892 0 R 893 0 R ] +/Parent 873 0 R +/Annots [ 918 0 R 919 0 R ] >> -% 892 0 obj +% 918 0 obj << /Type /Annot /Subtype /Link @@ -6405,7 +6183,7 @@ stream /Rect [351.231 524.53 358.204 536.485] /A << /S /GoTo /D (section.1) >> >> -% 893 0 obj +% 919 0 obj << /Type /Annot /Subtype /Link @@ -6413,177 +6191,460 @@ stream /Rect [186.34 314.707 193.314 326.662] /A << /S /GoTo /D (section.1) >> >> -% 897 0 obj +% 923 0 obj << -/D [895 0 R /XYZ 149.705 753.953 null] +/D [921 0 R /XYZ 149.705 753.953 null] >> % 43 0 obj << -/D [895 0 R /XYZ 150.705 716.092 null] +/D [921 0 R /XYZ 150.705 716.092 null] >> % 47 0 obj << -/D [895 0 R /XYZ 150.705 699.536 null] +/D [921 0 R /XYZ 150.705 697.684 null] >> % 51 0 obj << -/D [895 0 R /XYZ 150.705 501.668 null] +/D [921 0 R /XYZ 150.705 499.816 null] >> % 55 0 obj << -/D [895 0 R /XYZ 150.705 291.844 null] +/D [921 0 R /XYZ 150.705 289.993 null] >> -% 894 0 obj +% 920 0 obj << -/Font << /F27 572 0 R /F30 784 0 R /F8 573 0 R /F14 787 0 R /F10 786 0 R >> +/Font << /F27 584 0 R /F30 810 0 R /F8 585 0 R /F14 813 0 R /F10 812 0 R >> /ProcSet [ /PDF /Text ] >> -% 899 0 obj +% 925 0 obj << /Type /Page -/Contents 900 0 R -/Resources 898 0 R +/Contents 926 0 R +/Resources 924 0 R /MediaBox [0 0 595.276 841.89] -/Parent 902 0 R +/Parent 928 0 R >> -% 901 0 obj +% 927 0 obj << -/D [899 0 R /XYZ 98.895 753.953 null] +/D [925 0 R /XYZ 98.895 753.953 null] >> % 59 0 obj << -/D [899 0 R /XYZ 99.895 718.084 null] +/D [925 0 R /XYZ 99.895 716.092 null] >> % 63 0 obj << -/D [899 0 R /XYZ 99.895 532.754 null] +/D [925 0 R /XYZ 99.895 530.879 null] >> % 67 0 obj << -/D [899 0 R /XYZ 99.895 279.429 null] ->> -% 898 0 obj -<< -/Font << /F27 572 0 R /F30 784 0 R /F8 573 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 904 0 obj -<< -/Type /Page -/Contents 905 0 R -/Resources 903 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 902 0 R ->> -% 906 0 obj -<< -/D [904 0 R /XYZ 149.705 753.953 null] ->> -% 71 0 obj -<< -/D [904 0 R /XYZ 150.705 718.084 null] ->> -% 75 0 obj -<< -/D [904 0 R /XYZ 150.705 519.229 null] ->> -% 907 0 obj -<< -/D [904 0 R /XYZ 395.482 355.253 null] ->> -% 79 0 obj -<< -/D [904 0 R /XYZ 150.705 305.167 null] ->> -% 83 0 obj -<< -/D [904 0 R /XYZ 150.705 194.677 null] ->> -% 903 0 obj -<< -/Font << /F27 572 0 R /F30 784 0 R /F8 573 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 909 0 obj -<< -/Type /Page -/Contents 910 0 R -/Resources 908 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 902 0 R ->> -% 911 0 obj -<< -/D [909 0 R /XYZ 98.895 753.953 null] ->> -% 87 0 obj -<< -/D [909 0 R /XYZ 99.895 587.079 null] +/D [925 0 R /XYZ 99.895 277.278 null] >> -% 91 0 obj -<< -/D [909 0 R /XYZ 99.895 469.903 null] ->> -% 95 0 obj -<< -/D [909 0 R /XYZ 99.895 259.499 null] ->> -% 908 0 obj +% 924 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F27 584 0 R /F30 810 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 916 0 obj +% 930 0 obj << /Type /Page -/Contents 917 0 R -/Resources 915 0 R +/Contents 931 0 R +/Resources 929 0 R /MediaBox [0 0 595.276 841.89] -/Parent 902 0 R -/Annots [ 912 0 R 913 0 R 914 0 R ] ->> -% 912 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[0 1 0] -/Rect [188.06 277.052 200.015 285.465] -/A << /S /GoTo /D (cite.DesignPatterns) >> ->> -% 913 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[0 1 0] -/Rect [268.904 277.052 280.86 285.465] -/A << /S /GoTo /D (cite.Sparse03) >> ->> -% 914 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [459.496 274.562 466.47 286.517] -/A << /S /GoTo /D (figure.4) >> ->> -% 918 0 obj -<< -/D [916 0 R /XYZ 149.705 753.953 null] +/Parent 928 0 R >> -% 99 0 obj + +endstream +endobj +937 0 obj << -/D [916 0 R /XYZ 150.705 553.709 null] +/Length 5918 >> -% 103 0 obj +stream +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F27 9.9626 Tf 99.895 706.129 Td [(ith)]TJ +0 g 0 G +/F8 9.9626 Tf 18.985 0 Td [(the)-333(new)-334(threshold)-333(for)-333(comm)27(u)1(nication)-334(descriptors.)]TJ 5.922 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(greater)-333(than)-334(zero.)]TJ -24.907 -21.496 Td [(Note:)-756(the)-490(threshold)-489(v)56(alue)-489(is)-490(only)-489(queried)-489(b)28(y)-490(th)1(e)-490(library)-489(at)-489(the)-489(time)-490(a)-489(call)]TJ 0 -11.955 Td [(to)]TJ/F30 9.9626 Tf 13.432 0 Td [(psb_cdall)]TJ/F8 9.9626 Tf 51.648 0 Td [(is)-459(executed,)-491(therefore)-459(c)27(hangi)1(ng)-460(the)-459(threshold)-459(has)-459(no)-460(e\013ect)-459(on)]TJ -65.08 -11.955 Td [(comm)28(unication)-464(desc)-1(r)1(iptors)-465(that)-464(ha)28(v)28(e)-464(already)-464(b)-28(een)-464(initialized.)-837(Moreo)28(v)27(er)-464(the)]TJ 0 -11.955 Td [(threshold)-333(m)27(ust)-333(ha)28(v)28(e)-334(the)-333(same)-333(v)55(alue)-333(on)-333(all)-334(pro)-27(c)-1(esses.)]TJ/F27 9.9626 Tf 0 -25.823 Td [(3.1.12)-1150(get)]TJ +ET +q +1 0 0 1 156.754 575.323 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 160.191 575.124 Td [(p)]TJ +ET +q +1 0 0 1 167.243 575.323 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 170.68 575.124 Td [(adjcncy)-383(|)-384(Get)-383(pro)-32(cess)-383(adjacency)-384(list)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -70.785 -18.39 Td [(list)-525(=)-1050(desc%get_p_adjcncy\050\051)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -21.495 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.757 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.756 Td [(F)96(unction)-384(v)64(alue)]TJ +0 g 0 G +/F8 9.9626 Tf 78.387 0 Td [(The)-498(c)-1(u)1(rren)27(t)-498(list)-499(of)-498(adjacen)28(t)-499(pro)-28(cesses,)-540(i.e.)-940(pro)-27(cesse)-1(s)-498(with)]TJ -53.48 -11.955 Td [(whic)28(h)-334(th)1(e)-334(curren)28(t)-333(one)-334(has)-333(to)-333(exc)27(hange)-333(halo)-333(data.)]TJ/F27 9.9626 Tf -24.907 -25.824 Td [(3.1.13)-1150(set)]TJ +ET +q +1 0 0 1 155.544 458.147 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 158.982 457.947 Td [(p)]TJ +ET +q +1 0 0 1 166.034 458.147 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 169.471 457.947 Td [(adjcncy)-383(|)-384(Set)-383(pro)-32(cess)-383(adjacency)-384(list)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -69.576 -18.389 Td [(call)-525(desc%set_p_adjcncy\050list\051)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -21.496 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.756 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.757 Td [(list)]TJ +0 g 0 G +/F8 9.9626 Tf 20.321 0 Td [(the)-333(list)-334(of)-333(adjacen)28(t)-334(p)1(ro)-28(cesses.)]TJ 4.586 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(one-dimensional)-333(arra)28(y)-334(of)-333(in)28(tegers)-334(of)-333(kind)]TJ/F30 9.9626 Tf 247.378 0 Td [(psb_ipk_)]TJ/F8 9.9626 Tf 41.843 0 Td [(.)]TJ -314.128 -21.496 Td [(Note:)-643(this)-432(metho)-28(d)-432(can)-433(b)-27(e)-433(called)-432(after)-433(a)-432(call)-432(to)]TJ/F30 9.9626 Tf 216.836 0 Td [(psb_cdall)]TJ/F8 9.9626 Tf 51.381 0 Td [(and)-432(b)-28(efore)-432(a)-433(call)]TJ -268.217 -11.955 Td [(to)]TJ/F30 9.9626 Tf 12.939 0 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)-674(The)-410(user)-410(is)-409(s)-1(p)-27(ecifying)-410(here)-410(some)-410(kno)28(wledge)-410(ab)-28(out)-409(whic)27(h)-409(pro-)]TJ -60.012 -11.955 Td [(cesses)-304(are)-304(top)-28(ological)-304(neigh)28(b)-28(ours)-304(of)-304(the)-304(curren)28(t)-304(pro)-28(cess.)-435(The)-304(a)28(v)56(ailabilit)27(y)-304(of)-304(this)]TJ 0 -11.956 Td [(information)-333(ma)28(y)-334(sp)-28(eed)-333(up)-333(the)-334(execution)-333(of)-333(the)-334(assem)28(bly)-333(call)]TJ/F30 9.9626 Tf 268.079 0 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)]TJ/F27 9.9626 Tf -315.152 -25.823 Td [(3.1.14)-1150(fnd)]TJ +ET +q +1 0 0 1 157.549 247.744 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 160.987 247.544 Td [(o)32(wner)-383(|)-384(Find)-383(the)-383(o)32(wner)-384(pro)-32(cess)-383(of)-383(a)-384(set)-383(of)-383(indices)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -61.092 -18.389 Td [(call)-525(desc%fnd_owner\050idx,iprc,info\051)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -21.496 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.756 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.757 Td [(idx)]TJ +0 g 0 G +/F8 9.9626 Tf 20.576 0 Td [(the)-333(list)-334(of)-333(global)-333(indices)-334(for)-333(whic)28(h)-333(w)27(e)-333(need)-333(the)-334(o)28(wning)-333(pro)-28(cesses.)]TJ 4.331 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(one-dimensional)-333(arra)28(y)-334(of)-333(in)28(tegers)-334(of)-333(kind)]TJ/F30 9.9626 Tf 247.378 0 Td [(psb_lpk_)]TJ/F8 9.9626 Tf 41.843 0 Td [(.)]TJ +0 g 0 G + -147.253 -29.888 Td [(15)]TJ +0 g 0 G +ET + +endstream +endobj +944 0 obj << -/D [916 0 R /XYZ 150.705 332.359 null] +/Length 9167 >> +stream +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F27 9.9626 Tf 150.705 706.129 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.686 Td [(iprc)]TJ +0 g 0 G +/F8 9.9626 Tf 24.339 0 Td [(the)-333(list)-334(of)-333(pro)-28(cesses)-333(o)28(w)-1(n)1(ing)-334(the)-333(indices)-333(in)]TJ/F30 9.9626 Tf 183.783 0 Td [(idx)]TJ/F8 9.9626 Tf 15.691 0 Td [(.)]TJ -198.907 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-525(as:)-828(an)-526(allo)-27(catable)-526(one-dimensional)-525(arra)28(y)-525(of)-526(in)28(tegers)-525(of)-525(kind)]TJ/F30 9.9626 Tf 0 -11.955 Td [(psb_ipk_)]TJ/F8 9.9626 Tf 41.843 0 Td [(.)]TJ -66.749 -21.318 Td [(Note:)-417(th)1(is)-278(metho)-28(d)-277(ma)28(y)-278(or)-277(ma)27(y)-277(not)-278(actual)1(ly)-278(require)-277(comm)27(unications,)-288(dep)-28(ending)]TJ 0 -11.956 Td [(on)-466(the)-465(exact)-466(in)28(ternal)-466(data)-465(storage;)-532(giv)28(en)-466(that)-465(the)-466(c)28(hoice)-466(of)-466(storage)-465(ma)27(y)-465(b)-28(e)]TJ 0 -11.955 Td [(altered)-440(b)28(y)-440(run)28(time)-440(parameters,)-467(it)-439(is)-440(nece)-1(ssary)-439(for)-440(safet)27(y)-439(that)-440(this)-440(metho)-28(d)-440(is)]TJ 0 -11.955 Td [(called)-333(b)27(y)-333(all)-333(pro)-28(cesses.)]TJ/F27 9.9626 Tf 0 -25.793 Td [(3.1.15)-1150(Named)-383(Constan)32(ts)]TJ +0 g 0 G + 0 -18.389 Td [(psb)]TJ +ET +q +1 0 0 1 168.641 525.501 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 172.078 525.302 Td [(none)]TJ +ET +q +1 0 0 1 196.475 525.501 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 204.894 525.302 Td [(Generic)-333(no-op;)]TJ +0 g 0 G +/F27 9.9626 Tf -54.189 -19.685 Td [(psb)]TJ +ET +q +1 0 0 1 168.641 505.816 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 172.078 505.617 Td [(ro)-32(ot)]TJ +ET +q +1 0 0 1 193.715 505.816 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 202.133 505.617 Td [(Default)-333(ro)-28(ot)-333(pro)-28(cess)-334(for)-333(broadcast)-333(and)-333(sc)-1(atter)-333(op)-28(erations;)]TJ +0 g 0 G +/F27 9.9626 Tf -51.428 -19.686 Td [(psb)]TJ +ET +q +1 0 0 1 168.641 486.131 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 172.078 485.931 Td [(nohalo)]TJ +ET +q +1 0 0 1 205.705 486.131 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 214.123 485.931 Td [(Do)-333(not)-334(fetc)28(h)-333(halo)-333(e)-1(l)1(e)-1(men)28(ts;)]TJ +0 g 0 G +/F27 9.9626 Tf -63.418 -19.685 Td [(psb)]TJ +ET +q +1 0 0 1 168.641 466.445 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 172.078 466.246 Td [(halo)]TJ +ET +q +1 0 0 1 193.611 466.445 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 202.03 466.246 Td [(F)83(etc)28(h)-333(halo)-333(e)-1(lemen)28(ts)-333(from)-333(neigh)27(b)-27(ouring)-334(pro)-27(cesse)-1(s;)]TJ +0 g 0 G +/F27 9.9626 Tf -51.325 -19.686 Td [(psb)]TJ +ET +q +1 0 0 1 168.641 446.76 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 172.078 446.56 Td [(sum)]TJ +ET +q +1 0 0 1 193.197 446.76 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 201.616 446.56 Td [(Sum)-333(o)27(v)28(erlapp)-27(ed)-334(elemen)28(ts)]TJ +0 g 0 G +/F27 9.9626 Tf -50.911 -19.685 Td [(psb)]TJ +ET +q +1 0 0 1 168.641 427.074 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 172.078 426.875 Td [(a)32(vg)]TJ +ET +q +1 0 0 1 189.792 427.074 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 198.211 426.875 Td [(Av)28(erage)-334(o)28(v)28(erlapp)-28(ed)-333(elemen)28(ts)]TJ +0 g 0 G +/F27 9.9626 Tf -47.506 -19.685 Td [(psb)]TJ +ET +q +1 0 0 1 168.641 407.389 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 172.078 407.19 Td [(comm)]TJ +ET +q +1 0 0 1 202.681 407.389 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 206.118 407.19 Td [(halo)]TJ +ET +q +1 0 0 1 227.651 407.389 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 236.07 407.19 Td [(Exc)28(hange)-333(data)-334(based)-333(on)-333(the)]TJ/F30 9.9626 Tf 126.387 0 Td [(halo_index)]TJ/F8 9.9626 Tf 55.624 0 Td [(list;)]TJ +0 g 0 G +/F27 9.9626 Tf -267.376 -19.686 Td [(psb)]TJ +ET +q +1 0 0 1 168.641 387.704 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 172.078 387.504 Td [(comm)]TJ +ET +q +1 0 0 1 202.681 387.704 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 206.118 387.504 Td [(ext)]TJ +ET +q +1 0 0 1 222.559 387.704 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 230.978 387.504 Td [(Exc)28(hange)-333(data)-334(based)-333(on)-333(the)]TJ/F30 9.9626 Tf 126.387 0 Td [(ext_index)]TJ/F8 9.9626 Tf 50.394 0 Td [(list;)]TJ +0 g 0 G +/F27 9.9626 Tf -257.054 -19.685 Td [(psb)]TJ +ET +q +1 0 0 1 168.641 368.018 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 172.078 367.819 Td [(comm)]TJ +ET +q +1 0 0 1 202.681 368.018 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 206.118 367.819 Td [(o)32(vr)]TJ +ET +q +1 0 0 1 222.981 368.018 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 231.4 367.819 Td [(Exc)28(hange)-333(data)-334(based)-333(on)-333(the)]TJ/F30 9.9626 Tf 126.387 0 Td [(ovrlap_index)]TJ/F8 9.9626 Tf 66.085 0 Td [(list;)]TJ +0 g 0 G +/F27 9.9626 Tf -273.167 -19.685 Td [(psb)]TJ +ET +q +1 0 0 1 168.641 348.333 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 172.078 348.134 Td [(comm)]TJ +ET +q +1 0 0 1 202.681 348.333 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 206.118 348.134 Td [(mo)32(v)]TJ +ET +q +1 0 0 1 227.81 348.333 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 236.229 348.134 Td [(Exc)28(hange)-333(data)-334(based)-333(on)-333(the)]TJ/F30 9.9626 Tf 126.387 0 Td [(ovr_mst_idx)]TJ/F8 9.9626 Tf 60.855 0 Td [(list;)]TJ/F16 11.9552 Tf -272.766 -27.786 Td [(3.2)-1125(Sparse)-375(Matrix)-375(class)]TJ/F8 9.9626 Tf 0 -18.389 Td [(The)]TJ/F30 9.9626 Tf 20.653 0 Td [(psb)]TJ +ET +q +1 0 0 1 187.676 302.158 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 190.814 301.959 Td [(Tspmat)]TJ +ET +q +1 0 0 1 222.824 302.158 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 225.962 301.959 Td [(type)]TJ/F8 9.9626 Tf 24.416 0 Td [(class)-351(con)28(tains)-351(all)-351(information)-350(ab)-28(out)-351(the)-351(lo)-27(cal)-351(p)-28(ortion)-351(of)]TJ -99.673 -11.955 Td [(the)-249(sparse)-249(matrix)-248(and)-249(its)-249(storage)-249(mo)-27(de.)-417(Its)-248(design)-249(is)-249(based)-249(on)-248(the)-249(ST)83(A)84(TE)-249(design)]TJ 0 -11.955 Td [(pattern)-347([)]TJ +1 0 0 rg 1 0 0 RG + [(13)]TJ +0 g 0 G + [(])-346(as)-347(detailed)-347(in)-347([)]TJ +1 0 0 rg 1 0 0 RG + [(11)]TJ +0 g 0 G + [(])1(;)-354(the)-347(t)28(yp)-28(e)-346(declaration)-347(is)-347(sho)28(wn)-347(in)-346(\014gure)]TJ +0 0 1 rg 0 0 1 RG + [-347(4)]TJ +0 g 0 G + [-347(where)]TJ/F30 9.9626 Tf 0 -11.956 Td [(T)]TJ/F8 9.9626 Tf 8.551 0 Td [(is)-333(a)-334(placeholder)-333(for)-333(the)-334(data)-333(t)28(yp)-28(e)-333(and)-333(precision)-334(v)56(arian)28(ts)]TJ +0 g 0 G +/F27 9.9626 Tf -8.551 -19.445 Td [(S)]TJ +0 g 0 G +/F8 9.9626 Tf 11.346 0 Td [(Single)-333(precision)-334(real;)]TJ +0 g 0 G +/F27 9.9626 Tf -11.346 -19.685 Td [(D)]TJ +0 g 0 G +/F8 9.9626 Tf 13.768 0 Td [(Double)-333(precision)-334(real;)]TJ +0 g 0 G +/F27 9.9626 Tf -13.768 -19.686 Td [(C)]TJ +0 g 0 G +/F8 9.9626 Tf 13.256 0 Td [(Single)-333(precision)-334(complex;)]TJ +0 g 0 G +/F27 9.9626 Tf -13.256 -19.685 Td [(Z)]TJ +0 g 0 G +/F8 9.9626 Tf 11.983 0 Td [(Double)-333(precision)-334(complex.)]TJ -11.983 -19.446 Td [(The)-222(actual)-222(data)-223(is)-222(con)28(tained)-222(in)-222(the)-223(p)-27(olymorphic)-223(comp)-27(onen)27(t)]TJ/F30 9.9626 Tf 255.514 0 Td [(a%a)]TJ/F8 9.9626 Tf 17.905 0 Td [(of)-222(t)28(yp)-28(e)]TJ/F30 9.9626 Tf 31.549 0 Td [(psb)]TJ +ET +q +1 0 0 1 471.991 168.346 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 475.13 168.146 Td [(T)]TJ +ET +q +1 0 0 1 480.988 168.346 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 484.126 168.146 Td [(base)]TJ +ET +q +1 0 0 1 505.675 168.346 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 508.813 168.146 Td [(sparse)]TJ +ET +q +1 0 0 1 540.823 168.346 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 543.961 168.146 Td [(mat)]TJ/F8 9.9626 Tf 15.691 0 Td [(;)]TJ -408.947 -11.955 Td [(its)-300(sp)-28(eci\014c)-301(la)28(y)28(out)-300(can)-301(b)-27(e)-301(c)28(hosen)-301(d)1(ynamically)-301(among)-300(the)-301(pr)1(e)-1(d)1(e)-1(\014n)1(e)-1(d)-300(t)28(yp)-28(es,)-307(or)-300(an)]TJ 0 -11.955 Td [(en)28(tirely)-419(new)-419(storage)-419(la)28(y)27(out)-419(can)-419(b)-27(e)-419(implemen)27(ted)-419(an)1(d)-419(passe)-1(d)-418(to)-419(the)-419(library)-419(at)]TJ 0 -11.955 Td [(run)28(time)-420(via)-419(the)]TJ/F30 9.9626 Tf 73.447 0 Td [(psb_spasb)]TJ/F8 9.9626 Tf 51.252 0 Td [(routine.)-703(The)-419(follo)28(wing)-420(v)28(ery)-419(common)-420(formats)-419(are)]TJ -124.699 -11.955 Td [(precompiled)-333(in)-334(PSBLAS)-333(and)-333(th)28(us)-334(are)-333(alw)28(a)28(ys)-334(a)28(v)56(ailable:)]TJ +0 g 0 G + 166.874 -29.888 Td [(16)]TJ +0 g 0 G +ET endstream endobj -926 0 obj +952 0 obj << -/Length 5940 +/Length 5963 >> stream 0 g 0 G @@ -6706,17 +6767,17 @@ BT 0 g 0 G /F27 9.9626 Tf -24.907 -20.183 Td [(Up)-32(date:)]TJ 0 g 0 G -/F8 9.9626 Tf 45.302 0 Td [(State)-233(en)27(tered)-233(after)-233(a)-234(reinit)1(aliz)-1(at)1(ion;)-267(this)-233(is)-234(used)-233(to)-233(handle)-234(applications)]TJ -20.395 -11.955 Td [(in)-395(whic)28(h)-396(th)1(e)-396(same)-395(sparsit)28(y)-395(pattern)-396(is)-395(used)-395(m)28(ultiple)-395(times)-396(with)-395(di\013eren)28(t)]TJ 0 -11.955 Td [(co)-28(e\016cien)28(ts.)-427(In)-280(this)-280(state)-280(it)-280(is)-281(only)-280(p)-27(oss)-1(ib)1(le)-281(to)-280(en)28(ter)-280(co)-28(e\016cien)28(ts)-280(for)-281(already)]TJ 0 -11.956 Td [(existing)-333(nonzero)-334(en)28(tries.)]TJ -24.907 -20.118 Td [(The)-358(only)-357(storage)-358(v)56(arian)27(t)-357(supp)-28(orting)-357(the)-358(build)-357(s)-1(tate)-357(is)-358(COO;)-357(all)-358(other)-358(v)56(arian)28(ts)]TJ 0 -11.956 Td [(are)-333(obtained)-334(b)28(y)-333(con)28(v)27(ersion)-333(to/from)-333(it.)]TJ/F27 9.9626 Tf 0 -26.238 Td [(3.2.1)-1150(Sparse)-383(Matri)-1(x)-383(Metho)-32(ds)]TJ 0 -18.509 Td [(get)]TJ +/F8 9.9626 Tf 45.302 0 Td [(State)-233(en)27(tered)-233(after)-233(a)-234(reinit)1(aliz)-1(at)1(ion;)-267(this)-233(is)-234(used)-233(to)-233(handle)-234(applications)]TJ -20.395 -11.955 Td [(in)-395(whic)28(h)-396(th)1(e)-396(same)-395(sparsit)28(y)-395(pattern)-396(is)-395(used)-395(m)28(ultiple)-395(times)-396(with)-395(di\013eren)28(t)]TJ 0 -11.955 Td [(co)-28(e\016cien)28(ts.)-427(In)-280(this)-280(state)-280(it)-280(is)-281(only)-280(p)-27(oss)-1(ib)1(le)-281(to)-280(en)28(ter)-280(co)-28(e\016cien)28(ts)-280(for)-281(already)]TJ 0 -11.956 Td [(existing)-333(nonzero)-334(en)28(tries.)]TJ -24.907 -20.118 Td [(The)-358(only)-357(storage)-358(v)56(arian)27(t)-357(supp)-28(orting)-357(the)-358(build)-357(s)-1(tate)-357(is)-358(COO;)-357(all)-358(other)-358(v)56(arian)28(ts)]TJ 0 -11.956 Td [(are)-333(obtained)-334(b)28(y)-333(con)28(v)27(ersion)-333(to/from)-333(it.)]TJ/F27 9.9626 Tf 0 -26.238 Td [(3.2.1)-1150(Sparse)-383(Matri)-1(x)-383(Metho)-32(ds)]TJ 0 -18.509 Td [(3.2.2)-1150(get)]TJ ET q -1 0 0 1 116.018 354.76 cm +1 0 0 1 151.025 354.76 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 119.455 354.561 Td [(nro)32(ws)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(ro)32(ws)-383(in)-383(a)-384(sparse)-383(matrix)]TJ +/F27 9.9626 Tf 154.462 354.561 Td [(nro)32(ws)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(ro)32(ws)-383(in)-383(a)-384(sparse)-383(matrix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -19.56 -18.51 Td [(nr)-525(=)-525(a%get_nrows\050\051)]TJ +/F30 9.9626 Tf -54.567 -18.51 Td [(nr)-525(=)-525(a%get_nrows\050\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -22.111 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -6734,17 +6795,17 @@ BT 0 g 0 G 0 -20.183 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(The)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(ro)28(ws)-334(of)-333(sparse)-333(matrix)]TJ/F30 9.9626 Tf 164.937 0 Td [(a)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ/F27 9.9626 Tf -248.554 -26.238 Td [(get)]TJ +/F8 9.9626 Tf 78.387 0 Td [(The)-333(n)28(um)27(b)-27(e)-1(r)-333(of)-333(ro)28(ws)-334(of)-333(sparse)-333(matrix)]TJ/F30 9.9626 Tf 164.937 0 Td [(a)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ/F27 9.9626 Tf -248.554 -26.238 Td [(3.2.3)-1150(get)]TJ ET q -1 0 0 1 116.018 181.329 cm +1 0 0 1 151.025 181.329 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 119.455 181.13 Td [(ncols)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(columns)-383(in)-383(a)-384(sparse)-383(matrix)]TJ +/F27 9.9626 Tf 154.462 181.13 Td [(ncols)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(columns)-383(in)-384(a)-383(sparse)-383(matrix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -19.56 -18.51 Td [(nc)-525(=)-525(a%get_ncols\050\051)]TJ +/F30 9.9626 Tf -54.567 -18.51 Td [(nc)-525(=)-525(a%get_ncols\050\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -22.111 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -6759,9 +6820,9 @@ ET endstream endobj -930 0 obj +956 0 obj << -/Length 3493 +/Length 3543 >> stream 0 g 0 G @@ -6772,72 +6833,72 @@ BT 0 g 0 G /F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)]TJ 14.355 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ 0 g 0 G - -57.285 -37.92 Td [(On)-383(Return)]TJ + -57.285 -37.362 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -25.32 Td [(F)96(unction)-384(v)64(alue)]TJ + 0 -24.577 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.386 0 Td [(The)-333(n)27(um)28(b)-28(er)-333(of)-333(columns)-334(of)-333(sparse)-333(matrix)]TJ/F30 9.9626 Tf 180.684 0 Td [(a)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ/F27 9.9626 Tf -264.3 -33.052 Td [(get)]TJ +/F8 9.9626 Tf 78.386 0 Td [(The)-333(n)27(um)28(b)-28(er)-333(of)-333(columns)-334(of)-333(sparse)-333(matrix)]TJ/F30 9.9626 Tf 180.684 0 Td [(a)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ/F27 9.9626 Tf -264.3 -32.066 Td [(3.2.4)-1150(get)]TJ ET q -1 0 0 1 166.827 598.081 cm +1 0 0 1 201.835 600.368 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 170.264 597.882 Td [(nnzeros)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(nonzero)-383(elemen)32(ts)-383(in)-384(a)-383(sparse)-383(m)-1(atrix)]TJ +/F27 9.9626 Tf 205.272 600.169 Td [(nnzeros)-497(|)-498(Get)-497(n)32(um)32(b)-32(er)-498(of)-497(nonzero)-497(elemen)32(ts)-498(in)-497(a)-498(sparse)]TJ -19.56 -11.955 Td [(matrix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -19.559 -20.9 Td [(nz)-525(=)-525(a%get_nnzeros\050\051)]TJ +/F30 9.9626 Tf -35.007 -20.554 Td [(nz)-525(=)-525(a%get_nnzeros\050\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -25.964 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -25.407 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -25.32 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -24.577 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -25.321 Td [(a)]TJ + 0 -24.577 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)]TJ 14.355 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ 0 g 0 G - -57.285 -37.919 Td [(On)-383(Return)]TJ + -57.285 -37.362 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -25.321 Td [(F)96(unction)-384(v)64(alue)]TJ + 0 -24.577 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.386 0 Td [(The)-333(n)27(um)28(b)-28(er)-333(of)-333(nonzero)-333(e)-1(l)1(e)-1(men)28(ts)-333(stored)-334(in)-333(sparse)-333(matrix)]TJ/F30 9.9626 Tf 249.98 0 Td [(a)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ/F27 9.9626 Tf -333.596 -27.313 Td [(Notes)]TJ +/F8 9.9626 Tf 78.386 0 Td [(The)-333(n)27(um)28(b)-28(er)-333(of)-333(nonzero)-333(e)-1(l)1(e)-1(men)28(ts)-333(stored)-334(in)-333(sparse)-333(matrix)]TJ/F30 9.9626 Tf 249.98 0 Td [(a)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ/F27 9.9626 Tf -333.596 -26.57 Td [(Notes)]TJ 0 g 0 G -/F8 9.9626 Tf 12.176 -23.971 Td [(1.)]TJ +/F8 9.9626 Tf 12.176 -23.414 Td [(1.)]TJ 0 g 0 G - [-500(The)-462(function)-462(v)55(alue)-462(is)-462(sp)-28(eci\014c)-462(to)-463(th)1(e)-463(storage)-462(format)-462(of)-462(matrix)]TJ/F30 9.9626 Tf 296.649 0 Td [(a)]TJ/F8 9.9626 Tf 5.23 0 Td [(;)-527(some)]TJ -289.149 -11.955 Td [(storage)-465(formats)-466(emplo)28(y)-465(padding,)-498(th)27(us)-465(the)-465(returned)-465(v)55(alue)-465(for)-465(the)-466(same)]TJ 0 -11.956 Td [(matrix)-333(ma)27(y)-333(b)-28(e)-333(di\013eren)28(t)-334(for)-333(di\013eren)28(t)-333(storage)-334(c)28(hoices.)]TJ/F27 9.9626 Tf -24.906 -33.052 Td [(get)]TJ + [-500(The)-462(function)-462(v)55(alue)-462(is)-462(sp)-28(eci\014c)-462(to)-463(th)1(e)-463(storage)-462(format)-462(of)-462(matrix)]TJ/F30 9.9626 Tf 296.649 0 Td [(a)]TJ/F8 9.9626 Tf 5.231 0 Td [(;)-527(some)]TJ -289.149 -11.955 Td [(storage)-465(formats)-466(emplo)28(y)-465(padding,)-498(th)28(us)-466(the)-465(returned)-465(v)55(alue)-465(for)-465(the)-466(same)]TJ 0 -11.955 Td [(matrix)-333(ma)27(y)-333(b)-28(e)-333(di\013eren)28(t)-333(for)-334(di\013eren)28(t)-333(storage)-334(c)28(hoices.)]TJ/F27 9.9626 Tf -24.907 -32.066 Td [(3.2.5)-1150(get)]TJ ET q -1 0 0 1 166.827 317.135 cm +1 0 0 1 201.835 313.444 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 170.264 316.936 Td [(size)-503(|)-503(Get)-503(maxim)32(um)-503(n)32(um)32(b)-32(er)-503(of)-503(nonzero)-503(elemen)32(ts)-503(in)-503(a)-504(sp)1(a)-1(rse)]TJ -19.559 -11.956 Td [(matrix)]TJ +/F27 9.9626 Tf 205.272 313.245 Td [(size)-514(|)-513(Get)-514(maxim)32(um)-513(n)31(u)1(m)31(b)-32(er)-513(of)-514(nonzero)-513(elemen)32(ts)-514(in)-513(a)]TJ -19.56 -11.955 Td [(sparse)-383(matri)-1(x)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf 0 -20.899 Td [(maxnz)-525(=)-525(a%get_size\050\051)]TJ +/F30 9.9626 Tf -35.007 -20.554 Td [(maxnz)-525(=)-525(a%get_size\050\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -25.964 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -25.407 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -25.321 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -24.577 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -25.32 Td [(a)]TJ + 0 -24.577 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)]TJ 14.355 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ 0 g 0 G - -57.285 -37.92 Td [(On)-383(Return)]TJ + -57.285 -37.362 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -25.32 Td [(F)96(unction)-384(v)64(alue)]TJ + 0 -24.577 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.386 0 Td [(The)-253(maxim)27(u)1(m)-254(n)28(um)28(b)-28(er)-253(of)-253(nonzero)-254(elemen)28(ts)-253(that)-253(can)-254(b)-27(e)-254(stored)]TJ -53.48 -11.955 Td [(in)-333(sparse)-334(matrix)]TJ/F30 9.9626 Tf 74.056 0 Td [(a)]TJ/F8 9.9626 Tf 8.551 0 Td [(using)-333(its)-334(curren)28(t)-333(memory)-334(allo)-27(cation.)]TJ +/F8 9.9626 Tf 78.386 0 Td [(The)-253(maxim)27(um)-253(n)28(um)28(b)-28(er)-253(of)-253(nonzero)-254(elemen)28(ts)-253(that)-253(can)-254(b)-27(e)-254(stored)]TJ -53.479 -11.955 Td [(in)-333(sparse)-334(matrix)]TJ/F30 9.9626 Tf 74.055 0 Td [(a)]TJ/F8 9.9626 Tf 8.551 0 Td [(using)-333(its)-334(curren)28(t)-333(memory)-334(allo)-27(cation.)]TJ 0 g 0 G 59.361 -29.888 Td [(18)]TJ 0 g 0 G @@ -6845,15 +6906,15 @@ ET endstream endobj -935 0 obj +961 0 obj << -/Length 3701 +/Length 3749 >> stream 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 99.895 706.129 Td [(sizeof)-383(|)-384(Get)-383(memory)-383(o)-32(ccupation)-384(in)-383(b)32(ytes)-384(of)-383(a)-383(sparse)-384(matrix)]TJ +/F27 9.9626 Tf 99.895 706.129 Td [(3.2.6)-1150(sizeof)-383(|)-384(Get)-383(memory)-384(o)-31(cc)-1(u)1(pa)-1(tion)-383(in)-383(b)32(ytes)-384(of)-383(a)-383(sparse)-384(matrix)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf 0 -19.674 Td [(memory_size)-525(=)-525(a%sizeof\050\051)]TJ @@ -6874,17 +6935,17 @@ BT 0 g 0 G 0 -22.687 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(The)-333(memory)-334(o)-28(ccupati)1(on)-334(in)-333(b)28(ytes.)]TJ/F27 9.9626 Tf -78.387 -29.558 Td [(get)]TJ +/F8 9.9626 Tf 78.387 0 Td [(The)-333(memory)-334(o)-28(ccupati)1(on)-334(in)-333(b)28(ytes.)]TJ/F27 9.9626 Tf -78.387 -29.558 Td [(3.2.7)-1150(get)]TJ ET q -1 0 0 1 116.018 517.148 cm +1 0 0 1 151.025 517.148 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 119.455 516.949 Td [(fm)32(t)-383(|)-384(Short)-383(description)-384(of)-383(the)-383(dynamic)-384(t)32(yp)-32(e)]TJ +/F27 9.9626 Tf 154.462 516.949 Td [(fm)32(t)-383(|)-384(Short)-383(description)-384(of)-383(the)-383(dynamic)-384(t)32(yp)-32(e)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -19.56 -19.675 Td [(write\050*,*\051)-525(a%get_fmt\050\051)]TJ +/F30 9.9626 Tf -54.567 -19.675 Td [(write\050*,*\051)-525(a%get_fmt\050\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -23.988 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -6902,31 +6963,31 @@ BT 0 g 0 G 0 -22.686 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(A)-484(short)-483(string)-484(describing)-484(the)-484(dynamic)-484(t)28(yp)-27(e)-484(of)-484(the)-484(matrix.)]TJ -53.48 -11.956 Td [(Prede\014ned)-333(v)55(alues)-333(include)]TJ/F30 9.9626 Tf 113.408 0 Td [(NULL)]TJ/F8 9.9626 Tf 20.922 0 Td [(,)]TJ/F30 9.9626 Tf 6.088 0 Td [(COO)]TJ/F8 9.9626 Tf 15.691 0 Td [(,)]TJ/F30 9.9626 Tf 6.088 0 Td [(CSR)]TJ/F8 9.9626 Tf 19.012 0 Td [(and)]TJ/F30 9.9626 Tf 19.372 0 Td [(CSC)]TJ/F8 9.9626 Tf 15.691 0 Td [(.)]TJ/F27 9.9626 Tf -241.179 -29.558 Td [(is)]TJ +/F8 9.9626 Tf 78.387 0 Td [(A)-484(short)-483(string)-484(describing)-484(the)-484(dynamic)-484(t)28(yp)-27(e)-484(of)-484(the)-484(matrix.)]TJ -53.48 -11.956 Td [(Prede\014ned)-333(v)55(alues)-333(include)]TJ/F30 9.9626 Tf 113.408 0 Td [(NULL)]TJ/F8 9.9626 Tf 20.922 0 Td [(,)]TJ/F30 9.9626 Tf 6.088 0 Td [(COO)]TJ/F8 9.9626 Tf 15.691 0 Td [(,)]TJ/F30 9.9626 Tf 6.088 0 Td [(CSR)]TJ/F8 9.9626 Tf 19.012 0 Td [(and)]TJ/F30 9.9626 Tf 19.372 0 Td [(CSC)]TJ/F8 9.9626 Tf 15.691 0 Td [(.)]TJ/F27 9.9626 Tf -241.179 -29.558 Td [(3.2.8)-1150(is)]TJ ET q -1 0 0 1 108.284 316.012 cm +1 0 0 1 143.292 316.012 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 111.722 315.813 Td [(bld,)-383(is)]TJ +/F27 9.9626 Tf 146.729 315.813 Td [(bld,)-383(is)]TJ ET q -1 0 0 1 143.024 316.012 cm +1 0 0 1 178.032 316.012 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 146.462 315.813 Td [(up)-32(d,)-383(is)]TJ +/F27 9.9626 Tf 181.469 315.813 Td [(up)-32(d,)-383(is)]TJ ET q -1 0 0 1 181.265 316.012 cm +1 0 0 1 216.273 316.012 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 184.702 315.813 Td [(asb)-383(|)-384(Status)-383(c)32(hec)32(k)]TJ +/F27 9.9626 Tf 219.71 315.813 Td [(asb)-383(|)-384(Status)-383(c)32(hec)32(k)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -84.807 -19.674 Td [(if)-525(\050a%is_bld\050\051\051)-525(then)]TJ 0 -11.955 Td [(if)-525(\050a%is_upd\050\051\051)-525(then)]TJ 0 -11.955 Td [(if)-525(\050a%is_asb\050\051\051)-525(then)]TJ +/F30 9.9626 Tf -119.815 -19.674 Td [(if)-525(\050a%is_bld\050\051\051)-525(then)]TJ 0 -11.955 Td [(if)-525(\050a%is_upd\050\051\051)-525(then)]TJ 0 -11.955 Td [(if)-525(\050a%is_asb\050\051\051)-525(then)]TJ 0 g 0 G /F27 9.9626 Tf 0 -23.989 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -6952,46 +7013,46 @@ ET endstream endobj -940 0 obj +966 0 obj << -/Length 4619 +/Length 4632 >> stream 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 150.705 706.129 Td [(is)]TJ +/F27 9.9626 Tf 150.705 706.129 Td [(3.2.9)-1150(is)]TJ ET q -1 0 0 1 159.094 706.328 cm +1 0 0 1 194.101 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 162.531 706.129 Td [(lo)32(w)32(er,)-383(i)-1(s)]TJ +/F27 9.9626 Tf 197.538 706.129 Td [(lo)32(w)32(er,)-384(is)]TJ ET q -1 0 0 1 204.44 706.328 cm +1 0 0 1 239.447 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 207.877 706.129 Td [(upp)-32(er,)-383(is)]TJ +/F27 9.9626 Tf 242.884 706.129 Td [(upp)-32(er,)-383(is)]TJ ET q -1 0 0 1 252.65 706.328 cm +1 0 0 1 287.658 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 256.087 706.129 Td [(triangle,)-384(is)]TJ +/F27 9.9626 Tf 291.095 706.129 Td [(triangle,)-383(i)-1(s)]TJ ET q -1 0 0 1 309.931 706.328 cm +1 0 0 1 344.938 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 313.368 706.129 Td [(unit)-383(|)-384(F)96(ormat)-383(c)32(hec)32(k)]TJ +/F27 9.9626 Tf 348.375 706.129 Td [(unit)-383(|)-384(F)96(ormat)-383(c)32(hec)32(k)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -162.663 -19.048 Td [(if)-525(\050a%is_triangle\050\051\051)-525(then)]TJ 0 -11.955 Td [(if)-525(\050a%is_upper\050\051\051)-525(then)]TJ 0 -11.955 Td [(if)-525(\050a%is_lower\050\051\051)-525(then)]TJ 0 -11.955 Td [(if)-525(\050a%is_unit\050\051\051)-525(then)]TJ +/F30 9.9626 Tf -197.67 -19.048 Td [(if)-525(\050a%is_triangle\050\051\051)-525(then)]TJ 0 -11.955 Td [(if)-525(\050a%is_upper\050\051\051)-525(then)]TJ 0 -11.955 Td [(if)-525(\050a%is_lower\050\051\051)-525(then)]TJ 0 -11.955 Td [(if)-525(\050a%is_unit\050\051\051)-525(then)]TJ 0 g 0 G /F27 9.9626 Tf 0 -22.979 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -7002,14 +7063,14 @@ BT 0 g 0 G 0 -21.34 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)]TJ 14.355 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ 0 g 0 G -57.285 -34.934 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G 0 -21.341 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.386 0 Td [(A)]TJ/F30 9.9626 Tf 10.615 0 Td [(logical)]TJ/F8 9.9626 Tf 39.755 0 Td [(v)56(alue)-316(indicating)-315(whether)-316(the)-315(matrix)-316(i)1(s)-316(triangular;)]TJ -103.849 -11.955 Td [(if)]TJ/F30 9.9626 Tf 8.895 0 Td [(is_triangle\050\051)]TJ/F8 9.9626 Tf 71.079 0 Td [(returns)]TJ/F30 9.9626 Tf 34.189 0 Td [(.true.)]TJ/F8 9.9626 Tf 34.466 0 Td [(c)28(hec)27(k)-309(also)-310(if)-309(it)-310(is)-309(lo)27(w)28(er,)-314(upp)-28(er)-309(and)-310(with)]TJ -148.629 -11.955 Td [(a)-333(unit)-334(\050i)1(.e)-1(.)-444(assumed\051)-333(diagonal.)]TJ/F27 9.9626 Tf -24.907 -27.773 Td [(cscn)32(v)-383(|)-384(Con)32(v)32(ert)-383(to)-384(a)-383(di\013eren)32(t)-383(storage)-384(format)]TJ +/F8 9.9626 Tf 78.386 0 Td [(A)]TJ/F30 9.9626 Tf 10.615 0 Td [(logical)]TJ/F8 9.9626 Tf 39.755 0 Td [(v)56(alue)-316(indicating)-315(whether)-316(the)-315(matrix)-316(i)1(s)-316(triangular;)]TJ -103.85 -11.955 Td [(if)]TJ/F30 9.9626 Tf 8.896 0 Td [(is_triangle\050\051)]TJ/F8 9.9626 Tf 71.079 0 Td [(returns)]TJ/F30 9.9626 Tf 34.189 0 Td [(.true.)]TJ/F8 9.9626 Tf 34.466 0 Td [(c)28(hec)27(k)-309(also)-310(if)-309(it)-310(is)-309(lo)27(w)28(er,)-314(upp)-28(er)-309(and)-310(with)]TJ -148.63 -11.955 Td [(a)-333(unit)-334(\050i.e.)-444(assumed\051)-333(diagonal.)]TJ/F27 9.9626 Tf -24.906 -27.773 Td [(3.2.10)-1150(cscn)32(v)-384(|)-383(Con)32(v)32(ert)-383(to)-384(a)-383(di\013eren)32(t)-383(storage)-384(format)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf 0 -19.048 Td [(call)-1050(a%cscnv\050b,info)-525([,)-525(type,)-525(mold,)-525(dupl]\051)]TJ 0 -11.955 Td [(call)-1050(a%cscnv\050info)-525([,)-525(type,)-525(mold,)-525(dupl]\051)]TJ @@ -7023,28 +7084,28 @@ BT 0 g 0 G 0 -21.341 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix.)]TJ 14.356 -11.955 Td [(A)-333(v)55(ariable)-333(of)-333(t)27(y)1(p)-28(e)]TJ/F30 9.9626 Tf 81.942 0 Td [(psb_Tspmat_type)]TJ/F8 9.9626 Tf 78.456 0 Td [(.)]TJ -160.398 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix.)]TJ 14.355 -11.955 Td [(A)-333(v)55(ariable)-333(of)-333(t)27(yp)-27(e)]TJ/F30 9.9626 Tf 81.943 0 Td [(psb_Tspmat_type)]TJ/F8 9.9626 Tf 78.455 0 Td [(.)]TJ -160.398 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ 0 g 0 G /F27 9.9626 Tf -80.358 -33.295 Td [(t)32(yp)-32(e)]TJ 0 g 0 G -/F8 9.9626 Tf 27.1 0 Td [(a)-333(string)-334(requesting)-333(a)-333(new)-334(format.)]TJ -2.193 -11.956 Td [(T)28(yp)-28(e:)-444(optional.)]TJ +/F8 9.9626 Tf 27.099 0 Td [(a)-333(string)-334(requesting)-333(a)-333(new)-334(format.)]TJ -2.193 -11.956 Td [(T)28(yp)-28(e:)-444(optional.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -21.34 Td [(mold)]TJ +/F27 9.9626 Tf -24.906 -21.34 Td [(mold)]TJ 0 g 0 G -/F8 9.9626 Tf 29.805 0 Td [(a)-312(v)56(ariable)-312(of)]TJ/F30 9.9626 Tf 56.396 0 Td [(class\050psb_T_base_sparse_mat\051)]TJ/F8 9.9626 Tf 149.557 0 Td [(requesting)-312(a)-312(new)-312(format.)]TJ -210.851 -11.955 Td [(T)28(yp)-28(e:)-444(optional.)]TJ +/F8 9.9626 Tf 29.805 0 Td [(a)-312(v)56(ariable)-312(of)]TJ/F30 9.9626 Tf 56.396 0 Td [(class\050psb_T_base_sparse_mat\051)]TJ/F8 9.9626 Tf 149.557 0 Td [(requesting)-312(a)-312(new)-312(format.)]TJ -210.852 -11.955 Td [(T)28(yp)-28(e:)-444(optional.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -21.34 Td [(dupl)]TJ +/F27 9.9626 Tf -24.906 -21.34 Td [(dupl)]TJ 0 g 0 G -/F8 9.9626 Tf 27.259 0 Td [(an)-268(in)28(teger)-268(v)56(alue)-268(sp)-28(eci\014ng)-267(ho)27(w)-267(to)-268(handle)-268(duplicates)-268(\050see)-268(Named)-267(Constan)27(ts)]TJ -2.352 -11.956 Td [(b)-28(elo)28(w\051)]TJ +/F8 9.9626 Tf 27.259 0 Td [(an)-268(in)28(teger)-268(v)56(alue)-268(sp)-28(eci\014ng)-267(ho)27(w)-267(to)-268(handle)-268(duplicates)-268(\050see)-268(Named)-267(Constan)27(ts)]TJ -2.353 -11.956 Td [(b)-28(elo)28(w\051)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -22.979 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -24.906 -22.979 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G 0 -21.34 Td [(b,a)]TJ 0 g 0 G -/F8 9.9626 Tf 20.098 0 Td [(A)-333(cop)27(y)-333(of)]TJ/F30 9.9626 Tf 45.386 0 Td [(a)]TJ/F8 9.9626 Tf 8.551 0 Td [(with)-333(a)-334(new)-333(storage)-333(format.)]TJ -49.128 -11.955 Td [(A)-333(v)55(ariable)-333(of)-333(t)27(y)1(p)-28(e)]TJ/F30 9.9626 Tf 81.943 0 Td [(psb_Tspmat_type)]TJ/F8 9.9626 Tf 78.455 0 Td [(.)]TJ +/F8 9.9626 Tf 20.098 0 Td [(A)-333(cop)27(y)-333(of)]TJ/F30 9.9626 Tf 45.385 0 Td [(a)]TJ/F8 9.9626 Tf 8.552 0 Td [(with)-333(a)-334(new)-333(storage)-333(format.)]TJ -49.129 -11.955 Td [(A)-333(v)55(ariable)-333(of)-333(t)27(yp)-27(e)]TJ/F30 9.9626 Tf 81.943 0 Td [(psb_Tspmat_type)]TJ/F8 9.9626 Tf 78.455 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -185.305 -21.34 Td [(info)]TJ +/F27 9.9626 Tf -185.304 -21.34 Td [(info)]TJ 0 g 0 G /F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ -23.758 -23.333 Td [(The)]TJ/F30 9.9626 Tf 20.085 0 Td [(mold)]TJ/F8 9.9626 Tf 23.848 0 Td [(argumen)28(ts)-294(ma)28(y)-294(b)-28(e)-294(emplo)28(y)28(ed)-294(to)-294(in)28(terface)-294(with)-293(sp)-28(ecial)-294(devices,)-302(suc)28(h)-294(as)]TJ -43.933 -11.955 Td [(GPUs)-333(and)-334(other)-333(accelerators.)]TJ 0 g 0 G @@ -7054,15 +7115,15 @@ ET endstream endobj -944 0 obj +970 0 obj << -/Length 4086 +/Length 4114 >> stream 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 99.895 706.129 Td [(csclip)-383(|)-384(Reduce)-383(to)-383(a)-384(submatrix)]TJ +/F27 9.9626 Tf 99.895 706.129 Td [(3.2.11)-1150(csclip)-384(|)-383(Reduce)-383(to)-384(a)-383(submatrix)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf 20.922 -19.41 Td [(call)-525(a%csclip\050b,info[,&)]TJ 15.691 -11.955 Td [(&)-525(imin,imax,jmin,jmax,rscale,cscale]\051)]TJ/F8 9.9626 Tf -21.669 -24.111 Td [(Returns)-222(the)-222(s)-1(u)1(bmatrix)]TJ/F30 9.9626 Tf 99.101 0 Td [(A\050imin:imax,jmin:jmax\051)]TJ/F8 9.9626 Tf 115.068 0 Td [(,)-244(optionally)-222(res)-1(calin)1(g)-223(ro)28(w/-)]TJ -229.113 -11.955 Td [(col)-333(indices)-334(to)-333(the)-333(range)]TJ/F30 9.9626 Tf 104.691 0 Td [(1:imax-imin+1,1:jmax-jmin+1)]TJ/F8 9.9626 Tf 141.219 0 Td [(.)]TJ @@ -7095,17 +7156,17 @@ BT 0 g 0 G /F27 9.9626 Tf -185.305 -22.118 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -28.805 Td [(clean)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -28.805 Td [(3.2.12)-1150(clean)]TJ ET q -1 0 0 1 126.043 371.924 cm +1 0 0 1 166.779 371.924 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 129.48 371.725 Td [(zeros)-383(|)-384(Eliminate)-383(zero)-383(co)-32(e\016cien)32(t)-1(s)]TJ +/F27 9.9626 Tf 170.216 371.725 Td [(zeros)-383(|)-384(Eliminate)-383(zero)-383(co)-32(e\016cien)32(t)-1(s)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -8.663 -19.41 Td [(call)-525(a%clean_zeros\050info\051)]TJ/F8 9.9626 Tf -5.978 -24.111 Td [(Eliminates)-285(zero)-284(co)-28(e\016cien)27(ts)-284(in)-285(the)-285(inp)1(ut)-285(matrix.)-428(Note)-285(that)-285(dep)-27(ending)-285(on)-285(the)]TJ -14.944 -11.955 Td [(in)28(ternal)-333(storage)-333(format,)-334(th)1(e)-1(r)1(e)-334(ma)28(y)-333(still)-333(b)-28(e)-333(some)-333(amoun)28(t)-334(of)-333(zero)-333(padding)-333(in)-333(the)]TJ 0 -11.955 Td [(output.)]TJ +/F30 9.9626 Tf -49.399 -19.41 Td [(call)-525(a%clean_zeros\050info\051)]TJ/F8 9.9626 Tf -5.978 -24.111 Td [(Eliminates)-285(zero)-284(co)-28(e\016cien)27(ts)-284(in)-285(the)-285(inp)1(ut)-285(matrix.)-428(Note)-285(that)-285(dep)-27(ending)-285(on)-285(the)]TJ -14.944 -11.955 Td [(in)28(ternal)-333(storage)-333(format,)-334(th)1(e)-1(r)1(e)-334(ma)28(y)-333(still)-333(b)-28(e)-333(some)-333(amoun)28(t)-334(of)-333(zero)-333(padding)-333(in)-333(the)]TJ 0 -11.955 Td [(output.)]TJ 0 g 0 G /F27 9.9626 Tf 0 -24.111 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -7135,25 +7196,25 @@ ET endstream endobj -948 0 obj +974 0 obj << -/Length 4024 +/Length 4061 >> stream 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 150.705 706.129 Td [(get)]TJ +/F27 9.9626 Tf 150.705 706.129 Td [(3.2.13)-1150(get)]TJ ET q -1 0 0 1 166.827 706.328 cm +1 0 0 1 207.563 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 170.264 706.129 Td [(diag)-383(|)-384(Get)-383(main)-383(di)-1(agonal)]TJ +/F27 9.9626 Tf 211 706.129 Td [(diag)-383(|)-384(Get)-383(main)-383(dia)-1(gonal)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf 1.362 -18.389 Td [(call)-525(a%get_diag\050d,info\051)]TJ/F8 9.9626 Tf -5.977 -21.799 Td [(Returns)-333(a)-334(cop)28(y)-333(of)-333(the)-334(main)-333(diagonal.)]TJ +/F30 9.9626 Tf -39.374 -18.389 Td [(call)-525(a%get_diag\050d,info\051)]TJ/F8 9.9626 Tf -5.977 -21.799 Td [(Returns)-333(a)-334(cop)28(y)-333(of)-333(the)-334(main)-333(diagonal.)]TJ 0 g 0 G /F27 9.9626 Tf -14.944 -19.829 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -7175,17 +7236,17 @@ BT 0 g 0 G /F27 9.9626 Tf -24.906 -19.877 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -25.876 Td [(clip)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -25.876 Td [(3.2.14)-1150(clip)]TJ ET q -1 0 0 1 169.214 471.307 cm +1 0 0 1 209.95 471.307 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 172.651 471.107 Td [(diag)-383(|)-384(Cut)-383(out)-383(main)-384(diagonal)]TJ +/F27 9.9626 Tf 213.387 471.107 Td [(diag)-383(|)-384(Cut)-383(out)-383(main)-384(diagonal)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -1.025 -18.389 Td [(call)-525(a%clip_diag\050b,info\051)]TJ/F8 9.9626 Tf -5.977 -21.798 Td [(Returns)-333(a)-334(cop)28(y)-333(of)]TJ/F30 9.9626 Tf 80.753 0 Td [(a)]TJ/F8 9.9626 Tf 8.551 0 Td [(without)-333(the)-334(main)-333(diagonal.)]TJ +/F30 9.9626 Tf -41.761 -18.389 Td [(call)-525(a%clip_diag\050b,info\051)]TJ/F8 9.9626 Tf -5.977 -21.798 Td [(Returns)-333(a)-334(cop)28(y)-333(of)]TJ/F30 9.9626 Tf 80.753 0 Td [(a)]TJ/F8 9.9626 Tf 8.551 0 Td [(without)-333(the)-334(main)-333(diagonal.)]TJ 0 g 0 G /F27 9.9626 Tf -104.248 -19.83 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -7207,7 +7268,7 @@ BT 0 g 0 G /F27 9.9626 Tf -185.305 -19.878 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -25.875 Td [(tril)-383(|)-384(Return)-383(the)-383(lo)31(w)32(er)-383(triangle)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -25.875 Td [(3.2.15)-1150(tril)-384(|)-383(Return)-383(the)-384(lo)32(w)32(er)-383(triangle)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf 20.921 -18.389 Td [(call)-525(a%tril\050l,info[,&)]TJ 15.691 -11.956 Td [(&)-525(diag,imin,imax,jmin,jmax,rscale,cscale,u]\051)]TJ/F8 9.9626 Tf -21.668 -21.798 Td [(Returns)-376(the)-376(lo)28(w)28(er)-376(triangular)-375(part)-376(of)-376(submatrix)]TJ/F30 9.9626 Tf 210.932 0 Td [(A\050imin:imax,jmin:jmax\051)]TJ/F8 9.9626 Tf 115.068 0 Td [(,)]TJ -340.944 -11.955 Td [(optionally)-222(rescaling)-222(ro)27(w/col)-222(indices)-222(to)-222(the)-222(range)]TJ/F30 9.9626 Tf 205.535 0 Td [(1:imax-imin+1,1:jmax-jmin+1)]TJ/F8 9.9626 Tf -205.535 -11.955 Td [(and)-333(returing)-333(the)-334(complemen)28(tary)-333(upp)-28(er)-333(triangle.)]TJ @@ -7225,9 +7286,9 @@ ET endstream endobj -952 0 obj +978 0 obj << -/Length 5484 +/Length 5497 >> stream 0 g 0 G @@ -7263,7 +7324,7 @@ BT 0 g 0 G /F27 9.9626 Tf -185.305 -18.825 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -25.421 Td [(triu)-383(|)-384(Return)-383(the)-383(upp)-32(er)-384(triangle)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -25.421 Td [(3.2.16)-1150(triu)-384(|)-383(Return)-383(the)-383(upp)-32(er)-384(triangle)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf 20.922 -18.39 Td [(call)-525(a%triu\050u,info[,&)]TJ 15.691 -11.955 Td [(&)-525(diag,imin,imax,jmin,jmax,rscale,cscale,l]\051)]TJ/F8 9.9626 Tf -21.669 -19.165 Td [(Returns)-340(the)-340(upp)-28(er)-340(triangular)-340(part)-340(of)-340(submatrix)]TJ/F30 9.9626 Tf 210.933 0 Td [(A\050imin:imax,jmin:jmax\051)]TJ/F8 9.9626 Tf 115.067 0 Td [(,)]TJ -340.944 -11.955 Td [(optionally)-222(rescaling)-222(ro)27(w/col)-222(indices)-222(to)-222(the)-222(range)]TJ/F30 9.9626 Tf 205.536 0 Td [(1:imax-imin+1,1:jmax-jmin+1)]TJ/F8 9.9626 Tf 141.219 0 Td [(,)]TJ -346.755 -11.955 Td [(and)-333(returing)-334(th)1(e)-334(complemen)28(tary)-333(lo)27(w)28(er)-333(triangle.)]TJ @@ -7312,39 +7373,39 @@ ET endstream endobj -958 0 obj +984 0 obj << -/Length 7694 +/Length 7723 >> stream 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 150.705 706.129 Td [(psb)]TJ +/F27 9.9626 Tf 150.705 706.129 Td [(3.2.17)-1150(psb)]TJ ET q -1 0 0 1 168.641 706.328 cm +1 0 0 1 209.377 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 172.078 706.129 Td [(set)]TJ +/F27 9.9626 Tf 212.814 706.129 Td [(set)]TJ ET q -1 0 0 1 186.992 706.328 cm +1 0 0 1 227.727 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 190.429 706.129 Td [(mat)]TJ +/F27 9.9626 Tf 231.165 706.129 Td [(mat)]TJ ET q -1 0 0 1 210.688 706.328 cm +1 0 0 1 251.424 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 214.125 706.129 Td [(default)-383(|)-384(Set)-383(default)-383(storage)-384(format)]TJ +/F27 9.9626 Tf 254.861 706.129 Td [(default)-383(|)-384(Set)-383(default)-383(storage)-384(format)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -63.42 -18.389 Td [(call)-1050(psb_set_mat_default\050a\051)]TJ +/F30 9.9626 Tf -104.156 -18.389 Td [(call)-1050(psb_set_mat_default\050a\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -20.935 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -7355,7 +7416,7 @@ BT 0 g 0 G 0 -19.532 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(a)-285(v)56(ariable)-285(of)]TJ/F30 9.9626 Tf 55.581 0 Td [(class\050psb_T_base_sparse_mat\051)]TJ/F8 9.9626 Tf 149.285 0 Td [(requesting)-285(a)-284(new)-285(default)-285(stor-)]TJ -190.511 -11.955 Td [(age)-333(format.)]TJ 0 -11.956 Td [(T)28(yp)-28(e:)-444(required.)]TJ/F27 9.9626 Tf -24.906 -25.726 Td [(clone)-383(|)-384(Clone)-383(curren)32(t)-383(ob)-64(ject)]TJ +/F8 9.9626 Tf 10.551 0 Td [(a)-285(v)56(ariable)-285(of)]TJ/F30 9.9626 Tf 55.581 0 Td [(class\050psb_T_base_sparse_mat\051)]TJ/F8 9.9626 Tf 149.285 0 Td [(requesting)-285(a)-284(new)-285(default)-285(stor-)]TJ -190.511 -11.955 Td [(age)-333(format.)]TJ 0 -11.956 Td [(T)28(yp)-28(e:)-444(required.)]TJ/F27 9.9626 Tf -24.906 -25.726 Td [(3.2.18)-1150(clone)-383(|)-384(Clone)-383(curren)32(t)-383(ob)-64(ject)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf 0 -18.389 Td [(call)-1050(a%clone\050b,info\051)]TJ @@ -7380,7 +7441,7 @@ BT 0 g 0 G /F27 9.9626 Tf -11.346 -19.532 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -25.727 Td [(3.2.2)-1150(Named)-383(Constan)32(ts)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ/F27 9.9626 Tf -23.758 -25.727 Td [(3.2.19)-1150(Named)-383(Constan)32(ts)]TJ 0 g 0 G 0 -18.389 Td [(psb)]TJ ET @@ -7589,9 +7650,9 @@ ET endstream endobj -964 0 obj +990 0 obj << -/Length 3682 +/Length 3718 >> stream 0 g 0 G @@ -7627,17 +7688,17 @@ BT /F8 9.9626 Tf -22.069 -39.795 Td [(Figure)-333(5:)-889(The)-334(P)1(SBLAS)-334(de\014ned)-333(data)-333(t)27(yp)-27(e)-334(that)-333(con)28(tains)-333(a)-334(dense)-333(v)28(ector.)]TJ 0 g 0 G 0 g 0 G -/F27 9.9626 Tf -14.169 -39.964 Td [(3.3.1)-1150(V)96(ector)-384(Metho)-32(ds)]TJ 0 -18.928 Td [(get)]TJ +/F27 9.9626 Tf -14.169 -39.964 Td [(3.3.1)-1150(V)96(ector)-384(Metho)-32(ds)]TJ 0 -18.928 Td [(3.3.2)-1150(get)]TJ ET q -1 0 0 1 116.018 362.408 cm +1 0 0 1 151.025 362.408 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 119.455 362.208 Td [(nro)32(ws)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(ro)32(ws)-383(in)-383(a)-384(dense)-383(v)32(ector)]TJ +/F27 9.9626 Tf 154.462 362.208 Td [(nro)32(ws)-383(|)-384(Get)-383(n)32(um)32(b)-32(er)-383(of)-384(ro)32(ws)-383(in)-383(a)-384(dense)-383(v)32(ector)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -19.56 -18.927 Td [(nr)-525(=)-525(v%get_nrows\050\051)]TJ +/F30 9.9626 Tf -54.567 -18.927 Td [(nr)-525(=)-525(v%get_nrows\050\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -22.786 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -7655,7 +7716,7 @@ BT 0 g 0 G 0 -21.082 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(The)-333(n)28(um)27(b)-27(e)-1(r)-333(of)-333(ro)28(ws)-334(of)-333(dense)-333(v)27(ector)]TJ/F30 9.9626 Tf 159.596 0 Td [(v)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ/F27 9.9626 Tf -243.213 -27.431 Td [(sizeof)-383(|)-384(Get)-383(memory)-383(o)-32(ccupation)-384(in)-383(b)32(ytes)-384(of)-383(a)-383(dense)-384(v)32(ector)]TJ +/F8 9.9626 Tf 78.387 0 Td [(The)-333(n)28(um)27(b)-27(e)-1(r)-333(of)-333(ro)28(ws)-334(of)-333(dense)-333(v)27(ector)]TJ/F30 9.9626 Tf 159.596 0 Td [(v)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ/F27 9.9626 Tf -243.213 -27.431 Td [(3.3.3)-1150(sizeof)-383(|)-384(Get)-383(memory)-384(o)-31(cc)-1(u)1(pa)-1(tion)-383(in)-383(b)32(ytes)-384(of)-383(a)-383(dense)-384(v)32(ector)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf 0 -18.927 Td [(memory_size)-525(=)-525(v%sizeof\050\051)]TJ @@ -7673,9 +7734,9 @@ ET endstream endobj -971 0 obj +997 0 obj << -/Length 3828 +/Length 3840 >> stream 0 g 0 G @@ -7691,7 +7752,7 @@ BT 0 g 0 G 0 -24.103 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.386 0 Td [(The)-333(memory)-334(o)-28(ccupation)-333(in)-333(b)28(ytes.)]TJ/F27 9.9626 Tf -78.386 -31.438 Td [(set)-383(|)-384(Set)-383(con)32(ten)32(ts)-383(of)-384(the)-383(v)32(ector)]TJ +/F8 9.9626 Tf 78.386 0 Td [(The)-333(memory)-334(o)-28(ccupation)-333(in)-333(b)28(ytes.)]TJ/F27 9.9626 Tf -78.386 -31.438 Td [(3.3.4)-1150(set)-383(|)-384(Set)-383(con)32(ten)32(ts)-384(of)-383(the)-383(v)32(ector)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf 5.23 -20.333 Td [(call)-1050(v%set\050alpha[,first,last]\051)]TJ 0 -11.955 Td [(call)-1050(v%set\050vect[,first,last]\051)]TJ 0 -11.956 Td [(call)-1050(v%zero\050\051)]TJ @@ -7740,25 +7801,25 @@ ET endstream endobj -978 0 obj +1004 0 obj << -/Length 4629 +/Length 4654 >> stream 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 99.895 706.129 Td [(get)]TJ +/F27 9.9626 Tf 99.895 706.129 Td [(3.3.5)-1150(get)]TJ ET q -1 0 0 1 116.018 706.328 cm +1 0 0 1 151.025 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 119.455 706.129 Td [(v)32(ect)-383(|)-384(Get)-383(a)-383(cop)32(y)-384(of)-383(the)-383(v)31(ector)-383(con)32(ten)32(ts)]TJ +/F27 9.9626 Tf 154.462 706.129 Td [(v)32(ect)-383(|)-384(Get)-383(a)-383(cop)31(y)-383(of)-383(the)-384(v)32(ector)-383(con)32(ten)32(ts)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -19.56 -19.197 Td [(extv)-525(=)-525(v%get_vect\050[n]\051)]TJ +/F30 9.9626 Tf -54.567 -19.197 Td [(extv)-525(=)-525(v%get_vect\050[n]\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -23.219 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -7780,7 +7841,7 @@ BT 0 g 0 G 0 -21.66 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(An)-353(allo)-28(catable)-354(arra)28(y)-353(holding)-354(a)-353(cop)28(y)-354(of)-353(the)-354(dense)-353(v)28(ector)-354(con-)]TJ -53.48 -11.956 Td [(ten)28(ts.)-440(If)-319(the)-320(argumen)28(t)]TJ/F11 9.9626 Tf 99.799 0 Td [(n)]TJ/F8 9.9626 Tf 9.161 0 Td [(is)-319(sp)-28(eci\014ed,)-322(the)-320(size)-319(of)-319(the)-320(returned)-319(arra)28(y)-319(e)-1(qu)1(als)]TJ -108.96 -11.955 Td [(the)-401(minim)28(um)-401(b)-28(et)28(w)28(een)]TJ/F11 9.9626 Tf 102.199 0 Td [(n)]TJ/F8 9.9626 Tf 9.974 0 Td [(and)-401(the)-401(in)28(ternal)-401(size)-401(of)-400(the)-401(v)27(ector,)-417(or)-401(0)-401(if)]TJ/F11 9.9626 Tf 189.961 0 Td [(n)]TJ/F8 9.9626 Tf 9.973 0 Td [(is)]TJ -312.107 -11.955 Td [(negativ)28(e;)-389(otherwise,)-380(the)-371(size)-370(of)-371(the)-370(arra)28(y)-371(is)-370(the)-371(same)-371(as)-370(the)-371(in)28(ternal)-370(size)]TJ 0 -11.955 Td [(of)-333(the)-334(v)28(ector.)]TJ/F27 9.9626 Tf -24.907 -28.197 Td [(clone)-383(|)-384(Clone)-383(curren)32(t)-383(ob)-64(ject)]TJ +/F8 9.9626 Tf 78.387 0 Td [(An)-353(allo)-28(catable)-354(arra)28(y)-353(holding)-354(a)-353(cop)28(y)-354(of)-353(the)-354(dense)-353(v)28(ector)-354(con-)]TJ -53.48 -11.956 Td [(ten)28(ts.)-440(If)-319(the)-320(argumen)28(t)]TJ/F11 9.9626 Tf 99.799 0 Td [(n)]TJ/F8 9.9626 Tf 9.161 0 Td [(is)-319(sp)-28(eci\014ed,)-322(the)-320(size)-319(of)-319(the)-320(returned)-319(arra)28(y)-319(e)-1(qu)1(als)]TJ -108.96 -11.955 Td [(the)-401(minim)28(um)-401(b)-28(et)28(w)28(een)]TJ/F11 9.9626 Tf 102.199 0 Td [(n)]TJ/F8 9.9626 Tf 9.974 0 Td [(and)-401(the)-401(in)28(ternal)-401(size)-401(of)-400(the)-401(v)27(ector,)-417(or)-401(0)-401(if)]TJ/F11 9.9626 Tf 189.961 0 Td [(n)]TJ/F8 9.9626 Tf 9.973 0 Td [(is)]TJ -312.107 -11.955 Td [(negativ)28(e;)-389(otherwise,)-380(the)-371(size)-370(of)-371(the)-370(arra)28(y)-371(is)-370(the)-371(same)-371(as)-370(the)-371(in)28(ternal)-370(size)]TJ 0 -11.955 Td [(of)-333(the)-334(v)28(ector.)]TJ/F27 9.9626 Tf -24.907 -28.197 Td [(3.3.6)-1150(clone)-383(|)-384(Clone)-383(curren)32(t)-384(ob)-63(ject)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf 0 -19.197 Td [(call)-1050(x%clone\050y,info\051)]TJ @@ -7831,7 +7892,7 @@ ET endstream endobj -984 0 obj +1010 0 obj << /Length 3667 >> @@ -7935,622 +7996,324 @@ ET endstream endobj -989 0 obj +1015 0 obj << /Length 157 >> -stream -0 g 0 G -0 g 0 G -BT -/F16 14.3462 Tf 99.895 706.129 Td [(4)-1125(Computational)-375(routines)]TJ -0 g 0 G -/F8 9.9626 Tf 166.875 -615.691 Td [(29)]TJ -0 g 0 G -ET - -endstream -endobj -1000 0 obj -<< -/Length 7321 ->> -stream -0 g 0 G -0 g 0 G -BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 706.129 Td [(geaxpb)31(y)-375(|)-375(General)-375(Dense)-375(Matrix)-375(Sum)]TJ/F8 9.9626 Tf -25.091 -18.578 Td [(This)-436(subroutine)-436(is)-436(an)-436(in)28(terface)-437(to)-436(the)-436(computational)-436(k)28(ernel)-436(for)-436(dense)-436(matrix)]TJ 0 -11.955 Td [(sum:)]TJ/F11 9.9626 Tf 142.537 -12.258 Td [(y)]TJ/F14 9.9626 Tf 8.009 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(\013)-226(x)]TJ/F8 9.9626 Tf 16.532 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -189.771 -22.424 Td [(call)-525(psb_geaxpby\050alpha,)-525(x,)-525(beta,)-525(y,)-525(desc_a,)-525(info\051)]TJ -0 g 0 G -0 g 0 G -0 g 0 G -ET -q -1 0 0 1 228.797 616.077 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S -Q -BT -/F11 9.9626 Tf 234.775 607.509 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(\013)]TJ/F8 9.9626 Tf 6.41 0 Td [(,)]TJ/F11 9.9626 Tf 6.089 0 Td [(\014)]TJ/F27 9.9626 Tf 84.799 0 Td [(Subroutine)]TJ -ET -q -1 0 0 1 228.797 603.724 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S -Q -BT -/F8 9.9626 Tf 234.775 595.156 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ -ET -q -1 0 0 1 370.782 595.355 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.771 595.156 Td [(geaxpb)28(y)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ -ET -q -1 0 0 1 370.782 583.4 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.771 583.201 Td [(geaxpb)28(y)]TJ -138.996 -11.956 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ -ET -q -1 0 0 1 370.782 571.445 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.771 571.245 Td [(geaxpb)28(y)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ -ET -q -1 0 0 1 370.782 559.49 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.771 559.29 Td [(geaxpb)28(y)]TJ -ET -q -1 0 0 1 228.797 555.504 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 278.877 527.465 Td [(T)83(able)-333(1:)-444(Data)-334(t)28(yp)-28(es)]TJ -0 g 0 G -0 g 0 G -0 g 0 G -/F27 9.9626 Tf -128.172 -34.102 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -20.33 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -20.329 Td [(alpha)]TJ -0 g 0 G -/F8 9.9626 Tf 32.032 0 Td [(the)-333(scalar)]TJ/F11 9.9626 Tf 45.469 0 Td [(\013)]TJ/F8 9.9626 Tf 6.41 0 Td [(.)]TJ -59.004 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(n)28(um)28(b)-28(er)-333(of)-334(the)-333(data)-333(t)28(yp)-28(e)-334(in)1(dicate)-1(d)-333(in)-333(T)83(able)]TJ -0 0 1 rg 0 0 1 RG - [-333(1)]TJ -0 g 0 G - [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -20.33 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.118 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -167.933 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)28(o)-255(arra)28(y)-255(or)-255(an)-255(ob)-55(ject)-255(of)-255(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 244.742 0 Td [(psb)]TJ -ET -q -1 0 0 1 436.673 336.932 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 439.811 336.732 Td [(T)]TJ -ET -q -1 0 0 1 445.669 336.932 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 448.807 336.732 Td [(vect)]TJ -ET -q -1 0 0 1 470.356 336.932 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 473.495 336.732 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf -297.884 -11.955 Td [(con)28(taining)-375(n)27(um)28(b)-28(ers)-375(of)-375(t)28(yp)-28(e)-375(sp)-28(eci\014ed)-375(in)-375(T)83(able)]TJ -0 0 1 rg 0 0 1 RG - [-375(1)]TJ -0 g 0 G - [(.)-570(The)-376(rank)-375(of)]TJ/F11 9.9626 Tf 274.031 0 Td [(x)]TJ/F8 9.9626 Tf 9.432 0 Td [(m)28(ust)-375(b)-28(e)]TJ -283.463 -11.955 Td [(the)-333(same)-334(of)]TJ/F11 9.9626 Tf 53.467 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -83.615 -20.33 Td [(b)-32(eta)]TJ -0 g 0 G -/F8 9.9626 Tf 26.94 0 Td [(the)-333(scalar)]TJ/F11 9.9626 Tf 45.469 0 Td [(\014)]TJ/F8 9.9626 Tf 6.161 0 Td [(.)]TJ -53.663 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(n)28(um)28(b)-28(er)-333(of)-334(the)-333(data)-333(t)28(yp)-28(e)-334(in)1(dicate)-1(d)-333(in)-333(T)83(able)]TJ -0 0 1 rg 0 0 1 RG - [-333(1)]TJ -0 g 0 G - [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -20.329 Td [(y)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(the)-333(global)-333(dense)-334(matrix)]TJ/F11 9.9626 Tf 193.276 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -184.639 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)28(o)-255(arra)28(y)-255(or)-255(an)-255(ob)-55(ject)-255(of)-255(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 244.742 0 Td [(psb)]TJ -ET -q -1 0 0 1 436.673 176.72 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 439.811 176.521 Td [(T)]TJ -ET -q -1 0 0 1 445.669 176.72 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 448.807 176.521 Td [(vect)]TJ -ET -q -1 0 0 1 470.356 176.72 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 473.495 176.521 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf -297.884 -11.955 Td [(con)28(taining)-334(n)27(u)1(m)27(b)-27(e)-1(r)1(s)-335(of)-334(the)-334(t)28(yp)-28(e)-334(indicated)-334(in)-334(T)83(able)]TJ -0 0 1 rg 0 0 1 RG - [-334(1)]TJ -0 g 0 G - [(.)-447(The)-334(rank)-335(of)]TJ/F11 9.9626 Tf 288.869 0 Td [(y)]TJ/F8 9.9626 Tf 8.572 0 Td [(m)28(ust)]TJ -297.441 -11.955 Td [(b)-28(e)-333(the)-333(s)-1(ame)-333(of)]TJ/F11 9.9626 Tf 67.027 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -97.627 -20.33 Td [(desc)]TJ -ET -q -1 0 0 1 172.619 132.48 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 176.057 132.281 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(con)28(tains)-334(data)-333(structures)-333(for)-333(c)-1(omm)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ -0 g 0 G -/F8 9.9626 Tf 109.589 -29.888 Td [(30)]TJ -0 g 0 G -ET - -endstream -endobj -1006 0 obj -<< -/Length 2659 ->> -stream -0 g 0 G -0 g 0 G -BT -/F8 9.9626 Tf 124.802 706.129 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 135.658 0 Td [(psb)]TJ -ET -q -1 0 0 1 276.779 682.418 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 279.917 682.219 Td [(desc)]TJ -ET -q -1 0 0 1 301.466 682.418 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 304.604 682.219 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -225.631 -21.918 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.926 Td [(y)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(result)-333(submatrix)]TJ/F11 9.9626 Tf 162.364 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -153.727 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)27(o)-254(arra)27(y)-254(or)-255(an)-255(ob)-55(jec)-1(t)-254(of)-255(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 244.743 0 Td [(psb)]TJ -ET -q -1 0 0 1 385.864 592.754 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 389.002 592.555 Td [(T)]TJ -ET -q -1 0 0 1 394.86 592.754 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 397.998 592.555 Td [(vect)]TJ -ET -q -1 0 0 1 419.547 592.754 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 422.685 592.555 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf -297.883 -11.955 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(the)-334(t)28(yp)-28(e)-333(indicated)-333(in)-333(T)83(able)]TJ -0 0 1 rg 0 0 1 RG - [-333(1)]TJ -0 g 0 G - [(.)]TJ +stream 0 g 0 G -/F27 9.9626 Tf -24.907 -19.926 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ +BT +/F16 14.3462 Tf 99.895 706.129 Td [(4)-1125(Computational)-375(routines)]TJ 0 g 0 G - 141.968 -422.416 Td [(31)]TJ +/F8 9.9626 Tf 166.875 -615.691 Td [(29)]TJ 0 g 0 G ET endstream endobj -923 0 obj +934 0 obj << /Type /ObjStm /N 100 -/First 888 -/Length 9619 +/First 886 +/Length 8982 >> stream -919 0 920 57 915 114 925 219 927 333 922 389 107 446 111 502 115 558 924 614 -929 706 931 820 119 877 932 934 123 991 928 1048 934 1140 936 1254 127 1310 131 1366 -135 1422 933 1478 939 1570 941 1684 139 1741 143 1798 938 1855 943 1947 945 2061 147 2117 -151 2173 942 2228 947 2320 949 2434 155 2491 159 2548 163 2605 946 2662 951 2754 953 2868 -167 2924 950 2980 957 3072 954 3214 955 3361 959 3507 171 3564 175 3621 179 3678 183 3735 -960 3792 956 3849 963 3954 965 4068 961 4124 187 4181 191 4237 195 4293 962 4349 970 4441 -967 4583 968 4728 972 4873 199 4930 969 4987 977 5079 974 5213 979 5359 204 5415 208 5471 -212 5527 980 5583 976 5640 983 5758 975 5892 985 6039 981 6096 216 6153 982 6210 988 6328 -990 6442 220 6498 987 6554 999 6633 991 6808 992 6953 993 7096 994 7241 995 7386 996 7529 -1001 7674 224 7732 973 7789 998 7845 1005 7976 997 8132 1002 8278 1003 8421 1007 8567 1004 8625 -% 919 0 obj -<< -/D [916 0 R /XYZ 171.358 301.959 null] ->> -% 920 0 obj -<< -/D [916 0 R /XYZ 455.673 168.146 null] ->> -% 915 0 obj -<< -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R /F16 570 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 925 0 obj +932 0 71 57 75 113 933 169 79 225 83 281 929 337 936 429 938 543 87 599 +91 654 95 709 935 764 943 856 939 1006 940 1162 941 1312 945 1457 99 1514 103 1570 +946 1627 947 1684 942 1741 951 1846 953 1960 949 2016 107 2073 111 2129 115 2185 950 2241 +955 2333 957 2447 119 2504 958 2560 123 2617 954 2674 960 2766 962 2880 127 2936 131 2992 +135 3048 959 3104 965 3196 967 3310 139 3367 143 3424 964 3481 969 3573 971 3687 147 3743 +151 3799 968 3855 973 3947 975 4061 155 4118 159 4175 163 4232 972 4289 977 4381 979 4495 +167 4551 976 4607 983 4699 980 4841 981 4988 985 5134 171 5191 175 5248 179 5305 183 5362 +986 5419 982 5476 989 5581 991 5695 987 5751 187 5808 191 5864 195 5920 988 5976 996 6068 +993 6210 994 6355 998 6500 199 6557 995 6614 1003 6706 1000 6844 1005 6991 204 7049 208 7106 +212 7162 1006 7219 1002 7278 1009 7397 1001 7535 1011 7683 1007 7742 216 7801 1008 7859 1014 7979 +% 932 0 obj << -/Type /Page -/Contents 926 0 R -/Resources 924 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 902 0 R +/D [930 0 R /XYZ 149.705 753.953 null] >> -% 927 0 obj +% 71 0 obj << -/D [925 0 R /XYZ 98.895 753.953 null] +/D [930 0 R /XYZ 150.705 716.092 null] >> -% 922 0 obj +% 75 0 obj << -/D [925 0 R /XYZ 155.008 667.994 null] +/D [930 0 R /XYZ 150.705 527.714 null] >> -% 107 0 obj +% 933 0 obj << -/D [925 0 R /XYZ 99.895 382.599 null] +/D [930 0 R /XYZ 395.482 368.65 null] >> -% 111 0 obj +% 79 0 obj << -/D [925 0 R /XYZ 99.895 366.516 null] +/D [930 0 R /XYZ 150.705 321.259 null] >> -% 115 0 obj +% 83 0 obj << -/D [925 0 R /XYZ 99.895 193.085 null] +/D [930 0 R /XYZ 150.705 203.963 null] >> -% 924 0 obj +% 929 0 obj << -/Font << /F30 784 0 R /F8 573 0 R /F27 572 0 R >> +/Font << /F27 584 0 R /F30 810 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 929 0 obj +% 936 0 obj << /Type /Page -/Contents 930 0 R -/Resources 928 0 R +/Contents 937 0 R +/Resources 935 0 R /MediaBox [0 0 595.276 841.89] -/Parent 902 0 R +/Parent 928 0 R >> -% 931 0 obj +% 938 0 obj << -/D [929 0 R /XYZ 149.705 753.953 null] +/D [936 0 R /XYZ 98.895 753.953 null] >> -% 119 0 obj +% 87 0 obj << -/D [929 0 R /XYZ 150.705 609.837 null] +/D [936 0 R /XYZ 99.895 585.142 null] >> -% 932 0 obj +% 91 0 obj << -/D [929 0 R /XYZ 150.705 392.536 null] +/D [936 0 R /XYZ 99.895 467.965 null] >> -% 123 0 obj +% 95 0 obj << -/D [929 0 R /XYZ 150.705 328.891 null] +/D [936 0 R /XYZ 99.895 257.286 null] >> -% 928 0 obj +% 935 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 934 0 obj +% 943 0 obj << /Type /Page -/Contents 935 0 R -/Resources 933 0 R +/Contents 944 0 R +/Resources 942 0 R /MediaBox [0 0 595.276 841.89] -/Parent 937 0 R ->> -% 936 0 obj -<< -/D [934 0 R /XYZ 98.895 753.953 null] +/Parent 928 0 R +/Annots [ 939 0 R 940 0 R 941 0 R ] >> -% 127 0 obj +% 939 0 obj << -/D [934 0 R /XYZ 99.895 718.084 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[0 1 0] +/Rect [188.06 277.052 200.015 285.465] +/A << /S /GoTo /D (cite.DesignPatterns) >> >> -% 131 0 obj +% 940 0 obj << -/D [934 0 R /XYZ 99.895 528.904 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[0 1 0] +/Rect [268.904 277.052 280.86 285.465] +/A << /S /GoTo /D (cite.Sparse03) >> >> -% 135 0 obj +% 941 0 obj << -/D [934 0 R /XYZ 99.895 327.768 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [459.496 274.562 466.47 286.517] +/A << /S /GoTo /D (figure.4) >> >> -% 933 0 obj +% 945 0 obj << -/Font << /F27 572 0 R /F30 784 0 R /F8 573 0 R >> -/ProcSet [ /PDF /Text ] +/D [943 0 R /XYZ 149.705 753.953 null] >> -% 939 0 obj +% 99 0 obj << -/Type /Page -/Contents 940 0 R -/Resources 938 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 937 0 R +/D [943 0 R /XYZ 150.705 553.709 null] >> -% 941 0 obj +% 103 0 obj << -/D [939 0 R /XYZ 149.705 753.953 null] +/D [943 0 R /XYZ 150.705 332.359 null] >> -% 139 0 obj +% 946 0 obj << -/D [939 0 R /XYZ 150.705 718.084 null] +/D [943 0 R /XYZ 171.358 301.959 null] >> -% 143 0 obj +% 947 0 obj << -/D [939 0 R /XYZ 150.705 477.598 null] +/D [943 0 R /XYZ 455.673 168.146 null] >> -% 938 0 obj +% 942 0 obj << -/Font << /F27 572 0 R /F30 784 0 R /F8 573 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R /F16 582 0 R >> /ProcSet [ /PDF /Text ] >> -% 943 0 obj +% 951 0 obj << /Type /Page -/Contents 944 0 R -/Resources 942 0 R +/Contents 952 0 R +/Resources 950 0 R /MediaBox [0 0 595.276 841.89] -/Parent 937 0 R +/Parent 928 0 R >> -% 945 0 obj +% 953 0 obj +<< +/D [951 0 R /XYZ 98.895 753.953 null] +>> +% 949 0 obj << -/D [943 0 R /XYZ 98.895 753.953 null] +/D [951 0 R /XYZ 155.008 667.994 null] >> -% 147 0 obj +% 107 0 obj << -/D [943 0 R /XYZ 99.895 718.084 null] +/D [951 0 R /XYZ 99.895 382.599 null] >> -% 151 0 obj +% 111 0 obj << -/D [943 0 R /XYZ 99.895 383.68 null] +/D [951 0 R /XYZ 99.895 364.643 null] >> -% 942 0 obj +% 115 0 obj +<< +/D [951 0 R /XYZ 99.895 191.212 null] +>> +% 950 0 obj << -/Font << /F27 572 0 R /F30 784 0 R /F8 573 0 R >> +/Font << /F30 810 0 R /F8 585 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 947 0 obj +% 955 0 obj << /Type /Page -/Contents 948 0 R -/Resources 946 0 R +/Contents 956 0 R +/Resources 954 0 R /MediaBox [0 0 595.276 841.89] -/Parent 937 0 R +/Parent 928 0 R >> -% 949 0 obj +% 957 0 obj << -/D [947 0 R /XYZ 149.705 753.953 null] +/D [955 0 R /XYZ 149.705 753.953 null] >> -% 155 0 obj +% 119 0 obj << -/D [947 0 R /XYZ 150.705 718.084 null] +/D [955 0 R /XYZ 150.705 611.35 null] >> -% 159 0 obj +% 958 0 obj << -/D [947 0 R /XYZ 150.705 483.063 null] +/D [955 0 R /XYZ 150.705 387.487 null] >> -% 163 0 obj +% 123 0 obj << -/D [947 0 R /XYZ 150.705 248.041 null] +/D [955 0 R /XYZ 150.705 324.426 null] >> -% 946 0 obj +% 954 0 obj << -/Font << /F27 572 0 R /F30 784 0 R /F8 573 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 951 0 obj +% 960 0 obj << /Type /Page -/Contents 952 0 R -/Resources 950 0 R +/Contents 961 0 R +/Resources 959 0 R /MediaBox [0 0 595.276 841.89] -/Parent 937 0 R ->> -% 953 0 obj -<< -/D [951 0 R /XYZ 98.895 753.953 null] ->> -% 167 0 obj -<< -/D [951 0 R /XYZ 99.895 476.867 null] +/Parent 963 0 R >> -% 950 0 obj +% 962 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R >> -/ProcSet [ /PDF /Text ] +/D [960 0 R /XYZ 98.895 753.953 null] >> -% 957 0 obj +% 127 0 obj << -/Type /Page -/Contents 958 0 R -/Resources 956 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 937 0 R -/Annots [ 954 0 R 955 0 R ] +/D [960 0 R /XYZ 99.895 716.092 null] >> -% 954 0 obj +% 131 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [250.191 165.213 257.165 176.061] -/A << /S /GoTo /D (section.6) >> +/D [960 0 R /XYZ 99.895 527.657 null] >> -% 955 0 obj +% 135 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [343.178 129.347 350.152 140.196] -/A << /S /GoTo /D (figure.5) >> +/D [960 0 R /XYZ 99.895 326.521 null] >> % 959 0 obj << -/D [957 0 R /XYZ 149.705 753.953 null] ->> -% 171 0 obj -<< -/D [957 0 R /XYZ 150.705 718.084 null] +/Font << /F27 584 0 R /F30 810 0 R /F8 585 0 R >> +/ProcSet [ /PDF /Text ] >> -% 175 0 obj +% 965 0 obj << -/D [957 0 R /XYZ 150.705 590.059 null] +/Type /Page +/Contents 966 0 R +/Resources 964 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 963 0 R >> -% 179 0 obj +% 967 0 obj << -/D [957 0 R /XYZ 150.705 402.035 null] +/D [965 0 R /XYZ 149.705 753.953 null] >> -% 183 0 obj +% 139 0 obj << -/D [957 0 R /XYZ 150.705 233.858 null] +/D [965 0 R /XYZ 150.705 716.092 null] >> -% 960 0 obj +% 143 0 obj << -/D [957 0 R /XYZ 171.961 204.012 null] +/D [965 0 R /XYZ 150.705 475.461 null] >> -% 956 0 obj +% 964 0 obj << -/Font << /F27 572 0 R /F30 784 0 R /F8 573 0 R /F16 570 0 R >> +/Font << /F27 584 0 R /F30 810 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 963 0 obj +% 969 0 obj << /Type /Page -/Contents 964 0 R -/Resources 962 0 R +/Contents 970 0 R +/Resources 968 0 R /MediaBox [0 0 595.276 841.89] -/Parent 966 0 R ->> -% 965 0 obj -<< -/D [963 0 R /XYZ 98.895 753.953 null] ->> -% 961 0 obj -<< -/D [963 0 R /XYZ 157.678 433.055 null] +/Parent 963 0 R >> -% 187 0 obj +% 971 0 obj << -/D [963 0 R /XYZ 99.895 391.443 null] +/D [969 0 R /XYZ 98.895 753.953 null] >> -% 191 0 obj +% 147 0 obj << -/D [963 0 R /XYZ 99.895 374.163 null] +/D [969 0 R /XYZ 99.895 716.092 null] >> -% 195 0 obj +% 151 0 obj << -/D [963 0 R /XYZ 99.895 195.076 null] +/D [969 0 R /XYZ 99.895 384.228 null] >> -% 962 0 obj +% 968 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F27 584 0 R /F30 810 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 970 0 obj +% 973 0 obj << /Type /Page -/Contents 971 0 R -/Resources 969 0 R +/Contents 974 0 R +/Resources 972 0 R /MediaBox [0 0 595.276 841.89] -/Parent 966 0 R -/Annots [ 967 0 R 968 0 R ] +/Parent 963 0 R >> -% 967 0 obj +% 975 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [432.897 385.356 439.871 396.204] -/A << /S /GoTo /D (table.1) >> +/D [973 0 R /XYZ 149.705 753.953 null] >> -% 968 0 obj +% 155 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [432.897 241.508 439.871 252.356] -/A << /S /GoTo /D (table.1) >> +/D [973 0 R /XYZ 150.705 716.092 null] >> -% 972 0 obj +% 159 0 obj << -/D [970 0 R /XYZ 149.705 753.953 null] +/D [973 0 R /XYZ 150.705 483.063 null] >> -% 199 0 obj +% 163 0 obj << -/D [970 0 R /XYZ 150.705 613.581 null] +/D [973 0 R /XYZ 150.705 248.041 null] >> -% 969 0 obj +% 972 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F27 584 0 R /F30 810 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> % 977 0 obj @@ -8559,40 +8322,19 @@ stream /Contents 978 0 R /Resources 976 0 R /MediaBox [0 0 595.276 841.89] -/Parent 966 0 R -/Annots [ 974 0 R ] ->> -% 974 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [126.875 152.981 133.849 164.106] -/A << /S /GoTo /D (figure.6) >> +/Parent 963 0 R >> % 979 0 obj << /D [977 0 R /XYZ 98.895 753.953 null] >> -% 204 0 obj -<< -/D [977 0 R /XYZ 99.895 718.084 null] ->> -% 208 0 obj -<< -/D [977 0 R /XYZ 99.895 430.016 null] ->> -% 212 0 obj -<< -/D [977 0 R /XYZ 99.895 226.068 null] ->> -% 980 0 obj +% 167 0 obj << -/D [977 0 R /XYZ 257.563 168.146 null] +/D [977 0 R /XYZ 99.895 476.867 null] >> % 976 0 obj << -/Font << /F27 572 0 R /F30 784 0 R /F8 573 0 R /F11 770 0 R /F16 570 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> % 983 0 obj @@ -8601,190 +8343,483 @@ stream /Contents 984 0 R /Resources 982 0 R /MediaBox [0 0 595.276 841.89] -/Parent 966 0 R -/Annots [ 975 0 R ] +/Parent 963 0 R +/Annots [ 980 0 R 981 0 R ] >> -% 975 0 obj +% 980 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [297.652 591.268 304.626 602.116] +/Rect [250.191 165.213 257.165 176.061] /A << /S /GoTo /D (section.6) >> >> +% 981 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [343.178 129.347 350.152 140.196] +/A << /S /GoTo /D (figure.5) >> +>> % 985 0 obj << /D [983 0 R /XYZ 149.705 753.953 null] >> -% 981 0 obj +% 171 0 obj << -/D [983 0 R /XYZ 206.288 656.371 null] +/D [983 0 R /XYZ 150.705 716.092 null] >> -% 216 0 obj +% 175 0 obj +<< +/D [983 0 R /XYZ 150.705 588.122 null] +>> +% 179 0 obj +<< +/D [983 0 R /XYZ 150.705 402.035 null] +>> +% 183 0 obj << -/D [983 0 R /XYZ 150.705 622.553 null] +/D [983 0 R /XYZ 150.705 233.858 null] +>> +% 986 0 obj +<< +/D [983 0 R /XYZ 171.961 204.012 null] >> % 982 0 obj << -/Font << /F47 986 0 R /F8 573 0 R /F16 570 0 R /F30 784 0 R /F27 572 0 R >> +/Font << /F27 584 0 R /F30 810 0 R /F8 585 0 R /F16 582 0 R >> /ProcSet [ /PDF /Text ] >> -% 988 0 obj +% 989 0 obj << /Type /Page -/Contents 989 0 R -/Resources 987 0 R +/Contents 990 0 R +/Resources 988 0 R /MediaBox [0 0 595.276 841.89] -/Parent 966 0 R +/Parent 992 0 R >> -% 990 0 obj +% 991 0 obj << -/D [988 0 R /XYZ 98.895 753.953 null] +/D [989 0 R /XYZ 98.895 753.953 null] >> -% 220 0 obj +% 987 0 obj +<< +/D [989 0 R /XYZ 157.678 433.055 null] +>> +% 187 0 obj +<< +/D [989 0 R /XYZ 99.895 391.443 null] +>> +% 191 0 obj +<< +/D [989 0 R /XYZ 99.895 374.453 null] +>> +% 195 0 obj << -/D [988 0 R /XYZ 99.895 716.092 null] +/D [989 0 R /XYZ 99.895 195.366 null] >> -% 987 0 obj +% 988 0 obj << -/Font << /F16 570 0 R /F8 573 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 999 0 obj +% 996 0 obj << /Type /Page -/Contents 1000 0 R -/Resources 998 0 R +/Contents 997 0 R +/Resources 995 0 R /MediaBox [0 0 595.276 841.89] -/Parent 966 0 R -/Annots [ 991 0 R 992 0 R 993 0 R 994 0 R 995 0 R 996 0 R ] +/Parent 992 0 R +/Annots [ 993 0 R 994 0 R ] >> -% 991 0 obj +% 993 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [432.897 401.949 439.871 412.798] +/Rect [432.897 385.356 439.871 396.204] /A << /S /GoTo /D (table.1) >> >> -% 992 0 obj +% 994 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [419.358 333.522 495.412 344.647] -/A << /S /GoTo /D (vdata) >> +/Rect [432.897 241.508 439.871 252.356] +/A << /S /GoTo /D (table.1) >> >> -% 993 0 obj +% 998 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [379.142 321.844 386.116 332.692] -/A << /S /GoTo /D (table.1) >> +/D [996 0 R /XYZ 149.705 753.953 null] >> -% 994 0 obj +% 199 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [432.897 241.738 439.871 252.586] -/A << /S /GoTo /D (table.1) >> +/D [996 0 R /XYZ 150.705 612.689 null] >> % 995 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [419.358 173.311 495.412 184.436] -/A << /S /GoTo /D (vdata) >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] >> -% 996 0 obj +% 1003 0 obj +<< +/Type /Page +/Contents 1004 0 R +/Resources 1002 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 992 0 R +/Annots [ 1000 0 R ] +>> +% 1000 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [396.435 161.632 403.409 172.481] -/A << /S /GoTo /D (table.1) >> +/Rect [126.875 152.981 133.849 164.106] +/A << /S /GoTo /D (figure.6) >> >> -% 1001 0 obj +% 1005 0 obj << -/D [999 0 R /XYZ 149.705 753.953 null] +/D [1003 0 R /XYZ 98.895 753.953 null] >> -% 224 0 obj +% 204 0 obj << -/D [999 0 R /XYZ 150.705 720.077 null] +/D [1003 0 R /XYZ 99.895 716.092 null] >> -% 973 0 obj +% 208 0 obj << -/D [999 0 R /XYZ 318.451 539.42 null] +/D [1003 0 R /XYZ 99.895 430.45 null] >> -% 998 0 obj +% 212 0 obj +<< +/D [1003 0 R /XYZ 99.895 226.068 null] +>> +% 1006 0 obj +<< +/D [1003 0 R /XYZ 257.563 168.146 null] +>> +% 1002 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F30 784 0 R /F27 572 0 R >> +/Font << /F27 584 0 R /F30 810 0 R /F8 585 0 R /F11 796 0 R /F16 582 0 R >> /ProcSet [ /PDF /Text ] >> -% 1005 0 obj +% 1009 0 obj << /Type /Page -/Contents 1006 0 R -/Resources 1004 0 R +/Contents 1010 0 R +/Resources 1008 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1008 0 R -/Annots [ 997 0 R 1002 0 R 1003 0 R ] +/Parent 992 0 R +/Annots [ 1001 0 R ] >> -% 997 0 obj +% 1001 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [259.464 679.008 326.522 690.133] -/A << /S /GoTo /D (descdata) >> +/Rect [297.652 591.268 304.626 602.116] +/A << /S /GoTo /D (section.6) >> >> -% 1002 0 obj +% 1011 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [368.549 589.345 444.603 600.47] -/A << /S /GoTo /D (vdata) >> +/D [1009 0 R /XYZ 149.705 753.953 null] >> -% 1003 0 obj +% 1007 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.558 577.666 352.532 588.514] -/A << /S /GoTo /D (table.1) >> +/D [1009 0 R /XYZ 206.288 656.371 null] >> -% 1007 0 obj +% 216 0 obj << -/D [1005 0 R /XYZ 98.895 753.953 null] +/D [1009 0 R /XYZ 150.705 622.553 null] >> -% 1004 0 obj +% 1008 0 obj +<< +/Font << /F47 1012 0 R /F8 585 0 R /F16 582 0 R /F30 810 0 R /F27 584 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1014 0 obj +<< +/Type /Page +/Contents 1015 0 R +/Resources 1013 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 992 0 R +>> + +endstream +endobj +1027 0 obj +<< +/Length 7331 +>> +stream +0 g 0 G +0 g 0 G +BT +/F16 11.9552 Tf 150.705 706.129 Td [(4.1)-1125(psb)]TJ +ET +q +1 0 0 1 202.396 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 206.431 706.129 Td [(geaxpb)31(y)-375(|)-375(General)-375(Dense)-375(Matrix)-375(Sum)]TJ/F8 9.9626 Tf -55.726 -18.578 Td [(This)-436(subroutine)-436(is)-436(an)-436(in)28(terface)-437(to)-436(the)-436(computational)-436(k)28(ernel)-436(for)-436(dense)-436(matrix)]TJ 0 -11.955 Td [(sum:)]TJ/F11 9.9626 Tf 142.537 -12.258 Td [(y)]TJ/F14 9.9626 Tf 8.009 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(\013)-226(x)]TJ/F8 9.9626 Tf 16.532 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -189.771 -22.424 Td [(call)-525(psb_geaxpby\050alpha,)-525(x,)-525(beta,)-525(y,)-525(desc_a,)-525(info\051)]TJ +0 g 0 G +0 g 0 G +0 g 0 G +ET +q +1 0 0 1 228.797 616.077 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +Q +BT +/F11 9.9626 Tf 234.775 607.509 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(\013)]TJ/F8 9.9626 Tf 6.41 0 Td [(,)]TJ/F11 9.9626 Tf 6.089 0 Td [(\014)]TJ/F27 9.9626 Tf 84.799 0 Td [(Subroutine)]TJ +ET +q +1 0 0 1 228.797 603.724 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +Q +BT +/F8 9.9626 Tf 234.775 595.156 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ +ET +q +1 0 0 1 370.782 595.355 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 373.771 595.156 Td [(geaxpb)28(y)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ +ET +q +1 0 0 1 370.782 583.4 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 373.771 583.201 Td [(geaxpb)28(y)]TJ -138.996 -11.956 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ +ET +q +1 0 0 1 370.782 571.445 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 373.771 571.245 Td [(geaxpb)28(y)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ +ET +q +1 0 0 1 370.782 559.49 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 373.771 559.29 Td [(geaxpb)28(y)]TJ +ET +q +1 0 0 1 228.797 555.504 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 278.877 527.465 Td [(T)83(able)-333(1:)-444(Data)-334(t)28(yp)-28(es)]TJ +0 g 0 G +0 g 0 G +0 g 0 G +/F27 9.9626 Tf -128.172 -34.102 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -20.33 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -20.329 Td [(alpha)]TJ +0 g 0 G +/F8 9.9626 Tf 32.032 0 Td [(the)-333(scalar)]TJ/F11 9.9626 Tf 45.469 0 Td [(\013)]TJ/F8 9.9626 Tf 6.41 0 Td [(.)]TJ -59.004 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(n)28(um)28(b)-28(er)-333(of)-334(the)-333(data)-333(t)28(yp)-28(e)-334(in)1(dicate)-1(d)-333(in)-333(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-333(1)]TJ +0 g 0 G + [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -20.33 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.118 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -167.933 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)28(o)-255(arra)28(y)-255(or)-255(an)-255(ob)-55(ject)-255(of)-255(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 244.742 0 Td [(psb)]TJ +ET +q +1 0 0 1 436.673 336.932 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 439.811 336.732 Td [(T)]TJ +ET +q +1 0 0 1 445.669 336.932 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 448.807 336.732 Td [(vect)]TJ +ET +q +1 0 0 1 470.356 336.932 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 473.495 336.732 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf -297.884 -11.955 Td [(con)28(taining)-375(n)27(um)28(b)-28(ers)-375(of)-375(t)28(yp)-28(e)-375(sp)-28(eci\014ed)-375(in)-375(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-375(1)]TJ +0 g 0 G + [(.)-570(The)-376(rank)-375(of)]TJ/F11 9.9626 Tf 274.031 0 Td [(x)]TJ/F8 9.9626 Tf 9.432 0 Td [(m)28(ust)-375(b)-28(e)]TJ -283.463 -11.955 Td [(the)-333(same)-334(of)]TJ/F11 9.9626 Tf 53.467 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -83.615 -20.33 Td [(b)-32(eta)]TJ +0 g 0 G +/F8 9.9626 Tf 26.94 0 Td [(the)-333(scalar)]TJ/F11 9.9626 Tf 45.469 0 Td [(\014)]TJ/F8 9.9626 Tf 6.161 0 Td [(.)]TJ -53.663 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(n)28(um)28(b)-28(er)-333(of)-334(the)-333(data)-333(t)28(yp)-28(e)-334(in)1(dicate)-1(d)-333(in)-333(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-333(1)]TJ +0 g 0 G + [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -20.329 Td [(y)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(the)-333(global)-333(dense)-334(matrix)]TJ/F11 9.9626 Tf 193.276 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -184.639 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)28(o)-255(arra)28(y)-255(or)-255(an)-255(ob)-55(ject)-255(of)-255(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 244.742 0 Td [(psb)]TJ +ET +q +1 0 0 1 436.673 176.72 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 439.811 176.521 Td [(T)]TJ +ET +q +1 0 0 1 445.669 176.72 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 448.807 176.521 Td [(vect)]TJ +ET +q +1 0 0 1 470.356 176.72 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 473.495 176.521 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf -297.884 -11.955 Td [(con)28(taining)-334(n)27(u)1(m)27(b)-27(e)-1(r)1(s)-335(of)-334(the)-334(t)28(yp)-28(e)-334(indicated)-334(in)-334(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-334(1)]TJ +0 g 0 G + [(.)-447(The)-334(rank)-335(of)]TJ/F11 9.9626 Tf 288.869 0 Td [(y)]TJ/F8 9.9626 Tf 8.572 0 Td [(m)28(ust)]TJ -297.441 -11.955 Td [(b)-28(e)-333(the)-333(s)-1(ame)-333(of)]TJ/F11 9.9626 Tf 67.027 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -97.627 -20.33 Td [(desc)]TJ +ET +q +1 0 0 1 172.619 132.48 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 176.057 132.281 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.55 0 Td [(con)28(tains)-334(data)-333(structures)-333(for)-333(c)-1(omm)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ +0 g 0 G +/F8 9.9626 Tf 109.589 -29.888 Td [(30)]TJ +0 g 0 G +ET + +endstream +endobj +1033 0 obj << -/Font << /F8 573 0 R /F27 572 0 R /F30 784 0 R /F11 770 0 R >> -/ProcSet [ /PDF /Text ] +/Length 2659 >> +stream +0 g 0 G +0 g 0 G +BT +/F8 9.9626 Tf 124.802 706.129 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 135.658 0 Td [(psb)]TJ +ET +q +1 0 0 1 276.779 682.418 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 279.917 682.219 Td [(desc)]TJ +ET +q +1 0 0 1 301.466 682.418 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 304.604 682.219 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -225.631 -21.918 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.926 Td [(y)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(result)-333(submatrix)]TJ/F11 9.9626 Tf 162.364 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -153.727 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)27(o)-254(arra)27(y)-254(or)-255(an)-255(ob)-55(jec)-1(t)-254(of)-255(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 244.743 0 Td [(psb)]TJ +ET +q +1 0 0 1 385.864 592.754 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 389.002 592.555 Td [(T)]TJ +ET +q +1 0 0 1 394.86 592.754 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 397.998 592.555 Td [(vect)]TJ +ET +q +1 0 0 1 419.547 592.754 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 422.685 592.555 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf -297.883 -11.955 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(the)-334(t)28(yp)-28(e)-333(indicated)-333(in)-333(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-333(1)]TJ +0 g 0 G + [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.926 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ +0 g 0 G + 141.968 -422.416 Td [(31)]TJ +0 g 0 G +ET endstream endobj -1016 0 obj +1043 0 obj << -/Length 7699 +/Length 7709 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(4.2)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 202.396 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(gedot)-375(|)-375(Dot)-375(Pro)-31(duct)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(This)-333(function)-334(computes)-333(dot)-333(pro)-28(duct)-333(b)-28(et)28(w)28(e)-1(en)-333(t)28(w)28(o)-334(v)28(ectors)]TJ/F11 9.9626 Tf 252.332 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(and)]TJ/F11 9.9626 Tf 19.371 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -285.96 -11.956 Td [(If)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F8 9.9626 Tf 9.014 0 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(y)]TJ/F8 9.9626 Tf 8.563 0 Td [(are)-333(real)-334(v)28(ectors)-333(it)-334(computes)-333(dot-pro)-28(duct)-333(as:)]TJ/F11 9.9626 Tf 101.783 -21.289 Td [(dot)]TJ/F14 9.9626 Tf 16.379 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 4.113 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.113 Td [(y)]TJ/F8 9.9626 Tf -189.774 -21.29 Td [(Else)-333(if)]TJ/F11 9.9626 Tf 30.358 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(y)]TJ/F8 9.9626 Tf 8.563 0 Td [(are)-333(complex)-334(v)28(ectors)-333(then)-334(it)-333(computes)-333(dot-pro)-28(duct)-333(as:)]TJ/F11 9.9626 Tf 80.747 -21.29 Td [(dot)]TJ/F14 9.9626 Tf 16.379 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 4.113 Td [(H)]TJ/F11 9.9626 Tf 7.556 -4.113 Td [(y)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(gedot)-375(|)-375(Dot)-375(Pro)-31(duct)]TJ/F8 9.9626 Tf -55.726 -18.389 Td [(This)-333(function)-334(computes)-333(dot)-333(pro)-28(duct)-333(b)-28(et)28(w)28(e)-1(en)-333(t)28(w)28(o)-334(v)28(ectors)]TJ/F11 9.9626 Tf 252.332 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(and)]TJ/F11 9.9626 Tf 19.371 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -285.96 -11.956 Td [(If)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F8 9.9626 Tf 9.014 0 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(y)]TJ/F8 9.9626 Tf 8.563 0 Td [(are)-333(real)-334(v)28(ectors)-333(it)-334(computes)-333(dot-pro)-28(duct)-333(as:)]TJ/F11 9.9626 Tf 101.783 -21.289 Td [(dot)]TJ/F14 9.9626 Tf 16.379 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 4.113 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.113 Td [(y)]TJ/F8 9.9626 Tf -189.774 -21.29 Td [(Else)-333(if)]TJ/F11 9.9626 Tf 30.358 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(y)]TJ/F8 9.9626 Tf 8.563 0 Td [(are)-333(complex)-334(v)28(ectors)-333(then)-334(it)-333(computes)-333(dot-pro)-28(duct)-333(as:)]TJ/F11 9.9626 Tf 80.747 -21.29 Td [(dot)]TJ/F14 9.9626 Tf 16.379 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 4.113 Td [(H)]TJ/F11 9.9626 Tf 7.556 -4.113 Td [(y)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf -190.414 -21.29 Td [(psb_gedot\050x,)-525(y,)-525(desc_a,)-525(info)-525([,global]\051)]TJ @@ -8956,7 +8991,7 @@ ET endstream endobj -1023 0 obj +1049 0 obj << /Length 5125 >> @@ -9043,22 +9078,22 @@ ET endstream endobj -1039 0 obj +1065 0 obj << -/Length 8416 +/Length 8426 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(4.3)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 202.396 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(gedots)-375(|)-375(Generalized)-375(Dot)-375(Pro)-31(duct)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(This)-392(subroutine)-392(computes)-392(a)-392(series)-392(of)-391(dot)-392(pro)-28(ducts)-392(among)-392(the)-392(columns)-392(of)-391(t)27(w)28(o)]TJ 0 -11.956 Td [(dense)-333(matrices)]TJ/F11 9.9626 Tf 67.109 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(:)]TJ/F11 9.9626 Tf 23.756 -11.955 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.08 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F14 9.9626 Tf 6.642 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(x)]TJ/F8 9.9626 Tf 5.693 0 Td [(\050:)]TJ/F11 9.9626 Tf 6.642 0 Td [(;)-167(i)]TJ/F8 9.9626 Tf 7.86 0 Td [(\051)]TJ/F10 6.9738 Tf 3.875 4.114 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.114 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(\050:)]TJ/F11 9.9626 Tf 6.642 0 Td [(;)-167(i)]TJ/F8 9.9626 Tf 7.86 0 Td [(\051)]TJ -215.343 -15.687 Td [(If)-245(the)-245(matrices)-245(are)-245(complex,)-262(then)-245(the)-245(usual)-245(con)28(v)28(en)27(tion)-245(ap)1(plies)-1(,)-262(i.e.)-415(the)-245(conjugate)]TJ 0 -11.955 Td [(transp)-28(ose)-323(of)]TJ/F11 9.9626 Tf 55.836 0 Td [(x)]TJ/F8 9.9626 Tf 8.913 0 Td [(is)-323(used.)-441(If)]TJ/F11 9.9626 Tf 46.365 0 Td [(x)]TJ/F8 9.9626 Tf 8.913 0 Td [(and)]TJ/F11 9.9626 Tf 19.27 0 Td [(y)]TJ/F8 9.9626 Tf 8.461 0 Td [(are)-323(of)-323(rank)-323(one,)-325(then)]TJ/F11 9.9626 Tf 94.211 0 Td [(r)-28(es)]TJ/F8 9.9626 Tf 17.3 0 Td [(is)-323(a)-323(scalar,)-325(else)-324(it)-323(is)]TJ -259.269 -11.955 Td [(a)-333(rank)-334(one)-333(arra)28(y)83(.)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(gedots)-375(|)-375(Generalized)-375(Dot)-375(Pro)-31(duct)]TJ/F8 9.9626 Tf -55.726 -18.389 Td [(This)-392(subroutine)-392(computes)-392(a)-392(series)-392(of)-391(dot)-392(pro)-28(ducts)-392(among)-392(the)-392(columns)-392(of)-391(t)27(w)28(o)]TJ 0 -11.956 Td [(dense)-333(matrices)]TJ/F11 9.9626 Tf 67.109 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(:)]TJ/F11 9.9626 Tf 23.756 -11.955 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.08 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F14 9.9626 Tf 6.642 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(x)]TJ/F8 9.9626 Tf 5.693 0 Td [(\050:)]TJ/F11 9.9626 Tf 6.642 0 Td [(;)-167(i)]TJ/F8 9.9626 Tf 7.86 0 Td [(\051)]TJ/F10 6.9738 Tf 3.875 4.114 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.114 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(\050:)]TJ/F11 9.9626 Tf 6.642 0 Td [(;)-167(i)]TJ/F8 9.9626 Tf 7.86 0 Td [(\051)]TJ -215.343 -15.687 Td [(If)-245(the)-245(matrices)-245(are)-245(complex,)-262(then)-245(the)-245(usual)-245(con)28(v)28(en)27(tion)-245(ap)1(plies)-1(,)-262(i.e.)-415(the)-245(conjugate)]TJ 0 -11.955 Td [(transp)-28(ose)-323(of)]TJ/F11 9.9626 Tf 55.836 0 Td [(x)]TJ/F8 9.9626 Tf 8.913 0 Td [(is)-323(used.)-441(If)]TJ/F11 9.9626 Tf 46.365 0 Td [(x)]TJ/F8 9.9626 Tf 8.913 0 Td [(and)]TJ/F11 9.9626 Tf 19.27 0 Td [(y)]TJ/F8 9.9626 Tf 8.461 0 Td [(are)-323(of)-323(rank)-323(one,)-325(then)]TJ/F11 9.9626 Tf 94.211 0 Td [(r)-28(es)]TJ/F8 9.9626 Tf 17.3 0 Td [(is)-323(a)-323(scalar,)-325(else)-324(it)-323(is)]TJ -259.269 -11.955 Td [(a)-333(rank)-334(one)-333(arra)28(y)83(.)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf 0 -18.175 Td [(call)-525(psb_gedots\050res,)-525(x,)-525(y,)-525(desc_a,)-525(info\051)]TJ @@ -9237,7 +9272,7 @@ ET endstream endobj -1044 0 obj +1070 0 obj << /Length 624 >> @@ -9256,22 +9291,22 @@ ET endstream endobj -1051 0 obj +1077 0 obj << -/Length 6865 +/Length 6875 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(4.4)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 202.396 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(normi)-375(|)-375(In\014nit)31(y-Norm)-375(of)-375(V)94(ector)]TJ/F8 9.9626 Tf -25.091 -19.477 Td [(This)-333(function)-334(computes)-333(the)-333(in\014nit)28(y-norm)-334(of)-333(a)-333(v)28(e)-1(ctor)]TJ/F11 9.9626 Tf 233.181 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -238.875 -11.955 Td [(If)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F8 9.9626 Tf 9.014 0 Td [(is)-333(a)-334(real)-333(v)28(ector)-334(it)-333(computes)-333(in\014nit)28(y)-334(norm)-333(as:)]TJ/F11 9.9626 Tf 115.269 -23.087 Td [(amax)]TJ/F14 9.9626 Tf 27.741 0 Td [(\040)]TJ/F8 9.9626 Tf 12.73 0 Td [(max)]TJ/F10 6.9738 Tf 7.861 -6.275 Td [(i)]TJ/F14 9.9626 Tf 12.341 6.275 Td [(j)]TJ/F11 9.9626 Tf 2.767 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.494 Td [(j)]TJ/F8 9.9626 Tf -206.697 -26.317 Td [(else)-333(if)]TJ/F11 9.9626 Tf 28.006 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(complex)-333(v)28(ector)-334(then)-333(it)-333(computes)-334(the)-333(in\014nit)28(y-norm)-333(as:)]TJ/F11 9.9626 Tf 61.446 -23.087 Td [(amax)]TJ/F14 9.9626 Tf 27.741 0 Td [(\040)]TJ/F8 9.9626 Tf 12.73 0 Td [(max)]TJ/F10 6.9738 Tf 7.861 -6.275 Td [(i)]TJ/F8 9.9626 Tf 12.341 6.275 Td [(\050)]TJ/F14 9.9626 Tf 3.874 0 Td [(j)]TJ/F11 9.9626 Tf 2.768 0 Td [(r)-28(e)]TJ/F8 9.9626 Tf 9.41 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F8 9.9626 Tf 3.317 1.494 Td [(\051)]TJ/F14 9.9626 Tf 3.875 0 Td [(j)]TJ/F8 9.9626 Tf 4.981 0 Td [(+)]TJ/F14 9.9626 Tf 9.962 0 Td [(j)]TJ/F11 9.9626 Tf 2.768 0 Td [(im)]TJ/F8 9.9626 Tf 12.179 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F8 9.9626 Tf 3.317 1.494 Td [(\051)]TJ/F14 9.9626 Tf 3.874 0 Td [(j)]TJ/F8 9.9626 Tf 2.767 0 Td [(\051)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(normi)-375(|)-375(In\014nit)31(y-Norm)-375(of)-375(V)94(ector)]TJ/F8 9.9626 Tf -55.726 -19.477 Td [(This)-333(function)-334(computes)-333(the)-333(in\014nit)28(y-norm)-334(of)-333(a)-333(v)28(e)-1(ctor)]TJ/F11 9.9626 Tf 233.181 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -238.875 -11.955 Td [(If)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F8 9.9626 Tf 9.014 0 Td [(is)-333(a)-334(real)-333(v)28(ector)-334(it)-333(computes)-333(in\014nit)28(y)-334(norm)-333(as:)]TJ/F11 9.9626 Tf 115.269 -23.087 Td [(amax)]TJ/F14 9.9626 Tf 27.741 0 Td [(\040)]TJ/F8 9.9626 Tf 12.73 0 Td [(max)]TJ/F10 6.9738 Tf 7.861 -6.275 Td [(i)]TJ/F14 9.9626 Tf 12.341 6.275 Td [(j)]TJ/F11 9.9626 Tf 2.767 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.494 Td [(j)]TJ/F8 9.9626 Tf -206.697 -26.317 Td [(else)-333(if)]TJ/F11 9.9626 Tf 28.006 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(complex)-333(v)28(ector)-334(then)-333(it)-333(computes)-334(the)-333(in\014nit)28(y-norm)-333(as:)]TJ/F11 9.9626 Tf 61.446 -23.087 Td [(amax)]TJ/F14 9.9626 Tf 27.741 0 Td [(\040)]TJ/F8 9.9626 Tf 12.73 0 Td [(max)]TJ/F10 6.9738 Tf 7.861 -6.275 Td [(i)]TJ/F8 9.9626 Tf 12.341 6.275 Td [(\050)]TJ/F14 9.9626 Tf 3.874 0 Td [(j)]TJ/F11 9.9626 Tf 2.768 0 Td [(r)-28(e)]TJ/F8 9.9626 Tf 9.41 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F8 9.9626 Tf 3.317 1.494 Td [(\051)]TJ/F14 9.9626 Tf 3.875 0 Td [(j)]TJ/F8 9.9626 Tf 4.981 0 Td [(+)]TJ/F14 9.9626 Tf 9.962 0 Td [(j)]TJ/F11 9.9626 Tf 2.768 0 Td [(im)]TJ/F8 9.9626 Tf 12.179 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F8 9.9626 Tf 3.317 1.494 Td [(\051)]TJ/F14 9.9626 Tf 3.874 0 Td [(j)]TJ/F8 9.9626 Tf 2.767 0 Td [(\051)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf -241.369 -26.901 Td [(psb_geamax\050x,)-525(desc_a,)-525(info)-525([,global]\051)]TJ 0 -11.956 Td [(psb_normi\050x,)-525(desc_a,)-525(info)-525([,global]\051)]TJ @@ -9413,7 +9448,7 @@ ET endstream endobj -1056 0 obj +1082 0 obj << /Length 4549 >> @@ -9492,22 +9527,22 @@ ET endstream endobj -1070 0 obj +1096 0 obj << -/Length 6310 +/Length 6320 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(4.5)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 202.396 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(geamaxs)-375(|)-375(Generalized)-375(In\014nit)31(y)-375(Norm)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(This)-359(subroutine)-359(computes)-360(a)-359(series)-359(of)-359(in\014nit)28(y)-359(norms)-360(on)-359(the)-359(columns)-359(of)-359(a)-359(dense)]TJ 0 -11.956 Td [(matrix)]TJ/F11 9.9626 Tf 32.406 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(:)]TJ/F11 9.9626 Tf 87.106 -11.955 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.08 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F14 9.9626 Tf 6.642 0 Td [(\040)]TJ/F8 9.9626 Tf 12.73 0 Td [(max)]TJ/F10 6.9738 Tf 7.069 -6.503 Td [(k)]TJ/F14 9.9626 Tf 13.133 6.503 Td [(j)]TJ/F11 9.9626 Tf 2.767 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(k)-31(;)-167(i)]TJ/F8 9.9626 Tf 13.36 0 Td [(\051)]TJ/F14 9.9626 Tf 3.874 0 Td [(j)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(geamaxs)-375(|)-375(Generalized)-375(In\014nit)31(y)-375(Norm)]TJ/F8 9.9626 Tf -55.726 -18.389 Td [(This)-359(subroutine)-359(computes)-360(a)-359(series)-359(of)-359(in\014nit)28(y)-359(norms)-360(on)-359(the)-359(columns)-359(of)-359(a)-359(dense)]TJ 0 -11.956 Td [(matrix)]TJ/F11 9.9626 Tf 32.406 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(:)]TJ/F11 9.9626 Tf 87.106 -11.955 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.08 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F14 9.9626 Tf 6.642 0 Td [(\040)]TJ/F8 9.9626 Tf 12.73 0 Td [(max)]TJ/F10 6.9738 Tf 7.069 -6.503 Td [(k)]TJ/F14 9.9626 Tf 13.133 6.503 Td [(j)]TJ/F11 9.9626 Tf 2.767 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(k)-31(;)-167(i)]TJ/F8 9.9626 Tf 13.36 0 Td [(\051)]TJ/F14 9.9626 Tf 3.874 0 Td [(j)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf -215.737 -25.377 Td [(call)-525(psb_geamaxs\050res,)-525(x,)-525(desc_a,)-525(info\051)]TJ @@ -9653,22 +9688,22 @@ ET endstream endobj -1078 0 obj +1104 0 obj << -/Length 7158 +/Length 7168 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(4.6)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 151.587 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(norm1)-375(|)-375(1-Norm)-375(of)-375(V)94(ector)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(This)-333(function)-334(computes)-333(the)-333(1-norm)-334(of)-333(a)-333(v)27(ector)]TJ/F11 9.9626 Tf 207.168 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -212.862 -11.956 Td [(If)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(real)-333(v)28(ector)-334(it)-333(computes)-333(1-norm)-334(as:)]TJ/F11 9.9626 Tf 123.449 -19.151 Td [(asum)]TJ/F14 9.9626 Tf 27.154 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.711 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.494 Td [(k)]TJ/F8 9.9626 Tf -196.303 -19.151 Td [(else)-333(if)]TJ/F11 9.9626 Tf 28.006 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(complex)-333(v)28(ector)-334(then)-333(it)-333(computes)-334(1-norm)-333(as:)]TJ/F11 9.9626 Tf 70.135 -19.152 Td [(asum)]TJ/F14 9.9626 Tf 27.154 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.711 0 Td [(r)-28(e)]TJ/F8 9.9626 Tf 9.411 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\051)]TJ/F14 9.9626 Tf 3.874 0 Td [(k)]TJ/F7 6.9738 Tf 4.982 -1.494 Td [(1)]TJ/F8 9.9626 Tf 6.683 1.494 Td [(+)]TJ/F14 9.9626 Tf 9.962 0 Td [(k)]TJ/F11 9.9626 Tf 4.982 0 Td [(im)]TJ/F8 9.9626 Tf 12.179 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\051)]TJ/F14 9.9626 Tf 3.874 0 Td [(k)]TJ/F7 6.9738 Tf 4.981 -1.494 Td [(1)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(norm1)-375(|)-375(1-Norm)-375(of)-375(V)94(ector)]TJ/F8 9.9626 Tf -55.726 -18.389 Td [(This)-333(function)-334(computes)-333(the)-333(1-norm)-334(of)-333(a)-333(v)27(ector)]TJ/F11 9.9626 Tf 207.168 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -212.862 -11.956 Td [(If)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(real)-333(v)28(ector)-334(it)-333(computes)-333(1-norm)-334(as:)]TJ/F11 9.9626 Tf 123.449 -19.151 Td [(asum)]TJ/F14 9.9626 Tf 27.154 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.711 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.494 Td [(k)]TJ/F8 9.9626 Tf -196.303 -19.151 Td [(else)-333(if)]TJ/F11 9.9626 Tf 28.006 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(complex)-333(v)28(ector)-334(then)-333(it)-333(computes)-334(1-norm)-333(as:)]TJ/F11 9.9626 Tf 70.135 -19.152 Td [(asum)]TJ/F14 9.9626 Tf 27.154 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.711 0 Td [(r)-28(e)]TJ/F8 9.9626 Tf 9.411 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\051)]TJ/F14 9.9626 Tf 3.874 0 Td [(k)]TJ/F7 6.9738 Tf 4.982 -1.494 Td [(1)]TJ/F8 9.9626 Tf 6.683 1.494 Td [(+)]TJ/F14 9.9626 Tf 9.962 0 Td [(k)]TJ/F11 9.9626 Tf 4.982 0 Td [(im)]TJ/F8 9.9626 Tf 12.179 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\051)]TJ/F14 9.9626 Tf 3.874 0 Td [(k)]TJ/F7 6.9738 Tf 4.981 -1.494 Td [(1)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf -232.086 -17.657 Td [(psb_geasum\050x,)-525(desc_a,)-525(info)-525([,global]\051)]TJ 0 -11.955 Td [(psb_norm1\050x,)-525(desc_a,)-525(info)-525([,global]\051)]TJ @@ -9814,7 +9849,7 @@ ET endstream endobj -1083 0 obj +1109 0 obj << /Length 3885 >> @@ -9881,468 +9916,328 @@ BT /F8 9.9626 Tf 251.428 526.801 Td [(s)-69(u)-69(m)-174(\050)-245(i)-139(c)-139(t)-138(x)-139(t)-439(,)-290(v)-128(r)-128(e)-129(s)-293(\050)-165(1)-165(:)-165(3)-165(\051)-165(\051)]TJ 0 g 0 G 0 g 0 G - -75.817 -21.917 Td [(In)-354(th)1(is)-354(w)28(a)28(y)-354(the)-353(global)-354(comm)28(unication,)-359(whic)28(h)-353(for)-354(small)-353(size)-1(s)-353(is)-354(a)-353(latency-)]TJ 0 -11.956 Td [(b)-28(ound)-333(op)-28(eration,)-333(is)-333(in)27(v)28(ok)28(ed)-333(only)-334(once.)]TJ -0 g 0 G - 141.968 -402.49 Td [(40)]TJ -0 g 0 G -ET - -endstream -endobj -1096 0 obj -<< -/Length 7318 ->> -stream -0 g 0 G -0 g 0 G -BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 124.986 706.129 Td [(geasums)-375(|)-375(Generalized)-375(1-Norm)-375(of)-375(V)94(ector)]TJ/F8 9.9626 Tf -25.091 -19.22 Td [(This)-310(subroutine)-310(computes)-309(a)-310(series)-310(of)-310(1-norms)-310(on)-310(the)-310(columns)-309(of)-310(a)-310(dense)-310(matrix)]TJ/F11 9.9626 Tf 0 -11.955 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(:)]TJ/F11 9.9626 Tf 119.513 -13.293 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.08 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F14 9.9626 Tf 6.641 0 Td [(\040)]TJ/F8 9.9626 Tf 12.73 0 Td [(max)]TJ/F10 6.9738 Tf 7.069 -6.503 Td [(k)]TJ/F14 9.9626 Tf 13.133 6.503 Td [(j)]TJ/F11 9.9626 Tf 2.768 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(k)-31(;)-167(i)]TJ/F8 9.9626 Tf 13.36 0 Td [(\051)]TJ/F14 9.9626 Tf 3.875 0 Td [(j)]TJ/F8 9.9626 Tf -215.738 -22.73 Td [(This)-333(function)-334(computes)-333(the)-333(1-norm)-334(of)-333(a)-333(v)28(e)-1(ctor)]TJ/F11 9.9626 Tf 207.168 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -212.862 -11.955 Td [(If)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(real)-333(v)28(ector)-334(it)-333(computes)-333(1-norm)-334(as:)]TJ/F11 9.9626 Tf 123.012 -22.81 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.08 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F14 9.9626 Tf 6.641 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.712 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(k)]TJ/F8 9.9626 Tf -196.741 -22.81 Td [(else)-333(if)]TJ/F11 9.9626 Tf 28.006 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(complex)-333(v)28(ector)-334(then)-333(it)-333(computes)-334(1-norm)-333(as:)]TJ/F11 9.9626 Tf 69.698 -22.81 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.08 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F14 9.9626 Tf 6.641 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.712 0 Td [(r)-28(e)]TJ/F8 9.9626 Tf 9.41 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\051)]TJ/F14 9.9626 Tf 3.875 0 Td [(k)]TJ/F7 6.9738 Tf 4.981 -1.494 Td [(1)]TJ/F8 9.9626 Tf 6.683 1.494 Td [(+)]TJ/F14 9.9626 Tf 9.963 0 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(im)]TJ/F8 9.9626 Tf 12.18 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\051)]TJ/F14 9.9626 Tf 3.874 0 Td [(k)]TJ/F7 6.9738 Tf 4.982 -1.494 Td [(1)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -232.524 -21.762 Td [(call)-525(psb_geasums\050res,)-525(x,)-525(desc_a,)-525(info\051)]TJ -0 g 0 G -0 g 0 G -0 g 0 G -ET -q -1 0 0 1 127.261 508.729 cm -[]0 d 0 J 0.398 w 0 0 m 288.979 0 l S -Q -BT -/F11 9.9626 Tf 133.239 500.161 Td [(r)-28(es)-8770(x)]TJ/F27 9.9626 Tf 221.863 0 Td [(Subroutine)]TJ -ET -q -1 0 0 1 127.261 496.375 cm -[]0 d 0 J 0.398 w 0 0 m 288.979 0 l S -Q -BT -/F8 9.9626 Tf 133.239 487.807 Td [(Short)-333(Precision)-334(Real)-1200(Shor)1(t)-334(Precision)-333(Real)-3103(psb)]TJ -ET -q -1 0 0 1 370.699 488.007 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.688 487.807 Td [(geasums)]TJ -240.449 -11.955 Td [(Long)-333(Precision)-334(Real)-1411(Long)-333(Precision)-333(Real)-3314(psb)]TJ -ET -q -1 0 0 1 370.699 476.051 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.688 475.852 Td [(geasums)]TJ -240.449 -11.955 Td [(Short)-333(Precision)-334(Real)-1200(Shor)1(t)-334(Precision)-333(Complex)-1200(psb)]TJ -ET -q -1 0 0 1 370.699 464.096 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.688 463.897 Td [(geasums)]TJ -240.449 -11.955 Td [(Long)-333(Precision)-334(Real)-1411(Long)-333(Precision)-333(Complex)-1412(psb)]TJ -ET -q -1 0 0 1 370.699 452.141 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.688 451.942 Td [(geasums)]TJ -ET -q -1 0 0 1 127.261 448.156 cm -[]0 d 0 J 0.398 w 0 0 m 288.979 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 228.067 420.117 Td [(T)83(able)-333(7:)-444(Data)-334(t)28(yp)-28(es)]TJ -0 g 0 G -0 g 0 G -0 g 0 G -/F27 9.9626 Tf -128.172 -35.827 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -21.709 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -21.71 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.118 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -167.933 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)27(o)-254(arra)27(y)-254(or)-255(an)-255(ob)-55(jec)-1(t)-254(of)-255(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 244.743 0 Td [(psb)]TJ -ET -q -1 0 0 1 385.864 293.25 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 389.002 293.051 Td [(T)]TJ -ET -q -1 0 0 1 394.86 293.25 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 397.998 293.051 Td [(vect)]TJ -ET -q -1 0 0 1 419.547 293.25 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 422.685 293.051 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf -297.883 -11.956 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(t)28(yp)-28(e)-334(sp)-27(eci\014ed)-334(in)-333(T)83(able)]TJ -0 0 1 rg 0 0 1 RG - [-333(7)]TJ -0 g 0 G - [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -21.709 Td [(desc)]TJ -ET -q -1 0 0 1 121.81 259.585 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 125.247 259.386 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 135.658 0 Td [(psb)]TJ -ET -q -1 0 0 1 276.779 211.765 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 279.917 211.565 Td [(desc)]TJ -ET -q -1 0 0 1 301.466 211.765 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 304.604 211.565 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -225.631 -21.709 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -21.71 Td [(res)]TJ -0 g 0 G -/F8 9.9626 Tf 19.47 0 Td [(con)28(tains)-334(the)-333(1-norm)-333(of)-334(\050th)1(e)-334(columns)-333(of)-78(\051)]TJ/F11 9.9626 Tf 177.751 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -178.008 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Short)-324(as:)-440(a)-324(long)-324(precision)-324(real)-325(n)28(um)28(b)-28(er.)-441(Sp)-28(eci\014ed)-324(as:)-440(a)-324(long)-324(precision)-325(r)1(e)-1(al)]TJ 0 -11.955 Td [(n)28(um)28(b)-28(er.)]TJ -0 g 0 G - 141.968 -29.888 Td [(41)]TJ -0 g 0 G -ET - -endstream -endobj -1101 0 obj -<< -/Length 625 ->> -stream -0 g 0 G -0 g 0 G -0 g 0 G -BT -/F27 9.9626 Tf 150.705 706.129 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ -0 g 0 G - 141.968 -567.87 Td [(42)]TJ + -75.817 -21.917 Td [(In)-354(th)1(is)-354(w)28(a)28(y)-354(the)-353(global)-354(comm)28(unication,)-359(whic)28(h)-353(for)-354(small)-353(size)-1(s)-353(is)-354(a)-353(latency-)]TJ 0 -11.956 Td [(b)-28(ound)-333(op)-28(eration,)-333(is)-333(in)27(v)28(ok)28(ed)-333(only)-334(once.)]TJ +0 g 0 G + 141.968 -402.49 Td [(40)]TJ 0 g 0 G ET endstream endobj -1108 0 obj +1122 0 obj << -/Length 6467 +/Length 7328 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(4.7)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 151.587 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(norm2)-375(|)-375(2-Norm)-375(of)-375(V)94(ector)]TJ/F8 9.9626 Tf -25.091 -19.67 Td [(This)-333(function)-334(computes)-333(the)-333(2-norm)-334(of)-333(a)-333(v)27(ector)]TJ/F11 9.9626 Tf 207.168 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -212.862 -11.955 Td [(If)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(real)-333(v)28(ector)-334(it)-333(computes)-333(2-norm)-334(as:)]TJ/F11 9.9626 Tf 119.906 -24.408 Td [(nr)-28(m)]TJ/F8 9.9626 Tf 19.499 0 Td [(2)]TJ/F14 9.9626 Tf 7.749 0 Td [(\040)]TJ 12.73 9.339 Td [(p)]TJ -ET -q -1 0 0 1 287.059 659.634 cm -[]0 d 0 J 0.398 w 0 0 m 17.664 0 l S -Q -BT -/F11 9.9626 Tf 287.059 650.096 Td [(x)]TJ/F10 6.9738 Tf 5.694 2.878 Td [(T)]TJ/F11 9.9626 Tf 6.276 -2.878 Td [(x)]TJ/F8 9.9626 Tf -199.134 -23.294 Td [(else)-333(if)]TJ/F11 9.9626 Tf 28.006 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(complex)-333(v)28(ector)-334(then)-333(it)-333(computes)-334(2-norm)-333(as:)]TJ/F11 9.9626 Tf 101.223 -24.408 Td [(nr)-28(m)]TJ/F8 9.9626 Tf 19.499 0 Td [(2)]TJ/F14 9.9626 Tf 7.748 0 Td [(\040)]TJ 12.73 9.339 Td [(p)]TJ -ET -q -1 0 0 1 286.419 611.932 cm -[]0 d 0 J 0.398 w 0 0 m 18.944 0 l S -Q -BT -/F11 9.9626 Tf 286.419 602.394 Td [(x)]TJ/F10 6.9738 Tf 5.694 2.878 Td [(H)]TJ/F11 9.9626 Tf 7.556 -2.878 Td [(x)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(geasums)-375(|)-375(Generalized)-375(1-Norm)-375(of)-375(V)94(ector)]TJ/F8 9.9626 Tf -55.726 -19.22 Td [(This)-310(subroutine)-310(computes)-309(a)-310(series)-310(of)-310(1-norms)-310(on)-310(the)-310(columns)-309(of)-310(a)-310(dense)-310(matrix)]TJ/F11 9.9626 Tf 0 -11.955 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(:)]TJ/F11 9.9626 Tf 119.513 -13.293 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.08 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F14 9.9626 Tf 6.641 0 Td [(\040)]TJ/F8 9.9626 Tf 12.73 0 Td [(max)]TJ/F10 6.9738 Tf 7.069 -6.503 Td [(k)]TJ/F14 9.9626 Tf 13.133 6.503 Td [(j)]TJ/F11 9.9626 Tf 2.768 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(k)-31(;)-167(i)]TJ/F8 9.9626 Tf 13.36 0 Td [(\051)]TJ/F14 9.9626 Tf 3.875 0 Td [(j)]TJ/F8 9.9626 Tf -215.738 -22.73 Td [(This)-333(function)-334(computes)-333(the)-333(1-norm)-334(of)-333(a)-333(v)28(e)-1(ctor)]TJ/F11 9.9626 Tf 207.168 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -212.862 -11.955 Td [(If)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(real)-333(v)28(ector)-334(it)-333(computes)-333(1-norm)-334(as:)]TJ/F11 9.9626 Tf 123.012 -22.81 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.08 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F14 9.9626 Tf 6.641 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.712 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(k)]TJ/F8 9.9626 Tf -196.741 -22.81 Td [(else)-333(if)]TJ/F11 9.9626 Tf 28.006 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(complex)-333(v)28(ector)-334(then)-333(it)-333(computes)-334(1-norm)-333(as:)]TJ/F11 9.9626 Tf 69.698 -22.81 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.08 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F14 9.9626 Tf 6.641 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.712 0 Td [(r)-28(e)]TJ/F8 9.9626 Tf 9.41 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\051)]TJ/F14 9.9626 Tf 3.875 0 Td [(k)]TJ/F7 6.9738 Tf 4.981 -1.494 Td [(1)]TJ/F8 9.9626 Tf 6.683 1.494 Td [(+)]TJ/F14 9.9626 Tf 9.963 0 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(im)]TJ/F8 9.9626 Tf 12.18 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\051)]TJ/F14 9.9626 Tf 3.874 0 Td [(k)]TJ/F7 6.9738 Tf 4.982 -1.494 Td [(1)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -232.524 -21.762 Td [(call)-525(psb_geasums\050res,)-525(x,)-525(desc_a,)-525(info\051)]TJ 0 g 0 G 0 g 0 G 0 g 0 G ET q -1 0 0 1 129.484 577.3 cm -[]0 d 0 J 0.398 w 0 0 m 284.534 0 l S +1 0 0 1 127.261 508.729 cm +[]0 d 0 J 0.398 w 0 0 m 288.979 0 l S Q BT -/F11 9.9626 Tf 135.462 568.732 Td [(nr)-28(m)]TJ/F8 9.9626 Tf 19.499 0 Td [(2)]TJ/F11 9.9626 Tf 81.954 0 Td [(x)]TJ/F27 9.9626 Tf 120.41 0 Td [(F)96(unction)]TJ +/F11 9.9626 Tf 133.239 500.161 Td [(r)-28(es)-8770(x)]TJ/F27 9.9626 Tf 221.863 0 Td [(Subroutine)]TJ ET q -1 0 0 1 129.484 564.947 cm -[]0 d 0 J 0.398 w 0 0 m 284.534 0 l S +1 0 0 1 127.261 496.375 cm +[]0 d 0 J 0.398 w 0 0 m 288.979 0 l S Q BT -/F8 9.9626 Tf 135.462 556.379 Td [(Short)-333(Precision)-334(Real)-1200(Sh)1(ort)-334(Precision)-333(Real)-3103(psb)]TJ +/F8 9.9626 Tf 133.239 487.807 Td [(Short)-333(Precision)-334(Real)-1200(Shor)1(t)-334(Precision)-333(Real)-3103(psb)]TJ ET q -1 0 0 1 372.922 556.578 cm +1 0 0 1 370.699 488.007 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 375.911 556.379 Td [(genrm2)]TJ -240.449 -11.955 Td [(Long)-333(Precision)-334(Real)-1411(Long)-333(Precision)-333(Real)-3314(psb)]TJ +/F8 9.9626 Tf 373.688 487.807 Td [(geasums)]TJ -240.449 -11.955 Td [(Long)-333(Precision)-334(Real)-1411(Long)-333(Precision)-333(Real)-3314(psb)]TJ ET q -1 0 0 1 372.922 544.623 cm +1 0 0 1 370.699 476.051 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 375.911 544.424 Td [(genrm2)]TJ -240.449 -11.956 Td [(Short)-333(Precision)-334(Real)-1200(Sh)1(ort)-334(Precision)-333(Complex)-1200(psb)]TJ +/F8 9.9626 Tf 373.688 475.852 Td [(geasums)]TJ -240.449 -11.955 Td [(Short)-333(Precision)-334(Real)-1200(Shor)1(t)-334(Precision)-333(Complex)-1200(psb)]TJ ET q -1 0 0 1 372.922 532.668 cm +1 0 0 1 370.699 464.096 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 375.911 532.468 Td [(genrm2)]TJ -240.449 -11.955 Td [(Long)-333(Precision)-334(Real)-1411(Long)-333(Precision)-333(Complex)-1412(p)1(s)-1(b)]TJ +/F8 9.9626 Tf 373.688 463.897 Td [(geasums)]TJ -240.449 -11.955 Td [(Long)-333(Precision)-334(Real)-1411(Long)-333(Precision)-333(Complex)-1412(psb)]TJ ET q -1 0 0 1 372.922 520.713 cm +1 0 0 1 370.699 452.141 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 375.911 520.513 Td [(genrm2)]TJ +/F8 9.9626 Tf 373.688 451.942 Td [(geasums)]TJ ET q -1 0 0 1 129.484 516.727 cm -[]0 d 0 J 0.398 w 0 0 m 284.534 0 l S +1 0 0 1 127.261 448.156 cm +[]0 d 0 J 0.398 w 0 0 m 288.979 0 l S Q 0 g 0 G BT -/F8 9.9626 Tf 228.067 488.688 Td [(T)83(able)-333(8:)-444(Data)-334(t)28(yp)-28(es)]TJ -0 g 0 G -0 g 0 G +/F8 9.9626 Tf 228.067 420.117 Td [(T)83(able)-333(7:)-444(Data)-334(t)28(yp)-28(es)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -128.172 -39.713 Td [(psb_genrm2\050x,)-525(desc_a,)-525(info)-525([,global]\051)]TJ 0 -11.955 Td [(psb_norm2\050x,)-525(desc_a,)-525(info)-525([,global]\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -23.982 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -128.172 -35.827 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -22.677 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -21.709 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -22.677 Td [(x)]TJ + 0 -21.71 Td [(x)]TJ 0 g 0 G /F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.118 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -167.933 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)27(o)-254(arra)27(y)-254(or)-255(an)-255(ob)-55(jec)-1(t)-254(of)-255(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 244.743 0 Td [(psb)]TJ ET q -1 0 0 1 385.864 320.063 cm +1 0 0 1 385.864 293.25 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 389.002 319.864 Td [(T)]TJ +/F30 9.9626 Tf 389.002 293.051 Td [(T)]TJ ET q -1 0 0 1 394.86 320.063 cm +1 0 0 1 394.86 293.25 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 397.998 319.864 Td [(vect)]TJ +/F30 9.9626 Tf 397.998 293.051 Td [(vect)]TJ ET q -1 0 0 1 419.547 320.063 cm +1 0 0 1 419.547 293.25 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 422.685 319.864 Td [(type)]TJ +/F30 9.9626 Tf 422.685 293.051 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf -297.883 -11.956 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(t)28(yp)-28(e)-334(sp)-27(eci\014ed)-334(in)-333(T)83(able)]TJ 0 0 1 rg 0 0 1 RG - [-333(8)]TJ + [-333(7)]TJ 0 g 0 G [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -22.677 Td [(desc)]TJ +/F27 9.9626 Tf -24.907 -21.709 Td [(desc)]TJ ET q -1 0 0 1 121.81 285.431 cm +1 0 0 1 121.81 259.585 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 285.231 Td [(a)]TJ +/F27 9.9626 Tf 125.247 259.386 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 135.658 0 Td [(psb)]TJ ET q -1 0 0 1 276.779 237.61 cm +1 0 0 1 276.779 211.765 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 279.917 237.411 Td [(desc)]TJ +/F30 9.9626 Tf 279.917 211.565 Td [(desc)]TJ ET q -1 0 0 1 301.466 237.61 cm +1 0 0 1 301.466 211.765 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 304.604 237.411 Td [(type)]TJ +/F30 9.9626 Tf 304.604 211.565 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -225.631 -22.677 Td [(global)]TJ +/F27 9.9626 Tf -225.631 -21.709 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 34.738 0 Td [(Sp)-28(eci\014es)-357(whether)-357(the)-357(computation)-358(shoul)1(d)-358(include)-357(the)-357(global)-357(reduction)]TJ -9.831 -11.955 Td [(across)-333(all)-334(pro)-27(ce)-1(sses.)]TJ 0 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(scalar.)-445(Default:)]TJ/F30 9.9626 Tf 168.812 0 Td [(global=.true.)]TJ 0 g 0 G -/F27 9.9626 Tf -193.719 -34.632 Td [(On)-383(Return)]TJ + 0 -21.71 Td [(res)]TJ 0 g 0 G +/F8 9.9626 Tf 19.47 0 Td [(con)28(tains)-334(the)-333(1-norm)-333(of)-334(\050th)1(e)-334(columns)-333(of)-78(\051)]TJ/F11 9.9626 Tf 177.751 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -178.008 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Short)-324(as:)-440(a)-324(long)-324(precision)-324(real)-325(n)28(um)28(b)-28(er.)-441(Sp)-28(eci\014ed)-324(as:)-440(a)-324(long)-324(precision)-325(r)1(e)-1(al)]TJ 0 -11.955 Td [(n)28(um)28(b)-28(er.)]TJ 0 g 0 G -/F8 9.9626 Tf 166.875 -29.888 Td [(43)]TJ + 141.968 -29.888 Td [(41)]TJ 0 g 0 G ET endstream endobj -1114 0 obj +1017 0 obj << -/Length 4643 +/Type /ObjStm +/N 100 +/First 983 +/Length 11572 >> stream -0 g 0 G -0 g 0 G -0 g 0 G -BT -/F27 9.9626 Tf 150.705 706.129 Td [(F)96(unction)-384(V)96(alue)]TJ -0 g 0 G -/F8 9.9626 Tf 80.683 0 Td [(is)-333(the)-334(2-norm)-333(of)-333(v)27(ector)]TJ/F11 9.9626 Tf 102.781 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -164.252 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 31.842 0 Td [(global)]TJ/F8 9.9626 Tf 32.002 0 Td [(unless)-225(the)-226(optional)-225(v)55(ari)1(able)]TJ/F30 9.9626 Tf 118.433 0 Td [(global=.false.)]TJ/F8 9.9626 Tf 75.471 0 Td [(has)-225(b)-28(een)-226(sp)-27(ec-)]TJ -257.748 -11.955 Td [(i\014ed)]TJ 0 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(long)-333(precision)-334(r)1(e)-1(al)-333(n)28(um)28(b)-28(er.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.925 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -21.918 Td [(Notes)]TJ -0 g 0 G -/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ -0 g 0 G - [-500(The)-241(computation)-240(of)-241(a)-241(gl)1(obal)-241(result)-241(requires)-240(a)-241(global)-241(comm)28(unication,)-259(whic)28(h)]TJ 12.73 -11.955 Td [(en)28(tails)-421(a)-420(s)-1(i)1(gni\014can)27(t)-420(o)28(v)27(erhead.)-706(It)-420(ma)27(y)-420(b)-28(e)-421(necessary)-420(and/or)-421(advisable)-420(to)]TJ 0 -11.955 Td [(compute)-395(m)28(ultiple)-395(norms)-395(at)-395(the)-395(same)-395(time;)-426(in)-395(this)-395(case,)-410(it)-395(is)-395(p)-28(ossible)-395(to)]TJ 0 -11.955 Td [(impro)28(v)28(e)-334(the)-333(run)28(time)-334(e\016ciency)-333(b)28(y)-334(using)-333(the)-333(follo)28(wing)-334(sc)28(heme:)]TJ 25.19 -17.933 Td [(v)-128(r)-129(e)-128(s)-259(\050)-130(1)-131(\051)-642(=)-593(p)-83(s)-83(b)]TJ -ET -q -1 0 0 1 278.19 495.12 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 282.003 494.921 Td [(g)-83(e)-82(n)-83(r)-83(m)-82(2)-189(\050)-148(x)-43(1)-248(,)-273(d)-113(e)-113(s)-112(c)]TJ -ET -q -1 0 0 1 367.515 495.12 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 371.626 494.921 Td [(a)-386(,)-288(i)-127(n)-127(f)-127(o)-415(,)-302(g)-141(l)-142(o)-141(b)-141(a)-141(l)-190(=)-48(.)]TJ/F27 9.9626 Tf 92.223 0 Td [(f)-132(a)-131(l)-132(s)-131(e)]TJ/F8 9.9626 Tf 30.349 0 Td [(.)-178(\051)]TJ -293.397 -11.955 Td [(v)-128(r)-129(e)-128(s)-259(\050)-130(2)-131(\051)-642(=)-593(p)-83(s)-83(b)]TJ -ET -q -1 0 0 1 278.19 483.165 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 282.003 482.966 Td [(g)-83(e)-82(n)-83(r)-83(m)-82(2)-189(\050)-148(x)-43(2)-248(,)-273(d)-113(e)-113(s)-112(c)]TJ -ET -q -1 0 0 1 367.515 483.165 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 371.626 482.966 Td [(a)-386(,)-288(i)-127(n)-127(f)-127(o)-415(,)-302(g)-141(l)-142(o)-141(b)-141(a)-141(l)-190(=)-48(.)]TJ/F27 9.9626 Tf 92.223 0 Td [(f)-132(a)-131(l)-132(s)-131(e)]TJ/F8 9.9626 Tf 30.349 0 Td [(.)-178(\051)]TJ -293.397 -11.955 Td [(v)-128(r)-129(e)-128(s)-259(\050)-130(3)-131(\051)-642(=)-593(p)-83(s)-83(b)]TJ -ET -q -1 0 0 1 278.19 471.21 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 282.003 471.011 Td [(g)-83(e)-82(n)-83(r)-83(m)-82(2)-189(\050)-148(x)-43(3)-248(,)-273(d)-113(e)-113(s)-112(c)]TJ -ET -q -1 0 0 1 367.515 471.21 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 371.626 471.011 Td [(a)-386(,)-288(i)-127(n)-127(f)-127(o)-415(,)-302(g)-141(l)-142(o)-141(b)-141(a)-141(l)-190(=)-48(.)]TJ/F27 9.9626 Tf 92.223 0 Td [(f)-132(a)-131(l)-132(s)-131(e)]TJ/F8 9.9626 Tf 30.349 0 Td [(.)-178(\051)]TJ/F27 9.9626 Tf -293.299 -11.956 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.235 0 Td [(p)-73(s)-72(b)]TJ -ET -q -1 0 0 1 247.903 459.255 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 251.616 459.055 Td [(n)-73(r)-72(m)-73(2)-178(\050)-245(i)-138(c)-139(t)-139(x)-139(t)-439(,)-289(v)-129(r)-128(e)-128(s)-294(\050)-165(1)-165(:)-165(3)-165(\051)-165(\051)]TJ -0 g 0 G -0 g 0 G - -76.005 -21.917 Td [(In)-354(th)1(is)-354(w)28(a)28(y)-354(the)-353(global)-354(comm)28(unication,)-359(whic)28(h)-353(for)-354(small)-353(size)-1(s)-353(is)-354(a)-353(latency-)]TJ 0 -11.956 Td [(b)-28(ound)-333(op)-28(eration,)-333(is)-333(in)27(v)28(ok)28(ed)-333(only)-334(once.)]TJ -0 g 0 G - 141.968 -334.744 Td [(44)]TJ -0 g 0 G -ET - -endstream -endobj -1019 0 obj +1016 0 220 58 1013 115 1026 195 1018 378 1019 524 1020 668 1021 814 1022 960 1023 1104 +1028 1250 224 1309 999 1367 1025 1424 1032 1556 1024 1713 1029 1860 1030 2003 1034 2149 1031 2207 +1042 2313 1036 2488 1037 2631 1038 2777 1039 2920 1040 3065 1044 3211 228 3270 1045 3328 1041 3387 +1048 3532 1046 3671 1050 3817 1051 3875 1052 3933 1053 3991 1054 4049 1055 4108 1056 4166 1047 4225 +1064 4344 1057 4528 1058 4672 1059 4817 1060 4961 1061 5107 1062 5254 1066 5399 232 5458 1067 5516 +1063 5575 1069 5720 1071 5838 1068 5896 1076 5976 1072 6133 1073 6276 1074 6421 1078 6568 236 6627 +1079 6685 1075 6743 1081 6888 1083 7006 1084 7064 1085 7122 1086 7180 1087 7239 1088 7298 1089 7357 +1080 7416 1095 7535 1091 7692 1092 7836 1093 7982 1097 8128 240 8187 1098 8245 1094 8304 1103 8449 +1099 8606 1100 8750 1101 8896 1105 9043 244 9101 1106 9158 1102 9217 1108 9374 1110 9492 1111 9551 +1112 9610 1113 9669 1114 9728 1115 9787 1116 9846 1107 9905 1121 9998 1117 10155 1118 10298 1119 10443 +% 1016 0 obj +<< +/D [1014 0 R /XYZ 98.895 753.953 null] +>> +% 220 0 obj +<< +/D [1014 0 R /XYZ 99.895 716.092 null] +>> +% 1013 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1026 0 obj +<< +/Type /Page +/Contents 1027 0 R +/Resources 1025 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 992 0 R +/Annots [ 1018 0 R 1019 0 R 1020 0 R 1021 0 R 1022 0 R 1023 0 R ] +>> +% 1018 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [432.897 401.949 439.871 412.798] +/A << /S /GoTo /D (table.1) >> +>> +% 1019 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [419.358 333.522 495.412 344.647] +/A << /S /GoTo /D (vdata) >> +>> +% 1020 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [379.142 321.844 386.116 332.692] +/A << /S /GoTo /D (table.1) >> +>> +% 1021 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [432.897 241.738 439.871 252.586] +/A << /S /GoTo /D (table.1) >> +>> +% 1022 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [419.358 173.311 495.412 184.436] +/A << /S /GoTo /D (vdata) >> +>> +% 1023 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [396.435 161.632 403.409 172.481] +/A << /S /GoTo /D (table.1) >> +>> +% 1028 0 obj +<< +/D [1026 0 R /XYZ 149.705 753.953 null] +>> +% 224 0 obj +<< +/D [1026 0 R /XYZ 150.705 716.092 null] +>> +% 999 0 obj +<< +/D [1026 0 R /XYZ 318.451 539.42 null] +>> +% 1025 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F30 810 0 R /F27 584 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1032 0 obj +<< +/Type /Page +/Contents 1033 0 R +/Resources 1031 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1035 0 R +/Annots [ 1024 0 R 1029 0 R 1030 0 R ] +>> +% 1024 0 obj << -/Type /ObjStm -/N 100 -/First 985 -/Length 11116 +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [259.464 679.008 326.522 690.133] +/A << /S /GoTo /D (descdata) >> >> -stream -1015 0 1009 175 1010 318 1011 464 1012 607 1013 752 1017 898 228 957 1018 1015 1014 1074 -1022 1219 1020 1358 1024 1504 1025 1562 1026 1620 1027 1678 1028 1736 1029 1795 1030 1853 1021 1912 -1038 2031 1031 2215 1032 2359 1033 2504 1034 2648 1035 2794 1036 2941 1040 3086 232 3145 1041 3203 -1037 3262 1043 3407 1045 3525 1042 3583 1050 3663 1046 3820 1047 3963 1048 4108 1052 4255 236 4314 -1053 4372 1049 4430 1055 4575 1057 4693 1058 4751 1059 4809 1060 4867 1061 4926 1062 4985 1063 5044 -1054 5103 1069 5222 1065 5379 1066 5523 1067 5669 1071 5815 240 5874 1072 5932 1068 5991 1077 6136 -1073 6293 1074 6437 1075 6583 1079 6730 244 6788 1080 6845 1076 6904 1082 7061 1084 7179 1085 7238 -1086 7297 1087 7356 1088 7415 1089 7474 1090 7533 1081 7592 1095 7685 1091 7842 1092 7985 1093 8130 -1097 8276 248 8334 1098 8391 1094 8450 1100 8607 1102 8725 1099 8784 1107 8864 1103 9021 1104 9165 -1105 9311 1109 9458 252 9516 1110 9573 1106 9632 1113 9777 1115 9895 1116 9954 1117 10013 1118 10072 -% 1015 0 obj +% 1029 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [368.549 589.345 444.603 600.47] +/A << /S /GoTo /D (vdata) >> +>> +% 1030 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.558 577.666 352.532 588.514] +/A << /S /GoTo /D (table.1) >> +>> +% 1034 0 obj +<< +/D [1032 0 R /XYZ 98.895 753.953 null] +>> +% 1031 0 obj +<< +/Font << /F8 585 0 R /F27 584 0 R /F30 810 0 R /F11 796 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1042 0 obj << /Type /Page -/Contents 1016 0 R -/Resources 1014 0 R +/Contents 1043 0 R +/Resources 1041 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1008 0 R -/Annots [ 1009 0 R 1010 0 R 1011 0 R 1012 0 R 1013 0 R ] +/Parent 1035 0 R +/Annots [ 1036 0 R 1037 0 R 1038 0 R 1039 0 R 1040 0 R ] >> -% 1009 0 obj +% 1036 0 obj << /Type /Annot /Subtype /Link @@ -10350,7 +10245,7 @@ stream /Rect [419.358 355.465 495.412 366.59] /A << /S /GoTo /D (vdata) >> >> -% 1010 0 obj +% 1037 0 obj << /Type /Annot /Subtype /Link @@ -10358,7 +10253,7 @@ stream /Rect [379.142 343.787 386.116 354.635] /A << /S /GoTo /D (table.2) >> >> -% 1011 0 obj +% 1038 0 obj << /Type /Annot /Subtype /Link @@ -10366,7 +10261,7 @@ stream /Rect [419.358 264.06 495.412 275.185] /A << /S /GoTo /D (vdata) >> >> -% 1012 0 obj +% 1039 0 obj << /Type /Annot /Subtype /Link @@ -10374,7 +10269,7 @@ stream /Rect [379.353 252.382 386.327 263.23] /A << /S /GoTo /D (table.2) >> >> -% 1013 0 obj +% 1040 0 obj << /Type /Annot /Subtype /Link @@ -10382,33 +10277,33 @@ stream /Rect [310.273 172.655 377.331 183.78] /A << /S /GoTo /D (descdata) >> >> -% 1017 0 obj +% 1044 0 obj << -/D [1015 0 R /XYZ 149.705 753.953 null] +/D [1042 0 R /XYZ 149.705 753.953 null] >> % 228 0 obj << -/D [1015 0 R /XYZ 150.705 720.077 null] +/D [1042 0 R /XYZ 150.705 716.092 null] >> -% 1018 0 obj +% 1045 0 obj << -/D [1015 0 R /XYZ 318.451 490.516 null] +/D [1042 0 R /XYZ 318.451 490.516 null] >> -% 1014 0 obj +% 1041 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F30 784 0 R /F27 572 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F30 810 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1022 0 obj +% 1048 0 obj << /Type /Page -/Contents 1023 0 R -/Resources 1021 0 R +/Contents 1049 0 R +/Resources 1047 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1008 0 R -/Annots [ 1020 0 R ] +/Parent 1035 0 R +/Annots [ 1046 0 R ] >> -% 1020 0 obj +% 1046 0 obj << /Type /Annot /Subtype /Link @@ -10416,49 +10311,49 @@ stream /Rect [382.088 603.569 389.062 614.417] /A << /S /GoTo /D (table.2) >> >> -% 1024 0 obj +% 1050 0 obj << -/D [1022 0 R /XYZ 98.895 753.953 null] +/D [1048 0 R /XYZ 98.895 753.953 null] >> -% 1025 0 obj +% 1051 0 obj << -/D [1022 0 R /XYZ 99.895 512.854 null] +/D [1048 0 R /XYZ 99.895 512.854 null] >> -% 1026 0 obj +% 1052 0 obj << -/D [1022 0 R /XYZ 99.895 453.133 null] +/D [1048 0 R /XYZ 99.895 453.133 null] >> -% 1027 0 obj +% 1053 0 obj << -/D [1022 0 R /XYZ 124.802 455.07 null] +/D [1048 0 R /XYZ 124.802 455.07 null] >> -% 1028 0 obj +% 1054 0 obj << -/D [1022 0 R /XYZ 124.802 443.115 null] +/D [1048 0 R /XYZ 124.802 443.115 null] >> -% 1029 0 obj +% 1055 0 obj << -/D [1022 0 R /XYZ 124.802 431.16 null] +/D [1048 0 R /XYZ 124.802 431.16 null] >> -% 1030 0 obj +% 1056 0 obj << -/D [1022 0 R /XYZ 124.802 419.205 null] +/D [1048 0 R /XYZ 124.802 419.205 null] >> -% 1021 0 obj +% 1047 0 obj << -/Font << /F8 573 0 R /F27 572 0 R /F30 784 0 R /F11 770 0 R /F16 570 0 R >> +/Font << /F8 585 0 R /F27 584 0 R /F30 810 0 R /F11 796 0 R /F16 582 0 R >> /ProcSet [ /PDF /Text ] >> -% 1038 0 obj +% 1064 0 obj << /Type /Page -/Contents 1039 0 R -/Resources 1037 0 R +/Contents 1065 0 R +/Resources 1063 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1008 0 R -/Annots [ 1031 0 R 1032 0 R 1033 0 R 1034 0 R 1035 0 R 1036 0 R ] +/Parent 1035 0 R +/Annots [ 1057 0 R 1058 0 R 1059 0 R 1060 0 R 1061 0 R 1062 0 R ] >> -% 1031 0 obj +% 1057 0 obj << /Type /Annot /Subtype /Link @@ -10466,7 +10361,7 @@ stream /Rect [419.358 382.111 495.412 393.236] /A << /S /GoTo /D (vdata) >> >> -% 1032 0 obj +% 1058 0 obj << /Type /Annot /Subtype /Link @@ -10474,7 +10369,7 @@ stream /Rect [379.142 370.432 386.116 381.28] /A << /S /GoTo /D (table.3) >> >> -% 1033 0 obj +% 1059 0 obj << /Type /Annot /Subtype /Link @@ -10482,7 +10377,7 @@ stream /Rect [419.358 291.951 495.412 303.076] /A << /S /GoTo /D (vdata) >> >> -% 1034 0 obj +% 1060 0 obj << /Type /Annot /Subtype /Link @@ -10490,7 +10385,7 @@ stream /Rect [379.353 280.273 386.327 291.121] /A << /S /GoTo /D (table.3) >> >> -% 1035 0 obj +% 1061 0 obj << /Type /Annot /Subtype /Link @@ -10498,7 +10393,7 @@ stream /Rect [310.273 201.792 377.331 212.917] /A << /S /GoTo /D (descdata) >> >> -% 1036 0 obj +% 1062 0 obj << /Type /Annot /Subtype /Link @@ -10506,50 +10401,50 @@ stream /Rect [202.013 119.329 208.986 128.24] /A << /S /GoTo /D (table.2) >> >> -% 1040 0 obj +% 1066 0 obj << -/D [1038 0 R /XYZ 149.705 753.953 null] +/D [1064 0 R /XYZ 149.705 753.953 null] >> % 232 0 obj << -/D [1038 0 R /XYZ 150.705 720.077 null] +/D [1064 0 R /XYZ 150.705 716.092 null] >> -% 1041 0 obj +% 1067 0 obj << -/D [1038 0 R /XYZ 318.451 510.309 null] +/D [1064 0 R /XYZ 318.451 510.309 null] >> -% 1037 0 obj +% 1063 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F30 784 0 R /F27 572 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F30 810 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1043 0 obj +% 1069 0 obj << /Type /Page -/Contents 1044 0 R -/Resources 1042 0 R +/Contents 1070 0 R +/Resources 1068 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1008 0 R +/Parent 1035 0 R >> -% 1045 0 obj +% 1071 0 obj << -/D [1043 0 R /XYZ 98.895 753.953 null] +/D [1069 0 R /XYZ 98.895 753.953 null] >> -% 1042 0 obj +% 1068 0 obj << -/Font << /F27 572 0 R /F8 573 0 R >> +/Font << /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1050 0 obj +% 1076 0 obj << /Type /Page -/Contents 1051 0 R -/Resources 1049 0 R +/Contents 1077 0 R +/Resources 1075 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1008 0 R -/Annots [ 1046 0 R 1047 0 R 1048 0 R ] +/Parent 1035 0 R +/Annots [ 1072 0 R 1073 0 R 1074 0 R ] >> -% 1046 0 obj +% 1072 0 obj << /Type /Annot /Subtype /Link @@ -10557,7 +10452,7 @@ stream /Rect [419.358 315.41 495.412 326.535] /A << /S /GoTo /D (vdata) >> >> -% 1047 0 obj +% 1073 0 obj << /Type /Annot /Subtype /Link @@ -10565,7 +10460,7 @@ stream /Rect [376.221 303.732 383.195 314.58] /A << /S /GoTo /D (table.4) >> >> -% 1048 0 obj +% 1074 0 obj << /Type /Annot /Subtype /Link @@ -10573,74 +10468,74 @@ stream /Rect [310.273 233.372 377.331 244.497] /A << /S /GoTo /D (descdata) >> >> -% 1052 0 obj +% 1078 0 obj << -/D [1050 0 R /XYZ 149.705 753.953 null] +/D [1076 0 R /XYZ 149.705 753.953 null] >> % 236 0 obj << -/D [1050 0 R /XYZ 150.705 720.077 null] +/D [1076 0 R /XYZ 150.705 716.092 null] >> -% 1053 0 obj +% 1079 0 obj << -/D [1050 0 R /XYZ 318.451 459.44 null] +/D [1076 0 R /XYZ 318.451 459.44 null] >> -% 1049 0 obj +% 1075 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F30 784 0 R /F27 572 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F30 810 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1055 0 obj +% 1081 0 obj << /Type /Page -/Contents 1056 0 R -/Resources 1054 0 R +/Contents 1082 0 R +/Resources 1080 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1064 0 R +/Parent 1090 0 R >> -% 1057 0 obj +% 1083 0 obj << -/D [1055 0 R /XYZ 98.895 753.953 null] +/D [1081 0 R /XYZ 98.895 753.953 null] >> -% 1058 0 obj +% 1084 0 obj << -/D [1055 0 R /XYZ 99.895 576.615 null] +/D [1081 0 R /XYZ 99.895 576.615 null] >> -% 1059 0 obj +% 1085 0 obj << -/D [1055 0 R /XYZ 99.895 516.894 null] +/D [1081 0 R /XYZ 99.895 516.894 null] >> -% 1060 0 obj +% 1086 0 obj << -/D [1055 0 R /XYZ 124.802 518.831 null] +/D [1081 0 R /XYZ 124.802 518.831 null] >> -% 1061 0 obj +% 1087 0 obj << -/D [1055 0 R /XYZ 124.802 506.876 null] +/D [1081 0 R /XYZ 124.802 506.876 null] >> -% 1062 0 obj +% 1088 0 obj << -/D [1055 0 R /XYZ 124.802 494.921 null] +/D [1081 0 R /XYZ 124.802 494.921 null] >> -% 1063 0 obj +% 1089 0 obj << -/D [1055 0 R /XYZ 124.802 482.966 null] +/D [1081 0 R /XYZ 124.802 482.966 null] >> -% 1054 0 obj +% 1080 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F11 770 0 R /F30 784 0 R /F16 570 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F11 796 0 R /F30 810 0 R /F16 582 0 R >> /ProcSet [ /PDF /Text ] >> -% 1069 0 obj +% 1095 0 obj << /Type /Page -/Contents 1070 0 R -/Resources 1068 0 R +/Contents 1096 0 R +/Resources 1094 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1064 0 R -/Annots [ 1065 0 R 1066 0 R 1067 0 R ] +/Parent 1090 0 R +/Annots [ 1091 0 R 1092 0 R 1093 0 R ] >> -% 1065 0 obj +% 1091 0 obj << /Type /Annot /Subtype /Link @@ -10648,7 +10543,7 @@ stream /Rect [419.358 401.031 495.412 412.156] /A << /S /GoTo /D (vdata) >> >> -% 1066 0 obj +% 1092 0 obj << /Type /Annot /Subtype /Link @@ -10656,7 +10551,7 @@ stream /Rect [376.221 389.353 383.195 400.201] /A << /S /GoTo /D (table.5) >> >> -% 1067 0 obj +% 1093 0 obj << /Type /Annot /Subtype /Link @@ -10664,33 +10559,33 @@ stream /Rect [310.273 321.33 377.331 332.455] /A << /S /GoTo /D (descdata) >> >> -% 1071 0 obj +% 1097 0 obj << -/D [1069 0 R /XYZ 149.705 753.953 null] +/D [1095 0 R /XYZ 149.705 753.953 null] >> % 240 0 obj << -/D [1069 0 R /XYZ 150.705 720.077 null] +/D [1095 0 R /XYZ 150.705 716.092 null] >> -% 1072 0 obj +% 1098 0 obj << -/D [1069 0 R /XYZ 318.451 537.464 null] +/D [1095 0 R /XYZ 318.451 537.464 null] >> -% 1068 0 obj +% 1094 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F30 784 0 R /F27 572 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F30 810 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1077 0 obj +% 1103 0 obj << /Type /Page -/Contents 1078 0 R -/Resources 1076 0 R +/Contents 1104 0 R +/Resources 1102 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1064 0 R -/Annots [ 1073 0 R 1074 0 R 1075 0 R ] +/Parent 1090 0 R +/Annots [ 1099 0 R 1100 0 R 1101 0 R ] >> -% 1073 0 obj +% 1099 0 obj << /Type /Annot /Subtype /Link @@ -10698,7 +10593,7 @@ stream /Rect [368.549 359.763 444.603 370.887] /A << /S /GoTo /D (vdata) >> >> -% 1074 0 obj +% 1100 0 obj << /Type /Annot /Subtype /Link @@ -10706,7 +10601,7 @@ stream /Rect [325.411 348.084 332.385 358.932] /A << /S /GoTo /D (table.6) >> >> -% 1075 0 obj +% 1101 0 obj << /Type /Annot /Subtype /Link @@ -10714,74 +10609,74 @@ stream /Rect [259.464 281.168 326.522 292.293] /A << /S /GoTo /D (descdata) >> >> -% 1079 0 obj +% 1105 0 obj << -/D [1077 0 R /XYZ 98.895 753.953 null] +/D [1103 0 R /XYZ 98.895 753.953 null] >> % 244 0 obj << -/D [1077 0 R /XYZ 99.895 720.077 null] +/D [1103 0 R /XYZ 99.895 716.092 null] >> -% 1080 0 obj +% 1106 0 obj << -/D [1077 0 R /XYZ 267.641 490.109 null] +/D [1103 0 R /XYZ 267.641 490.109 null] >> -% 1076 0 obj +% 1102 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F7 785 0 R /F30 784 0 R /F27 572 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F7 811 0 R /F30 810 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1082 0 obj +% 1108 0 obj << /Type /Page -/Contents 1083 0 R -/Resources 1081 0 R +/Contents 1109 0 R +/Resources 1107 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1064 0 R +/Parent 1090 0 R >> -% 1084 0 obj +% 1110 0 obj << -/D [1082 0 R /XYZ 149.705 753.953 null] +/D [1108 0 R /XYZ 149.705 753.953 null] >> -% 1085 0 obj +% 1111 0 obj << -/D [1082 0 R /XYZ 150.705 632.405 null] +/D [1108 0 R /XYZ 150.705 632.405 null] >> -% 1086 0 obj +% 1112 0 obj << -/D [1082 0 R /XYZ 150.705 572.685 null] +/D [1108 0 R /XYZ 150.705 572.685 null] >> -% 1087 0 obj +% 1113 0 obj << -/D [1082 0 R /XYZ 175.611 574.622 null] +/D [1108 0 R /XYZ 175.611 574.622 null] >> -% 1088 0 obj +% 1114 0 obj << -/D [1082 0 R /XYZ 175.611 562.667 null] +/D [1108 0 R /XYZ 175.611 562.667 null] >> -% 1089 0 obj +% 1115 0 obj << -/D [1082 0 R /XYZ 175.611 550.712 null] +/D [1108 0 R /XYZ 175.611 550.712 null] >> -% 1090 0 obj +% 1116 0 obj << -/D [1082 0 R /XYZ 175.611 538.757 null] +/D [1108 0 R /XYZ 175.611 538.757 null] >> -% 1081 0 obj +% 1107 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F16 570 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F16 582 0 R >> /ProcSet [ /PDF /Text ] >> -% 1095 0 obj +% 1121 0 obj << /Type /Page -/Contents 1096 0 R -/Resources 1094 0 R +/Contents 1122 0 R +/Resources 1120 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1064 0 R -/Annots [ 1091 0 R 1092 0 R 1093 0 R ] +/Parent 1090 0 R +/Annots [ 1117 0 R 1118 0 R 1119 0 R ] >> -% 1091 0 obj +% 1117 0 obj << /Type /Annot /Subtype /Link @@ -10789,149 +10684,310 @@ stream /Rect [368.549 289.84 444.603 300.965] /A << /S /GoTo /D (vdata) >> >> -% 1092 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [325.411 278.162 332.385 289.01] -/A << /S /GoTo /D (table.7) >> ->> -% 1093 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [259.464 208.355 326.522 219.48] -/A << /S /GoTo /D (descdata) >> ->> -% 1097 0 obj -<< -/D [1095 0 R /XYZ 98.895 753.953 null] ->> -% 248 0 obj -<< -/D [1095 0 R /XYZ 99.895 720.077 null] ->> -% 1098 0 obj -<< -/D [1095 0 R /XYZ 267.641 432.072 null] ->> -% 1094 0 obj -<< -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F7 785 0 R /F30 784 0 R /F27 572 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 1100 0 obj -<< -/Type /Page -/Contents 1101 0 R -/Resources 1099 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1064 0 R ->> -% 1102 0 obj -<< -/D [1100 0 R /XYZ 149.705 753.953 null] ->> -% 1099 0 obj -<< -/Font << /F27 572 0 R /F8 573 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 1107 0 obj -<< -/Type /Page -/Contents 1108 0 R -/Resources 1106 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1111 0 R -/Annots [ 1103 0 R 1104 0 R 1105 0 R ] ->> -% 1103 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [368.549 316.653 444.603 327.778] -/A << /S /GoTo /D (vdata) >> ->> -% 1104 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [325.411 304.975 332.385 315.823] -/A << /S /GoTo /D (table.8) >> ->> -% 1105 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [259.464 234.201 326.522 245.325] -/A << /S /GoTo /D (descdata) >> ->> -% 1109 0 obj -<< -/D [1107 0 R /XYZ 98.895 753.953 null] ->> -% 252 0 obj -<< -/D [1107 0 R /XYZ 99.895 720.077 null] ->> -% 1110 0 obj -<< -/D [1107 0 R /XYZ 267.641 500.643 null] ->> -% 1106 0 obj -<< -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F27 572 0 R /F30 784 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 1113 0 obj +% 1118 0 obj << -/Type /Page -/Contents 1114 0 R -/Resources 1112 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1111 0 R +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [325.411 278.162 332.385 289.01] +/A << /S /GoTo /D (table.7) >> >> -% 1115 0 obj +% 1119 0 obj << -/D [1113 0 R /XYZ 149.705 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [259.464 208.355 326.522 219.48] +/A << /S /GoTo /D (descdata) >> >> -% 1116 0 obj + +endstream +endobj +1128 0 obj << -/D [1113 0 R /XYZ 150.705 564.659 null] +/Length 625 >> -% 1117 0 obj +stream +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F27 9.9626 Tf 150.705 706.129 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ +0 g 0 G + 141.968 -567.87 Td [(42)]TJ +0 g 0 G +ET + +endstream +endobj +1135 0 obj << -/D [1113 0 R /XYZ 150.705 504.939 null] +/Length 6477 >> -% 1118 0 obj +stream +0 g 0 G +0 g 0 G +BT +/F16 11.9552 Tf 99.895 706.129 Td [(4.8)-1125(psb)]TJ +ET +q +1 0 0 1 151.587 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 155.621 706.129 Td [(norm2)-375(|)-375(2-Norm)-375(of)-375(V)94(ector)]TJ/F8 9.9626 Tf -55.726 -19.67 Td [(This)-333(function)-334(computes)-333(the)-333(2-norm)-334(of)-333(a)-333(v)27(ector)]TJ/F11 9.9626 Tf 207.168 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -212.862 -11.955 Td [(If)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(real)-333(v)28(ector)-334(it)-333(computes)-333(2-norm)-334(as:)]TJ/F11 9.9626 Tf 119.906 -24.408 Td [(nr)-28(m)]TJ/F8 9.9626 Tf 19.499 0 Td [(2)]TJ/F14 9.9626 Tf 7.749 0 Td [(\040)]TJ 12.73 9.339 Td [(p)]TJ +ET +q +1 0 0 1 287.059 659.634 cm +[]0 d 0 J 0.398 w 0 0 m 17.664 0 l S +Q +BT +/F11 9.9626 Tf 287.059 650.096 Td [(x)]TJ/F10 6.9738 Tf 5.694 2.878 Td [(T)]TJ/F11 9.9626 Tf 6.276 -2.878 Td [(x)]TJ/F8 9.9626 Tf -199.134 -23.294 Td [(else)-333(if)]TJ/F11 9.9626 Tf 28.006 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(a)-334(complex)-333(v)28(ector)-334(then)-333(it)-333(computes)-334(2-norm)-333(as:)]TJ/F11 9.9626 Tf 101.223 -24.408 Td [(nr)-28(m)]TJ/F8 9.9626 Tf 19.499 0 Td [(2)]TJ/F14 9.9626 Tf 7.748 0 Td [(\040)]TJ 12.73 9.339 Td [(p)]TJ +ET +q +1 0 0 1 286.419 611.932 cm +[]0 d 0 J 0.398 w 0 0 m 18.944 0 l S +Q +BT +/F11 9.9626 Tf 286.419 602.394 Td [(x)]TJ/F10 6.9738 Tf 5.694 2.878 Td [(H)]TJ/F11 9.9626 Tf 7.556 -2.878 Td [(x)]TJ +0 g 0 G +0 g 0 G +0 g 0 G +ET +q +1 0 0 1 129.484 577.3 cm +[]0 d 0 J 0.398 w 0 0 m 284.534 0 l S +Q +BT +/F11 9.9626 Tf 135.462 568.732 Td [(nr)-28(m)]TJ/F8 9.9626 Tf 19.499 0 Td [(2)]TJ/F11 9.9626 Tf 81.954 0 Td [(x)]TJ/F27 9.9626 Tf 120.41 0 Td [(F)96(unction)]TJ +ET +q +1 0 0 1 129.484 564.947 cm +[]0 d 0 J 0.398 w 0 0 m 284.534 0 l S +Q +BT +/F8 9.9626 Tf 135.462 556.379 Td [(Short)-333(Precision)-334(Real)-1200(Sh)1(ort)-334(Precision)-333(Real)-3103(psb)]TJ +ET +q +1 0 0 1 372.922 556.578 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 375.911 556.379 Td [(genrm2)]TJ -240.449 -11.955 Td [(Long)-333(Precision)-334(Real)-1411(Long)-333(Precision)-333(Real)-3314(psb)]TJ +ET +q +1 0 0 1 372.922 544.623 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 375.911 544.424 Td [(genrm2)]TJ -240.449 -11.956 Td [(Short)-333(Precision)-334(Real)-1200(Sh)1(ort)-334(Precision)-333(Complex)-1200(psb)]TJ +ET +q +1 0 0 1 372.922 532.668 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 375.911 532.468 Td [(genrm2)]TJ -240.449 -11.955 Td [(Long)-333(Precision)-334(Real)-1411(Long)-333(Precision)-333(Complex)-1412(p)1(s)-1(b)]TJ +ET +q +1 0 0 1 372.922 520.713 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 375.911 520.513 Td [(genrm2)]TJ +ET +q +1 0 0 1 129.484 516.727 cm +[]0 d 0 J 0.398 w 0 0 m 284.534 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 228.067 488.688 Td [(T)83(able)-333(8:)-444(Data)-334(t)28(yp)-28(es)]TJ +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -128.172 -39.713 Td [(psb_genrm2\050x,)-525(desc_a,)-525(info)-525([,global]\051)]TJ 0 -11.955 Td [(psb_norm2\050x,)-525(desc_a,)-525(info)-525([,global]\051)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -23.982 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -22.677 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -22.677 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.118 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -167.933 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)27(o)-254(arra)27(y)-254(or)-255(an)-255(ob)-55(jec)-1(t)-254(of)-255(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 244.743 0 Td [(psb)]TJ +ET +q +1 0 0 1 385.864 320.063 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 389.002 319.864 Td [(T)]TJ +ET +q +1 0 0 1 394.86 320.063 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 397.998 319.864 Td [(vect)]TJ +ET +q +1 0 0 1 419.547 320.063 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 422.685 319.864 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf -297.883 -11.956 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(t)28(yp)-28(e)-334(sp)-27(eci\014ed)-334(in)-333(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-333(8)]TJ +0 g 0 G + [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -22.677 Td [(desc)]TJ +ET +q +1 0 0 1 121.81 285.431 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 125.247 285.231 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 135.658 0 Td [(psb)]TJ +ET +q +1 0 0 1 276.779 237.61 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 279.917 237.411 Td [(desc)]TJ +ET +q +1 0 0 1 301.466 237.61 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 304.604 237.411 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -225.631 -22.677 Td [(global)]TJ +0 g 0 G +/F8 9.9626 Tf 34.738 0 Td [(Sp)-28(eci\014es)-357(whether)-357(the)-357(computation)-358(shoul)1(d)-358(include)-357(the)-357(global)-357(reduction)]TJ -9.831 -11.955 Td [(across)-333(all)-334(pro)-27(ce)-1(sses.)]TJ 0 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(scalar.)-445(Default:)]TJ/F30 9.9626 Tf 168.812 0 Td [(global=.true.)]TJ +0 g 0 G +/F27 9.9626 Tf -193.719 -34.632 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G +/F8 9.9626 Tf 166.875 -29.888 Td [(43)]TJ +0 g 0 G +ET + +endstream +endobj +1141 0 obj << -/D [1113 0 R /XYZ 175.611 506.876 null] +/Length 4643 >> +stream +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F27 9.9626 Tf 150.705 706.129 Td [(F)96(unction)-384(V)96(alue)]TJ +0 g 0 G +/F8 9.9626 Tf 80.683 0 Td [(is)-333(the)-334(2-norm)-333(of)-333(v)27(ector)]TJ/F11 9.9626 Tf 102.781 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -164.252 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 31.842 0 Td [(global)]TJ/F8 9.9626 Tf 32.002 0 Td [(unless)-225(the)-226(optional)-225(v)55(ari)1(able)]TJ/F30 9.9626 Tf 118.433 0 Td [(global=.false.)]TJ/F8 9.9626 Tf 75.471 0 Td [(has)-225(b)-28(een)-226(sp)-27(ec-)]TJ -257.748 -11.955 Td [(i\014ed)]TJ 0 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(long)-333(precision)-334(r)1(e)-1(al)-333(n)28(um)28(b)-28(er.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -19.925 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -21.918 Td [(Notes)]TJ +0 g 0 G +/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ +0 g 0 G + [-500(The)-241(computation)-240(of)-241(a)-241(gl)1(obal)-241(result)-241(requires)-240(a)-241(global)-241(comm)28(unication,)-259(whic)28(h)]TJ 12.73 -11.955 Td [(en)28(tails)-421(a)-420(s)-1(i)1(gni\014can)27(t)-420(o)28(v)27(erhead.)-706(It)-420(ma)27(y)-420(b)-28(e)-421(necessary)-420(and/or)-421(advisable)-420(to)]TJ 0 -11.955 Td [(compute)-395(m)28(ultiple)-395(norms)-395(at)-395(the)-395(same)-395(time;)-426(in)-395(this)-395(case,)-410(it)-395(is)-395(p)-28(ossible)-395(to)]TJ 0 -11.955 Td [(impro)28(v)28(e)-334(the)-333(run)28(time)-334(e\016ciency)-333(b)28(y)-334(using)-333(the)-333(follo)28(wing)-334(sc)28(heme:)]TJ 25.19 -17.933 Td [(v)-128(r)-129(e)-128(s)-259(\050)-130(1)-131(\051)-642(=)-593(p)-83(s)-83(b)]TJ +ET +q +1 0 0 1 278.19 495.12 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 282.003 494.921 Td [(g)-83(e)-82(n)-83(r)-83(m)-82(2)-189(\050)-148(x)-43(1)-248(,)-273(d)-113(e)-113(s)-112(c)]TJ +ET +q +1 0 0 1 367.515 495.12 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 371.626 494.921 Td [(a)-386(,)-288(i)-127(n)-127(f)-127(o)-415(,)-302(g)-141(l)-142(o)-141(b)-141(a)-141(l)-190(=)-48(.)]TJ/F27 9.9626 Tf 92.223 0 Td [(f)-132(a)-131(l)-132(s)-131(e)]TJ/F8 9.9626 Tf 30.349 0 Td [(.)-178(\051)]TJ -293.397 -11.955 Td [(v)-128(r)-129(e)-128(s)-259(\050)-130(2)-131(\051)-642(=)-593(p)-83(s)-83(b)]TJ +ET +q +1 0 0 1 278.19 483.165 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 282.003 482.966 Td [(g)-83(e)-82(n)-83(r)-83(m)-82(2)-189(\050)-148(x)-43(2)-248(,)-273(d)-113(e)-113(s)-112(c)]TJ +ET +q +1 0 0 1 367.515 483.165 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 371.626 482.966 Td [(a)-386(,)-288(i)-127(n)-127(f)-127(o)-415(,)-302(g)-141(l)-142(o)-141(b)-141(a)-141(l)-190(=)-48(.)]TJ/F27 9.9626 Tf 92.223 0 Td [(f)-132(a)-131(l)-132(s)-131(e)]TJ/F8 9.9626 Tf 30.349 0 Td [(.)-178(\051)]TJ -293.397 -11.955 Td [(v)-128(r)-129(e)-128(s)-259(\050)-130(3)-131(\051)-642(=)-593(p)-83(s)-83(b)]TJ +ET +q +1 0 0 1 278.19 471.21 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 282.003 471.011 Td [(g)-83(e)-82(n)-83(r)-83(m)-82(2)-189(\050)-148(x)-43(3)-248(,)-273(d)-113(e)-113(s)-112(c)]TJ +ET +q +1 0 0 1 367.515 471.21 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 371.626 471.011 Td [(a)-386(,)-288(i)-127(n)-127(f)-127(o)-415(,)-302(g)-141(l)-142(o)-141(b)-141(a)-141(l)-190(=)-48(.)]TJ/F27 9.9626 Tf 92.223 0 Td [(f)-132(a)-131(l)-132(s)-131(e)]TJ/F8 9.9626 Tf 30.349 0 Td [(.)-178(\051)]TJ/F27 9.9626 Tf -293.299 -11.956 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.235 0 Td [(p)-73(s)-72(b)]TJ +ET +q +1 0 0 1 247.903 459.255 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 251.616 459.055 Td [(n)-73(r)-72(m)-73(2)-178(\050)-245(i)-138(c)-139(t)-139(x)-139(t)-439(,)-289(v)-129(r)-128(e)-128(s)-294(\050)-165(1)-165(:)-165(3)-165(\051)-165(\051)]TJ +0 g 0 G +0 g 0 G + -76.005 -21.917 Td [(In)-354(th)1(is)-354(w)28(a)28(y)-354(the)-353(global)-354(comm)28(unication,)-359(whic)28(h)-353(for)-354(small)-353(size)-1(s)-353(is)-354(a)-353(latency-)]TJ 0 -11.956 Td [(b)-28(ound)-333(op)-28(eration,)-333(is)-333(in)27(v)28(ok)28(ed)-333(only)-334(once.)]TJ +0 g 0 G + 141.968 -334.744 Td [(44)]TJ +0 g 0 G +ET endstream endobj -1128 0 obj +1154 0 obj << -/Length 6130 +/Length 6140 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(4.9)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 151.587 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(genrm2s)-375(|)-375(Generalized)-375(2-Norm)-375(of)-375(V)94(ector)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(This)-310(subroutine)-310(computes)-309(a)-310(series)-310(of)-310(2-norms)-310(on)-310(the)-310(columns)-309(of)-310(a)-310(dense)-310(matrix)]TJ/F11 9.9626 Tf 0 -11.956 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(:)]TJ/F11 9.9626 Tf 126.531 -11.955 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.081 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F14 9.9626 Tf 6.642 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.711 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050:)]TJ/F11 9.9626 Tf 6.642 0 Td [(;)-167(i)]TJ/F8 9.9626 Tf 7.86 0 Td [(\051)]TJ/F14 9.9626 Tf 3.875 0 Td [(k)]TJ/F7 6.9738 Tf 4.981 -1.494 Td [(2)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(genrm2s)-375(|)-375(Generalized)-375(2-Norm)-375(of)-375(V)94(ector)]TJ/F8 9.9626 Tf -55.726 -18.389 Td [(This)-310(subroutine)-310(computes)-309(a)-310(series)-310(of)-310(2-norms)-310(on)-310(the)-310(columns)-309(of)-310(a)-310(dense)-310(matrix)]TJ/F11 9.9626 Tf 0 -11.956 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(:)]TJ/F11 9.9626 Tf 126.531 -11.955 Td [(r)-28(es)]TJ/F8 9.9626 Tf 14.081 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F14 9.9626 Tf 6.642 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.711 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050:)]TJ/F11 9.9626 Tf 6.642 0 Td [(;)-167(i)]TJ/F8 9.9626 Tf 7.86 0 Td [(\051)]TJ/F14 9.9626 Tf 3.875 0 Td [(k)]TJ/F7 6.9738 Tf 4.981 -1.494 Td [(2)]TJ 0 g 0 G 0 g 0 G /F30 9.9626 Tf -207.017 -20.424 Td [(call)-525(psb_genrm2s\050res,)-525(x,)-525(desc_a,)-525(info\051)]TJ @@ -11077,22 +11133,22 @@ ET endstream endobj -1135 0 obj +1161 0 obj << -/Length 5509 +/Length 5520 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(4.10)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 209.121 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(norm1)-375(|)-375(1-Norm)-375(of)-375(Sparse)-375(Matrix)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(This)-333(function)-334(computes)-333(the)-333(1-norm)-334(of)-333(a)-333(matrix)]TJ/F11 9.9626 Tf 209.658 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(:)]TJ/F11 9.9626 Tf -76.215 -33.873 Td [(nr)-28(m)]TJ/F8 9.9626 Tf 19.498 0 Td [(1)]TJ/F14 9.9626 Tf 7.749 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.711 0 Td [(A)]TJ/F14 9.9626 Tf 7.472 0 Td [(k)]TJ/F7 6.9738 Tf 4.982 -1.495 Td [(1)]TJ/F8 9.9626 Tf -198.327 -20.423 Td [(where:)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(norm1)-375(|)-375(1-Norm)-375(of)-375(Sparse)-375(Matrix)]TJ/F8 9.9626 Tf -62.451 -18.389 Td [(This)-333(function)-334(computes)-333(the)-333(1-norm)-334(of)-333(a)-333(matrix)]TJ/F11 9.9626 Tf 209.658 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(:)]TJ/F11 9.9626 Tf -76.215 -33.873 Td [(nr)-28(m)]TJ/F8 9.9626 Tf 19.498 0 Td [(1)]TJ/F14 9.9626 Tf 7.749 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.711 0 Td [(A)]TJ/F14 9.9626 Tf 7.472 0 Td [(k)]TJ/F7 6.9738 Tf 4.982 -1.495 Td [(1)]TJ/F8 9.9626 Tf -198.327 -20.423 Td [(where:)]TJ 0 g 0 G /F11 9.9626 Tf 0 -19.926 Td [(A)]TJ 0 g 0 G @@ -11231,22 +11287,22 @@ ET endstream endobj -1142 0 obj +1168 0 obj << -/Length 5546 +/Length 5557 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(4.11)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 158.311 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(normi)-375(|)-375(In\014nit)31(y)-375(Norm)-375(of)-375(Sparse)-375(Matrix)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(This)-333(function)-334(computes)-333(the)-333(in\014nit)28(y-norm)-334(of)-333(a)-333(matrix)]TJ/F11 9.9626 Tf 235.673 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(:)]TJ/F11 9.9626 Tf -103.441 -33.873 Td [(nr)-28(mi)]TJ/F14 9.9626 Tf 25.698 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.712 0 Td [(A)]TJ/F14 9.9626 Tf 7.472 0 Td [(k)]TJ/F13 6.9738 Tf 4.981 -1.495 Td [(1)]TJ/F8 9.9626 Tf -195.567 -20.423 Td [(where:)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(normi)-375(|)-375(In\014nit)31(y)-375(Norm)-375(of)-375(Sparse)-375(Matrix)]TJ/F8 9.9626 Tf -62.451 -18.389 Td [(This)-333(function)-334(computes)-333(the)-333(in\014nit)28(y-norm)-334(of)-333(a)-333(matrix)]TJ/F11 9.9626 Tf 235.673 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(:)]TJ/F11 9.9626 Tf -103.441 -33.873 Td [(nr)-28(mi)]TJ/F14 9.9626 Tf 25.698 0 Td [(\040)-278(k)]TJ/F11 9.9626 Tf 17.712 0 Td [(A)]TJ/F14 9.9626 Tf 7.472 0 Td [(k)]TJ/F13 6.9738 Tf 4.981 -1.495 Td [(1)]TJ/F8 9.9626 Tf -195.567 -20.423 Td [(where:)]TJ 0 g 0 G /F11 9.9626 Tf 0 -19.926 Td [(A)]TJ 0 g 0 G @@ -11385,44 +11441,44 @@ ET endstream endobj -1153 0 obj +1179 0 obj << -/Length 7300 +/Length 7334 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(4.12)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 209.121 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(spmm)-375(|)-375(Sparse)-375(Matrix)-375(b)31(y)-375(Dense)-375(Matrix)-375(Pro)-31(duct)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(This)-333(subroutine)-334(computes)-333(the)-333(Sparse)-334(Matrix)-333(b)28(y)-333(Dense)-334(Matrix)-333(Pro)-28(duct:)]TJ/F11 9.9626 Tf 139.908 -23.911 Td [(y)]TJ/F14 9.9626 Tf 8.009 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(\013)-4(Ax)]TJ/F8 9.9626 Tf 21.79 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(spmm)-349(|)-349(Sparse)-349(Matrix)-349(b)31(y)-349(Dense)-349(Matrix)-349(Pro)-31(d-)]TJ -25.091 -13.948 Td [(uct)]TJ/F8 9.9626 Tf -37.36 -18.389 Td [(This)-333(subroutine)-334(computes)-333(the)-333(Sparse)-334(Matrix)-333(b)28(y)-333(Dense)-334(Matrix)-333(Pro)-28(duct:)]TJ/F11 9.9626 Tf 139.908 -23.911 Td [(y)]TJ/F14 9.9626 Tf 8.009 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(\013)-4(Ax)]TJ/F8 9.9626 Tf 21.79 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ 0 g 0 G /F8 9.9626 Tf 138.581 0 Td [(\0501\051)]TJ 0 g 0 G -/F11 9.9626 Tf -194.211 -17.408 Td [(y)]TJ/F14 9.9626 Tf 8.009 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(\013)-4(A)]TJ/F10 6.9738 Tf 13.882 4.113 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.908 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ +/F11 9.9626 Tf -194.211 -16.435 Td [(y)]TJ/F14 9.9626 Tf 8.009 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(\013)-4(A)]TJ/F10 6.9738 Tf 13.882 4.114 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.114 Td [(x)]TJ/F8 9.9626 Tf 7.908 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ 0 g 0 G /F8 9.9626 Tf 135.443 0 Td [(\0502\051)]TJ 0 g 0 G -/F11 9.9626 Tf -194.851 -17.408 Td [(y)]TJ/F14 9.9626 Tf 8.009 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(\013)-4(A)]TJ/F10 6.9738 Tf 13.882 4.113 Td [(H)]TJ/F11 9.9626 Tf 7.557 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.907 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ +/F11 9.9626 Tf -194.851 -16.435 Td [(y)]TJ/F14 9.9626 Tf 8.009 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(\013)-4(A)]TJ/F10 6.9738 Tf 13.882 4.114 Td [(H)]TJ/F11 9.9626 Tf 7.557 -4.114 Td [(x)]TJ/F8 9.9626 Tf 7.907 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ 0 g 0 G /F8 9.9626 Tf 134.803 0 Td [(\0503\051)]TJ 0 g 0 G - -316.037 -17.408 Td [(where:)]TJ + -316.037 -16.435 Td [(where:)]TJ 0 g 0 G -/F11 9.9626 Tf -14.944 -19.226 Td [(x)]TJ +/F11 9.9626 Tf -14.944 -17.928 Td [(x)]TJ 0 g 0 G /F8 9.9626 Tf 10.675 0 Td [(is)-333(the)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 116.093 0 Td [(x)]TJ/F7 6.9738 Tf 5.694 -1.495 Td [(:)]TJ/F10 6.9738 Tf 2.255 0 Td [(;)]TJ/F7 6.9738 Tf 2.366 0 Td [(:)]TJ 0 g 0 G -/F11 9.9626 Tf -137.083 -18.081 Td [(y)]TJ +/F11 9.9626 Tf -137.083 -17.432 Td [(y)]TJ 0 g 0 G /F8 9.9626 Tf 10.223 0 Td [(is)-333(the)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 116.093 0 Td [(y)]TJ/F7 6.9738 Tf 4.884 -1.494 Td [(:)]TJ/F10 6.9738 Tf 2.256 0 Td [(;)]TJ/F7 6.9738 Tf 2.366 0 Td [(:)]TJ 0 g 0 G -/F11 9.9626 Tf -135.822 -18.081 Td [(A)]TJ +/F11 9.9626 Tf -135.822 -17.433 Td [(A)]TJ 0 g 0 G /F8 9.9626 Tf 12.453 0 Td [(is)-333(the)-334(global)-333(sparse)-333(matrix)]TJ/F11 9.9626 Tf 118.943 0 Td [(A)]TJ 0 g 0 G @@ -11430,98 +11486,98 @@ BT 0 g 0 G ET q -1 0 0 1 228.797 532.215 cm +1 0 0 1 228.797 525.728 cm []0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q BT -/F11 9.9626 Tf 234.775 523.647 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(,)]TJ/F11 9.9626 Tf 6.089 0 Td [(\013)]TJ/F8 9.9626 Tf 6.41 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(\014)]TJ/F27 9.9626 Tf 71.239 0 Td [(Subroutine)]TJ +/F11 9.9626 Tf 234.775 517.16 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(,)]TJ/F11 9.9626 Tf 6.089 0 Td [(\013)]TJ/F8 9.9626 Tf 6.41 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(\014)]TJ/F27 9.9626 Tf 71.239 0 Td [(Subroutine)]TJ ET q -1 0 0 1 228.797 519.862 cm +1 0 0 1 228.797 513.374 cm []0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q BT -/F8 9.9626 Tf 234.775 511.294 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ +/F8 9.9626 Tf 234.775 504.806 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ ET q -1 0 0 1 370.782 511.493 cm +1 0 0 1 370.782 505.006 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 373.771 511.294 Td [(spmm)]TJ -138.996 -11.956 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ +/F8 9.9626 Tf 373.771 504.806 Td [(spmm)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ ET q -1 0 0 1 370.782 499.538 cm +1 0 0 1 370.782 493.05 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 373.771 499.338 Td [(spmm)]TJ -138.996 -11.955 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ +/F8 9.9626 Tf 373.771 492.851 Td [(spmm)]TJ -138.996 -11.955 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ ET q -1 0 0 1 370.782 487.583 cm +1 0 0 1 370.782 481.095 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 373.771 487.383 Td [(spmm)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ +/F8 9.9626 Tf 373.771 480.896 Td [(spmm)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ ET q -1 0 0 1 370.782 475.627 cm +1 0 0 1 370.782 469.14 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 373.771 475.428 Td [(spmm)]TJ +/F8 9.9626 Tf 373.771 468.941 Td [(spmm)]TJ ET q -1 0 0 1 228.797 471.642 cm +1 0 0 1 228.797 465.155 cm []0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q 0 g 0 G BT -/F8 9.9626 Tf 276.386 443.603 Td [(T)83(able)-333(12:)-444(Data)-334(t)28(yp)-28(es)]TJ +/F8 9.9626 Tf 276.386 437.116 Td [(T)83(able)-333(12:)-444(Data)-334(t)28(yp)-28(es)]TJ 0 g 0 G 0 g 0 G 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -125.681 -32.649 Td [(call)-525(psb_spmm\050alpha,)-525(a,)-525(x,)-525(beta,)-525(y,)-525(desc_a,)-525(info\051)]TJ 0 -11.955 Td [(call)-525(psb_spmm\050alpha,)-525(a,)-525(x,)-525(beta,)-525(y,desc_a,)-525(info,)-525(&)]TJ 67.994 -11.955 Td [(&)-525(trans,)-525(work\051)]TJ +/F30 9.9626 Tf -125.681 -30.379 Td [(call)-525(psb_spmm\050alpha,)-525(a,)-525(x,)-525(beta,)-525(y,)-525(desc_a,)-525(info\051)]TJ 0 -11.955 Td [(call)-525(psb_spmm\050alpha,)-525(a,)-525(x,)-525(beta,)-525(y,desc_a,)-525(info,)-525(&)]TJ 67.994 -11.955 Td [(&)-525(trans,)-525(work\051)]TJ 0 g 0 G -/F27 9.9626 Tf -67.994 -21.044 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -67.994 -19.422 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.575 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -18.927 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.576 Td [(alpha)]TJ + 0 -18.926 Td [(alpha)]TJ 0 g 0 G -/F8 9.9626 Tf 32.032 0 Td [(the)-333(scalar)]TJ/F11 9.9626 Tf 45.469 0 Td [(\013)]TJ/F8 9.9626 Tf 6.41 0 Td [(.)]TJ -59.005 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(n)28(um)28(b)-28(er)-333(of)-334(the)-333(data)-333(t)27(yp)-27(e)-334(indicated)-333(in)-333(T)83(able)]TJ +/F8 9.9626 Tf 32.032 0 Td [(the)-333(scalar)]TJ/F11 9.9626 Tf 45.469 0 Td [(\013)]TJ/F8 9.9626 Tf 6.41 0 Td [(.)]TJ -59.005 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(n)28(um)28(b)-28(er)-333(of)-334(the)-333(data)-333(t)27(yp)-27(e)-334(indicated)-333(in)-333(T)83(able)]TJ 0 0 1 rg 0 0 1 RG [-333(12)]TJ 0 g 0 G [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -19.575 Td [(a)]TJ +/F27 9.9626 Tf -24.906 -18.927 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(lo)-28(cal)-334(p)-27(ortion)-333(of)-334(the)-333(sparse)-334(matri)1(x)]TJ/F11 9.9626 Tf 166.792 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(.)]TJ -159.908 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.55 0 Td [(the)-333(lo)-28(cal)-334(p)-27(ortion)-333(of)-334(the)-333(sparse)-334(matri)1(x)]TJ/F11 9.9626 Tf 166.792 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(.)]TJ -159.908 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 135.659 0 Td [(psb)]TJ ET q -1 0 0 1 327.588 211.831 cm +1 0 0 1 327.588 211.183 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 330.727 211.632 Td [(Tspmat)]TJ +/F30 9.9626 Tf 330.727 210.983 Td [(Tspmat)]TJ ET q -1 0 0 1 362.736 211.831 cm +1 0 0 1 362.736 211.183 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.874 211.632 Td [(type)]TJ +/F30 9.9626 Tf 365.874 210.983 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -236.091 -19.575 Td [(x)]TJ +/F27 9.9626 Tf -236.091 -18.926 Td [(x)]TJ 0 g 0 G /F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.118 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -167.933 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)28(o)-255(arra)28(y)-255(or)-255(an)-255(ob)-55(ject)-255(of)-255(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG @@ -11560,7 +11616,7 @@ ET endstream endobj -1168 0 obj +1194 0 obj << /Length 6993 >> @@ -11690,22 +11746,22 @@ ET endstream endobj -1175 0 obj +1201 0 obj << -/Length 6772 +/Length 6783 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(4.13)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 209.121 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(spsm)-375(|)-375(T)94(riangular)-375(System)-375(Solv)31(e)]TJ/F8 9.9626 Tf -25.091 -19.095 Td [(This)-333(subroutine)-334(computes)-333(the)-333(T)83(riangular)-333(System)-334(S)1(o)-1(l)1(v)27(e:)]TJ/F11 9.9626 Tf 121.692 -35.01 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F7 6.9738 Tf 6.226 0 Td [(1)]TJ/F11 9.9626 Tf 4.47 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.907 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -77.312 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(D)-27(T)]TJ/F13 6.9738 Tf 22.141 4.113 Td [(\000)]TJ/F7 6.9738 Tf 6.226 0 Td [(1)]TJ/F11 9.9626 Tf 4.47 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.907 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -85.837 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F7 6.9738 Tf 6.226 0 Td [(1)]TJ/F11 9.9626 Tf 4.47 -4.113 Td [(D)-28(x)]TJ/F8 9.9626 Tf 16.432 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -85.837 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.908 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -79.119 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(D)-27(T)]TJ/F13 6.9738 Tf 22.141 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.908 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -87.644 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.113 Td [(D)-28(x)]TJ/F8 9.9626 Tf 16.433 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -87.644 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(H)]TJ/F11 9.9626 Tf 7.557 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.907 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -80.399 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(D)-27(T)]TJ/F13 6.9738 Tf 22.141 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(H)]TJ/F11 9.9626 Tf 7.557 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.907 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -88.924 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(H)]TJ/F11 9.9626 Tf 7.557 -4.113 Td [(D)-28(x)]TJ/F8 9.9626 Tf 16.432 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ/F8 9.9626 Tf -195.672 -37.999 Td [(where:)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(spsm)-375(|)-375(T)94(riangular)-375(System)-375(Solv)31(e)]TJ/F8 9.9626 Tf -62.451 -19.095 Td [(This)-333(subroutine)-334(computes)-333(the)-333(T)83(riangular)-333(System)-334(S)1(o)-1(l)1(v)27(e:)]TJ/F11 9.9626 Tf 121.692 -35.01 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F7 6.9738 Tf 6.226 0 Td [(1)]TJ/F11 9.9626 Tf 4.47 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.907 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -77.312 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(D)-27(T)]TJ/F13 6.9738 Tf 22.141 4.113 Td [(\000)]TJ/F7 6.9738 Tf 6.226 0 Td [(1)]TJ/F11 9.9626 Tf 4.47 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.907 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -85.837 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F7 6.9738 Tf 6.226 0 Td [(1)]TJ/F11 9.9626 Tf 4.47 -4.113 Td [(D)-28(x)]TJ/F8 9.9626 Tf 16.432 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -85.837 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.908 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -79.119 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(D)-27(T)]TJ/F13 6.9738 Tf 22.141 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.908 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -87.644 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(T)]TJ/F11 9.9626 Tf 6.276 -4.113 Td [(D)-28(x)]TJ/F8 9.9626 Tf 16.433 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -87.644 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(H)]TJ/F11 9.9626 Tf 7.557 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.907 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -80.399 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(D)-27(T)]TJ/F13 6.9738 Tf 22.141 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(H)]TJ/F11 9.9626 Tf 7.557 -4.113 Td [(x)]TJ/F8 9.9626 Tf 7.907 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ -88.924 -14.944 Td [(y)]TJ/F14 9.9626 Tf 15.205 0 Td [(\040)]TJ/F11 9.9626 Tf 19.925 0 Td [(\013)-4(T)]TJ/F13 6.9738 Tf 13.616 4.113 Td [(\000)]TJ/F10 6.9738 Tf 6.226 0 Td [(H)]TJ/F11 9.9626 Tf 7.557 -4.113 Td [(D)-28(x)]TJ/F8 9.9626 Tf 16.432 0 Td [(+)]TJ/F11 9.9626 Tf 9.963 0 Td [(\014)-53(y)]TJ/F8 9.9626 Tf -195.672 -37.999 Td [(where:)]TJ 0 g 0 G /F11 9.9626 Tf -14.944 -21.063 Td [(x)]TJ 0 g 0 G @@ -11802,7 +11858,7 @@ ET endstream endobj -1186 0 obj +1212 0 obj << /Length 7790 >> @@ -11934,571 +11990,343 @@ BT 0 g 0 G /F8 9.9626 Tf 61.493 0 Td [(the)-333(op)-28(eration)-333(is)-334(with)-333(transp)-28(osed)-333(matrix.)]TJ 0 g 0 G -/F27 9.9626 Tf -61.493 -16.302 Td [(trans)-383(=)-384('C')]TJ -0 g 0 G -/F8 9.9626 Tf 61.797 0 Td [(the)-333(op)-28(eration)-333(is)-334(with)-333(conjugate)-333(transp)-28(osed)-333(matrix.)]TJ -61.797 -20.65 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(tr)-28(ans)]TJ/F8 9.9626 Tf 27.052 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(N)]TJ/F8 9.9626 Tf -77.004 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(c)28(haracter)-333(v)55(ariable.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -20.65 Td [(unitd)]TJ -0 g 0 G -/F8 9.9626 Tf 31.715 0 Td [(sp)-28(ecify)-333(with)]TJ/F17 9.9626 Tf 55.68 0 Td [(tr)51(ans)]TJ/F8 9.9626 Tf 25.089 0 Td [(the)-333(op)-28(eration)-333(to)-334(p)-27(erform.)]TJ -0 g 0 G -/F27 9.9626 Tf -87.577 -20.649 Td [(unitd)-383(=)-384('U')]TJ -0 g 0 G -/F8 9.9626 Tf 63.442 0 Td [(the)-333(op)-28(eration)-333(is)-334(with)-333(no)-333(scaling)]TJ -0 g 0 G -/F27 9.9626 Tf -63.442 -16.303 Td [(unitd)-383(=)-384('L')]TJ -0 g 0 G -/F8 9.9626 Tf 61.519 0 Td [(the)-333(op)-28(eration)-333(is)-334(with)-333(left)-333(scaling)]TJ -0 g 0 G -/F27 9.9626 Tf -61.519 -16.302 Td [(unitd)-383(=)-384('R')]TJ -0 g 0 G -/F8 9.9626 Tf 63.221 0 Td [(the)-333(op)-28(eration)-333(is)-334(with)-333(righ)28(t)-333(s)-1(calin)1(g.)]TJ -0 g 0 G - 78.747 -29.888 Td [(51)]TJ -0 g 0 G -ET - -endstream -endobj -1192 0 obj -<< -/Length 4678 ->> -stream -0 g 0 G -0 g 0 G -BT -/F8 9.9626 Tf 175.611 706.129 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(unitd)]TJ/F8 9.9626 Tf 26.666 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(U)]TJ/F8 9.9626 Tf -76.618 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(c)28(haracter)-334(v)56(ariable.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.925 Td [(c)32(hoice)]TJ -0 g 0 G -/F8 9.9626 Tf 35.374 0 Td [(sp)-28(eci\014es)-333(the)-334(up)-27(date)-334(of)-333(o)28(v)28(erlap)-334(elemen)28(ts)-333(to)-334(b)-27(e)-334(p)-28(erf)1(orme)-1(d)-333(on)-333(exit:)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -5.486 -19.925 Td [(psb_none_)]TJ -0 g 0 G -0 g 0 G - 0 -15.941 Td [(psb_sum_)]TJ -0 g 0 G -0 g 0 G - 0 -15.94 Td [(psb_avg_)]TJ -0 g 0 G -0 g 0 G - 0 -15.94 Td [(psb_square_root_)]TJ/F8 9.9626 Tf -4.982 -19.925 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Default:)]TJ/F30 9.9626 Tf 39.436 0 Td [(psb_avg_)]TJ/F8 9.9626 Tf -39.436 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.925 Td [(diag)]TJ -0 g 0 G -/F8 9.9626 Tf 25.826 0 Td [(the)-333(diagonal)-334(scaling)-333(matrix.)]TJ -0.92 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(diag)]TJ/F8 9.9626 Tf 18.993 0 Td [(\0501\051)-278(=)-278(1\050)]TJ/F11 9.9626 Tf 34.869 0 Td [(noscal)-20(ing)]TJ/F8 9.9626 Tf 42.747 0 Td [(\051)]TJ -136.045 -11.955 Td [(Sp)-28(eci\014ed)-382(as:)-543(a)-382(rank)-383(on)1(e)-383(arra)28(y)-382(c)-1(on)28(taining)-382(n)28(um)28(b)-28(ers)-383(of)-382(the)-382(t)27(yp)-27(e)-383(indicated)]TJ 0 -11.955 Td [(in)-333(T)83(able)]TJ -0 0 1 rg 0 0 1 RG - [-333(13)]TJ -0 g 0 G - [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(w)32(ork)]TJ -0 g 0 G -/F8 9.9626 Tf 29.431 0 Td [(a)-333(w)27(ork)-333(arra)28(y)83(.)]TJ -4.525 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-377(as:)-531(a)-377(rank)-377(on)1(e)-377(arra)28(y)-377(of)-377(the)-377(same)-377(t)28(yp)-28(e)-377(of)]TJ/F11 9.9626 Tf 225.953 0 Td [(x)]TJ/F8 9.9626 Tf 9.448 0 Td [(with)-377(the)-377(T)84(AR)28(G)-1(E)1(T)]TJ -235.401 -11.955 Td [(attribute.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(y)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.118 0 Td [(y)]TJ/F8 9.9626 Tf 5.241 0 Td [(.)]TJ -167.481 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-474(as:)-727(an)-475(arra)28(y)-475(of)-474(rank)-475(one)-474(or)-475(t)28(w)28(o)-475(con)28(taining)-474(n)27(um)28(b)-28(ers)-474(of)-475(t)28(yp)-28(e)]TJ 0 -11.955 Td [(sp)-28(eci\014ed)-333(in)-333(T)83(able)]TJ -0 0 1 rg 0 0 1 RG - [-333(13)]TJ -0 g 0 G - [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.925 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(t)1(e)-1(d)1(.)]TJ -0 g 0 G - 141.968 -73.723 Td [(52)]TJ -0 g 0 G -ET - -endstream -endobj -1197 0 obj -<< -/Length 632 ->> -stream -0 g 0 G -0 g 0 G -BT -/F16 14.3462 Tf 99.895 706.129 Td [(5)-1125(Comm)31(unication)-375(routines)]TJ/F8 9.9626 Tf 0 -21.821 Td [(The)-283(routines)-283(in)-283(this)-283(c)28(hapter)-283(implemen)28(t)-283(v)55(arious)-283(global)-283(comm)28(unication)-283(op)-28(erators)]TJ 0 -11.955 Td [(on)-344(v)28(ectors)-344(asso)-28(ciated)-343(with)-344(a)-344(discretization)-343(mesh.)-476(F)84(or)-344(auxiliary)-344(comm)28(unication)]TJ 0 -11.955 Td [(routines)-333(not)-334(tied)-333(to)-333(a)-334(discretization)-333(space)-333(see)]TJ -0 0 1 rg 0 0 1 RG - [-334(6)]TJ -0 g 0 G - [(.)]TJ -0 g 0 G - 166.875 -569.96 Td [(53)]TJ -0 g 0 G -ET - -endstream -endobj -1205 0 obj -<< -/Length 7227 ->> -stream -0 g 0 G -0 g 0 G -BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 706.129 Td [(halo)-375(|)-375(Halo)-375(Data)-375(Comm)31(unication)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(These)-333(subroutines)-334(gathers)-333(the)-333(v)55(alues)-333(of)-333(the)-334(halo)-333(elemen)28(ts:)]TJ/F11 9.9626 Tf 158.413 -23.188 Td [(x)]TJ/F14 9.9626 Tf 8.461 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(x)]TJ/F8 9.9626 Tf -179.604 -21.251 Td [(where:)]TJ -0 g 0 G -/F11 9.9626 Tf 0 -19.391 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 10.675 0 Td [(is)-333(a)-334(global)-333(dense)-333(submatrix.)]TJ -0 g 0 G -0 g 0 G -0 g 0 G -ET -q -1 0 0 1 228.797 602.649 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S -Q -BT -/F11 9.9626 Tf 234.775 594.081 Td [(\013)]TJ/F8 9.9626 Tf 6.41 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(x)]TJ/F27 9.9626 Tf 107.912 0 Td [(Subroutine)]TJ -ET -q -1 0 0 1 228.797 590.295 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S -Q -BT -/F8 9.9626 Tf 234.775 581.727 Td [(In)28(teger)-9028(psb)]TJ -ET -q -1 0 0 1 370.782 581.926 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.771 581.727 Td [(halo)]TJ -138.996 -11.955 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ -ET -q -1 0 0 1 370.782 569.971 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.771 569.772 Td [(halo)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ -ET -q -1 0 0 1 370.782 558.016 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.771 557.817 Td [(halo)]TJ -138.996 -11.955 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ -ET -q -1 0 0 1 370.782 546.061 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.771 545.862 Td [(halo)]TJ -138.996 -11.956 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ -ET -q -1 0 0 1 370.782 534.106 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 373.771 533.906 Td [(halo)]TJ -ET -q -1 0 0 1 228.797 530.121 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S -Q -0 g 0 G -BT -/F8 9.9626 Tf 276.386 502.081 Td [(T)83(able)-333(14:)-444(Data)-334(t)28(yp)-28(es)]TJ -0 g 0 G -0 g 0 G -/F27 9.9626 Tf -124.304 -29.354 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.73 0 Td [(p)-122(s)-123(b)]TJ -ET -q -1 0 0 1 201.066 472.926 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 205.274 472.727 Td [(h)-122(a)-123(l)-122(o)-228(\050)-129(x)-210(,)-873(d)-113(e)-113(s)-112(c)]TJ -ET -q -1 0 0 1 276.854 472.926 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 280.965 472.727 Td [(a)-386(,)-914(i)-152(n)-152(f)-152(o)-258(\051)]TJ/F27 9.9626 Tf -128.883 -11.955 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.73 0 Td [(p)-122(s)-123(b)]TJ -ET -q -1 0 0 1 201.066 460.971 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 205.274 460.772 Td [(h)-122(a)-123(l)-122(o)-228(\050)-129(x)-210(,)-873(d)-113(e)-113(s)-112(c)]TJ -ET -q -1 0 0 1 276.854 460.971 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 280.965 460.772 Td [(a)-386(,)-888(i)-127(n)-127(f)-127(o)-415(,)-804(w)-43(o)-43(r)-43(k)-247(,)]TJ/F27 9.9626 Tf 91.303 0 Td [(d)-39(a)-39(t)-40(a)]TJ/F8 9.9626 Tf 24.572 0 Td [(\051)]TJ -0 g 0 G -0 g 0 G -0 g 0 G -/F27 9.9626 Tf -246.135 -26.961 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.659 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.658 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(global)-333(dense)-334(matrix)]TJ/F11 9.9626 Tf 88.917 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -80.732 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)28(o)-255(arra)28(y)-255(or)-255(an)-255(ob)-55(ject)-255(of)-255(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 244.742 0 Td [(psb)]TJ -ET -q -1 0 0 1 436.673 346.872 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 439.811 346.673 Td [(T)]TJ -ET -q -1 0 0 1 445.669 346.872 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 448.807 346.673 Td [(vect)]TJ -ET -q -1 0 0 1 470.356 346.872 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 473.495 346.673 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf -297.884 -11.955 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(t)27(yp)-27(e)-334(sp)-27(ec)-1(i)1(\014ed)-334(in)-333(T)83(able)]TJ -0 0 1 rg 0 0 1 RG - [-333(14)]TJ -0 g 0 G - [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.658 Td [(desc)]TJ -ET -q -1 0 0 1 172.619 315.259 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 176.057 315.06 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(con)28(tains)-334(data)-333(structures)-333(for)-333(c)-1(omm)28(unications.)]TJ -10.996 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ -ET -q -1 0 0 1 362.845 267.438 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 365.983 267.239 Td [(desc)]TJ -ET -q -1 0 0 1 387.532 267.438 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 390.67 267.239 Td [(type)]TJ +/F27 9.9626 Tf -61.493 -16.302 Td [(trans)-383(=)-384('C')]TJ 0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +/F8 9.9626 Tf 61.797 0 Td [(the)-333(op)-28(eration)-333(is)-334(with)-333(conjugate)-333(transp)-28(osed)-333(matrix.)]TJ -61.797 -20.65 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(tr)-28(ans)]TJ/F8 9.9626 Tf 27.052 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(N)]TJ/F8 9.9626 Tf -77.004 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(c)28(haracter)-333(v)55(ariable.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -19.658 Td [(w)32(ork)]TJ +/F27 9.9626 Tf -24.907 -20.65 Td [(unitd)]TJ +0 g 0 G +/F8 9.9626 Tf 31.715 0 Td [(sp)-28(ecify)-333(with)]TJ/F17 9.9626 Tf 55.68 0 Td [(tr)51(ans)]TJ/F8 9.9626 Tf 25.089 0 Td [(the)-333(op)-28(eration)-333(to)-334(p)-27(erform.)]TJ +0 g 0 G +/F27 9.9626 Tf -87.577 -20.649 Td [(unitd)-383(=)-384('U')]TJ +0 g 0 G +/F8 9.9626 Tf 63.442 0 Td [(the)-333(op)-28(eration)-333(is)-334(with)-333(no)-333(scaling)]TJ +0 g 0 G +/F27 9.9626 Tf -63.442 -16.303 Td [(unitd)-383(=)-384('L')]TJ 0 g 0 G -/F8 9.9626 Tf 29.431 0 Td [(the)-333(w)27(ork)-333(arra)28(y)83(.)]TJ -4.525 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(ar)1(ra)27(y)-333(of)-333(the)-334(same)-333(t)28(yp)-28(e)-333(of)]TJ/F11 9.9626 Tf 220.756 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ +/F8 9.9626 Tf 61.519 0 Td [(the)-333(op)-28(eration)-333(is)-334(with)-333(left)-333(scaling)]TJ 0 g 0 G -/F27 9.9626 Tf -251.356 -19.659 Td [(data)]TJ +/F27 9.9626 Tf -61.519 -16.302 Td [(unitd)-383(=)-384('R')]TJ 0 g 0 G -/F8 9.9626 Tf 26.94 0 Td [(index)-333(list)-334(selector.)]TJ -2.034 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(Sp)-28(eci\014ed)-222(as:)-389(an)-222(in)28(teger.)-408(V)84(alues:)]TJ/F30 9.9626 Tf 136.48 0 Td [(psb_comm_halo_)]TJ/F8 9.9626 Tf 73.224 0 Td [(,)]TJ/F30 9.9626 Tf 2.768 0 Td [(psb_comm_mov_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)]TJ/F30 9.9626 Tf 5.203 0 Td [(psb_comm_ext_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)]TJ -353.663 -11.955 Td [(default:)]TJ/F30 9.9626 Tf 39.089 0 Td [(psb_comm_halo_)]TJ/F8 9.9626 Tf 73.225 0 Td [(.)-705(Cho)-27(ose)-1(s)-420(the)-420(index)-420(list)-420(on)-420(whic)28(h)-420(to)-420(base)-420(the)]TJ -112.314 -11.955 Td [(data)-333(exc)27(hange.)]TJ +/F8 9.9626 Tf 63.221 0 Td [(the)-333(op)-28(eration)-333(is)-334(with)-333(righ)28(t)-333(s)-1(calin)1(g.)]TJ 0 g 0 G - 141.968 -29.888 Td [(54)]TJ + 78.747 -29.888 Td [(51)]TJ 0 g 0 G ET endstream endobj -1215 0 obj +1218 0 obj << -/Length 3199 +/Length 4678 >> stream 0 g 0 G 0 g 0 G -0 g 0 G BT -/F27 9.9626 Tf 99.895 706.129 Td [(On)-383(Return)]TJ +/F8 9.9626 Tf 175.611 706.129 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(unitd)]TJ/F8 9.9626 Tf 26.666 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(U)]TJ/F8 9.9626 Tf -76.618 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(c)28(haracter)-334(v)56(ariable.)]TJ 0 g 0 G +/F27 9.9626 Tf -24.906 -19.925 Td [(c)32(hoice)]TJ 0 g 0 G - 0 -19.925 Td [(x)]TJ +/F8 9.9626 Tf 35.374 0 Td [(sp)-28(eci\014es)-333(the)-334(up)-27(date)-334(of)-333(o)28(v)28(erlap)-334(elemen)28(ts)-333(to)-334(b)-27(e)-334(p)-28(erf)1(orme)-1(d)-333(on)-333(exit:)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -5.486 -19.925 Td [(psb_none_)]TJ +0 g 0 G +0 g 0 G + 0 -15.941 Td [(psb_sum_)]TJ +0 g 0 G +0 g 0 G + 0 -15.94 Td [(psb_avg_)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(global)-333(dense)-334(result)-333(matrix)]TJ/F11 9.9626 Tf 116.674 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -108.489 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Returned)-271(as:)-414(a)-271(rank)-271(one)-271(or)-272(t)28(w)28(o)-271(arra)28(y)-272(con)28(taining)-271(n)28(um)28(b)-28(ers)-271(of)-272(t)28(yp)-28(e)-271(sp)-28(eci\014ed)]TJ 0 -11.955 Td [(in)-333(T)83(able)]TJ +0 g 0 G + 0 -15.94 Td [(psb_square_root_)]TJ/F8 9.9626 Tf -4.982 -19.925 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Default:)]TJ/F30 9.9626 Tf 39.436 0 Td [(psb_avg_)]TJ/F8 9.9626 Tf -39.436 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -19.925 Td [(diag)]TJ +0 g 0 G +/F8 9.9626 Tf 25.826 0 Td [(the)-333(diagonal)-334(scaling)-333(matrix.)]TJ -0.92 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(diag)]TJ/F8 9.9626 Tf 18.993 0 Td [(\0501\051)-278(=)-278(1\050)]TJ/F11 9.9626 Tf 34.869 0 Td [(noscal)-20(ing)]TJ/F8 9.9626 Tf 42.747 0 Td [(\051)]TJ -136.045 -11.955 Td [(Sp)-28(eci\014ed)-382(as:)-543(a)-382(rank)-383(on)1(e)-383(arra)28(y)-382(c)-1(on)28(taining)-382(n)28(um)28(b)-28(ers)-383(of)-382(the)-382(t)27(yp)-27(e)-383(indicated)]TJ 0 -11.955 Td [(in)-333(T)83(able)]TJ 0 0 1 rg 0 0 1 RG - [-333(14)]TJ + [-333(13)]TJ 0 g 0 G [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.926 Td [(info)]TJ +/F27 9.9626 Tf -24.906 -19.926 Td [(w)32(ork)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(result)-333(submatrix)]TJ/F11 9.9626 Tf 162.364 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -166.457 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue)-334(that)-333(con)28(tains)-333(an)-334(error)-333(co)-28(de.)]TJ +/F8 9.9626 Tf 29.431 0 Td [(a)-333(w)27(ork)-333(arra)28(y)83(.)]TJ -4.525 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-377(as:)-531(a)-377(rank)-377(on)1(e)-377(arra)28(y)-377(of)-377(the)-377(same)-377(t)28(yp)-28(e)-377(of)]TJ/F11 9.9626 Tf 225.953 0 Td [(x)]TJ/F8 9.9626 Tf 9.448 0 Td [(with)-377(the)-377(T)84(AR)28(G)-1(E)1(T)]TJ -235.401 -11.955 Td [(attribute.)]TJ 0 g 0 G +/F27 9.9626 Tf -24.906 -19.926 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G -ET -1 0 0 1 159.702 337.279 cm -q -.45 0 0 .45 0 0 cm -q -1 0 0 1 0 0 cm -/Im3 Do -Q -Q + 0 -19.925 Td [(y)]TJ 0 g 0 G -1 0 0 1 -159.702 -337.279 cm -BT -/F8 9.9626 Tf 189.268 305.398 Td [(Figure)-333(7:)-445(Sample)-333(discretization)-333(mes)-1(h)1(.)]TJ +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.118 0 Td [(y)]TJ/F8 9.9626 Tf 5.241 0 Td [(.)]TJ -167.481 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-474(as:)-727(an)-475(arra)28(y)-475(of)-474(rank)-475(one)-474(or)-475(t)28(w)28(o)-475(con)28(taining)-474(n)27(um)28(b)-28(ers)-474(of)-475(t)28(yp)-28(e)]TJ 0 -11.955 Td [(sp)-28(eci\014ed)-333(in)-333(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-333(13)]TJ 0 g 0 G + [(.)]TJ 0 g 0 G -/F16 11.9552 Tf -89.373 -23.91 Td [(Usage)-381(Example)]TJ/F8 9.9626 Tf 93.981 0 Td [(Consider)-338(the)-339(discretization)-338(mesh)-339(depicted)-338(in)-338(\014g.)]TJ -0 0 1 rg 0 0 1 RG - [-339(7)]TJ +/F27 9.9626 Tf -24.906 -19.925 Td [(info)]TJ 0 g 0 G - [(,)-339(parti-)]TJ -93.981 -11.955 Td [(tioned)-334(among)-334(t)27(w)28(o)-334(pro)-28(cesses)-334(as)-335(sho)28(wn)-334(b)28(y)-334(the)-335(dashed)-334(line;)-334(the)-335(data)-334(distribution)]TJ 0 -11.955 Td [(is)-422(suc)28(h)-422(that)-422(eac)28(h)-422(pro)-28(cess)-422(will)-421(o)27(wn)-422(32)-421(en)27(tries)-422(in)-421(the)-422(index)-422(space,)-444(with)-422(a)-422(halo)]TJ 0 -11.956 Td [(made)-340(of)-341(8)-340(en)28(tries)-341(placed)-340(at)-340(lo)-28(cal)-341(ind)1(ice)-1(s)-340(33)-340(through)-341(40.)-465(If)-340(pro)-28(cess)-341(0)-340(assigns)-340(an)]TJ 0 -11.955 Td [(initial)-423(v)55(alue)-423(of)-424(1)-423(to)-424(its)-423(en)28(tries)-424(in)-423(the)]TJ/F11 9.9626 Tf 169.006 0 Td [(x)]TJ/F8 9.9626 Tf 9.913 0 Td [(v)28(ector,)-446(and)-424(pr)1(o)-28(cess)-424(1)-423(assigns)-424(a)-423(v)55(alue)]TJ -178.919 -11.955 Td [(of)-349(2,)-353(then)-349(after)-349(a)-349(call)-349(to)]TJ/F30 9.9626 Tf 108.539 0 Td [(psb_halo)]TJ/F8 9.9626 Tf 45.32 0 Td [(the)-349(con)28(ten)27(ts)-349(of)-349(the)-349(lo)-27(c)-1(al)-349(v)28(ectors)-349(will)-349(b)-28(e)-349(the)]TJ -153.859 -11.955 Td [(follo)28(wing:)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(t)1(e)-1(d)1(.)]TJ 0 g 0 G - 166.875 -119.319 Td [(55)]TJ + 141.968 -73.723 Td [(52)]TJ 0 g 0 G ET -endstream -endobj -1211 0 obj -<< -/Type /XObject -/Subtype /Form -/FormType 1 -/PTEX.FileName (./figures/try8x8.pdf) -/PTEX.PageNumber 1 -/PTEX.InfoDict 1219 0 R -/BBox [0 0 498 439] -/Resources << -/ProcSet [ /PDF /Text ] -/ExtGState << -/R7 1220 0 R ->>/Font << /R8 1221 0 R/R10 1222 0 R>> ->> -/Length 3349 -/Filter /FlateDecode ->> -stream -x]$~tkXtjY}-qWWfDFr$ɬo1d%gro}=1s<h^ٽ}cVz_=>⩽ǎ'!w ;\)nBBZ!-$5=OztRZHLk/DX=&cZ  b!r+@x 1d-G5G||7|+_@dn@-Edk ИD-^ {Ldkc"{ˑ=&q@@>Cq)YD>E3 [@>E3iyaeMx f-Z-8Z=e9M>yݜF@l#mH?Kihy1ҎFb+ԑ |c3F9F#7F##ƌcH1!̥#gƈ1H=cę9>1RD9󍹍+-fs3Gnf3F9F#Ƭ"cC+?ߘlq0cĘcĘ9r3k1b1b1fsX(,m;V(7P?#z_q"mw`z|ÚwM,f~F~:Z?kFE5, ]`͌f c/4k4RU|$3.vsohSaAB~h~ǎFhִz~ d2-Eb%4kEGkmh}tE4n5M|=aB;hcb(4k:@wE/}3^<1satε۳>I`A&GR0wIؿOQu}N5h=u |z|OcdgXy۶ -;,_0 7k3M༿Dz,ٷqž<|d8lͺM༿Dzp?,pw SpeV.<cB`jg%cp0>x|$8,vf_NFp_"=Ve/,Wn`\mqeqς0H CH&3xp-,[&d.fe1,j07Ʃؕ@!Lqu a\FT7 fJݎ+M/޷"wZh!A?C/A~iY 1 <qVƢ4",YIsCk1#0B3 -U1\o{Wl}J뭴\Z!Ybnج_O;'7wӛs[i"]|_O'7wS"VZ .-W9p=YV<檶VZ .'6]/ʜֆp.yI|t=*:煮>?6T5|t1oS`$>6׻Ei9P+j#,7:煮N}0 qև[̓I|ONGdJ0|'aem,J#g\OMzFSl M}vp=U_^KW_FClpfx+M;V\﵇%%h1v7H>o'j۴c^Ly_RehxfyvI|6X9/p=YI剢5b?8p=vI|6Xq"jxT(Z!^_FCa7M;b$K_?9-3cR]bf!} 6mdeזՋon&t17T7[*fBKx Z]-rSkCyԌN.x'vWU.t+:煮>P]GCyMU0ȟz܊p -6ɖOWbzSE 0ˮΨxܳ>PU|h>^yԎX<Af\dy׎X<v4U3ڱz?Tjm~/[}:~<ωק/ߟvvݾkeo]{??~Cޟ#aYaX)'Wk3{ο*{ -endstream -endobj -1225 0 obj -<< -/Filter /FlateDecode -/Subtype /Type1C -/Length 13073 ->> -stream -xwxW?laό rG5hB'ZBL1`pø˶$KeK%Yr-˽w L% $$$m{Ȗ<<~4ss>s -o%!)&c攤}7#-VyR/<1cNc~G8fA>~<ެ5onݼ &.II'KO:mh4&#!.yIV̡Ԥď/<~sL\}Dsݧ<*wjM}~___;bd,`|< -) 'G;?̷с'7ɏ=, c|?1;nkc]4vƍ-p+ -|ApQg ͿؿĿɿӿI0`I@x2 0$TՀ d_ |#p]`Z`f5.b? ~򠸠 ڠ栎A烾 67P('|S8[ppp0Gh -&aGxE ! O^*8|=q?wʇRSsJjOTUBPT'uI=L&%"E0KDSEDEDEE[D"HdEuI% m}WE#!CD!lĐi!C, Y1$2$>Db ) q4t9r!Ð!C~- -S+F~*hb8PoJ)R2dV8ܪ&\YR)z%-V p;qFߦldz3n'-ڵVZX箷mF;k(5:'[2 4i<o ?3[pP ?ϦP8^AQ:̮4 AF%ɖGkgN'vuLB@Q8t{`;'Pp',\8.0O5 -C -bc}{C}¡F΁3bt񪝻O[w -v2RcpmIjk4Ϸ@wؗ/:/>ڱ##*z#Z<{)2mbи߀A0gvN)' £V.<x8M9sc_À%dM$ p`iɩnp}E}*]E|%<$v*'PN¢݇kV0y,!o2LAXpTE&¸1/wg@7jKvYr7%Ptw⣹}im`̬4j -M|B_k6u.$.a>H Z8 /흴3k_ٝ`B(HG4f[Jm{/ e{ ֓]qH'1e_LZ٭ -rĀifeŦruɈah~F/%-&O-yn-7>m|f]5 tySs9Pa:bϝn>y9rc1$bLNg3-%%"AۛK(U3ya1!9b<ᵈ|yzaK#_ޛBJ|b{ʇV>p$x Ka]hc*IfTYt|JQJ у|pz (E g1ǣݨ.$v8O$:@IU*+X0W"ђ8%ף{MNe'!F0K?y ӾwO>Y췋2N{F?Qp [`8&-h3& oysø߈Adl3JR@y{HwE҅ĽjU!wߚ[a8GS#U\cx@?7Rgkf2.'"B>*=K=Ŝ# D6Z55A‡iȪbJU.%Z5 ' 7K 9#kziΒ?JVP@Q*ldžΟ:5%P=Iqq1m}m,`6ˍ}ap-ǣ VEo) -sh,:8?_fdJX;&mm-0T09^1`,/r"g6Qh>N߬ K*rSe.͍`G㶢y|?S-vVpv3ՠ5RU_c9~ K{]5([OSS _ erG-S?fV( -Cs]e tFqM3ߝ+U^WqzE";ՙh5[>#!-&%."W;'3P7`°$W@"A YhDM}].NTv.FC?ӠЋê}lNcnšz~mky1giE{:I^R_HÉkwNy&PPrX_ -;ӸFd4L퓋=w%1l(/Ϸbgz '}`g(ď w -GCv nJH{/p#'n2#FBgE*iuJVeYtb<5Sz6\B>nP8YjقL$B 9R\*g*]8(|Wyjܳ .=IMG+Ih ifqZPχ=72Ǒn$ 3D>bDFϚ$ؤAWveY BoI[a+.J5,JtƤ!Y ̀'5qCPZZd+4rwsÑX"XJEѵaDgH̃\q{O?߾Y#W+wk`Um-OƱ* c8n8G$蠟-\T#oiutXX]憚tcmslbڙqd,$#$ح@AK25,*YYk|,e[e9D?c%TbZZbbsZgGssggZ!?Rö6Z[/Pؒ8Q,_40|b>?G} Spk\ojXZM|8;X 2 `a+^3xSD.Bj= ?5xXVLZpjU!A4>:DWEC ;vQI8Q$p8A$Тz<8`k'hGhvnsK)D㐆+!μ|.*4 -Wb]r$H,kV:SSyLJgˣ9YKhGMCDduRW3Mrl]Kɒb2IYA{$؟_Yg՚909R+y:b>MZ -m~ޙ>y&nڙel}4+*}&|$z#( -fr1.wrl8 ;h+(EvDb7]FqCf(nH#"Kn)(ͨ5Xi{T{'Z/:dWY1칛Yt}džO\E~)h@)ʣ4Elyy!{ ȯŀj R%ߐ I5h2Ujdb@͗T;U̎CҦeiJZf(3<+TJJe^ljmsV72]qlRt^n<%H<B.֞憓Ȃg?"!pQ kp=e , O)1ŵYׁej{h4#܁FZ$rso;#V$dr&e;yf( $AJHP/`䵛UE,q. J$Z5gŞ8voua ~rk22reఄ pR|}R)%rv7BM7'&Q#qbw@?{0@=7HQgHۮwQk:!ym' - F)[+ncіG>?)NCi -!:+V`OLۣ߰L@'LG?wze;HhGFxpv(Hu"(r3(OI.Iw8&(|f|N_CZO%R -;ʪaN{0<8\|Q_ei۶̓ X/2R PQMyTPk?9nWHBՂƸ߮/L1/)%9limo#SYTLZ@b[N,E@wQu`_v+j_1p};DN่Ūq||-ogRiJ2pVCqbB1|A9v8__n{CByCw8}ǃ|+͹yn@H(,^?'AQ4ō}[5 -xⒹg7z±⏮gDŽt0̡yd=Q"G3:֪^ɜWaVAA`)h{aqm_鋂O^8۠tf'1ǒW~Z=~a|/c\@y5|$I5@p }| <3 k<8]M? p .<<o;*£߮`-2v]w>?H;Y5߇LشU3 @1}$$s*7,u/|IxeLb2QN=9Zn x=`g}8 [Edkcֲ-p>pZ3E꫓KP u`wvlu]Gi-=w<[9O15V^0$_J5e`G[ \-㥗_BSW&?"8ooqQQ䃺ÌKq//~bZ9k{9~ko~*b8g*DLHpg.9z,f!hb^ϩ|FD|+uͬL˽`f^㏰G_h>ڲ/'.4ZFu!pfOK5=NJᾩ%Q_CA1{ϜoL8G=az<ê'6'>_Q>ld9:P`F+b*9h/JN°VZ` TUme0 -'+d,kj3fY:f,O5>Gx8,M;77ڷc~~R?E~Ncq|4._⅄& -¿0z?运D6|J `&X*1pCY}#EDBCƅzȄ^sGJ@6G -]"H]sh!tWTVީ.wOJ>&zeģ?M-ly` UYyg||[-eєCf8:0^^WDdpW-]VaUh : XE=M%NWl322 Fr9 - zԊ8Z7y yodVޯ4\ëxN~oHyB t1wfBO\>GNw]6̨dV_AO(50RYl+KKѓ-9ÃlZFV:0,+SgflO;+`Ϗr_\deUm5gV]=-`;[:خVg)qA 툘v?ԝʍ۴¦onj(ufm{rkfER5S__{]?2% u8q87(x|'rQ`^GRYop oN2'^oE_8%gۓӚe:ynɱ3*Esa+ 6oG_,CW\'ų ȕxgu~NQWeFm%Lrڏ'Vͅ5yđ1"di;cz!&]%SѺ|o.[s ,`G[γpgbegyY% dJ&sv*fr\.GM+-6%[k#3Жuu1S(1 8GI [xelzm/o.:pLtԮI_eӖzK()[0%0a -SXEJ°(_'%UU{PH?xl蔌R_1K yTjYD\fzO!۟VjbؒL,Ru kGv\4sOʊybD= }eZj[/aױi$hw@Ray!F( C dѪ:Rb/ZbUYgGjJsN2fGN5Y5]Y})Kvqqlxf*\CXJMt aXvnm\+g%|?RMH=1zgw!MɭI*0D?E\*5328y Sz` 9񵖼2м#'6o",0Wtg*I#[Uu>X=. -4r5Д)d\۫+H쳦; 2g1M ˵kPN |*G~PV-E5b_#>6f;,\;/[|o0W8|I59);HJOOLnJohnlHkNbvV^yFނ_8a,g؇ @|Phb̥&B3$p\Uo`D9_Cn$zQ)gBN;n[F]bTF_gj,֕6uu zWmz^-R0ƢCIiZ]6xr6ls7ĽڴT,.ˤ -g$$_N—zDUVŽqiɺ⫳LDlIc׎ޢ6.}  +Q{Pݫ+çh4 -]{b/C%PZ ?\b@q=U3B>6{cM|&}ZnStBl1^e:!!G"eFYɧ|>DYq.z̵bސ+`tΨlJcQ;ZZ*a5(\QAԕiBZâhgDZ S "ÔF x)2 C)Tk ',&LuMpQ!Δ&meh&OJ?+ᔬOF<З͋ɼyќRnLJ溿=vyXK62bKvlOH-p3xj-[X-r# N"`>ސvm!;OU&2g˙ځ@ 82ē㤶Ə0x}n}v3"ī 䄥([%QG^v$0,ld+(7p?ǏO6-c.°4?oOxxCۯ¯"Q/,QWa4;HFbmC6ddY- KRS^7`^5&=+5*DkͣSI}=-lc!-we2Sh$W/W0sQ,O⺊#A;ح/.>$a@Fj{d.&;.?@wpj~~-aHڔYQt9BOsk͑~񅸳;ƽmoӻQRSÕnPl?[cE zc;mk'TfE9,`Vk&[:"RMGRzW+*ԟz~Vn¼e:XU\E -GP2}Z\*c\o06dY^<6NMZj" "\ث7$[9*ZPpc4SU@hW6A"PI?ْzY6IJ7J|oOPCzkyAK) l)Np,z+a+cV;|# r &%JVĬdQaj Nxsg ޜqDJ)jJ ,~V n&ڕmFA&>:(_trd?JSMZGSFfJS &]>W@փOJ x֏j< ʚGvn޼ ( &i:=+A|3+m(zФ.3iPvAs[_˞ S"$_"A7>h9L:5xd1 fm&}Ʃ2WKKe.iL.UTMs̀m6W ™=x3_xޢ0AH\(6Ψ6FIxELU6T^ΩSc*PZzVoY2ߜOgd5(:|pљZѐÂTR%]G1X*0ph"(*lۿXG~Aygҳh @ gPPu=,Iy,P=G޴<ǧ{H!A -= -B]9n6Ym1,PK8K;o76OCӿJ~ݑ&nkό=8'?U\gAK|cK\CA" -\mIU Vi[)Huܪb'aE5q9ӽ%ݕ}[! W~`dw U-mOY#d'@5t;,<-זQO8ykP,nTd+_1yoI*!Q070 8JMv(R*s/Ϧv&Rp!HHFɃ]W$g]Q y%Nԭ UOC\un_~C *%4vܢ%‰كl0^2F~ 996=/ `/v pć0e4:G*,-%| 4Ttuu$5ۇ+J\fo[qC +E'l>h,@[hZBAMr eJ}xsi@B`_)y`mqGz۽bM| tZ) ŽuNcpMSWo3r#]a5Ϳ+Wy{?q*>;^Z9 yƇŒp'\h"ղkpxتTR)oǤp!UK͝Q,K -endstream -endobj -1226 0 obj -<< -/Filter /FlateDecode -/Subtype /Type1C -/Length 11578 ->> -stream -xzwxT/C؅IfF&X* -dLI&d&I2BHB Б*"ǂ~krV< Ͻ̓{wWwI&MqxØtttt4I*͑vJ9Nv9.s\x11ɱƱG:N38-rZ:NNNeN>!N8}r,u~Yty^gogssssMϝs ¹個K%%%եĥe.w\|Df/s͒-mԲYTfʮnޗ}"RDW?TTW7˽Apy<^"7ȫ->o?fv1clj465El9[625c"{'>wKNYER}Џ C7#i׹ "̦b3|E&!/M20,+=? s6Th8<p*NRpXAb8AԒG]5#W@V1 6ZX*|@D&<4?|!%HtP -b˛ Buc*+`ha49ȌVU&=A(+-B0h)((=_?Gg%U!\zFI!h E[)P<rAhh2u= N=UV֞Gn<Mvg(ZeBr@F6 u >3D'_0#m4՛co1336Ӣo|KďdW+jˊ[ TTsvAV8f&33A4%~ pN,ҍ<$ {yˎ[=~B~aQ=N'DW-dcyQQ)WX)SFR۸7r`)qS[SjiiNk ^40B3'i_L_+B+J}n98.]c+Y"ɮW!QC;=L-uӓr**%@XЗ*So -PkKuhx6}mآ"}=k[_HVOZ"?X:-^N9MawU -(l.*)Js3ijݙϡ}[OhĪXS=>R 7m0u2x(5.7x`f -= -M f| 4:G%čњ"0=/GqPÝj6^|f 1Y  ś;2{ss8sK2~yx^U*XPz?APg:HSm3x8߭nȠu%\Fa @ez:o8rl3|DKK(xk cٵ9tAn~V"--!5U@r$'Ѯhꄾ:7Љ0SGs4$&wHAԩR2)Yz!jTjv~E`mQ< -SyEPjB1j#8mIT=- ?)9!.,)Ca^A>U=7i - xk\_O -Ou/1I`<O`O('[[O ߨ6ѰWwyDy]tJ~a|Ӯ%a(| -C"tFI""od'iWd>&SEq෺7+^P/ gB.Mŀ1~weHAH,"+}% -\ېZ:_RhV"*;^WXk#DE6$n0% o`z+(c݀Swѫ9yE)ƚҼrо}T`leib=BgznzšIٯO.ZAmSIog\~ʜp&/VSYq!N|K|G᧊RjRLqBXsFAx>+{a/դV -rxtc2Ful]$B[{y -Gdo z_Ag!%6bz.zΓ87QV >dƜL. 6s]zD 125V˵m"°~6HS {GHx:%<8+۲k4\ ?O - ~n\ef -YL4"G^~U^i#UuH%<W'1Y4US8]ZuFsK}~y.*n8r&7=\f29mVQqd>ǢDR1h/K`v`Α}_`A߲Qmb}<;;;:Ei!` KQ}Ikmv%zW -{X!*X^1Ǝ?1L&8+@#(xt6U'M(V;(F漮/4i)Z9#62 sRh45U4r]08ᡞ!pGx'r;P?/Ql5 0Q)&CGj{ߛ4(nzMQ) -4vE`K.,bmspFjMFU]o[#h֗dF)Eʠ&ڀ:x(OVo9*ԟ(鹪^b\`Ʊe -|p ?25,)ͭO񅍌hiiijjiiABz qtwi`?3% 뛹J@' - i:~B,)8'@y>'"*p1QVkS-BҖ+4 S"H0 ՝ܩ(/-S3NiDtQ]4I42&ǁV*/ϱI@Ep)8汣 a@ 6-El%;!ARyyZ _d/ -݈}:kx ݢγ\_Shǃ$R>upB| -(i|էzU I1m+(,,,((/.~Rb(+-(wx7<;lI2,+gO79rM[n.NmєWlR5n}b1L\ ?!WkTUHQЛP::y Sӧ~,f01Ig s H L:5p^jO/n}}}_8Lr f99R>vw;K'II*Z^F*͕JWwHpwtr|U}3O;sxs_^rdp:4tOӿ9s^fg/`XTR&=?tхp2ez.]]]]]Z]κuw-fȞ=/[#-E2dYZ 땝ݐ#'J?#V%+u=C Z&ϒeZyM%ߒ$$^>Nb3Lv}]ƾbAl沥l-{gϰ٫m=dWu닮]_wuWo`XWkkkEkc{,I?n{sj9[uʼn '2:rҰ,i8 9j!\4Ӆ铳Onײ>,7\bkyHu<4<|h>ހ>o"䇎 -F,` Hé"d҈\}6YR+*H1G;+5BzYnQdVy!:-TMI="R;s+|hvtKEL] !쭓Z]qt@au*,0 qZ+ wZ(G?V56tOIc[B򲻳ٷO0]&#@Dl .pR+iaikƲrCWR] ȁ -ˏ.U ApٽwbDSR|Y4Zӑ"J2(b[: u:783G*{BF#^_OnKx*\ 'רCChcp;m:kD~n*vnݓS7d*} -l3Y]\>e'yŌ<M8JPbN> єhʏ>b )ES%4;#+k,3{2dp֗豳fKx]\w<{^yVp~}o~Ux‡o,~Cߏp?\o>-B^zZM;Vxm!ՇMbilAJ?{ё Iуe/ЍpxN jk+yz*2m؇h%附IW2NZ:q~qk"aryEݙZA=h@GIi\No溛[{:RFm:*~DSS&:6iޙ8p0`L -(:8F5 T:FgxU: ݆q?i -H/ ,"tETBRËt2ژYBe֟Egtְ`?t5Tbzsi~eILg?CZLle#,J; t5^E+, -QU_;8Vp3F,^E~SfGϢnS?,x]ۆ,BlUNș\9uFwz<ҹ'UKBo" ݢ<4op*CH~S"\lGh_, _Oh#*7fxh^Cm -Z;Uő5{`A~.L6 55-B RW9qm;4 _¶h -s|h S &+Qͺ+B)(}@Ý '>R@zmz]NvUq]ߑCt"[?bj+:uxISQ1::8sƖKD*MQ`@3<pMֶ5@kh&ԙG=[" N/ -}JU'3Ss҄T7kTe[ӑu rB$q}"`_)d\xAeVUs{֮b|us8 ###G$:]yr(J]CӽVp@>jYhtQ"$ - ű - q𙞓gl{SK$S'N#h!| ݧ#kh-V`xXNr tEƶQ`|́1!q]Yb_A_#<s=ZV (Ĵ(CyVh:b7GtI?\c@@`i{jeqBR=H@G -m_&K - yn߇Ē1"@[EbK9Z{Y?j&:hZf% S5ݡ҉Pݡt]&c}eMg/pHBד'ugD>&FW0Q2z=KWL=Ksn߾mجKTW-WtG+D`s21;{x@^(q?HC_j;|BO:6# r{ByGq.6 Ck -ʄlGUWZmL:`"2?5.,_2:dzj̸<,Vz;m\ҋ +5@;L p63I+LK| y`3XC[*?zmĹYy,Aq}GESl(cx[3a_b)q!vSSPP?GD)D٥o)pCJ# 8x!A?ޜ4oJs[BxLt]U p6|ɧmy&`a6 tpz'פ|Q 1oYb ZWDjcQea)r|?nMĆh9ZQ \VC{?[d y[K0yEGV+߄C|3H42ju#?K=cў p>db HnMl%:HQûz!F\DB,hjŔ5) h Pvܥ>' [ -e@<щP.8+r9|Lh02+cb=]s:ַߜ={\{x}sV='фna;/?d9qt]QfыC -,xC; N 2kܶjPңdֱC~ M\THr`AM} esXnS?=tG[G>w=0aK6nogm7ڣxo[|=:w≯gCXUtrf47jH2 )=-KO.({(BA")Jah y4/p6@S ;`#ёjn:0={aәx P]Q9:7gw:@I> stream 0 g 0 G 0 g 0 G +BT +/F16 11.9552 Tf 99.895 706.129 Td [(4.14)-1125(psb)]TJ +ET +q +1 0 0 1 158.311 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 162.346 706.129 Td [(gemlt)-375(|)-375(En)31(trywise)-375(Pro)-31(duct)]TJ/F8 9.9626 Tf -62.451 -19.771 Td [(This)-333(function)-334(computes)-333(the)-333(en)27(try)1(w)-1(i)1(s)-1(e)-333(pro)-28(duct)-333(b)-28(et)28(w)28(een)-334(t)28(w)28(o)-333(v)27(ectors)]TJ/F11 9.9626 Tf 296.14 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(y)]TJ -185.258 -23.403 Td [(dot)]TJ/F14 9.9626 Tf 16.379 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F11 9.9626 Tf 3.874 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F11 9.9626 Tf 3.874 0 Td [(:)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -201.676 -24.145 Td [(psb_gemlt\050x,)-525(y,)-525(desc_a,)-525(info\051)]TJ +0 g 0 G +0 g 0 G +0 g 0 G +ET +q +1 0 0 1 183.665 610.766 cm +[]0 d 0 J 0.398 w 0 0 m 176.173 0 l S +Q +BT +/F11 9.9626 Tf 189.642 602.198 Td [(dot)]TJ/F8 9.9626 Tf 13.612 0 Td [(,)]TJ/F11 9.9626 Tf 6.089 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(y)]TJ/F27 9.9626 Tf 88.927 0 Td [(F)96(unction)]TJ +ET +q +1 0 0 1 183.665 598.412 cm +[]0 d 0 J 0.398 w 0 0 m 176.173 0 l S +Q +BT +/F8 9.9626 Tf 189.642 589.845 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ +ET +q +1 0 0 1 325.649 590.044 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 328.638 589.845 Td [(gemlt)]TJ -138.996 -11.956 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ +ET +q +1 0 0 1 325.649 578.089 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 328.638 577.889 Td [(gemlt)]TJ -138.996 -11.955 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ +ET +q +1 0 0 1 325.649 566.134 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 328.638 565.934 Td [(gemlt)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ +ET +q +1 0 0 1 325.649 554.178 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 328.638 553.979 Td [(gemlt)]TJ +ET +q +1 0 0 1 183.665 550.193 cm +[]0 d 0 J 0.398 w 0 0 m 176.173 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 225.577 522.154 Td [(T)83(able)-333(14:)-444(Data)-334(t)28(yp)-28(es)]TJ +0 g 0 G +0 g 0 G +0 g 0 G +/F27 9.9626 Tf -125.682 -37.309 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -22.895 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -22.895 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(v)27(ector)]TJ/F11 9.9626 Tf 173.627 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -165.442 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-424(as:)-628(an)-424(ob)-56(ject)-424(of)-425(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 142.027 0 Td [(psb)]TJ +ET +q +1 0 0 1 283.148 391.433 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 286.286 391.234 Td [(T)]TJ +ET +q +1 0 0 1 292.144 391.433 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 295.282 391.234 Td [(vect)]TJ +ET +q +1 0 0 1 316.831 391.433 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 319.969 391.234 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 25.152 0 Td [(con)28(taining)-425(n)28(um)28(b)-28(ers)-425(of)]TJ -220.319 -11.955 Td [(t)28(yp)-28(e)-333(sp)-28(eci\014ed)-333(in)-334(T)84(able)]TJ +0 0 1 rg 0 0 1 RG + [-334(2)]TJ +0 g 0 G + [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -22.895 Td [(y)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(v)27(ector)]TJ/F11 9.9626 Tf 173.627 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -164.99 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-424(as:)-628(an)-424(ob)-56(ject)-424(of)-425(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 142.027 0 Td [(psb)]TJ +ET +q +1 0 0 1 283.148 308.762 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 286.286 308.563 Td [(T)]TJ +ET +q +1 0 0 1 292.144 308.762 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 295.282 308.563 Td [(vect)]TJ +ET +q +1 0 0 1 316.831 308.762 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 319.969 308.563 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 25.152 0 Td [(con)28(taining)-425(n)28(um)28(b)-28(ers)-425(of)]TJ -220.319 -11.955 Td [(t)28(yp)-28(e)-333(sp)-28(eci\014ed)-333(in)-334(T)84(able)]TJ +0 0 1 rg 0 0 1 RG + [-334(2)]TJ +0 g 0 G + [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -22.895 Td [(desc)]TJ +ET +q +1 0 0 1 121.81 273.912 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 125.247 273.713 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 135.658 0 Td [(psb)]TJ +ET +q +1 0 0 1 276.779 226.091 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 279.917 225.892 Td [(desc)]TJ +ET +q +1 0 0 1 301.466 226.091 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 304.604 225.892 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -225.631 -22.895 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G + 0 -22.896 Td [(y)]TJ 0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(result)-333(submatrix)]TJ/F11 9.9626 Tf 162.364 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -153.727 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-424(as:)-628(an)-424(ob)-56(ject)-424(of)-425(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 142.027 0 Td [(psb)]TJ +ET +q +1 0 0 1 283.148 132.48 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 286.286 132.281 Td [(T)]TJ +ET +q +1 0 0 1 292.144 132.48 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 295.282 132.281 Td [(vect)]TJ +ET +q +1 0 0 1 316.831 132.48 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q BT -/F46 8.9664 Tf 256.776 645.656 Td [(Pro)-28(cess)-343(0)-8224(Pro)-28(cess)-343(1)]TJ -33.967 -10.959 Td [(I)-1333(GLOB\050I\051)-1334(X)1(\050I\051)-4657(I)-1334(GL)1(OB\050I\051)-1334(X\050I\051)]TJ -1.282 -10.959 Td [(1)-4966(1)-1961(1.0)-4514(1)-4452(33)-1961(2.0)]TJ 0 -10.959 Td [(2)-4966(2)-1961(1.0)-4514(2)-4452(34)-1961(2.0)]TJ 0 -10.959 Td [(3)-4966(3)-1961(1.0)-4514(3)-4452(35)-1961(2.0)]TJ 0 -10.959 Td [(4)-4966(4)-1961(1.0)-4514(4)-4452(36)-1961(2.0)]TJ 0 -10.959 Td [(5)-4966(5)-1961(1.0)-4514(5)-4452(37)-1961(2.0)]TJ 0 -10.959 Td [(6)-4966(6)-1961(1.0)-4514(6)-4452(38)-1961(2.0)]TJ 0 -10.959 Td [(7)-4966(7)-1961(1.0)-4514(7)-4452(39)-1961(2.0)]TJ 0 -10.958 Td [(8)-4966(8)-1961(1.0)-4514(8)-4452(40)-1961(2.0)]TJ 0 -10.959 Td [(9)-4966(9)-1961(1.0)-4514(9)-4452(41)-1961(2.0)]TJ -4.607 -10.959 Td [(10)-4452(10)-1961(1.0)-4000(10)-4452(42)-1961(2.0)]TJ 0 -10.959 Td [(11)-4452(11)-1961(1.0)-4000(11)-4452(43)-1961(2.0)]TJ 0 -10.959 Td [(12)-4452(12)-1961(1.0)-4000(12)-4452(44)-1961(2.0)]TJ 0 -10.959 Td [(13)-4452(13)-1961(1.0)-4000(13)-4452(45)-1961(2.0)]TJ 0 -10.959 Td [(14)-4452(14)-1961(1.0)-4000(14)-4452(46)-1961(2.0)]TJ 0 -10.959 Td [(15)-4452(15)-1961(1.0)-4000(15)-4452(47)-1961(2.0)]TJ 0 -10.959 Td [(16)-4452(16)-1961(1.0)-4000(16)-4452(48)-1961(2.0)]TJ 0 -10.959 Td [(17)-4452(17)-1961(1.0)-4000(17)-4452(49)-1961(2.0)]TJ 0 -10.958 Td [(18)-4452(18)-1961(1.0)-4000(18)-4452(50)-1961(2.0)]TJ 0 -10.959 Td [(19)-4452(19)-1961(1.0)-4000(19)-4452(51)-1961(2.0)]TJ 0 -10.959 Td [(20)-4452(20)-1961(1.0)-4000(20)-4452(52)-1961(2.0)]TJ 0 -10.959 Td [(21)-4452(21)-1961(1.0)-4000(21)-4452(53)-1961(2.0)]TJ 0 -10.959 Td [(22)-4452(22)-1961(1.0)-4000(22)-4452(54)-1961(2.0)]TJ 0 -10.959 Td [(23)-4452(23)-1961(1.0)-4000(23)-4452(55)-1961(2.0)]TJ 0 -10.959 Td [(24)-4452(24)-1961(1.0)-4000(24)-4452(56)-1961(2.0)]TJ 0 -10.959 Td [(25)-4452(25)-1961(1.0)-4000(25)-4452(57)-1961(2.0)]TJ 0 -10.959 Td [(26)-4452(26)-1961(1.0)-4000(26)-4452(58)-1961(2.0)]TJ 0 -10.959 Td [(27)-4452(27)-1961(1.0)-4000(27)-4452(59)-1961(2.0)]TJ 0 -10.958 Td [(28)-4452(28)-1961(1.0)-4000(28)-4452(60)-1961(2.0)]TJ 0 -10.959 Td [(29)-4452(29)-1961(1.0)-4000(29)-4452(61)-1961(2.0)]TJ 0 -10.959 Td [(30)-4452(30)-1961(1.0)-4000(30)-4452(62)-1961(2.0)]TJ 0 -10.959 Td [(31)-4452(31)-1961(1.0)-4000(31)-4452(63)-1961(2.0)]TJ 0 -10.959 Td [(32)-4452(32)-1961(1.0)-4000(32)-4452(64)-1961(2.0)]TJ 0 -10.959 Td [(33)-4452(33)-1961(2.0)-4000(33)-4452(25)-1961(1.0)]TJ 0 -10.959 Td [(34)-4452(34)-1961(2.0)-4000(34)-4452(26)-1961(1.0)]TJ 0 -10.959 Td [(35)-4452(35)-1961(2.0)-4000(35)-4452(27)-1961(1.0)]TJ 0 -10.959 Td [(36)-4452(36)-1961(2.0)-4000(36)-4452(28)-1961(1.0)]TJ 0 -10.959 Td [(37)-4452(37)-1961(2.0)-4000(37)-4452(29)-1961(1.0)]TJ 0 -10.958 Td [(38)-4452(38)-1961(2.0)-4000(38)-4452(30)-1961(1.0)]TJ 0 -10.959 Td [(39)-4452(39)-1961(2.0)-4000(39)-4452(31)-1961(1.0)]TJ 0 -10.959 Td [(40)-4452(40)-1961(2.0)-4000(40)-4452(32)-1961(1.0)]TJ +/F30 9.9626 Tf 319.969 132.281 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 25.152 0 Td [(con)28(taining)-425(n)28(um)28(b)-28(ers)-425(of)]TJ -220.319 -11.955 Td [(the)-333(t)27(yp)-27(e)-334(indicated)-333(in)-333(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-333(14)]TJ 0 g 0 G + [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 100.659 -105.903 Td [(56)]TJ + 141.968 -29.888 Td [(53)]TJ 0 g 0 G ET endstream endobj -1122 0 obj +1125 0 obj << /Type /ObjStm /N 100 -/First 992 -/Length 12740 +/First 989 +/Length 12346 >> stream -1119 0 1120 59 1121 118 1112 177 1127 296 1123 453 1124 597 1125 742 1129 889 256 947 -1130 1004 1126 1063 1134 1207 1131 1355 1132 1500 1136 1647 260 1706 1137 1764 1133 1823 1141 1967 -1138 2115 1139 2260 1143 2407 264 2465 1145 2522 1140 2581 1152 2727 1146 2893 1147 3040 1148 3185 -1149 3329 1154 3476 268 3535 1155 3593 1156 3652 1157 3711 1158 3770 1151 3829 1167 3986 1150 4188 -1159 4335 1160 4478 1161 4624 1162 4771 1163 4922 1164 5073 1165 5223 1169 5368 1166 5426 1174 5532 -1171 5671 1176 5817 272 5876 1177 5934 1173 5993 1185 6164 1172 6357 1178 6505 1179 6649 1180 6796 -1181 6943 1182 7087 1183 7234 1187 7380 1184 7438 1191 7570 1188 7718 1189 7865 1193 8012 1190 8071 -1196 8177 1194 8316 1198 8463 276 8521 1195 8578 1204 8658 1199 8815 1200 8959 1201 9106 1206 9252 -280 9311 1207 9369 1208 9428 1209 9487 1210 9546 1203 9605 1214 9737 1219 9885 1220 10012 1221 10055 -1222 10262 1223 10500 1224 10776 1202 11012 1212 11159 1216 11306 1217 11364 1213 11423 1228 11571 1230 11689 -% 1119 0 obj +1123 0 248 58 1124 115 1120 174 1127 331 1129 449 1126 508 1134 588 1130 745 1131 889 +1132 1035 1136 1182 252 1240 1137 1297 1133 1356 1140 1501 1142 1619 1143 1678 1144 1737 1145 1796 +1146 1855 1147 1914 1148 1973 1139 2032 1153 2151 1149 2308 1150 2452 1151 2597 1155 2744 256 2802 +1156 2859 1152 2918 1160 3062 1157 3210 1158 3355 1162 3502 260 3561 1163 3619 1159 3678 1167 3822 +1164 3970 1165 4115 1169 4262 264 4320 1171 4377 1166 4436 1178 4582 1172 4748 1173 4895 1174 5040 +1175 5184 1180 5331 268 5390 1181 5448 1182 5507 1183 5566 1184 5625 1177 5684 1193 5841 1176 6043 +1185 6190 1186 6333 1187 6479 1188 6626 1189 6777 1190 6928 1191 7078 1195 7223 1192 7281 1200 7387 +1197 7526 1202 7672 272 7731 1203 7789 1199 7848 1211 8019 1198 8212 1204 8360 1205 8504 1206 8651 +1207 8798 1208 8942 1209 9089 1213 9235 1210 9293 1217 9425 1214 9573 1215 9720 1219 9867 1216 9926 +1228 10032 1220 10225 1221 10369 1222 10515 1223 10659 1224 10805 1225 10952 1226 11096 1230 11242 276 11300 +% 1123 0 obj << -/D [1113 0 R /XYZ 175.611 494.921 null] +/D [1121 0 R /XYZ 98.895 753.953 null] >> -% 1120 0 obj +% 248 0 obj << -/D [1113 0 R /XYZ 175.611 482.966 null] +/D [1121 0 R /XYZ 99.895 716.092 null] >> -% 1121 0 obj +% 1124 0 obj << -/D [1113 0 R /XYZ 175.611 471.011 null] +/D [1121 0 R /XYZ 267.641 432.072 null] >> -% 1112 0 obj +% 1120 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F11 770 0 R /F30 784 0 R /F16 570 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F7 811 0 R /F30 810 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> % 1127 0 obj @@ -12507,10 +12335,118 @@ stream /Contents 1128 0 R /Resources 1126 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1111 0 R -/Annots [ 1123 0 R 1124 0 R 1125 0 R ] +/Parent 1090 0 R >> -% 1123 0 obj +% 1129 0 obj +<< +/D [1127 0 R /XYZ 149.705 753.953 null] +>> +% 1126 0 obj +<< +/Font << /F27 584 0 R /F8 585 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1134 0 obj +<< +/Type /Page +/Contents 1135 0 R +/Resources 1133 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1138 0 R +/Annots [ 1130 0 R 1131 0 R 1132 0 R ] +>> +% 1130 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [368.549 316.653 444.603 327.778] +/A << /S /GoTo /D (vdata) >> +>> +% 1131 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [325.411 304.975 332.385 315.823] +/A << /S /GoTo /D (table.8) >> +>> +% 1132 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [259.464 234.201 326.522 245.325] +/A << /S /GoTo /D (descdata) >> +>> +% 1136 0 obj +<< +/D [1134 0 R /XYZ 98.895 753.953 null] +>> +% 252 0 obj +<< +/D [1134 0 R /XYZ 99.895 716.092 null] +>> +% 1137 0 obj +<< +/D [1134 0 R /XYZ 267.641 500.643 null] +>> +% 1133 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F27 584 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1140 0 obj +<< +/Type /Page +/Contents 1141 0 R +/Resources 1139 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1138 0 R +>> +% 1142 0 obj +<< +/D [1140 0 R /XYZ 149.705 753.953 null] +>> +% 1143 0 obj +<< +/D [1140 0 R /XYZ 150.705 564.659 null] +>> +% 1144 0 obj +<< +/D [1140 0 R /XYZ 150.705 504.939 null] +>> +% 1145 0 obj +<< +/D [1140 0 R /XYZ 175.611 506.876 null] +>> +% 1146 0 obj +<< +/D [1140 0 R /XYZ 175.611 494.921 null] +>> +% 1147 0 obj +<< +/D [1140 0 R /XYZ 175.611 482.966 null] +>> +% 1148 0 obj +<< +/D [1140 0 R /XYZ 175.611 471.011 null] +>> +% 1139 0 obj +<< +/Font << /F27 584 0 R /F8 585 0 R /F11 796 0 R /F30 810 0 R /F16 582 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1153 0 obj +<< +/Type /Page +/Contents 1154 0 R +/Resources 1152 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1138 0 R +/Annots [ 1149 0 R 1150 0 R 1151 0 R ] +>> +% 1149 0 obj << /Type /Annot /Subtype /Link @@ -12518,7 +12454,7 @@ stream /Rect [368.549 404.491 444.603 415.616] /A << /S /GoTo /D (vdata) >> >> -% 1124 0 obj +% 1150 0 obj << /Type /Annot /Subtype /Link @@ -12526,7 +12462,7 @@ stream /Rect [325.411 392.812 332.385 403.66] /A << /S /GoTo /D (table.9) >> >> -% 1125 0 obj +% 1151 0 obj << /Type /Annot /Subtype /Link @@ -12534,33 +12470,33 @@ stream /Rect [259.464 324.789 326.522 335.914] /A << /S /GoTo /D (descdata) >> >> -% 1129 0 obj +% 1155 0 obj << -/D [1127 0 R /XYZ 98.895 753.953 null] +/D [1153 0 R /XYZ 98.895 753.953 null] >> % 256 0 obj << -/D [1127 0 R /XYZ 99.895 720.077 null] +/D [1153 0 R /XYZ 99.895 716.092 null] >> -% 1130 0 obj +% 1156 0 obj << -/D [1127 0 R /XYZ 267.641 540.923 null] +/D [1153 0 R /XYZ 267.641 540.923 null] >> -% 1126 0 obj +% 1152 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F7 785 0 R /F30 784 0 R /F27 572 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F7 811 0 R /F30 810 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1134 0 obj +% 1160 0 obj << /Type /Page -/Contents 1135 0 R -/Resources 1133 0 R +/Contents 1161 0 R +/Resources 1159 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1111 0 R -/Annots [ 1131 0 R 1132 0 R ] +/Parent 1138 0 R +/Annots [ 1157 0 R 1158 0 R ] >> -% 1131 0 obj +% 1157 0 obj << /Type /Annot /Subtype /Link @@ -12568,7 +12504,7 @@ stream /Rect [310.273 342.722 387.792 353.847] /A << /S /GoTo /D (spdata) >> >> -% 1132 0 obj +% 1158 0 obj << /Type /Annot /Subtype /Link @@ -12576,33 +12512,33 @@ stream /Rect [310.273 274.976 377.331 286.101] /A << /S /GoTo /D (descdata) >> >> -% 1136 0 obj +% 1162 0 obj << -/D [1134 0 R /XYZ 149.705 753.953 null] +/D [1160 0 R /XYZ 149.705 753.953 null] >> % 260 0 obj << -/D [1134 0 R /XYZ 150.705 720.077 null] +/D [1160 0 R /XYZ 150.705 716.092 null] >> -% 1137 0 obj +% 1163 0 obj << -/D [1134 0 R /XYZ 320.941 513.305 null] +/D [1160 0 R /XYZ 320.941 513.305 null] >> -% 1133 0 obj +% 1159 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F7 785 0 R /F27 572 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F7 811 0 R /F27 584 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1141 0 obj +% 1167 0 obj << /Type /Page -/Contents 1142 0 R -/Resources 1140 0 R +/Contents 1168 0 R +/Resources 1166 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1111 0 R -/Annots [ 1138 0 R 1139 0 R ] +/Parent 1138 0 R +/Annots [ 1164 0 R 1165 0 R ] >> -% 1138 0 obj +% 1164 0 obj << /Type /Annot /Subtype /Link @@ -12610,7 +12546,7 @@ stream /Rect [259.464 342.722 336.983 353.847] /A << /S /GoTo /D (spdata) >> >> -% 1139 0 obj +% 1165 0 obj << /Type /Annot /Subtype /Link @@ -12618,49 +12554,49 @@ stream /Rect [259.464 274.976 326.522 286.101] /A << /S /GoTo /D (descdata) >> >> -% 1143 0 obj +% 1169 0 obj << -/D [1141 0 R /XYZ 98.895 753.953 null] +/D [1167 0 R /XYZ 98.895 753.953 null] >> % 264 0 obj << -/D [1141 0 R /XYZ 99.895 720.077 null] +/D [1167 0 R /XYZ 99.895 716.092 null] >> -% 1145 0 obj +% 1171 0 obj << -/D [1141 0 R /XYZ 270.132 513.305 null] +/D [1167 0 R /XYZ 270.132 513.305 null] >> -% 1140 0 obj +% 1166 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F13 1144 0 R /F27 572 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F13 1170 0 R /F27 584 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1152 0 obj +% 1178 0 obj << /Type /Page -/Contents 1153 0 R -/Resources 1151 0 R +/Contents 1179 0 R +/Resources 1177 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1111 0 R -/Annots [ 1146 0 R 1147 0 R 1148 0 R 1149 0 R ] +/Parent 1138 0 R +/Annots [ 1172 0 R 1173 0 R 1174 0 R 1175 0 R ] >> -% 1146 0 obj +% 1172 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [432.897 276.095 444.852 286.943] +/Rect [432.897 274.798 444.852 285.646] /A << /S /GoTo /D (table.12) >> >> -% 1147 0 obj +% 1173 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [310.273 208.422 387.792 219.547] +/Rect [310.273 207.773 387.792 218.898] /A << /S /GoTo /D (spdata) >> >> -% 1148 0 obj +% 1174 0 obj << /Type /Annot /Subtype /Link @@ -12668,7 +12604,7 @@ stream /Rect [419.358 141.026 495.412 152.151] /A << /S /GoTo /D (vdata) >> >> -% 1149 0 obj +% 1175 0 obj << /Type /Annot /Subtype /Link @@ -12676,45 +12612,45 @@ stream /Rect [376.818 129.347 388.773 140.196] /A << /S /GoTo /D (table.12) >> >> -% 1154 0 obj +% 1180 0 obj << -/D [1152 0 R /XYZ 149.705 753.953 null] +/D [1178 0 R /XYZ 149.705 753.953 null] >> % 268 0 obj << -/D [1152 0 R /XYZ 150.705 720.077 null] +/D [1178 0 R /XYZ 150.705 716.092 null] >> -% 1155 0 obj +% 1181 0 obj << -/D [1152 0 R /XYZ 290.613 675.784 null] +/D [1178 0 R /XYZ 290.613 661.837 null] >> -% 1156 0 obj +% 1182 0 obj << -/D [1152 0 R /XYZ 287.475 658.376 null] +/D [1178 0 R /XYZ 287.475 645.402 null] >> -% 1157 0 obj +% 1183 0 obj << -/D [1152 0 R /XYZ 286.835 640.968 null] +/D [1178 0 R /XYZ 286.835 628.966 null] >> -% 1158 0 obj +% 1184 0 obj << -/D [1152 0 R /XYZ 320.941 455.558 null] +/D [1178 0 R /XYZ 320.941 449.071 null] >> -% 1151 0 obj +% 1177 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F7 785 0 R /F27 572 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F7 811 0 R /F27 584 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1167 0 obj +% 1193 0 obj << -/Type /Page -/Contents 1168 0 R -/Resources 1166 0 R +/Type /Page +/Contents 1194 0 R +/Resources 1192 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1170 0 R -/Annots [ 1150 0 R 1159 0 R 1160 0 R 1161 0 R 1162 0 R 1163 0 R 1164 0 R 1165 0 R ] +/Parent 1196 0 R +/Annots [ 1176 0 R 1185 0 R 1186 0 R 1187 0 R 1188 0 R 1189 0 R 1190 0 R 1191 0 R ] >> -% 1150 0 obj +% 1176 0 obj << /Type /Annot /Subtype /Link @@ -12722,7 +12658,7 @@ stream /Rect [382.088 655.375 394.043 666.223] /A << /S /GoTo /D (table.12) >> >> -% 1159 0 obj +% 1185 0 obj << /Type /Annot /Subtype /Link @@ -12730,7 +12666,7 @@ stream /Rect [368.549 588.68 444.603 599.805] /A << /S /GoTo /D (vdata) >> >> -% 1160 0 obj +% 1186 0 obj << /Type /Annot /Subtype /Link @@ -12738,7 +12674,7 @@ stream /Rect [326.219 577.002 338.174 587.85] /A << /S /GoTo /D (table.12) >> >> -% 1161 0 obj +% 1187 0 obj << /Type /Annot /Subtype /Link @@ -12746,7 +12682,7 @@ stream /Rect [259.464 498.352 326.522 509.477] /A << /S /GoTo /D (descdata) >> >> -% 1162 0 obj +% 1188 0 obj << /Type /Annot /Subtype /Link @@ -12754,7 +12690,7 @@ stream /Rect [346.389 461.435 353.363 472.284] /A << /S /GoTo /D (equation.4.1) >> >> -% 1163 0 obj +% 1189 0 obj << /Type /Annot /Subtype /Link @@ -12762,7 +12698,7 @@ stream /Rect [345.393 446.823 352.367 457.672] /A << /S /GoTo /D (equation.4.2) >> >> -% 1164 0 obj +% 1190 0 obj << /Type /Annot /Subtype /Link @@ -12770,7 +12706,7 @@ stream /Rect [345.697 432.212 352.671 443.06] /A << /S /GoTo /D (equation.4.3) >> >> -% 1165 0 obj +% 1191 0 obj << /Type /Annot /Subtype /Link @@ -12778,25 +12714,25 @@ stream /Rect [203.009 190.452 214.964 201.3] /A << /S /GoTo /D (table.12) >> >> -% 1169 0 obj +% 1195 0 obj << -/D [1167 0 R /XYZ 98.895 753.953 null] +/D [1193 0 R /XYZ 98.895 753.953 null] >> -% 1166 0 obj +% 1192 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F11 770 0 R /F30 784 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F11 796 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1174 0 obj +% 1200 0 obj << /Type /Page -/Contents 1175 0 R -/Resources 1173 0 R +/Contents 1201 0 R +/Resources 1199 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1170 0 R -/Annots [ 1171 0 R ] +/Parent 1196 0 R +/Annots [ 1197 0 R ] >> -% 1171 0 obj +% 1197 0 obj << /Type /Annot /Subtype /Link @@ -12804,33 +12740,33 @@ stream /Rect [432.897 117.392 444.852 128.24] /A << /S /GoTo /D (table.13) >> >> -% 1176 0 obj +% 1202 0 obj << -/D [1174 0 R /XYZ 149.705 753.953 null] +/D [1200 0 R /XYZ 149.705 753.953 null] >> % 272 0 obj << -/D [1174 0 R /XYZ 150.705 720.077 null] +/D [1200 0 R /XYZ 150.705 716.092 null] >> -% 1177 0 obj +% 1203 0 obj << -/D [1174 0 R /XYZ 320.941 258.477 null] +/D [1200 0 R /XYZ 320.941 258.477 null] >> -% 1173 0 obj +% 1199 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F13 1144 0 R /F7 785 0 R /F10 786 0 R /F30 784 0 R /F27 572 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F13 1170 0 R /F7 811 0 R /F10 812 0 R /F30 810 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1185 0 obj +% 1211 0 obj << /Type /Page -/Contents 1186 0 R -/Resources 1184 0 R +/Contents 1212 0 R +/Resources 1210 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1170 0 R -/Annots [ 1172 0 R 1178 0 R 1179 0 R 1180 0 R 1181 0 R 1182 0 R 1183 0 R ] +/Parent 1196 0 R +/Annots [ 1198 0 R 1204 0 R 1205 0 R 1206 0 R 1207 0 R 1208 0 R 1209 0 R ] >> -% 1172 0 obj +% 1198 0 obj << /Type /Annot /Subtype /Link @@ -12838,7 +12774,7 @@ stream /Rect [307.672 655.375 314.646 666.223] /A << /S /GoTo /D (section.3) >> >> -% 1178 0 obj +% 1204 0 obj << /Type /Annot /Subtype /Link @@ -12846,7 +12782,7 @@ stream /Rect [368.549 586.627 444.603 597.752] /A << /S /GoTo /D (vdata) >> >> -% 1179 0 obj +% 1205 0 obj << /Type /Annot /Subtype /Link @@ -12854,7 +12790,7 @@ stream /Rect [326.008 574.949 337.963 585.797] /A << /S /GoTo /D (table.13) >> >> -% 1180 0 obj +% 1206 0 obj << /Type /Annot /Subtype /Link @@ -12862,7 +12798,7 @@ stream /Rect [382.088 494.523 394.043 505.372] /A << /S /GoTo /D (table.13) >> >> -% 1181 0 obj +% 1207 0 obj << /Type /Annot /Subtype /Link @@ -12870,7 +12806,7 @@ stream /Rect [368.549 425.776 444.603 436.901] /A << /S /GoTo /D (vdata) >> >> -% 1182 0 obj +% 1208 0 obj << /Type /Annot /Subtype /Link @@ -12878,7 +12814,7 @@ stream /Rect [326.219 414.098 338.174 424.946] /A << /S /GoTo /D (table.13) >> >> -% 1183 0 obj +% 1209 0 obj << /Type /Annot /Subtype /Link @@ -12886,25 +12822,25 @@ stream /Rect [259.464 333.395 326.522 344.52] /A << /S /GoTo /D (descdata) >> >> -% 1187 0 obj +% 1213 0 obj << -/D [1185 0 R /XYZ 98.895 753.953 null] +/D [1211 0 R /XYZ 98.895 753.953 null] >> -% 1184 0 obj +% 1210 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F30 784 0 R /F17 750 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F30 810 0 R /F17 776 0 R >> /ProcSet [ /PDF /Text ] >> -% 1191 0 obj +% 1217 0 obj << /Type /Page -/Contents 1192 0 R -/Resources 1190 0 R +/Contents 1218 0 R +/Resources 1216 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1170 0 R -/Annots [ 1188 0 R 1189 0 R ] +/Parent 1196 0 R +/Annots [ 1214 0 R 1215 0 R ] >> -% 1188 0 obj +% 1214 0 obj << /Type /Annot /Subtype /Link @@ -12912,7 +12848,7 @@ stream /Rect [213.636 410.238 225.591 419.149] /A << /S /GoTo /D (table.13) >> >> -% 1189 0 obj +% 1215 0 obj << /Type /Annot /Subtype /Link @@ -12920,626 +12856,843 @@ stream /Rect [253.818 228.974 265.774 239.822] /A << /S /GoTo /D (table.13) >> >> -% 1193 0 obj +% 1219 0 obj << -/D [1191 0 R /XYZ 149.705 753.953 null] +/D [1217 0 R /XYZ 149.705 753.953 null] >> -% 1190 0 obj +% 1216 0 obj << -/Font << /F8 573 0 R /F27 572 0 R /F11 770 0 R /F30 784 0 R >> +/Font << /F8 585 0 R /F27 584 0 R /F11 796 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1196 0 obj +% 1228 0 obj << /Type /Page -/Contents 1197 0 R -/Resources 1195 0 R +/Contents 1229 0 R +/Resources 1227 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1170 0 R -/Annots [ 1194 0 R ] +/Parent 1196 0 R +/Annots [ 1220 0 R 1221 0 R 1222 0 R 1223 0 R 1224 0 R 1225 0 R 1226 0 R ] >> -% 1194 0 obj +% 1220 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [299.536 657.464 306.51 668.312] -/A << /S /GoTo /D (section.6) >> ->> -% 1198 0 obj -<< -/D [1196 0 R /XYZ 98.895 753.953 null] ->> -% 276 0 obj -<< -/D [1196 0 R /XYZ 99.895 716.092 null] ->> -% 1195 0 obj -<< -/Font << /F16 570 0 R /F8 573 0 R >> -/ProcSet [ /PDF /Text ] +/Rect [265.833 388.024 341.887 399.149] +/A << /S /GoTo /D (vdata) >> >> -% 1204 0 obj +% 1221 0 obj << -/Type /Page -/Contents 1205 0 R -/Resources 1203 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1170 0 R -/Annots [ 1199 0 R 1200 0 R 1201 0 R ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [225.425 376.346 232.399 387.194] +/A << /S /GoTo /D (table.2) >> >> -% 1199 0 obj +% 1222 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [419.358 343.463 495.412 354.588] +/Rect [265.833 305.353 341.887 316.478] /A << /S /GoTo /D (vdata) >> >> -% 1200 0 obj +% 1223 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [376.221 331.785 388.176 342.633] -/A << /S /GoTo /D (table.14) >> +/Rect [225.425 293.674 232.399 304.523] +/A << /S /GoTo /D (table.2) >> >> -% 1201 0 obj +% 1224 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 264.029 412.588 275.154] +/Rect [259.464 222.682 326.522 233.807] /A << /S /GoTo /D (descdata) >> >> -% 1206 0 obj -<< -/D [1204 0 R /XYZ 149.705 753.953 null] ->> -% 280 0 obj -<< -/D [1204 0 R /XYZ 150.705 720.077 null] ->> -% 1207 0 obj -<< -/D [1204 0 R /XYZ 320.941 514.036 null] ->> -% 1208 0 obj -<< -/D [1204 0 R /XYZ 150.705 482.745 null] ->> -% 1209 0 obj -<< -/D [1204 0 R /XYZ 150.705 484.682 null] ->> -% 1210 0 obj -<< -/D [1204 0 R /XYZ 150.705 472.727 null] ->> -% 1203 0 obj -<< -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F27 572 0 R /F30 784 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 1214 0 obj -<< -/Type /Page -/Contents 1215 0 R -/Resources 1213 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1218 0 R -/Annots [ 1202 0 R 1212 0 R ] ->> -% 1219 0 obj -<< -/Producer (GPL Ghostscript 9.22) -/CreationDate (D:20180323100645Z00'00') -/ModDate (D:20180323100645Z00'00') ->> -% 1220 0 obj -<< -/Type /ExtGState -/OPM 1 ->> -% 1221 0 obj -<< -/BaseFont /XYUGDR+Times-Roman -/FontDescriptor 1223 0 R -/Type /Font -/FirstChar 48 -/LastChar 57 -/Widths [ 500 500 500 500 500 500 500 500 500 500] -/Encoding /WinAnsiEncoding -/Subtype /Type1 ->> -% 1222 0 obj -<< -/BaseFont /XISTAL+Times-Bold -/FontDescriptor 1224 0 R -/Type /Font -/FirstChar 48 -/LastChar 80 -/Widths [ 500 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 611] -/Encoding /WinAnsiEncoding -/Subtype /Type1 ->> -% 1223 0 obj -<< -/Type /FontDescriptor -/FontName /XYUGDR+Times-Roman -/FontBBox [ 0 -14 476 688] -/Flags 65568 -/Ascent 688 -/CapHeight 688 -/Descent -14 -/ItalicAngle 0 -/StemV 71 -/MissingWidth 250 -/CharSet (/eight/five/four/nine/one/seven/six/three/two/zero) -/FontFile3 1225 0 R ->> -% 1224 0 obj -<< -/Type /FontDescriptor -/FontName /XISTAL+Times-Bold -/FontBBox [ 0 -13 600 688] -/Flags 65568 -/Ascent 688 -/CapHeight 676 -/Descent -13 -/ItalicAngle 0 -/StemV 90 -/MissingWidth 250 -/CharSet (/P/one/zero) -/FontFile3 1226 0 R ->> -% 1202 0 obj +% 1225 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.826 625.431 174.781 634.343] -/A << /S /GoTo /D (table.14) >> +/Rect [265.833 129.071 341.887 140.196] +/A << /S /GoTo /D (vdata) >> >> -% 1212 0 obj +% 1226 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [407.097 278.167 414.071 290.786] -/A << /S /GoTo /D (figure.7) >> ->> -% 1216 0 obj -<< -/D [1214 0 R /XYZ 98.895 753.953 null] ->> -% 1217 0 obj -<< -/D [1214 0 R /XYZ 232.883 317.353 null] +/Rect [245.572 117.392 257.527 128.24] +/A << /S /GoTo /D (table.14) >> >> -% 1213 0 obj +% 1230 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F11 770 0 R /F16 570 0 R /F30 784 0 R >> -/XObject << /Im3 1211 0 R >> -/ProcSet [ /PDF /Text ] +/D [1228 0 R /XYZ 98.895 753.953 null] >> -% 1228 0 obj +% 276 0 obj << -/Type /Page -/Contents 1229 0 R -/Resources 1227 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1218 0 R +/D [1228 0 R /XYZ 99.895 716.092 null] >> -% 1230 0 obj + +endstream +endobj +1235 0 obj << -/D [1228 0 R /XYZ 149.705 753.953 null] +/Length 625 >> +stream +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F27 9.9626 Tf 150.705 706.129 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ +0 g 0 G + 141.968 -567.87 Td [(54)]TJ +0 g 0 G +ET endstream endobj -1238 0 obj +1246 0 obj << -/Length 8516 +/Length 7432 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(4.15)-1125(psb)]TJ +ET +q +1 0 0 1 158.311 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 162.346 706.129 Td [(gediv)-375(|)-375(En)31(trywise)-375(Division)]TJ/F8 9.9626 Tf -62.451 -18.389 Td [(This)-333(function)-334(computes)-333(the)-333(en)27(try)1(w)-1(i)1(s)-1(e)-333(division)-333(b)-28(et)28(w)28(een)-334(t)28(w)28(o)-334(v)28(ectors)]TJ/F11 9.9626 Tf 295.614 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(y)]TJ -182.908 -21.715 Td [(=)]TJ/F14 9.9626 Tf 7.749 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F11 9.9626 Tf 3.875 0 Td [(=y)]TJ/F8 9.9626 Tf 10.223 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F11 9.9626 Tf 3.874 0 Td [(:)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -199.851 -21.715 Td [(psb_gediv\050x,)-525(y,)-525(desc_a,)-525(info,)-525([flag\051)]TJ +0 g 0 G +0 g 0 G +0 g 0 G +ET +q +1 0 0 1 183.665 620.263 cm +[]0 d 0 J 0.398 w 0 0 m 176.173 0 l S +Q +BT +/F11 9.9626 Tf 189.642 611.695 Td [(=)]TJ/F8 9.9626 Tf 4.982 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(y)]TJ/F27 9.9626 Tf 97.558 0 Td [(F)96(unction)]TJ +ET +q +1 0 0 1 183.665 607.909 cm +[]0 d 0 J 0.398 w 0 0 m 176.173 0 l S +Q +BT +/F8 9.9626 Tf 189.642 599.341 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ +ET +q +1 0 0 1 325.649 599.54 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 328.638 599.341 Td [(gediv)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ +ET +q +1 0 0 1 325.649 587.585 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 328.638 587.386 Td [(gediv)]TJ -138.996 -11.955 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ +ET +q +1 0 0 1 325.649 575.63 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 328.638 575.431 Td [(gediv)]TJ -138.996 -11.956 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ +ET +q +1 0 0 1 325.649 563.675 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 328.638 563.475 Td [(gediv)]TJ +ET +q +1 0 0 1 183.665 559.69 cm +[]0 d 0 J 0.398 w 0 0 m 176.173 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 225.577 531.65 Td [(T)83(able)-333(15:)-444(Data)-334(t)28(yp)-28(es)]TJ +0 g 0 G +0 g 0 G +0 g 0 G +/F27 9.9626 Tf -125.682 -33.312 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.844 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.844 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(v)27(ector)]TJ/F11 9.9626 Tf 173.627 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -165.442 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-424(as:)-628(an)-424(ob)-56(ject)-424(of)-425(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 142.027 0 Td [(psb)]TJ +ET +q +1 0 0 1 283.148 411.028 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 286.286 410.829 Td [(T)]TJ ET q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 292.144 411.028 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 295.282 410.829 Td [(vect)]TJ +ET +q +1 0 0 1 316.831 411.028 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(o)31(vrl)-375(|)-375(Ov)31(erlap)-375(Up)-31(date)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(These)-333(s)-1(u)1(broutines)-334(applies)-333(an)-333(o)27(v)28(erlap)-333(op)-28(erator)-333(to)-333(the)-334(input)-333(v)28(ector:)]TJ/F11 9.9626 Tf 154.475 -22.077 Td [(x)]TJ/F14 9.9626 Tf 8.462 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(Qx)]TJ/F8 9.9626 Tf -175.667 -20.14 Td [(where:)]TJ +/F30 9.9626 Tf 319.969 410.829 Td [(type)]TJ 0 g 0 G -/F11 9.9626 Tf 0 -18.503 Td [(x)]TJ +/F8 9.9626 Tf 25.152 0 Td [(con)28(taining)-425(n)28(um)28(b)-28(ers)-425(of)]TJ -220.319 -11.955 Td [(t)28(yp)-28(e)-333(sp)-28(eci\014ed)-333(in)-334(T)84(able)]TJ +0 0 1 rg 0 0 1 RG + [-334(2)]TJ 0 g 0 G -/F8 9.9626 Tf 10.676 0 Td [(is)-333(the)-334(global)-333(dense)-333(submatrix)]TJ/F11 9.9626 Tf 131.092 0 Td [(x)]TJ + [(.)]TJ 0 g 0 G - -141.768 -19.214 Td [(Q)]TJ +/F27 9.9626 Tf -24.907 -19.844 Td [(y)]TJ 0 g 0 G -/F8 9.9626 Tf 12.858 0 Td [(is)-333(the)-334(o)28(v)28(erlap)-333(op)-28(erator;)-333(it)-334(is)-333(the)-333(comp)-28(osition)-334(of)-333(t)28(w)28(o)-334(op)-27(erators)]TJ/F11 9.9626 Tf 271.842 0 Td [(P)]TJ/F10 6.9738 Tf 6.396 -1.494 Td [(a)]TJ/F8 9.9626 Tf 8.14 1.494 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(P)]TJ/F10 6.9738 Tf 7.78 3.616 Td [(T)]TJ/F8 9.9626 Tf 6.276 -3.616 Td [(.)]TJ +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(v)27(ector)]TJ/F11 9.9626 Tf 173.627 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(.)]TJ -164.99 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-424(as:)-628(an)-424(ob)-56(ject)-424(of)-425(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 142.027 0 Td [(psb)]TJ +ET +q +1 0 0 1 283.148 331.408 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 286.286 331.209 Td [(T)]TJ +ET +q +1 0 0 1 292.144 331.408 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 295.282 331.209 Td [(vect)]TJ +ET +q +1 0 0 1 316.831 331.408 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 319.969 331.209 Td [(type)]TJ 0 g 0 G +/F8 9.9626 Tf 25.152 0 Td [(con)28(taining)-425(n)28(um)28(b)-28(ers)-425(of)]TJ -220.319 -11.955 Td [(t)28(yp)-28(e)-333(sp)-28(eci\014ed)-333(in)-334(T)84(able)]TJ +0 0 1 rg 0 0 1 RG + [-334(2)]TJ 0 g 0 G + [(.)]TJ 0 g 0 G +/F27 9.9626 Tf -24.907 -19.844 Td [(desc)]TJ ET q -1 0 0 1 177.988 587.879 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +1 0 0 1 121.81 299.609 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F11 9.9626 Tf 183.966 579.311 Td [(x)]TJ/F27 9.9626 Tf 120.409 0 Td [(Subroutine)]TJ +/F27 9.9626 Tf 125.247 299.41 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 135.658 0 Td [(psb)]TJ ET q -1 0 0 1 177.988 575.525 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +1 0 0 1 276.779 251.788 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 183.966 566.957 Td [(Short)-333(Precision)-333(R)-1(eal)-3102(psb)]TJ +/F30 9.9626 Tf 279.917 251.589 Td [(desc)]TJ ET q -1 0 0 1 319.972 567.156 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 301.466 251.788 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 322.961 566.957 Td [(o)28(vrl)]TJ -138.995 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(p)1(s)-1(b)]TJ +/F30 9.9626 Tf 304.604 251.589 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -225.631 -19.844 Td [(\015ag)]TJ +0 g 0 G +/F8 9.9626 Tf 22.645 0 Td [(c)28(hec)28(k)-352(if)-352(an)28(y)-352(of)-351(the)]TJ/F11 9.9626 Tf 84.21 0 Td [(y)]TJ/F8 9.9626 Tf 5.242 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)-308(=)-309(0,)-356(and)-351(in)-352(case)-352(returns)-351(error)-352(halting)-351(the)-352(compu-)]TJ -94.497 -11.955 Td [(tation.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 43.898 0 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -116.542 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(th)1(e)-334(logical)-333(v)55(alue)]TJ/F30 9.9626 Tf 131.784 0 Td [(flag=.true.)]TJ +0 g 0 G +/F27 9.9626 Tf -156.691 -19.844 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.844 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(result)-333(submatrix)]TJ/F11 9.9626 Tf 162.364 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -154.179 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ +0 g 0 G +/F8 9.9626 Tf 112.357 -29.888 Td [(55)]TJ +0 g 0 G +ET + +endstream +endobj +1252 0 obj +<< +/Length 1485 +>> +stream +0 g 0 G +0 g 0 G +BT +/F8 9.9626 Tf 175.611 706.129 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-424(as:)-628(an)-424(ob)-56(ject)-424(of)-425(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 142.027 0 Td [(psb)]TJ ET q -1 0 0 1 319.972 555.201 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 333.957 694.373 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 322.961 555.002 Td [(o)28(vrl)]TJ -138.995 -11.955 Td [(Short)-333(Precision)-333(C)-1(omplex)-1200(p)1(s)-1(b)]TJ +/F30 9.9626 Tf 337.095 694.174 Td [(T)]TJ ET q -1 0 0 1 319.972 543.246 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 342.953 694.373 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 322.961 543.047 Td [(o)28(vrl)]TJ -138.995 -11.956 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ +/F30 9.9626 Tf 346.092 694.174 Td [(vect)]TJ ET q -1 0 0 1 319.972 531.291 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 367.64 694.373 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 322.961 531.091 Td [(o)28(vrl)]TJ +/F30 9.9626 Tf 370.779 694.174 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 25.152 0 Td [(con)28(taining)-425(n)28(um)28(b)-28(ers)-425(of)]TJ -220.32 -11.955 Td [(the)-333(t)27(yp)-27(e)-334(indicated)-333(in)-333(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-333(14)]TJ +0 g 0 G + [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -19.926 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ +0 g 0 G + 141.968 -524.035 Td [(56)]TJ +0 g 0 G +ET + +endstream +endobj +1261 0 obj +<< +/Length 7499 +>> +stream +0 g 0 G +0 g 0 G +BT +/F16 11.9552 Tf 99.895 706.129 Td [(4.16)-1125(psb)]TJ ET q -1 0 0 1 177.988 527.306 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +1 0 0 1 158.311 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q -0 g 0 G BT -/F8 9.9626 Tf 225.577 499.266 Td [(T)83(able)-333(15:)-444(Data)-334(t)28(yp)-28(es)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(gein)31(v)-375(|)-375(En)31(trywise)-375(In)32(v)31(ersion)]TJ/F8 9.9626 Tf -62.451 -18.389 Td [(This)-333(function)-334(computes)-333(the)-333(en)27(try)1(w)-1(i)1(s)-1(e)-333(in)28(v)28(erse)-334(of)-333(a)-333(v)27(ector)]TJ/F11 9.9626 Tf 250.201 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(and)-333(puts)-334(it)-333(in)28(to)]TJ/F11 9.9626 Tf 71.731 0 Td [(y)]TJ -184.133 -17.8 Td [(=)]TJ/F14 9.9626 Tf 7.749 0 Td [(\040)]TJ/F8 9.9626 Tf 12.73 0 Td [(1)]TJ/F11 9.9626 Tf 4.981 0 Td [(=x)]TJ/F8 9.9626 Tf 10.675 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F11 9.9626 Tf 3.874 0 Td [(:)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -194.13 -17.8 Td [(psb_geinv\050x,)-525(y,)-525(desc_a,)-525(info,)-525([flag\051)]TJ +0 g 0 G 0 g 0 G 0 g 0 G -/F27 9.9626 Tf -124.305 -28.465 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.881 0 Td [(p)-137(s)-138(b)]TJ ET q -1 0 0 1 150.859 471 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 183.665 633.574 cm +[]0 d 0 J 0.398 w 0 0 m 176.173 0 l S +Q +BT +/F11 9.9626 Tf 189.642 625.006 Td [(=)]TJ/F8 9.9626 Tf 4.982 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(y)]TJ/F27 9.9626 Tf 97.558 0 Td [(F)96(unction)]TJ +ET +q +1 0 0 1 183.665 621.22 cm +[]0 d 0 J 0.398 w 0 0 m 176.173 0 l S Q BT -/F8 9.9626 Tf 155.217 470.801 Td [(o)-138(v)-137(r)-137(l)-243(\050)-130(x)-209(,)-874(d)-113(e)-112(s)-113(c)]TJ +/F8 9.9626 Tf 189.642 612.652 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ ET q -1 0 0 1 226.044 471 cm +1 0 0 1 325.649 612.852 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 230.155 470.801 Td [(a)-386(,)-914(i)-152(n)-152(f)-152(o)-258(\051)]TJ/F27 9.9626 Tf -128.883 -11.955 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.881 0 Td [(p)-137(s)-138(b)]TJ +/F8 9.9626 Tf 328.638 612.652 Td [(gein)28(v)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ ET q -1 0 0 1 150.859 459.045 cm +1 0 0 1 325.649 600.897 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 155.217 458.846 Td [(o)-138(v)-137(r)-137(l)-243(\050)-130(x)-209(,)-874(d)-113(e)-112(s)-113(c)]TJ +/F8 9.9626 Tf 328.638 600.697 Td [(gein)28(v)]TJ -138.996 -11.955 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ ET q -1 0 0 1 226.044 459.045 cm +1 0 0 1 325.649 588.941 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 230.155 458.846 Td [(a)-386(,)-888(i)-127(n)-127(f)-127(o)-415(,)-847(u)-85(p)-86(d)-86(a)-85(t)-86(e)3(=)-13(u)-102(p)-101(d)-102(a)-102(t)-102(e)]TJ +/F8 9.9626 Tf 328.638 588.742 Td [(gein)28(v)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ ET q -1 0 0 1 364.631 459.045 cm +1 0 0 1 325.649 576.986 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 368.634 458.846 Td [(t)-102(y)-102(p)-101(e)-365(,)-813(w)-52(o)-51(r)-52(k)37(=)38(w)-52(o)-52(r)-51(k)-158(\051)]TJ +/F8 9.9626 Tf 328.638 576.787 Td [(gein)28(v)]TJ +ET +q +1 0 0 1 183.665 573.001 cm +[]0 d 0 J 0.398 w 0 0 m 176.173 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 225.577 544.962 Td [(T)83(able)-333(16:)-444(Data)-334(t)28(yp)-28(es)]TJ 0 g 0 G 0 g 0 G 0 g 0 G -/F27 9.9626 Tf -268.739 -25.406 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -125.682 -27.831 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.214 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -18.278 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.214 Td [(x)]TJ + 0 -18.278 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(global)-333(dense)-334(matrix)]TJ/F11 9.9626 Tf 88.917 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -80.732 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)27(o)-254(arra)27(y)-254(or)-255(an)-255(ob)-55(jec)-1(t)-254(of)-255(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(v)27(ector)]TJ/F11 9.9626 Tf 173.627 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -165.442 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-424(as:)-628(an)-424(ob)-56(ject)-424(of)-425(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 244.743 0 Td [(psb)]TJ +/F30 9.9626 Tf 142.027 0 Td [(psb)]TJ ET q -1 0 0 1 385.864 347.39 cm +1 0 0 1 283.148 432.953 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 389.002 347.191 Td [(T)]TJ +/F30 9.9626 Tf 286.286 432.754 Td [(T)]TJ ET q -1 0 0 1 394.86 347.39 cm +1 0 0 1 292.144 432.953 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 397.998 347.191 Td [(vect)]TJ +/F30 9.9626 Tf 295.282 432.754 Td [(vect)]TJ ET q -1 0 0 1 419.547 347.39 cm +1 0 0 1 316.831 432.953 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 422.685 347.191 Td [(type)]TJ +/F30 9.9626 Tf 319.969 432.754 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf -297.883 -11.955 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(t)28(yp)-28(e)-334(sp)-27(eci\014ed)-334(in)-333(T)83(able)]TJ +/F8 9.9626 Tf 25.152 0 Td [(con)28(taining)-425(n)28(um)28(b)-28(ers)-425(of)]TJ -220.319 -11.955 Td [(t)28(yp)-28(e)-333(sp)-28(eci\014ed)-333(in)-334(T)84(able)]TJ 0 0 1 rg 0 0 1 RG - [-333(15)]TJ + [-334(2)]TJ 0 g 0 G [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.214 Td [(desc)]TJ +/F27 9.9626 Tf -24.907 -18.278 Td [(desc)]TJ ET q -1 0 0 1 121.81 316.221 cm +1 0 0 1 121.81 402.72 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 316.022 Td [(a)]TJ +/F27 9.9626 Tf 125.247 402.521 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 135.658 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 268.401 cm +1 0 0 1 276.779 354.899 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 268.201 Td [(desc)]TJ +/F30 9.9626 Tf 279.917 354.7 Td [(desc)]TJ ET q -1 0 0 1 336.723 268.401 cm +1 0 0 1 301.466 354.899 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 268.201 Td [(type)]TJ +/F30 9.9626 Tf 304.604 354.7 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -19.214 Td [(up)-32(date)]TJ +/F27 9.9626 Tf -225.631 -18.278 Td [(\015ag)]TJ 0 g 0 G -/F8 9.9626 Tf 39.671 0 Td [(Up)-28(date)-333(op)-28(erator.)]TJ +/F8 9.9626 Tf 22.645 0 Td [(c)28(hec)28(k)-349(if)-349(an)28(y)-349(of)-349(the)]TJ/F11 9.9626 Tf 84.074 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)-304(=)-303(0,)-353(and)-349(in)-349(case)-349(returns)-349(error)-349(haltin)1(g)-349(the)-349(compu-)]TJ -94.813 -11.955 Td [(tation.)]TJ 0 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 43.898 0 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -116.542 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(th)1(e)-334(logical)-333(v)55(alue)]TJ/F30 9.9626 Tf 131.784 0 Td [(flag=.true.)]TJ 0 g 0 G -/F27 9.9626 Tf -14.764 -31.169 Td [(up)-32(date)-383(=)-384(psb)]TJ +/F27 9.9626 Tf -156.691 -18.278 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -18.278 Td [(y)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(result)-333(submatrix)]TJ/F11 9.9626 Tf 162.364 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -154.179 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-424(as:)-628(an)-424(ob)-56(ject)-424(of)-425(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 142.027 0 Td [(psb)]TJ ET q -1 0 0 1 193.977 218.017 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 283.148 204.424 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F27 9.9626 Tf 197.414 217.818 Td [(none)]TJ +/F30 9.9626 Tf 286.286 204.224 Td [(T)]TJ ET q -1 0 0 1 221.811 218.017 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 292.144 204.424 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 295.282 204.224 Td [(vect)]TJ +ET +q +1 0 0 1 316.831 204.424 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q +BT +/F30 9.9626 Tf 319.969 204.224 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 25.152 0 Td [(con)28(taining)-425(n)28(um)28(b)-28(ers)-425(of)]TJ -220.319 -11.955 Td [(the)-333(t)27(yp)-27(e)-334(indicated)-333(in)-333(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-333(16)]TJ +0 g 0 G + [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -18.278 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ +0 g 0 G + 141.968 -35.732 Td [(57)]TJ +0 g 0 G +ET + +endstream +endobj +1267 0 obj +<< +/Length 651 +>> +stream +0 g 0 G 0 g 0 G BT -/F8 9.9626 Tf 230.229 217.818 Td [(Do)-333(nothing;)]TJ +/F16 14.3462 Tf 150.705 706.129 Td [(5)-1125(Comm)31(unication)-375(routines)]TJ/F8 9.9626 Tf 0 -21.821 Td [(The)-283(routines)-283(in)-283(this)-283(c)28(hapter)-283(implemen)28(t)-283(v)55(arious)-283(global)-283(comm)28(unication)-283(op)-28(erators)]TJ 0 -11.955 Td [(on)-344(v)28(ectors)-344(asso)-27(c)-1(iated)-343(with)-344(a)-344(d)1(is)-1(cretization)-343(mesh.)-476(F)84(or)-344(auxiliary)-344(comm)28(unication)]TJ 0 -11.955 Td [(routines)-333(not)-334(tied)-333(to)-333(a)-334(d)1(is)-1(cretization)-333(space)-333(see)]TJ +0 0 1 rg 0 0 1 RG + [-334(6)]TJ +0 g 0 G + [(.)]TJ +0 g 0 G + 166.874 -569.96 Td [(58)]TJ +0 g 0 G +ET + +endstream +endobj +1275 0 obj +<< +/Length 7269 +>> +stream +0 g 0 G 0 g 0 G -/F27 9.9626 Tf -105.427 -15.229 Td [(up)-32(date)-383(=)-384(psb)]TJ +BT +/F16 11.9552 Tf 99.895 706.129 Td [(5.1)-1125(psb)]TJ ET q -1 0 0 1 193.977 202.789 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 151.587 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F27 9.9626 Tf 197.414 202.589 Td [(add)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(halo)-375(|)-375(Halo)-375(Data)-375(Comm)31(unication)]TJ/F8 9.9626 Tf -55.726 -18.389 Td [(These)-333(s)-1(u)1(broutines)-334(gathers)-333(the)-333(v)55(alues)-333(of)-334(th)1(e)-334(halo)-333(elemen)28(ts:)]TJ/F11 9.9626 Tf 158.413 -23.188 Td [(x)]TJ/F14 9.9626 Tf 8.462 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(x)]TJ/F8 9.9626 Tf -179.605 -21.251 Td [(where:)]TJ +0 g 0 G +/F11 9.9626 Tf 0 -19.391 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 10.676 0 Td [(is)-333(a)-334(global)-333(dense)-333(submatrix.)]TJ +0 g 0 G +0 g 0 G +0 g 0 G ET q -1 0 0 1 216.4 202.789 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 177.988 602.649 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q -0 g 0 G BT -/F8 9.9626 Tf 224.819 202.589 Td [(Sum)-333(o)27(v)28(erlap)-333(en)28(tries,)-334(i.e.)-444(apply)]TJ/F11 9.9626 Tf 136.544 0 Td [(P)]TJ/F10 6.9738 Tf 7.78 3.616 Td [(T)]TJ/F8 9.9626 Tf 6.276 -3.616 Td [(;)]TJ -0 g 0 G -/F27 9.9626 Tf -250.617 -15.229 Td [(up)-32(date)-383(=)-384(psb)]TJ +/F11 9.9626 Tf 183.966 594.081 Td [(\013)]TJ/F8 9.9626 Tf 6.41 0 Td [(,)]TJ/F11 9.9626 Tf 6.088 0 Td [(x)]TJ/F27 9.9626 Tf 107.911 0 Td [(Subroutine)]TJ ET q -1 0 0 1 193.977 187.56 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 177.988 590.295 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q BT -/F27 9.9626 Tf 197.414 187.36 Td [(a)32(vg)]TJ +/F8 9.9626 Tf 183.966 581.727 Td [(In)28(teger)-9028(psb)]TJ ET q -1 0 0 1 215.127 187.56 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 319.972 581.926 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 322.961 581.727 Td [(halo)]TJ -138.995 -11.955 Td [(Short)-333(Precision)-333(R)-1(eal)-3102(psb)]TJ +ET +q +1 0 0 1 319.972 569.971 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q -0 g 0 G BT -/F8 9.9626 Tf 223.546 187.36 Td [(Av)28(erage)-334(o)28(v)28(erlap)-333(en)27(tri)1(e)-1(s,)-333(i.e.)-444(apply)]TJ/F11 9.9626 Tf 152.345 0 Td [(P)]TJ/F10 6.9738 Tf 6.397 -1.494 Td [(a)]TJ/F11 9.9626 Tf 4.819 1.494 Td [(P)]TJ/F10 6.9738 Tf 7.78 3.616 Td [(T)]TJ/F8 9.9626 Tf 6.276 -3.616 Td [(;)]TJ -276.361 -19.214 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(update)]TJ +/F8 9.9626 Tf 322.961 569.772 Td [(halo)]TJ -138.995 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(p)1(s)-1(b)]TJ ET q -1 0 0 1 194.239 144.435 cm +1 0 0 1 319.972 558.016 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F11 9.9626 Tf 197.228 144.236 Td [(ty)-36(pe)]TJ/F8 9.9626 Tf 21.258 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(psb)]TJ +/F8 9.9626 Tf 322.961 557.817 Td [(halo)]TJ -138.995 -11.955 Td [(Short)-333(Precision)-333(C)-1(omplex)-1200(p)1(s)-1(b)]TJ ET q -1 0 0 1 243.558 144.435 cm +1 0 0 1 319.972 546.061 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F11 9.9626 Tf 246.547 144.236 Td [(av)-36(g)]TJ +/F8 9.9626 Tf 322.961 545.862 Td [(halo)]TJ -138.995 -11.956 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ ET q -1 0 0 1 262.706 144.435 cm +1 0 0 1 319.972 534.106 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 124.802 132.281 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(in)28(teger)-333(v)55(ariable.)]TJ +/F8 9.9626 Tf 322.961 533.906 Td [(halo)]TJ +ET +q +1 0 0 1 177.988 530.121 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 225.577 502.081 Td [(T)83(able)-333(17:)-444(Data)-334(t)28(yp)-28(es)]TJ 0 g 0 G - 141.968 -29.888 Td [(57)]TJ 0 g 0 G +/F27 9.9626 Tf -124.305 -29.354 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.731 0 Td [(p)-122(s)-123(b)]TJ ET - -endstream -endobj -1250 0 obj -<< -/Length 5872 ->> -stream +q +1 0 0 1 150.256 472.926 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 154.464 472.727 Td [(h)-122(a)-123(l)-122(o)-228(\050)-130(x)-209(,)-874(d)-112(e)-113(s)-113(c)]TJ +ET +q +1 0 0 1 226.044 472.926 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 230.155 472.727 Td [(a)-386(,)-914(i)-152(n)-152(f)-152(o)-258(\051)]TJ/F27 9.9626 Tf -128.883 -11.955 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.731 0 Td [(p)-122(s)-123(b)]TJ +ET +q +1 0 0 1 150.256 460.971 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 154.464 460.772 Td [(h)-122(a)-123(l)-122(o)-228(\050)-130(x)-209(,)-874(d)-112(e)-113(s)-113(c)]TJ +ET +q +1 0 0 1 226.044 460.971 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 230.155 460.772 Td [(a)-386(,)-888(i)-127(n)-127(f)-127(o)-415(,)-804(w)-43(o)-43(r)-43(k)-247(,)]TJ/F27 9.9626 Tf 91.304 0 Td [(d)-39(a)-39(t)-40(a)]TJ/F8 9.9626 Tf 24.571 0 Td [(\051)]TJ 0 g 0 G 0 g 0 G 0 g 0 G -BT -/F27 9.9626 Tf 150.705 706.129 Td [(w)32(ork)]TJ +/F27 9.9626 Tf -246.135 -26.961 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 29.431 0 Td [(the)-333(w)27(ork)-333(arra)28(y)83(.)]TJ -4.525 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(one)-333(dimensional)-334(arr)1(a)27(y)-333(of)-333(the)-334(same)-333(t)28(yp)-28(e)-333(of)]TJ/F11 9.9626 Tf 252.609 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -283.209 -19.925 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -33.797 -19.659 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(x)]TJ + 0 -19.658 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(global)-333(dense)-334(matrix)]TJ/F11 9.9626 Tf 88.917 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -80.732 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)27(o)-254(arra)27(y)-254(or)-255(an)-255(ob)-55(jec)-1(t)-254(of)-255(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 244.743 0 Td [(psb)]TJ +ET +q +1 0 0 1 385.864 346.872 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 389.002 346.673 Td [(T)]TJ +ET +q +1 0 0 1 394.86 346.872 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 397.998 346.673 Td [(vect)]TJ +ET +q +1 0 0 1 419.547 346.872 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 422.685 346.673 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(global)-333(dense)-334(result)-333(matrix)]TJ/F11 9.9626 Tf 116.674 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -108.49 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-474(as:)-727(an)-475(arra)28(y)-475(of)-474(rank)-475(one)-474(or)-475(t)28(w)28(o)-475(con)28(taining)-474(n)27(um)28(b)-28(ers)-474(of)-475(t)28(yp)-28(e)]TJ 0 -11.955 Td [(sp)-28(eci\014ed)-333(in)-333(T)83(able)]TJ +/F8 9.9626 Tf -297.883 -11.955 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(t)28(yp)-28(e)-334(sp)-27(eci\014ed)-334(in)-333(T)83(able)]TJ 0 0 1 rg 0 0 1 RG - [-333(15)]TJ + [-333(17)]TJ 0 g 0 G [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(t)1(e)-1(d.)]TJ/F16 11.9552 Tf -24.906 -21.918 Td [(Notes)]TJ -0 g 0 G -/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ -0 g 0 G - [-500(If)-316(there)-316(is)-317(no)-316(o)28(v)28(erlap)-316(in)-317(t)1(he)-317(data)-316(distribution)-316(asso)-28(ciated)-316(with)-316(the)-316(descrip-)]TJ 12.73 -11.955 Td [(tor,)-333(no)-334(op)-27(erations)-334(are)-333(p)-28(erformed;)]TJ +/F27 9.9626 Tf -24.907 -19.658 Td [(desc)]TJ +ET +q +1 0 0 1 121.81 315.259 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 125.247 315.06 Td [(a)]TJ 0 g 0 G - -12.73 -19.926 Td [(2.)]TJ +/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 312.036 267.438 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 315.174 267.239 Td [(desc)]TJ +ET +q +1 0 0 1 336.723 267.438 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 339.861 267.239 Td [(type)]TJ 0 g 0 G - [-500(The)-351(op)-27(e)-1(r)1(ator)]TJ/F11 9.9626 Tf 73.738 0 Td [(P)]TJ/F10 6.9738 Tf 7.779 3.616 Td [(T)]TJ/F8 9.9626 Tf 9.77 -3.616 Td [(p)-28(erforms)-350(the)-351(reduction)-351(sum)-350(of)-351(o)28(v)27(erlap)-350(elemen)27(ts;)-359(it)-351(is)-350(a)]TJ -78.557 -11.955 Td [(\134prolongation")-365(op)-28(erator)]TJ/F11 9.9626 Tf 108.923 0 Td [(P)]TJ/F10 6.9738 Tf 7.78 3.615 Td [(T)]TJ/F8 9.9626 Tf 9.914 -3.615 Td [(that)-365(replicates)-365(o)27(v)28(erlap)-365(elemen)28(ts,)-373(accoun)27(ting)]TJ -126.617 -11.955 Td [(for)-333(the)-334(ph)28(ysical)-333(replication)-333(of)-334(data;)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G - -12.73 -19.925 Td [(3.)]TJ +/F27 9.9626 Tf -260.887 -19.658 Td [(w)32(ork)]TJ 0 g 0 G - [-500(The)-256(op)-27(erator)]TJ/F11 9.9626 Tf 71.841 0 Td [(P)]TJ/F10 6.9738 Tf 6.396 -1.495 Td [(a)]TJ/F8 9.9626 Tf 7.365 1.495 Td [(p)-28(erforms)-255(a)-256(scaling)-255(on)-256(the)-255(o)28(v)27(erlap)-255(elemen)28(ts)-256(b)28(y)-256(th)1(e)-256(amoun)28(t)]TJ -72.872 -11.956 Td [(of)-290(repli)1(c)-1(ation)1(;)-305(th)28(us,)-298(when)-290(com)28(bined)-289(with)-290(the)-289(re)-1(d)1(uction)-290(op)-28(erator,)-298(it)-290(impl)1(e)-1(-)]TJ 0 -11.955 Td [(men)28(ts)-334(the)-333(a)28(v)28(erage)-334(of)-333(replicated)-333(ele)-1(men)28(ts)-333(o)28(v)27(er)-333(all)-333(of)-334(t)1(he)-1(i)1(r)-334(instances.)]TJ/F16 11.9552 Tf -24.906 -19.925 Td [(Example)-388(of)-387(us)-1(e)]TJ/F8 9.9626 Tf 93.468 0 Td [(Consider)-345(the)-344(discretization)-345(mesh)-345(d)1(e)-1(p)1(ic)-1(ted)-344(in)-345(\014g.)]TJ -0 0 1 rg 0 0 1 RG - [-344(8)]TJ +/F8 9.9626 Tf 29.432 0 Td [(the)-333(w)27(ork)-333(arra)28(y)83(.)]TJ -4.525 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(arra)27(y)-333(of)-333(the)-334(same)-333(t)28(yp)-28(e)-333(of)]TJ/F11 9.9626 Tf 220.756 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ 0 g 0 G - [(,)-348(parti-)]TJ -93.468 -11.955 Td [(tioned)-330(among)-330(t)28(w)27(o)-330(pro)-27(ce)-1(sses)-330(as)-330(sho)28(wn)-330(b)28(y)-331(th)1(e)-331(dashed)-330(lines,)-330(w)-1(i)1(th)-331(an)-330(o)28(v)28(erlap)-330(of)-330(1)]TJ 0 -11.955 Td [(extra)-360(la)28(y)28(er)-360(with)-359(resp)-28(ect)-360(to)-359(the)-360(partition)-359(of)-360(\014g.)]TJ -0 0 1 rg 0 0 1 RG - [-359(7)]TJ +/F27 9.9626 Tf -251.357 -19.659 Td [(data)]TJ 0 g 0 G - [(;)-373(the)-359(data)-360(distribution)-359(is)-360(suc)28(h)]TJ 0 -11.956 Td [(that)-351(eac)27(h)-351(pro)-28(cess)-351(will)-351(o)27(wn)-351(40)-351(en)27(tries)-351(in)-351(the)-352(index)-351(space,)-356(with)-351(an)-352(o)28(v)28(erlap)-351(of)-352(16)]TJ 0 -11.955 Td [(en)28(tries)-326(placed)-325(at)-326(lo)-28(cal)-325(indices)-326(25)-326(through)-325(40;)-328(the)-326(halo)-325(will)-326(run)-325(from)-326(lo)-28(cal)-325(index)]TJ 0 -11.955 Td [(41)-290(through)-291(lo)-27(cal)-291(index)-290(48..)-430(If)-291(pro)-27(cess)-291(0)-290(assigns)-291(an)-290(initial)-290(v)55(alue)-290(of)-291(1)-290(to)-290(its)-291(en)28(tries)]TJ 0 -11.955 Td [(in)-298(the)]TJ/F11 9.9626 Tf 28.078 0 Td [(x)]TJ/F8 9.9626 Tf 8.663 0 Td [(v)28(ector,)-305(and)-298(pro)-28(cess)-298(1)-298(ass)-1(i)1(gns)-299(a)-298(v)56(alue)-298(of)-298(2,)-305(then)-298(after)-298(a)-298(call)-298(to)]TJ/F30 9.9626 Tf 265.127 0 Td [(psb_ovrl)]TJ/F8 9.9626 Tf -301.868 -11.955 Td [(with)]TJ/F30 9.9626 Tf 22.4 0 Td [(psb_avg_)]TJ/F8 9.9626 Tf 44.871 0 Td [(and)-304(a)-304(call)-304(to)]TJ/F30 9.9626 Tf 56.945 0 Td [(psb_halo_)]TJ/F8 9.9626 Tf 50.102 0 Td [(the)-304(con)28(ten)28(ts)-304(of)-304(the)-304(lo)-28(cal)-304(v)28(ectors)-304(will)-304(b)-28(e)]TJ -174.318 -11.955 Td [(the)-333(follo)28(wing)-334(\050sho)28(wing)-333(a)-334(transition)-333(among)-333(the)-334(t)28(w)28(o)-333(sub)-28(domains\051)]TJ +/F8 9.9626 Tf 26.941 0 Td [(index)-333(list)-334(selector.)]TJ -2.034 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(Sp)-28(eci\014ed)-222(as:)-389(an)-222(in)28(teger.)-408(V)84(alues:)]TJ/F30 9.9626 Tf 136.479 0 Td [(psb_comm_halo_)]TJ/F8 9.9626 Tf 73.225 0 Td [(,)]TJ/F30 9.9626 Tf 2.767 0 Td [(psb_comm_mov_)]TJ/F8 9.9626 Tf 67.995 0 Td [(,)]TJ/F30 9.9626 Tf 5.202 0 Td [(psb_comm_ext_)]TJ/F8 9.9626 Tf 67.995 0 Td [(,)]TJ -353.663 -11.955 Td [(default:)]TJ/F30 9.9626 Tf 39.089 0 Td [(psb_comm_halo_)]TJ/F8 9.9626 Tf 73.224 0 Td [(.)-705(Cho)-27(os)-1(es)-420(the)-420(index)-420(list)-420(on)-420(whic)28(h)-420(to)-420(base)-420(the)]TJ -112.313 -11.955 Td [(data)-333(exc)27(hange.)]TJ 0 g 0 G - 166.874 -143.462 Td [(58)]TJ + 141.968 -29.888 Td [(59)]TJ 0 g 0 G ET endstream endobj -1258 0 obj +1285 0 obj << -/Length 3552 +/Length 3196 >> stream 0 g 0 G 0 g 0 G 0 g 0 G -0 g 0 G -0 g 0 G BT -/F31 7.9701 Tf 210.112 653.177 Td [(Pro)-29(cess)-355(0)-8986(Pro)-30(cess)-354(1)]TJ -33.382 -9.464 Td [(I)-1500(GLOB\050I\051)-1500(X\050I\051)-5180(I)-1500(GLOB\050I\051)-1500(X\050I\051)]TJ -1.184 -9.465 Td [(1)-5253(1)-2147(1.0)-5032(1)-4722(33)-2147(1.5)]TJ 0 -9.464 Td [(2)-5253(2)-2147(1.0)-5032(2)-4722(34)-2147(1.5)]TJ 0 -9.465 Td [(3)-5253(3)-2147(1.0)-5032(3)-4722(35)-2147(1.5)]TJ 0 -9.464 Td [(4)-5253(4)-2147(1.0)-5032(4)-4722(36)-2147(1.5)]TJ 0 -9.465 Td [(5)-5253(5)-2147(1.0)-5032(5)-4722(37)-2147(1.5)]TJ 0 -9.464 Td [(6)-5253(6)-2147(1.0)-5032(6)-4722(38)-2147(1.5)]TJ 0 -9.465 Td [(7)-5253(7)-2147(1.0)-5032(7)-4722(39)-2147(1.5)]TJ 0 -9.464 Td [(8)-5253(8)-2147(1.0)-5032(8)-4722(40)-2147(1.5)]TJ 0 -9.465 Td [(9)-5253(9)-2147(1.0)-5032(9)-4722(41)-2147(2.0)]TJ -4.235 -9.464 Td [(10)-4722(10)-2147(1.0)-4500(10)-4722(42)-2147(2.0)]TJ 0 -9.465 Td [(11)-4722(11)-2147(1.0)-4500(11)-4722(43)-2147(2.0)]TJ 0 -9.464 Td [(12)-4722(12)-2147(1.0)-4500(12)-4722(44)-2147(2.0)]TJ 0 -9.465 Td [(13)-4722(13)-2147(1.0)-4500(13)-4722(45)-2147(2.0)]TJ 0 -9.464 Td [(14)-4722(14)-2147(1.0)-4500(14)-4722(46)-2147(2.0)]TJ 0 -9.465 Td [(15)-4722(15)-2147(1.0)-4500(15)-4722(47)-2147(2.0)]TJ 0 -9.464 Td [(16)-4722(16)-2147(1.0)-4500(16)-4722(48)-2147(2.0)]TJ 0 -9.465 Td [(17)-4722(17)-2147(1.0)-4500(17)-4722(49)-2147(2.0)]TJ 0 -9.464 Td [(18)-4722(18)-2147(1.0)-4500(18)-4722(50)-2147(2.0)]TJ 0 -9.465 Td [(19)-4722(19)-2147(1.0)-4500(19)-4722(51)-2147(2.0)]TJ 0 -9.464 Td [(20)-4722(20)-2147(1.0)-4500(20)-4722(52)-2147(2.0)]TJ 0 -9.465 Td [(21)-4722(21)-2147(1.0)-4500(21)-4722(53)-2147(2.0)]TJ 0 -9.464 Td [(22)-4722(22)-2147(1.0)-4500(22)-4722(54)-2147(2.0)]TJ 0 -9.465 Td [(23)-4722(23)-2147(1.0)-4500(23)-4722(55)-2147(2.0)]TJ 0 -9.464 Td [(24)-4722(24)-2147(1.0)-4500(24)-4722(56)-2147(2.0)]TJ 0 -9.465 Td [(25)-4722(25)-2147(1.5)-4500(25)-4722(57)-2147(2.0)]TJ 0 -9.464 Td [(26)-4722(26)-2147(1.5)-4500(26)-4722(58)-2147(2.0)]TJ 0 -9.465 Td [(27)-4722(27)-2147(1.5)-4500(27)-4722(59)-2147(2.0)]TJ 0 -9.464 Td [(28)-4722(28)-2147(1.5)-4500(28)-4722(60)-2147(2.0)]TJ 0 -9.465 Td [(29)-4722(29)-2147(1.5)-4500(29)-4722(61)-2147(2.0)]TJ 0 -9.464 Td [(30)-4722(30)-2147(1.5)-4500(30)-4722(62)-2147(2.0)]TJ 0 -9.465 Td [(31)-4722(31)-2147(1.5)-4500(31)-4722(63)-2147(2.0)]TJ 0 -9.464 Td [(32)-4722(32)-2147(1.5)-4500(32)-4722(64)-2147(2.0)]TJ 0 -9.465 Td [(33)-4722(33)-2147(1.5)-4500(33)-4722(25)-2147(1.5)]TJ 0 -9.464 Td [(34)-4722(34)-2147(1.5)-4500(34)-4722(26)-2147(1.5)]TJ 0 -9.465 Td [(35)-4722(35)-2147(1.5)-4500(35)-4722(27)-2147(1.5)]TJ 0 -9.464 Td [(36)-4722(36)-2147(1.5)-4500(36)-4722(28)-2147(1.5)]TJ 0 -9.465 Td [(37)-4722(37)-2147(1.5)-4500(37)-4722(29)-2147(1.5)]TJ 0 -9.464 Td [(38)-4722(38)-2147(1.5)-4500(38)-4722(30)-2147(1.5)]TJ 0 -9.465 Td [(39)-4722(39)-2147(1.5)-4500(39)-4722(31)-2147(1.5)]TJ 0 -9.464 Td [(40)-4722(40)-2147(1.5)-4500(40)-4722(32)-2147(1.5)]TJ 0 -9.465 Td [(41)-4722(41)-2147(2.0)-4500(41)-4722(17)-2147(1.0)]TJ 0 -9.464 Td [(42)-4722(42)-2147(2.0)-4500(42)-4722(18)-2147(1.0)]TJ 0 -9.465 Td [(43)-4722(43)-2147(2.0)-4500(43)-4722(19)-2147(1.0)]TJ 0 -9.464 Td [(44)-4722(44)-2147(2.0)-4500(44)-4722(20)-2147(1.0)]TJ 0 -9.465 Td [(45)-4722(45)-2147(2.0)-4500(45)-4722(21)-2147(1.0)]TJ 0 -9.464 Td [(46)-4722(46)-2147(2.0)-4500(46)-4722(22)-2147(1.0)]TJ 0 -9.465 Td [(47)-4722(47)-2147(2.0)-4500(47)-4722(23)-2147(1.0)]TJ 0 -9.464 Td [(48)-4722(48)-2147(2.0)-4500(48)-4722(24)-2147(1.0)]TJ +/F27 9.9626 Tf 150.705 706.129 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G -/F8 9.9626 Tf 95.459 -98.979 Td [(59)]TJ + 0 -19.925 Td [(x)]TJ 0 g 0 G -ET - -endstream -endobj -1262 0 obj -<< -/Length 318 ->> -stream +/F8 9.9626 Tf 11.028 0 Td [(global)-333(dense)-334(result)-333(matrix)]TJ/F11 9.9626 Tf 116.674 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -108.49 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Returned)-271(as:)-414(a)-271(rank)-271(one)-271(or)-272(t)28(w)28(o)-271(arra)28(y)-272(con)28(taining)-271(n)28(um)28(b)-28(ers)-271(of)-272(t)28(yp)-28(e)-271(sp)-28(eci\014ed)]TJ 0 -11.955 Td [(in)-333(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-333(17)]TJ +0 g 0 G + [(.)]TJ 0 g 0 G +/F27 9.9626 Tf -24.906 -19.926 Td [(info)]TJ 0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(result)-333(submatrix)]TJ/F11 9.9626 Tf 162.364 0 Td [(y)]TJ/F8 9.9626 Tf 5.241 0 Td [(.)]TJ -166.457 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue)-334(that)-333(con)28(tains)-333(an)-334(error)-333(co)-28(de.)]TJ 0 g 0 G 0 g 0 G 0 g 0 G -1 0 0 1 154.862 292.444 cm +ET +1 0 0 1 210.511 337.279 cm q -.65 0 0 .65 0 0 cm +.45 0 0 .45 0 0 cm q 1 0 0 1 0 0 cm -/Im4 Do +/Im3 Do Q Q 0 g 0 G -1 0 0 1 -154.862 -292.444 cm +1 0 0 1 -210.511 -337.279 cm BT -/F8 9.9626 Tf 240.078 260.564 Td [(Figure)-333(8:)-445(Sample)-333(discretization)-333(mesh.)]TJ +/F8 9.9626 Tf 240.078 305.398 Td [(Figure)-333(7:)-445(Sample)-333(discretization)-333(mesh.)]TJ +0 g 0 G 0 g 0 G +/F16 11.9552 Tf -89.373 -23.91 Td [(Usage)-381(Example)]TJ/F8 9.9626 Tf 93.98 0 Td [(Consider)-338(the)-339(discretization)-338(mesh)-339(depicted)-338(in)-338(\014g.)]TJ +0 0 1 rg 0 0 1 RG + [-339(7)]TJ 0 g 0 G + [(,)-339(parti-)]TJ -93.98 -11.955 Td [(tioned)-334(among)-334(t)27(w)28(o)-334(pro)-28(cesses)-334(as)-335(sho)28(wn)-334(b)28(y)-334(the)-335(dashed)-334(line;)-334(the)-335(data)-334(distribution)]TJ 0 -11.955 Td [(is)-422(suc)28(h)-422(that)-422(eac)28(h)-422(pro)-28(cess)-422(will)-421(o)27(wn)-422(32)-421(en)27(tries)-421(in)-422(the)-422(index)-422(space,)-444(with)-422(a)-422(halo)]TJ 0 -11.956 Td [(made)-340(of)-341(8)-340(en)28(tries)-341(placed)-340(at)-340(lo)-28(cal)-341(in)1(dices)-341(33)-340(through)-340(40.)-466(If)-340(pro)-28(cess)-341(0)-340(assigns)-340(an)]TJ 0 -11.955 Td [(initial)-423(v)55(alue)-423(of)-424(1)-423(to)-424(its)-423(en)28(tries)-424(in)-423(the)]TJ/F11 9.9626 Tf 169.005 0 Td [(x)]TJ/F8 9.9626 Tf 9.913 0 Td [(v)28(ector,)-446(and)-424(pro)-27(cess)-424(1)-423(ass)-1(i)1(g)-1(n)1(s)-424(a)-423(v)55(alue)]TJ -178.918 -11.955 Td [(of)-349(2,)-353(then)-349(after)-349(a)-349(call)-349(to)]TJ/F30 9.9626 Tf 108.539 0 Td [(psb_halo)]TJ/F8 9.9626 Tf 45.32 0 Td [(the)-349(con)28(ten)27(t)1(s)-350(of)-349(the)-349(lo)-27(cal)-350(v)28(ectors)-349(will)-349(b)-28(e)-349(the)]TJ -153.859 -11.955 Td [(follo)28(wing:)]TJ 0 g 0 G - 77.501 -170.126 Td [(60)]TJ + 166.874 -119.319 Td [(60)]TJ 0 g 0 G ET endstream endobj -1245 0 obj +1281 0 obj << /Type /XObject /Subtype /Form /FormType 1 -/PTEX.FileName (./figures/try8x8_ov.pdf) +/PTEX.FileName (./figures/try8x8.pdf) /PTEX.PageNumber 1 -/PTEX.InfoDict 1264 0 R -/BBox [0 0 516 439] +/PTEX.InfoDict 1288 0 R +/BBox [0 0 498 439] /Resources << /ProcSet [ /PDF /Text ] /ExtGState << -/R7 1265 0 R ->>/Font << /R8 1266 0 R/R10 1267 0 R>> +/R7 1289 0 R +>>/Font << /R8 1290 0 R/R10 1291 0 R>> >> -/Length 3413 +/Length 3349 /Filter /FlateDecode >> stream -xA +8s^˒- Svҷj&{|I(m|%Zߟ[ynx?ף?lOgaV+_.=ݥM:߷ZKض[J'Ĵ8͞MTmi&v @%o3o{ lv #"6ف|lvD"@663_dl# Md9D.>}m= m|{DdF@6;.6CZ$ lm"nG6mdK33/ g#"\~>g#"\~N [363_dl# Md9D.>Мqht3L9.LC f4f :f 37fjL9.. ]f h33͙Z3ŌAnjAsyfALA ͠ -lA7b8tS!jq 33BĖ zG.á*jp pF.jo,*o)TwK٥[.Rr▂K-U[rC܎V8V]cz?Z+̣gD_6^=tjnf9 Y2& -\h6O`Ih]g4@h6!PN7#Cw*uAH MGۏ?>Eh!3h$Kh6!P̹mCD]jcf]Q)&2@AZ[YM -͆e|_Ŭ롾oƋ;2ї"F:#}]/~.%0Q&G@_v&a}wQU=}jj.3u˖: 2=ep?TwǕ%v>ʮm).=o|X"ȕ -כAC\Wh ]|ۚ_ܮ2/7k5Ln`1` ps%ks^Qo/ճ*׻ s[AW ]|ۚ_5U慪>ZU @oI|T=b~[ >Z k}o<@g~gU/n\nZ|S+3ع>\vTYqI;sutGD@33t'0smLFD%F푑0.zB.B"+Фz{^t[ާ@`[v ,]$>ȫjHqvEkCTi _']UWMݴ|/Z}\W_'\UkJʼ@g^*yj~œ&?n7 -> 7z3mW=򙿪Ok*#_e}0h;ׇĂUmxPyPp}gZz43cL̵1Y][Vέ5x]Oh5E_ZSYdUZR6Tl4^l]M׵6Nɋ&%ě)?'Q:V\ֆU n|œzC+wum_kC*\b[=?' G_ߙ8"*1L̵1Y=Ƣzځm,uZMuTYaU&[:ZGv_P=-F5louY*oX<M+7uys6cn:|oœԱzS7>Zj?|b+T|oœ}Ա2/P=P[1`z:b$>6uMWֆ}qwf-G>7u|M#_e^z䫬Zaꦓ9X?񶎏x0z~DDE]ׅaX!>do֫\̕w-/Iv!o'ȟ`[G. +x]$~tkXtjY}-qWWfDFr$ɬo1d%gro}=1s<h^ٽ}cVz_=>⩽ǎ'!w ;\)nBBZ!-$5=OztRZHLk/DX=&cZ  b!r+@x 1d-G5G||7|+_@dn@-Edk ИD-^ {Ldkc"{ˑ=&q@@>Cq)YD>E3 [@>E3iyaeMx f-Z-8Z=e9M>yݜF@l#mH?Kihy1ҎFb+ԑ |c3F9F#7F##ƌcH1!̥#gƈ1H=cę9>1RD9󍹍+-fs3Gnf3F9F#Ƭ"cC+?ߘlq0cĘcĘ9r3k1b1b1fsX(,m;V(7P?#z_q"mw`z|ÚwM,f~F~:Z?kFE5, ]`͌f c/4k4RU|$3.vsohSaAB~h~ǎFhִz~ d2-Eb%4kEGkmh}tE4n5M|=aB;hcb(4k:@wE/}3^<1satε۳>I`A&GR0wIؿOQu}N5h=u |z|OcdgXy۶ +;,_0 7k3M༿Dz,ٷqž<|d8lͺM༿Dzp?,pw SpeV.<cB`jg%cp0>x|$8,vf_NFp_"=Ve/,Wn`\mqeqς0H CH&3xp-,[&d.fe1,j07Ʃؕ@!Lqu a\FT7 fJݎ+M/޷"wZh!A?C/A~iY 1 <qVƢ4",YIsCk1#0B3 +U1\o{Wl}J뭴\Z!Ybnج_O;'7wӛs[i"]|_O'7wS"VZ .-W9p=YV<檶VZ .'6]/ʜֆp.yI|t=*:煮>?6T5|t1oS`$>6׻Ei9P+j#,7:煮N}0 qև[̓I|ONGdJ0|'aem,J#g\OMzFSl M}vp=U_^KW_FClpfx+M;V\﵇%%h1v7H>o'j۴c^Ly_RehxfyvI|6X9/p=YI剢5b?8p=vI|6Xq"jxT(Z!^_FCa7M;b$K_?9-3cR]bf!} 6mdeזՋon&t17T7[*fBKx Z]-rSkCyԌN.x'vWU.t+:煮>P]GCyMU0ȟz܊p +6ɖOWbzSE 0ˮΨxܳ>PU|h>^yԎX<Af\dy׎X<v4U3ڱz?Tjm~/[}:~<ωק/ߟvvݾkeo]{??~Cޟ#aYaX)'Wk3{ο*{ endstream endobj -1270 0 obj +1294 0 obj << /Filter /FlateDecode /Subtype /Type1C @@ -13598,7 +13751,7 @@ r ^Ƀ]W$g]Q y%Nԭ UOC\un_~C *%4vܢ%‰كl0^2F~ 996=/ `/v pć0e4:G*,-%| 4Ttuu$5ۇ+J\fo[qC +E'l>h,@[hZBAMr eJ}xsi@B`_)y`mqGz۽bM| tZ) ŽuNcpMSWo3r#]a5Ϳ+Wy{?q*>;^Z9 yƇŒp'\h"ղkpxتTR)oǤp!UK͝Q,K endstream endobj -1271 0 obj +1295 0 obj << /Filter /FlateDecode /Subtype /Type1C @@ -13671,1162 +13824,835 @@ k OWk'T_Pi줮$1R(l?弣 endstream endobj -1277 0 obj +1298 0 obj << -/Length 9388 +/Length 3050 >> stream 0 g 0 G 0 g 0 G -BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 124.986 706.129 Td [(gather)-375(|)-375(Gather)-375(Global)-375(Dense)-375(Matrix)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(These)-384(subroutines)-384(collect)-385(the)-384(p)-28(orti)1(ons)-385(of)-384(global)-384(dense)-384(matrix)-384(distributed)-384(o)28(v)27(er)]TJ 0 -11.956 Td [(all)-333(pro)-28(cess)-334(in)28(to)-333(one)-333(single)-334(arra)28(y)-333(stored)-334(on)-333(one)-333(pro)-28(cess.)]TJ/F11 9.9626 Tf 120.435 -22.804 Td [(g)-36(l)-20(ob)]TJ -ET -q -1 0 0 1 238.311 653.179 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F11 9.9626 Tf 241.299 652.98 Td [(x)]TJ/F14 9.9626 Tf 8.462 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(col)-20(l)-19(ect)]TJ/F8 9.9626 Tf 28.025 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(l)-20(oc)]TJ -ET -q -1 0 0 1 307.298 653.179 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F11 9.9626 Tf 310.287 652.98 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F8 9.9626 Tf 3.316 1.494 Td [(\051)]TJ -219.402 -20.867 Td [(where:)]TJ 0 g 0 G -/F11 9.9626 Tf 0 -19.085 Td [(g)-36(l)-20(ob)]TJ -ET -q -1 0 0 1 117.965 613.227 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q +0 g 0 G +0 g 0 G BT -/F11 9.9626 Tf 121.403 613.028 Td [(x)]TJ +/F46 8.9664 Tf 205.966 645.656 Td [(Pro)-29(cess)-342(0)-8224(Pro)-28(cess)-343(1)]TJ -33.967 -10.959 Td [(I)-1333(GLOB\050I\051)-1334(X\050I\051)-4656(I)-1334(GLOB\050I\051)-1333(X\050I\051)]TJ -1.281 -10.959 Td [(1)-4966(1)-1961(1.0)-4514(1)-4452(33)-1961(2.0)]TJ 0 -10.959 Td [(2)-4966(2)-1961(1.0)-4514(2)-4452(34)-1961(2.0)]TJ 0 -10.959 Td [(3)-4966(3)-1961(1.0)-4514(3)-4452(35)-1961(2.0)]TJ 0 -10.959 Td [(4)-4966(4)-1961(1.0)-4514(4)-4452(36)-1961(2.0)]TJ 0 -10.959 Td [(5)-4966(5)-1961(1.0)-4514(5)-4452(37)-1961(2.0)]TJ 0 -10.959 Td [(6)-4966(6)-1961(1.0)-4514(6)-4452(38)-1961(2.0)]TJ 0 -10.959 Td [(7)-4966(7)-1961(1.0)-4514(7)-4452(39)-1961(2.0)]TJ 0 -10.958 Td [(8)-4966(8)-1961(1.0)-4514(8)-4452(40)-1961(2.0)]TJ 0 -10.959 Td [(9)-4966(9)-1961(1.0)-4514(9)-4452(41)-1961(2.0)]TJ -4.608 -10.959 Td [(10)-4452(10)-1961(1.0)-4000(10)-4452(42)-1961(2.0)]TJ 0 -10.959 Td [(11)-4452(11)-1961(1.0)-4000(11)-4452(43)-1961(2.0)]TJ 0 -10.959 Td [(12)-4452(12)-1961(1.0)-4000(12)-4452(44)-1961(2.0)]TJ 0 -10.959 Td [(13)-4452(13)-1961(1.0)-4000(13)-4452(45)-1961(2.0)]TJ 0 -10.959 Td [(14)-4452(14)-1961(1.0)-4000(14)-4452(46)-1961(2.0)]TJ 0 -10.959 Td [(15)-4452(15)-1961(1.0)-4000(15)-4452(47)-1961(2.0)]TJ 0 -10.959 Td [(16)-4452(16)-1961(1.0)-4000(16)-4452(48)-1961(2.0)]TJ 0 -10.959 Td [(17)-4452(17)-1961(1.0)-4000(17)-4452(49)-1961(2.0)]TJ 0 -10.958 Td [(18)-4452(18)-1961(1.0)-4000(18)-4452(50)-1961(2.0)]TJ 0 -10.959 Td [(19)-4452(19)-1961(1.0)-4000(19)-4452(51)-1961(2.0)]TJ 0 -10.959 Td [(20)-4452(20)-1961(1.0)-4000(20)-4452(52)-1961(2.0)]TJ 0 -10.959 Td [(21)-4452(21)-1961(1.0)-4000(21)-4452(53)-1961(2.0)]TJ 0 -10.959 Td [(22)-4452(22)-1961(1.0)-4000(22)-4452(54)-1961(2.0)]TJ 0 -10.959 Td [(23)-4452(23)-1961(1.0)-4000(23)-4452(55)-1961(2.0)]TJ 0 -10.959 Td [(24)-4452(24)-1961(1.0)-4000(24)-4452(56)-1961(2.0)]TJ 0 -10.959 Td [(25)-4452(25)-1961(1.0)-4000(25)-4452(57)-1961(2.0)]TJ 0 -10.959 Td [(26)-4452(26)-1961(1.0)-4000(26)-4452(58)-1961(2.0)]TJ 0 -10.959 Td [(27)-4452(27)-1961(1.0)-4000(27)-4452(59)-1961(2.0)]TJ 0 -10.958 Td [(28)-4452(28)-1961(1.0)-4000(28)-4452(60)-1961(2.0)]TJ 0 -10.959 Td [(29)-4452(29)-1961(1.0)-4000(29)-4452(61)-1961(2.0)]TJ 0 -10.959 Td [(30)-4452(30)-1961(1.0)-4000(30)-4452(62)-1961(2.0)]TJ 0 -10.959 Td [(31)-4452(31)-1961(1.0)-4000(31)-4452(63)-1961(2.0)]TJ 0 -10.959 Td [(32)-4452(32)-1961(1.0)-4000(32)-4452(64)-1961(2.0)]TJ 0 -10.959 Td [(33)-4452(33)-1961(2.0)-4000(33)-4452(25)-1961(1.0)]TJ 0 -10.959 Td [(34)-4452(34)-1961(2.0)-4000(34)-4452(26)-1961(1.0)]TJ 0 -10.959 Td [(35)-4452(35)-1961(2.0)-4000(35)-4452(27)-1961(1.0)]TJ 0 -10.959 Td [(36)-4452(36)-1961(2.0)-4000(36)-4452(28)-1961(1.0)]TJ 0 -10.959 Td [(37)-4452(37)-1961(2.0)-4000(37)-4452(29)-1961(1.0)]TJ 0 -10.958 Td [(38)-4452(38)-1961(2.0)-4000(38)-4452(30)-1961(1.0)]TJ 0 -10.959 Td [(39)-4452(39)-1961(2.0)-4000(39)-4452(31)-1961(1.0)]TJ 0 -10.959 Td [(40)-4452(40)-1961(2.0)-4000(40)-4452(32)-1961(1.0)]TJ +0 g 0 G +0 g 0 G +/F8 9.9626 Tf 100.66 -105.903 Td [(61)]TJ 0 g 0 G -/F8 9.9626 Tf 10.675 0 Td [(is)-333(the)-334(global)-333(submatrix)]TJ/F11 9.9626 Tf 103.916 0 Td [(g)-36(l)-20(ob)]TJ ET -q -1 0 0 1 253.974 613.227 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F11 9.9626 Tf 256.963 613.028 Td [(x)]TJ/F7 6.9738 Tf 5.694 -1.494 Td [(1:)]TJ/F10 6.9738 Tf 6.227 0 Td [(m;)]TJ/F7 6.9738 Tf 9.436 0 Td [(1:)]TJ/F10 6.9738 Tf 6.226 0 Td [(n)]TJ + +endstream +endobj +1307 0 obj +<< +/Length 8492 +>> +stream 0 g 0 G -/F11 9.9626 Tf -184.651 -18.011 Td [(l)-20(oc)]TJ +0 g 0 G +BT +/F16 11.9552 Tf 150.705 706.129 Td [(5.2)-1125(psb)]TJ ET q -1 0 0 1 112.892 593.722 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 202.396 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F11 9.9626 Tf 116.329 593.523 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(o)31(vrl)-375(|)-375(Ov)31(erlap)-375(Up)-31(date)]TJ/F8 9.9626 Tf -55.726 -18.389 Td [(These)-333(subroutines)-334(applies)-333(an)-333(o)27(v)28(erlap)-333(op)-28(erator)-333(to)-333(the)-334(input)-333(v)28(ector:)]TJ/F11 9.9626 Tf 154.475 -22.077 Td [(x)]TJ/F14 9.9626 Tf 8.461 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(Qx)]TJ/F8 9.9626 Tf -175.666 -20.14 Td [(where:)]TJ 0 g 0 G -/F8 9.9626 Tf 8.298 1.494 Td [(is)-333(the)-334(lo)-27(c)-1(al)-333(p)-28(ortion)-333(of)-333(global)-333(dense)-334(matrix)-333(on)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 234.704 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(.)]TJ +/F11 9.9626 Tf 0 -18.503 Td [(x)]TJ 0 g 0 G -/F11 9.9626 Tf -268.562 -19.505 Td [(col)-20(l)-19(ect)]TJ +/F8 9.9626 Tf 10.675 0 Td [(is)-333(the)-334(global)-333(dense)-333(submatrix)]TJ/F11 9.9626 Tf 131.092 0 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 33.007 0 Td [(is)-333(the)-334(collect)-333(function.)]TJ + -141.767 -19.214 Td [(Q)]TJ +0 g 0 G +/F8 9.9626 Tf 12.857 0 Td [(is)-333(the)-334(o)28(v)28(erlap)-333(op)-28(erator;)-333(it)-334(is)-333(the)-333(co)-1(mp)-27(osition)-334(of)-333(t)28(w)28(o)-334(op)-27(erators)]TJ/F11 9.9626 Tf 271.842 0 Td [(P)]TJ/F10 6.9738 Tf 6.396 -1.494 Td [(a)]TJ/F8 9.9626 Tf 8.141 1.494 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(P)]TJ/F10 6.9738 Tf 7.78 3.616 Td [(T)]TJ/F8 9.9626 Tf 6.276 -3.616 Td [(.)]TJ 0 g 0 G 0 g 0 G 0 g 0 G ET q -1 0 0 1 177.988 555.154 cm +1 0 0 1 228.797 587.879 cm []0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q BT -/F11 9.9626 Tf 183.966 546.587 Td [(x)]TJ/F10 6.9738 Tf 5.693 -1.495 Td [(i)]TJ/F11 9.9626 Tf 3.317 1.495 Td [(;)-167(y)]TJ/F27 9.9626 Tf 111.399 0 Td [(Subroutine)]TJ +/F11 9.9626 Tf 234.775 579.311 Td [(x)]TJ/F27 9.9626 Tf 120.41 0 Td [(Subroutine)]TJ ET q -1 0 0 1 177.988 542.801 cm +1 0 0 1 228.797 575.525 cm []0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q BT -/F8 9.9626 Tf 183.966 534.233 Td [(In)28(teger)-9028(psb)]TJ -ET -q -1 0 0 1 319.972 534.432 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 322.961 534.233 Td [(gather)]TJ -138.995 -11.955 Td [(Short)-333(Precision)-333(R)-1(eal)-3102(psb)]TJ +/F8 9.9626 Tf 234.775 566.957 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ ET q -1 0 0 1 319.972 522.477 cm +1 0 0 1 370.782 567.156 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 322.961 522.278 Td [(gather)]TJ -138.995 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(p)1(s)-1(b)]TJ +/F8 9.9626 Tf 373.771 566.957 Td [(o)28(vrl)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ ET q -1 0 0 1 319.972 510.522 cm +1 0 0 1 370.782 555.201 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 322.961 510.323 Td [(gather)]TJ -138.995 -11.956 Td [(Short)-333(Precision)-333(C)-1(omplex)-1200(p)1(s)-1(b)]TJ +/F8 9.9626 Tf 373.771 555.002 Td [(o)28(vrl)]TJ -138.996 -11.955 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ ET q -1 0 0 1 319.972 498.567 cm +1 0 0 1 370.782 543.246 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 322.961 498.367 Td [(gather)]TJ -138.995 -11.955 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ +/F8 9.9626 Tf 373.771 543.047 Td [(o)28(vrl)]TJ -138.996 -11.956 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ ET q -1 0 0 1 319.972 486.612 cm +1 0 0 1 370.782 531.291 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 322.961 486.412 Td [(gather)]TJ +/F8 9.9626 Tf 373.771 531.091 Td [(o)28(vrl)]TJ ET q -1 0 0 1 177.988 482.626 cm +1 0 0 1 228.797 527.306 cm []0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q 0 g 0 G BT -/F8 9.9626 Tf 225.577 454.587 Td [(T)83(able)-333(16:)-444(Data)-334(t)28(yp)-28(es)]TJ +/F8 9.9626 Tf 276.386 499.266 Td [(T)83(able)-333(18:)-444(Data)-334(t)28(yp)-28(es)]TJ 0 g 0 G 0 g 0 G -/F27 9.9626 Tf -124.305 -30.984 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.738 0 Td [(p)-123(s)-123(b)]TJ -ET -q -1 0 0 1 150.286 423.802 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 154.501 423.603 Td [(g)-123(a)-123(t)-123(h)-123(e)-123(r)-229(\050)-215(g)-110(l)-110(o)-110(b)]TJ -ET -q -1 0 0 1 219.873 423.802 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 223.956 423.603 Td [(x)-381(,)-888(l)-127(o)-127(c)]TJ -ET -q -1 0 0 1 261.2 423.802 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 265.456 423.603 Td [(x)-415(,)-874(d)-113(e)-112(s)-113(c)]TJ +/F27 9.9626 Tf -124.304 -28.465 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.881 0 Td [(p)-137(s)-138(b)]TJ ET q -1 0 0 1 309.731 423.802 cm +1 0 0 1 201.669 471 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 313.842 423.603 Td [(a)-386(,)-888(i)-127(n)-127(f)-127(o)-415(,)-885(r)-124(o)-123(o)-124(t)-230(\051)]TJ/F27 9.9626 Tf -212.57 -11.956 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.738 0 Td [(p)-123(s)-123(b)]TJ +/F8 9.9626 Tf 206.027 470.801 Td [(o)-137(v)-138(r)-137(l)-243(\050)-130(x)-209(,)-874(d)-113(e)-112(s)-113(c)]TJ ET q -1 0 0 1 150.286 411.847 cm +1 0 0 1 276.854 471 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 154.501 411.647 Td [(g)-123(a)-123(t)-123(h)-123(e)-123(r)-229(\050)-215(g)-110(l)-110(o)-110(b)]TJ +/F8 9.9626 Tf 280.965 470.801 Td [(a)-386(,)-914(i)-152(n)-152(f)-152(o)-258(\051)]TJ/F27 9.9626 Tf -128.883 -11.955 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.881 0 Td [(p)-137(s)-138(b)]TJ ET q -1 0 0 1 219.873 411.847 cm +1 0 0 1 201.669 459.045 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 223.956 411.647 Td [(x)-381(,)-888(l)-127(o)-127(c)]TJ +/F8 9.9626 Tf 206.027 458.846 Td [(o)-137(v)-138(r)-137(l)-243(\050)-130(x)-209(,)-874(d)-113(e)-112(s)-113(c)]TJ ET q -1 0 0 1 261.2 411.847 cm +1 0 0 1 276.854 459.045 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 265.456 411.647 Td [(x)-415(,)-874(d)-113(e)-112(s)-113(c)]TJ +/F8 9.9626 Tf 280.965 458.846 Td [(a)-386(,)-888(i)-127(n)-127(f)-127(o)-415(,)-846(u)-86(p)-86(d)-86(a)-85(t)-86(e)3(=)-13(u)-101(p)-102(d)-102(a)-102(t)-102(e)]TJ ET q -1 0 0 1 309.731 411.847 cm +1 0 0 1 415.44 459.045 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 313.842 411.647 Td [(a)-386(,)-888(i)-127(n)-127(f)-127(o)-415(,)-885(r)-124(o)-123(o)-124(t)-230(\051)]TJ +/F8 9.9626 Tf 419.443 458.846 Td [(t)-102(y)-102(p)-101(e)-365(,)-813(w)-52(o)-51(r)-52(k)37(=)38(w)-52(o)-52(r)-51(k)-158(\051)]TJ 0 g 0 G 0 g 0 G 0 g 0 G -/F27 9.9626 Tf -213.947 -26.424 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -268.738 -25.406 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.505 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.214 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.505 Td [(lo)-32(c)]TJ -ET -q -1 0 0 1 114.904 346.412 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 118.341 346.213 Td [(x)]TJ + 0 -19.214 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.118 0 Td [(g)-36(l)-19(o)-1(b)]TJ -ET -q -1 0 0 1 323.467 346.412 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F11 9.9626 Tf 326.456 346.213 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -207.348 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)27(o)-254(arra)27(y)-254(or)-255(an)-255(ob)-55(jec)-1(t)-254(of)-255(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 11.028 0 Td [(global)-333(dense)-334(matrix)]TJ/F11 9.9626 Tf 88.917 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -80.732 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)28(o)-255(arra)28(y)-255(or)-255(an)-255(ob)-55(ject)-255(of)-255(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 244.743 0 Td [(psb)]TJ +/F30 9.9626 Tf 244.742 0 Td [(psb)]TJ ET q -1 0 0 1 385.864 298.592 cm +1 0 0 1 436.673 347.39 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 389.002 298.392 Td [(T)]TJ +/F30 9.9626 Tf 439.811 347.191 Td [(T)]TJ ET q -1 0 0 1 394.86 298.592 cm +1 0 0 1 445.669 347.39 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 397.998 298.392 Td [(vect)]TJ +/F30 9.9626 Tf 448.807 347.191 Td [(vect)]TJ ET q -1 0 0 1 419.547 298.592 cm +1 0 0 1 470.356 347.39 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 422.685 298.392 Td [(type)]TJ +/F30 9.9626 Tf 473.495 347.191 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf -297.883 -11.955 Td [(indicated)-333(in)-334(T)84(able)]TJ +/F8 9.9626 Tf -297.884 -11.955 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(t)27(yp)-27(e)-334(sp)-27(ec)-1(i)1(\014ed)-334(in)-333(T)83(able)]TJ 0 0 1 rg 0 0 1 RG - [-334(16)]TJ + [-333(18)]TJ 0 g 0 G [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.505 Td [(desc)]TJ -ET -q -1 0 0 1 121.81 267.131 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 125.247 266.932 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ -ET -q -1 0 0 1 312.036 219.311 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 315.174 219.111 Td [(desc)]TJ -ET -q -1 0 0 1 336.723 219.311 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 339.861 219.111 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -260.887 -19.505 Td [(ro)-32(ot)]TJ -0 g 0 G -/F8 9.9626 Tf 25.931 0 Td [(The)-291(pro)-28(cess)-291(that)-291(holds)-291(the)-291(global)-291(cop)28(y)83(.)-430(If)]TJ/F11 9.9626 Tf 182.522 0 Td [(r)-28(oot)]TJ/F8 9.9626 Tf 20.795 0 Td [(=)]TJ/F14 9.9626 Tf 10.516 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-291(all)-291(the)-291(pro)-28(cesses)-291(will)]TJ -222.606 -11.955 Td [(ha)28(v)28(e)-334(a)-333(cop)28(y)-334(of)-333(the)-333(global)-334(v)28(ector.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable)]TJ/F14 9.9626 Tf 142.079 0 Td [(\000)]TJ/F8 9.9626 Tf 7.748 0 Td [(1)]TJ/F14 9.9626 Tf 7.749 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)]TJ/F14 9.9626 Tf 20.795 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1,)-333(default)]TJ/F14 9.9626 Tf 44.555 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1.)]TJ -0 g 0 G -/F27 9.9626 Tf -299.783 -19.505 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G -/F8 9.9626 Tf 166.875 -29.888 Td [(61)]TJ -0 g 0 G -ET - -endstream -endobj -1286 0 obj -<< -/Length 1459 ->> -stream -0 g 0 G -0 g 0 G -0 g 0 G -BT -/F27 9.9626 Tf 150.705 706.129 Td [(glob)]TJ -ET -q -1 0 0 1 172.397 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 175.834 706.129 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(The)-333(arra)27(y)-333(where)-333(the)-334(lo)-27(cal)-334(parts)-333(m)28(ust)-334(b)-27(e)-334(gathered.)]TJ -11.251 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(or)-333(t)28(w)28(o)-334(arra)28(y)-333(with)-333(the)]TJ/F30 9.9626 Tf 204.401 0 Td [(ALLOCATABLE)]TJ/F8 9.9626 Tf 60.855 0 Td [(attribute.)]TJ -0 g 0 G -/F27 9.9626 Tf -290.162 -19.925 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ -0 g 0 G - 141.968 -500.124 Td [(62)]TJ -0 g 0 G -ET - -endstream -endobj -1292 0 obj -<< -/Length 7828 ->> -stream -0 g 0 G -0 g 0 G -BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 124.986 706.129 Td [(scatter)-375(|)-375(Scatter)-375(Global)-375(Dense)-375(Matrix)]TJ/F8 9.9626 Tf -25.091 -19.28 Td [(These)-315(subroutines)-315(scatters)-315(the)-315(p)-28(ortions)-315(of)-315(global)-315(dense)-315(matrix)-315(o)28(wned)-315(b)27(y)-315(a)-315(pro-)]TJ 0 -11.955 Td [(cess)-334(to)-333(all)-333(the)-334(p)1(ro)-28(cesses)-334(in)-333(the)-333(pro)-28(cesses)-334(grid.)]TJ/F11 9.9626 Tf 119.021 -25.291 Td [(l)-20(oc)]TJ -ET -q -1 0 0 1 231.823 649.802 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F11 9.9626 Tf 234.812 649.603 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F14 9.9626 Tf 6.084 1.494 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(scatter)]TJ/F8 9.9626 Tf 30.853 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(g)-36(l)-19(o)-1(b)]TJ -ET -q -1 0 0 1 312.028 649.802 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F11 9.9626 Tf 315.017 649.603 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\051)]TJ -220.816 -22.875 Td [(where:)]TJ -0 g 0 G -/F11 9.9626 Tf 0 -21.361 Td [(g)-36(l)-20(ob)]TJ -ET -q -1 0 0 1 117.965 605.567 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F11 9.9626 Tf 121.403 605.367 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 10.675 0 Td [(is)-333(the)-334(global)-333(matrix)]TJ/F11 9.9626 Tf 88.917 0 Td [(g)-36(l)-19(ob)]TJ -ET -q -1 0 0 1 238.975 605.567 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F11 9.9626 Tf 241.964 605.367 Td [(x)]TJ/F7 6.9738 Tf 5.694 -1.494 Td [(1:)]TJ/F10 6.9738 Tf 6.227 0 Td [(m;)]TJ/F7 6.9738 Tf 9.435 0 Td [(1:)]TJ/F10 6.9738 Tf 6.227 0 Td [(n)]TJ -0 g 0 G -/F11 9.9626 Tf -169.652 -20.345 Td [(l)-20(oc)]TJ -ET -q -1 0 0 1 112.892 583.727 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F11 9.9626 Tf 116.329 583.528 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ -0 g 0 G -/F8 9.9626 Tf 8.298 1.494 Td [(is)-333(the)-334(lo)-27(c)-1(al)-333(p)-28(ortion)-333(of)-333(global)-333(dense)-334(matrix)-333(on)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 234.704 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(.)]TJ -0 g 0 G -/F11 9.9626 Tf -268.562 -21.839 Td [(scatter)]TJ -0 g 0 G -/F8 9.9626 Tf 35.835 0 Td [(is)-333(the)-334(scatter)-333(function.)]TJ -0 g 0 G -0 g 0 G -0 g 0 G +/F27 9.9626 Tf -24.906 -19.214 Td [(desc)]TJ ET q -1 0 0 1 177.988 539.65 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +1 0 0 1 172.619 316.221 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F11 9.9626 Tf 183.966 531.082 Td [(x)]TJ/F10 6.9738 Tf 5.693 -1.494 Td [(i)]TJ/F11 9.9626 Tf 3.317 1.494 Td [(;)-167(y)]TJ/F27 9.9626 Tf 111.399 0 Td [(Subroutine)]TJ +/F27 9.9626 Tf 176.057 316.022 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.55 0 Td [(con)28(tains)-334(data)-333(structures)-333(for)-333(c)-1(omm)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 177.988 527.296 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +1 0 0 1 362.845 268.401 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 183.966 518.729 Td [(In)28(teger)-9028(psb)]TJ +/F30 9.9626 Tf 365.983 268.201 Td [(desc)]TJ ET q -1 0 0 1 319.972 518.928 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 387.532 268.401 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 322.961 518.729 Td [(scatter)]TJ -138.995 -11.956 Td [(Short)-333(Precision)-333(R)-1(eal)-3102(psb)]TJ +/F30 9.9626 Tf 390.67 268.201 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -260.887 -19.214 Td [(up)-32(date)]TJ +0 g 0 G +/F8 9.9626 Tf 39.67 0 Td [(Up)-28(date)-333(op)-28(erator.)]TJ +0 g 0 G +/F27 9.9626 Tf -14.764 -31.169 Td [(up)-32(date)-383(=)-384(psb)]TJ ET q -1 0 0 1 319.972 506.973 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 244.786 218.017 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F8 9.9626 Tf 322.961 506.773 Td [(scatter)]TJ -138.995 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(p)1(s)-1(b)]TJ +/F27 9.9626 Tf 248.223 217.818 Td [(none)]TJ ET q -1 0 0 1 319.972 495.017 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 272.62 218.017 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q +0 g 0 G BT -/F8 9.9626 Tf 322.961 494.818 Td [(scatter)]TJ -138.995 -11.955 Td [(Short)-333(Precision)-333(C)-1(omplex)-1200(p)1(s)-1(b)]TJ +/F8 9.9626 Tf 281.039 217.818 Td [(Do)-333(nothing;)]TJ +0 g 0 G +/F27 9.9626 Tf -105.428 -15.229 Td [(up)-32(date)-383(=)-384(psb)]TJ ET q -1 0 0 1 319.972 483.062 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 244.786 202.789 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F8 9.9626 Tf 322.961 482.863 Td [(scatter)]TJ -138.995 -11.955 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ +/F27 9.9626 Tf 248.223 202.589 Td [(add)]TJ ET q -1 0 0 1 319.972 471.107 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 267.21 202.789 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q +0 g 0 G BT -/F8 9.9626 Tf 322.961 470.908 Td [(scatter)]TJ +/F8 9.9626 Tf 275.628 202.589 Td [(Sum)-333(o)27(v)28(erlap)-333(en)28(tries,)-334(i.e.)-444(apply)]TJ/F11 9.9626 Tf 136.544 0 Td [(P)]TJ/F10 6.9738 Tf 7.78 3.616 Td [(T)]TJ/F8 9.9626 Tf 6.276 -3.616 Td [(;)]TJ +0 g 0 G +/F27 9.9626 Tf -250.617 -15.229 Td [(up)-32(date)-383(=)-384(psb)]TJ ET q -1 0 0 1 177.988 467.122 cm -[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +1 0 0 1 244.786 187.56 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q -0 g 0 G BT -/F8 9.9626 Tf 225.577 439.083 Td [(T)83(able)-333(17:)-444(Data)-334(t)28(yp)-28(es)]TJ -0 g 0 G -0 g 0 G -/F27 9.9626 Tf -124.305 -33.261 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.991 0 Td [(p)-148(s)-149(b)]TJ +/F27 9.9626 Tf 248.223 187.36 Td [(a)32(vg)]TJ ET q -1 0 0 1 151.298 406.021 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 265.937 187.56 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q +0 g 0 G BT -/F8 9.9626 Tf 155.766 405.822 Td [(s)-148(c)-149(a)-148(t)-149(t)-148(e)-149(r)-254(\050)-215(g)-110(l)-110(o)-110(b)]TJ +/F8 9.9626 Tf 274.355 187.36 Td [(Av)28(erage)-334(o)28(v)28(erlap)-333(en)27(tries,)-333(i.e.)-444(apply)]TJ/F11 9.9626 Tf 152.346 0 Td [(P)]TJ/F10 6.9738 Tf 6.396 -1.494 Td [(a)]TJ/F11 9.9626 Tf 4.82 1.494 Td [(P)]TJ/F10 6.9738 Tf 7.78 3.616 Td [(T)]TJ/F8 9.9626 Tf 6.276 -3.616 Td [(;)]TJ -276.362 -19.214 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(update)]TJ ET q -1 0 0 1 225.851 406.021 cm +1 0 0 1 245.048 144.435 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 229.934 405.822 Td [(x)-381(,)-888(l)-127(o)-127(c)]TJ +/F11 9.9626 Tf 248.037 144.236 Td [(ty)-36(pe)]TJ/F8 9.9626 Tf 21.258 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(psb)]TJ ET q -1 0 0 1 267.178 406.021 cm +1 0 0 1 294.367 144.435 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 271.433 405.822 Td [(x)-415(,)-874(d)-113(e)-112(s)-113(c)]TJ +/F11 9.9626 Tf 297.356 144.236 Td [(av)-36(g)]TJ ET q -1 0 0 1 315.709 406.021 cm +1 0 0 1 313.516 144.435 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 319.82 405.822 Td [(a)-386(,)-888(i)-127(n)-127(f)-127(o)-415(,)-864(r)-103(o)-103(o)-104(t)-367(,)-808(m)-47(o)-46(l)-47(d)-152(\051)]TJ +/F8 9.9626 Tf 175.611 132.281 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G + 141.968 -29.888 Td [(62)]TJ 0 g 0 G +ET + +endstream +endobj +1319 0 obj +<< +/Length 5866 +>> +stream 0 g 0 G -/F27 9.9626 Tf -219.925 -30.766 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -21.84 Td [(On)-383(En)32(try)]TJ +BT +/F27 9.9626 Tf 99.895 706.129 Td [(w)32(ork)]TJ 0 g 0 G +/F8 9.9626 Tf 29.432 0 Td [(the)-333(w)27(ork)-333(arra)28(y)83(.)]TJ -4.525 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(one)-333(dimensional)-334(ar)1(ra)27(y)-333(of)-333(the)-334(same)-333(t)28(yp)-28(e)-333(of)]TJ/F11 9.9626 Tf 252.609 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ 0 g 0 G - 0 -21.839 Td [(glob)]TJ -ET -q -1 0 0 1 121.587 331.576 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 125.024 331.377 Td [(x)]TJ +/F27 9.9626 Tf -283.21 -19.925 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(The)-333(arra)27(y)-333(that)-333(m)28(ust)-334(b)-27(e)-334(scattered)-333(in)28(to)-334(lo)-28(cal)-333(pieces.)]TJ -11.25 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(or)-334(t)28(w)28(o)-334(arra)28(y)84(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -21.839 Td [(desc)]TJ -ET -q -1 0 0 1 121.81 261.916 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 125.247 261.717 Td [(a)]TJ + 0 -19.925 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 11.028 0 Td [(global)-333(dense)-334(result)-333(matrix)]TJ/F11 9.9626 Tf 116.674 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -108.489 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-474(as:)-727(an)-475(arra)28(y)-474(of)-475(rank)-475(on)1(e)-475(or)-475(t)28(w)28(o)-475(con)28(taining)-474(n)27(u)1(m)27(b)-27(e)-1(r)1(s)-475(of)-475(t)28(yp)-28(e)]TJ 0 -11.955 Td [(sp)-28(eci\014ed)-333(in)-333(T)83(able)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ + [-333(18)]TJ +0 g 0 G + [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.926 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ +0 g 0 G +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ +0 g 0 G + [-500(If)-316(there)-316(is)-317(no)-316(o)28(v)28(erlap)-316(in)-316(the)-317(data)-316(distribution)-316(asso)-28(ciated)-316(with)-316(the)-316(descrip-)]TJ 12.73 -11.955 Td [(tor,)-333(no)-334(op)-27(erations)-334(are)-333(p)-28(erformed;)]TJ +0 g 0 G + -12.73 -19.926 Td [(2.)]TJ +0 g 0 G + [-500(The)-351(op)-27(erator)]TJ/F11 9.9626 Tf 73.737 0 Td [(P)]TJ/F10 6.9738 Tf 7.78 3.616 Td [(T)]TJ/F8 9.9626 Tf 9.77 -3.616 Td [(p)-28(erforms)-350(the)-351(reduction)-351(sum)-350(of)-351(o)28(v)27(erlap)-350(elemen)28(ts)-1(;)-359(it)-351(i)1(s)-351(a)]TJ -78.557 -11.955 Td [(\134prolongation")-365(op)-28(erator)]TJ/F11 9.9626 Tf 108.923 0 Td [(P)]TJ/F10 6.9738 Tf 7.78 3.615 Td [(T)]TJ/F8 9.9626 Tf 9.914 -3.615 Td [(that)-365(replicates)-365(o)27(v)28(erlap)-365(elemen)28(ts,)-373(accoun)27(tin)1(g)]TJ -126.617 -11.955 Td [(for)-333(the)-334(ph)28(ysical)-333(replication)-333(of)-334(data;)]TJ +0 g 0 G + -12.73 -19.925 Td [(3.)]TJ +0 g 0 G + [-500(The)-255(op)-28(erator)]TJ/F11 9.9626 Tf 71.84 0 Td [(P)]TJ/F10 6.9738 Tf 6.397 -1.495 Td [(a)]TJ/F8 9.9626 Tf 7.364 1.495 Td [(p)-28(erforms)-255(a)-256(scaling)-255(on)-256(the)-255(o)28(v)27(erlap)-255(elemen)28(ts)-256(b)28(y)-256(the)-255(amoun)28(t)]TJ -72.871 -11.956 Td [(of)-290(r)1(e)-1(pl)1(ic)-1(ati)1(on;)-305(th)28(us,)-298(when)-290(com)28(bined)-289(with)-290(the)-289(reduction)-290(op)-28(erator,)-298(it)-289(im)-1(p)1(le-)]TJ 0 -11.955 Td [(men)28(ts)-334(the)-333(a)28(v)28(erage)-334(of)-333(replicated)-333(elem)-1(en)28(ts)-333(o)28(v)27(er)-333(all)-333(of)-333(their)-334(instances.)]TJ/F16 11.9552 Tf -24.907 -19.925 Td [(Example)-388(of)-388(use)]TJ/F8 9.9626 Tf 93.469 0 Td [(Consider)-345(the)-344(discretization)-345(mesh)-345(d)1(e)-1(p)1(icte)-1(d)-344(in)-345(\014g.)]TJ +0 0 1 rg 0 0 1 RG + [-344(8)]TJ +0 g 0 G + [(,)-348(parti-)]TJ -93.469 -11.955 Td [(tioned)-330(among)-330(t)28(w)27(o)-330(pro)-27(c)-1(esses)-330(as)-330(sho)28(wn)-330(b)27(y)-330(the)-330(dashed)-330(lines,)-331(with)-330(an)-330(o)28(v)28(erlap)-330(of)-330(1)]TJ 0 -11.955 Td [(extra)-360(la)28(y)28(er)-360(with)-359(resp)-28(ect)-360(to)-359(the)-360(partition)-359(of)-360(\014g.)]TJ +0 0 1 rg 0 0 1 RG + [-359(7)]TJ +0 g 0 G + [(;)-373(the)-359(data)-360(distribution)-359(is)-360(suc)28(h)]TJ 0 -11.956 Td [(that)-351(eac)27(h)-351(pro)-28(cess)-351(will)-352(o)28(wn)-351(40)-352(en)28(tries)-351(in)-351(the)-352(index)-351(space,)-356(with)-351(an)-352(o)28(v)28(erlap)-351(of)-352(16)]TJ 0 -11.955 Td [(en)28(tries)-326(placed)-325(a)-1(t)-325(lo)-28(cal)-325(indices)-326(25)-326(through)-325(40;)-328(the)-326(halo)-325(w)-1(il)1(l)-326(run)-326(fr)1(om)-326(lo)-28(cal)-326(in)1(dex)]TJ 0 -11.955 Td [(41)-290(through)-291(lo)-27(cal)-291(index)-290(48..)-430(If)-291(pro)-27(cess)-291(0)-290(assigns)-291(an)-290(initial)-290(v)55(alue)-290(of)-291(1)-290(to)-290(its)-291(en)28(tries)]TJ 0 -11.955 Td [(in)-298(the)]TJ/F11 9.9626 Tf 28.079 0 Td [(x)]TJ/F8 9.9626 Tf 8.663 0 Td [(v)28(ector,)-305(and)-298(pro)-28(cess)-298(1)-298(assigns)-299(a)-298(v)56(alue)-298(of)-298(2,)-305(then)-298(after)-298(a)-298(call)-298(to)]TJ/F30 9.9626 Tf 265.127 0 Td [(psb_ovrl)]TJ/F8 9.9626 Tf -301.869 -11.955 Td [(with)]TJ/F30 9.9626 Tf 22.401 0 Td [(psb_avg_)]TJ/F8 9.9626 Tf 44.871 0 Td [(and)-304(a)-304(call)-304(to)]TJ/F30 9.9626 Tf 56.945 0 Td [(psb_halo_)]TJ/F8 9.9626 Tf 50.101 0 Td [(the)-304(con)28(ten)28(ts)-304(of)-304(the)-304(lo)-28(cal)-304(v)28(ectors)-304(will)-304(b)-28(e)]TJ -174.318 -11.955 Td [(the)-333(follo)27(win)1(g)-334(\050sho)28(wing)-333(a)-334(transition)-333(among)-333(the)-334(t)28(w)28(o)-333(sub)-28(domains\051)]TJ +0 g 0 G + 166.875 -143.462 Td [(63)]TJ +0 g 0 G ET -q -1 0 0 1 312.036 214.095 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q + +endstream +endobj +1327 0 obj +<< +/Length 3619 +>> +stream +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G BT -/F30 9.9626 Tf 315.174 213.896 Td [(desc)]TJ +/F31 7.9701 Tf 260.921 653.177 Td [(Pro)-29(ce)-1(ss)-354(0)-8986(Pro)-30(cess)-354(1)]TJ -33.381 -9.464 Td [(I)-1500(GLOB\050I\051)-1500(X\050I\051)-5180(I)-1500(GLOB\050I\051)-1500(X\050I\051)]TJ -1.185 -9.465 Td [(1)-5253(1)-2148(1)1(.)-1(0)-5031(1)-4722(33)-2147(1.5)]TJ 0 -9.464 Td [(2)-5253(2)-2148(1)1(.)-1(0)-5031(2)-4722(34)-2147(1.5)]TJ 0 -9.465 Td [(3)-5253(3)-2148(1)1(.)-1(0)-5031(3)-4722(35)-2147(1.5)]TJ 0 -9.464 Td [(4)-5253(4)-2148(1)1(.)-1(0)-5031(4)-4722(36)-2147(1.5)]TJ 0 -9.465 Td [(5)-5253(5)-2148(1)1(.)-1(0)-5031(5)-4722(37)-2147(1.5)]TJ 0 -9.464 Td [(6)-5253(6)-2148(1)1(.)-1(0)-5031(6)-4722(38)-2147(1.5)]TJ 0 -9.465 Td [(7)-5253(7)-2148(1)1(.)-1(0)-5031(7)-4722(39)-2147(1.5)]TJ 0 -9.464 Td [(8)-5253(8)-2148(1)1(.)-1(0)-5031(8)-4722(40)-2147(1.5)]TJ 0 -9.465 Td [(9)-5253(9)-2148(1)1(.)-1(0)-5031(9)-4722(41)-2147(2.0)]TJ -4.234 -9.464 Td [(10)-4722(10)-2147(1.0)-4500(10)-4722(42)-2147(2.0)]TJ 0 -9.465 Td [(11)-4722(11)-2147(1.0)-4500(11)-4722(43)-2147(2.0)]TJ 0 -9.464 Td [(12)-4722(12)-2147(1.0)-4500(12)-4722(44)-2147(2.0)]TJ 0 -9.465 Td [(13)-4722(13)-2147(1.0)-4500(13)-4722(45)-2147(2.0)]TJ 0 -9.464 Td [(14)-4722(14)-2147(1.0)-4500(14)-4722(46)-2147(2.0)]TJ 0 -9.465 Td [(15)-4722(15)-2147(1.0)-4500(15)-4722(47)-2147(2.0)]TJ 0 -9.464 Td [(16)-4722(16)-2147(1.0)-4500(16)-4722(48)-2147(2.0)]TJ 0 -9.465 Td [(17)-4722(17)-2147(1.0)-4500(17)-4722(49)-2147(2.0)]TJ 0 -9.464 Td [(18)-4722(18)-2147(1.0)-4500(18)-4722(50)-2147(2.0)]TJ 0 -9.465 Td [(19)-4722(19)-2147(1.0)-4500(19)-4722(51)-2147(2.0)]TJ 0 -9.464 Td [(20)-4722(20)-2147(1.0)-4500(20)-4722(52)-2147(2.0)]TJ 0 -9.465 Td [(21)-4722(21)-2147(1.0)-4500(21)-4722(53)-2147(2.0)]TJ 0 -9.464 Td [(22)-4722(22)-2147(1.0)-4500(22)-4722(54)-2147(2.0)]TJ 0 -9.465 Td [(23)-4722(23)-2147(1.0)-4500(23)-4722(55)-2147(2.0)]TJ 0 -9.464 Td [(24)-4722(24)-2147(1.0)-4500(24)-4722(56)-2147(2.0)]TJ 0 -9.465 Td [(25)-4722(25)-2147(1.5)-4500(25)-4722(57)-2147(2.0)]TJ 0 -9.464 Td [(26)-4722(26)-2147(1.5)-4500(26)-4722(58)-2147(2.0)]TJ 0 -9.465 Td [(27)-4722(27)-2147(1.5)-4500(27)-4722(59)-2147(2.0)]TJ 0 -9.464 Td [(28)-4722(28)-2147(1.5)-4500(28)-4722(60)-2147(2.0)]TJ 0 -9.465 Td [(29)-4722(29)-2147(1.5)-4500(29)-4722(61)-2147(2.0)]TJ 0 -9.464 Td [(30)-4722(30)-2147(1.5)-4500(30)-4722(62)-2147(2.0)]TJ 0 -9.465 Td [(31)-4722(31)-2147(1.5)-4500(31)-4722(63)-2147(2.0)]TJ 0 -9.464 Td [(32)-4722(32)-2147(1.5)-4500(32)-4722(64)-2147(2.0)]TJ 0 -9.465 Td [(33)-4722(33)-2147(1.5)-4500(33)-4722(25)-2147(1.5)]TJ 0 -9.464 Td [(34)-4722(34)-2147(1.5)-4500(34)-4722(26)-2147(1.5)]TJ 0 -9.465 Td [(35)-4722(35)-2147(1.5)-4500(35)-4722(27)-2147(1.5)]TJ 0 -9.464 Td [(36)-4722(36)-2147(1.5)-4500(36)-4722(28)-2147(1.5)]TJ 0 -9.465 Td [(37)-4722(37)-2147(1.5)-4500(37)-4722(29)-2147(1.5)]TJ 0 -9.464 Td [(38)-4722(38)-2147(1.5)-4500(38)-4722(30)-2147(1.5)]TJ 0 -9.465 Td [(39)-4722(39)-2147(1.5)-4500(39)-4722(31)-2147(1.5)]TJ 0 -9.464 Td [(40)-4722(40)-2147(1.5)-4500(40)-4722(32)-2147(1.5)]TJ 0 -9.465 Td [(41)-4722(41)-2147(2.0)-4500(41)-4722(17)-2147(1.0)]TJ 0 -9.464 Td [(42)-4722(42)-2147(2.0)-4500(42)-4722(18)-2147(1.0)]TJ 0 -9.465 Td [(43)-4722(43)-2147(2.0)-4500(43)-4722(19)-2147(1.0)]TJ 0 -9.464 Td [(44)-4722(44)-2147(2.0)-4500(44)-4722(20)-2147(1.0)]TJ 0 -9.465 Td [(45)-4722(45)-2147(2.0)-4500(45)-4722(21)-2147(1.0)]TJ 0 -9.464 Td [(46)-4722(46)-2147(2.0)-4500(46)-4722(22)-2147(1.0)]TJ 0 -9.465 Td [(47)-4722(47)-2147(2.0)-4500(47)-4722(23)-2147(1.0)]TJ 0 -9.464 Td [(48)-4722(48)-2147(2.0)-4500(48)-4722(24)-2147(1.0)]TJ +0 g 0 G +0 g 0 G +/F8 9.9626 Tf 95.458 -98.979 Td [(64)]TJ +0 g 0 G ET + +endstream +endobj +1331 0 obj +<< +/Length 325 +>> +stream +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +1 0 0 1 104.053 292.444 cm q -1 0 0 1 336.723 214.095 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +.65 0 0 .65 0 0 cm +q +1 0 0 1 0 0 cm +/Im4 Do +Q Q -BT -/F30 9.9626 Tf 339.861 213.896 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +1 0 0 1 -104.053 -292.444 cm +BT +/F8 9.9626 Tf 189.268 260.564 Td [(Figure)-333(8:)-445(Sample)-333(discretization)-333(mes)-1(h)1(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -21.839 Td [(ro)-32(ot)]TJ 0 g 0 G -/F8 9.9626 Tf 25.931 0 Td [(The)-420(pro)-27(ces)-1(s)-419(that)-420(holds)-419(the)-420(global)-420(cop)28(y)83(.)-703(If)]TJ/F11 9.9626 Tf 194.21 0 Td [(r)-28(oot)]TJ/F8 9.9626 Tf 22.228 0 Td [(=)]TJ/F14 9.9626 Tf 11.949 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-420(all)-419(the)-420(pro)-28(cesses)]TJ -237.16 -11.956 Td [(ha)28(v)28(e)-334(a)-333(cop)28(y)-334(of)-333(the)-333(global)-334(v)28(ector.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-344(as:)-468(an)-344(in)28(teger)-345(v)55(ariab)1(le)]TJ/F14 9.9626 Tf 142.757 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F14 9.9626 Tf 7.937 0 Td [(\024)]TJ/F11 9.9626 Tf 10.704 0 Td [(r)-28(oot)]TJ/F14 9.9626 Tf 20.983 0 Td [(\024)]TJ/F11 9.9626 Tf 10.705 0 Td [(np)]TJ/F14 9.9626 Tf 13.281 0 Td [(\000)]TJ/F8 9.9626 Tf 10.038 0 Td [(1,)-348(defau)1(lt)]TJ/F30 9.9626 Tf 44.81 0 Td [(psb_root_)]TJ/F8 9.9626 Tf 47.073 0 Td [(,)]TJ -316.037 -11.955 Td [(i.e.)-444(pro)-28(cess)-334(0.)]TJ 0 g 0 G - 141.968 -29.888 Td [(63)]TJ + 77.502 -170.126 Td [(65)]TJ 0 g 0 G ET endstream endobj -1301 0 obj +1314 0 obj +<< +/Type /XObject +/Subtype /Form +/FormType 1 +/PTEX.FileName (./figures/try8x8_ov.pdf) +/PTEX.PageNumber 1 +/PTEX.InfoDict 1333 0 R +/BBox [0 0 516 439] +/Resources << +/ProcSet [ /PDF /Text ] +/ExtGState << +/R7 1334 0 R +>>/Font << /R8 1335 0 R/R10 1336 0 R>> +>> +/Length 3413 +/Filter /FlateDecode +>> +stream +xA +8s^˒- Svҷj&{|I(m|%Zߟ[ynx?ף?lOgaV+_.=ݥM:߷ZKض[J'Ĵ8͞MTmi&v @%o3o{ lv #"6ف|lvD"@663_dl# Md9D.>}m= m|{DdF@6;.6CZ$ lm"nG6mdK33/ g#"\~>g#"\~N [363_dl# Md9D.>Мqht3L9.LC f4f :f 37fjL9.. ]f h33͙Z3ŌAnjAsyfALA ͠ +lA7b8tS!jq 33BĖ zG.á*jp pF.jo,*o)TwK٥[.Rr▂K-U[rC܎V8V]cz?Z+̣gD_6^=tjnf9 Y2& +\h6O`Ih]g4@h6!PN7#Cw*uAH MGۏ?>Eh!3h$Kh6!P̹mCD]jcf]Q)&2@AZ[YM +͆e|_Ŭ롾oƋ;2ї"F:#}]/~.%0Q&G@_v&a}wQU=}jj.3u˖: 2=ep?TwǕ%v>ʮm).=o|X"ȕ +כAC\Wh ]|ۚ_ܮ2/7k5Ln`1` ps%ks^Qo/ճ*׻ s[AW ]|ۚ_5U慪>ZU @oI|T=b~[ >Z k}o<@g~gU/n\nZ|S+3ع>\vTYqI;sutGD@33t'0smLFD%F푑0.zB.B"+Фz{^t[ާ@`[v ,]$>ȫjHqvEkCTi _']UWMݴ|/Z}\W_'\UkJʼ@g^*yj~œ&?n7 +> 7z3mW=򙿪Ok*#_e}0h;ׇĂUmxPyPp}gZz43cL̵1Y][Vέ5x]Oh5E_ZSYdUZR6Tl4^l]M׵6Nɋ&%ě)?'Q:V\ֆU n|œzC+wum_kC*\b[=?' G_ߙ8"*1L̵1Y=Ƣzځm,uZMuTYaU&[:ZGv_P=-F5louY*oX<M+7uys6cn:|oœԱzS7>Zj?|b+T|oœ}Ա2/P=P[1`z:b$>6uMWֆ}qwf-G>7u|M#_e^z䫬Zaꦓ9X?񶎏x0z~DDE]ׅaX!>do֫\̕w-/Iv!o'ȟ`[G. +endstream +endobj +1339 0 obj +<< +/Filter /FlateDecode +/Subtype /Type1C +/Length 13073 +>> +stream +xwxW?laό rG5hB'ZBL1`pø˶$KeK%Yr-˽w L% $$$m{Ȗ<<~4ss>s +o%!)&c攤}7#-VyR/<1cNc~G8fA>~<ެ5onݼ &.II'KO:mh4&#!.yIV̡Ԥď/<~sL\}Dsݧ<*wjM}~___;bd,`|< +) 'G;?̷с'7ɏ=, c|?1;nkc]4vƍ-p+ +|ApQg ͿؿĿɿӿI0`I@x2 0$TՀ d_ |#p]`Z`f5.b? ~򠸠 ڠ栎A烾 67P('|S8[ppp0Gh +&aGxE ! O^*8|=q?wʇRSsJjOTUBPT'uI=L&%"E0KDSEDEDEE[D"HdEuI% m}WE#!CD!lĐi!C, Y1$2$>Db ) q4t9r!Ð!C~- +S+F~*hb8PoJ)R2dV8ܪ&\YR)z%-V p;qFߦldz3n'-ڵVZX箷mF;k(5:'[2 4i<o ?3[pP ?ϦP8^AQ:̮4 AF%ɖGkgN'vuLB@Q8t{`;'Pp',\8.0O5 +C +bc}{C}¡F΁3bt񪝻O[w +v2RcpmIjk4Ϸ@wؗ/:/>ڱ##*z#Z<{)2mbи߀A0gvN)' £V.<x8M9sc_À%dM$ p`iɩnp}E}*]E|%<$v*'PN¢݇kV0y,!o2LAXpTE&¸1/wg@7jKvYr7%Ptw⣹}im`̬4j +M|B_k6u.$.a>H Z8 /흴3k_ٝ`B(HG4f[Jm{/ e{ ֓]qH'1e_LZ٭ +rĀifeŦruɈah~F/%-&O-yn-7>m|f]5 tySs9Pa:bϝn>y9rc1$bLNg3-%%"AۛK(U3ya1!9b<ᵈ|yzaK#_ޛBJ|b{ʇV>p$x Ka]hc*IfTYt|JQJ у|pz (E g1ǣݨ.$v8O$:@IU*+X0W"ђ8%ף{MNe'!F0K?y ӾwO>Y췋2N{F?Qp [`8&-h3& oysø߈Adl3JR@y{HwE҅ĽjU!wߚ[a8GS#U\cx@?7Rgkf2.'"B>*=K=Ŝ# D6Z55A‡iȪbJU.%Z5 ' 7K 9#kziΒ?JVP@Q*ldžΟ:5%P=Iqq1m}m,`6ˍ}ap-ǣ VEo) +sh,:8?_fdJX;&mm-0T09^1`,/r"g6Qh>N߬ K*rSe.͍`G㶢y|?S-vVpv3ՠ5RU_c9~ K{]5([OSS _ erG-S?fV( +Cs]e tFqM3ߝ+U^WqzE";ՙh5[>#!-&%."W;'3P7`°$W@"A YhDM}].NTv.FC?ӠЋê}lNcnšz~mky1giE{:I^R_HÉkwNy&PPrX_ +;ӸFd4L퓋=w%1l(/Ϸbgz '}`g(ď w +GCv nJH{/p#'n2#FBgE*iuJVeYtb<5Sz6\B>nP8YjقL$B 9R\*g*]8(|Wyjܳ .=IMG+Ih ifqZPχ=72Ǒn$ 3D>bDFϚ$ؤAWveY BoI[a+.J5,JtƤ!Y ̀'5qCPZZd+4rwsÑX"XJEѵaDgH̃\q{O?߾Y#W+wk`Um-OƱ* c8n8G$蠟-\T#oiutXX]憚tcmslbڙqd,$#$ح@AK25,*YYk|,e[e9D?c%TbZZbbsZgGssggZ!?Rö6Z[/Pؒ8Q,_40|b>?G} Spk\ojXZM|8;X 2 `a+^3xSD.Bj= ?5xXVLZpjU!A4>:DWEC ;vQI8Q$p8A$Тz<8`k'hGhvnsK)D㐆+!μ|.*4 +Wb]r$H,kV:SSyLJgˣ9YKhGMCDduRW3Mrl]Kɒb2IYA{$؟_Yg՚909R+y:b>MZ +m~ޙ>y&nڙel}4+*}&|$z#( +fr1.wrl8 ;h+(EvDb7]FqCf(nH#"Kn)(ͨ5Xi{T{'Z/:dWY1칛Yt}džO\E~)h@)ʣ4Elyy!{ ȯŀj R%ߐ I5h2Ujdb@͗T;U̎CҦeiJZf(3<+TJJe^ljmsV72]qlRt^n<%H<B.֞憓Ȃg?"!pQ kp=e , O)1ŵYׁej{h4#܁FZ$rso;#V$dr&e;yf( $AJHP/`䵛UE,q. J$Z5gŞ8voua ~rk22reఄ pR|}R)%rv7BM7'&Q#qbw@?{0@=7HQgHۮwQk:!ym' + F)[+ncіG>?)NCi +!:+V`OLۣ߰L@'LG?wze;HhGFxpv(Hu"(r3(OI.Iw8&(|f|N_CZO%R +;ʪaN{0<8\|Q_ei۶̓ X/2R PQMyTPk?9nWHBՂƸ߮/L1/)%9limo#SYTLZ@b[N,E@wQu`_v+j_1p};DN่Ūq||-ogRiJ2pVCqbB1|A9v8__n{CByCw8}ǃ|+͹yn@H(,^?'AQ4ō}[5 +xⒹg7z±⏮gDŽt0̡yd=Q"G3:֪^ɜWaVAA`)h{aqm_鋂O^8۠tf'1ǒW~Z=~a|/c\@y5|$I5@p }| <3 k<8]M? p .<<o;*£߮`-2v]w>?H;Y5߇LشU3 @1}$$s*7,u/|IxeLb2QN=9Zn x=`g}8 [Edkcֲ-p>pZ3E꫓KP u`wvlu]Gi-=w<[9O15V^0$_J5e`G[ \-㥗_BSW&?"8ooqQQ䃺ÌKq//~bZ9k{9~ko~*b8g*DLHpg.9z,f!hb^ϩ|FD|+uͬL˽`f^㏰G_h>ڲ/'.4ZFu!pfOK5=NJᾩ%Q_CA1{ϜoL8G=az<ê'6'>_Q>ld9:P`F+b*9h/JN°VZ` TUme0 +'+d,kj3fY:f,O5>Gx8,M;77ڷc~~R?E~Ncq|4._⅄& +¿0z?运D6|J `&X*1pCY}#EDBCƅzȄ^sGJ@6G +]"H]sh!tWTVީ.wOJ>&zeģ?M-ly` UYyg||[-eєCf8:0^^WDdpW-]VaUh : XE=M%NWl322 Fr9 + zԊ8Z7y yodVޯ4\ëxN~oHyB t1wfBO\>GNw]6̨dV_AO(50RYl+KKѓ-9ÃlZFV:0,+SgflO;+`Ϗr_\deUm5gV]=-`;[:خVg)qA 툘v?ԝʍ۴¦onj(ufm{rkfER5S__{]?2% u8q87(x|'rQ`^GRYop oN2'^oE_8%gۓӚe:ynɱ3*Esa+ 6oG_,CW\'ų ȕxgu~NQWeFm%Lrڏ'Vͅ5yđ1"di;cz!&]%SѺ|o.[s ,`G[γpgbegyY% dJ&sv*fr\.GM+-6%[k#3Жuu1S(1 8GI [xelzm/o.:pLtԮI_eӖzK()[0%0a +SXEJ°(_'%UU{PH?xl蔌R_1K yTjYD\fzO!۟VjbؒL,Ru kGv\4sOʊybD= }eZj[/aױi$hw@Ray!F( C dѪ:Rb/ZbUYgGjJsN2fGN5Y5]Y})Kvqqlxf*\CXJMt aXvnm\+g%|?RMH=1zgw!MɭI*0D?E\*5328y Sz` 9񵖼2м#'6o",0Wtg*I#[Uu>X=. +4r5Д)d\۫+H쳦; 2g1M ˵kPN |*G~PV-E5b_#>6f;,\;/[|o0W8|I59);HJOOLnJohnlHkNbvV^yFނ_8a,g؇ @|Phb̥&B3$p\Uo`D9_Cn$zQ)gBN;n[F]bTF_gj,֕6uu zWmz^-R0ƢCIiZ]6xr6ls7ĽڴT,.ˤ +g$$_N—zDUVŽqiɺ⫳LDlIc׎ޢ6.}  +Q{Pݫ+çh4 +]{b/C%PZ ?\b@q=U3B>6{cM|&}ZnStBl1^e:!!G"eFYɧ|>DYq.z̵bސ+`tΨlJcQ;ZZ*a5(\QAԕiBZâhgDZ S "ÔF x)2 C)Tk ',&LuMpQ!Δ&meh&OJ?+ᔬOF<З͋ɼyќRnLJ溿=vyXK62bKvlOH-p3xj-[X-r# N"`>ސvm!;OU&2g˙ځ@ 82ē㤶Ə0x}n}v3"ī 䄥([%QG^v$0,ld+(7p?ǏO6-c.°4?oOxxCۯ¯"Q/,QWa4;HFbmC6ddY- KRS^7`^5&=+5*DkͣSI}=-lc!-we2Sh$W/W0sQ,O⺊#A;ح/.>$a@Fj{d.&;.?@wpj~~-aHڔYQt9BOsk͑~񅸳;ƽmoӻQRSÕnPl?[cE zc;mk'TfE9,`Vk&[:"RMGRzW+*ԟz~Vn¼e:XU\E +GP2}Z\*c\o06dY^<6NMZj" "\ث7$[9*ZPpc4SU@hW6A"PI?ْzY6IJ7J|oOPCzkyAK) l)Np,z+a+cV;|# r &%JVĬdQaj Nxsg ޜqDJ)jJ ,~V n&ڕmFA&>:(_trd?JSMZGSFfJS &]>W@փOJ x֏j< ʚGvn޼ ( &i:=+A|3+m(zФ.3iPvAs[_˞ S"$_"A7>h9L:5xd1 fm&}Ʃ2WKKe.iL.UTMs̀m6W ™=x3_xޢ0AH\(6Ψ6FIxELU6T^ΩSc*PZzVoY2ߜOgd5(:|pљZѐÂTR%]G1X*0ph"(*lۿXG~Aygҳh @ gPPu=,Iy,P=G޴<ǧ{H!A += +B]9n6Ym1,PK8K;o76OCӿJ~ݑ&nkό=8'?U\gAK|cK\CA" +\mIU Vi[)Huܪb'aE5q9ӽ%ݕ}[! W~`dw U-mOY#d'@5t;,<-זQO8ykP,nTd+_1yoI*!Q070 8JMv(R*s/Ϧv&Rp!HHFɃ]W$g]Q y%Nԭ UOC\un_~C *%4vܢ%‰كl0^2F~ 996=/ `/v pć0e4:G*,-%| 4Ttuu$5ۇ+J\fo[qC +E'l>h,@[hZBAMr eJ}xsi@B`_)y`mqGz۽bM| tZ) ŽuNcpMSWo3r#]a5Ϳ+Wy{?q*>;^Z9 yƇŒp'\h"ղkpxتTR)oǤp!UK͝Q,K +endstream +endobj +1340 0 obj +<< +/Filter /FlateDecode +/Subtype /Type1C +/Length 11578 +>> +stream +xzwxT/C؅IfF&X* -dLI&d&I2BHB Б*"ǂ~krV< Ͻ̓{wWwI&MqxØtttt4I*͑vJ9Nv9.s\x11ɱƱG:N38-rZ:NNNeN>!N8}r,u~Yty^gogssssMϝs ¹個K%%%եĥe.w\|Df/s͒-mԲYTfʮnޗ}"RDW?TTW7˽Apy<^"7ȫ->o?fv1clj465El9[625c"{'>wKNYER}Џ C7#i׹ "̦b3|E&!/M20,+=? s6Th8<p*NRpXAb8AԒG]5#W@V1 6ZX*|@D&<4?|!%HtP +b˛ Buc*+`ha49ȌVU&=A(+-B0h)((=_?Gg%U!\zFI!h E[)P<rAhh2u= N=UV֞Gn<Mvg(ZeBr@F6 u >3D'_0#m4՛co1336Ӣo|KďdW+jˊ[ TTsvAV8f&33A4%~ pN,ҍ<$ {yˎ[=~B~aQ=N'DW-dcyQQ)WX)SFR۸7r`)qS[SjiiNk ^40B3'i_L_+B+J}n98.]c+Y"ɮW!QC;=L-uӓr**%@XЗ*So +PkKuhx6}mآ"}=k[_HVOZ"?X:-^N9MawU +(l.*)Js3ijݙϡ}[OhĪXS=>R 7m0u2x(5.7x`f += +M f| 4:G%čњ"0=/GqPÝj6^|f 1Y  ś;2{ss8sK2~yx^U*XPz?APg:HSm3x8߭nȠu%\Fa @ez:o8rl3|DKK(xk cٵ9tAn~V"--!5U@r$'Ѯhꄾ:7Љ0SGs4$&wHAԩR2)Yz!jTjv~E`mQ< +SyEPjB1j#8mIT=- ?)9!.,)Ca^A>U=7i + xk\_O +Ou/1I`<O`O('[[O ߨ6ѰWwyDy]tJ~a|Ӯ%a(| +C"tFI""od'iWd>&SEq෺7+^P/ gB.Mŀ1~weHAH,"+}% +\ېZ:_RhV"*;^WXk#DE6$n0% o`z+(c݀Swѫ9yE)ƚҼrо}T`leib=BgznzšIٯO.ZAmSIog\~ʜp&/VSYq!N|K|G᧊RjRLqBXsFAx>+{a/դV +rxtc2Ful]$B[{y +Gdo z_Ag!%6bz.zΓ87QV >dƜL. 6s]zD 125V˵m"°~6HS {GHx:%<8+۲k4\ ?O + ~n\ef +YL4"G^~U^i#UuH%<W'1Y4US8]ZuFsK}~y.*n8r&7=\f29mVQqd>ǢDR1h/K`v`Α}_`A߲Qmb}<;;;:Ei!` KQ}Ikmv%zW +{X!*X^1Ǝ?1L&8+@#(xt6U'M(V;(F漮/4i)Z9#62 sRh45U4r]08ᡞ!pGx'r;P?/Ql5 0Q)&CGj{ߛ4(nzMQ) +4vE`K.,bmspFjMFU]o[#h֗dF)Eʠ&ڀ:x(OVo9*ԟ(鹪^b\`Ʊe +|p ?25,)ͭO񅍌hiiijjiiABz qtwi`?3% 뛹J@' + i:~B,)8'@y>'"*p1QVkS-BҖ+4 S"H0 ՝ܩ(/-S3NiDtQ]4I42&ǁV*/ϱI@Ep)8汣 a@ 6-El%;!ARyyZ _d/ +݈}:kx ݢγ\_Shǃ$R>upB| +(i|էzU I1m+(,,,((/.~Rb(+-(wx7<;lI2,+gO79rM[n.NmєWlR5n}b1L\ ?!WkTUHQЛP::y Sӧ~,f01Ig s H L:5p^jO/n}}}_8Lr f99R>vw;K'II*Z^F*͕JWwHpwtr|U}3O;sxs_^rdp:4tOӿ9s^fg/`XTR&=?tхp2ez.]]]]]Z]κuw-fȞ=/[#-E2dYZ 땝ݐ#'J?#V%+u=C Z&ϒeZyM%ߒ$$^>Nb3Lv}]ƾbAl沥l-{gϰ٫m=dWu닮]_wuWo`XWkkkEkc{,I?n{sj9[uʼn '2:rҰ,i8 9j!\4Ӆ铳Onײ>,7\bkyHu<4<|h>ހ>o"䇎 +F,` Hé"d҈\}6YR+*H1G;+5BzYnQdVy!:-TMI="R;s+|hvtKEL] !쭓Z]qt@au*,0 qZ+ wZ(G?V56tOIc[B򲻳ٷO0]&#@Dl .pR+iaikƲrCWR] ȁ +ˏ.U ApٽwbDSR|Y4Zӑ"J2(b[: u:783G*{BF#^_OnKx*\ 'רCChcp;m:kD~n*vnݓS7d*} +l3Y]\>e'yŌ<M8JPbN> єhʏ>b )ES%4;#+k,3{2dp֗豳fKx]\w<{^yVp~}o~Ux‡o,~Cߏp?\o>-B^zZM;Vxm!ՇMbilAJ?{ё Iуe/ЍpxN jk+yz*2m؇h%附IW2NZ:q~qk"aryEݙZA=h@GIi\No溛[{:RFm:*~DSS&:6iޙ8p0`L +(:8F5 T:FgxU: ݆q?i +H/ ,"tETBRËt2ژYBe֟Egtְ`?t5Tbzsi~eILg?CZLle#,J; t5^E+, +QU_;8Vp3F,^E~SfGϢnS?,x]ۆ,BlUNș\9uFwz<ҹ'UKBo" ݢ<4op*CH~S"\lGh_, _Oh#*7fxh^Cm +Z;Uő5{`A~.L6 55-B RW9qm;4 _¶h +s|h S &+Qͺ+B)(}@Ý '>R@zmz]NvUq]ߑCt"[?bj+:uxISQ1::8sƖKD*MQ`@3<pMֶ5@kh&ԙG=[" N/ -}JU'3Ss҄T7kTe[ӑu rB$q}"`_)d\xAeVUs{֮b|us8 ###G$:]yr(J]CӽVp@>jYhtQ"$ + ű + q𙞓gl{SK$S'N#h!| ݧ#kh-V`xXNr tEƶQ`|́1!q]Yb_A_#<s=ZV (Ĵ(CyVh:b7GtI?\c@@`i{jeqBR=H@G +m_&K + yn߇Ē1"@[EbK9Z{Y?j&:hZf% S5ݡ҉Pݡt]&c}eMg/pHBד'ugD>&FW0Q2z=KWL=Ksn߾mجKTW-WtG+D`s21;{x@^(q?HC_j;|BO:6# r{ByGq.6 Ck +ʄlGUWZmL:`"2?5.,_2:dzj̸<,Vz;m\ҋ +5@;L p63I+LK| y`3XC[*?zmĹYy,Aq}GESl(cx[3a_b)q!vSSPP?GD)D٥o)pCJ# 8x!A?ޜ4oJs[BxLt]U p6|ɧmy&`a6 tpz'פ|Q 1oYb ZWDjcQea)r|?nMĆh9ZQ \VC{?[d y[K0yEGV+߄C|3H42ju#?K=cў p>db HnMl%:HQûz!F\DB,hjŔ5) h Pvܥ>' [ +e@<щP.8+r9|Lh02+cb=]s:ַߜ={\{x}sV='фna;/?d9qt]QfыC +,xC; N 2kܶjPңdֱC~ M\THr`AM} esXnS?=tG[G>w=0aK6nogm7ڣxo[|=:w≯gCXUtrf47jH2 )=-KO.({(BA")Jah y4/p6@S ;`#ёjn:0={aәx P]Q9:7gw:@I> stream 0 g 0 G 0 g 0 G -0 g 0 G -BT -/F27 9.9626 Tf 150.705 706.129 Td [(mold)]TJ -0 g 0 G -/F8 9.9626 Tf 29.805 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(th)1(e)-334(in)28(ternal)-333(v)27(ector)-333(storage.)]TJ -4.899 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-273(as:)-414(an)-274(ob)-55(ject)-273(of)-274(a)-273(class)-273(deriv)28(ed)-274(from)]TJ/F30 9.9626 Tf 198.261 0 Td [(psb)]TJ -ET -q -1 0 0 1 390.19 658.507 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 393.329 658.308 Td [(T)]TJ -ET -q -1 0 0 1 399.186 658.507 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q BT -/F30 9.9626 Tf 402.325 658.308 Td [(base)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(5.3)-1125(psb)]TJ ET q -1 0 0 1 423.874 658.507 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 202.396 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 427.012 658.308 Td [(vect)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(gather)-375(|)-375(Gather)-375(Global)-375(Dense)-375(Matrix)]TJ/F8 9.9626 Tf -55.726 -18.389 Td [(These)-384(subroutines)-384(collect)-385(the)-384(p)-27(ortions)-385(of)-384(global)-384(dense)-384(matrix)-384(distributed)-384(o)28(v)27(er)]TJ 0 -11.956 Td [(all)-333(pro)-28(cess)-334(i)1(n)27(to)-333(one)-333(single)-334(arra)28(y)-333(stored)-334(on)-333(one)-333(pro)-28(cess.)]TJ/F11 9.9626 Tf 120.435 -22.804 Td [(g)-36(l)-19(ob)]TJ ET q -1 0 0 1 448.561 658.507 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 289.12 653.179 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 451.699 658.308 Td [(type)]TJ/F8 9.9626 Tf 20.921 0 Td [(;)-293(this)]TJ -297.009 -11.955 Td [(is)-333(only)-334(allo)28(w)28(ed)-333(when)-334(lo)-28(c)]TJ +/F11 9.9626 Tf 292.109 652.98 Td [(x)]TJ/F14 9.9626 Tf 8.461 0 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(col)-20(l)-19(ect)]TJ/F8 9.9626 Tf 28.026 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(l)-20(oc)]TJ ET q -1 0 0 1 281.979 646.552 cm +1 0 0 1 358.107 653.179 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 284.968 646.353 Td [(x)-333(is)-334(of)-333(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 52.36 0 Td [(psb)]TJ +/F11 9.9626 Tf 361.096 652.98 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F8 9.9626 Tf 3.317 1.494 Td [(\051)]TJ -219.402 -20.867 Td [(where:)]TJ +0 g 0 G +/F11 9.9626 Tf 0 -19.085 Td [(g)-36(l)-19(o)-1(b)]TJ ET q -1 0 0 1 353.646 646.552 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 168.775 613.227 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F30 9.9626 Tf 356.784 646.353 Td [(T)]TJ +/F11 9.9626 Tf 172.212 613.028 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 10.675 0 Td [(is)-333(the)-334(global)-333(submatrix)]TJ/F11 9.9626 Tf 103.916 0 Td [(g)-36(l)-20(ob)]TJ ET q -1 0 0 1 362.642 646.552 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 304.784 613.227 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 365.781 646.353 Td [(vect)]TJ +/F11 9.9626 Tf 307.773 613.028 Td [(x)]TJ/F7 6.9738 Tf 5.694 -1.494 Td [(1:)]TJ/F10 6.9738 Tf 6.226 0 Td [(m;)]TJ/F7 6.9738 Tf 9.436 0 Td [(1:)]TJ/F10 6.9738 Tf 6.227 0 Td [(n)]TJ +0 g 0 G +/F11 9.9626 Tf -184.651 -18.011 Td [(l)-20(oc)]TJ ET q -1 0 0 1 387.33 646.552 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 163.701 593.722 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F30 9.9626 Tf 390.468 646.353 Td [(type)]TJ +/F11 9.9626 Tf 167.139 593.523 Td [(x)]TJ/F10 6.9738 Tf 5.693 -1.494 Td [(i)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F8 9.9626 Tf 8.299 1.494 Td [(is)-333(the)-334(lo)-27(cal)-334(p)-28(or)1(tion)-334(of)-333(global)-333(dense)-334(matrix)-333(on)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 234.703 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.684 -19.925 Td [(On)-383(Return)]TJ +/F11 9.9626 Tf -268.562 -19.505 Td [(col)-20(l)-19(ect)]TJ +0 g 0 G +/F8 9.9626 Tf 33.007 0 Td [(is)-333(the)-334(collect)-333(function.)]TJ 0 g 0 G 0 g 0 G - 0 -19.926 Td [(lo)-32(c)]TJ -ET -q -1 0 0 1 165.713 606.702 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 169.151 606.502 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.117 0 Td [(g)-36(l)-20(ob)]TJ -ET -q -1 0 0 1 374.277 606.702 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F11 9.9626 Tf 377.266 606.502 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -207.349 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-244(as:)-400(a)-244(rank)-244(on)1(e)-245(or)-243(t)27(w)28(o)-244(ALLOCA)83(T)84(ABLE)-244(arra)28(y)-244(or)-244(an)-244(ob)-56(ject)-244(of)-244(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 0 -11.955 Td [(psb)]TJ ET q -1 0 0 1 191.93 546.926 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 228.797 555.154 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q BT -/F30 9.9626 Tf 195.068 546.727 Td [(T)]TJ +/F11 9.9626 Tf 234.775 546.587 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.495 Td [(i)]TJ/F11 9.9626 Tf 3.317 1.495 Td [(;)-167(y)]TJ/F27 9.9626 Tf 111.399 0 Td [(Subroutine)]TJ ET q -1 0 0 1 200.926 546.926 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 228.797 542.801 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q BT -/F30 9.9626 Tf 204.065 546.727 Td [(vect)]TJ +/F8 9.9626 Tf 234.775 534.233 Td [(In)28(teger)-9028(psb)]TJ ET q -1 0 0 1 225.613 546.926 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 370.782 534.432 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 228.752 546.727 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 24.242 0 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(the)-334(t)28(yp)-28(e)-333(indicated)-333(in)-333(T)83(able)]TJ -0 0 1 rg 0 0 1 RG - [-333(17)]TJ -0 g 0 G - [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -102.289 -19.926 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ -0 g 0 G - 141.968 -388.543 Td [(64)]TJ -0 g 0 G -ET - -endstream -endobj -1305 0 obj -<< -/Length 6538 ->> -stream -0 g 0 G -0 g 0 G -BT -/F16 14.3462 Tf 99.895 706.129 Td [(6)-1125(Data)-375(managemen)31(t)-375(routines)]TJ/F16 11.9552 Tf 0 -23.814 Td [(psb)]TJ +/F8 9.9626 Tf 373.771 534.233 Td [(gather)]TJ -138.996 -11.955 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ ET q -1 0 0 1 120.951 682.515 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 370.782 522.477 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F16 11.9552 Tf 124.986 682.315 Td [(cdall)-375(|)-375(Allo)-31(cates)-375(a)-375(comm)31(unication)-375(descriptor)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_cdall\050icontxt,)-525(desc_a,)-525(info,mg=mg,parts=parts\051)]TJ 0 -11.955 Td [(call)-525(psb_cdall\050icontxt,)-525(desc_a,)-525(info,vg=vg,[mg=mg,flag=flag]\051)]TJ 0 -11.955 Td [(call)-525(psb_cdall\050icontxt,)-525(desc_a,)-525(info,vl=vl,[nl=nl,globalcheck=.false.,lidx=lidx]\051)]TJ 0 -11.955 Td [(call)-525(psb_cdall\050icontxt,)-525(desc_a,)-525(info,nl=nl\051)]TJ 0 -11.956 Td [(call)-525(psb_cdall\050icontxt,)-525(desc_a,)-525(info,mg=mg,repl=.true.\051)]TJ/F8 9.9626 Tf 14.944 -20.107 Td [(This)-314(subroutine)-314(initializes)-315(the)-314(comm)28(unication)-314(descriptor)-314(as)-1(so)-27(ciated)-315(with)-314(an)]TJ -14.944 -11.955 Td [(index)-326(space.)-442(One)-326(of)-326(the)-327(option)1(al)-327(argumen)28(ts)]TJ/F30 9.9626 Tf 193.68 0 Td [(parts)]TJ/F8 9.9626 Tf 26.151 0 Td [(,)]TJ/F30 9.9626 Tf 6.031 0 Td [(vg)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)]TJ/F30 9.9626 Tf 6.031 0 Td [(vl)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)]TJ/F30 9.9626 Tf 6.031 0 Td [(nl)]TJ/F8 9.9626 Tf 13.709 0 Td [(or)]TJ/F30 9.9626 Tf 12.133 0 Td [(repl)]TJ/F8 9.9626 Tf 24.171 0 Td [(m)28(ust)-326(b)-28(e)]TJ -308.859 -11.955 Td [(sp)-28(eci\014ed,)-333(thereb)28(y)-334(c)28(ho)-28(osing)-333(the)-333(sp)-28(eci\014c)-334(in)1(itialization)-334(strategy)84(.)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -18.477 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.201 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.201 Td [(icon)32(txt)]TJ -0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.201 Td [(vg)]TJ -0 g 0 G -/F8 9.9626 Tf 16.757 0 Td [(Data)-333(allo)-28(cation:)-444(e)-1(ac)28(h)-333(index)]TJ/F11 9.9626 Tf 123.565 0 Td [(i)]TJ/F14 9.9626 Tf 6.199 0 Td [(2)-278(f)]TJ/F8 9.9626 Tf 14.391 0 Td [(1)]TJ/F11 9.9626 Tf 6.641 0 Td [(:)-167(:)-166(:)-167(mg)]TJ/F14 9.9626 Tf 27.14 0 Td [(g)]TJ/F8 9.9626 Tf 8.303 0 Td [(is)-333(allo)-28(cated)-333(to)-334(pro)-27(c)-1(ess)]TJ/F11 9.9626 Tf 99.266 0 Td [(v)-36(g)]TJ/F8 9.9626 Tf 10.296 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051.)]TJ -294.958 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -57.707 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)84(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.201 Td [(\015ag)]TJ -0 g 0 G -/F8 9.9626 Tf 22.644 0 Td [(Sp)-28(eci\014es)-333(whether)-334(en)28(tries)-333(in)]TJ/F11 9.9626 Tf 121.932 0 Td [(v)-36(g)]TJ/F8 9.9626 Tf 13.617 0 Td [(are)-333(zero-)-334(or)-333(one-based.)]TJ -133.286 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 135.409 0 Td [(;)]TJ/F8 9.9626 Tf 4.428 0 Td [(1,)-333(default)-334(0.)]TJ -0 g 0 G -/F27 9.9626 Tf -164.744 -19.2 Td [(mg)]TJ -0 g 0 G -/F8 9.9626 Tf 20.258 0 Td [(the)-333(\050global\051)-334(n)28(um)28(b)-28(er)-333(of)-333(ro)27(ws)-333(of)-333(the)-334(pr)1(oblem)-1(.)]TJ 4.649 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-332(as:)-444(an)-333(in)28(teger)-333(v)56(alue.)-445(It)-332(is)-333(required)-332(if)]TJ/F30 9.9626 Tf 203.266 0 Td [(parts)]TJ/F8 9.9626 Tf 29.466 0 Td [(or)]TJ/F30 9.9626 Tf 12.197 0 Td [(repl)]TJ/F8 9.9626 Tf 24.235 0 Td [(is)-333(sp)-27(e)-1(ci\014)1(e)-1(d)1(,)]TJ -269.164 -11.955 Td [(it)-333(is)-334(optional)-333(if)]TJ/F30 9.9626 Tf 67.857 0 Td [(vg)]TJ/F8 9.9626 Tf 13.781 0 Td [(is)-333(sp)-28(eci\014ed.)]TJ -0 g 0 G -/F27 9.9626 Tf -106.545 -19.201 Td [(parts)]TJ -0 g 0 G -/F8 9.9626 Tf 30.609 0 Td [(the)-333(subroutine)-334(th)1(at)-334(de\014nes)-333(the)-334(p)1(artitioning)-334(sc)28(heme.)]TJ -5.702 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -57.707 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(subroutine.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.201 Td [(vl)]TJ -0 g 0 G -/F8 9.9626 Tf 14.211 0 Td [(Data)-363(allo)-28(cation:)-504(the)-363(set)-364(of)-363(global)-363(indices)]TJ/F11 9.9626 Tf 182.789 0 Td [(v)-36(l)]TJ/F8 9.9626 Tf 8.355 0 Td [(\0501)-328(:)]TJ/F11 9.9626 Tf 18.151 0 Td [(nl)]TJ/F8 9.9626 Tf 9.148 0 Td [(\051)-363(b)-28(elonging)-363(to)-363(the)-364(calling)]TJ -207.747 -11.955 Td [(pro)-28(cess.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)84(.)]TJ -0 g 0 G - 141.968 -29.888 Td [(65)]TJ -0 g 0 G -ET - -endstream -endobj -1310 0 obj -<< -/Length 6631 ->> -stream -0 g 0 G -0 g 0 G -0 g 0 G -BT -/F27 9.9626 Tf 150.705 706.129 Td [(nl)]TJ -0 g 0 G -/F8 9.9626 Tf 14.529 0 Td [(Data)-223(allo)-28(cation)1(:)-390(in)-222(a)-223(generalized)-223(blo)-28(c)28(k-ro)28(w)-223(distribution)-223(the)-222(n)27(um)28(b)-28(er)-222(of)-223(indices)]TJ 10.377 -11.955 Td [(b)-28(elonging)-333(to)-333(the)-334(curren)28(t)-333(pro)-28(cess.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.761 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(Ma)28(y)-334(b)-28(e)-333(sp)-28(eci\014ed)-333(together)-333(with)]TJ/F30 9.9626 Tf 272.479 0 Td [(vl)]TJ/F8 9.9626 Tf 10.461 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -307.846 -20.135 Td [(repl)]TJ -0 g 0 G -/F8 9.9626 Tf 24.498 0 Td [(Data)-351(allo)-28(cation:)-480(build)-351(a)-351(replicated)-351(index)-351(space)-351(\050i.e.)-498(all)-351(pro)-28(cesses)-351(o)27(wn)-351(all)]TJ 0.408 -11.955 Td [(indices\051.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -57.708 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.761 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(the)-333(logical)-333(v)55(alue)]TJ/F30 9.9626 Tf 131.784 0 Td [(.true.)]TJ -0 g 0 G -/F27 9.9626 Tf -156.69 -20.135 Td [(globalc)32(hec)32(k)]TJ -0 g 0 G -/F8 9.9626 Tf 61.948 0 Td [(Data)-333(allo)-28(cation:)-444(do)-334(global)-333(c)28(hec)27(ks)-333(on)-333(the)-334(lo)-27(cal)-334(index)-333(lists)]TJ/F30 9.9626 Tf 250.201 0 Td [(vl)]TJ/F8 9.9626 Tf -287.243 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -57.708 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.761 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(v)55(alue,)-333(default:)]TJ/F30 9.9626 Tf 163.056 0 Td [(.false.)]TJ -0 g 0 G -/F27 9.9626 Tf -187.962 -20.135 Td [(lidx)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Data)-353(allo)-28(cation:)-484(the)-353(set)-353(of)-353(lo)-28(cal)-353(indices)]TJ/F11 9.9626 Tf 176.171 0 Td [(l)-20(idx)]TJ/F8 9.9626 Tf 17.481 0 Td [(\0501)-311(:)]TJ/F11 9.9626 Tf 17.814 0 Td [(nl)]TJ/F8 9.9626 Tf 9.149 0 Td [(\051)-353(to)-353(b)-28(e)-353(assigned)-353(to)-353(the)]TJ -219.467 -11.955 Td [(global)-333(indices)]TJ/F11 9.9626 Tf 62.046 0 Td [(v)-36(l)]TJ/F8 9.9626 Tf 8.355 0 Td [(.)]TJ -70.401 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.761 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)84(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -22.127 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -20.135 Td [(desc)]TJ +/F8 9.9626 Tf 373.771 522.278 Td [(gather)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ ET q -1 0 0 1 172.619 376.512 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 370.782 510.522 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F27 9.9626 Tf 176.057 376.313 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F8 9.9626 Tf 373.771 510.323 Td [(gather)]TJ -138.996 -11.956 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ ET q -1 0 0 1 362.845 328.692 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 370.782 498.567 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 365.983 328.492 Td [(desc)]TJ +/F8 9.9626 Tf 373.771 498.367 Td [(gather)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ ET q -1 0 0 1 387.532 328.692 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 370.782 486.612 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 390.67 328.492 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -260.887 -20.135 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -22.128 Td [(Notes)]TJ -0 g 0 G -/F8 9.9626 Tf 12.176 -20.082 Td [(1.)]TJ -0 g 0 G - [-500(One)-241(of)-241(the)-240(optional)-241(argumen)28(ts)]TJ/F30 9.9626 Tf 144.915 0 Td [(parts)]TJ/F8 9.9626 Tf 26.151 0 Td [(,)]TJ/F30 9.9626 Tf 5.351 0 Td [(vg)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)]TJ/F30 9.9626 Tf 5.351 0 Td [(vl)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)]TJ/F30 9.9626 Tf 5.351 0 Td [(nl)]TJ/F8 9.9626 Tf 12.859 0 Td [(or)]TJ/F30 9.9626 Tf 11.283 0 Td [(repl)]TJ/F8 9.9626 Tf 23.321 0 Td [(m)28(ust)-241(b)-28(e)-241(sp)-27(eci\014ed,)]TJ -242.774 -11.956 Td [(thereb)28(y)-334(c)28(ho)-28(osing)-333(the)-333(initialization)-333(strategy)-334(as)-333(follo)28(ws:)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -20.135 Td [(parts)]TJ -0 g 0 G -/F8 9.9626 Tf 30.609 0 Td [(In)-337(this)-338(case)-338(w)28(e)-337(ha)27(v)28(e)-337(a)-338(subroutine)-337(sp)-28(ecifying)-337(the)-338(mapping)-337(b)-28(et)28(w)28(ee)-1(n)]TJ -8.691 -11.955 Td [(global)-225(indices)-225(and)-225(pro)-28(cess/lo)-28(cal)-225(in)1(dex)-225(pairs.)-409(If)-225(this)-225(optional)-225(argu)1(m)-1(en)28(t)]TJ 0 -11.955 Td [(is)-316(sp)-28(eci\014ed,)-320(then)-316(it)-317(is)-316(mandatory)-316(to)-317(sp)-28(ecify)-316(the)-316(argumen)27(t)]TJ/F30 9.9626 Tf 251.563 0 Td [(mg)]TJ/F8 9.9626 Tf 13.612 0 Td [(as)-316(w)27(ell.)]TJ -265.175 -11.955 Td [(The)-333(subroutine)-334(m)28(ust)-333(conform)-333(to)-334(the)-333(follo)28(wing)-334(in)28(terface:)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf 10.461 -18.09 Td [(interface)]TJ 15.691 -11.955 Td [(subroutine)-525(psb_parts\050glob_index,mg,np,pv,nv\051)]TJ -0 g 0 G -/F8 9.9626 Tf 93.898 -29.888 Td [(66)]TJ -0 g 0 G -ET - -endstream -endobj -1316 0 obj -<< -/Length 10081 ->> -stream -0 g 0 G -0 g 0 G -BT -/F30 9.9626 Tf 183.332 706.129 Td [(integer,)-525(intent)-525(\050in\051)-1050(::)-525(glob_index,np,mg)]TJ 0 -11.955 Td [(integer,)-525(intent)-525(\050out\051)-525(::)-525(nv,)-525(pv\050*\051)]TJ -10.46 -11.955 Td [(end)-525(subroutine)-525(psb_parts)]TJ -15.691 -11.956 Td [(end)-525(interface)]TJ/F8 9.9626 Tf -10.461 -17.586 Td [(The)-333(input)-334(argu)1(m)-1(en)28(ts)-333(are:)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -15.594 Td [(glob)]TJ +/F8 9.9626 Tf 373.771 486.412 Td [(gather)]TJ ET q -1 0 0 1 168.412 637.283 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 228.797 482.626 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S Q -BT -/F27 9.9626 Tf 171.849 637.083 Td [(index)]TJ -0 g 0 G -/F8 9.9626 Tf 32.191 0 Td [(The)-333(global)-334(index)-333(to)-333(b)-28(e)-333(mapp)-28(ed;)]TJ -0 g 0 G -/F27 9.9626 Tf -57.32 -13.774 Td [(np)]TJ -0 g 0 G -/F8 9.9626 Tf 17.711 0 Td [(The)-333(n)27(um)28(b)-28(er)-333(of)-333(pro)-28(cesses)-333(in)-334(the)-333(mapping;)]TJ -0 g 0 G -/F27 9.9626 Tf -17.711 -13.774 Td [(mg)]TJ -0 g 0 G -/F8 9.9626 Tf 20.257 0 Td [(The)-333(total)-334(n)28(um)28(b)-28(er)-333(of)-333(global)-334(ro)28(ws)-333(in)-334(the)-333(mapping;)]TJ -20.257 -15.594 Td [(The)-333(output)-334(argu)1(m)-1(en)28(ts)-333(are:)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -15.594 Td [(n)32(v)]TJ -0 g 0 G -/F8 9.9626 Tf 17.075 0 Td [(The)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(en)28(tries)-334(in)]TJ/F30 9.9626 Tf 111.637 0 Td [(pv)]TJ/F8 9.9626 Tf 10.46 0 Td [(;)]TJ -0 g 0 G -/F27 9.9626 Tf -139.172 -13.774 Td [(p)32(v)]TJ -0 g 0 G -/F8 9.9626 Tf 17.075 0 Td [(A)-481(v)28(ector)-481(con)28(taining)-481(the)-481(ind)1(ice)-1(s)-480(of)-481(the)-481(pro)-28(cesses)-481(to)-481(whic)28(h)-481(the)]TJ 1.555 -11.955 Td [(global)-468(index)-468(should)-468(b)-28(e)-468(assigend;)-535(e)-1(ac)28(h)-468(en)28(try)-468(m)28(ust)-469(satisfy)-468(0)]TJ/F14 9.9626 Tf 270.508 0 Td [(\024)]TJ/F11 9.9626 Tf -270.508 -11.956 Td [(pv)]TJ/F8 9.9626 Tf 10.199 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F11 9.9626 Tf 8.603 0 Td [(<)-475(np)]TJ/F8 9.9626 Tf 23.47 0 Td [(;)-510(if)]TJ/F11 9.9626 Tf 18.163 0 Td [(nv)-511(>)]TJ/F8 9.9626 Tf 28.373 0 Td [(1)-451(w)27(e)-451(ha)28(v)27(e)-451(an)-452(i)1(ndex)-452(assigned)-451(to)-452(m)28(ultiple)]TJ -96.115 -11.955 Td [(pro)-28(cesses,)-333(i.e.)-445(w)28(e)-333(ha)27(v)28(e)-333(an)-333(o)27(v)28(erlap)-333(among)-333(the)-334(sub)-28(domain)1(s)-1(.)]TJ -0 g 0 G -/F27 9.9626 Tf -40.548 -15.594 Td [(vg)]TJ -0 g 0 G -/F8 9.9626 Tf 16.757 0 Td [(In)-398(t)1(his)-398(case)-398(the)-397(asso)-28(ciation)-398(b)-27(e)-1(t)28(w)28(een)-398(an)-397(index)-398(and)-397(a)-398(pro)-27(ces)-1(s)-397(is)-398(sp)-27(e)-1(c-)]TJ 5.161 -11.955 Td [(i\014ed)-456(via)-456(an)-456(in)28(teger)-457(v)28(ector)]TJ/F30 9.9626 Tf 120.742 0 Td [(vg\0501:mg\051)]TJ/F8 9.9626 Tf 41.843 0 Td [(;)-517(e)-1(ac)28(h)-456(index)]TJ/F11 9.9626 Tf 59.63 0 Td [(i)]TJ/F14 9.9626 Tf 8.238 0 Td [(2)-482(f)]TJ/F8 9.9626 Tf 16.429 0 Td [(1)]TJ/F11 9.9626 Tf 6.642 0 Td [(:)-167(:)-166(:)-167(mg)]TJ/F14 9.9626 Tf 27.14 0 Td [(g)]TJ/F8 9.9626 Tf 9.525 0 Td [(is)]TJ -290.189 -11.955 Td [(assigned)-449(to)-449(pro)-28(cess)]TJ/F11 9.9626 Tf 89.776 0 Td [(v)-36(g)]TJ/F8 9.9626 Tf 10.296 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051.)-792(The)-449(v)28(ector)]TJ/F30 9.9626 Tf 67.232 0 Td [(vg)]TJ/F8 9.9626 Tf 14.935 0 Td [(m)28(ust)-449(b)-28(e)-449(iden)28(tical)-450(on)-449(all)]TJ -189.546 -11.955 Td [(calling)-452(pro)-28(cesses;)-513(i)1(ts)-453(en)28(tries)-453(ma)28(y)-453(ha)28(v)28(e)-453(t)1(he)-453(ranges)-453(\0500)]TJ/F11 9.9626 Tf 236.604 0 Td [(:)-167(:)-166(:)-167(np)]TJ/F14 9.9626 Tf 27.281 0 Td [(\000)]TJ/F8 9.9626 Tf 10.754 0 Td [(1\051)-453(or)]TJ -274.639 -11.955 Td [(\0501)]TJ/F11 9.9626 Tf 10.516 0 Td [(:)-167(:)-166(:)-167(np)]TJ/F8 9.9626 Tf 24.276 0 Td [(\051)-347(according)-347(to)-347(the)-347(v)55(alu)1(e)-348(of)]TJ/F30 9.9626 Tf 119.292 0 Td [(flag)]TJ/F8 9.9626 Tf 20.921 0 Td [(.)-486(The)-347(size)]TJ/F11 9.9626 Tf 47.231 0 Td [(mg)]TJ/F8 9.9626 Tf 17.314 0 Td [(ma)28(y)-347(b)-28(e)-347(sp)-28(ec-)]TJ -239.55 -11.955 Td [(i\014ed)-414(via)-414(the)-415(opti)1(onal)-415(argumen)28(t)]TJ/F30 9.9626 Tf 142.427 0 Td [(mg)]TJ/F8 9.9626 Tf 10.461 0 Td [(;)-455(the)-414(default)-414(is)-414(to)-414(use)-415(the)-414(en)28(tire)]TJ -152.888 -11.956 Td [(v)28(ector)]TJ/F30 9.9626 Tf 29.916 0 Td [(vg)]TJ/F8 9.9626 Tf 10.46 0 Td [(,)-333(th)27(u)1(s)-334(ha)28(ving)]TJ/F30 9.9626 Tf 60.108 0 Td [(mg=size\050vg\051)]TJ/F8 9.9626 Tf 57.534 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -179.936 -15.593 Td [(vl)]TJ -0 g 0 G -/F8 9.9626 Tf 14.211 0 Td [(In)-356(this)-357(case)-356(w)28(e)-357(are)-356(sp)-28(ecifying)-356(the)-357(list)-356(of)-356(indices)]TJ/F30 9.9626 Tf 210.707 0 Td [(vl\0501:nl\051)]TJ/F8 9.9626 Tf 45.394 0 Td [(assigned)-356(to)]TJ -248.394 -11.955 Td [(the)-462(curren)28(t)-462(pro)-27(ces)-1(s;)-526(th)28(us,)-494(the)-461(global)-462(problem)-462(size)]TJ/F11 9.9626 Tf 229.323 0 Td [(mg)]TJ/F8 9.9626 Tf 18.457 0 Td [(is)-462(giv)28(en)-462(b)28(y)]TJ -247.78 -11.956 Td [(the)-405(range)-405(of)-404(the)-405(aggregate)-405(of)-405(the)-405(in)1(dividual)-405(v)28(ectors)]TJ/F30 9.9626 Tf 233.196 0 Td [(vl)]TJ/F8 9.9626 Tf 14.494 0 Td [(sp)-28(eci\014ed)-405(in)]TJ -247.69 -11.955 Td [(the)-481(calling)-481(p)1(ro)-28(cesses.)-887(The)-481(size)-481(ma)28(y)-481(b)-28(e)-481(sp)-27(eci\014ed)-481(via)-481(the)-481(optional)]TJ 0 -11.955 Td [(argumen)28(t)]TJ/F30 9.9626 Tf 44.85 0 Td [(nl)]TJ/F8 9.9626 Tf 10.461 0 Td [(;)-373(the)-361(defaul)1(t)-361(is)-360(to)-360(use)-360(the)-360(en)28(tire)-361(v)28(ector)]TJ/F30 9.9626 Tf 173.727 0 Td [(vl)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)-367(th)28(us)-360(ha)28(ving)]TJ/F30 9.9626 Tf -239.499 -11.955 Td [(nl=size\050vl\051)]TJ/F8 9.9626 Tf 57.534 0 Td [(.)-419(If)]TJ/F30 9.9626 Tf 16.132 0 Td [(globalcheck=.true.)]TJ/F8 9.9626 Tf 96.699 0 Td [(the)-256(subroutine)-256(will)-256(c)27(h)1(e)-1(c)28(k)-256(ho)28(w)]TJ -170.365 -11.955 Td [(man)28(y)-255(times)-255(eac)28(h)-254(en)27(try)-254(in)-255(the)-254(global)-255(index)-254(s)-1(p)1(ac)-1(e)-254(\0501)]TJ/F11 9.9626 Tf 217.24 0 Td [(:)-167(:)-166(:)-167(mg)]TJ/F8 9.9626 Tf 27.14 0 Td [(\051)-255(is)-254(sp)-28(eci\014ed)]TJ -244.38 -11.955 Td [(in)-331(the)-331(input)-331(lists)]TJ/F30 9.9626 Tf 75.842 0 Td [(vl)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)-331(th)27(us)-331(all)1(o)27(wing)-331(for)-330(the)-331(prese)-1(n)1(c)-1(e)-330(of)-331(o)27(v)28(erlap)-331(in)-331(the)]TJ -86.303 -11.956 Td [(input,)-338(and)-337(c)28(hec)27(king)-337(for)-337(\134orphan")-337(indices.)-456(If)]TJ/F30 9.9626 Tf 194.743 0 Td [(globalcheck=.false.)]TJ/F8 9.9626 Tf 99.376 0 Td [(,)]TJ -294.119 -11.955 Td [(the)-409(s)-1(u)1(broutine)-410(will)-409(not)-410(c)28(hec)28(k)-410(for)-409(o)28(v)27(erlap,)-428(and)-409(ma)27(y)-409(b)-28(e)-409(signi\014can)27(tly)]TJ 0 -11.955 Td [(faster,)-362(but)-357(the)-357(user)-356(is)-357(implicitly)-356(g)-1(u)1(aran)27(teeing)-356(that)-357(there)-357(ar)1(e)-357(neither)]TJ 0 -11.955 Td [(orphan)-333(nor)-333(o)27(v)28(erlap)-333(indices.)]TJ -0 g 0 G -/F27 9.9626 Tf -21.918 -15.594 Td [(lidx)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(The)-463(optional)-462(argumen)28(t)]TJ/F30 9.9626 Tf 107.67 0 Td [(lidx)]TJ/F8 9.9626 Tf 25.531 0 Td [(is)-463(a)28(v)56(ailable)-463(for)-462(those)-463(cases)-463(in)-463(whi)1(c)27(h)]TJ -135.041 -11.955 Td [(the)-446(user)-446(has)-446(already)-446(established)-446(a)-446(global-to-lo)-28(cal)-446(mapping;)-502(if)-446(it)-446(is)]TJ 0 -11.955 Td [(sp)-28(eci\014ed,)-373(eac)28(h)-365(index)-365(in)]TJ/F30 9.9626 Tf 105.175 0 Td [(vl\050i\051)]TJ/F8 9.9626 Tf 29.789 0 Td [(will)-365(b)-28(e)-365(mapp)-28(ed)-365(to)-365(the)-365(corresp)-27(onding)]TJ -134.964 -11.955 Td [(lo)-28(cal)-392(index)]TJ/F30 9.9626 Tf 51.539 0 Td [(lidx\050i\051)]TJ/F8 9.9626 Tf 36.613 0 Td [(.)-621(When)-392(sp)-28(ecifying)-392(the)-392(argumen)28(t)]TJ/F30 9.9626 Tf 148.368 0 Td [(lidx)]TJ/F8 9.9626 Tf 24.828 0 Td [(the)-392(user)]TJ -261.348 -11.956 Td [(w)28(ould)-420(also)-420(lik)28(ely)-419(e)-1(mpl)1(o)27(y)]TJ/F30 9.9626 Tf 113.086 0 Td [(lidx)]TJ/F8 9.9626 Tf 25.103 0 Td [(in)-420(calls)-419(to)]TJ/F30 9.9626 Tf 48.576 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf 51.254 0 Td [(and)]TJ/F30 9.9626 Tf 20.232 0 Td [(local)]TJ/F8 9.9626 Tf 30.333 0 Td [(in)]TJ -288.584 -11.955 Td [(calls)-333(to)]TJ/F30 9.9626 Tf 34.371 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 50.394 0 Td [(and)]TJ/F30 9.9626 Tf 19.372 0 Td [(psb_geins)]TJ/F8 9.9626 Tf 47.073 0 Td [(;)-333(see)-334(also)-333(sec.)]TJ -0 0 1 rg 0 0 1 RG - [-334(2.3.1)]TJ -0 g 0 G - [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -173.128 -15.593 Td [(nl)]TJ -0 g 0 G -/F8 9.9626 Tf 14.529 0 Td [(If)-307(this)-308(argumen)28(t)-307(is)-308(sp)-28(eci\014ed)-307(alone)-308(\050i.)1(e)-1(.)-435(without)]TJ/F30 9.9626 Tf 206.41 0 Td [(vl)]TJ/F8 9.9626 Tf 10.461 0 Td [(\051)-307(the)-308(result)-307(is)-308(a)-307(gen-)]TJ -209.482 -11.956 Td [(eralized)-313(ro)27(w-blo)-27(c)27(k)-313(distribution)-313(in)-314(whic)28(h)-313(eac)27(h)-313(pro)-28(cess)]TJ/F11 9.9626 Tf 232.18 0 Td [(I)]TJ/F8 9.9626 Tf 8.284 0 Td [(gets)-313(as)-1(signed)]TJ -240.464 -11.955 Td [(a)-333(consecutiv)27(e)-333(c)28(h)28(unk)-334(of)]TJ/F11 9.9626 Tf 101.342 0 Td [(N)]TJ/F10 6.9738 Tf 8.005 -1.494 Td [(I)]TJ/F8 9.9626 Tf 7.338 1.494 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(nl)]TJ/F8 9.9626 Tf 12.47 0 Td [(global)-333(indices.)]TJ -0 g 0 G -/F27 9.9626 Tf -161.589 -15.593 Td [(repl)]TJ -0 g 0 G -/F8 9.9626 Tf 24.498 0 Td [(This)-239(argumen)28(ts)-240(sp)-27(e)-1(ci\014es)-239(to)-239(replicate)-239(all)-239(indices)-240(on)-239(all)-239(pro)-28(cesses.)-413(This)]TJ -2.58 -11.956 Td [(is)-312(a)-311(sp)-28(ecial)-312(purp)-27(ose)-312(data)-312(allo)-27(cation)-312(that)-311(is)-312(useful)-312(in)-311(the)-312(construction)]TJ 0 -11.955 Td [(of)-333(some)-334(m)28(ultilev)28(el)-334(p)1(rec)-1(on)1(ditioners.)]TJ -0 g 0 G - -34.648 -19.579 Td [(2.)]TJ -0 g 0 G - [-500(On)-333(exit)-334(from)-333(this)-333(routine)-333(the)-334(descriptor)-333(is)-333(in)-334(the)-333(build)-333(state.)]TJ -0 g 0 G - 154.698 -29.888 Td [(67)]TJ -0 g 0 G -ET - -endstream -endobj -1322 0 obj -<< -/Length 2667 ->> -stream -0 g 0 G -0 g 0 G 0 g 0 G BT -/F8 9.9626 Tf 162.881 706.129 Td [(3.)]TJ -0 g 0 G - [-500(Calling)-339(the)-339(routine)-339(with)]TJ/F30 9.9626 Tf 121.471 0 Td [(vg)]TJ/F8 9.9626 Tf 13.839 0 Td [(or)]TJ/F30 9.9626 Tf 12.262 0 Td [(parts)]TJ/F8 9.9626 Tf 29.53 0 Td [(implies)-339(that)-339(ev)28(e)-1(ry)-339(pro)-27(cess)-340(will)-339(scan)]TJ -164.372 -11.955 Td [(the)-333(en)27(tire)-333(index)-333(space)-334(to)-333(\014gure)-333(out)-334(t)1(he)-334(lo)-28(cal)-333(indices.)]TJ -0 g 0 G - -12.73 -19.926 Td [(4.)]TJ -0 g 0 G - [-500(Ov)28(erlapp)-28(ed)-333(indices)-334(are)-333(p)-28(ossible)-333(with)-333(b)-28(oth)]TJ/F30 9.9626 Tf 199.198 0 Td [(parts)]TJ/F8 9.9626 Tf 29.473 0 Td [(and)]TJ/F30 9.9626 Tf 19.372 0 Td [(vl)]TJ/F8 9.9626 Tf 13.781 0 Td [(in)28(v)28(o)-28(cations.)]TJ -0 g 0 G - -261.824 -19.925 Td [(5.)]TJ +/F8 9.9626 Tf 276.386 454.587 Td [(T)83(able)-333(19:)-444(Data)-334(t)28(yp)-28(es)]TJ 0 g 0 G - [-500(When)-222(the)-222(subroutine)-223(i)1(s)-223(in)28(v)28(ok)28(ed)-223(with)]TJ/F30 9.9626 Tf 170.611 0 Td [(vl)]TJ/F8 9.9626 Tf 12.674 0 Td [(in)-222(conjunction)-222(with)]TJ/F30 9.9626 Tf 84.96 0 Td [(globalcheck=.true.)]TJ/F8 9.9626 Tf 94.146 0 Td [(,)]TJ -349.661 -11.955 Td [(it)-368(will)-369(p)-28(erform)-368(a)-369(scan)-368(of)-368(the)-369(index)-368(space)-369(to)-368(searc)27(h)-368(for)-368(o)27(v)28(erlap)-368(or)-369(orph)1(an)]TJ 0 -11.955 Td [(indices.)]TJ -0 g 0 G - -12.73 -19.925 Td [(6.)]TJ -0 g 0 G - [-500(When)-222(the)-222(subroutine)-223(i)1(s)-223(in)28(v)28(ok)28(ed)-223(with)]TJ/F30 9.9626 Tf 170.611 0 Td [(vl)]TJ/F8 9.9626 Tf 12.674 0 Td [(in)-222(conjunction)-222(with)]TJ/F30 9.9626 Tf 84.96 0 Td [(globalcheck=.false.)]TJ/F8 9.9626 Tf 99.376 0 Td [(,)]TJ -354.891 -11.956 Td [(no)-405(index)-405(space)-405(scan)-405(will)-405(tak)28(e)-405(place.)-660(Th)28(us)-405(it)-405(is)-405(the)-405(resp)-28(onsibilit)28(y)-405(of)-405(the)]TJ 0 -11.955 Td [(user)-419(to)-418(mak)28(e)-419(sure)-418(that)-419(the)-418(indices)-419(sp)-28(eci\014ed)-418(in)]TJ/F30 9.9626 Tf 211.319 0 Td [(vl)]TJ/F8 9.9626 Tf 14.63 0 Td [(ha)28(v)28(e)-419(neither)-418(orphans)]TJ -225.949 -11.955 Td [(nor)-333(o)27(v)28(erlaps;)-333(if)-333(this)-334(assumption)-333(fails,)-333(results)-334(will)-333(b)-28(e)-333(unpredictable.)]TJ -0 g 0 G - -12.73 -19.925 Td [(7.)]TJ -0 g 0 G - [-500(Orphan)-313(and)-312(o)27(v)28(erlap)-312(indices)-313(are)-313(imp)-28(ossible)-313(b)28(y)-313(construction)-312(when)-313(the)-313(sub-)]TJ 12.73 -11.955 Td [(routine)-333(is)-334(in)28(v)28(ok)28(ed)-334(with)]TJ/F30 9.9626 Tf 103.308 0 Td [(nl)]TJ/F8 9.9626 Tf 13.781 0 Td [(\050alone\051,)-333(or)]TJ/F30 9.9626 Tf 48.734 0 Td [(vg)]TJ/F8 9.9626 Tf 10.461 0 Td [(.)]TJ -0 g 0 G - -34.316 -452.304 Td [(68)]TJ 0 g 0 G +/F27 9.9626 Tf -124.304 -30.984 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.737 0 Td [(p)-123(s)-123(b)]TJ ET - -endstream -endobj -1332 0 obj -<< -/Length 7172 ->> -stream -0 g 0 G -0 g 0 G +q +1 0 0 1 201.095 423.802 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F8 9.9626 Tf 205.31 423.603 Td [(g)-123(a)-123(t)-123(h)-123(e)-123(r)-229(\050)-215(g)-110(l)-110(o)-110(b)]TJ ET q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 270.682 423.802 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(cdins)-375(|)-375(Comm)31(unication)-375(descriptor)-375(insert)-375(routine)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_cdins\050nz,)-525(ia,)-525(ja,)-525(desc_a,)-525(info)-525([,ila,jla]\051)]TJ 0 -11.956 Td [(call)-525(psb_cdins\050nz,ja,desc,info[,jla,mask,lidx]\051)]TJ/F8 9.9626 Tf 14.944 -20.465 Td [(This)-428(subroutine)-427(e)-1(x)1(am)-1(in)1(e)-1(s)-427(the)-428(edges)-428(of)-428(the)-427(graph)-428(asso)-28(ciated)-428(with)-428(the)-427(dis-)]TJ -14.944 -11.955 Td [(cretization)-481(mesh)-480(\050and)-481(isomorphic)-480(to)-481(the)-480(sparsit)27(y)-480(pattern)-481(of)-480(a)-481(linear)-480(system)]TJ 0 -11.955 Td [(co)-28(e\016cien)28(t)-359(matrix\051,)-366(storing)-359(them)-359(as)-359(neces)-1(sary)-359(in)28(to)-359(the)-359(comm)28(unication)-360(d)1(e)-1(scrip-)]TJ 0 -11.955 Td [(tor.)-506(In)-354(th)1(e)-354(\014rst)-354(form)-354(the)-354(edges)-353(are)-354(sp)-28(eci\014ed)-354(as)-354(pairs)-353(of)-354(indices)]TJ/F11 9.9626 Tf 278.053 0 Td [(ia)]TJ/F8 9.9626 Tf 8.699 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F11 9.9626 Tf 3.875 0 Td [(;)-167(j)-57(a)]TJ/F8 9.9626 Tf 14.367 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051;)-364(the)]TJ -319.606 -11.955 Td [(starting)-394(index)]TJ/F11 9.9626 Tf 65.223 0 Td [(ia)]TJ/F8 9.9626 Tf 8.698 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)-394(should)-394(b)-28(elong)-394(to)-394(the)-394(c)-1(u)1(rren)27(t)-394(pro)-28(cess.)-627(In)-394(the)-394(second)-394(form)]TJ -81.228 -11.955 Td [(only)-333(the)-334(remote)-333(indices)]TJ/F11 9.9626 Tf 104.968 0 Td [(j)-57(a)]TJ/F8 9.9626 Tf 9.939 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)-333(are)-334(sp)-27(ec)-1(i\014)1(e)-1(d)1(.)]TJ -0 g 0 G -/F27 9.9626 Tf -122.214 -20.465 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.345 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.344 Td [(nz)]TJ -0 g 0 G -/F8 9.9626 Tf 16.439 0 Td [(the)-333(n)28(um)27(b)-27(er)-334(of)-333(p)-28(oin)28(ts)-333(b)-28(eing)-333(inserted.)]TJ 8.468 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.344 Td [(ia)]TJ -0 g 0 G -/F8 9.9626 Tf 13.734 0 Td [(the)-333(indices)-334(of)-333(the)-333(starting)-334(v)28(ertex)-333(of)-333(the)-334(edges)-333(b)-28(eing)-333(inserted.)]TJ 11.173 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(length)]TJ/F11 9.9626 Tf 172.548 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -208.506 -19.344 Td [(ja)]TJ -0 g 0 G -/F8 9.9626 Tf 14.052 0 Td [(the)-333(indices)-334(of)-333(the)-333(end)-334(v)28(ertex)-333(of)-333(the)-334(edges)-333(b)-28(eing)-333(inserted.)]TJ 10.855 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(length)]TJ/F11 9.9626 Tf 172.548 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -208.506 -19.344 Td [(mask)]TJ -0 g 0 G -/F8 9.9626 Tf 30.664 0 Td [(Mask)-330(en)28(tries)-329(in)]TJ/F30 9.9626 Tf 70.038 0 Td [(ja)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)-330(they)-330(are)-329(inserted)-330(only)-329(when)-329(the)-330(corresp)-28(onding)]TJ/F30 9.9626 Tf 211.627 0 Td [(mask)]TJ/F8 9.9626 Tf -297.883 -11.955 Td [(en)28(tries)-334(are)]TJ/F30 9.9626 Tf 48.54 0 Td [(.true.)]TJ/F8 9.9626 Tf -48.54 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(arra)28(y)-334(of)-333(length)]TJ/F11 9.9626 Tf 165.048 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(,)-333(default)]TJ/F30 9.9626 Tf 39.574 0 Td [(.true.)]TJ/F8 9.9626 Tf 31.382 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -271.962 -19.344 Td [(lidx)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(User)-333(de\014ned)-334(lo)-27(ca)-1(l)-333(indices)-333(for)]TJ/F30 9.9626 Tf 128.851 0 Td [(ja)]TJ/F8 9.9626 Tf 10.46 0 Td [(.)]TJ -138.162 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(length)]TJ/F11 9.9626 Tf 172.548 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -208.506 -20.465 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.344 Td [(desc)]TJ +/F8 9.9626 Tf 274.766 423.603 Td [(x)-381(,)-888(l)-127(o)-127(c)]TJ ET q -1 0 0 1 121.81 168.346 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 312.009 423.802 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F27 9.9626 Tf 125.247 168.146 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(up)-28(dated)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F8 9.9626 Tf 316.265 423.603 Td [(x)-415(,)-874(d)-113(e)-112(s)-113(c)]TJ ET q -1 0 0 1 312.036 120.525 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 360.541 423.802 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 315.174 120.326 Td [(desc)]TJ +/F8 9.9626 Tf 364.652 423.603 Td [(a)-386(,)-888(i)-127(n)-127(f)-127(o)-415(,)-885(r)-124(o)-123(o)-124(t)-230(\051)]TJ/F27 9.9626 Tf -212.57 -11.956 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.737 0 Td [(p)-123(s)-123(b)]TJ ET q -1 0 0 1 336.723 120.525 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 201.095 411.847 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 339.861 120.326 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G - -94.012 -29.888 Td [(69)]TJ -0 g 0 G +/F8 9.9626 Tf 205.31 411.647 Td [(g)-123(a)-123(t)-123(h)-123(e)-123(r)-229(\050)-215(g)-110(l)-110(o)-110(b)]TJ ET - -endstream -endobj -1337 0 obj -<< -/Length 3163 ->> -stream -0 g 0 G -0 g 0 G -0 g 0 G +q +1 0 0 1 270.682 411.847 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q BT -/F27 9.9626 Tf 150.705 706.129 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.925 Td [(ila)]TJ -0 g 0 G -/F8 9.9626 Tf 16.915 0 Td [(the)-333(lo)-28(cal)-333(indices)-334(of)-333(the)-333(s)-1(tar)1(ting)-334(v)28(ertex)-333(of)-334(the)-333(edges)-333(b)-28(eing)-333(inserted.)]TJ 7.991 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(length)]TJ/F11 9.9626 Tf 172.548 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -208.505 -19.925 Td [(jla)]TJ -0 g 0 G -/F8 9.9626 Tf 17.234 0 Td [(the)-333(lo)-28(cal)-333(indices)-334(of)-333(the)-333(end)-334(v)28(ertex)-333(of)-334(the)-333(edges)-333(b)-28(eing)-333(inserted.)]TJ 7.672 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(length)]TJ/F11 9.9626 Tf 172.548 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ/F16 11.9552 Tf -208.505 -21.918 Td [(Notes)]TJ -0 g 0 G -/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ -0 g 0 G - [-500(This)-333(routine)-334(ma)28(y)-333(only)-333(b)-28(e)-334(called)-333(if)-333(the)-334(d)1(e)-1(scriptor)-333(is)-333(in)-333(the)-334(build)-333(state;)]TJ -0 g 0 G - 0 -19.925 Td [(2.)]TJ -0 g 0 G - [-500(This)-305(rou)1(tine)-305(automatically)-305(i)1(gnores)-305(edges)-305(that)-304(do)-305(not)-304(insist)-305(on)-304(the)-305(curren)28(t)]TJ 12.73 -11.955 Td [(pro)-28(cess,)-285(i.)1(e)-1(.)-424(edges)-272(for)-273(whic)28(h)-272(neither)-273(the)-272(starting)-272(nor)-273(the)-272(end)-273(v)28(ertex)-272(b)-28(elong)]TJ 0 -11.955 Td [(to)-333(the)-334(curren)28(t)-333(pro)-28(cess.)]TJ -0 g 0 G - -12.73 -19.926 Td [(3.)]TJ -0 g 0 G - [-500(The)-437(second)-438(form)-437(of)-437(this)-437(routine)-438(wil)1(l)-438(b)-27(e)-438(useful)-437(when)-437(dealing)-437(with)-438(user-)]TJ 12.73 -11.955 Td [(sp)-28(eci\014ed)-333(index)-333(mappings;)-334(see)-333(also)]TJ -0 0 1 rg 0 0 1 RG - [-334(2.3.1)]TJ -0 g 0 G - [(.)]TJ -0 g 0 G - 141.968 -314.819 Td [(70)]TJ -0 g 0 G +/F8 9.9626 Tf 274.766 411.647 Td [(x)-381(,)-888(l)-127(o)-127(c)]TJ ET - -endstream -endobj -1346 0 obj -<< -/Length 6171 ->> -stream -0 g 0 G -0 g 0 G +q +1 0 0 1 312.009 411.847 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F8 9.9626 Tf 316.265 411.647 Td [(x)-415(,)-874(d)-113(e)-112(s)-113(c)]TJ ET q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 360.541 411.847 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(cdasb)-375(|)-375(Comm)31(unication)-375(descriptor)-375(assem)31(bly)-375(routine)]TJ +/F8 9.9626 Tf 364.652 411.647 Td [(a)-386(,)-888(i)-127(n)-127(f)-127(o)-415(,)-885(r)-124(o)-123(o)-124(t)-230(\051)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_cdasb\050desc_a,)-525(info)-525([,)-525(mold]\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -213.947 -26.424 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.505 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(desc)]TJ + 0 -19.505 Td [(lo)-32(c)]TJ ET q -1 0 0 1 121.81 626.17 cm +1 0 0 1 165.713 346.412 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 625.971 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ -ET -q -1 0 0 1 312.036 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 315.174 578.15 Td [(desc)]TJ -ET -q -1 0 0 1 336.723 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 339.861 578.15 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -260.887 -19.925 Td [(mold)]TJ +/F27 9.9626 Tf 169.151 346.213 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 29.805 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(the)-333(in)28(ternal)-333(index)-334(storage.)]TJ -4.898 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-222(as:)-389(a)-222(ob)-56(ject)-222(of)-222(t)28(yp)-28(e)-222(deriv)28(ed)-223(from)-222(\050in)28(teger\051)]TJ/F30 9.9626 Tf 219.87 0 Td [(psb)]TJ +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.117 0 Td [(g)-36(l)-20(ob)]TJ ET q -1 0 0 1 360.991 510.604 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 374.277 346.412 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 364.129 510.405 Td [(T)]TJ +/F11 9.9626 Tf 377.266 346.213 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -207.349 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-255(rank)-254(one)-255(or)-255(t)28(w)27(o)-254(arra)27(y)-254(or)-255(an)-255(ob)-56(j)1(e)-1(ct)-254(of)-255(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 244.743 0 Td [(psb)]TJ ET q -1 0 0 1 369.987 510.604 cm +1 0 0 1 436.673 298.592 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 373.125 510.405 Td [(base)]TJ +/F30 9.9626 Tf 439.811 298.392 Td [(T)]TJ ET q -1 0 0 1 394.674 510.604 cm +1 0 0 1 445.669 298.592 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 397.813 510.405 Td [(vect)]TJ +/F30 9.9626 Tf 448.807 298.392 Td [(vect)]TJ ET q -1 0 0 1 419.361 510.604 cm +1 0 0 1 470.356 298.592 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 422.5 510.405 Td [(type)]TJ/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F30 9.9626 Tf 473.495 298.392 Td [(type)]TJ 0 g 0 G -/F27 9.9626 Tf -343.526 -21.918 Td [(On)-383(Return)]TJ +/F8 9.9626 Tf -297.884 -11.955 Td [(indicated)-333(in)-334(T)84(able)]TJ +0 0 1 rg 0 0 1 RG + [-334(19)]TJ 0 g 0 G + [(.)]TJ 0 g 0 G - 0 -19.926 Td [(desc)]TJ +/F27 9.9626 Tf -24.906 -19.505 Td [(desc)]TJ ET q -1 0 0 1 121.81 468.761 cm +1 0 0 1 172.619 267.131 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 468.561 Td [(a)]TJ +/F27 9.9626 Tf 176.057 266.932 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.55 0 Td [(con)28(tains)-334(data)-333(structures)-333(for)-333(c)-1(omm)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 420.94 cm +1 0 0 1 362.845 219.311 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 420.741 Td [(desc)]TJ +/F30 9.9626 Tf 365.983 219.111 Td [(desc)]TJ ET q -1 0 0 1 336.723 420.94 cm +1 0 0 1 387.532 219.311 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 420.741 Td [(type)]TJ +/F30 9.9626 Tf 390.67 219.111 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -19.926 Td [(info)]TJ +/F27 9.9626 Tf -260.887 -19.505 Td [(ro)-32(ot)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ +/F8 9.9626 Tf 25.93 0 Td [(The)-291(pro)-28(cess)-291(that)-291(holds)-291(the)-291(global)-291(cop)28(y)83(.)-430(If)]TJ/F11 9.9626 Tf 182.523 0 Td [(r)-28(oot)]TJ/F8 9.9626 Tf 20.794 0 Td [(=)]TJ/F14 9.9626 Tf 10.516 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-291(all)-291(the)-291(pro)-28(cesses)-291(will)]TJ -222.606 -11.955 Td [(ha)28(v)28(e)-334(a)-333(cop)28(y)-334(of)-333(the)-333(global)-334(v)28(ector.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable)]TJ/F14 9.9626 Tf 142.079 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F14 9.9626 Tf 7.748 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)]TJ/F14 9.9626 Tf 20.795 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1,)-333(default)]TJ/F14 9.9626 Tf 44.555 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1.)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ +/F27 9.9626 Tf -299.782 -19.505 Td [(On)-383(Return)]TJ 0 g 0 G - [-500(On)-333(exit)-334(from)-333(this)-333(routine)-333(the)-334(descriptor)-333(is)-333(in)-334(the)-333(assem)28(bled)-334(state.)]TJ -12.177 -19.926 Td [(This)-350(call)-350(will)-349(set)-350(up)-350(all)-350(the)-349(nec)-1(essary)-349(information)-350(for)-350(the)-350(h)1(alo)-350(data)-350(exc)28(hanges.)]TJ 0 -11.955 Td [(In)-432(doing)-432(so,)-457(the)-432(library)-432(will)-432(need)-433(to)-432(iden)28(tify)-432(the)-432(set)-432(of)-433(p)1(ro)-28(cesses)-433(o)28(wning)-432(the)]TJ 0 -11.955 Td [(halo)-476(indices)-477(through)-476(the)-477(use)-476(of)-477(the)]TJ/F30 9.9626 Tf 164.818 0 Td [(desc%fnd_owner\050\051)]TJ/F8 9.9626 Tf 88.432 0 Td [(metho)-28(d;)-548(the)-476(o)28(wning)]TJ -253.25 -11.955 Td [(pro)-28(cesses)-365(are)-365(the)-365(top)-27(ological)-365(neigh)28(b)-28(ours)-365(of)-365(the)-365(calling)-365(pro)-27(cess.)-540(If)-364(the)-365(user)-365(has)]TJ 0 -11.955 Td [(some)-228(bac)28(kground)-228(information)-228(on)-228(the)-228(pro)-28(cesses)-228(that)-228(are)-228(neigh)28(b)-28(ours)-228(of)-228(the)-228(curren)28(t)]TJ 0 -11.955 Td [(one,)-533(it)-494(is)-493(p)-28(ossible)-493(to)-493(sp)-28(ecify)-493(explicitly)-494(th)1(e)-494(list)-493(of)-493(adjacen)27(t)-493(pro)-28(cesses)-493(with)-493(a)]TJ 0 -11.956 Td [(call)-393(to)]TJ/F30 9.9626 Tf 31.633 0 Td [(desc%set_p_adjcncy\050list\051)]TJ/F8 9.9626 Tf 125.528 0 Td [(;)-423(this)-393(will)-393(sp)-28(eed)-393(up)-393(the)-393(subsequen)27(t)-393(call)-393(to)]TJ/F30 9.9626 Tf -157.161 -11.955 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)]TJ 0 g 0 G - 119.802 -117.102 Td [(71)]TJ +/F8 9.9626 Tf 166.874 -29.888 Td [(66)]TJ 0 g 0 G ET @@ -14836,181 +14662,328 @@ endobj << /Type /ObjStm /N 100 -/First 982 -/Length 11326 +/First 993 +/Length 12573 >> stream -1227 0 1237 81 1233 238 1234 382 1235 529 1239 676 284 734 1240 791 1241 850 1242 908 -1243 966 1236 1024 1249 1169 1244 1326 1246 1473 1247 1618 1251 1765 1252 1824 1253 1883 1254 1942 -1248 2000 1257 2132 1259 2250 1256 2308 1261 2388 1264 2506 1265 2633 1266 2676 1267 2883 1268 3121 -1269 3397 1263 3633 1255 3692 1260 3751 1276 3847 1272 4004 1273 4148 1274 4295 1278 4442 288 4500 -1279 4557 1280 4616 1281 4674 1282 4732 1275 4790 1285 4947 1287 5065 1284 5124 1291 5217 1288 5356 -1293 5503 292 5561 1294 5618 1295 5677 1296 5735 1290 5793 1300 5950 1289 6107 1297 6251 1298 6395 -1302 6541 1299 6600 1304 6706 1306 6824 296 6882 300 6939 1303 6996 1309 7128 1307 7267 1311 7413 -1312 7472 1308 7531 1315 7650 1313 7789 1317 7947 1318 8005 1314 8063 1321 8195 1323 8313 1324 8372 -1325 8431 1326 8490 1327 8549 1328 8608 1320 8665 1331 8745 1329 8884 1333 9030 304 9088 1330 9145 -1336 9264 1334 9403 1338 9561 1339 9620 1340 9679 1341 9738 1335 9797 1345 9903 1342 10051 1343 10197 +1231 0 1227 59 1234 191 1236 309 1233 368 1245 448 1237 623 1238 767 1239 912 1240 1056 +1241 1201 1247 1348 280 1406 1248 1463 1244 1522 1251 1654 1242 1802 1243 1946 1253 2093 1250 2152 +1260 2245 1254 2420 1255 2564 1256 2710 1257 2856 1258 3000 1262 3147 284 3205 1263 3262 1259 3321 +1266 3453 1264 3592 1268 3740 288 3799 1265 3857 1274 3937 1269 4094 1270 4238 1271 4385 1276 4532 +292 4590 1277 4647 1278 4706 1279 4764 1280 4822 1273 4880 1284 5012 1288 5160 1289 5287 1290 5330 +1291 5537 1292 5775 1293 6051 1272 6287 1282 6434 1286 6580 1287 6639 1283 6698 1297 6846 1299 6964 +1296 7022 1306 7103 1302 7260 1303 7404 1304 7551 1308 7697 296 7756 1309 7814 1310 7873 1311 7932 +1312 7991 1305 8050 1318 8195 1313 8352 1315 8499 1316 8644 1320 8791 1321 8849 1322 8907 1323 8965 +1317 9022 1326 9154 1328 9272 1325 9331 1330 9411 1333 9529 1334 9656 1335 9699 1336 9906 1337 10144 +1338 10420 1332 10656 1324 10714 1329 10773 1345 10869 1341 11026 1342 11170 1343 11317 1347 11463 300 11522 +% 1231 0 obj +<< +/D [1228 0 R /XYZ 270.132 534.109 null] +>> % 1227 0 obj << -/Font << /F46 1231 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F30 810 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1237 0 obj +% 1234 0 obj << /Type /Page -/Contents 1238 0 R -/Resources 1236 0 R +/Contents 1235 0 R +/Resources 1233 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1218 0 R -/Annots [ 1233 0 R 1234 0 R 1235 0 R ] +/Parent 1196 0 R +>> +% 1236 0 obj +<< +/D [1234 0 R /XYZ 149.705 753.953 null] >> % 1233 0 obj << +/Font << /F27 584 0 R /F8 585 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1245 0 obj +<< +/Type /Page +/Contents 1246 0 R +/Resources 1244 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1249 0 R +/Annots [ 1237 0 R 1238 0 R 1239 0 R 1240 0 R 1241 0 R ] +>> +% 1237 0 obj +<< /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [368.549 343.981 444.603 355.106] +/Rect [265.833 407.619 341.887 418.744] /A << /S /GoTo /D (vdata) >> >> -% 1234 0 obj +% 1238 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [225.425 395.94 232.399 406.789] +/A << /S /GoTo /D (table.2) >> +>> +% 1239 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [265.833 327.999 341.887 339.124] +/A << /S /GoTo /D (vdata) >> +>> +% 1240 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [325.411 332.303 337.366 343.151] -/A << /S /GoTo /D (table.15) >> +/Rect [225.425 316.32 232.399 327.169] +/A << /S /GoTo /D (table.2) >> >> -% 1235 0 obj +% 1241 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 264.991 361.779 276.116] +/Rect [259.464 248.379 326.522 259.504] /A << /S /GoTo /D (descdata) >> >> -% 1239 0 obj +% 1247 0 obj +<< +/D [1245 0 R /XYZ 98.895 753.953 null] +>> +% 280 0 obj +<< +/D [1245 0 R /XYZ 99.895 716.092 null] +>> +% 1248 0 obj +<< +/D [1245 0 R /XYZ 270.132 543.606 null] +>> +% 1244 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F30 810 0 R /F27 584 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1251 0 obj +<< +/Type /Page +/Contents 1252 0 R +/Resources 1250 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1249 0 R +/Annots [ 1242 0 R 1243 0 R ] +>> +% 1242 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [316.642 690.964 392.696 702.088] +/A << /S /GoTo /D (vdata) >> +>> +% 1243 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [296.381 679.285 308.336 690.133] +/A << /S /GoTo /D (table.14) >> +>> +% 1253 0 obj +<< +/D [1251 0 R /XYZ 149.705 753.953 null] +>> +% 1250 0 obj +<< +/Font << /F8 585 0 R /F27 584 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1260 0 obj +<< +/Type /Page +/Contents 1261 0 R +/Resources 1259 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1249 0 R +/Annots [ 1254 0 R 1255 0 R 1256 0 R 1257 0 R 1258 0 R ] +>> +% 1254 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [265.833 429.544 341.887 440.669] +/A << /S /GoTo /D (vdata) >> +>> +% 1255 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [225.425 417.865 232.399 428.713] +/A << /S /GoTo /D (table.2) >> +>> +% 1256 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [259.464 351.49 326.522 362.615] +/A << /S /GoTo /D (descdata) >> +>> +% 1257 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [265.833 201.014 341.887 212.139] +/A << /S /GoTo /D (vdata) >> +>> +% 1258 0 obj << -/D [1237 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [245.572 189.336 257.527 200.184] +/A << /S /GoTo /D (table.16) >> +>> +% 1262 0 obj +<< +/D [1260 0 R /XYZ 98.895 753.953 null] >> % 284 0 obj << -/D [1237 0 R /XYZ 99.895 720.077 null] +/D [1260 0 R /XYZ 99.895 716.092 null] >> -% 1240 0 obj +% 1263 0 obj << -/D [1237 0 R /XYZ 270.132 511.222 null] +/D [1260 0 R /XYZ 270.132 556.917 null] +>> +% 1259 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F30 810 0 R /F27 584 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1266 0 obj +<< +/Type /Page +/Contents 1267 0 R +/Resources 1265 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1249 0 R +/Annots [ 1264 0 R ] >> -% 1241 0 obj +% 1264 0 obj << -/D [1237 0 R /XYZ 99.895 480.819 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [350.345 657.464 357.319 668.312] +/A << /S /GoTo /D (section.6) >> >> -% 1242 0 obj +% 1268 0 obj << -/D [1237 0 R /XYZ 99.895 482.756 null] +/D [1266 0 R /XYZ 149.705 753.953 null] >> -% 1243 0 obj +% 288 0 obj << -/D [1237 0 R /XYZ 99.895 470.801 null] +/D [1266 0 R /XYZ 150.705 716.092 null] >> -% 1236 0 obj +% 1265 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F27 572 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1249 0 obj +% 1274 0 obj << /Type /Page -/Contents 1250 0 R -/Resources 1248 0 R +/Contents 1275 0 R +/Resources 1273 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1218 0 R -/Annots [ 1244 0 R 1246 0 R 1247 0 R ] +/Parent 1249 0 R +/Annots [ 1269 0 R 1270 0 R 1271 0 R ] >> -% 1244 0 obj +% 1269 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [253.818 555.748 265.774 566.597] -/A << /S /GoTo /D (table.15) >> +/Rect [368.549 343.463 444.603 354.588] +/A << /S /GoTo /D (vdata) >> >> -% 1246 0 obj +% 1270 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [457.829 326.22 464.803 338.84] -/A << /S /GoTo /D (figure.8) >> +/Rect [325.411 331.785 337.366 342.633] +/A << /S /GoTo /D (table.17) >> >> -% 1247 0 obj +% 1271 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [357.569 302.697 364.543 313.546] -/A << /S /GoTo /D (figure.7) >> ->> -% 1251 0 obj -<< -/D [1249 0 R /XYZ 149.705 753.953 null] +/Rect [294.721 264.029 361.779 275.154] +/A << /S /GoTo /D (descdata) >> >> -% 1252 0 obj +% 1276 0 obj << -/D [1249 0 R /XYZ 150.705 465.033 null] +/D [1274 0 R /XYZ 98.895 753.953 null] >> -% 1253 0 obj +% 292 0 obj << -/D [1249 0 R /XYZ 150.705 431.215 null] +/D [1274 0 R /XYZ 99.895 716.092 null] >> -% 1254 0 obj +% 1277 0 obj << -/D [1249 0 R /XYZ 150.705 387.38 null] +/D [1274 0 R /XYZ 270.132 514.036 null] >> -% 1248 0 obj +% 1278 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F11 770 0 R /F16 570 0 R /F10 786 0 R /F30 784 0 R >> -/ProcSet [ /PDF /Text ] +/D [1274 0 R /XYZ 99.895 482.745 null] >> -% 1257 0 obj +% 1279 0 obj << -/Type /Page -/Contents 1258 0 R -/Resources 1256 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1218 0 R +/D [1274 0 R /XYZ 99.895 484.682 null] >> -% 1259 0 obj +% 1280 0 obj << -/D [1257 0 R /XYZ 98.895 753.953 null] +/D [1274 0 R /XYZ 99.895 472.727 null] >> -% 1256 0 obj +% 1273 0 obj << -/Font << /F31 790 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F27 584 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1261 0 obj +% 1284 0 obj << /Type /Page -/Contents 1262 0 R -/Resources 1260 0 R +/Contents 1285 0 R +/Resources 1283 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1218 0 R +/Parent 1249 0 R +/Annots [ 1272 0 R 1282 0 R ] >> -% 1264 0 obj +% 1288 0 obj << /Producer (GPL Ghostscript 9.22) -/CreationDate (D:20180323100658Z00'00') -/ModDate (D:20180323100658Z00'00') +/CreationDate (D:20180323100645Z00'00') +/ModDate (D:20180323100645Z00'00') >> -% 1265 0 obj +% 1289 0 obj << /Type /ExtGState /OPM 1 >> -% 1266 0 obj +% 1290 0 obj << /BaseFont /XYUGDR+Times-Roman -/FontDescriptor 1268 0 R +/FontDescriptor 1292 0 R /Type /Font /FirstChar 48 /LastChar 57 @@ -15018,10 +14991,10 @@ stream /Encoding /WinAnsiEncoding /Subtype /Type1 >> -% 1267 0 obj +% 1291 0 obj << /BaseFont /XISTAL+Times-Bold -/FontDescriptor 1269 0 R +/FontDescriptor 1293 0 R /Type /Font /FirstChar 48 /LastChar 80 @@ -15029,7 +15002,7 @@ stream /Encoding /WinAnsiEncoding /Subtype /Type1 >> -% 1268 0 obj +% 1292 0 obj << /Type /FontDescriptor /FontName /XYUGDR+Times-Roman @@ -15042,9 +15015,9 @@ stream /StemV 71 /MissingWidth 250 /CharSet (/eight/five/four/nine/one/seven/six/three/two/zero) -/FontFile3 1270 0 R +/FontFile3 1294 0 R >> -% 1269 0 obj +% 1293 0 obj << /Type /FontDescriptor /FontName /XISTAL+Times-Bold @@ -15057,373 +15030,271 @@ stream /StemV 90 /MissingWidth 250 /CharSet (/P/one/zero) -/FontFile3 1271 0 R ->> -% 1263 0 obj -<< -/D [1261 0 R /XYZ 149.705 753.953 null] ->> -% 1255 0 obj -<< -/D [1261 0 R /XYZ 283.692 272.519 null] ->> -% 1260 0 obj -<< -/Font << /F8 573 0 R >> -/XObject << /Im4 1245 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 1276 0 obj -<< -/Type /Page -/Contents 1277 0 R -/Resources 1275 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1283 0 R -/Annots [ 1272 0 R 1273 0 R 1274 0 R ] +/FontFile3 1295 0 R >> % 1272 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [368.549 295.182 444.603 306.307] -/A << /S /GoTo /D (vdata) >> ->> -% 1273 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [205.998 285.441 217.953 294.352] -/A << /S /GoTo /D (table.16) >> +/Rect [213.636 625.431 225.591 634.343] +/A << /S /GoTo /D (table.17) >> >> -% 1274 0 obj +% 1282 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 215.901 361.779 227.026] -/A << /S /GoTo /D (descdata) >> ->> -% 1278 0 obj -<< -/D [1276 0 R /XYZ 98.895 753.953 null] ->> -% 288 0 obj -<< -/D [1276 0 R /XYZ 99.895 720.077 null] ->> -% 1279 0 obj -<< -/D [1276 0 R /XYZ 270.132 466.542 null] ->> -% 1280 0 obj -<< -/D [1276 0 R /XYZ 99.895 435.558 null] ->> -% 1281 0 obj -<< -/D [1276 0 R /XYZ 99.895 435.558 null] ->> -% 1282 0 obj -<< -/D [1276 0 R /XYZ 99.895 423.603 null] ->> -% 1275 0 obj -<< -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F7 785 0 R /F27 572 0 R /F30 784 0 R >> -/ProcSet [ /PDF /Text ] +/Rect [457.906 278.167 464.88 290.786] +/A << /S /GoTo /D (figure.7) >> >> -% 1285 0 obj +% 1286 0 obj << -/Type /Page -/Contents 1286 0 R -/Resources 1284 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1283 0 R +/D [1284 0 R /XYZ 149.705 753.953 null] >> % 1287 0 obj << -/D [1285 0 R /XYZ 149.705 753.953 null] +/D [1284 0 R /XYZ 283.692 317.353 null] >> -% 1284 0 obj +% 1283 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F11 796 0 R /F16 582 0 R /F30 810 0 R >> +/XObject << /Im3 1281 0 R >> /ProcSet [ /PDF /Text ] >> -% 1291 0 obj +% 1297 0 obj << /Type /Page -/Contents 1292 0 R -/Resources 1290 0 R +/Contents 1298 0 R +/Resources 1296 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1283 0 R -/Annots [ 1288 0 R ] ->> -% 1288 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 210.686 361.779 221.811] -/A << /S /GoTo /D (descdata) >> ->> -% 1293 0 obj -<< -/D [1291 0 R /XYZ 98.895 753.953 null] +/Parent 1301 0 R >> -% 292 0 obj -<< -/D [1291 0 R /XYZ 99.895 720.077 null] ->> -% 1294 0 obj -<< -/D [1291 0 R /XYZ 270.132 451.038 null] ->> -% 1295 0 obj +% 1299 0 obj << -/D [1291 0 R /XYZ 99.895 417.777 null] +/D [1297 0 R /XYZ 98.895 753.953 null] >> % 1296 0 obj << -/D [1291 0 R /XYZ 99.895 417.777 null] ->> -% 1290 0 obj -<< -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F10 786 0 R /F14 787 0 R /F7 785 0 R /F27 572 0 R /F30 784 0 R >> +/Font << /F46 1300 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1300 0 obj +% 1306 0 obj << /Type /Page -/Contents 1301 0 R -/Resources 1299 0 R +/Contents 1307 0 R +/Resources 1305 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1283 0 R -/Annots [ 1289 0 R 1297 0 R 1298 0 R ] +/Parent 1301 0 R +/Annots [ 1302 0 R 1303 0 R 1304 0 R ] >> -% 1289 0 obj +% 1302 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [336.331 643.143 412.385 654.268] +/Rect [419.358 343.981 495.412 355.106] /A << /S /GoTo /D (vdata) >> >> -% 1297 0 obj +% 1303 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [174.615 543.516 250.669 554.641] -/A << /S /GoTo /D (vdata) >> +/Rect [376.221 332.303 388.176 343.151] +/A << /S /GoTo /D (table.18) >> >> -% 1298 0 obj +% 1304 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [473.75 543.516 485.705 554.641] -/A << /S /GoTo /D (table.17) >> ->> -% 1302 0 obj -<< -/D [1300 0 R /XYZ 149.705 753.953 null] ->> -% 1299 0 obj -<< -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R /F11 770 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 1304 0 obj -<< -/Type /Page -/Contents 1305 0 R -/Resources 1303 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1283 0 R +/Rect [345.53 264.991 412.588 276.116] +/A << /S /GoTo /D (descdata) >> >> -% 1306 0 obj +% 1308 0 obj << -/D [1304 0 R /XYZ 98.895 753.953 null] +/D [1306 0 R /XYZ 149.705 753.953 null] >> % 296 0 obj << -/D [1304 0 R /XYZ 99.895 716.092 null] ->> -% 300 0 obj -<< -/D [1304 0 R /XYZ 99.895 696.263 null] ->> -% 1303 0 obj -<< -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F11 770 0 R /F14 787 0 R >> -/ProcSet [ /PDF /Text ] +/D [1306 0 R /XYZ 150.705 716.092 null] >> % 1309 0 obj << -/Type /Page -/Contents 1310 0 R -/Resources 1308 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1283 0 R -/Annots [ 1307 0 R ] +/D [1306 0 R /XYZ 320.941 511.222 null] >> -% 1307 0 obj +% 1310 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 325.282 412.588 336.407] -/A << /S /GoTo /D (descdata) >> +/D [1306 0 R /XYZ 150.705 480.819 null] >> % 1311 0 obj << -/D [1309 0 R /XYZ 149.705 753.953 null] +/D [1306 0 R /XYZ 150.705 482.756 null] >> % 1312 0 obj << -/D [1309 0 R /XYZ 150.705 234.372 null] +/D [1306 0 R /XYZ 150.705 470.801 null] >> -% 1308 0 obj +% 1305 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R /F11 770 0 R /F16 570 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F27 584 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1315 0 obj +% 1318 0 obj << /Type /Page -/Contents 1316 0 R -/Resources 1314 0 R +/Contents 1319 0 R +/Resources 1317 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1319 0 R -/Annots [ 1313 0 R ] +/Parent 1301 0 R +/Annots [ 1313 0 R 1315 0 R 1316 0 R ] >> % 1313 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [357.982 215.702 380.454 226.827] -/A << /S /GoTo /D (subsubsection.2.3.1) >> +/Rect [203.009 555.748 214.964 566.597] +/A << /S /GoTo /D (table.18) >> >> -% 1317 0 obj +% 1315 0 obj << -/D [1315 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [407.019 326.22 413.993 338.84] +/A << /S /GoTo /D (figure.8) >> >> -% 1318 0 obj +% 1316 0 obj << -/D [1315 0 R /XYZ 99.895 134.155 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [306.759 302.697 313.733 313.546] +/A << /S /GoTo /D (figure.7) >> >> -% 1314 0 obj +% 1320 0 obj << -/Font << /F30 784 0 R /F8 573 0 R /F27 572 0 R /F14 787 0 R /F11 770 0 R /F10 786 0 R >> -/ProcSet [ /PDF /Text ] +/D [1318 0 R /XYZ 98.895 753.953 null] >> % 1321 0 obj << -/Type /Page -/Contents 1322 0 R -/Resources 1320 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1319 0 R +/D [1318 0 R /XYZ 99.895 465.033 null] >> -% 1323 0 obj +% 1322 0 obj << -/D [1321 0 R /XYZ 149.705 753.953 null] +/D [1318 0 R /XYZ 99.895 431.215 null] >> -% 1324 0 obj +% 1323 0 obj << -/D [1321 0 R /XYZ 150.705 716.092 null] +/D [1318 0 R /XYZ 99.895 387.38 null] >> -% 1325 0 obj +% 1317 0 obj << -/D [1321 0 R /XYZ 150.705 688.251 null] +/Font << /F27 584 0 R /F8 585 0 R /F11 796 0 R /F16 582 0 R /F10 812 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] >> % 1326 0 obj << -/D [1321 0 R /XYZ 150.705 668.049 null] ->> -% 1327 0 obj -<< -/D [1321 0 R /XYZ 150.705 626.428 null] +/Type /Page +/Contents 1327 0 R +/Resources 1325 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1301 0 R >> % 1328 0 obj << -/D [1321 0 R /XYZ 150.705 568.7 null] +/D [1326 0 R /XYZ 149.705 753.953 null] >> -% 1320 0 obj +% 1325 0 obj << -/Font << /F8 573 0 R /F30 784 0 R >> +/Font << /F31 816 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1331 0 obj +% 1330 0 obj << /Type /Page -/Contents 1332 0 R -/Resources 1330 0 R +/Contents 1331 0 R +/Resources 1329 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1319 0 R -/Annots [ 1329 0 R ] ->> -% 1329 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 117.115 361.779 128.24] -/A << /S /GoTo /D (descdata) >> +/Parent 1301 0 R >> % 1333 0 obj << -/D [1331 0 R /XYZ 98.895 753.953 null] +/Producer (GPL Ghostscript 9.22) +/CreationDate (D:20180323100658Z00'00') +/ModDate (D:20180323100658Z00'00') >> -% 304 0 obj +% 1334 0 obj << -/D [1331 0 R /XYZ 99.895 720.077 null] +/Type /ExtGState +/OPM 1 >> -% 1330 0 obj +% 1335 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F11 770 0 R /F27 572 0 R >> -/ProcSet [ /PDF /Text ] +/BaseFont /XYUGDR+Times-Roman +/FontDescriptor 1337 0 R +/Type /Font +/FirstChar 48 +/LastChar 57 +/Widths [ 500 500 500 500 500 500 500 500 500 500] +/Encoding /WinAnsiEncoding +/Subtype /Type1 >> % 1336 0 obj << -/Type /Page -/Contents 1337 0 R -/Resources 1335 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1319 0 R -/Annots [ 1334 0 R ] +/BaseFont /XISTAL+Times-Bold +/FontDescriptor 1338 0 R +/Type /Font +/FirstChar 48 +/LastChar 80 +/Widths [ 500 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 611] +/Encoding /WinAnsiEncoding +/Subtype /Type1 >> -% 1334 0 obj +% 1337 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [325.383 402.324 347.855 413.172] -/A << /S /GoTo /D (subsubsection.2.3.1) >> +/Type /FontDescriptor +/FontName /XYUGDR+Times-Roman +/FontBBox [ 0 -14 476 688] +/Flags 65568 +/Ascent 688 +/CapHeight 688 +/Descent -14 +/ItalicAngle 0 +/StemV 71 +/MissingWidth 250 +/CharSet (/eight/five/four/nine/one/seven/six/three/two/zero) +/FontFile3 1339 0 R >> % 1338 0 obj << -/D [1336 0 R /XYZ 149.705 753.953 null] ->> -% 1339 0 obj -<< -/D [1336 0 R /XYZ 150.705 496.913 null] +/Type /FontDescriptor +/FontName /XISTAL+Times-Bold +/FontBBox [ 0 -13 600 688] +/Flags 65568 +/Ascent 688 +/CapHeight 676 +/Descent -13 +/ItalicAngle 0 +/StemV 90 +/MissingWidth 250 +/CharSet (/P/one/zero) +/FontFile3 1340 0 R >> -% 1340 0 obj +% 1332 0 obj << -/D [1336 0 R /XYZ 150.705 475.051 null] +/D [1330 0 R /XYZ 98.895 753.953 null] >> -% 1341 0 obj +% 1324 0 obj << -/D [1336 0 R /XYZ 150.705 431.215 null] +/D [1330 0 R /XYZ 232.883 272.519 null] >> -% 1335 0 obj +% 1329 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F11 770 0 R /F16 570 0 R >> +/Font << /F8 585 0 R >> +/XObject << /Im4 1314 0 R >> /ProcSet [ /PDF /Text ] >> % 1345 0 obj @@ -15432,430 +15303,551 @@ stream /Contents 1346 0 R /Resources 1344 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1319 0 R -/Annots [ 1342 0 R 1343 0 R ] +/Parent 1301 0 R +/Annots [ 1341 0 R 1342 0 R 1343 0 R ] +>> +% 1341 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [419.358 295.182 495.412 306.307] +/A << /S /GoTo /D (vdata) >> >> % 1342 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 574.94 361.779 586.065] -/A << /S /GoTo /D (descdata) >> +/Rect [256.807 285.441 268.762 294.352] +/A << /S /GoTo /D (table.19) >> >> % 1343 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 417.531 361.779 428.656] +/Rect [345.53 215.901 412.588 227.026] /A << /S /GoTo /D (descdata) >> >> +% 1347 0 obj +<< +/D [1345 0 R /XYZ 149.705 753.953 null] +>> +% 300 0 obj +<< +/D [1345 0 R /XYZ 150.705 716.092 null] +>> endstream endobj -1354 0 obj +1355 0 obj << -/Length 3278 +/Length 1455 >> stream 0 g 0 G 0 g 0 G +0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F27 9.9626 Tf 99.895 706.129 Td [(glob)]TJ ET q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 121.587 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(cdcp)31(y)-375(|)-375(Copies)-375(a)-375(comm)31(unication)-375(descriptor)]TJ +/F27 9.9626 Tf 125.024 706.129 Td [(x)]TJ 0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(The)-333(arra)27(y)-333(where)-333(the)-334(lo)-27(cal)-334(parts)-333(m)28(ust)-334(b)-27(e)-334(gathered.)]TJ -11.25 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(or)-334(t)28(w)28(o)-334(arra)28(y)-333(with)-333(the)]TJ/F30 9.9626 Tf 204.4 0 Td [(ALLOCATABLE)]TJ/F8 9.9626 Tf 60.855 0 Td [(attribute.)]TJ 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_cdcpy\050desc_in,)-525(desc_out,)-525(info\051)]TJ +/F27 9.9626 Tf -290.162 -19.925 Td [(info)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ + 141.968 -500.124 Td [(67)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +ET + +endstream +endobj +1362 0 obj +<< +/Length 7813 +>> +stream 0 g 0 G 0 g 0 G - 0 -19.925 Td [(desc)]TJ +BT +/F16 11.9552 Tf 150.705 706.129 Td [(5.4)-1125(psb)]TJ ET q -1 0 0 1 172.619 626.17 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 202.396 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F27 9.9626 Tf 176.057 625.971 Td [(in)]TJ -0 g 0 G -/F8 9.9626 Tf 14.528 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -14.974 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(scatter)-375(|)-375(Scatter)-375(Global)-375(Dense)-375(Matrix)]TJ/F8 9.9626 Tf -55.726 -19.28 Td [(These)-315(subroutines)-315(scatters)-315(the)-315(p)-28(ortions)-315(of)-315(global)-315(dense)-315(matrix)-315(o)28(wned)-315(b)27(y)-315(a)-315(pro-)]TJ 0 -11.955 Td [(cess)-333(to)-334(all)-333(the)-333(pro)-28(cesses)-334(in)-333(the)-333(pro)-28(cesses)-334(grid.)]TJ/F11 9.9626 Tf 119.021 -25.291 Td [(l)-20(oc)]TJ ET q -1 0 0 1 362.845 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 282.633 649.802 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 365.983 578.15 Td [(desc)]TJ +/F11 9.9626 Tf 285.622 649.603 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F14 9.9626 Tf 6.084 1.494 Td [(\040)]TJ/F11 9.9626 Tf 12.73 0 Td [(scatter)]TJ/F8 9.9626 Tf 30.853 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(g)-36(l)-20(ob)]TJ ET q -1 0 0 1 387.532 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 362.838 649.802 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 390.67 578.15 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +/F11 9.9626 Tf 365.827 649.603 Td [(x)]TJ/F8 9.9626 Tf 5.693 0 Td [(\051)]TJ -220.815 -22.875 Td [(where:)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.926 Td [(desc)]TJ +/F11 9.9626 Tf 0 -21.361 Td [(g)-36(l)-19(o)-1(b)]TJ ET q -1 0 0 1 172.619 536.507 cm +1 0 0 1 168.775 605.567 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 176.057 536.307 Td [(out)]TJ +/F11 9.9626 Tf 172.212 605.367 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 21.53 0 Td [(the)-333(comm)27(unication)-333(descriptor)-333(cop)28(y)83(.)]TJ -21.976 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F8 9.9626 Tf 10.675 0 Td [(is)-333(the)-334(global)-333(matrix)]TJ/F11 9.9626 Tf 88.917 0 Td [(g)-36(l)-20(ob)]TJ ET q -1 0 0 1 362.845 488.686 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 289.785 605.567 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 365.983 488.487 Td [(desc)]TJ +/F11 9.9626 Tf 292.773 605.367 Td [(x)]TJ/F7 6.9738 Tf 5.694 -1.494 Td [(1:)]TJ/F10 6.9738 Tf 6.227 0 Td [(m;)]TJ/F7 6.9738 Tf 9.436 0 Td [(1:)]TJ/F10 6.9738 Tf 6.226 0 Td [(n)]TJ +0 g 0 G +/F11 9.9626 Tf -169.651 -20.345 Td [(l)-20(oc)]TJ ET q -1 0 0 1 387.532 488.686 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 163.701 583.727 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F30 9.9626 Tf 390.67 488.487 Td [(type)]TJ +/F11 9.9626 Tf 167.139 583.528 Td [(x)]TJ/F10 6.9738 Tf 5.693 -1.494 Td [(i)]TJ 0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +/F8 9.9626 Tf 8.299 1.494 Td [(is)-333(the)-334(lo)-27(cal)-334(p)-28(or)1(tion)-334(of)-333(global)-333(dense)-334(matrix)-333(on)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 234.703 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -19.926 Td [(info)]TJ +/F11 9.9626 Tf -268.562 -21.839 Td [(scatter)]TJ +0 g 0 G +/F8 9.9626 Tf 35.834 0 Td [(is)-333(the)-334(scatter)-333(function.)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ 0 g 0 G - 141.968 -330.303 Td [(72)]TJ 0 g 0 G ET - -endstream -endobj -1359 0 obj -<< -/Length 2243 ->> -stream +q +1 0 0 1 228.797 539.65 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +Q +BT +/F11 9.9626 Tf 234.775 531.082 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F11 9.9626 Tf 3.317 1.494 Td [(;)-167(y)]TJ/F27 9.9626 Tf 111.399 0 Td [(Subroutine)]TJ +ET +q +1 0 0 1 228.797 527.296 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +Q +BT +/F8 9.9626 Tf 234.775 518.729 Td [(In)28(teger)-9028(psb)]TJ +ET +q +1 0 0 1 370.782 518.928 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 373.771 518.729 Td [(scatter)]TJ -138.996 -11.956 Td [(Short)-333(Precision)-334(Real)-3102(psb)]TJ +ET +q +1 0 0 1 370.782 506.973 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 373.771 506.773 Td [(scatter)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Real)-3314(psb)]TJ +ET +q +1 0 0 1 370.782 495.017 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 373.771 494.818 Td [(scatter)]TJ -138.996 -11.955 Td [(Short)-333(Precision)-334(Complex)-1200(psb)]TJ +ET +q +1 0 0 1 370.782 483.062 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 373.771 482.863 Td [(scatter)]TJ -138.996 -11.955 Td [(Long)-333(Precision)-334(Complex)-1411(psb)]TJ +ET +q +1 0 0 1 370.782 471.107 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 373.771 470.908 Td [(scatter)]TJ +ET +q +1 0 0 1 228.797 467.122 cm +[]0 d 0 J 0.398 w 0 0 m 187.526 0 l S +Q +0 g 0 G +BT +/F8 9.9626 Tf 276.386 439.083 Td [(T)83(able)-333(20:)-444(Data)-334(t)28(yp)-28(es)]TJ 0 g 0 G 0 g 0 G +/F27 9.9626 Tf -124.304 -33.261 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.99 0 Td [(p)-148(s)-149(b)]TJ +ET +q +1 0 0 1 202.107 406.021 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F8 9.9626 Tf 206.575 405.822 Td [(s)-149(c)-148(a)-149(t)-148(t)-148(e)-149(r)-254(\050)-215(g)-110(l)-110(o)-110(b)]TJ ET q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 276.66 406.021 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 280.744 405.822 Td [(x)-381(,)-888(l)-127(o)-127(c)]TJ +ET +q +1 0 0 1 317.987 406.021 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 322.243 405.822 Td [(x)-415(,)-874(d)-113(e)-112(s)-113(c)]TJ +ET +q +1 0 0 1 366.519 406.021 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(cdfree)-375(|)-375(F)94(rees)-375(a)-375(comm)31(unication)-375(descriptor)]TJ +/F8 9.9626 Tf 370.63 405.822 Td [(a)-386(,)-888(i)-127(n)-127(f)-127(o)-415(,)-864(r)-103(o)-103(o)-104(t)-367(,)-808(m)-47(o)-46(l)-47(d)-152(\051)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_cdfree\050desc_a,)-525(info\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -219.925 -30.766 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -21.84 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(desc)]TJ + 0 -21.839 Td [(glob)]TJ ET q -1 0 0 1 121.81 626.17 cm +1 0 0 1 172.397 331.576 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 625.971 Td [(a)]TJ +/F27 9.9626 Tf 175.834 331.377 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(The)-333(arra)27(y)-333(that)-333(m)28(ust)-334(b)-27(e)-334(scattered)-333(in)28(to)-334(lo)-28(cal)-333(pieces.)]TJ -11.251 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(or)-333(t)28(w)28(o)-334(arra)28(y)84(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -21.839 Td [(desc)]TJ +ET +q +1 0 0 1 172.619 261.916 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 176.057 261.717 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor)-333(to)-333(b)-28(e)-334(freed.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.55 0 Td [(con)28(tains)-334(data)-333(structures)-333(for)-333(c)-1(omm)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 578.35 cm +1 0 0 1 362.845 214.095 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 578.15 Td [(desc)]TJ +/F30 9.9626 Tf 365.983 213.896 Td [(desc)]TJ ET q -1 0 0 1 336.723 578.35 cm +1 0 0 1 387.532 214.095 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 578.15 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ +/F30 9.9626 Tf 390.67 213.896 Td [(type)]TJ 0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G - 0 -19.926 Td [(info)]TJ +/F27 9.9626 Tf -260.887 -21.839 Td [(ro)-32(ot)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ +/F8 9.9626 Tf 25.93 0 Td [(The)-420(pro)-27(ce)-1(ss)-419(that)-420(holds)-419(the)-420(global)-420(cop)28(y)83(.)-703(If)]TJ/F11 9.9626 Tf 194.21 0 Td [(r)-28(oot)]TJ/F8 9.9626 Tf 22.228 0 Td [(=)]TJ/F14 9.9626 Tf 11.949 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-420(all)-419(the)-420(pro)-28(cesses)]TJ -237.16 -11.956 Td [(ha)28(v)28(e)-334(a)-333(cop)28(y)-334(of)-333(the)-333(global)-334(v)28(ector.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-344(as)-1(:)-467(an)-344(in)28(tege)-1(r)-344(v)55(ariabl)1(e)]TJ/F14 9.9626 Tf 142.757 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F14 9.9626 Tf 7.937 0 Td [(\024)]TJ/F11 9.9626 Tf 10.705 0 Td [(r)-28(oot)]TJ/F14 9.9626 Tf 20.983 0 Td [(\024)]TJ/F11 9.9626 Tf 10.704 0 Td [(np)]TJ/F14 9.9626 Tf 13.282 0 Td [(\000)]TJ/F8 9.9626 Tf 10.038 0 Td [(1,)-347(default)]TJ/F30 9.9626 Tf 44.809 0 Td [(psb_root_)]TJ/F8 9.9626 Tf 47.073 0 Td [(,)]TJ -316.037 -11.955 Td [(i.e.)-444(pro)-28(cess)-334(0.)]TJ 0 g 0 G - 141.968 -398.049 Td [(73)]TJ + 141.968 -29.888 Td [(68)]TJ 0 g 0 G ET endstream endobj -1366 0 obj +1371 0 obj << -/Length 5916 +/Length 4181 >> stream 0 g 0 G 0 g 0 G +0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F27 9.9626 Tf 99.895 706.129 Td [(mold)]TJ +0 g 0 G +/F8 9.9626 Tf 29.805 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(the)-333(in)28(ternal)-333(v)27(ector)-333(storage.)]TJ -4.898 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-273(as:)-414(an)-274(ob)-55(ject)-273(of)-274(a)-273(class)-273(deriv)28(ed)-274(from)]TJ/F30 9.9626 Tf 198.26 0 Td [(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 339.381 658.507 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(cdbldext)-282(|)-283(Build)-282(an)-282(extended)-283(comm)31(unication)-282(descrip-)]TJ -25.091 -13.948 Td [(tor)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf 0 -19.114 Td [(call)-525(psb_cdbldext\050a,desc_a,nl,desc_out,)-525(info,)-525(extype\051)]TJ/F8 9.9626 Tf 14.944 -23.476 Td [(This)-298(subroutin)1(e)-298(builds)-298(an)-297(extended)-298(comm)28(unication)-298(descriptor,)-305(based)-297(on)-298(the)]TJ -14.944 -11.955 Td [(input)-389(descriptor)]TJ/F30 9.9626 Tf 74.287 0 Td [(desc_a)]TJ/F8 9.9626 Tf 35.261 0 Td [(and)-389(on)-390(the)-389(stencil)-390(sp)-27(eci\014ed)-390(through)-389(the)-389(input)-390(sparse)]TJ -109.548 -11.956 Td [(matrix)]TJ/F30 9.9626 Tf 32.406 0 Td [(a)]TJ/F8 9.9626 Tf 5.231 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -37.637 -21.094 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -21.483 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -21.484 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(A)-333(sparse)-334(matrix)-333(Scop)-28(e:)]TJ/F27 9.9626 Tf 101.176 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -109.893 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(structured)-333(data)-333(t)27(yp)-27(e.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -21.484 Td [(desc)]TJ +/F30 9.9626 Tf 342.519 658.308 Td [(T)]TJ ET q -1 0 0 1 172.619 504.47 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 348.377 658.507 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F27 9.9626 Tf 176.057 504.27 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F30 9.9626 Tf 351.515 658.308 Td [(base)]TJ +ET +q +1 0 0 1 373.064 658.507 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 376.202 658.308 Td [(vect)]TJ +ET +q +1 0 0 1 397.751 658.507 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 400.89 658.308 Td [(type)]TJ/F8 9.9626 Tf 20.921 0 Td [(;)-293(this)]TJ -297.009 -11.955 Td [(is)-333(only)-334(allo)28(w)28(ed)-333(when)-334(lo)-27(c)]TJ +ET +q +1 0 0 1 231.17 646.552 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 234.159 646.353 Td [(x)-333(is)-334(of)-333(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 52.359 0 Td [(psb)]TJ ET q -1 0 0 1 362.845 456.649 cm +1 0 0 1 302.837 646.552 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 456.45 Td [(Tspmat)]TJ +/F30 9.9626 Tf 305.975 646.353 Td [(T)]TJ ET q -1 0 0 1 397.993 456.649 cm +1 0 0 1 311.833 646.552 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 401.131 456.45 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -271.347 -21.484 Td [(nl)]TJ -0 g 0 G -/F8 9.9626 Tf 14.529 0 Td [(the)-333(n)28(um)27(b)-27(er)-334(of)-333(additional)-333(la)28(y)27(ers)-333(desired.)]TJ 10.377 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -57.708 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)]TJ/F11 9.9626 Tf 130.428 0 Td [(nl)]TJ/F14 9.9626 Tf 11.916 0 Td [(\025)]TJ/F8 9.9626 Tf 10.516 0 Td [(0.)]TJ -0 g 0 G -/F27 9.9626 Tf -177.766 -21.483 Td [(ext)32(yp)-32(e)]TJ +/F30 9.9626 Tf 314.971 646.353 Td [(vect)]TJ +ET +q +1 0 0 1 336.52 646.552 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 339.658 646.353 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 38.397 0 Td [(the)-333(kind)-334(of)-333(estension)-333(required.)]TJ -13.491 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -57.708 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 44.396 0 Td [(.)]TJ -69.58 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-419(as:)-616(an)-420(in)28(teger)-419(v)55(alue)]TJ/F30 9.9626 Tf 135.566 0 Td [(psb_ovt_xhal_)]TJ/F8 9.9626 Tf 67.995 0 Td [(,)]TJ/F30 9.9626 Tf 7.159 0 Td [(psb_ovt_asov_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)-441(default:)]TJ/F30 9.9626 Tf -278.714 -11.955 Td [(psb_ovt_xhal_)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -23.476 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -260.685 -19.925 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -21.484 Td [(desc)]TJ + 0 -19.926 Td [(lo)-32(c)]TJ ET q -1 0 0 1 172.619 261.126 cm +1 0 0 1 114.904 606.702 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 176.057 260.927 Td [(out)]TJ +/F27 9.9626 Tf 118.341 606.502 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 21.53 0 Td [(the)-333(extended)-334(comm)28(unication)-333(descriptor.)]TJ -21.976 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 11.028 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(dense)-333(matrix)]TJ/F11 9.9626 Tf 176.118 0 Td [(g)-36(l)-19(o)-1(b)]TJ +ET +q +1 0 0 1 323.467 606.702 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F11 9.9626 Tf 326.456 606.502 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ -207.348 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-244(as:)-400(a)-244(ran)1(k)-244(one)-244(or)-244(t)27(w)28(o)-244(ALLOCA)83(T)84(ABLE)-244(arra)28(y)-244(or)-244(an)-244(ob)-56(ject)-244(of)-244(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 0 -11.955 Td [(psb)]TJ +ET +q +1 0 0 1 141.121 546.926 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 144.259 546.727 Td [(T)]TJ ET q -1 0 0 1 362.845 213.305 cm +1 0 0 1 150.117 546.926 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 213.106 Td [(desc)]TJ +/F30 9.9626 Tf 153.255 546.727 Td [(vect)]TJ ET q -1 0 0 1 387.532 213.305 cm +1 0 0 1 174.804 546.926 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 390.67 213.106 Td [(type)]TJ +/F30 9.9626 Tf 177.942 546.727 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +/F8 9.9626 Tf 24.242 0 Td [(con)28(taining)-333(n)27(um)28(b)-28(ers)-333(of)-333(the)-334(t)28(yp)-28(e)-333(indicated)-333(in)-333(T)83(able)]TJ +0 0 1 rg 0 0 1 RG + [-334(20)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -21.484 Td [(info)]TJ + [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -102.289 -19.926 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -23.476 Td [(Notes)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ 0 g 0 G -/F8 9.9626 Tf 166.874 -29.888 Td [(74)]TJ + 141.968 -388.543 Td [(69)]TJ 0 g 0 G ET endstream endobj -1370 0 obj +1375 0 obj << -/Length 1591 +/Length 6550 >> stream 0 g 0 G 0 g 0 G +BT +/F16 14.3462 Tf 150.705 706.129 Td [(6)-1125(Data)-375(managemen)31(t)-375(routines)]TJ/F16 11.9552 Tf 0 -23.814 Td [(6.1)-1125(psb)]TJ +ET +q +1 0 0 1 202.396 682.515 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 206.431 682.315 Td [(cdall)-375(|)-375(Allo)-31(cates)-375(a)-375(comm)31(unication)-375(descriptor)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -55.726 -18.389 Td [(call)-525(psb_cdall\050icontxt,)-525(desc_a,)-525(info,mg=mg,parts=parts\051)]TJ 0 -11.955 Td [(call)-525(psb_cdall\050icontxt,)-525(desc_a,)-525(info,vg=vg,[mg=mg,flag=flag]\051)]TJ 0 -11.955 Td [(call)-525(psb_cdall\050icontxt,)-525(desc_a,)-525(info,vl=vl,[nl=nl,globalcheck=.false.,lidx=lidx]\051)]TJ 0 -11.955 Td [(call)-525(psb_cdall\050icontxt,)-525(desc_a,)-525(info,nl=nl\051)]TJ 0 -11.956 Td [(call)-525(psb_cdall\050icontxt,)-525(desc_a,)-525(info,mg=mg,repl=.true.\051)]TJ/F8 9.9626 Tf 14.944 -20.107 Td [(This)-314(subroutine)-314(initializes)-315(th)1(e)-315(comm)28(unication)-314(descriptor)-314(ass)-1(o)-27(ciated)-315(with)-314(an)]TJ -14.944 -11.955 Td [(index)-326(space.)-442(One)-326(of)-326(the)-327(op)1(tional)-327(argu)1(m)-1(en)28(ts)]TJ/F30 9.9626 Tf 193.679 0 Td [(parts)]TJ/F8 9.9626 Tf 26.152 0 Td [(,)]TJ/F30 9.9626 Tf 6.031 0 Td [(vg)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)]TJ/F30 9.9626 Tf 6.031 0 Td [(vl)]TJ/F8 9.9626 Tf 10.46 0 Td [(,)]TJ/F30 9.9626 Tf 6.031 0 Td [(nl)]TJ/F8 9.9626 Tf 13.71 0 Td [(or)]TJ/F30 9.9626 Tf 12.133 0 Td [(repl)]TJ/F8 9.9626 Tf 24.17 0 Td [(m)28(ust)-326(b)-28(e)]TJ -308.858 -11.955 Td [(sp)-28(eci\014ed,)-333(thereb)28(y)-334(c)28(ho)-28(osing)-333(the)-333(sp)-28(eci\014c)-333(initialization)-334(strategy)84(.)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -18.477 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.201 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.201 Td [(icon)32(txt)]TJ +0 g 0 G +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-1(n)-333(in)28(teger)-333(v)55(alue.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.201 Td [(vg)]TJ +0 g 0 G +/F8 9.9626 Tf 16.757 0 Td [(Data)-333(allo)-28(cation:)-444(eac)27(h)-333(index)]TJ/F11 9.9626 Tf 123.564 0 Td [(i)]TJ/F14 9.9626 Tf 6.2 0 Td [(2)-278(f)]TJ/F8 9.9626 Tf 14.39 0 Td [(1)]TJ/F11 9.9626 Tf 6.642 0 Td [(:)-167(:)-166(:)-167(mg)]TJ/F14 9.9626 Tf 27.14 0 Td [(g)]TJ/F8 9.9626 Tf 8.302 0 Td [(is)-333(allo)-28(cated)-334(t)1(o)-334(pro)-28(cess)]TJ/F11 9.9626 Tf 99.267 0 Td [(v)-36(g)]TJ/F8 9.9626 Tf 10.296 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051.)]TJ -294.958 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -57.707 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)84(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.201 Td [(\015ag)]TJ +0 g 0 G +/F8 9.9626 Tf 22.644 0 Td [(Sp)-28(eci\014es)-333(whether)-333(e)-1(n)28(tries)-333(in)]TJ/F11 9.9626 Tf 121.932 0 Td [(v)-36(g)]TJ/F8 9.9626 Tf 13.617 0 Td [(are)-333(zero-)-334(or)-333(one-based.)]TJ -133.286 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 135.409 0 Td [(;)]TJ/F8 9.9626 Tf 4.428 0 Td [(1,)-333(default)-334(0.)]TJ 0 g 0 G -BT -/F8 9.9626 Tf 112.072 706.129 Td [(1.)]TJ +/F27 9.9626 Tf -164.744 -19.2 Td [(mg)]TJ 0 g 0 G - [-500(Sp)-28(ecifying)]TJ/F30 9.9626 Tf 60.091 0 Td [(psb_ovt_xhal_)]TJ/F8 9.9626 Tf 70.801 0 Td [(for)-282(the)]TJ/F30 9.9626 Tf 31.377 0 Td [(extype)]TJ/F8 9.9626 Tf 34.188 0 Td [(argumen)28(t)-282(the)-282(user)-281(will)-282(obtain)-281(a)]TJ -183.727 -11.955 Td [(descriptor)-258(f)1(o)-1(r)-257(a)-258(domain)-257(partition)-258(in)-257(whic)28(h)-258(the)-257(additional)-258(la)28(y)28(ers)-258(are)-257(fetc)27(hed)]TJ 0 -11.955 Td [(as)-415(part)-415(of)-415(an)-415(\050extended\051)-415(halo;)-456(ho)28(w)27(ev)28(er)-415(the)-415(index-to-pro)-28(cess)-415(mapping)-415(is)]TJ 0 -11.956 Td [(iden)28(tical)-334(t)1(o)-334(that)-333(of)-333(the)-334(base)-333(descriptor;)]TJ +/F8 9.9626 Tf 20.257 0 Td [(the)-333(\050global\051)-334(n)28(um)28(b)-28(er)-333(of)-333(ro)27(ws)-333(of)-333(the)-334(probl)1(e)-1(m.)]TJ 4.65 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-332(as:)-444(an)-333(in)28(teger)-333(v)56(alue.)-444(I)-1(t)-332(is)-333(required)-332(if)]TJ/F30 9.9626 Tf 203.266 0 Td [(parts)]TJ/F8 9.9626 Tf 29.465 0 Td [(or)]TJ/F30 9.9626 Tf 12.198 0 Td [(repl)]TJ/F8 9.9626 Tf 24.235 0 Td [(is)-333(sp)-27(ec)-1(i)1(\014e)-1(d)1(,)]TJ -269.164 -11.955 Td [(it)-333(is)-334(optional)-333(if)]TJ/F30 9.9626 Tf 67.856 0 Td [(vg)]TJ/F8 9.9626 Tf 13.782 0 Td [(is)-333(sp)-28(eci\014ed.)]TJ 0 g 0 G - -12.73 -19.925 Td [(2.)]TJ +/F27 9.9626 Tf -106.545 -19.201 Td [(parts)]TJ +0 g 0 G +/F8 9.9626 Tf 30.609 0 Td [(the)-333(subroutine)-334(th)1(at)-334(de\014nes)-333(the)-333(partitioning)-334(sc)28(heme.)]TJ -5.702 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -57.707 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(subroutine.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.201 Td [(vl)]TJ 0 g 0 G - [-500(Sp)-28(ecifying)]TJ/F30 9.9626 Tf 60.957 0 Td [(psb_ovt_asov_)]TJ/F8 9.9626 Tf 71.666 0 Td [(for)-368(the)]TJ/F30 9.9626 Tf 33.107 0 Td [(extype)]TJ/F8 9.9626 Tf 35.054 0 Td [(argumen)28(t)-369(the)-368(user)-369(will)-368(obtain)]TJ -188.054 -11.955 Td [(a)-458(descriptor)-459(with)-458(an)-458(o)28(v)27(erlapp)-27(ed)-459(decomp)-27(os)-1(iti)1(on:)-695(the)-458(additional)-458(la)27(y)28(er)-458(is)]TJ 0 -11.955 Td [(aggregated)-413(to)-413(the)-413(lo)-28(cal)-413(sub)-28(domain)-413(\050and)-413(th)28(us)-414(is)-413(an)-413(o)28(v)28(erlap\051,)-433(and)-413(a)-414(new)]TJ 0 -11.955 Td [(halo)-333(extending)-334(b)-27(ey)27(on)1(d)-334(the)-333(last)-333(additional)-334(la)28(y)28(er)-333(is)-334(formed.)]TJ +/F8 9.9626 Tf 14.211 0 Td [(Data)-363(allo)-28(cation:)-504(the)-363(set)-364(of)-363(global)-363(indices)]TJ/F11 9.9626 Tf 182.789 0 Td [(v)-36(l)]TJ/F8 9.9626 Tf 8.355 0 Td [(\0501)-328(:)]TJ/F11 9.9626 Tf 18.15 0 Td [(nl)]TJ/F8 9.9626 Tf 9.149 0 Td [(\051)-363(b)-28(elonging)-363(to)-363(the)-364(callin)1(g)]TJ -207.747 -11.955 Td [(pro)-28(cess.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.074 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)84(.)]TJ 0 g 0 G - 141.968 -524.035 Td [(75)]TJ + 141.967 -29.888 Td [(70)]TJ 0 g 0 G ET endstream endobj -1378 0 obj +1380 0 obj << -/Length 4890 +/Length 6638 >> stream 0 g 0 G 0 g 0 G +0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 706.129 Td [(spall)-375(|)-375(Allo)-31(cates)-375(a)-375(sparse)-375(matrix)]TJ +/F27 9.9626 Tf 99.895 706.129 Td [(nl)]TJ 0 g 0 G +/F8 9.9626 Tf 14.529 0 Td [(Data)-223(allo)-28(cation:)-389(in)-222(a)-223(generalized)-223(blo)-28(c)28(k-ro)28(w)-223(distribution)-223(the)-222(n)27(um)28(b)-28(er)-222(of)-223(indices)]TJ 10.378 -11.955 Td [(b)-28(elonging)-333(to)-333(the)-334(curren)28(t)-333(pro)-28(cess.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(Ma)28(y)-334(b)-27(e)-334(sp)-28(eci\014ed)-333(together)-333(with)]TJ/F30 9.9626 Tf 272.479 0 Td [(vl)]TJ/F8 9.9626 Tf 10.46 0 Td [(.)]TJ 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_spall\050a,)-525(desc_a,)-525(info,)-525(nnz\051)]TJ +/F27 9.9626 Tf -307.846 -20.135 Td [(repl)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +/F8 9.9626 Tf 24.499 0 Td [(Data)-351(allo)-28(cation:)-480(build)-351(a)-351(replicated)-351(index)-351(space)-351(\050i.e.)-498(all)-351(pro)-28(cesses)-351(o)27(wn)-351(all)]TJ 0.408 -11.955 Td [(indices\051.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -57.707 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(th)1(e)-334(logical)-333(v)55(alue)]TJ/F30 9.9626 Tf 131.784 0 Td [(.true.)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +/F27 9.9626 Tf -156.691 -20.135 Td [(globalc)32(hec)32(k)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +/F8 9.9626 Tf 61.948 0 Td [(Data)-333(allo)-28(cation:)-445(d)1(o)-334(global)-333(c)28(hec)27(ks)-333(on)-333(the)-334(lo)-27(cal)-334(index)-333(lists)]TJ/F30 9.9626 Tf 250.201 0 Td [(vl)]TJ/F8 9.9626 Tf -287.242 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(v)55(alue,)-333(default:)]TJ/F30 9.9626 Tf 163.056 0 Td [(.false.)]TJ 0 g 0 G +/F27 9.9626 Tf -187.963 -20.135 Td [(lidx)]TJ 0 g 0 G - 0 -19.925 Td [(desc)]TJ -ET -q -1 0 0 1 172.619 626.17 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 176.057 625.971 Td [(a)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Data)-353(allo)-28(cation:)-484(the)-353(set)-353(of)-353(lo)-28(cal)-353(indices)]TJ/F11 9.9626 Tf 176.172 0 Td [(l)-20(idx)]TJ/F8 9.9626 Tf 17.48 0 Td [(\0501)-311(:)]TJ/F11 9.9626 Tf 17.814 0 Td [(nl)]TJ/F8 9.9626 Tf 9.149 0 Td [(\051)-353(to)-353(b)-28(e)-353(assigned)-353(to)-353(the)]TJ -219.466 -11.955 Td [(global)-333(indices)]TJ/F11 9.9626 Tf 62.045 0 Td [(v)-36(l)]TJ/F8 9.9626 Tf 8.355 0 Td [(.)]TJ -70.4 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)84(.)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ -ET -q -1 0 0 1 362.845 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 365.983 578.15 Td [(desc)]TJ +/F27 9.9626 Tf -24.907 -22.127 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -20.135 Td [(desc)]TJ ET q -1 0 0 1 387.532 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 121.81 376.512 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F30 9.9626 Tf 390.67 578.15 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -260.887 -19.925 Td [(nnz)]TJ -0 g 0 G -/F8 9.9626 Tf 22.803 0 Td [(An)-309(estimate)-309(of)-308(the)-309(n)28(um)27(b)-27(er)-309(of)-309(nonzero)-28(es)-308(in)-309(the)-309(lo)-28(cal)-308(part)-309(of)-309(the)-309(assem)28(bled)]TJ 2.103 -11.955 Td [(matrix.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)]TJ +/F27 9.9626 Tf 125.247 376.313 Td [(a)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -21.918 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(matrix)-334(to)-333(b)-28(e)-333(allo)-28(cated.)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf -25.184 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 362.845 408.985 cm +1 0 0 1 312.036 328.692 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 408.786 Td [(Tspmat)]TJ +/F30 9.9626 Tf 315.174 328.492 Td [(desc)]TJ ET q -1 0 0 1 397.993 408.985 cm +1 0 0 1 336.723 328.692 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 401.131 408.786 Td [(type)]TJ +/F30 9.9626 Tf 339.861 328.492 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -271.347 -19.926 Td [(info)]TJ +/F27 9.9626 Tf -260.887 -20.135 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -21.918 Td [(Notes)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -22.128 Td [(Notes)]TJ 0 g 0 G -/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ +/F8 9.9626 Tf 12.177 -20.082 Td [(1.)]TJ 0 g 0 G - [-500(On)-333(exit)-334(from)-333(this)-333(routine)-333(the)-334(sparse)-333(matrix)-334(i)1(s)-334(in)-333(the)-333(build)-334(state.)]TJ + [-500(One)-241(of)-241(the)-240(optional)-241(argumen)28(ts)]TJ/F30 9.9626 Tf 144.914 0 Td [(parts)]TJ/F8 9.9626 Tf 26.152 0 Td [(,)]TJ/F30 9.9626 Tf 5.351 0 Td [(vg)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)]TJ/F30 9.9626 Tf 5.351 0 Td [(vl)]TJ/F8 9.9626 Tf 10.46 0 Td [(,)]TJ/F30 9.9626 Tf 5.351 0 Td [(nl)]TJ/F8 9.9626 Tf 12.86 0 Td [(or)]TJ/F30 9.9626 Tf 11.283 0 Td [(repl)]TJ/F8 9.9626 Tf 23.32 0 Td [(m)28(ust)-241(b)-28(e)-241(sp)-27(e)-1(ci\014)1(e)-1(d)1(,)]TJ -242.773 -11.956 Td [(thereb)28(y)-334(c)28(ho)-28(osing)-333(the)-333(initialization)-333(strategy)-334(as)-333(follo)28(ws:)]TJ 0 g 0 G - 0 -19.926 Td [(2.)]TJ +/F27 9.9626 Tf 0 -20.135 Td [(parts)]TJ 0 g 0 G - [-500(The)-333(descriptor)-334(ma)28(y)-333(b)-28(e)-333(in)-334(either)-333(the)-333(build)-333(or)-334(assem)28(bled)-333(s)-1(tat)1(e)-1(.)]TJ +/F8 9.9626 Tf 30.609 0 Td [(In)-337(this)-338(case)-338(w)28(e)-337(ha)28(v)27(e)-337(a)-338(subroutine)-337(sp)-28(ecifying)-337(the)-338(mapping)-337(b)-28(et)28(w)28(een)]TJ -8.691 -11.955 Td [(global)-225(indices)-225(and)-225(pro)-28(cess/lo)-27(c)-1(al)-225(i)1(ndex)-225(pairs.)-409(If)-225(this)-225(optional)-225(ar)1(gume)-1(n)28(t)]TJ 0 -11.955 Td [(is)-316(sp)-28(eci\014ed,)-320(then)-316(it)-317(is)-316(mandatory)-316(to)-317(sp)-28(ecify)-316(the)-316(argumen)28(t)]TJ/F30 9.9626 Tf 251.562 0 Td [(mg)]TJ/F8 9.9626 Tf 13.613 0 Td [(as)-316(w)27(ell.)]TJ -265.175 -11.955 Td [(The)-333(subroutine)-334(m)28(ust)-333(conform)-333(to)-334(the)-333(follo)28(wing)-334(in)28(terface:)]TJ 0 g 0 G - 0 -19.925 Td [(3.)]TJ 0 g 0 G - [-500(Pro)28(viding)-307(a)-308(go)-27(o)-28(d)-307(e)-1(stimate)-307(for)-307(the)-307(n)27(um)28(b)-28(er)-307(of)-307(nonzero)-28(es)]TJ/F11 9.9626 Tf 254.288 0 Td [(nnz)]TJ/F8 9.9626 Tf 20.093 0 Td [(in)-307(the)-308(assem-)]TJ -261.651 -11.955 Td [(bled)-402(matrix)-401(ma)28(y)-402(substan)28(tially)-401(impro)27(v)28(e)-401(p)-28(erformance)-402(in)-401(the)-402(matrix)-401(build)]TJ 0 -11.955 Td [(phase,)-458(as)-433(it)-432(will)-433(reduce)-433(or)-433(eliminate)-433(the)-433(need)-432(for)-433(\050p)-28(oten)28(tially)-433(m)28(ultiple\051)]TJ 0 -11.956 Td [(data)-333(reallo)-28(cations.)]TJ +/F30 9.9626 Tf 10.461 -18.09 Td [(interface)]TJ 15.691 -11.955 Td [(subroutine)-525(psb_parts\050glob_index,mg,np,pv,nv\051)]TJ 0 g 0 G - 141.968 -133.042 Td [(76)]TJ +/F8 9.9626 Tf 93.898 -29.888 Td [(71)]TJ 0 g 0 G ET @@ -15863,423 +15855,489 @@ endstream endobj 1386 0 obj << -/Length 5704 +/Length 10049 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F30 9.9626 Tf 234.142 706.129 Td [(integer,)-525(intent)-525(\050in\051)-1050(::)-525(glob_index,np,mg)]TJ 0 -11.955 Td [(integer,)-525(intent)-525(\050out\051)-525(::)-525(nv,)-525(pv\050*\051)]TJ -10.461 -11.955 Td [(end)-525(subroutine)-525(psb_parts)]TJ -15.691 -11.956 Td [(end)-525(interface)]TJ/F8 9.9626 Tf -10.461 -17.586 Td [(The)-333(input)-334(argumen)28(ts)-333(are:)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -15.594 Td [(glob)]TJ ET q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 219.221 637.283 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(spins)-321(|)-322(Insert)-321(a)-321(set)-321(of)-322(co)-31(e\016cien)31(ts)-321(in)31(to)-321(a)-321(sparse)-321(matrix)]TJ +/F27 9.9626 Tf 222.658 637.083 Td [(index)]TJ 0 g 0 G +/F8 9.9626 Tf 32.192 0 Td [(The)-333(global)-334(index)-333(to)-333(b)-28(e)-333(mapp)-28(ed;)]TJ 0 g 0 G -/F30 9.9626 Tf -25.091 -19.775 Td [(call)-525(psb_spins\050nz,)-525(ia,)-525(ja,)-525(val,)-525(a,)-525(desc_a,)-525(info)-525([,local]\051)]TJ 0 -11.955 Td [(call)-525(psb_spins\050nr,)-525(irw,)-525(irp,)-525(ja,)-525(val,)-525(a,)-525(desc_a,)-525(info)-525([,local]\051)]TJ +/F27 9.9626 Tf -57.321 -13.774 Td [(np)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -24.151 Td [(T)32(yp)-32(e:)]TJ +/F8 9.9626 Tf 17.712 0 Td [(The)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(pro)-28(cesses)-333(in)-334(the)-333(mapping;)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F27 9.9626 Tf -17.712 -13.774 Td [(mg)]TJ +0 g 0 G +/F8 9.9626 Tf 20.258 0 Td [(The)-333(total)-334(n)28(um)28(b)-28(er)-333(of)-333(global)-334(ro)28(ws)-333(in)-334(th)1(e)-334(mapping;)]TJ -20.258 -15.594 Td [(The)-333(output)-334(argumen)28(ts)-333(are:)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -22.903 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf 0 -15.594 Td [(n)32(v)]TJ +0 g 0 G +/F8 9.9626 Tf 17.075 0 Td [(The)-333(n)27(um)28(b)-28(er)-333(of)-333(en)28(tries)-334(in)]TJ/F30 9.9626 Tf 111.637 0 Td [(pv)]TJ/F8 9.9626 Tf 10.461 0 Td [(;)]TJ 0 g 0 G +/F27 9.9626 Tf -139.173 -13.774 Td [(p)32(v)]TJ 0 g 0 G - 0 -22.903 Td [(nz)]TJ +/F8 9.9626 Tf 17.075 0 Td [(A)-481(v)28(ector)-481(con)28(taining)-481(the)-481(indi)1(c)-1(es)-480(of)-481(the)-481(pro)-28(cesses)-481(to)-481(whic)28(h)-481(the)]TJ 1.555 -11.955 Td [(global)-468(index)-468(should)-468(b)-28(e)-468(assigend;)-536(eac)28(h)-468(en)28(try)-468(m)28(ust)-469(satisfy)-468(0)]TJ/F14 9.9626 Tf 270.508 0 Td [(\024)]TJ/F11 9.9626 Tf -270.508 -11.956 Td [(pv)]TJ/F8 9.9626 Tf 10.199 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F11 9.9626 Tf 8.603 0 Td [(<)-475(np)]TJ/F8 9.9626 Tf 23.47 0 Td [(;)-511(i)1(f)]TJ/F11 9.9626 Tf 18.163 0 Td [(nv)-511(>)]TJ/F8 9.9626 Tf 28.373 0 Td [(1)-451(w)27(e)-451(ha)28(v)27(e)-451(an)-452(in)1(dex)-452(assigned)-451(to)-452(m)28(ultiple)]TJ -96.115 -11.955 Td [(pro)-28(cesses,)-333(i.e.)-445(w)28(e)-333(ha)27(v)28(e)-333(an)-333(o)27(v)28(erlap)-333(among)-334(t)1(he)-334(sub)-28(domains.)]TJ 0 g 0 G -/F8 9.9626 Tf 16.439 0 Td [(the)-333(n)28(um)27(b)-27(er)-334(of)-333(co)-28(e\016cien)28(ts)-334(to)-333(b)-28(e)-333(inserted.)]TJ 8.468 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(scalar.)]TJ +/F27 9.9626 Tf -40.548 -15.594 Td [(vg)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -22.903 Td [(nr)]TJ +/F8 9.9626 Tf 16.757 0 Td [(In)-398(th)1(is)-398(case)-398(the)-397(asso)-28(ciation)-398(b)-27(e)-1(t)28(w)28(een)-398(an)-397(index)-398(and)-397(a)-398(pro)-27(ces)-1(s)-397(is)-398(sp)-28(ec-)]TJ 5.161 -11.955 Td [(i\014ed)-456(via)-456(an)-456(in)28(tege)-1(r)-456(v)28(ector)]TJ/F30 9.9626 Tf 120.743 0 Td [(vg\0501:mg\051)]TJ/F8 9.9626 Tf 41.842 0 Td [(;)-518(eac)28(h)-456(index)]TJ/F11 9.9626 Tf 59.63 0 Td [(i)]TJ/F14 9.9626 Tf 8.238 0 Td [(2)-482(f)]TJ/F8 9.9626 Tf 16.429 0 Td [(1)]TJ/F11 9.9626 Tf 6.642 0 Td [(:)-167(:)-166(:)-167(mg)]TJ/F14 9.9626 Tf 27.14 0 Td [(g)]TJ/F8 9.9626 Tf 9.526 0 Td [(is)]TJ -290.19 -11.955 Td [(assigned)-449(to)-449(pro)-28(cess)]TJ/F11 9.9626 Tf 89.776 0 Td [(v)-36(g)]TJ/F8 9.9626 Tf 10.296 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051.)-792(The)-449(v)28(ector)]TJ/F30 9.9626 Tf 67.232 0 Td [(vg)]TJ/F8 9.9626 Tf 14.935 0 Td [(m)28(ust)-449(b)-28(e)-449(iden)28(tica)-1(l)-449(on)-449(all)]TJ -189.546 -11.955 Td [(calling)-452(pro)-28(cesses;)-513(it)1(s)-453(en)28(tries)-453(ma)28(y)-453(ha)28(v)28(e)-453(th)1(e)-453(ranges)-453(\0500)]TJ/F11 9.9626 Tf 236.604 0 Td [(:)-167(:)-166(:)-167(np)]TJ/F14 9.9626 Tf 27.281 0 Td [(\000)]TJ/F8 9.9626 Tf 10.754 0 Td [(1\051)-453(or)]TJ -274.639 -11.955 Td [(\0501)]TJ/F11 9.9626 Tf 10.516 0 Td [(:)-167(:)-166(:)-167(np)]TJ/F8 9.9626 Tf 24.276 0 Td [(\051)-347(according)-347(to)-347(the)-347(v)55(alu)1(e)-348(of)]TJ/F30 9.9626 Tf 119.292 0 Td [(flag)]TJ/F8 9.9626 Tf 20.921 0 Td [(.)-486(The)-347(size)]TJ/F11 9.9626 Tf 47.231 0 Td [(mg)]TJ/F8 9.9626 Tf 17.314 0 Td [(ma)28(y)-347(b)-28(e)-347(sp)-28(ec-)]TJ -239.55 -11.955 Td [(i\014ed)-414(via)-414(the)-415(option)1(al)-415(argumen)28(t)]TJ/F30 9.9626 Tf 142.427 0 Td [(mg)]TJ/F8 9.9626 Tf 10.461 0 Td [(;)-455(the)-414(default)-414(is)-414(to)-414(use)-415(the)-414(en)28(tire)]TJ -152.888 -11.956 Td [(v)28(ector)]TJ/F30 9.9626 Tf 29.916 0 Td [(vg)]TJ/F8 9.9626 Tf 10.46 0 Td [(,)-333(th)27(u)1(s)-334(ha)28(ving)]TJ/F30 9.9626 Tf 60.108 0 Td [(mg=size\050vg\051)]TJ/F8 9.9626 Tf 57.534 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 16.065 0 Td [(the)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(ro)28(ws)-334(to)-333(b)-28(e)-333(inserted.)]TJ 8.842 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(scalar.)]TJ +/F27 9.9626 Tf -179.936 -15.593 Td [(vl)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -22.903 Td [(irw)]TJ +/F8 9.9626 Tf 14.211 0 Td [(In)-356(this)-357(case)-356(w)28(e)-357(are)-356(sp)-28(ecifying)-356(the)-357(list)-356(of)-356(indices)]TJ/F30 9.9626 Tf 210.708 0 Td [(vl\0501:nl\051)]TJ/F8 9.9626 Tf 45.393 0 Td [(assigned)-356(to)]TJ -248.394 -11.955 Td [(the)-462(curren)28(t)-462(pro)-27(ce)-1(ss;)-526(th)28(us,)-494(the)-461(global)-462(problem)-462(size)]TJ/F11 9.9626 Tf 229.323 0 Td [(mg)]TJ/F8 9.9626 Tf 18.457 0 Td [(is)-462(giv)28(en)-462(b)28(y)]TJ -247.78 -11.956 Td [(the)-405(range)-405(of)-404(the)-405(aggregate)-405(of)-405(the)-405(in)1(dividual)-405(v)28(ectors)]TJ/F30 9.9626 Tf 233.196 0 Td [(vl)]TJ/F8 9.9626 Tf 14.494 0 Td [(sp)-28(eci\014ed)-405(in)]TJ -247.69 -11.955 Td [(the)-481(calling)-481(p)1(ro)-28(cesses.)-887(The)-481(size)-481(ma)28(y)-481(b)-28(e)-481(sp)-27(eci\014ed)-481(via)-481(the)-481(optional)]TJ 0 -11.955 Td [(argumen)28(t)]TJ/F30 9.9626 Tf 44.85 0 Td [(nl)]TJ/F8 9.9626 Tf 10.461 0 Td [(;)-373(the)-361(default)-360(is)-360(to)-360(use)-360(the)-360(en)28(tire)-361(v)28(ector)]TJ/F30 9.9626 Tf 173.727 0 Td [(vl)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)-367(th)28(us)-360(ha)28(ving)]TJ/F30 9.9626 Tf -239.499 -11.955 Td [(nl=size\050vl\051)]TJ/F8 9.9626 Tf 57.534 0 Td [(.)-419(If)]TJ/F30 9.9626 Tf 16.133 0 Td [(globalcheck=.true.)]TJ/F8 9.9626 Tf 96.698 0 Td [(the)-256(subroutine)-256(will)-256(c)27(hec)28(k)-256(ho)28(w)]TJ -170.365 -11.955 Td [(man)28(y)-255(times)-255(eac)28(h)-254(en)27(try)-254(in)-255(the)-254(global)-255(index)-254(s)-1(p)1(ac)-1(e)-254(\0501)]TJ/F11 9.9626 Tf 217.24 0 Td [(:)-167(:)-166(:)-167(mg)]TJ/F8 9.9626 Tf 27.14 0 Td [(\051)-255(is)-254(sp)-28(eci\014ed)]TJ -244.38 -11.955 Td [(in)-331(the)-331(input)-331(lists)]TJ/F30 9.9626 Tf 75.842 0 Td [(vl)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)-331(th)27(us)-331(all)1(o)27(wing)-331(for)-331(t)1(he)-331(prese)-1(n)1(c)-1(e)-331(of)-330(o)27(v)28(erlap)-331(in)-331(the)]TJ -86.303 -11.956 Td [(input,)-338(and)-337(c)28(hec)27(king)-337(for)-337(\134orphan")-337(indices.)-456(If)]TJ/F30 9.9626 Tf 194.743 0 Td [(globalcheck=.false.)]TJ/F8 9.9626 Tf 99.376 0 Td [(,)]TJ -294.119 -11.955 Td [(the)-409(s)-1(u)1(broutine)-410(will)-409(not)-410(c)28(hec)28(k)-410(for)-409(o)28(v)27(erlap,)-428(and)-409(ma)27(y)-409(b)-28(e)-409(signi\014can)27(tly)]TJ 0 -11.955 Td [(faster,)-362(but)-357(the)-357(user)-356(is)-357(implicitly)-357(gu)1(aran)27(teeing)-356(that)-357(there)-357(ar)1(e)-357(neither)]TJ 0 -11.955 Td [(orphan)-333(nor)-333(o)27(v)28(erlap)-333(indices.)]TJ 0 g 0 G -/F8 9.9626 Tf 21.157 0 Td [(the)-333(\014rst)-334(ro)28(w)-333(to)-334(b)-27(e)-334(inserted.)]TJ 3.75 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(scalar.)]TJ +/F27 9.9626 Tf -21.918 -15.594 Td [(lidx)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -22.903 Td [(ia)]TJ +/F8 9.9626 Tf 23.758 0 Td [(The)-463(optional)-462(argumen)28(t)]TJ/F30 9.9626 Tf 107.67 0 Td [(lidx)]TJ/F8 9.9626 Tf 25.531 0 Td [(is)-463(a)28(v)56(ailable)-463(for)-462(those)-463(cases)-463(in)-463(whi)1(c)27(h)]TJ -135.041 -11.955 Td [(the)-446(user)-446(has)-446(already)-446(established)-446(a)-446(global-to-lo)-28(cal)-446(mapping;)-502(if)-446(it)-446(is)]TJ 0 -11.955 Td [(sp)-28(eci\014ed,)-373(eac)28(h)-365(index)-365(in)]TJ/F30 9.9626 Tf 105.175 0 Td [(vl\050i\051)]TJ/F8 9.9626 Tf 29.789 0 Td [(will)-365(b)-28(e)-365(mapp)-28(ed)-365(to)-365(the)-365(corresp)-27(onding)]TJ -134.964 -11.955 Td [(lo)-28(cal)-392(index)]TJ/F30 9.9626 Tf 51.539 0 Td [(lidx\050i\051)]TJ/F8 9.9626 Tf 36.613 0 Td [(.)-621(When)-392(sp)-28(ecifying)-392(the)-392(argumen)28(t)]TJ/F30 9.9626 Tf 148.368 0 Td [(lidx)]TJ/F8 9.9626 Tf 24.828 0 Td [(the)-392(user)]TJ -261.348 -11.956 Td [(w)28(ould)-420(also)-420(lik)28(ely)-419(e)-1(mpl)1(o)27(y)]TJ/F30 9.9626 Tf 113.086 0 Td [(lidx)]TJ/F8 9.9626 Tf 25.103 0 Td [(in)-420(calls)-419(to)]TJ/F30 9.9626 Tf 48.576 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf 51.254 0 Td [(and)]TJ/F30 9.9626 Tf 20.232 0 Td [(local)]TJ/F8 9.9626 Tf 30.333 0 Td [(in)]TJ -288.584 -11.955 Td [(calls)-333(to)]TJ/F30 9.9626 Tf 34.371 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 50.394 0 Td [(and)]TJ/F30 9.9626 Tf 19.372 0 Td [(psb_geins)]TJ/F8 9.9626 Tf 47.073 0 Td [(;)-333(see)-334(also)-333(sec.)]TJ +0 0 1 rg 0 0 1 RG + [-334(2.3.1)]TJ 0 g 0 G -/F8 9.9626 Tf 13.734 0 Td [(the)-333(ro)28(w)-334(indices)-333(of)-333(the)-334(co)-28(e\016cien)28(ts)-333(to)-334(b)-27(e)-334(inserted.)]TJ 11.173 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(size)]TJ/F11 9.9626 Tf 160.98 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ + [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -196.938 -22.903 Td [(irp)]TJ +/F27 9.9626 Tf -173.128 -15.593 Td [(nl)]TJ 0 g 0 G -/F8 9.9626 Tf 19.248 0 Td [(the)-333(ro)28(w)-334(p)-28(oin)28(ters)-333(of)-333(the)-334(co)-28(e\016cien)28(ts)-333(to)-334(b)-27(e)-334(inserted.)]TJ 5.659 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(size)]TJ/F11 9.9626 Tf 160.98 0 Td [(nr)]TJ/F8 9.9626 Tf 12.965 0 Td [(+)-222(1.)]TJ +/F8 9.9626 Tf 14.529 0 Td [(If)-307(this)-308(argumen)28(t)-307(is)-308(sp)-28(eci\014ed)-307(alone)-308(\050i.e.)-435(without)]TJ/F30 9.9626 Tf 206.41 0 Td [(vl)]TJ/F8 9.9626 Tf 10.461 0 Td [(\051)-307(the)-308(result)-307(is)-308(a)-307(gen-)]TJ -209.482 -11.956 Td [(eralized)-313(ro)27(w-blo)-27(c)27(k)-313(distribution)-313(in)-314(whic)28(h)-313(eac)27(h)-313(pro)-28(cess)]TJ/F11 9.9626 Tf 232.18 0 Td [(I)]TJ/F8 9.9626 Tf 8.284 0 Td [(gets)-313(as)-1(signed)]TJ -240.464 -11.955 Td [(a)-333(consecutiv)27(e)-333(c)28(h)28(unk)-334(of)]TJ/F11 9.9626 Tf 101.342 0 Td [(N)]TJ/F10 6.9738 Tf 8.005 -1.494 Td [(I)]TJ/F8 9.9626 Tf 7.338 1.494 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(nl)]TJ/F8 9.9626 Tf 12.47 0 Td [(global)-333(indices.)]TJ 0 g 0 G -/F27 9.9626 Tf -198.852 -22.903 Td [(ja)]TJ +/F27 9.9626 Tf -161.589 -15.593 Td [(repl)]TJ 0 g 0 G -/F8 9.9626 Tf 14.052 0 Td [(the)-333(column)-334(indices)-333(of)-333(the)-334(co)-27(e\016)-1(cien)28(ts)-333(to)-333(b)-28(e)-334(inserted.)]TJ 10.855 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(size)]TJ/F11 9.9626 Tf 160.98 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ +/F8 9.9626 Tf 24.498 0 Td [(This)-239(argumen)28(ts)-240(sp)-27(e)-1(ci\014es)-239(to)-239(replicate)-239(all)-239(indices)-240(on)-239(all)-239(pro)-28(cesses.)-413(This)]TJ -2.58 -11.956 Td [(is)-312(a)-311(sp)-28(ecial)-312(purp)-27(ose)-312(data)-312(allo)-27(cation)-312(that)-311(is)-312(useful)-312(in)-311(the)-312(construction)]TJ 0 -11.955 Td [(of)-333(some)-334(m)28(ultilev)28(el)-334(p)1(rec)-1(on)1(ditioners.)]TJ 0 g 0 G -/F27 9.9626 Tf -196.938 -22.903 Td [(v)64(al)]TJ + -34.648 -19.579 Td [(2.)]TJ 0 g 0 G -/F8 9.9626 Tf 19.144 0 Td [(the)-333(co)-28(e\016cien)28(ts)-334(to)-333(b)-28(e)-333(inserted.)]TJ 5.763 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-375(as:)-528(an)-375(arra)28(y)-375(of)-375(size)]TJ/F11 9.9626 Tf 130.933 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)-570(Must)-375(b)-28(e)-375(of)-375(the)-375(same)-375(t)28(yp)-28(e)-375(and)-375(kind)-375(of)]TJ -141.984 -11.956 Td [(the)-333(co)-28(e\016cien)28(ts)-334(of)-333(the)-333(s)-1(p)1(ars)-1(e)-333(matrix)]TJ/F11 9.9626 Tf 158.517 0 Td [(a)]TJ/F8 9.9626 Tf 5.266 0 Td [(.)]TJ + [-500(On)-333(exit)-334(from)-333(this)-333(routine)-333(the)-334(descriptor)-333(is)-333(in)-334(the)-333(build)-333(state.)]TJ 0 g 0 G - -21.815 -29.887 Td [(77)]TJ + 154.698 -29.888 Td [(72)]TJ 0 g 0 G ET endstream endobj -1392 0 obj +1391 0 obj << -/Length 7364 +/Length 2660 >> stream 0 g 0 G 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 150.705 706.129 Td [(desc)]TJ -ET -q -1 0 0 1 172.619 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 176.057 706.129 Td [(a)]TJ +/F8 9.9626 Tf 112.072 706.129 Td [(3.)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(The)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.51 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(v)56(ariable)-334(of)-333(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 137.347 0 Td [(psb)]TJ -ET -q -1 0 0 1 329.276 658.507 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 332.415 658.308 Td [(desc)]TJ -ET -q -1 0 0 1 353.964 658.507 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 357.102 658.308 Td [(type)]TJ + [-500(Calling)-339(the)-339(routine)-339(with)]TJ/F30 9.9626 Tf 121.471 0 Td [(vg)]TJ/F8 9.9626 Tf 13.839 0 Td [(or)]TJ/F30 9.9626 Tf 12.262 0 Td [(parts)]TJ/F8 9.9626 Tf 29.53 0 Td [(implies)-339(that)-339(ev)28(ery)-340(pr)1(o)-28(cess)-340(will)-339(scan)]TJ -164.372 -11.955 Td [(the)-333(en)27(tire)-333(index)-333(space)-334(to)-333(\014gure)-333(out)-333(the)-334(lo)-28(cal)-333(indices.)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ + -12.73 -19.926 Td [(4.)]TJ 0 g 0 G -/F27 9.9626 Tf -227.318 -31.349 Td [(lo)-32(cal)]TJ + [-500(Ov)28(erlapp)-28(ed)-333(indices)-334(are)-333(p)-28(ossible)-333(with)-333(b)-28(oth)]TJ/F30 9.9626 Tf 199.198 0 Td [(parts)]TJ/F8 9.9626 Tf 29.472 0 Td [(and)]TJ/F30 9.9626 Tf 19.372 0 Td [(vl)]TJ/F8 9.9626 Tf 13.782 0 Td [(in)28(v)28(o)-28(cations.)]TJ 0 g 0 G -/F8 9.9626 Tf 28.054 0 Td [(Whether)-465(the)-464(en)27(tries)-464(in)-465(the)-465(ind)1(ic)-1(es)-464(v)28(e)-1(ctors)]TJ/F30 9.9626 Tf 194.825 0 Td [(ia)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)]TJ/F30 9.9626 Tf 7.724 0 Td [(ja)]TJ/F8 9.9626 Tf 15.09 0 Td [(are)-465(already)-464(in)-465(lo)-28(cal)]TJ -231.248 -11.955 Td [(n)28(um)28(b)-28(ering.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.761 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(v)55(alue;)-333(default:)]TJ/F30 9.9626 Tf 163.056 0 Td [(.false.)]TJ/F8 9.9626 Tf 36.612 0 Td [(.)]TJ + -261.824 -19.925 Td [(5.)]TJ 0 g 0 G -/F27 9.9626 Tf -224.574 -20.589 Td [(On)-383(Return)]TJ + [-500(When)-222(the)-222(subroutine)-222(is)-223(in)28(v)28(ok)28(ed)-223(with)]TJ/F30 9.9626 Tf 170.61 0 Td [(vl)]TJ/F8 9.9626 Tf 12.675 0 Td [(in)-222(conjunction)-222(with)]TJ/F30 9.9626 Tf 84.959 0 Td [(globalcheck=.true.)]TJ/F8 9.9626 Tf 94.147 0 Td [(,)]TJ -349.661 -11.955 Td [(it)-368(will)-369(p)-28(erform)-368(a)-368(s)-1(can)-368(of)-368(the)-369(index)-368(space)-369(to)-368(searc)27(h)-368(for)-368(o)27(v)28(erlap)-368(or)-369(orp)1(han)]TJ 0 -11.955 Td [(indices.)]TJ 0 g 0 G + -12.73 -19.925 Td [(6.)]TJ 0 g 0 G - 0 -19.394 Td [(a)]TJ + [-500(When)-222(the)-222(subroutine)-222(is)-223(in)28(v)28(ok)28(ed)-223(with)]TJ/F30 9.9626 Tf 170.61 0 Td [(vl)]TJ/F8 9.9626 Tf 12.675 0 Td [(in)-222(conjunction)-222(with)]TJ/F30 9.9626 Tf 84.959 0 Td [(globalcheck=.false.)]TJ/F8 9.9626 Tf 99.377 0 Td [(,)]TJ -354.891 -11.956 Td [(no)-405(index)-405(space)-405(scan)-405(will)-405(tak)28(e)-405(place.)-660(Th)28(us)-405(it)-405(is)-405(the)-405(resp)-28(onsibilit)28(y)-405(of)-405(the)]TJ 0 -11.955 Td [(user)-419(to)-418(mak)28(e)-419(sure)-418(that)-419(the)-418(indices)-419(sp)-28(eci\014ed)-418(in)]TJ/F30 9.9626 Tf 211.319 0 Td [(vl)]TJ/F8 9.9626 Tf 14.63 0 Td [(ha)28(v)28(e)-419(neither)-418(orphans)]TJ -225.949 -11.955 Td [(nor)-333(o)28(v)27(erlaps;)-333(if)-333(this)-334(assumption)-333(fails,)-333(results)-334(will)-333(b)-28(e)-333(unpredictable.)]TJ +0 g 0 G + -12.73 -19.925 Td [(7.)]TJ +0 g 0 G + [-500(Orphan)-313(and)-312(o)27(v)28(erlap)-312(indices)-313(are)-313(imp)-28(ossible)-313(b)28(y)-313(construction)-312(when)-313(the)-313(sub-)]TJ 12.73 -11.955 Td [(routine)-333(is)-334(in)28(v)28(ok)28(ed)-334(with)]TJ/F30 9.9626 Tf 103.307 0 Td [(nl)]TJ/F8 9.9626 Tf 13.782 0 Td [(\050alone\051,)-333(or)]TJ/F30 9.9626 Tf 48.734 0 Td [(vg)]TJ/F8 9.9626 Tf 10.46 0 Td [(.)]TJ +0 g 0 G + -34.315 -452.304 Td [(73)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(matrix)-334(in)28(to)-333(whic)28(h)-334(co)-28(e\016cien)28(ts)-333(will)-334(b)-27(e)-334(inserted.)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf -25.184 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET -q -1 0 0 1 362.845 491.534 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q + +endstream +endobj +1402 0 obj +<< +/Length 7181 +>> +stream +0 g 0 G +0 g 0 G BT -/F30 9.9626 Tf 365.983 491.334 Td [(Tspmat)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.2)-1125(psb)]TJ ET q -1 0 0 1 397.993 491.534 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 202.396 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 401.131 491.334 Td [(type)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(cdins)-285(|)-286(Comm)32(unication)-286(descriptor)-285(insert)-285(routine)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -271.347 -19.394 Td [(desc)]TJ +/F30 9.9626 Tf -55.726 -18.389 Td [(call)-525(psb_cdins\050nz,)-525(ia,)-525(ja,)-525(desc_a,)-525(info)-525([,ila,jla]\051)]TJ 0 -11.956 Td [(call)-525(psb_cdins\050nz,ja,desc,info[,jla,mask,lidx]\051)]TJ/F8 9.9626 Tf 14.944 -20.465 Td [(This)-428(subroutine)-427(examines)-428(the)-428(edges)-428(of)-428(the)-427(graph)-428(asso)-28(ciated)-428(with)-428(t)1(he)-428(dis-)]TJ -14.944 -11.955 Td [(cretization)-481(mesh)-480(\050and)-481(isomorphic)-480(to)-481(the)-480(sparsit)27(y)-480(pattern)-481(of)-480(a)-481(lin)1(e)-1(ar)-480(system)]TJ 0 -11.955 Td [(co)-28(e\016cien)28(t)-359(matrix\051,)-366(storing)-359(them)-359(as)-359(necess)-1(ar)1(y)-360(in)28(to)-359(the)-359(comm)28(unication)-359(des)-1(crip)1(-)]TJ 0 -11.955 Td [(tor.)-506(In)-353(the)-354(\014rst)-354(form)-354(the)-354(edges)-353(are)-354(sp)-28(eci\014ed)-354(as)-354(pairs)-353(of)-354(indices)]TJ/F11 9.9626 Tf 278.053 0 Td [(ia)]TJ/F8 9.9626 Tf 8.698 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F11 9.9626 Tf 3.874 0 Td [(;)-167(j)-57(a)]TJ/F8 9.9626 Tf 14.367 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051;)-364(the)]TJ -319.606 -11.955 Td [(starting)-394(index)]TJ/F11 9.9626 Tf 65.222 0 Td [(ia)]TJ/F8 9.9626 Tf 8.699 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)-394(should)-394(b)-28(elong)-394(to)-394(the)-395(cur)1(re)-1(n)28(t)-394(pro)-28(cess.)-627(In)-394(the)-394(second)-394(form)]TJ -81.227 -11.955 Td [(only)-333(the)-334(remote)-333(indices)]TJ/F11 9.9626 Tf 104.968 0 Td [(j)-57(a)]TJ/F8 9.9626 Tf 9.939 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)-333(are)-334(sp)-27(e)-1(ci\014ed.)]TJ +0 g 0 G +/F27 9.9626 Tf -122.213 -20.465 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.345 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.344 Td [(nz)]TJ +0 g 0 G +/F8 9.9626 Tf 16.438 0 Td [(the)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(p)-28(oin)28(ts)-333(b)-28(eing)-333(inserte)-1(d)1(.)]TJ 8.469 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.344 Td [(ia)]TJ +0 g 0 G +/F8 9.9626 Tf 13.733 0 Td [(the)-333(indices)-334(of)-333(the)-333(starting)-334(v)28(ertex)-333(of)-333(the)-334(edges)-333(b)-28(eing)-333(inserted.)]TJ 11.174 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(arra)27(y)-333(of)-333(length)]TJ/F11 9.9626 Tf 172.547 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -208.505 -19.344 Td [(ja)]TJ +0 g 0 G +/F8 9.9626 Tf 14.051 0 Td [(the)-333(indices)-334(of)-333(the)-333(end)-334(v)28(ertex)-333(of)-334(t)1(he)-334(edges)-333(b)-28(eing)-333(inserted.)]TJ 10.856 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(arra)27(y)-333(of)-333(length)]TJ/F11 9.9626 Tf 172.547 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -208.505 -19.344 Td [(mask)]TJ +0 g 0 G +/F8 9.9626 Tf 30.664 0 Td [(Mask)-329(e)-1(n)28(tries)-329(in)]TJ/F30 9.9626 Tf 70.038 0 Td [(ja)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)-330(they)-330(are)-329(inserted)-330(only)-329(when)-329(the)-330(corresp)-28(onding)]TJ/F30 9.9626 Tf 211.627 0 Td [(mask)]TJ/F8 9.9626 Tf -297.883 -11.955 Td [(en)28(tries)-334(are)]TJ/F30 9.9626 Tf 48.54 0 Td [(.true.)]TJ/F8 9.9626 Tf -48.54 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(arra)28(y)-334(of)-333(length)]TJ/F11 9.9626 Tf 165.048 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(,)-333(default)]TJ/F30 9.9626 Tf 39.574 0 Td [(.true.)]TJ/F8 9.9626 Tf 31.382 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -271.962 -19.344 Td [(lidx)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(User)-333(de\014ned)-334(lo)-27(cal)-334(indices)-333(for)]TJ/F30 9.9626 Tf 128.85 0 Td [(ja)]TJ/F8 9.9626 Tf 10.461 0 Td [(.)]TJ -138.162 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(length)]TJ/F11 9.9626 Tf 172.547 0 Td [(nz)]TJ/F8 9.9626 Tf 11.052 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -208.506 -20.465 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.344 Td [(desc)]TJ ET q -1 0 0 1 172.619 472.14 cm +1 0 0 1 172.619 168.346 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 176.057 471.94 Td [(a)]TJ +/F27 9.9626 Tf 176.057 168.146 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(The)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(v)56(ariable)-334(of)-333(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.55 0 Td [(the)-333(up)-28(dated)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 137.347 0 Td [(psb)]TJ +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 329.276 424.319 cm +1 0 0 1 362.845 120.525 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 332.415 424.12 Td [(desc)]TJ +/F30 9.9626 Tf 365.983 120.326 Td [(desc)]TJ ET q -1 0 0 1 353.964 424.319 cm +1 0 0 1 387.532 120.525 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 357.102 424.12 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -227.318 -31.349 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -20.59 Td [(Notes)]TJ -0 g 0 G -/F8 9.9626 Tf 12.176 -18.862 Td [(1.)]TJ -0 g 0 G - [-500(On)-487(en)28(try)-487(to)-488(this)-487(routine)-487(the)-487(descriptor)-487(ma)28(y)-488(b)-27(e)-488(in)-487(either)-487(the)-487(build)-487(or)]TJ 12.73 -11.955 Td [(assem)28(bled)-334(state.)]TJ -0 g 0 G - -12.73 -19.394 Td [(2.)]TJ -0 g 0 G - [-500(On)-363(en)28(try)-363(to)-362(this)-363(routine)-362(the)-363(sparse)-363(matrix)-363(ma)28(y)-363(b)-27(e)-363(in)-363(either)-362(the)-363(build)-363(or)]TJ 12.73 -11.955 Td [(up)-28(date)-333(state.)]TJ -0 g 0 G - -12.73 -19.394 Td [(3.)]TJ -0 g 0 G - [-500(If)-230(the)-231(descriptor)-230(is)-231(in)-230(the)-231(build)-230(state,)-251(then)-231(the)-230(sparse)-231(matrix)-230(m)28(ust)-231(also)-230(b)-28(e)-231(in)]TJ 12.73 -11.955 Td [(the)-327(build)-327(state;)-329(the)-328(action)-327(of)-327(the)-327(routine)-327(is)-327(to)-327(\050implicitly\051)-327(call)]TJ/F30 9.9626 Tf 271.732 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf -271.732 -11.956 Td [(to)-419(add)-419(en)28(tries)-419(to)-419(the)-418(sparsit)27(y)-418(pattern;)-462(eac)28(h)-419(sparse)-419(matrix)-419(en)28(try)-419(implic-)]TJ 0 -11.955 Td [(itly)-360(d)1(e)-1(\014)1(nes)-360(a)-360(graph)-359(edge,)-366(that)-360(is)-359(passed)-360(to)-359(the)-360(descriptor)-359(routine)-360(for)-359(the)]TJ 0 -11.955 Td [(appropriate)-333(pro)-28(cessing;)]TJ -0 g 0 G - -12.73 -19.394 Td [(4.)]TJ -0 g 0 G - [-500(The)-333(input)-334(data)-333(can)-333(b)-28(e)-333(passed)-334(in)-333(either)-333(COO)-334(or)-333(CSR)-333(formats;)]TJ -0 g 0 G - 0 -19.394 Td [(5.)]TJ +/F30 9.9626 Tf 390.67 120.326 Td [(type)]TJ 0 g 0 G - [-500(In)-368(COO)-367(format)-368(the)-367(co)-28(e\016cien)28(ts)-368(to)-368(b)-27(e)-368(inserted)-368(are)-367(represen)28(te)-1(d)-367(b)28(y)-368(the)-367(or-)]TJ 12.73 -11.955 Td [(dered)-358(triples)]TJ/F11 9.9626 Tf 58.163 0 Td [(ia)]TJ/F8 9.9626 Tf 8.698 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F11 9.9626 Tf 3.874 0 Td [(;)-167(j)-57(a)]TJ/F8 9.9626 Tf 14.367 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F11 9.9626 Tf 3.874 0 Td [(;)-167(v)-36(al)]TJ/F8 9.9626 Tf 18.049 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051,)-364(for)]TJ/F11 9.9626 Tf 25.762 0 Td [(i)]TJ/F8 9.9626 Tf 6.607 0 Td [(=)-319(1)]TJ/F11 9.9626 Tf 15.906 0 Td [(;)-167(:)-166(:)-167(:)-167(;)-166(nz)]TJ/F8 9.9626 Tf 33.19 0 Td [(;)-370(these)-358(triples)-358(should)-358(b)-28(e-)]TJ -210.411 -11.955 Td [(long)-384(to)-385(the)-384(curren)27(t)-384(pro)-28(cess,)-397(i.e.)]TJ/F11 9.9626 Tf 144.426 0 Td [(ia)]TJ/F8 9.9626 Tf 8.699 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)-384(s)-1(h)1(ould)-385(b)-28(e)-384(one)-385(of)-384(the)-384(lo)-28(cal)-385(indices,)]TJ -160.431 -11.955 Td [(but)-333(are)-334(otherwise)-333(arbitrary;)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G - 141.968 -29.888 Td [(78)]TJ + -94.013 -29.888 Td [(74)]TJ 0 g 0 G ET endstream endobj -1401 0 obj +1407 0 obj << -/Length 3795 +/Length 3156 >> stream 0 g 0 G 0 g 0 G 0 g 0 G BT -/F8 9.9626 Tf 112.072 706.129 Td [(6.)]TJ +/F27 9.9626 Tf 99.895 706.129 Td [(info)]TJ 0 g 0 G - [-500(In)-497(CS)1(R)-497(format)-496(the)-497(co)-28(e\016cien)28(ts)-497(to)-496(b)-28(e)-497(inserted)-496(for)-497(eac)28(h)-496(input)-497(ro)28(w)]TJ/F11 9.9626 Tf 314.876 0 Td [(i)]TJ/F8 9.9626 Tf 8.91 0 Td [(=)]TJ -311.056 -11.955 Td [(1)]TJ/F11 9.9626 Tf 4.981 0 Td [(;)-167(nr)]TJ/F8 9.9626 Tf 18.296 0 Td [(are)-313(represen)28(ted)-313(b)28(y)-313(the)-313(ordered)-313(triples)-313(\050)]TJ/F11 9.9626 Tf 169.802 0 Td [(i)]TJ/F8 9.9626 Tf 5.238 0 Td [(+)]TJ/F11 9.9626 Tf 9.555 0 Td [(ir)-28(w)]TJ/F14 9.9626 Tf 17.41 0 Td [(\000)]TJ/F8 9.9626 Tf 9.555 0 Td [(1\051)]TJ/F11 9.9626 Tf 8.855 0 Td [(;)-167(j)-57(a)]TJ/F8 9.9626 Tf 14.367 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(j)]TJ/F8 9.9626 Tf 4.673 0 Td [(\051)]TJ/F11 9.9626 Tf 3.874 0 Td [(;)-167(v)-36(al)]TJ/F8 9.9626 Tf 18.049 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(j)]TJ/F8 9.9626 Tf 4.672 0 Td [(\051,)-317(for)]TJ/F11 9.9626 Tf -297.077 -11.955 Td [(j)]TJ/F8 9.9626 Tf 8.598 0 Td [(=)]TJ/F11 9.9626 Tf 11.674 0 Td [(ir)-28(p)]TJ/F8 9.9626 Tf 13.217 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F11 9.9626 Tf 3.875 0 Td [(;)-167(:)-166(:)-167(:)-167(;)-166(ir)-28(p)]TJ/F8 9.9626 Tf 35.355 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 6.11 0 Td [(+)-269(1\051)]TJ/F14 9.9626 Tf 21.958 0 Td [(\000)]TJ/F8 9.9626 Tf 10.426 0 Td [(1;)-438(these)-403(triples)-403(should)-403(b)-28(elong)-403(to)-403(the)-403(curren)28(t)]TJ -122.393 -11.956 Td [(pro)-28(cess,)-272(i.e.)]TJ/F11 9.9626 Tf 53.793 0 Td [(i)]TJ/F8 9.9626 Tf 4.124 0 Td [(+)]TJ/F11 9.9626 Tf 8.44 0 Td [(ir)-28(w)]TJ/F14 9.9626 Tf 16.295 0 Td [(\000)]TJ/F8 9.9626 Tf 8.44 0 Td [(1)-257(should)-257(b)-27(e)-257(one)-257(of)-257(the)-257(lo)-28(cal)-257(indices,)-272(but)-257(are)-257(otherwise)]TJ -91.092 -11.955 Td [(arbitrary;)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ 0 g 0 G - -12.73 -19.925 Td [(7.)]TJ +/F27 9.9626 Tf -24.907 -19.925 Td [(ila)]TJ 0 g 0 G - [-500(There)-386(is)-385(no)-386(requiremen)28(t)-386(that)-386(a)-385(giv)28(en)-386(ro)28(w)-386(m)28(ust)-386(b)-28(e)-385(passe)-1(d)-385(in)-386(its)-385(e)-1(n)28(tiret)28(y)]TJ 12.73 -11.955 Td [(to)-355(a)-354(single)-355(call)-354(to)-355(this)-354(routine:)-487(the)-355(buildup)-354(of)-355(a)-354(ro)28(w)-355(ma)28(y)-355(b)-28(e)-354(split)-355(in)28(to)-354(as)]TJ 0 -11.955 Td [(man)28(y)-334(calls)-333(as)-333(desired)-334(\050ev)28(en)-333(in)-333(the)-334(CSR)-333(format\051;)]TJ +/F8 9.9626 Tf 16.916 0 Td [(the)-333(lo)-28(cal)-333(indices)-334(of)-333(the)-333(starting)-334(v)28(ertex)-333(of)-334(the)-333(edges)-333(b)-28(eing)-333(inserted.)]TJ 7.991 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(length)]TJ/F11 9.9626 Tf 172.548 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ 0 g 0 G - -12.73 -19.926 Td [(8.)]TJ +/F27 9.9626 Tf -208.506 -19.925 Td [(jla)]TJ 0 g 0 G - [-500(Co)-28(e\016cien)28(ts)-409(from)-410(di\013eren)28(t)-409(ro)28(ws)-410(ma)28(y)-409(also)-409(b)-28(e)-409(mixed)-410(up)-409(freely)-409(in)-409(a)-410(single)]TJ 12.73 -11.955 Td [(call,)-333(according)-334(to)-333(the)-333(application)-333(nee)-1(d)1(s)-1(;)]TJ +/F8 9.9626 Tf 17.234 0 Td [(the)-333(lo)-28(cal)-333(indices)-334(of)-333(the)-333(end)-334(v)28(ertex)-333(of)-334(the)-333(edges)-333(b)-28(eing)-333(inserted.)]TJ 7.673 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(length)]TJ/F11 9.9626 Tf 172.548 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(.)]TJ/F16 11.9552 Tf -208.506 -21.918 Td [(Notes)]TJ 0 g 0 G - -12.73 -19.925 Td [(9.)]TJ +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ 0 g 0 G - [-500(An)28(y)-416(co)-28(e\016cien)28(ts)-416(from)-416(matrix)-416(ro)28(ws)-416(not)-416(o)28(wned)-416(b)28(y)-416(the)-416(calling)-416(pro)-28(cess)-416(are)]TJ 12.73 -11.955 Td [(silen)28(tly)-334(ign)1(ored;)]TJ + [-500(This)-333(routine)-334(ma)28(y)-333(only)-333(b)-28(e)-334(called)-333(if)-333(the)-333(des)-1(crip)1(tor)-334(is)-333(in)-333(the)-334(build)-333(state;)]TJ 0 g 0 G - -17.711 -19.926 Td [(10.)]TJ + 0 -19.925 Td [(2.)]TJ 0 g 0 G - [-500(If)-358(the)-359(descriptor)-358(is)-359(in)-358(the)-359(assem)28(bled)-359(state,)-364(then)-359(an)28(y)-359(en)28(tries)-358(in)-359(the)-358(sparse)]TJ 17.711 -11.955 Td [(matrix)-430(that)-429(w)27(ould)-429(generate)-430(additional)-430(comm)28(unication)-430(requiremen)28(ts)-430(are)]TJ 0 -11.955 Td [(ignored;)]TJ + [-500(This)-305(r)1(o)-1(u)1(tine)-305(automatically)-304(ignores)-305(edges)-305(that)-304(do)-305(not)-304(insist)-305(on)-304(the)-305(curren)28(t)]TJ 12.73 -11.955 Td [(pro)-28(cess,)-284(i.e)-1(.)-424(edges)-272(for)-273(whic)28(h)-272(neither)-273(the)-272(starting)-272(nor)-273(the)-272(end)-273(v)28(ertex)-272(b)-28(elong)]TJ 0 -11.955 Td [(to)-333(the)-334(curren)28(t)-333(pro)-28(cess.)]TJ 0 g 0 G - -17.711 -19.925 Td [(11.)]TJ + -12.73 -19.926 Td [(3.)]TJ +0 g 0 G + [-500(The)-437(second)-438(form)-437(of)-437(this)-437(routine)-437(will)-438(b)-27(e)-438(useful)-437(when)-437(dealing)-437(with)-438(user-)]TJ 12.73 -11.955 Td [(sp)-28(eci\014ed)-333(index)-333(mappings;)-334(see)-333(also)]TJ +0 0 1 rg 0 0 1 RG + [-334(2.)1(3.1)]TJ 0 g 0 G - [-500(If)-308(the)-309(matrix)-309(is)-308(in)-309(the)-308(up)-28(date)-309(state,)-313(an)28(y)-309(en)28(tries)-309(in)-308(p)-28(ositions)-309(th)1(at)-309(w)28(ere)-309(not)]TJ 17.711 -11.955 Td [(presen)28(t)-334(in)-333(the)-333(original)-333(matrix)-334(are)-333(ignored.)]TJ + [(.)]TJ 0 g 0 G - 141.968 -384.558 Td [(79)]TJ + 141.968 -314.819 Td [(75)]TJ 0 g 0 G ET endstream endobj -1414 0 obj +1416 0 obj << -/Length 6648 +/Length 6223 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.3)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 202.396 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(spasb)-375(|)-375(Sparse)-375(matrix)-375(assem)31(bly)-375(routine)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(cdasb)-250(|)-250(Comm)31(unication)-250(descriptor)-250(assem)31(bly)-250(rou-)]TJ -25.091 -13.948 Td [(tine)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_spasb\050a,)-525(desc_a,)-525(info,)-525(afmt,)-525(upd,)-525(dupl,)-525(mold\051)]TJ +/F30 9.9626 Tf -30.635 -18.389 Td [(call)-525(psb_cdasb\050desc_a,)-525(info)-525([,)-525(mold]\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -21.202 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.639 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.638 Td [(desc)]TJ + 0 -19.926 Td [(desc)]TJ ET q -1 0 0 1 172.619 627.46 cm +1 0 0 1 172.619 612.223 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 176.057 627.261 Td [(a)]TJ +/F27 9.9626 Tf 176.057 612.023 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 362.845 564.402 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 365.983 564.203 Td [(desc)]TJ +ET +q +1 0 0 1 387.532 564.402 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 390.67 564.203 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -260.887 -19.925 Td [(mold)]TJ +0 g 0 G +/F8 9.9626 Tf 29.805 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(th)1(e)-334(in)28(ternal)-333(index)-334(storage.)]TJ -4.899 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-222(as:)-389(a)-222(ob)-56(ject)-222(of)-222(t)28(yp)-28(e)-222(deriv)28(e)-1(d)-222(from)-222(\050in)28(teger\051)]TJ/F30 9.9626 Tf 219.871 0 Td [(psb)]TJ +ET +q +1 0 0 1 411.8 496.656 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 414.939 496.457 Td [(T)]TJ +ET +q +1 0 0 1 420.797 496.656 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 423.935 496.457 Td [(base)]TJ +ET +q +1 0 0 1 445.484 496.656 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 448.622 496.457 Td [(vect)]TJ +ET +q +1 0 0 1 470.171 496.656 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 473.309 496.457 Td [(type)]TJ/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -343.526 -21.918 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(desc)]TJ +ET +q +1 0 0 1 172.619 454.813 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 176.057 454.614 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 362.845 579.639 cm +1 0 0 1 362.845 406.992 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 365.983 406.793 Td [(desc)]TJ +ET +q +1 0 0 1 387.532 406.992 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 579.44 Td [(desc)]TJ +/F30 9.9626 Tf 390.67 406.793 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -260.887 -19.925 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -21.918 Td [(Notes)]TJ +0 g 0 G +/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ +0 g 0 G + [-500(On)-333(exit)-334(from)-333(this)-333(routine)-333(the)-334(descriptor)-333(is)-333(in)-334(the)-333(assem)28(bled)-334(state.)]TJ -12.176 -19.925 Td [(This)-350(call)-350(will)-349(set)-350(up)-350(all)-350(the)-349(neces)-1(sary)-349(information)-350(for)-350(the)-349(halo)-350(data)-350(exc)28(hanges.)]TJ 0 -11.955 Td [(In)-432(doing)-432(so,)-457(the)-432(library)-432(will)-432(need)-433(to)-432(iden)28(tify)-432(the)-432(set)-432(of)-432(pro)-28(cesses)-433(o)28(wning)-432(the)]TJ 0 -11.956 Td [(halo)-476(indices)-477(through)-476(the)-477(use)-476(of)-477(the)]TJ/F30 9.9626 Tf 164.817 0 Td [(desc%fnd_owner\050\051)]TJ/F8 9.9626 Tf 88.433 0 Td [(metho)-28(d;)-548(the)-476(o)28(wning)]TJ -253.25 -11.955 Td [(pro)-28(cesses)-365(are)-365(the)-365(top)-27(ological)-365(neigh)28(b)-28(ours)-365(of)-365(the)-365(calling)-365(p)1(ro)-28(cess.)-539(If)-365(the)-365(user)-365(has)]TJ 0 -11.955 Td [(some)-228(bac)28(kground)-228(information)-228(on)-228(the)-228(pro)-28(cesses)-228(that)-228(are)-228(neigh)28(b)-28(ours)-228(of)-228(the)-228(curren)28(t)]TJ 0 -11.955 Td [(one,)-533(it)-494(i)1(s)-494(p)-28(ossible)-493(to)-493(sp)-28(ecify)-493(explicitly)-493(the)-494(list)-493(of)-493(adjacen)27(t)-493(pro)-27(c)-1(esses)-493(with)-493(a)]TJ 0 -11.955 Td [(call)-393(to)]TJ/F30 9.9626 Tf 31.633 0 Td [(desc%set_p_adjcncy\050list\051)]TJ/F8 9.9626 Tf 125.528 0 Td [(;)-423(this)-393(will)-393(sp)-28(eed)-393(up)-393(the)-393(subsequen)27(t)-393(call)-393(to)]TJ/F30 9.9626 Tf -157.161 -11.956 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)]TJ +0 g 0 G + 119.801 -103.154 Td [(76)]TJ +0 g 0 G +ET + +endstream +endobj +1423 0 obj +<< +/Length 3287 +>> +stream +0 g 0 G +0 g 0 G +BT +/F16 11.9552 Tf 99.895 706.129 Td [(6.4)-1125(psb)]TJ ET q -1 0 0 1 387.532 579.639 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 151.587 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 390.67 579.44 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -260.887 -19.639 Td [(afm)32(t)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(cdcp)31(y)-375(|)-375(Copies)-375(a)-375(comm)31(unication)-375(descriptor)]TJ 0 g 0 G -/F8 9.9626 Tf 27.736 0 Td [(the)-333(storage)-334(format)-333(for)-333(the)-334(sparse)-333(matrix.)]TJ -2.829 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(arra)28(y)-333(of)-334(c)28(haracters.)-444(Defalt:)-445('CSR'.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.639 Td [(up)-32(d)]TJ +/F30 9.9626 Tf -55.726 -18.389 Td [(call)-525(psb_cdcpy\050desc_in,)-525(desc_out,)-525(info\051)]TJ 0 g 0 G -/F8 9.9626 Tf 24.394 0 Td [(Pro)28(vide)-334(f)1(or)-334(up)-27(dates)-334(to)-333(the)-334(matri)1(x)-334(co)-28(e\016cien)28(ts.)]TJ 0.513 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(in)27(teger,)-333(p)-28(ossible)-333(v)55(alues:)]TJ/F30 9.9626 Tf 164.632 0 Td [(psb_upd_srch_)]TJ/F8 9.9626 Tf 67.995 0 Td [(,)]TJ/F30 9.9626 Tf 6.088 0 Td [(psb_upd_perm_)]TJ +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F27 9.9626 Tf -263.622 -19.639 Td [(dupl)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F8 9.9626 Tf 27.259 0 Td [(Ho)28(w)-334(to)-333(handle)-333(duplicate)-333(co)-28(e\016cien)27(ts.)]TJ -2.352 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-308(as:)-432(in)27(teger,)-313(p)-28(ossible)-309(v)56(alues:)]TJ/F30 9.9626 Tf 163.696 0 Td [(psb_dupl_ovwrt_)]TJ/F8 9.9626 Tf 78.455 0 Td [(,)]TJ/F30 9.9626 Tf 5.891 0 Td [(psb_dupl_add_)]TJ/F8 9.9626 Tf 67.995 0 Td [(,)]TJ/F30 9.9626 Tf -316.037 -11.955 Td [(psb_dupl_err_)]TJ/F8 9.9626 Tf 67.994 0 Td [(.)]TJ +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G -/F27 9.9626 Tf -92.901 -19.639 Td [(mold)]TJ 0 g 0 G -/F8 9.9626 Tf 29.805 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(the)-333(in)28(ternal)-333(matrix)-334(storage.)]TJ -4.898 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(a)-333(class)-334(deriv)28(ed)-333(from)]TJ/F30 9.9626 Tf 203.349 0 Td [(psb)]TJ + 0 -19.925 Td [(desc)]TJ ET q -1 0 0 1 395.279 297.847 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 121.81 626.17 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F30 9.9626 Tf 398.417 297.647 Td [(T)]TJ +/F27 9.9626 Tf 125.247 625.971 Td [(in)]TJ +0 g 0 G +/F8 9.9626 Tf 14.529 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -14.974 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 404.275 297.847 cm +1 0 0 1 312.036 578.35 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 407.413 297.647 Td [(base)]TJ +/F30 9.9626 Tf 315.174 578.15 Td [(desc)]TJ ET q -1 0 0 1 428.962 297.847 cm +1 0 0 1 336.723 578.35 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 432.101 297.647 Td [(sparse)]TJ +/F30 9.9626 Tf 339.861 578.15 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.926 Td [(desc)]TJ ET q -1 0 0 1 464.11 297.847 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 121.81 536.507 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F30 9.9626 Tf 467.248 297.647 Td [(mat)]TJ/F8 9.9626 Tf 15.691 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -332.234 -21.201 Td [(On)-383(Return)]TJ -0 g 0 G +/F27 9.9626 Tf 125.247 536.307 Td [(out)]TJ 0 g 0 G - 0 -19.639 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(matrix)-334(to)-333(b)-28(e)-333(assem)28(bled.)]TJ 14.355 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf -25.184 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 21.53 0 Td [(the)-333(comm)27(unication)-333(descriptor)-333(cop)28(y)83(.)]TJ -21.975 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 362.845 209.186 cm +1 0 0 1 312.036 488.686 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 208.986 Td [(Tspmat)]TJ +/F30 9.9626 Tf 315.174 488.487 Td [(desc)]TJ ET q -1 0 0 1 397.993 209.186 cm +1 0 0 1 336.723 488.686 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 401.131 208.986 Td [(type)]TJ +/F30 9.9626 Tf 339.861 488.487 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -271.347 -19.638 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -21.201 Td [(Notes)]TJ -0 g 0 G -/F8 9.9626 Tf 166.874 -29.888 Td [(80)]TJ -0 g 0 G -ET - -endstream -endobj -1418 0 obj -<< -/Length 2248 ->> -stream -0 g 0 G -0 g 0 G -0 g 0 G -BT -/F8 9.9626 Tf 112.072 706.129 Td [(1.)]TJ -0 g 0 G - [-500(On)-406(en)28(try)-406(to)-406(this)-406(routine)-406(the)-406(descriptor)-406(m)28(ust)-406(b)-28(e)-406(in)-406(the)-406(assem)28(bled)-406(state)-1(,)]TJ 12.73 -11.955 Td [(i.e.)]TJ/F30 9.9626 Tf 17.158 0 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 50.394 0 Td [(m)28(ust)-334(already)-333(ha)28(v)28(e)-334(b)-27(een)-334(called.)]TJ -0 g 0 G - -80.282 -19.926 Td [(2.)]TJ -0 g 0 G - [-500(The)-333(sparse)-334(matrix)-333(ma)28(y)-334(b)-27(e)-334(in)-333(either)-333(the)-334(build)-333(or)-333(up)-28(date)-333(state;)]TJ -0 g 0 G - 0 -19.925 Td [(3.)]TJ -0 g 0 G - [-500(Duplicate)-250(en)28(tries)-250(are)-249(detec)-1(ted)-249(and)-250(handled)-250(in)-249(b)-28(oth)-250(build)-249(and)-250(up)-28(date)-249(state,)]TJ 12.73 -11.955 Td [(with)-282(the)-283(exception)-282(of)-282(the)-283(error)-282(action)-282(that)-283(i)1(s)-283(only)-282(tak)28(en)-283(in)-282(the)-282(build)-282(s)-1(tate,)]TJ 0 -11.955 Td [(i.e.)-444(on)-334(the)-333(\014rst)-333(assem)27(bly;)]TJ -0 g 0 G - -12.73 -19.925 Td [(4.)]TJ -0 g 0 G - [-500(If)-224(the)-224(up)-28(d)1(ate)-224(c)27(hoice)-224(is)]TJ/F30 9.9626 Tf 107.516 0 Td [(psb_upd_perm_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)-246(then)-224(subsequen)28(t)-224(calls)-224(to)]TJ/F30 9.9626 Tf 108.951 0 Td [(psb_spins)]TJ/F8 9.9626 Tf -271.731 -11.956 Td [(to)-246(up)-28(date)-246(the)-246(matrix)-246(m)28(ust)-246(b)-28(e)-246(arranged)-246(in)-246(suc)28(h)-246(a)-246(w)28(a)27(y)-246(as)-246(to)-246(pro)-27(duce)-246(exactly)]TJ 0 -11.955 Td [(the)-228(same)-229(sequence)-228(of)-228(co)-28(e\016cien)28(t)-229(v)56(alues)-228(as)-229(encoun)28(tered)-228(at)-229(the)-228(\014rst)-228(assem)28(bly;)]TJ -0 g 0 G - -12.73 -19.925 Td [(5.)]TJ -0 g 0 G - [-500(The)-333(output)-334(storage)-333(format)-333(need)-334(not)-333(b)-28(e)-333(the)-333(same)-334(on)-333(all)-333(pro)-28(cesses;)]TJ -0 g 0 G - 0 -19.925 Td [(6.)]TJ +/F27 9.9626 Tf -260.887 -19.926 Td [(info)]TJ 0 g 0 G - [-500(On)-370(exit)-370(from)-370(this)-370(routine)-370(the)-370(matrix)-370(is)-370(in)-370(the)-370(assem)28(bled)-370(state,)-379(and)-370(th)27(us)]TJ 12.73 -11.956 Td [(is)-333(suitable)-334(for)-333(the)-333(computational)-334(r)1(outines.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ 0 g 0 G - 141.968 -444.333 Td [(81)]TJ + 141.968 -330.303 Td [(77)]TJ 0 g 0 G ET endstream endobj -1430 0 obj +1428 0 obj << -/Length 3084 +/Length 2253 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.5)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 202.396 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(spfree)-375(|)-375(F)94(rees)-375(a)-375(sparse)-375(matrix)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(cdfree)-375(|)-375(F)94(rees)-375(a)-375(comm)31(unication)-375(descriptor)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_spfree\050a,)-525(desc_a,)-525(info\051)]TJ +/F30 9.9626 Tf -55.726 -18.389 Td [(call)-525(psb_cdfree\050desc_a,)-525(info\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -16288,188 +16346,200 @@ BT /F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(matrix)-334(to)-333(b)-28(e)-333(freed.)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.95 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.914 0 Td [(psb)]TJ -ET -q -1 0 0 1 362.845 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 365.983 578.15 Td [(Tspmat)]TJ -ET -q -1 0 0 1 397.993 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 401.131 578.15 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -271.347 -19.925 Td [(desc)]TJ + 0 -19.925 Td [(desc)]TJ ET q -1 0 0 1 172.619 558.424 cm +1 0 0 1 172.619 626.17 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 176.057 558.225 Td [(a)]TJ +/F27 9.9626 Tf 176.057 625.971 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor)-333(to)-334(b)-27(e)-334(freed.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 362.845 510.604 cm +1 0 0 1 362.845 578.35 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 510.405 Td [(desc)]TJ +/F30 9.9626 Tf 365.983 578.15 Td [(desc)]TJ ET q -1 0 0 1 387.532 510.604 cm +1 0 0 1 387.532 578.35 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 390.67 510.405 Td [(type)]TJ +/F30 9.9626 Tf 390.67 578.15 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -21.918 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G 0 -19.926 Td [(info)]TJ 0 g 0 G /F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ 0 g 0 G - 141.968 -330.303 Td [(82)]TJ + 141.968 -398.049 Td [(78)]TJ 0 g 0 G ET endstream endobj -1436 0 obj +1434 0 obj << -/Length 3991 +/Length 5932 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.6)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 151.587 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(sprn)-391(|)-391(Reinit)-391(sparse)-391(matrix)-391(structure)-391(for)-391(psblas)-391(rou-)]TJ -25.091 -13.948 Td [(tines.)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(cdbldext)-597(|)-597(Build)-597(an)-598(extended)-597(comm)31(unication)]TJ -25.091 -13.948 Td [(descriptor)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf 0 -18.389 Td [(call)-525(psb_sprn\050a,)-525(decsc_a,)-525(info,)-525(clear\051)]TJ +/F30 9.9626 Tf -30.635 -19.114 Td [(call)-525(psb_cdbldext\050a,desc_a,nl,desc_out,)-525(info,)-525(extype\051)]TJ/F8 9.9626 Tf 14.944 -23.476 Td [(This)-298(subroutine)-297(builds)-298(an)-297(extended)-298(comm)28(unication)-298(descriptor,)-305(based)-297(on)-298(the)]TJ -14.944 -11.955 Td [(input)-389(descriptor)]TJ/F30 9.9626 Tf 74.288 0 Td [(desc_a)]TJ/F8 9.9626 Tf 35.261 0 Td [(and)-389(on)-390(the)-389(stencil)-389(s)-1(p)-27(eci\014ed)-390(through)-389(the)-389(input)-390(sparse)]TJ -109.549 -11.956 Td [(matrix)]TJ/F30 9.9626 Tf 32.407 0 Td [(a)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -37.637 -21.094 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -21.483 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.926 Td [(a)]TJ + 0 -21.484 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(A)-333(sparse)-334(matrix)-333(Scop)-28(e:)]TJ/F27 9.9626 Tf 101.176 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -109.893 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(t)27(yp)-27(e.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -21.484 Td [(desc)]TJ +ET +q +1 0 0 1 121.81 504.47 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 125.247 504.27 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(matrix)-334(to)-333(b)-28(e)-333(reinitialized.)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 564.402 cm +1 0 0 1 312.036 456.649 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 564.203 Td [(Tspmat)]TJ +/F30 9.9626 Tf 315.174 456.45 Td [(Tspmat)]TJ ET q -1 0 0 1 347.183 564.402 cm +1 0 0 1 347.183 456.649 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 350.322 564.203 Td [(type)]TJ +/F30 9.9626 Tf 350.322 456.45 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -271.348 -19.925 Td [(desc)]TJ +/F27 9.9626 Tf -271.348 -21.484 Td [(nl)]TJ +0 g 0 G +/F8 9.9626 Tf 14.529 0 Td [(the)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(additional)-333(la)28(y)27(ers)-333(desired.)]TJ 10.378 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)]TJ/F11 9.9626 Tf 130.428 0 Td [(nl)]TJ/F14 9.9626 Tf 11.916 0 Td [(\025)]TJ/F8 9.9626 Tf 10.516 0 Td [(0.)]TJ +0 g 0 G +/F27 9.9626 Tf -177.767 -21.483 Td [(ext)32(yp)-32(e)]TJ +0 g 0 G +/F8 9.9626 Tf 38.398 0 Td [(the)-333(kind)-334(of)-333(estension)-333(required.)]TJ -13.491 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 44.396 0 Td [(.)]TJ -69.579 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-419(as:)-616(an)-420(in)28(teger)-419(v)55(alue)]TJ/F30 9.9626 Tf 135.566 0 Td [(psb_ovt_xhal_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)]TJ/F30 9.9626 Tf 7.159 0 Td [(psb_ovt_asov_)]TJ/F8 9.9626 Tf 67.995 0 Td [(,)-441(default:)]TJ/F30 9.9626 Tf -278.714 -11.955 Td [(psb_ovt_xhal_)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -23.476 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -21.484 Td [(desc)]TJ ET q -1 0 0 1 121.81 544.477 cm +1 0 0 1 121.81 261.126 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 544.278 Td [(a)]TJ +/F27 9.9626 Tf 125.247 260.927 Td [(out)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 21.53 0 Td [(the)-333(extended)-334(comm)28(unication)-333(descriptor.)]TJ -21.975 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 496.656 cm +1 0 0 1 312.036 213.305 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 496.457 Td [(desc)]TJ +/F30 9.9626 Tf 315.174 213.106 Td [(desc)]TJ ET q -1 0 0 1 336.723 496.656 cm +1 0 0 1 336.723 213.305 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 496.457 Td [(type)]TJ +/F30 9.9626 Tf 339.861 213.106 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -19.925 Td [(clear)]TJ +/F27 9.9626 Tf -260.887 -21.484 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 28.795 0 Td [(Cho)-28(ose)-333(whether)-334(to)-333(zero)-333(out)-334(matrix)-333(co)-28(e\016cien)28(ts)]TJ -3.888 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Default:)-444(true.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -23.476 Td [(Notes)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ +/F8 9.9626 Tf 166.875 -29.888 Td [(79)]TJ +0 g 0 G +ET + +endstream +endobj +1439 0 obj +<< +/Length 1587 +>> +stream 0 g 0 G 0 g 0 G - 0 -19.925 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ +BT +/F8 9.9626 Tf 162.881 706.129 Td [(1.)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ + [-500(Sp)-28(ecifying)]TJ/F30 9.9626 Tf 60.092 0 Td [(psb_ovt_xhal_)]TJ/F8 9.9626 Tf 70.801 0 Td [(for)-282(the)]TJ/F30 9.9626 Tf 31.376 0 Td [(extype)]TJ/F8 9.9626 Tf 34.189 0 Td [(argumen)28(t)-282(the)-282(u)1(s)-1(er)-281(will)-282(obtain)-281(a)]TJ -183.728 -11.955 Td [(descriptor)-258(for)-257(a)-258(domain)-257(partition)-258(in)-257(whic)28(h)-258(the)-257(additional)-258(la)28(y)28(ers)-258(are)-257(fetc)27(hed)]TJ 0 -11.955 Td [(as)-415(part)-415(of)-415(an)-415(\050extended\051)-415(halo;)-456(ho)28(w)27(ev)28(er)-415(the)-415(index-to-pro)-28(cess)-415(mapping)-415(is)]TJ 0 -11.956 Td [(iden)28(tical)-334(to)-333(that)-333(of)-333(the)-334(base)-333(descriptor;)]TJ 0 g 0 G - [-500(On)-333(exit)-334(from)-333(this)-333(routine)-333(the)-334(sparse)-333(matrix)-333(is)-334(in)-333(the)-333(up)-28(date)-333(s)-1(tat)1(e)-1(.)]TJ + -12.73 -19.925 Td [(2.)]TJ +0 g 0 G + [-500(Sp)-28(ecifying)]TJ/F30 9.9626 Tf 60.957 0 Td [(psb_ovt_asov_)]TJ/F8 9.9626 Tf 71.666 0 Td [(for)-368(the)]TJ/F30 9.9626 Tf 33.108 0 Td [(extype)]TJ/F8 9.9626 Tf 35.053 0 Td [(argumen)28(t)-369(the)-368(user)-369(will)-368(obtain)]TJ -188.054 -11.955 Td [(a)-458(descriptor)-459(with)-458(an)-458(o)28(v)27(erlapp)-27(ed)-459(decomp)-28(osition:)-694(the)-458(additional)-458(la)27(y)28(er)-458(is)]TJ 0 -11.955 Td [(aggregated)-413(to)-413(the)-414(l)1(o)-28(cal)-413(sub)-28(domain)-413(\050and)-413(th)27(u)1(s)-414(is)-413(an)-413(o)28(v)28(erlap\051,)-433(and)-413(a)-414(new)]TJ 0 -11.955 Td [(halo)-333(extending)-334(b)-27(ey)27(ond)-333(the)-333(last)-334(ad)1(ditional)-334(la)28(y)28(er)-333(is)-334(formed.)]TJ 0 g 0 G - 154.698 -206.766 Td [(83)]TJ + 141.968 -524.035 Td [(80)]TJ 0 g 0 G ET endstream endobj -1443 0 obj +1447 0 obj << -/Length 5111 +/Length 4897 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.7)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 151.587 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(geall)-375(|)-375(Allo)-31(cates)-375(a)-375(dense)-375(matrix)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(spall)-375(|)-375(Allo)-31(cates)-375(a)-375(sparse)-375(matrix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_geall\050x,)-525(desc_a,)-525(info,)-525(n,)-525(lb\051)]TJ +/F30 9.9626 Tf -55.726 -18.389 Td [(call)-525(psb_spall\050a,)-525(desc_a,)-525(info,)-525(nnz\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -16481,437 +16551,463 @@ BT 0 -19.925 Td [(desc)]TJ ET q -1 0 0 1 172.619 626.17 cm +1 0 0 1 121.81 626.17 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 176.057 625.971 Td [(a)]TJ +/F27 9.9626 Tf 125.247 625.971 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(The)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(v)56(ariable)-334(of)-333(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 137.347 0 Td [(psb)]TJ +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 329.276 578.35 cm +1 0 0 1 312.036 578.35 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 332.415 578.15 Td [(desc)]TJ +/F30 9.9626 Tf 315.174 578.15 Td [(desc)]TJ ET q -1 0 0 1 353.964 578.35 cm +1 0 0 1 336.723 578.35 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 357.102 578.15 Td [(type)]TJ +/F30 9.9626 Tf 339.861 578.15 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -227.318 -31.88 Td [(n)]TJ -0 g 0 G -/F8 9.9626 Tf 11.346 0 Td [(The)-333(n)27(um)28(b)-28(er)-333(of)-333(columns)-334(of)-333(the)-333(dense)-334(matrix)-333(to)-333(b)-28(e)-333(allo)-28(cated.)]TJ 13.56 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-343(as:)-463(In)27(teger)-343(scalar,)-345(default)-343(1.)-473(It)-343(is)-343(not)-343(a)-343(v)56(alid)-343(argumen)27(t)-342(if)]TJ/F11 9.9626 Tf 294.599 0 Td [(x)]TJ/F8 9.9626 Tf 9.111 0 Td [(is)-343(a)]TJ -303.71 -11.955 Td [(rank-1)-333(arra)28(y)83(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.925 Td [(lb)]TJ +/F27 9.9626 Tf -260.887 -19.925 Td [(nnz)]TJ 0 g 0 G -/F8 9.9626 Tf 14.529 0 Td [(The)-489(lo)28(w)27(er)-489(b)-27(ound)-489(for)-489(the)-490(colu)1(m)-1(n)-489(ind)1(e)-1(x)-489(range)-489(of)-489(the)-489(dense)-489(matrix)-489(to)-489(b)-28(e)]TJ 10.377 -11.955 Td [(allo)-28(cated.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-343(as:)-463(In)27(teger)-343(scalar,)-345(default)-343(1.)-473(It)-343(is)-343(not)-343(a)-343(v)56(alid)-343(argumen)27(t)-342(if)]TJ/F11 9.9626 Tf 294.599 0 Td [(x)]TJ/F8 9.9626 Tf 9.111 0 Td [(is)-343(a)]TJ -303.71 -11.955 Td [(rank-1)-333(arra)28(y)83(.)]TJ +/F8 9.9626 Tf 22.804 0 Td [(An)-309(estimate)-309(of)-308(the)-309(n)28(um)28(b)-28(er)-309(of)-309(nonzero)-27(es)-309(in)-309(the)-309(lo)-28(cal)-308(part)-309(of)-309(the)-308(as)-1(sem)28(bled)]TJ 2.103 -11.955 Td [(matrix.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -21.918 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(x)]TJ + 0 -19.925 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(The)-333(dense)-334(matrix)-333(to)-333(b)-28(e)-333(allo)-28(cated.)]TJ 13.878 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-303(as)-1(:)-429(a)-304(rank)-303(one)-304(or)-304(t)28(w)28(o)-304(arra)28(y)-304(with)-304(th)1(e)-304(ALLOCA)83(T)83(ABLE)-303(attribute)]TJ 0 -11.955 Td [(or)-333(an)-334(ob)-55(ject)-334(of)-333(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(matrix)-334(to)-333(b)-28(e)-333(allo)-28(cated.)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 89.969 0 Td [(psb)]TJ -ET -q -1 0 0 1 281.898 293.418 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 285.037 293.219 Td [(T)]TJ +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 290.895 293.418 cm +1 0 0 1 312.036 408.985 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 294.033 293.219 Td [(vect)]TJ +/F30 9.9626 Tf 315.174 408.786 Td [(Tspmat)]TJ ET q -1 0 0 1 315.582 293.418 cm +1 0 0 1 347.183 408.985 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 318.72 293.219 Td [(type)]TJ +/F30 9.9626 Tf 350.322 408.786 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(,)-333(of)-334(t)28(yp)-28(e)-333(real,)-333(complex)-334(or)-333(in)28(teger.)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -271.348 -19.926 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ +0 g 0 G +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ +0 g 0 G + [-500(On)-333(exit)-334(from)-333(this)-333(routine)-333(the)-334(sparse)-333(matrix)-333(is)-334(in)-333(the)-333(build)-334(state.)]TJ +0 g 0 G + 0 -19.926 Td [(2.)]TJ 0 g 0 G -/F27 9.9626 Tf -188.936 -31.88 Td [(info)]TJ + [-500(The)-333(descriptor)-334(ma)28(y)-333(b)-28(e)-333(in)-334(either)-333(the)-333(build)-333(or)-334(assem)28(bled)-333(state.)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ + 0 -19.925 Td [(3.)]TJ +0 g 0 G + [-500(Pro)28(viding)-307(a)-308(go)-27(o)-28(d)-307(es)-1(timate)-307(for)-307(the)-307(n)27(um)28(b)-28(er)-307(of)-307(nonzero)-28(es)]TJ/F11 9.9626 Tf 254.288 0 Td [(nnz)]TJ/F8 9.9626 Tf 20.092 0 Td [(in)-307(the)-308(assem-)]TJ -261.65 -11.955 Td [(bled)-401(m)-1(atr)1(ix)-402(ma)28(y)-402(substan)28(tially)-401(impro)27(v)28(e)-401(p)-28(erformance)-402(in)-401(the)-402(matrix)-401(build)]TJ 0 -11.955 Td [(phase,)-458(as)-433(it)-432(will)-433(reduce)-433(or)-433(eliminate)-433(the)-433(need)-432(for)-433(\050p)-28(oten)28(tially)-433(m)28(ultiple\051)]TJ 0 -11.956 Td [(data)-333(reallo)-28(cations.)]TJ 0 g 0 G - 141.968 -123.08 Td [(84)]TJ + 141.968 -133.042 Td [(81)]TJ 0 g 0 G ET endstream endobj -1449 0 obj +1455 0 obj << -/Length 6817 +/Length 5716 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.8)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 202.396 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(geins)-375(|)-375(Dense)-375(matrix)-375(insertion)-375(routine)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(spins)-438(|)-437(Insert)-438(a)-437(set)-438(of)-437(co)-31(e\016cien)31(ts)-438(in)32(to)-438(a)-437(sparse)]TJ -25.091 -13.948 Td [(matrix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_geins\050m,)-525(irw,)-525(val,)-525(x,)-525(desc_a,)-525(info)-525([,dupl,local]\051)]TJ +/F30 9.9626 Tf -30.635 -19.07 Td [(call)-525(psb_spins\050nz,)-525(ia,)-525(ja,)-525(val,)-525(a,)-525(desc_a,)-525(info)-525([,local]\051)]TJ 0 -11.955 Td [(call)-525(psb_spins\050nr,)-525(irw,)-525(irp,)-525(ja,)-525(val,)-525(a,)-525(desc_a,)-525(info)-525([,local]\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -20.681 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -23.016 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.43 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -21.39 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.431 Td [(m)]TJ + 0 -21.389 Td [(nz)]TJ +0 g 0 G +/F8 9.9626 Tf 16.438 0 Td [(the)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(co)-28(e\016cien)28(ts)-334(to)-333(b)-28(e)-333(inserted.)]TJ 8.469 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.023 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(scalar.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -21.389 Td [(nr)]TJ +0 g 0 G +/F8 9.9626 Tf 16.065 0 Td [(the)-333(n)28(um)27(b)-27(er)-334(of)-333(ro)28(ws)-334(to)-333(b)-28(e)-333(inserted.)]TJ 8.842 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.023 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(scalar.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -21.389 Td [(irw)]TJ +0 g 0 G +/F8 9.9626 Tf 21.157 0 Td [(the)-333(\014rst)-334(ro)28(w)-333(to)-333(b)-28(e)-334(inserted.)]TJ 3.75 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.023 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(scalar.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -21.39 Td [(ia)]TJ +0 g 0 G +/F8 9.9626 Tf 13.733 0 Td [(the)-333(ro)27(w)-333(indices)-333(of)-334(th)1(e)-334(co)-28(e\016cien)28(ts)-333(to)-334(b)-27(e)-334(inserted.)]TJ 11.174 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.023 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(arra)27(y)-333(of)-333(size)]TJ/F11 9.9626 Tf 160.979 0 Td [(nz)]TJ/F8 9.9626 Tf 11.052 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -196.938 -21.39 Td [(irp)]TJ +0 g 0 G +/F8 9.9626 Tf 19.247 0 Td [(the)-333(ro)27(w)-333(p)-28(oin)28(ters)-333(of)-333(the)-334(co)-28(e\016cien)28(ts)-333(to)-334(b)-27(e)-334(inserted.)]TJ 5.66 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.023 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(arra)27(y)-333(of)-333(size)]TJ/F11 9.9626 Tf 160.979 0 Td [(nr)]TJ/F8 9.9626 Tf 12.966 0 Td [(+)-222(1.)]TJ +0 g 0 G +/F27 9.9626 Tf -198.852 -21.39 Td [(ja)]TJ +0 g 0 G +/F8 9.9626 Tf 14.051 0 Td [(the)-333(column)-334(indices)-333(of)-333(the)-334(co)-27(e)-1(\016cien)28(ts)-333(to)-334(b)-27(e)-334(inserted.)]TJ 10.856 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.023 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(arra)27(y)-333(of)-333(size)]TJ/F11 9.9626 Tf 160.979 0 Td [(nz)]TJ/F8 9.9626 Tf 11.052 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 14.529 0 Td [(Num)28(b)-28(er)-333(of)-334(ro)28(ws)-333(in)]TJ/F11 9.9626 Tf 84.517 0 Td [(v)-36(al)]TJ/F8 9.9626 Tf 16.942 0 Td [(to)-333(b)-28(e)-333(inserted.)]TJ -91.081 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)]TJ +/F27 9.9626 Tf -196.938 -21.39 Td [(v)64(al)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.431 Td [(irw)]TJ +/F8 9.9626 Tf 19.143 0 Td [(the)-333(co)-28(e\016cien)27(ts)-333(to)-333(b)-28(e)-333(inserted.)]TJ 5.764 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.023 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-375(as:)-528(an)-375(arra)28(y)-375(of)-375(size)]TJ/F11 9.9626 Tf 130.932 0 Td [(nz)]TJ/F8 9.9626 Tf 11.052 0 Td [(.)-570(Must)-375(b)-27(e)-376(of)-375(the)-375(same)-375(t)28(yp)-28(e)-375(and)-375(kind)-375(of)]TJ -141.984 -11.956 Td [(the)-333(co)-28(e\016cien)28(ts)-334(of)-333(the)-333(sparse)-334(matrix)]TJ/F11 9.9626 Tf 158.516 0 Td [(a)]TJ/F8 9.9626 Tf 5.267 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 21.157 0 Td [(Indices)-445(of)-444(the)-444(ro)27(ws)-444(to)-445(b)-27(e)-445(inserted.)-778(Sp)-28(eci\014cally)84(,)-473(r)1(o)27(w)]TJ/F11 9.9626 Tf 237.974 0 Td [(i)]TJ/F8 9.9626 Tf 7.861 0 Td [(of)]TJ/F11 9.9626 Tf 12.453 0 Td [(v)-36(al)]TJ/F8 9.9626 Tf 18.05 0 Td [(will)-444(b)-28(e)-445(in-)]TJ -272.588 -11.955 Td [(serted)-435(in)28(to)-435(the)-436(lo)-27(cal)-436(r)1(o)27(w)-435(corresp)-28(onding)-435(to)-435(the)-435(global)-435(ro)28(w)-435(index)]TJ/F11 9.9626 Tf 289.252 0 Td [(ir)-28(w)]TJ/F8 9.9626 Tf 15.604 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051.)]TJ -312.163 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)84(.)]TJ + -21.816 -29.887 Td [(82)]TJ +0 g 0 G +ET + +endstream +endobj +1461 0 obj +<< +/Length 7378 +>> +stream 0 g 0 G -/F27 9.9626 Tf -24.907 -19.43 Td [(v)64(al)]TJ 0 g 0 G -/F8 9.9626 Tf 19.144 0 Td [(the)-333(dense)-334(submatrix)-333(to)-333(b)-28(e)-333(inserted.)]TJ 5.763 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(1)-333(or)-334(2)-333(arra)28(y)83(.)-444(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-334(v)56(alue.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.43 Td [(desc)]TJ +BT +/F27 9.9626 Tf 99.895 706.129 Td [(desc)]TJ ET q -1 0 0 1 121.81 414.689 cm +1 0 0 1 121.81 706.328 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 414.49 Td [(a)]TJ +/F27 9.9626 Tf 125.247 706.129 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(The)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(v)56(ariable)-334(of)-333(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 137.346 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 366.869 cm +1 0 0 1 278.467 658.507 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 366.669 Td [(desc)]TJ +/F30 9.9626 Tf 281.605 658.308 Td [(desc)]TJ ET q -1 0 0 1 336.723 366.869 cm +1 0 0 1 303.154 658.507 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 366.669 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -260.887 -19.43 Td [(dupl)]TJ +/F30 9.9626 Tf 306.292 658.308 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 27.259 0 Td [(Ho)28(w)-334(to)-333(handle)-333(duplicate)-333(co)-28(e\016cien)27(ts.)]TJ -2.352 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-308(as:)-432(in)27(teger,)-313(p)-28(ossible)-309(v)56(alues:)]TJ/F30 9.9626 Tf 163.696 0 Td [(psb_dupl_ovwrt_)]TJ/F8 9.9626 Tf 78.456 0 Td [(,)]TJ/F30 9.9626 Tf 5.891 0 Td [(psb_dupl_add_)]TJ/F8 9.9626 Tf 67.994 0 Td [(.)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -340.944 -19.43 Td [(lo)-32(cal)]TJ +/F27 9.9626 Tf -227.319 -31.349 Td [(lo)-32(cal)]TJ 0 g 0 G -/F8 9.9626 Tf 28.055 0 Td [(Whether)-289(the)-289(en)28(tries)-289(in)-289(the)-289(index)-288(v)27(ector)]TJ/F30 9.9626 Tf 172.769 0 Td [(irw)]TJ/F8 9.9626 Tf 15.692 0 Td [(,)-298(are)-289(already)-288(in)-289(lo)-28(cal)-289(n)28(um)28(b)-28(er-)]TJ -191.609 -11.955 Td [(ing.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(v)55(alue;)-333(default:)]TJ/F30 9.9626 Tf 163.056 0 Td [(.false.)]TJ/F8 9.9626 Tf 36.612 0 Td [(.)]TJ +/F8 9.9626 Tf 28.055 0 Td [(Whether)-465(the)-464(en)27(tr)1(ie)-1(s)-464(in)-465(the)-465(in)1(dice)-1(s)-464(v)28(ec)-1(tor)1(s)]TJ/F30 9.9626 Tf 194.825 0 Td [(ia)]TJ/F8 9.9626 Tf 10.461 0 Td [(,)]TJ/F30 9.9626 Tf 7.724 0 Td [(ja)]TJ/F8 9.9626 Tf 15.09 0 Td [(are)-465(already)-464(in)-465(lo)-28(cal)]TJ -231.248 -11.955 Td [(n)28(um)28(b)-28(ering.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(v)55(alue;)-333(default:)]TJ/F30 9.9626 Tf 163.056 0 Td [(.false.)]TJ/F8 9.9626 Tf 36.612 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -224.575 -20.68 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -224.575 -20.589 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -19.43 Td [(x)]TJ + 0 -19.394 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(output)-334(dense)-333(matrix.)]TJ 13.879 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-232(as:)-394(a)-233(rank)-233(one)-232(or)-233(t)28(w)28(o)-233(arra)28(y)-233(or)-232(an)-233(ob)-55(ject)-233(of)-233(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(matrix)-334(in)28(to)-333(whic)28(h)-334(co)-27(e)-1(\016cien)28(ts)-333(will)-333(b)-28(e)-334(inserted.)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 241.975 0 Td [(psb)]TJ +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 312.036 491.534 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 315.174 491.334 Td [(Tspmat)]TJ ET q -1 0 0 1 383.096 144.435 cm +1 0 0 1 347.183 491.534 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 386.234 144.236 Td [(T)]TJ +/F30 9.9626 Tf 350.322 491.334 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -271.348 -19.394 Td [(desc)]TJ +ET +q +1 0 0 1 121.81 472.14 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 125.247 471.94 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(The)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(v)56(ariable)-334(of)-333(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 137.346 0 Td [(psb)]TJ ET q -1 0 0 1 392.092 144.435 cm +1 0 0 1 278.467 424.319 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 395.231 144.236 Td [(vect)]TJ +/F30 9.9626 Tf 281.605 424.12 Td [(desc)]TJ ET q -1 0 0 1 416.779 144.435 cm +1 0 0 1 303.154 424.319 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 419.918 144.236 Td [(type)]TJ +/F30 9.9626 Tf 306.292 424.12 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(,)]TJ -316.037 -11.955 Td [(of)-333(t)27(y)1(p)-28(e)-334(real,)-333(complex)-333(or)-334(in)28(teger.)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G - 141.968 -41.843 Td [(85)]TJ +/F27 9.9626 Tf -227.319 -31.349 Td [(info)]TJ 0 g 0 G -ET - -endstream -endobj -1454 0 obj -<< -/Length 1115 ->> -stream +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -20.59 Td [(Notes)]TJ 0 g 0 G +/F8 9.9626 Tf 12.177 -18.862 Td [(1.)]TJ 0 g 0 G + [-500(On)-487(en)28(try)-487(to)-488(this)-487(routine)-487(the)-487(descriptor)-487(ma)28(y)-488(b)-27(e)-488(in)-487(either)-487(the)-487(build)-487(or)]TJ 12.73 -11.955 Td [(assem)28(bled)-334(state.)]TJ 0 g 0 G -BT -/F27 9.9626 Tf 150.705 706.129 Td [(info)]TJ + -12.73 -19.394 Td [(2.)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -21.918 Td [(Notes)]TJ + [-500(On)-363(en)28(try)-362(to)-363(this)-363(routine)-362(the)-363(sparse)-363(matrix)-363(ma)28(y)-363(b)-27(e)-363(in)-363(either)-362(the)-363(build)-363(or)]TJ 12.73 -11.955 Td [(up)-28(date)-333(state.)]TJ 0 g 0 G -/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ + -12.73 -19.394 Td [(3.)]TJ 0 g 0 G - [-500(Dense)-333(v)27(ectors/matrices)-333(do)-333(not)-334(ha)28(v)28(e)-334(an)-333(asso)-28(ciated)-333(state;)]TJ + [-500(If)-230(the)-231(descriptor)-230(is)-231(in)-230(the)-231(build)-230(state,)-251(then)-231(the)-230(sparse)-231(matrix)-230(m)28(ust)-231(also)-230(b)-28(e)-231(in)]TJ 12.73 -11.955 Td [(the)-327(build)-327(state;)-329(the)-328(action)-327(of)-327(the)-327(routine)-327(is)-327(to)-327(\050implicitly\051)-327(call)]TJ/F30 9.9626 Tf 271.731 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf -271.731 -11.956 Td [(to)-419(add)-419(en)28(tries)-419(to)-419(th)1(e)-419(sparsit)27(y)-418(pattern;)-462(eac)28(h)-419(sparse)-419(matrix)-419(en)28(try)-419(implic-)]TJ 0 -11.955 Td [(itly)-359(de\014nes)-360(a)-360(grap)1(h)-360(edge,)-366(that)-360(is)-359(passed)-360(to)-359(the)-360(descriptor)-359(routine)-360(for)-359(the)]TJ 0 -11.955 Td [(appropriate)-333(pro)-28(cessing;)]TJ 0 g 0 G - 0 -19.925 Td [(2.)]TJ + -12.73 -19.394 Td [(4.)]TJ 0 g 0 G - [-500(Duplicate)-292(en)28(tries)-293(are)-292(either)-292(o)28(v)28(erwritten)-293(or)-292(added,)-300(there)-292(is)-292(no)-293(p)1(ro)27(vision)-292(for)]TJ 12.73 -11.955 Td [(raising)-333(an)-334(error)-333(condition.)]TJ + [-500(The)-333(input)-334(d)1(ata)-334(can)-333(b)-28(e)-333(passed)-334(in)-333(either)-333(COO)-334(or)-333(CSR)-333(formats;)]TJ 0 g 0 G - 141.968 -494.147 Td [(86)]TJ + 0 -19.394 Td [(5.)]TJ +0 g 0 G + [-500(In)-368(COO)-367(format)-368(the)-367(co)-28(e\016cien)28(ts)-368(to)-368(b)-27(e)-368(inserted)-368(are)-367(represen)28(ted)-368(b)28(y)-368(the)-367(or-)]TJ 12.73 -11.955 Td [(dered)-358(triples)]TJ/F11 9.9626 Tf 58.162 0 Td [(ia)]TJ/F8 9.9626 Tf 8.699 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F11 9.9626 Tf 3.875 0 Td [(;)-167(j)-57(a)]TJ/F8 9.9626 Tf 14.367 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F11 9.9626 Tf 3.875 0 Td [(;)-167(v)-36(a)1(l)]TJ/F8 9.9626 Tf 18.049 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051,)-364(for)]TJ/F11 9.9626 Tf 25.762 0 Td [(i)]TJ/F8 9.9626 Tf 6.608 0 Td [(=)-319(1)]TJ/F11 9.9626 Tf 15.905 0 Td [(;)-167(:)-166(:)-167(:)-167(;)-166(nz)]TJ/F8 9.9626 Tf 33.191 0 Td [(;)-370(these)-358(triples)-358(should)-358(b)-28(e-)]TJ -210.411 -11.955 Td [(long)-384(to)-385(the)-384(curren)28(t)-385(pro)-28(cess,)-397(i.e.)]TJ/F11 9.9626 Tf 144.426 0 Td [(ia)]TJ/F8 9.9626 Tf 8.698 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)-384(should)-385(b)-28(e)-384(one)-384(of)-385(the)-384(lo)-28(cal)-385(ind)1(ic)-1(es,)]TJ -160.431 -11.955 Td [(but)-333(are)-334(otherwise)-333(arbitrary;)]TJ +0 g 0 G + 141.968 -29.888 Td [(83)]TJ 0 g 0 G ET endstream endobj -1349 0 obj +1352 0 obj << /Type /ObjStm /N 100 -/First 975 -/Length 10470 +/First 976 +/Length 10628 +>> +stream +1348 0 1349 59 1350 118 1351 177 1344 236 1354 393 1356 511 1353 569 1361 662 1358 801 +1363 947 304 1006 1364 1064 1365 1123 1366 1182 1360 1241 1370 1398 1359 1555 1367 1699 1368 1842 +1372 1988 1369 2046 1374 2152 1376 2270 308 2329 312 2387 1373 2445 1379 2577 1377 2716 1381 2863 +1382 2921 1378 2979 1385 3098 1383 3237 1387 3395 1388 3454 1384 3513 1390 3645 1392 3763 1393 3821 +1394 3879 1395 3937 1396 3995 1397 4053 1389 4109 1401 4189 1399 4328 1403 4473 316 4532 1400 4590 +1406 4709 1404 4848 1408 5006 1409 5064 1410 5122 1411 5180 1405 5238 1415 5344 1412 5492 1413 5638 +1417 5784 320 5843 1418 5901 1414 5960 1422 6066 1419 6214 1420 6360 1424 6507 324 6565 1421 6622 +1427 6728 1425 6867 1429 7012 328 7071 1426 7129 1433 7235 1430 7383 1431 7527 1435 7674 332 7732 +1432 7789 1438 7921 1440 8039 1441 8098 1442 8157 1437 8216 1446 8296 1443 8444 1444 8590 1448 8733 +336 8791 1449 8848 1450 8906 1451 8964 1445 9022 1454 9141 1456 9259 340 9318 1453 9376 1460 9495 +% 1348 0 obj +<< +/D [1345 0 R /XYZ 320.941 466.542 null] >> -stream -1347 0 308 58 1348 115 1344 173 1353 279 1350 427 1351 572 1355 718 312 777 1352 835 -1358 941 1356 1080 1360 1226 316 1284 1357 1341 1365 1447 1362 1595 1363 1738 1367 1884 320 1943 -1364 2001 1369 2133 1371 2251 1372 2309 1373 2367 1368 2425 1377 2505 1374 2653 1375 2798 1379 2940 -324 2999 1380 3057 1381 3116 1382 3175 1376 3234 1385 3353 1387 3471 328 3529 1384 3586 1391 3705 -1383 3862 1388 4009 1389 4153 1393 4299 1394 4358 1395 4417 1396 4476 1397 4535 1398 4594 1390 4653 -1400 4772 1402 4890 1403 4948 1404 5006 1405 5064 1406 5122 1407 5179 1408 5237 1399 5295 1413 5388 -1410 5536 1411 5681 1415 5825 332 5884 1412 5942 1417 6048 1419 6166 1420 6224 1421 6282 1422 6340 -1423 6398 1424 6456 1425 6514 1416 6571 1429 6651 1426 6799 1427 6942 1431 7088 336 7147 1428 7205 -1435 7311 1432 7459 1433 7604 1437 7751 340 7809 1438 7866 1434 7924 1442 8030 1439 8178 1440 8324 -1444 8468 344 8527 1441 8585 1448 8704 1445 8852 1446 8999 1450 9143 348 9201 1447 9258 1453 9377 -% 1347 0 obj +% 1349 0 obj << -/D [1345 0 R /XYZ 98.895 753.953 null] +/D [1345 0 R /XYZ 150.705 435.558 null] >> -% 308 0 obj +% 1350 0 obj << -/D [1345 0 R /XYZ 99.895 720.077 null] +/D [1345 0 R /XYZ 150.705 435.558 null] >> -% 1348 0 obj +% 1351 0 obj << -/D [1345 0 R /XYZ 99.895 327.092 null] +/D [1345 0 R /XYZ 150.705 423.603 null] >> % 1344 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F7 811 0 R /F27 584 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1353 0 obj +% 1354 0 obj << /Type /Page -/Contents 1354 0 R -/Resources 1352 0 R +/Contents 1355 0 R +/Resources 1353 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1319 0 R -/Annots [ 1350 0 R 1351 0 R ] ->> -% 1350 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 574.94 412.588 586.065] -/A << /S /GoTo /D (descdata) >> ->> -% 1351 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 485.277 412.588 496.401] -/A << /S /GoTo /D (descdata) >> ->> -% 1355 0 obj -<< -/D [1353 0 R /XYZ 149.705 753.953 null] +/Parent 1357 0 R >> -% 312 0 obj +% 1356 0 obj << -/D [1353 0 R /XYZ 150.705 720.077 null] +/D [1354 0 R /XYZ 98.895 753.953 null] >> -% 1352 0 obj +% 1353 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1358 0 obj +% 1361 0 obj << /Type /Page -/Contents 1359 0 R -/Resources 1357 0 R +/Contents 1362 0 R +/Resources 1360 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1361 0 R -/Annots [ 1356 0 R ] +/Parent 1357 0 R +/Annots [ 1358 0 R ] >> -% 1356 0 obj +% 1358 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 574.94 361.779 586.065] +/Rect [345.53 210.686 412.588 221.811] /A << /S /GoTo /D (descdata) >> >> -% 1360 0 obj +% 1363 0 obj << -/D [1358 0 R /XYZ 98.895 753.953 null] +/D [1361 0 R /XYZ 149.705 753.953 null] >> -% 316 0 obj +% 304 0 obj << -/D [1358 0 R /XYZ 99.895 720.077 null] +/D [1361 0 R /XYZ 150.705 716.092 null] >> -% 1357 0 obj +% 1364 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> -/ProcSet [ /PDF /Text ] +/D [1361 0 R /XYZ 320.941 451.038 null] >> % 1365 0 obj << +/D [1361 0 R /XYZ 150.705 417.777 null] +>> +% 1366 0 obj +<< +/D [1361 0 R /XYZ 150.705 417.777 null] +>> +% 1360 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F10 812 0 R /F14 813 0 R /F7 811 0 R /F27 584 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1370 0 obj +<< /Type /Page -/Contents 1366 0 R -/Resources 1364 0 R +/Contents 1371 0 R +/Resources 1369 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1361 0 R -/Annots [ 1362 0 R 1363 0 R ] +/Parent 1357 0 R +/Annots [ 1359 0 R 1367 0 R 1368 0 R ] >> -% 1362 0 obj +% 1359 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 453.24 423.049 464.364] -/A << /S /GoTo /D (spdata) >> +/Rect [285.522 643.143 361.576 654.268] +/A << /S /GoTo /D (vdata) >> >> -% 1363 0 obj +% 1367 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 209.896 412.588 221.021] -/A << /S /GoTo /D (descdata) >> +/Rect [123.806 543.516 199.86 554.641] +/A << /S /GoTo /D (vdata) >> >> -% 1367 0 obj +% 1368 0 obj << -/D [1365 0 R /XYZ 149.705 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [422.94 543.516 434.896 554.641] +/A << /S /GoTo /D (table.20) >> >> -% 320 0 obj +% 1372 0 obj << -/D [1365 0 R /XYZ 150.705 720.077 null] +/D [1370 0 R /XYZ 98.895 753.953 null] >> -% 1364 0 obj +% 1369 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F11 770 0 R /F14 787 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1369 0 obj +% 1374 0 obj << /Type /Page -/Contents 1370 0 R -/Resources 1368 0 R +/Contents 1375 0 R +/Resources 1373 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1361 0 R +/Parent 1357 0 R >> -% 1371 0 obj +% 1376 0 obj << -/D [1369 0 R /XYZ 98.895 753.953 null] +/D [1374 0 R /XYZ 149.705 753.953 null] >> -% 1372 0 obj +% 308 0 obj << -/D [1369 0 R /XYZ 99.895 716.092 null] +/D [1374 0 R /XYZ 150.705 716.092 null] >> -% 1373 0 obj +% 312 0 obj << -/D [1369 0 R /XYZ 99.895 664.341 null] +/D [1374 0 R /XYZ 150.705 693.474 null] >> -% 1368 0 obj +% 1373 0 obj << -/Font << /F8 573 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F11 796 0 R /F14 813 0 R >> /ProcSet [ /PDF /Text ] >> -% 1377 0 obj +% 1379 0 obj << /Type /Page -/Contents 1378 0 R -/Resources 1376 0 R +/Contents 1380 0 R +/Resources 1378 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1361 0 R -/Annots [ 1374 0 R 1375 0 R ] +/Parent 1357 0 R +/Annots [ 1377 0 R ] >> -% 1374 0 obj +% 1377 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 574.94 412.588 586.065] +/Rect [294.721 325.282 361.779 336.407] /A << /S /GoTo /D (descdata) >> >> -% 1375 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 405.575 423.049 416.7] -/A << /S /GoTo /D (spdata) >> ->> -% 1379 0 obj -<< -/D [1377 0 R /XYZ 149.705 753.953 null] ->> -% 324 0 obj -<< -/D [1377 0 R /XYZ 150.705 720.077 null] ->> -% 1380 0 obj -<< -/D [1377 0 R /XYZ 150.705 315.137 null] ->> % 1381 0 obj << -/D [1377 0 R /XYZ 150.705 293.274 null] +/D [1379 0 R /XYZ 98.895 753.953 null] >> % 1382 0 obj << -/D [1377 0 R /XYZ 150.705 273.349 null] +/D [1379 0 R /XYZ 99.895 234.372 null] >> -% 1376 0 obj +% 1378 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R /F11 796 0 R /F16 582 0 R >> /ProcSet [ /PDF /Text ] >> % 1385 0 obj @@ -16920,1561 +17016,1505 @@ stream /Contents 1386 0 R /Resources 1384 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1361 0 R +/Parent 1357 0 R +/Annots [ 1383 0 R ] +>> +% 1383 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [408.792 215.702 431.263 226.827] +/A << /S /GoTo /D (subsubsection.2.3.1) >> >> % 1387 0 obj << -/D [1385 0 R /XYZ 98.895 753.953 null] +/D [1385 0 R /XYZ 149.705 753.953 null] >> -% 328 0 obj +% 1388 0 obj << -/D [1385 0 R /XYZ 99.895 720.077 null] +/D [1385 0 R /XYZ 150.705 134.155 null] >> % 1384 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> +/Font << /F30 810 0 R /F8 585 0 R /F27 584 0 R /F14 813 0 R /F11 796 0 R /F10 812 0 R >> /ProcSet [ /PDF /Text ] >> -% 1391 0 obj +% 1390 0 obj << /Type /Page -/Contents 1392 0 R -/Resources 1390 0 R +/Contents 1391 0 R +/Resources 1389 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1361 0 R -/Annots [ 1383 0 R 1388 0 R 1389 0 R ] ->> -% 1383 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [311.962 655.098 379.019 666.223] -/A << /S /GoTo /D (descdata) >> ->> -% 1388 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 488.124 423.049 499.249] -/A << /S /GoTo /D (spdata) >> +/Parent 1398 0 R >> -% 1389 0 obj +% 1392 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [311.962 420.91 379.019 432.035] -/A << /S /GoTo /D (descdata) >> +/D [1390 0 R /XYZ 98.895 753.953 null] >> % 1393 0 obj << -/D [1391 0 R /XYZ 149.705 753.953 null] +/D [1390 0 R /XYZ 99.895 716.092 null] >> % 1394 0 obj << -/D [1391 0 R /XYZ 150.705 321.172 null] +/D [1390 0 R /XYZ 99.895 688.251 null] >> % 1395 0 obj << -/D [1391 0 R /XYZ 150.705 289.823 null] +/D [1390 0 R /XYZ 99.895 668.049 null] >> % 1396 0 obj << -/D [1391 0 R /XYZ 150.705 256.537 null] +/D [1390 0 R /XYZ 99.895 626.428 null] >> % 1397 0 obj << -/D [1391 0 R /XYZ 150.705 189.322 null] +/D [1390 0 R /XYZ 99.895 568.7 null] >> -% 1398 0 obj -<< -/D [1391 0 R /XYZ 150.705 169.929 null] ->> -% 1390 0 obj +% 1389 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R /F16 570 0 R /F11 770 0 R >> +/Font << /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1400 0 obj +% 1401 0 obj << /Type /Page -/Contents 1401 0 R -/Resources 1399 0 R +/Contents 1402 0 R +/Resources 1400 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1409 0 R +/Parent 1398 0 R +/Annots [ 1399 0 R ] >> -% 1402 0 obj +% 1399 0 obj << -/D [1400 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.53 117.115 412.588 128.24] +/A << /S /GoTo /D (descdata) >> >> % 1403 0 obj << -/D [1400 0 R /XYZ 99.895 716.092 null] +/D [1401 0 R /XYZ 149.705 753.953 null] >> -% 1404 0 obj +% 316 0 obj << -/D [1400 0 R /XYZ 99.895 652.386 null] +/D [1401 0 R /XYZ 150.705 716.092 null] >> -% 1405 0 obj +% 1400 0 obj << -/D [1400 0 R /XYZ 99.895 607.997 null] +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F11 796 0 R /F27 584 0 R >> +/ProcSet [ /PDF /Text ] >> % 1406 0 obj << -/D [1400 0 R /XYZ 99.895 576.67 null] +/Type /Page +/Contents 1407 0 R +/Resources 1405 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1398 0 R +/Annots [ 1404 0 R ] >> -% 1407 0 obj +% 1404 0 obj << -/D [1400 0 R /XYZ 99.895 544.789 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [274.574 402.324 297.045 413.172] +/A << /S /GoTo /D (subsubsection.2.3.1) >> >> % 1408 0 obj << -/D [1400 0 R /XYZ 99.895 500.954 null] +/D [1406 0 R /XYZ 98.895 753.953 null] >> -% 1399 0 obj +% 1409 0 obj +<< +/D [1406 0 R /XYZ 99.895 496.913 null] +>> +% 1410 0 obj +<< +/D [1406 0 R /XYZ 99.895 475.051 null] +>> +% 1411 0 obj +<< +/D [1406 0 R /XYZ 99.895 431.215 null] +>> +% 1405 0 obj << -/Font << /F8 573 0 R /F11 770 0 R /F14 787 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F11 796 0 R /F16 582 0 R >> /ProcSet [ /PDF /Text ] >> -% 1413 0 obj +% 1415 0 obj << /Type /Page -/Contents 1414 0 R -/Resources 1412 0 R +/Contents 1416 0 R +/Resources 1414 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1409 0 R -/Annots [ 1410 0 R 1411 0 R ] +/Parent 1398 0 R +/Annots [ 1412 0 R 1413 0 R ] >> -% 1410 0 obj +% 1412 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 576.23 412.588 587.355] +/Rect [345.53 560.993 412.588 572.118] /A << /S /GoTo /D (descdata) >> >> -% 1411 0 obj +% 1413 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 205.776 423.049 216.901] -/A << /S /GoTo /D (spdata) >> +/Rect [345.53 403.583 412.588 414.708] +/A << /S /GoTo /D (descdata) >> >> -% 1415 0 obj +% 1417 0 obj << -/D [1413 0 R /XYZ 149.705 753.953 null] +/D [1415 0 R /XYZ 149.705 753.953 null] >> -% 332 0 obj +% 320 0 obj << -/D [1413 0 R /XYZ 150.705 720.077 null] +/D [1415 0 R /XYZ 150.705 716.092 null] >> -% 1412 0 obj +% 1418 0 obj +<< +/D [1415 0 R /XYZ 150.705 313.144 null] +>> +% 1414 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1417 0 obj +% 1422 0 obj << /Type /Page -/Contents 1418 0 R -/Resources 1416 0 R +/Contents 1423 0 R +/Resources 1421 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1409 0 R +/Parent 1398 0 R +/Annots [ 1419 0 R 1420 0 R ] >> % 1419 0 obj << -/D [1417 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [294.721 574.94 361.779 586.065] +/A << /S /GoTo /D (descdata) >> >> % 1420 0 obj << -/D [1417 0 R /XYZ 99.895 716.092 null] ->> -% 1421 0 obj -<< -/D [1417 0 R /XYZ 99.895 687.975 null] ->> -% 1422 0 obj -<< -/D [1417 0 R /XYZ 99.895 668.326 null] ->> -% 1423 0 obj -<< -/D [1417 0 R /XYZ 99.895 624.491 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [294.721 485.277 361.779 496.401] +/A << /S /GoTo /D (descdata) >> >> % 1424 0 obj << -/D [1417 0 R /XYZ 99.895 580.655 null] +/D [1422 0 R /XYZ 98.895 753.953 null] >> -% 1425 0 obj +% 324 0 obj << -/D [1417 0 R /XYZ 99.895 560.73 null] +/D [1422 0 R /XYZ 99.895 716.092 null] >> -% 1416 0 obj +% 1421 0 obj << -/Font << /F8 573 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1429 0 obj +% 1427 0 obj << /Type /Page -/Contents 1430 0 R -/Resources 1428 0 R +/Contents 1428 0 R +/Resources 1426 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1409 0 R -/Annots [ 1426 0 R 1427 0 R ] ->> -% 1426 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 574.94 423.049 586.065] -/A << /S /GoTo /D (spdata) >> +/Parent 1398 0 R +/Annots [ 1425 0 R ] >> -% 1427 0 obj +% 1425 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 507.194 412.588 518.319] +/Rect [345.53 574.94 412.588 586.065] /A << /S /GoTo /D (descdata) >> >> -% 1431 0 obj +% 1429 0 obj << -/D [1429 0 R /XYZ 149.705 753.953 null] +/D [1427 0 R /XYZ 149.705 753.953 null] >> -% 336 0 obj +% 328 0 obj << -/D [1429 0 R /XYZ 150.705 720.077 null] +/D [1427 0 R /XYZ 150.705 716.092 null] >> -% 1428 0 obj +% 1426 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1435 0 obj +% 1433 0 obj << /Type /Page -/Contents 1436 0 R -/Resources 1434 0 R +/Contents 1434 0 R +/Resources 1432 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1409 0 R -/Annots [ 1432 0 R 1433 0 R ] +/Parent 1436 0 R +/Annots [ 1430 0 R 1431 0 R ] >> -% 1432 0 obj +% 1430 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 560.993 372.239 572.118] +/Rect [294.721 453.24 372.239 464.364] /A << /S /GoTo /D (spdata) >> >> -% 1433 0 obj +% 1431 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 493.247 361.779 504.372] +/Rect [294.721 209.896 361.779 221.021] /A << /S /GoTo /D (descdata) >> >> -% 1437 0 obj -<< -/D [1435 0 R /XYZ 98.895 753.953 null] ->> -% 340 0 obj +% 1435 0 obj << -/D [1435 0 R /XYZ 99.895 720.077 null] +/D [1433 0 R /XYZ 98.895 753.953 null] >> -% 1438 0 obj +% 332 0 obj << -/D [1435 0 R /XYZ 99.895 313.144 null] +/D [1433 0 R /XYZ 99.895 716.092 null] >> -% 1434 0 obj +% 1432 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F11 796 0 R /F14 813 0 R >> /ProcSet [ /PDF /Text ] >> -% 1442 0 obj +% 1438 0 obj << /Type /Page -/Contents 1443 0 R -/Resources 1441 0 R +/Contents 1439 0 R +/Resources 1437 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1409 0 R -/Annots [ 1439 0 R 1440 0 R ] ->> -% 1439 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [311.962 574.94 379.019 586.065] -/A << /S /GoTo /D (descdata) >> +/Parent 1436 0 R >> % 1440 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [264.584 290.009 340.638 301.134] -/A << /S /GoTo /D (vdata) >> +/D [1438 0 R /XYZ 149.705 753.953 null] >> -% 1444 0 obj +% 1441 0 obj << -/D [1442 0 R /XYZ 149.705 753.953 null] +/D [1438 0 R /XYZ 150.705 716.092 null] >> -% 344 0 obj +% 1442 0 obj << -/D [1442 0 R /XYZ 150.705 720.077 null] +/D [1438 0 R /XYZ 150.705 664.341 null] >> -% 1441 0 obj +% 1437 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> +/Font << /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1448 0 obj +% 1446 0 obj << /Type /Page -/Contents 1449 0 R -/Resources 1447 0 R +/Contents 1447 0 R +/Resources 1445 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1451 0 R -/Annots [ 1445 0 R 1446 0 R ] +/Parent 1436 0 R +/Annots [ 1443 0 R 1444 0 R ] >> -% 1445 0 obj +% 1443 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 363.459 361.779 374.584] +/Rect [294.721 574.94 361.779 586.065] /A << /S /GoTo /D (descdata) >> >> -% 1446 0 obj +% 1444 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [365.781 141.026 441.835 152.151] -/A << /S /GoTo /D (vdata) >> +/Rect [294.721 405.575 372.239 416.7] +/A << /S /GoTo /D (spdata) >> +>> +% 1448 0 obj +<< +/D [1446 0 R /XYZ 98.895 753.953 null] +>> +% 336 0 obj +<< +/D [1446 0 R /XYZ 99.895 716.092 null] +>> +% 1449 0 obj +<< +/D [1446 0 R /XYZ 99.895 315.137 null] >> % 1450 0 obj << -/D [1448 0 R /XYZ 98.895 753.953 null] +/D [1446 0 R /XYZ 99.895 293.274 null] >> -% 348 0 obj +% 1451 0 obj << -/D [1448 0 R /XYZ 99.895 720.077 null] +/D [1446 0 R /XYZ 99.895 273.349 null] >> -% 1447 0 obj +% 1445 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> +% 1454 0 obj +<< +/Type /Page +/Contents 1455 0 R +/Resources 1453 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1436 0 R +>> +% 1456 0 obj +<< +/D [1454 0 R /XYZ 149.705 753.953 null] +>> +% 340 0 obj +<< +/D [1454 0 R /XYZ 150.705 716.092 null] +>> % 1453 0 obj << +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1460 0 obj +<< /Type /Page -/Contents 1454 0 R -/Resources 1452 0 R +/Contents 1461 0 R +/Resources 1459 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1451 0 R +/Parent 1436 0 R +/Annots [ 1452 0 R 1457 0 R 1458 0 R ] +>> + +endstream +endobj +1471 0 obj +<< +/Length 3810 >> +stream +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F8 9.9626 Tf 162.881 706.129 Td [(6.)]TJ +0 g 0 G + [-500(In)-497(CSR)-496(format)-496(the)-497(co)-28(e\016cien)28(ts)-497(to)-496(b)-28(e)-497(inserted)-496(for)-497(eac)28(h)-496(input)-497(ro)28(w)]TJ/F11 9.9626 Tf 314.877 0 Td [(i)]TJ/F8 9.9626 Tf 8.909 0 Td [(=)]TJ -311.056 -11.955 Td [(1)]TJ/F11 9.9626 Tf 4.982 0 Td [(;)-167(nr)]TJ/F8 9.9626 Tf 18.296 0 Td [(are)-313(represen)28(ted)-313(b)28(y)-313(the)-313(ordered)-313(triples)-312(\050)]TJ/F11 9.9626 Tf 169.802 0 Td [(i)]TJ/F8 9.9626 Tf 5.238 0 Td [(+)]TJ/F11 9.9626 Tf 9.554 0 Td [(ir)-28(w)]TJ/F14 9.9626 Tf 17.41 0 Td [(\000)]TJ/F8 9.9626 Tf 9.555 0 Td [(1\051)]TJ/F11 9.9626 Tf 8.856 0 Td [(;)-167(j)-57(a)]TJ/F8 9.9626 Tf 14.367 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(j)]TJ/F8 9.9626 Tf 4.673 0 Td [(\051)]TJ/F11 9.9626 Tf 3.874 0 Td [(;)-167(v)-36(al)]TJ/F8 9.9626 Tf 18.05 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(j)]TJ/F8 9.9626 Tf 4.673 0 Td [(\051,)-317(for)]TJ/F11 9.9626 Tf -297.078 -11.955 Td [(j)]TJ/F8 9.9626 Tf 8.599 0 Td [(=)]TJ/F11 9.9626 Tf 11.674 0 Td [(ir)-28(p)]TJ/F8 9.9626 Tf 13.216 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F11 9.9626 Tf 3.874 0 Td [(;)-167(:)-166(:)-167(:)-167(;)-166(ir)-28(p)]TJ/F8 9.9626 Tf 35.355 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 6.109 0 Td [(+)-269(1\051)]TJ/F14 9.9626 Tf 21.959 0 Td [(\000)]TJ/F8 9.9626 Tf 10.426 0 Td [(1;)-438(these)-403(triples)-403(should)-403(b)-28(elong)-403(to)-403(the)-403(curren)28(t)]TJ -122.394 -11.956 Td [(pro)-28(cess,)-272(i.e.)]TJ/F11 9.9626 Tf 53.794 0 Td [(i)]TJ/F8 9.9626 Tf 4.123 0 Td [(+)]TJ/F11 9.9626 Tf 8.44 0 Td [(ir)-28(w)]TJ/F14 9.9626 Tf 16.295 0 Td [(\000)]TJ/F8 9.9626 Tf 8.44 0 Td [(1)-257(should)-257(b)-28(e)-256(one)-257(of)-257(the)-257(lo)-28(cal)-257(indices,)-272(but)-257(are)-257(otherwise)]TJ -91.092 -11.955 Td [(arbitrary;)]TJ +0 g 0 G + -12.73 -19.925 Td [(7.)]TJ +0 g 0 G + [-500(There)-386(is)-385(no)-386(requiremen)28(t)-386(that)-386(a)-385(giv)28(e)-1(n)-385(ro)28(w)-386(m)28(ust)-386(b)-28(e)-385(pass)-1(ed)-385(in)-386(its)-386(en)28(tiret)28(y)]TJ 12.73 -11.955 Td [(to)-355(a)-354(single)-355(call)-354(to)-355(this)-354(routine:)-487(the)-355(buildup)-354(of)-355(a)-354(ro)28(w)-355(ma)28(y)-355(b)-28(e)-354(split)-355(in)28(to)-355(as)]TJ 0 -11.955 Td [(man)28(y)-334(calls)-333(as)-333(desired)-334(\050ev)28(en)-333(in)-334(th)1(e)-334(CSR)-333(format\051;)]TJ +0 g 0 G + -12.73 -19.926 Td [(8.)]TJ +0 g 0 G + [-500(Co)-28(e\016cien)28(ts)-409(from)-410(di\013eren)28(t)-409(ro)28(ws)-410(ma)28(y)-409(also)-409(b)-28(e)-409(m)-1(ix)1(e)-1(d)-409(up)-409(freely)-409(in)-409(a)-410(single)]TJ 12.73 -11.955 Td [(call,)-333(according)-334(to)-333(the)-333(application)-334(n)1(e)-1(eds;)]TJ +0 g 0 G + -12.73 -19.925 Td [(9.)]TJ +0 g 0 G + [-500(An)28(y)-416(co)-28(e\016cien)28(ts)-416(from)-416(matrix)-416(ro)28(ws)-416(not)-416(o)28(wned)-416(b)28(y)-416(the)-416(calling)-416(pro)-28(cess)-416(are)]TJ 12.73 -11.955 Td [(silen)28(tly)-334(ignor)1(e)-1(d)1(;)]TJ +0 g 0 G + -17.711 -19.926 Td [(10.)]TJ +0 g 0 G + [-500(If)-358(the)-359(descriptor)-358(is)-359(in)-358(the)-359(assem)28(bled)-359(state,)-364(then)-359(an)28(y)-359(en)28(tries)-358(in)-359(the)-358(sparse)]TJ 17.711 -11.955 Td [(matrix)-430(that)-429(w)27(ould)-429(generate)-430(additional)-430(comm)28(unication)-430(requiremen)28(ts)-430(are)]TJ 0 -11.955 Td [(ignored;)]TJ +0 g 0 G + -17.711 -19.925 Td [(11.)]TJ +0 g 0 G + [-500(If)-309(th)1(e)-309(matrix)-309(is)-308(in)-309(the)-308(up)-28(date)-309(state,)-313(an)28(y)-309(en)28(tries)-309(in)-308(p)-28(ositions)-309(that)-308(w)28(ere)-309(not)]TJ 17.711 -11.955 Td [(presen)28(t)-334(in)-333(the)-333(original)-333(matrix)-334(are)-333(ignored.)]TJ +0 g 0 G + 141.968 -384.558 Td [(84)]TJ +0 g 0 G +ET endstream endobj -1464 0 obj +1483 0 obj << -/Length 5215 +/Length 6651 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.9)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 151.587 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(geasb)-375(|)-375(Assem)31(bly)-375(a)-375(dense)-375(matrix)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(spasb)-375(|)-375(Sparse)-375(matrix)-375(assem)31(bly)-375(routine)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_geasb\050x,)-525(desc_a,)-525(info,)-525(mold\051)]TJ +/F30 9.9626 Tf -55.726 -18.389 Td [(call)-525(psb_spasb\050a,)-525(desc_a,)-525(info,)-525(afmt,)-525(upd,)-525(dupl,)-525(mold\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.202 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.639 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(desc)]TJ + 0 -19.638 Td [(desc)]TJ ET q -1 0 0 1 121.81 626.17 cm +1 0 0 1 121.81 627.46 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 625.971 Td [(a)]TJ +/F27 9.9626 Tf 125.247 627.261 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(The)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(v)56(ariable)-334(of)-333(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 137.346 0 Td [(psb)]TJ +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 278.467 578.35 cm +1 0 0 1 312.036 579.639 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 281.605 578.15 Td [(desc)]TJ +/F30 9.9626 Tf 315.174 579.44 Td [(desc)]TJ ET q -1 0 0 1 303.154 578.35 cm +1 0 0 1 336.723 579.639 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 306.292 578.15 Td [(type)]TJ +/F30 9.9626 Tf 339.861 579.44 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -227.319 -31.88 Td [(mold)]TJ +/F27 9.9626 Tf -260.887 -19.639 Td [(afm)32(t)]TJ 0 g 0 G -/F8 9.9626 Tf 29.805 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(the)-333(in)28(ternal)-333(v)27(ector)-333(storage.)]TJ -4.898 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-273(as:)-414(an)-274(ob)-55(ject)-273(of)-274(a)-273(class)-273(deriv)28(ed)-274(from)]TJ/F30 9.9626 Tf 198.26 0 Td [(psb)]TJ -ET -q -1 0 0 1 339.381 498.649 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 342.519 498.449 Td [(T)]TJ -ET -q -1 0 0 1 348.377 498.649 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 351.515 498.449 Td [(base)]TJ -ET -q -1 0 0 1 373.064 498.649 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 376.202 498.449 Td [(vect)]TJ +/F8 9.9626 Tf 27.737 0 Td [(the)-333(storage)-334(format)-333(for)-333(the)-334(sparse)-333(matrix.)]TJ -2.83 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(arra)28(y)-333(of)-334(c)28(haracters.)-444(Defalt:)-445('CSR'.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.639 Td [(up)-32(d)]TJ +0 g 0 G +/F8 9.9626 Tf 24.395 0 Td [(Pro)28(vide)-333(for)-334(up)-27(dates)-334(to)-333(the)-333(matrix)-334(co)-28(e\016cien)28(ts.)]TJ 0.512 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(in)28(teger,)-333(p)-28(ossible)-333(v)55(alues:)]TJ/F30 9.9626 Tf 164.633 0 Td [(psb_upd_srch_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)]TJ/F30 9.9626 Tf 6.089 0 Td [(psb_upd_perm_)]TJ +0 g 0 G +/F27 9.9626 Tf -263.623 -19.639 Td [(dupl)]TJ +0 g 0 G +/F8 9.9626 Tf 27.259 0 Td [(Ho)28(w)-334(to)-333(handle)-333(duplicate)-333(co)-28(e\016cien)27(ts.)]TJ -2.352 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-308(as:)-432(in)27(teger,)-313(p)-28(ossible)-309(v)56(alues:)]TJ/F30 9.9626 Tf 163.696 0 Td [(psb_dupl_ovwrt_)]TJ/F8 9.9626 Tf 78.456 0 Td [(,)]TJ/F30 9.9626 Tf 5.891 0 Td [(psb_dupl_add_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)]TJ/F30 9.9626 Tf -316.037 -11.955 Td [(psb_dupl_err_)]TJ/F8 9.9626 Tf 67.994 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -92.901 -19.639 Td [(mold)]TJ +0 g 0 G +/F8 9.9626 Tf 29.805 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(the)-333(in)28(ternal)-333(matrix)-334(storage.)]TJ -4.898 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(a)-333(class)-334(deriv)28(ed)-333(from)]TJ/F30 9.9626 Tf 203.349 0 Td [(psb)]TJ ET q -1 0 0 1 397.751 498.649 cm +1 0 0 1 344.47 297.847 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 400.89 498.449 Td [(type)]TJ/F8 9.9626 Tf 20.921 0 Td [(;)-293(this)]TJ -297.009 -11.955 Td [(is)-333(only)-334(allo)28(w)28(ed)-333(when)]TJ/F11 9.9626 Tf 93.317 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 43.78 0 Td [(psb)]TJ +/F30 9.9626 Tf 347.608 297.647 Td [(T)]TJ ET q -1 0 0 1 287.233 486.693 cm +1 0 0 1 353.466 297.847 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 290.371 486.494 Td [(T)]TJ +/F30 9.9626 Tf 356.604 297.647 Td [(base)]TJ ET q -1 0 0 1 296.229 486.693 cm +1 0 0 1 378.153 297.847 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 299.367 486.494 Td [(vect)]TJ +/F30 9.9626 Tf 381.291 297.647 Td [(sparse)]TJ ET q -1 0 0 1 320.916 486.693 cm +1 0 0 1 413.301 297.847 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 324.054 486.494 Td [(type)]TJ +/F30 9.9626 Tf 416.439 297.647 Td [(mat)]TJ/F8 9.9626 Tf 15.691 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -245.081 -21.918 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -332.235 -21.201 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(x)]TJ + 0 -19.639 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(The)-333(dense)-334(matrix)-333(to)-333(b)-28(e)-334(assem)28(bled.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-433(as:)-645(a)-433(rank)-433(one)-433(or)-434(t)28(w)28(o)-434(arra)28(y)-433(with)-433(the)-434(ALLOCA)84(T)83(ABLE)-433(or)-434(an)]TJ 0 -11.955 Td [(ob)-56(j)1(e)-1(ct)-333(of)-333(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(matrix)-334(to)-333(b)-28(e)-333(assem)28(bled.)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 63.927 0 Td [(psb)]TJ -ET -q -1 0 0 1 205.048 385.075 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 208.186 384.875 Td [(T)]TJ +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 214.044 385.075 cm +1 0 0 1 312.036 209.186 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 217.182 384.875 Td [(vect)]TJ +/F30 9.9626 Tf 315.174 208.986 Td [(Tspmat)]TJ ET q -1 0 0 1 238.731 385.075 cm +1 0 0 1 347.183 209.186 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 241.869 384.875 Td [(type)]TJ +/F30 9.9626 Tf 350.322 208.986 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(,)-333(of)-334(t)28(yp)-28(e)-333(real,)-333(complex)-334(or)-333(in)28(teger.)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -162.896 -31.88 Td [(info)]TJ +/F27 9.9626 Tf -271.348 -19.638 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.201 Td [(Notes)]TJ 0 g 0 G - 141.968 -214.736 Td [(87)]TJ +/F8 9.9626 Tf 166.875 -29.888 Td [(85)]TJ 0 g 0 G ET endstream endobj -1470 0 obj +1488 0 obj << -/Length 3379 +/Length 2255 >> stream 0 g 0 G 0 g 0 G -BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 706.129 Td [(gefree)-375(|)-375(F)94(rees)-375(a)-375(dense)-375(matrix)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_gefree\050x,)-525(desc_a,)-525(info\051)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +BT +/F8 9.9626 Tf 162.881 706.129 Td [(1.)]TJ 0 g 0 G + [-500(On)-406(en)28(try)-406(to)-406(this)-406(routine)-406(the)-406(descriptor)-406(m)28(ust)-406(b)-28(e)-406(in)-406(the)-406(assem)27(b)1(led)-406(s)-1(tate,)]TJ 12.73 -11.955 Td [(i.e.)]TJ/F30 9.9626 Tf 17.158 0 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 50.394 0 Td [(m)28(ust)-334(already)-333(ha)28(v)28(e)-334(b)-27(een)-334(called.)]TJ 0 g 0 G - 0 -19.925 Td [(x)]TJ + -80.282 -19.926 Td [(2.)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(The)-333(dense)-334(matrix)-333(to)-333(b)-28(e)-333(free)-1(d)1(.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-433(as:)-645(a)-433(rank)-433(one)-433(or)-434(t)28(w)28(o)-434(arr)1(a)27(y)-433(with)-433(the)-434(ALLOCA)84(T)83(ABLE)-433(or)-434(an)]TJ 0 -11.955 Td [(ob)-55(jec)-1(t)-333(of)-333(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 63.927 0 Td [(psb)]TJ -ET -q -1 0 0 1 255.857 566.395 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 258.995 566.195 Td [(T)]TJ -ET -q -1 0 0 1 264.853 566.395 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 267.992 566.195 Td [(vect)]TJ -ET -q -1 0 0 1 289.541 566.395 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 292.679 566.195 Td [(type)]TJ + [-500(The)-333(sparse)-334(matrix)-333(ma)28(y)-334(b)-27(e)-334(in)-333(either)-333(the)-334(build)-333(or)-333(up)-28(date)-333(state;)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(,)-333(of)-334(t)28(yp)-28(e)-333(real,)-333(complex)-334(or)-333(in)28(teger.)]TJ + 0 -19.925 Td [(3.)]TJ 0 g 0 G -/F27 9.9626 Tf -162.895 -31.88 Td [(desc)]TJ -ET -q -1 0 0 1 172.619 534.514 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 176.057 534.315 Td [(a)]TJ + [-500(Duplicate)-250(en)28(tries)-250(are)-249(dete)-1(cted)-249(and)-250(handled)-250(in)-249(b)-28(oth)-250(build)-249(and)-250(up)-28(date)-249(state,)]TJ 12.73 -11.955 Td [(with)-282(the)-283(exception)-282(of)-282(the)-283(error)-282(action)-282(that)-283(is)-282(only)-282(tak)28(en)-283(in)-282(the)-282(build)-283(state,)]TJ 0 -11.955 Td [(i.e.)-444(on)-334(the)-333(\014rst)-333(asse)-1(m)28(bly;)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(The)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(v)56(ariable)-334(of)-333(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 137.347 0 Td [(psb)]TJ -ET -q -1 0 0 1 329.276 486.693 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 332.415 486.494 Td [(desc)]TJ -ET -q -1 0 0 1 353.964 486.693 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 357.102 486.494 Td [(type)]TJ + -12.73 -19.925 Td [(4.)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ + [-500(If)-224(the)-224(up)-28(date)-223(c)27(hoice)-224(is)]TJ/F30 9.9626 Tf 107.516 0 Td [(psb_upd_perm_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)-246(then)-224(subsequen)28(t)-224(calls)-224(to)]TJ/F30 9.9626 Tf 108.952 0 Td [(psb_spins)]TJ/F8 9.9626 Tf -271.732 -11.956 Td [(to)-246(up)-28(date)-246(the)-246(matrix)-246(m)28(ust)-246(b)-28(e)-246(arranged)-246(in)-246(suc)28(h)-246(a)-246(w)28(a)27(y)-246(as)-246(to)-246(pro)-27(duce)-246(exactly)]TJ 0 -11.955 Td [(the)-228(same)-229(sequence)-228(of)-228(co)-28(e\016cien)27(t)-228(v)56(alues)-229(as)-228(encoun)28(tered)-228(at)-229(the)-228(\014rst)-228(assem)27(b)1(ly;)]TJ 0 g 0 G -/F27 9.9626 Tf -227.318 -33.873 Td [(On)-383(Return)]TJ + -12.73 -19.925 Td [(5.)]TJ 0 g 0 G + [-500(The)-333(output)-334(storage)-333(format)-333(need)-334(not)-333(b)-28(e)-333(the)-333(same)-334(on)-333(all)-333(pro)-28(cesses;)]TJ 0 g 0 G - 0 -19.925 Td [(info)]TJ + 0 -19.925 Td [(6.)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ + [-500(On)-370(exit)-370(from)-370(this)-370(routine)-370(the)-370(matrix)-370(is)-370(in)-370(the)-370(assem)28(bled)-370(state,)-380(an)1(d)-370(th)27(us)]TJ 12.73 -11.956 Td [(is)-333(suitable)-334(for)-333(the)-333(computational)-334(rou)1(tines)-1(.)]TJ 0 g 0 G - 141.968 -294.437 Td [(88)]TJ + 141.968 -444.333 Td [(86)]TJ 0 g 0 G ET endstream endobj -1474 0 obj +1500 0 obj << -/Length 3437 +/Length 3097 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.10)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 158.311 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(gelp)-375(|)-375(Applies)-375(a)-375(left)-375(p)-31(erm)31(utation)-375(to)-375(a)-375(dense)-375(matrix)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(spfree)-375(|)-375(F)94(rees)-375(a)-375(sparse)-375(matrix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_gelp\050trans,)-525(iperm,)-525(x,)-525(info\051)]TJ +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_spfree\050a,)-525(desc_a,)-525(info\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(trans)]TJ -0 g 0 G -/F8 9.9626 Tf 30.609 0 Td [(A)-333(c)27(haracter)-333(that)-333(sp)-28(eci\014es)-333(whether)-334(to)-333(p)-28(erm)28(ute)]TJ/F11 9.9626 Tf 204.179 0 Td [(A)]TJ/F8 9.9626 Tf 10.793 0 Td [(or)]TJ/F11 9.9626 Tf 12.204 0 Td [(A)]TJ/F10 6.9738 Tf 7.472 3.616 Td [(T)]TJ/F8 9.9626 Tf 6.276 -3.616 Td [(.)]TJ -246.626 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(single)-333(c)28(haracte)-1(r)-333(with)-333(v)55(alu)1(e)-334('N')-333(for)]TJ/F11 9.9626 Tf 217.435 0 Td [(A)]TJ/F8 9.9626 Tf 10.793 0 Td [(or)-333('T')-334(for)]TJ/F11 9.9626 Tf 43.503 0 Td [(A)]TJ/F10 6.9738 Tf 7.472 3.616 Td [(T)]TJ/F8 9.9626 Tf 6.277 -3.616 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -310.387 -31.88 Td [(ip)-32(erm)]TJ -0 g 0 G -/F8 9.9626 Tf 34.364 0 Td [(An)-333(in)28(te)-1(ger)-333(arra)28(y)-333(con)27(tainin)1(g)-334(p)-28(erm)28(utation)-333(information.)]TJ -9.457 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(one-dimensional)-334(arra)28(y)83(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -31.88 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(The)-333(dense)-334(matrix)-333(to)-333(b)-28(e)-334(p)-27(erm)27(ut)1(e)-1(d.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(one)-333(or)-334(t)28(w)28(o)-333(dimensional)-334(arra)28(y)84(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -33.873 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ -0 g 0 G - 141.968 -226.691 Td [(89)]TJ -0 g 0 G -ET - -endstream -endobj -1479 0 obj -<< -/Length 6547 ->> -stream -0 g 0 G + 0 -19.925 Td [(a)]TJ 0 g 0 G -BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 706.129 Td [(glob)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(matrix)-334(to)-333(b)-28(e)-333(freed.)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 201.26 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 312.036 578.35 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 205.295 706.129 Td [(to)]TJ +/F30 9.9626 Tf 315.174 578.15 Td [(Tspmat)]TJ ET q -1 0 0 1 218.057 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 347.183 578.35 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 222.092 706.129 Td [(lo)-31(c)-375(|)-375(Global)-375(to)-375(lo)-31(cal)-375(indices)-375(con)31(v)31(ertion)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -71.387 -18.389 Td [(call)-525(psb_glob_to_loc\050x,)-525(y,)-525(desc_a,)-525(info,)-525(iact,owned\051)]TJ 0 -11.956 Td [(call)-525(psb_glob_to_loc\050x,)-525(desc_a,)-525(info,)-525(iact,owned\051)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -21.201 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.639 Td [(On)-383(En)32(try)]TJ -0 g 0 G +/F30 9.9626 Tf 350.322 578.15 Td [(type)]TJ 0 g 0 G - 0 -19.639 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(An)-333(in)28(tege)-1(r)-333(v)28(ector)-333(of)-334(indices)-333(to)-333(b)-28(e)-334(con)28(v)28(erted.)]TJ 13.878 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in,)-383(inout)]TJ/F8 9.9626 Tf 42.645 0 Td [(.)]TJ -76.131 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(i)1(n)27(teger)-333(arra)28(y)83(.)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -31.594 Td [(desc)]TJ +/F27 9.9626 Tf -271.348 -19.925 Td [(desc)]TJ ET q -1 0 0 1 172.619 536.09 cm +1 0 0 1 121.81 558.424 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 176.057 535.891 Td [(a)]TJ +/F27 9.9626 Tf 125.247 558.225 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 362.845 488.27 cm +1 0 0 1 312.036 510.604 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 488.07 Td [(desc)]TJ +/F30 9.9626 Tf 315.174 510.405 Td [(desc)]TJ ET q -1 0 0 1 387.532 488.27 cm +1 0 0 1 336.723 510.604 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 390.67 488.07 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -260.887 -19.638 Td [(iact)]TJ -0 g 0 G -/F8 9.9626 Tf 23.28 0 Td [(sp)-28(eci\014es)-333(action)-334(to)-333(b)-28(e)-333(tak)28(en)-334(in)-333(case)-333(of)-334(range)-333(errors.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 257.148 0 Td [(global)]TJ/F8 9.9626 Tf -255.522 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-256(c)28(haracter)-255(v)56(ariable)]TJ/F30 9.9626 Tf 143.584 0 Td [(I)]TJ/F8 9.9626 Tf 5.231 0 Td [(gnore,)]TJ/F30 9.9626 Tf 29.293 0 Td [(W)]TJ/F8 9.9626 Tf 5.23 0 Td [(arning)-255(or)]TJ/F30 9.9626 Tf 41.67 0 Td [(A)]TJ/F8 9.9626 Tf 5.23 0 Td [(b)-28(ort,)-271(d)1(e)-1(f)1(ault)]TJ/F30 9.9626 Tf 56.742 0 Td [(I)]TJ/F8 9.9626 Tf 5.23 0 Td [(gnore.)]TJ -0 g 0 G -/F27 9.9626 Tf -317.116 -19.639 Td [(o)32(wned)]TJ -0 g 0 G -/F8 9.9626 Tf 36.647 0 Td [(Sp)-28(ec\014es)-333(v)55(alid)-333(range)-333(of)-333(input)-334(Scop)-27(e:)]TJ/F27 9.9626 Tf 158.932 0 Td [(global)]TJ/F8 9.9626 Tf -170.673 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(If)-294(true,)-302(then)-294(only)-295(indices)-294(strictly)-294(o)28(wned)-295(b)28(y)-294(the)-294(curren)28(t)-295(pro)-27(ce)-1(ss)-294(are)-294(consid-)]TJ 0 -11.955 Td [(ered)-333(v)55(alid,)-333(if)-333(false)-334(then)-333(halo)-333(indices)-334(are)-333(also)-333(accepted.)-445(Default:)-444(false.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -21.202 Td [(On)-383(Return)]TJ +/F30 9.9626 Tf 339.861 510.405 Td [(type)]TJ 0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G - 0 -19.639 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(If)]TJ/F11 9.9626 Tf 10.132 0 Td [(y)]TJ/F8 9.9626 Tf 8.733 0 Td [(is)-350(not)-351(presen)28(t,)-355(then)]TJ/F11 9.9626 Tf 88.587 0 Td [(x)]TJ/F8 9.9626 Tf 9.185 0 Td [(is)-350(o)27(v)28(erwritten)-350(with)-350(the)-351(translated)-350(in)28(teger)-351(indices.)]TJ -102.759 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(i)1(n)27(teger)-333(arra)28(y)83(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.639 Td [(y)]TJ +/F27 9.9626 Tf -260.887 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(If)]TJ/F11 9.9626 Tf 10.04 0 Td [(y)]TJ/F8 9.9626 Tf 8.64 0 Td [(is)-341(presen)28(t,)-343(then)]TJ/F11 9.9626 Tf 70.404 0 Td [(y)]TJ/F8 9.9626 Tf 8.64 0 Td [(is)-341(o)28(v)27(erwritten)-341(with)-341(the)-341(translated)-341(in)28(teger)-341(indices,)-343(and)]TJ/F11 9.9626 Tf -83.846 -11.955 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(left)-334(unc)28(hanged.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 113.242 0 Td [(global)]TJ/F8 9.9626 Tf -122.257 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(i)1(n)27(teger)-333(arra)28(y)83(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -19.638 Td [(info)]TJ + 0 -19.926 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(t)1(e)-1(d.)]TJ/F16 11.9552 Tf -24.906 -21.202 Td [(Notes)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ 0 g 0 G -/F8 9.9626 Tf 166.874 -29.887 Td [(90)]TJ + 141.968 -330.303 Td [(87)]TJ 0 g 0 G ET endstream endobj -1483 0 obj +1506 0 obj << -/Length 692 +/Length 3985 >> stream 0 g 0 G 0 g 0 G -0 g 0 G BT -/F8 9.9626 Tf 112.072 706.129 Td [(1.)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.11)-1125(psb)]TJ +ET +q +1 0 0 1 209.121 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 213.156 706.129 Td [(sprn)-289(|)-289(Reinit)-290(sparse)-289(matrix)-289(structure)-290(for)-289(psblas)]TJ -25.091 -13.948 Td [(routines.)]TJ 0 g 0 G - [-500(If)-352(an)-353(input)-352(index)-352(is)-353(out)-352(of)-352(range,)-358(then)-352(the)-352(corresp)-28(onding)-352(output)-353(index)-352(is)]TJ 12.73 -11.955 Td [(set)-333(to)-334(a)-333(negativ)28(e)-334(n)28(um)28(b)-28(er;)]TJ 0 g 0 G - -12.73 -19.926 Td [(2.)]TJ +/F30 9.9626 Tf -37.36 -18.389 Td [(call)-525(psb_sprn\050a,)-525(decsc_a,)-525(info,)-525(clear\051)]TJ 0 g 0 G - [-500(The)-476(default)]TJ/F30 9.9626 Tf 69.542 0 Td [(I)]TJ/F8 9.9626 Tf 5.231 0 Td [(gnore)-476(means)-477(th)1(at)-477(the)-476(negativ)28(e)-476(output)-477(is)-476(the)-476(only)-476(action)]TJ -62.043 -11.955 Td [(tak)28(en)-334(on)-333(an)-333(out-of-range)-333(input.)]TJ +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G - 141.968 -571.855 Td [(91)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -ET - -endstream -endobj -1491 0 obj -<< -/Length 5736 ->> -stream +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G -BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 706.129 Td [(lo)-31(c)]TJ + 0 -19.926 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(the)-333(matrix)-334(to)-333(b)-28(e)-333(reinitialized.)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.95 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.914 0 Td [(psb)]TJ ET q -1 0 0 1 193.415 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 362.845 564.402 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 197.45 706.129 Td [(to)]TJ +/F30 9.9626 Tf 365.983 564.203 Td [(Tspmat)]TJ ET q -1 0 0 1 210.212 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 397.993 564.402 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 214.247 706.129 Td [(glob)-375(|)-375(Lo)-31(cal)-375(to)-375(global)-375(indices)-375(con)31(v)31(ersion)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -63.542 -18.389 Td [(call)-525(psb_loc_to_glob\050x,)-525(y,)-525(desc_a,)-525(info,)-525(iact\051)]TJ 0 -11.956 Td [(call)-525(psb_loc_to_glob\050x,)-525(desc_a,)-525(info,)-525(iact\051)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -21.917 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ -0 g 0 G +/F30 9.9626 Tf 401.131 564.203 Td [(type)]TJ 0 g 0 G - 0 -19.925 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(An)-333(in)28(tege)-1(r)-333(v)28(ector)-333(of)-334(indices)-333(to)-333(b)-28(e)-334(con)28(v)28(erted.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in,)-383(inout)]TJ/F8 9.9626 Tf 42.646 0 Td [(.)]TJ -76.131 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(rank)-333(one)-333(in)27(teger)-333(arra)28(y)83(.)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -31.88 Td [(desc)]TJ +/F27 9.9626 Tf -271.347 -19.925 Td [(desc)]TJ ET q -1 0 0 1 172.619 534.514 cm +1 0 0 1 172.619 544.477 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 176.057 534.315 Td [(a)]TJ +/F27 9.9626 Tf 176.057 544.278 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 362.845 486.693 cm +1 0 0 1 362.845 496.656 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 486.494 Td [(desc)]TJ +/F30 9.9626 Tf 365.983 496.457 Td [(desc)]TJ ET q -1 0 0 1 387.532 486.693 cm +1 0 0 1 387.532 496.656 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 390.67 486.494 Td [(type)]TJ +/F30 9.9626 Tf 390.67 496.457 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -19.925 Td [(iact)]TJ -0 g 0 G -/F8 9.9626 Tf 23.28 0 Td [(sp)-28(eci\014es)-333(action)-334(to)-333(b)-28(e)-333(tak)28(en)-334(in)-333(case)-333(of)-334(range)-333(errors.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 257.148 0 Td [(global)]TJ/F8 9.9626 Tf -255.522 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-256(c)28(haracter)-255(v)56(ariable)]TJ/F30 9.9626 Tf 143.584 0 Td [(I)]TJ/F8 9.9626 Tf 5.231 0 Td [(gnore,)]TJ/F30 9.9626 Tf 29.293 0 Td [(W)]TJ/F8 9.9626 Tf 5.23 0 Td [(arning)-255(or)]TJ/F30 9.9626 Tf 41.67 0 Td [(A)]TJ/F8 9.9626 Tf 5.23 0 Td [(b)-28(ort,)-271(d)1(e)-1(f)1(ault)]TJ/F30 9.9626 Tf 56.742 0 Td [(I)]TJ/F8 9.9626 Tf 5.23 0 Td [(gnore.)]TJ -0 g 0 G -/F27 9.9626 Tf -317.116 -21.917 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -260.887 -19.925 Td [(clear)]TJ 0 g 0 G +/F8 9.9626 Tf 28.795 0 Td [(Cho)-28(ose)-333(whether)-333(to)-334(zero)-333(out)-333(m)-1(atr)1(ix)-334(co)-28(e\016cien)28(ts)]TJ -3.888 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Default:)-444(true.)]TJ 0 g 0 G - 0 -19.926 Td [(x)]TJ +/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(If)]TJ/F11 9.9626 Tf 10.132 0 Td [(y)]TJ/F8 9.9626 Tf 8.733 0 Td [(is)-350(not)-351(presen)28(t,)-355(then)]TJ/F11 9.9626 Tf 88.587 0 Td [(x)]TJ/F8 9.9626 Tf 9.185 0 Td [(is)-350(o)27(v)28(erwritten)-350(with)-350(the)-351(translated)-350(in)28(teger)-351(indices.)]TJ -102.759 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(i)1(n)27(teger)-333(arra)28(y)83(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(y)]TJ + 0 -19.925 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(If)]TJ/F11 9.9626 Tf 10.166 0 Td [(y)]TJ/F8 9.9626 Tf 8.767 0 Td [(is)-354(not)-354(presen)28(t,)-359(then)]TJ/F11 9.9626 Tf 88.732 0 Td [(y)]TJ/F8 9.9626 Tf 8.767 0 Td [(is)-354(o)28(v)28(erwritten)-354(with)-354(the)-354(translated)-353(in)27(teger)-353(indices,)]TJ -102.554 -11.955 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(left)-334(unc)28(hanged.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 113.242 0 Td [(global)]TJ/F8 9.9626 Tf -141.629 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(i)1(n)27(teger)-333(arra)28(y)83(.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.034 -11.955 Td [(An)-333(in)28(teger)-334(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detected.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(info)]TJ +/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(t)1(e)-1(d.)]TJ + [-500(On)-333(exit)-334(from)-333(this)-333(routine)-334(t)1(he)-334(sparse)-333(matrix)-334(is)-333(in)-333(the)-333(up)-28(date)-334(state.)]TJ 0 g 0 G - 141.968 -115.11 Td [(92)]TJ + 154.698 -206.766 Td [(88)]TJ 0 g 0 G ET endstream endobj -1496 0 obj +1513 0 obj << -/Length 3271 +/Length 5118 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 124.986 706.129 Td [(is)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.12)-1125(psb)]TJ ET q -1 0 0 1 134.834 706.328 cm +1 0 0 1 158.311 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 138.869 706.129 Td [(o)31(wned)-375(|)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(geall)-375(|)-375(Allo)-31(cates)-375(a)-375(dense)-375(matrix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -38.974 -18.389 Td [(call)-525(psb_is_owned\050x,)-525(desc_a\051)]TJ +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_geall\050x,)-525(desc_a,)-525(info,)-525(n,)-525(lb\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(In)28(teger)-334(index.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(scalar)-333(in)28(teger.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -31.88 Td [(desc)]TJ + 0 -19.925 Td [(desc)]TJ ET q -1 0 0 1 121.81 546.469 cm +1 0 0 1 121.81 626.17 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 546.27 Td [(a)]TJ +/F27 9.9626 Tf 125.247 625.971 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(The)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(v)56(ariable)-334(of)-333(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 137.346 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 498.649 cm +1 0 0 1 278.467 578.35 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 498.449 Td [(desc)]TJ +/F30 9.9626 Tf 281.605 578.15 Td [(desc)]TJ ET q -1 0 0 1 336.723 498.649 cm +1 0 0 1 303.154 578.35 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 498.449 Td [(type)]TJ +/F30 9.9626 Tf 306.292 578.15 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -227.319 -31.88 Td [(n)]TJ 0 g 0 G +/F8 9.9626 Tf 11.347 0 Td [(The)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(columns)-333(of)-334(the)-333(dense)-333(m)-1(atr)1(ix)-334(to)-333(b)-28(e)-333(allo)-28(cated.)]TJ 13.56 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-343(as:)-463(In)27(teger)-343(scalar,)-345(default)-343(1.)-473(It)-343(is)-343(not)-343(a)-343(v)56(alid)-343(argumen)28(t)-343(if)]TJ/F11 9.9626 Tf 294.599 0 Td [(x)]TJ/F8 9.9626 Tf 9.11 0 Td [(is)-343(a)]TJ -303.709 -11.955 Td [(rank-1)-333(arra)28(y)83(.)]TJ 0 g 0 G - 0 -19.926 Td [(F)96(unction)-384(v)64(alue)]TJ +/F27 9.9626 Tf -24.907 -19.925 Td [(lb)]TJ 0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(A)-302(logical)-301(mask)-302(whic)28(h)-302(is)-302(t)1(rue)-302(if)]TJ/F11 9.9626 Tf 134.085 0 Td [(x)]TJ/F8 9.9626 Tf 8.699 0 Td [(is)-302(o)28(wned)-302(b)28(y)-301(the)-302(curren)28(t)-302(pro-)]TJ -196.264 -11.955 Td [(cess)-334(S)1(c)-1(op)-27(e:)]TJ/F27 9.9626 Tf 52.415 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -52.415 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ/F16 11.9552 Tf -74.942 -33.873 Td [(Notes)]TJ +/F8 9.9626 Tf 14.529 0 Td [(The)-489(lo)28(w)27(er)-489(b)-27(ound)-489(for)-489(the)-490(column)-489(index)-489(range)-489(of)-489(the)-489(dense)-489(matrix)-489(to)-489(b)-28(e)]TJ 10.378 -11.955 Td [(allo)-28(cated.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-343(as:)-463(In)27(teger)-343(scalar,)-345(default)-343(1.)-473(It)-343(is)-343(not)-343(a)-343(v)56(alid)-343(argumen)28(t)-343(if)]TJ/F11 9.9626 Tf 294.599 0 Td [(x)]TJ/F8 9.9626 Tf 9.11 0 Td [(is)-343(a)]TJ -303.709 -11.955 Td [(rank-1)-333(arra)28(y)83(.)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ +/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(The)-333(dense)-334(matrix)-333(to)-333(b)-28(e)-334(all)1(o)-28(cated.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-303(as:)-430(a)-304(rank)-303(one)-304(or)-304(t)28(w)28(o)-304(arra)28(y)-304(with)-303(the)-304(ALLOCA)83(T)83(ABLE)-303(attribute)]TJ 0 -11.955 Td [(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 89.968 0 Td [(psb)]TJ +ET +q +1 0 0 1 231.089 293.418 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 234.227 293.219 Td [(T)]TJ +ET +q +1 0 0 1 240.085 293.418 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 243.223 293.219 Td [(vect)]TJ +ET +q +1 0 0 1 264.772 293.418 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 267.911 293.219 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(,)-333(of)-334(t)28(yp)-28(e)-333(real,)-333(complex)-334(or)-333(in)28(teger.)]TJ +0 g 0 G +/F27 9.9626 Tf -188.937 -31.88 Td [(info)]TJ 0 g 0 G - [-500(This)-300(routine)-299(returns)-300(a)]TJ/F30 9.9626 Tf 111.213 0 Td [(.true.)]TJ/F8 9.9626 Tf 34.369 0 Td [(v)56(alue)-300(for)-300(an)-300(index)-299(that)-300(is)-300(strictly)-300(o)28(wned)-300(b)28(y)]TJ -132.852 -11.955 Td [(the)-333(curren)28(t)-334(pro)-28(cess,)-333(excluding)-333(the)-334(halo)-333(indices)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ 0 g 0 G - 141.968 -264.549 Td [(93)]TJ + 141.968 -123.08 Td [(89)]TJ 0 g 0 G ET endstream endobj -1502 0 obj +1519 0 obj << -/Length 4983 +/Length 6852 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.13)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 209.121 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(o)31(wned)]TJ -ET -q -1 0 0 1 213.748 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 217.783 706.129 Td [(index)-375(|)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(geins)-375(|)-375(Dense)-375(matrix)-375(insertion)-375(routine)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -67.078 -18.389 Td [(call)-525(psb_owned_index\050y,)-525(x,)-525(desc_a,)-525(info\051)]TJ +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_geins\050m,)-525(irw,)-525(val,)-525(x,)-525(desc_a,)-525(info)-525([,dupl,local]\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -20.681 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.43 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(x)]TJ + 0 -19.431 Td [(m)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(In)28(teger)-334(ind)1(ice)-1(s.)]TJ 13.878 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in,)-383(inout)]TJ/F8 9.9626 Tf 42.645 0 Td [(.)]TJ -76.131 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(scalar)-333(or)-334(a)-333(rank)-333(one)-334(in)28(teger)-333(arra)28(y)83(.)]TJ +/F8 9.9626 Tf 14.529 0 Td [(Num)28(b)-28(er)-333(of)-334(ro)28(ws)-333(in)]TJ/F11 9.9626 Tf 84.516 0 Td [(v)-36(al)]TJ/F8 9.9626 Tf 16.942 0 Td [(to)-333(b)-28(e)-333(inse)-1(r)1(te)-1(d)1(.)]TJ -91.081 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -31.88 Td [(desc)]TJ +/F27 9.9626 Tf -24.906 -19.431 Td [(irw)]TJ +0 g 0 G +/F8 9.9626 Tf 21.157 0 Td [(Indices)-444(of)-445(the)-444(ro)27(ws)-444(to)-445(b)-27(e)-445(inserted.)-778(Sp)-28(eci\014cally)84(,)-472(ro)27(w)]TJ/F11 9.9626 Tf 237.973 0 Td [(i)]TJ/F8 9.9626 Tf 7.861 0 Td [(of)]TJ/F11 9.9626 Tf 12.454 0 Td [(v)-36(al)]TJ/F8 9.9626 Tf 18.049 0 Td [(will)-444(b)-28(e)-445(in-)]TJ -272.588 -11.955 Td [(serted)-435(in)28(to)-436(th)1(e)-436(lo)-27(cal)-436(ro)28(w)-435(corresp)-28(onding)-435(to)-435(the)-435(global)-435(ro)28(w)-435(index)]TJ/F11 9.9626 Tf 289.252 0 Td [(ir)-28(w)]TJ/F8 9.9626 Tf 15.605 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051.)]TJ -312.163 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)84(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -19.43 Td [(v)64(al)]TJ +0 g 0 G +/F8 9.9626 Tf 19.143 0 Td [(the)-333(dense)-334(submatrix)-333(to)-333(b)-28(e)-333(inserted.)]TJ 5.763 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(1)-333(o)-1(r)-333(2)-333(arra)28(y)83(.)-444(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-334(v)56(alue.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -19.43 Td [(desc)]TJ ET q -1 0 0 1 172.619 546.469 cm +1 0 0 1 172.619 414.689 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 176.057 546.27 Td [(a)]TJ +/F27 9.9626 Tf 176.057 414.49 Td [(a)]TJ 0 g 0 G /F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 362.845 498.649 cm +1 0 0 1 362.845 366.869 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 498.449 Td [(desc)]TJ +/F30 9.9626 Tf 365.983 366.669 Td [(desc)]TJ ET q -1 0 0 1 387.532 498.649 cm +1 0 0 1 387.532 366.869 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 390.67 498.449 Td [(type)]TJ +/F30 9.9626 Tf 390.67 366.669 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -19.925 Td [(iact)]TJ -0 g 0 G -/F8 9.9626 Tf 23.28 0 Td [(sp)-28(eci\014es)-333(action)-334(to)-333(b)-28(e)-333(tak)28(en)-334(in)-333(case)-333(of)-334(range)-333(errors.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 257.148 0 Td [(global)]TJ/F8 9.9626 Tf -255.522 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-256(c)28(haracter)-255(v)56(ariable)]TJ/F30 9.9626 Tf 143.584 0 Td [(I)]TJ/F8 9.9626 Tf 5.231 0 Td [(gnore,)]TJ/F30 9.9626 Tf 29.293 0 Td [(W)]TJ/F8 9.9626 Tf 5.23 0 Td [(arning)-255(or)]TJ/F30 9.9626 Tf 41.67 0 Td [(A)]TJ/F8 9.9626 Tf 5.23 0 Td [(b)-28(ort,)-271(d)1(e)-1(f)1(ault)]TJ/F30 9.9626 Tf 56.742 0 Td [(I)]TJ/F8 9.9626 Tf 5.23 0 Td [(gnore.)]TJ +/F27 9.9626 Tf -260.887 -19.43 Td [(dupl)]TJ 0 g 0 G -/F27 9.9626 Tf -317.116 -21.918 Td [(On)-383(Return)]TJ +/F8 9.9626 Tf 27.259 0 Td [(Ho)28(w)-334(to)-333(handle)-333(duplicate)-333(co)-28(e\016cien)27(ts.)]TJ -2.352 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-308(as:)-432(in)27(teger,)-313(p)-28(ossible)-309(v)56(alues:)]TJ/F30 9.9626 Tf 163.697 0 Td [(psb_dupl_ovwrt_)]TJ/F8 9.9626 Tf 78.455 0 Td [(,)]TJ/F30 9.9626 Tf 5.891 0 Td [(psb_dupl_add_)]TJ/F8 9.9626 Tf 67.995 0 Td [(.)]TJ 0 g 0 G +/F27 9.9626 Tf -340.944 -19.43 Td [(lo)-32(cal)]TJ 0 g 0 G - 0 -19.926 Td [(y)]TJ +/F8 9.9626 Tf 28.054 0 Td [(Whether)-289(the)-289(en)28(tries)-289(in)-289(the)-289(index)-288(v)27(ector)]TJ/F30 9.9626 Tf 172.77 0 Td [(irw)]TJ/F8 9.9626 Tf 15.691 0 Td [(,)-298(are)-289(already)-289(in)-288(lo)-28(cal)-289(n)28(um)28(b)-28(er-)]TJ -191.608 -11.955 Td [(ing.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(logical)-333(v)55(alue;)-333(default:)]TJ/F30 9.9626 Tf 163.055 0 Td [(.false.)]TJ/F8 9.9626 Tf 36.612 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(A)-294(logical)-294(mask)-294(whic)28(h)-294(is)-294(true)-294(for)-294(all)-294(corresp)-28(onding)-294(en)28(tries)-294(of)]TJ/F11 9.9626 Tf 259.229 0 Td [(x)]TJ/F8 9.9626 Tf 8.623 0 Td [(that)-294(are)-294(o)28(wned)]TJ -253.974 -11.955 Td [(b)28(y)-334(the)-333(curren)28(t)-333(pro)-28(cess)-334(Scop)-27(e:)]TJ/F27 9.9626 Tf 132.753 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -132.752 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(scalar)-333(or)-334(r)1(ank)-334(one)-333(logical)-333(arra)27(y)84(.)]TJ +/F27 9.9626 Tf -224.574 -20.68 Td [(On)-383(Return)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.926 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.034 -11.955 Td [(An)-333(in)28(teger)-334(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detected.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ + 0 -19.43 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ +/F8 9.9626 Tf 11.028 0 Td [(the)-333(output)-334(d)1(e)-1(n)1(s)-1(e)-333(matrix.)]TJ 13.879 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-232(as:)-394(a)-233(rank)-233(one)-232(or)-233(t)28(w)28(o)-233(arra)28(y)-233(or)-232(an)-233(ob)-55(ject)-233(of)-233(t)28(yp)-27(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 241.975 0 Td [(psb)]TJ +ET +q +1 0 0 1 433.906 144.435 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 437.044 144.236 Td [(T)]TJ +ET +q +1 0 0 1 442.902 144.435 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 446.04 144.236 Td [(vect)]TJ +ET +q +1 0 0 1 467.589 144.435 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 470.727 144.236 Td [(type)]TJ 0 g 0 G - [-500(This)-475(routine)-474(returns)-475(a)]TJ/F30 9.9626 Tf 118.186 0 Td [(.true.)]TJ/F8 9.9626 Tf 36.112 0 Td [(v)56(alue)-475(for)-475(those)-475(indices)-474(that)-475(are)-475(strictly)]TJ -141.567 -11.955 Td [(o)28(wned)-334(b)28(y)-333(the)-333(curren)27(t)-333(pro)-28(cess,)-333(excluding)-333(the)-334(halo)-333(indices)]TJ +/F8 9.9626 Tf 20.922 0 Td [(,)]TJ -316.038 -11.955 Td [(of)-333(t)27(yp)-27(e)-334(real,)-333(complex)-333(or)-334(in)28(teger.)]TJ 0 g 0 G - 141.967 -141.013 Td [(94)]TJ + 141.968 -41.843 Td [(90)]TJ 0 g 0 G ET endstream endobj -1508 0 obj +1523 0 obj << -/Length 3240 +/Length 1111 >> stream 0 g 0 G 0 g 0 G +0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F27 9.9626 Tf 99.895 706.129 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ +0 g 0 G +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ +0 g 0 G + [-500(Dense)-333(v)27(ectors/matrices)-333(do)-333(not)-334(ha)28(v)28(e)-334(an)-333(asso)-28(ciated)-333(state;)]TJ +0 g 0 G + 0 -19.925 Td [(2.)]TJ +0 g 0 G + [-500(Duplicate)-292(en)28(tries)-293(are)-292(either)-292(o)28(v)28(erwritten)-292(or)-293(added,)-300(there)-292(is)-292(no)-292(pro)27(vision)-292(for)]TJ 12.73 -11.955 Td [(raising)-333(an)-334(error)-333(condition.)]TJ +0 g 0 G + 141.968 -494.147 Td [(91)]TJ +0 g 0 G ET -q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q + +endstream +endobj +1533 0 obj +<< +/Length 5226 +>> +stream +0 g 0 G +0 g 0 G BT -/F16 11.9552 Tf 124.986 706.129 Td [(is)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.14)-1125(psb)]TJ ET q -1 0 0 1 134.834 706.328 cm +1 0 0 1 209.121 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 138.869 706.129 Td [(lo)-31(cal)-375(|)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(geasb)-375(|)-375(Assem)31(bly)-375(a)-375(dense)-375(matrix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -38.974 -18.389 Td [(call)-525(psb_is_local\050x,)-525(desc_a\051)]TJ +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_geasb\050x,)-525(desc_a,)-525(info,)-525(mold\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(In)28(teger)-334(index.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(scalar)-333(in)28(teger.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -31.88 Td [(desc)]TJ + 0 -19.925 Td [(desc)]TJ ET q -1 0 0 1 121.81 546.469 cm +1 0 0 1 172.619 626.17 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 546.27 Td [(a)]TJ +/F27 9.9626 Tf 176.057 625.971 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.55 0 Td [(The)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(v)56(ariable)-334(of)-333(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 137.347 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 498.649 cm +1 0 0 1 329.276 578.35 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 498.449 Td [(desc)]TJ +/F30 9.9626 Tf 332.415 578.15 Td [(desc)]TJ ET q -1 0 0 1 336.723 498.649 cm +1 0 0 1 353.964 578.35 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 498.449 Td [(type)]TJ +/F30 9.9626 Tf 357.102 578.15 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.926 Td [(F)96(unction)-384(v)64(alue)]TJ -0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(A)-264(logical)-265(mask)-264(whic)27(h)-264(is)-265(true)-264(if)]TJ/F11 9.9626 Tf 131.492 0 Td [(x)]TJ/F8 9.9626 Tf 8.329 0 Td [(is)-264(lo)-28(cal)-265(to)-264(the)-265(curren)28(t)-264(pro)-28(cess)]TJ -193.301 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ/F16 11.9552 Tf -74.942 -33.873 Td [(Notes)]TJ -0 g 0 G -/F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ -0 g 0 G - [-500(This)-239(routine)-239(returns)-239(a)]TJ/F30 9.9626 Tf 108.787 0 Td [(.true.)]TJ/F8 9.9626 Tf 33.762 0 Td [(v)56(alue)-239(for)-239(an)-239(index)-239(that)-239(is)-238(lo)-28(cal)-239(to)-239(the)-239(curren)28(t)]TJ -129.819 -11.955 Td [(pro)-28(cess,)-333(including)-333(the)-334(halo)-333(indices)]TJ -0 g 0 G - 141.968 -264.549 Td [(95)]TJ +/F27 9.9626 Tf -227.318 -31.88 Td [(mold)]TJ 0 g 0 G +/F8 9.9626 Tf 29.805 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(th)1(e)-334(in)28(ternal)-333(v)27(ector)-333(storage.)]TJ -4.899 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-273(as:)-414(an)-274(ob)-55(ject)-273(of)-274(a)-273(class)-273(deriv)28(ed)-274(from)]TJ/F30 9.9626 Tf 198.261 0 Td [(psb)]TJ ET - -endstream -endobj -1514 0 obj -<< -/Length 4992 ->> -stream -0 g 0 G -0 g 0 G +q +1 0 0 1 390.19 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F30 9.9626 Tf 393.329 498.449 Td [(T)]TJ ET q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 399.186 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(lo)-31(cal)]TJ +/F30 9.9626 Tf 402.325 498.449 Td [(base)]TJ ET q -1 0 0 1 203.689 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 423.874 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 207.724 706.129 Td [(index)-375(|)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -57.019 -18.389 Td [(call)-525(psb_local_index\050y,)-525(x,)-525(desc_a,)-525(info\051)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(In)28(teger)-334(ind)1(ic)-1(es.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in,)-383(inout)]TJ/F8 9.9626 Tf 42.646 0 Td [(.)]TJ -76.131 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(scalar)-333(or)-334(a)-333(rank)-333(one)-333(in)27(teger)-333(arra)28(y)83(.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -31.88 Td [(desc)]TJ +/F30 9.9626 Tf 427.012 498.449 Td [(vect)]TJ ET q -1 0 0 1 172.619 546.469 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 448.561 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F27 9.9626 Tf 176.057 546.27 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F30 9.9626 Tf 451.699 498.449 Td [(type)]TJ/F8 9.9626 Tf 20.921 0 Td [(;)-293(this)]TJ -297.009 -11.955 Td [(is)-333(only)-334(allo)28(w)28(ed)-333(when)]TJ/F11 9.9626 Tf 93.317 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 43.78 0 Td [(psb)]TJ ET q -1 0 0 1 362.845 498.649 cm +1 0 0 1 338.042 486.693 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 498.449 Td [(desc)]TJ +/F30 9.9626 Tf 341.18 486.494 Td [(T)]TJ ET q -1 0 0 1 387.532 498.649 cm +1 0 0 1 347.038 486.693 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 390.67 498.449 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -260.887 -19.925 Td [(iact)]TJ -0 g 0 G -/F8 9.9626 Tf 23.28 0 Td [(sp)-28(eci\014es)-333(action)-334(to)-333(b)-28(e)-333(tak)28(en)-334(in)-333(case)-333(of)-334(range)-333(errors.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 257.148 0 Td [(global)]TJ/F8 9.9626 Tf -255.522 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-256(c)28(haracter)-255(v)56(ariable)]TJ/F30 9.9626 Tf 143.584 0 Td [(I)]TJ/F8 9.9626 Tf 5.231 0 Td [(gnore,)]TJ/F30 9.9626 Tf 29.293 0 Td [(W)]TJ/F8 9.9626 Tf 5.23 0 Td [(arning)-255(or)]TJ/F30 9.9626 Tf 41.67 0 Td [(A)]TJ/F8 9.9626 Tf 5.23 0 Td [(b)-28(ort,)-271(d)1(e)-1(f)1(ault)]TJ/F30 9.9626 Tf 56.742 0 Td [(I)]TJ/F8 9.9626 Tf 5.23 0 Td [(gnore.)]TJ +/F30 9.9626 Tf 350.177 486.494 Td [(vect)]TJ +ET +q +1 0 0 1 371.725 486.693 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 374.864 486.494 Td [(type)]TJ 0 g 0 G -/F27 9.9626 Tf -317.116 -21.918 Td [(On)-383(Return)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G +/F27 9.9626 Tf -245.08 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G - 0 -19.926 Td [(y)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(A)-346(logical)-345(mask)-346(whic)28(h)-346(is)-345(true)-346(for)-345(all)-346(corresp)-28(ondin)1(g)-346(en)28(tries)-346(of)]TJ/F11 9.9626 Tf 264.882 0 Td [(x)]TJ/F8 9.9626 Tf 9.137 0 Td [(that)-346(ar)1(e)-346(lo)-28(cal)]TJ -260.141 -11.955 Td [(to)-333(the)-334(curren)28(t)-333(pro)-28(cess)-333(Scop)-28(e:)]TJ/F27 9.9626 Tf 131.092 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -131.092 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(scalar)-333(or)-334(rank)-333(one)-333(logical)-334(ar)1(ra)27(y)84(.)]TJ + 0 -19.925 Td [(x)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(info)]TJ +/F8 9.9626 Tf 11.028 0 Td [(The)-333(dense)-334(matrix)-333(to)-333(b)-28(e)-333(as)-1(sem)28(bled.)]TJ 13.878 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-433(as:)-645(a)-433(rank)-433(one)-434(or)-433(t)28(w)28(o)-434(arra)28(y)-433(with)-433(the)-434(ALLOCA)84(T)83(ABLE)-433(or)-434(an)]TJ 0 -11.955 Td [(ob)-56(ject)-333(of)-333(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 63.927 0 Td [(psb)]TJ +ET +q +1 0 0 1 255.857 385.075 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 258.995 384.875 Td [(T)]TJ +ET +q +1 0 0 1 264.853 385.075 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 267.992 384.875 Td [(vect)]TJ +ET +q +1 0 0 1 289.541 385.075 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 292.679 384.875 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -21.918 Td [(Notes)]TJ +/F8 9.9626 Tf 20.921 0 Td [(,)-333(of)-334(t)28(yp)-28(e)-333(real,)-333(complex)-334(or)-333(in)28(teger.)]TJ 0 g 0 G -/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ +/F27 9.9626 Tf -162.895 -31.88 Td [(info)]TJ 0 g 0 G - [-500(This)-308(routine)-309(return)1(s)-309(a)]TJ/F30 9.9626 Tf 111.554 0 Td [(.true.)]TJ/F8 9.9626 Tf 34.454 0 Td [(v)56(alue)-309(for)-308(those)-308(indices)-309(that)-308(are)-308(lo)-28(cal)-308(to)-309(the)]TJ -133.278 -11.955 Td [(curren)28(t)-334(p)1(ro)-28(cess,)-334(including)-333(the)-333(halo)-334(i)1(ndices)-1(.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ 0 g 0 G - 141.968 -141.013 Td [(96)]TJ + 141.968 -214.736 Td [(92)]TJ 0 g 0 G ET endstream endobj -1520 0 obj +1539 0 obj << -/Length 3821 +/Length 3389 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 124.986 706.129 Td [(get)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.15)-1125(psb)]TJ ET q -1 0 0 1 143.885 706.328 cm +1 0 0 1 158.311 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 147.92 706.129 Td [(b)-31(oundary)-375(|)-375(Extract)-375(list)-375(of)-375(b)-32(oundary)-375(elemen)32(ts)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(gefree)-375(|)-375(F)94(rees)-375(a)-375(dense)-375(matrix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -48.025 -18.389 Td [(call)-525(psb_get_boundary\050bndel,)-525(desc,)-525(info\051)]TJ +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_gefree\050x,)-525(desc_a,)-525(info\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(desc)]TJ + 0 -19.925 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 26.209 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -1.302 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 11.028 0 Td [(The)-333(dense)-334(matrix)-333(to)-333(b)-28(e)-334(f)1(re)-1(ed.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-433(as:)-645(a)-433(rank)-433(one)-433(or)-434(t)28(w)28(o)-434(arra)28(y)-433(with)-433(the)-434(ALLOCA)84(T)83(ABLE)-433(or)-434(an)]TJ 0 -11.955 Td [(ob)-56(j)1(e)-1(ct)-333(of)-333(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 63.927 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 578.35 cm +1 0 0 1 205.048 566.395 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 578.15 Td [(desc)]TJ +/F30 9.9626 Tf 208.186 566.195 Td [(T)]TJ ET q -1 0 0 1 336.723 578.35 cm +1 0 0 1 214.044 566.395 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 578.15 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ -0 g 0 G +/F30 9.9626 Tf 217.182 566.195 Td [(vect)]TJ +ET +q +1 0 0 1 238.731 566.395 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 241.869 566.195 Td [(type)]TJ 0 g 0 G - 0 -19.926 Td [(bndel)]TJ +/F8 9.9626 Tf 20.922 0 Td [(,)-333(of)-334(t)28(yp)-28(e)-333(real,)-333(complex)-334(or)-333(in)28(teger.)]TJ 0 g 0 G -/F8 9.9626 Tf 32.51 0 Td [(The)-268(list)-267(of)-268(b)-27(oundary)-268(elemen)28(ts)-268(on)-267(the)-268(calling)-267(pro)-28(cess,)-281(in)-267(lo)-28(cal)-268(n)28(um)28(b)-28(ering.)]TJ -7.603 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-456(as:)-691(a)-457(rank)-456(one)-457(arra)28(y)-456(with)-457(the)-457(ALLOCA)84(T)83(ABLE)-456(attribute,)-488(of)]TJ 0 -11.955 Td [(t)28(yp)-28(e)-333(in)28(te)-1(ger.)]TJ +/F27 9.9626 Tf -162.896 -31.88 Td [(desc)]TJ +ET +q +1 0 0 1 121.81 534.514 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 125.247 534.315 Td [(a)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -31.881 Td [(info)]TJ +/F8 9.9626 Tf 10.551 0 Td [(The)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(v)56(ariable)-334(of)-333(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 137.346 0 Td [(psb)]TJ +ET +q +1 0 0 1 278.467 486.693 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 281.605 486.494 Td [(desc)]TJ +ET +q +1 0 0 1 303.154 486.693 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 306.292 486.494 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.956 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.917 Td [(Notes)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ +/F27 9.9626 Tf -227.319 -33.873 Td [(On)-383(Return)]TJ 0 g 0 G - [-500(If)-269(there)-269(are)-269(no)-269(b)-28(oundary)-269(elemen)28(ts)-269(\050i.e.,)-282(if)-269(the)-269(lo)-28(cal)-269(part)-269(of)-269(the)-269(c)-1(onn)1(e)-1(ctivi)1(t)27(y)]TJ 12.73 -11.955 Td [(graph)-449(is)-450(self-con)28(tained\051)-450(the)-449(output)-449(v)27(ector)-449(is)-450(set)-449(to)-450(the)-449(\134not)-450(allo)-27(c)-1(ated")]TJ 0 -11.955 Td [(state.)]TJ 0 g 0 G - -12.73 -19.925 Td [(2.)]TJ + 0 -19.925 Td [(info)]TJ 0 g 0 G - [-500(Otherwise)-288(the)-289(size)-288(of)]TJ/F30 9.9626 Tf 105.44 0 Td [(bndel)]TJ/F8 9.9626 Tf 29.023 0 Td [(will)-288(b)-28(e)-288(exactly)-289(equal)-288(to)-288(the)-288(n)28(um)27(b)-27(er)-289(of)-288(b)-28(ound)1(-)]TJ -121.733 -11.956 Td [(ary)-333(elemen)27(ts.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ 0 g 0 G - 141.968 -208.758 Td [(97)]TJ + 141.968 -294.437 Td [(93)]TJ 0 g 0 G ET endstream endobj -1528 0 obj +1543 0 obj << -/Length 3654 +/Length 3466 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 706.129 Td [(get)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.16)-1125(psb)]TJ ET q -1 0 0 1 194.695 706.328 cm +1 0 0 1 209.121 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 198.729 706.129 Td [(o)31(v)31(erlap)-375(|)-375(Extract)-375(list)-375(of)-375(o)32(v)31(erlap)-375(elemen)31(ts)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(gelp)-525(|)-526(Applies)-525(a)-526(left)-525(p)-31(erm)31(utation)-525(to)-526(a)-525(dense)]TJ -25.091 -13.948 Td [(matrix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -48.024 -18.389 Td [(call)-525(psb_get_overlap\050ovrel,)-525(desc,)-525(info\051)]TJ +/F30 9.9626 Tf -37.36 -18.389 Td [(call)-525(psb_gelp\050trans,)-525(iperm,)-525(x,)-525(info\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(desc)]TJ -0 g 0 G -/F8 9.9626 Tf 26.208 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -1.302 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ -ET -q -1 0 0 1 362.845 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 365.983 578.15 Td [(desc)]TJ -ET -q -1 0 0 1 387.532 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 390.67 578.15 Td [(type)]TJ +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ + 0 -19.926 Td [(trans)]TJ 0 g 0 G +/F8 9.9626 Tf 30.609 0 Td [(A)-333(c)27(har)1(ac)-1(ter)-333(that)-333(sp)-28(eci\014es)-333(whether)-334(to)-333(p)-28(erm)28(ute)]TJ/F11 9.9626 Tf 204.179 0 Td [(A)]TJ/F8 9.9626 Tf 10.793 0 Td [(or)]TJ/F11 9.9626 Tf 12.204 0 Td [(A)]TJ/F10 6.9738 Tf 7.472 3.616 Td [(T)]TJ/F8 9.9626 Tf 6.276 -3.616 Td [(.)]TJ -246.626 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(single)-333(c)28(haracter)-334(with)-333(v)56(alue)-334('N')-333(for)]TJ/F11 9.9626 Tf 217.435 0 Td [(A)]TJ/F8 9.9626 Tf 10.792 0 Td [(or)-333('T')-334(for)]TJ/F11 9.9626 Tf 43.504 0 Td [(A)]TJ/F10 6.9738 Tf 7.472 3.615 Td [(T)]TJ/F8 9.9626 Tf 6.276 -3.615 Td [(.)]TJ 0 g 0 G - 0 -19.926 Td [(o)32(vrel)]TJ +/F27 9.9626 Tf -310.386 -31.881 Td [(ip)-32(erm)]TJ 0 g 0 G -/F8 9.9626 Tf 29.59 0 Td [(The)-333(list)-334(of)-333(o)28(v)28(erlap)-334(elemen)28(ts)-333(on)-334(the)-333(calling)-333(pro)-28(cess,)-334(in)-333(lo)-28(cal)-333(n)28(um)28(b)-28(ering.)]TJ -4.684 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-456(as:)-691(a)-457(rank)-456(one)-457(arra)28(y)-457(with)-456(the)-457(ALLOCA)84(T)83(ABLE)-456(attribute,)-488(of)]TJ 0 -11.955 Td [(t)28(yp)-28(e)-333(in)27(teger.)]TJ +/F8 9.9626 Tf 34.364 0 Td [(An)-333(in)28(tege)-1(r)-333(arra)28(y)-333(con)27(tain)1(ing)-334(p)-28(erm)28(utation)-333(information.)]TJ -9.457 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(one-dimensional)-334(arra)28(y)84(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -31.881 Td [(info)]TJ +/F27 9.9626 Tf -24.907 -31.881 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.956 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -21.917 Td [(Notes)]TJ +/F8 9.9626 Tf 11.028 0 Td [(The)-333(dense)-334(matrix)-333(to)-333(b)-28(e)-333(p)-28(erm)27(u)1(te)-1(d)1(.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(one)-333(or)-333(t)27(w)28(o)-333(dimensional)-334(arra)28(y)84(.)]TJ 0 g 0 G -/F8 9.9626 Tf 12.176 -19.926 Td [(1.)]TJ +/F27 9.9626 Tf -24.907 -33.873 Td [(On)-383(Return)]TJ 0 g 0 G - [-500(If)-343(there)-344(ar)1(e)-344(no)-343(o)28(v)28(erlap)-344(elemen)28(ts)-343(the)-343(output)-344(v)28(ector)-343(is)-343(set)-344(to)-343(the)-343(\134not)-343(allo-)]TJ 12.73 -11.955 Td [(cated")-333(state.)]TJ 0 g 0 G - -12.73 -19.925 Td [(2.)]TJ + 0 -19.925 Td [(info)]TJ 0 g 0 G - [-500(Otherwise)-284(the)-284(size)-283(of)]TJ/F30 9.9626 Tf 105.262 0 Td [(ovrel)]TJ/F8 9.9626 Tf 28.978 0 Td [(will)-284(b)-27(e)-284(exactly)-284(equal)-284(to)-284(the)-283(n)27(u)1(m)27(b)-27(e)-1(r)-283(of)-284(o)28(v)28(erlap)]TJ -121.51 -11.955 Td [(elemen)28(ts.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.034 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detected.)]TJ 0 g 0 G - 141.968 -220.714 Td [(98)]TJ + 141.967 -212.744 Td [(94)]TJ 0 g 0 G ET endstream endobj -1535 0 obj +1548 0 obj << -/Length 5783 +/Length 6552 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.17)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 158.311 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(sp)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(glob)]TJ ET q -1 0 0 1 138.57 706.328 cm +1 0 0 1 187.811 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 142.605 706.129 Td [(getro)31(w)-375(|)-375(Extract)-375(ro)31(w\050s\051)-375(from)-375(a)-375(sparse)-375(matrix)]TJ +/F16 11.9552 Tf 191.846 706.129 Td [(to)]TJ +ET +q +1 0 0 1 204.608 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 208.643 706.129 Td [(lo)-31(c)-359(|)-359(Global)-358(to)-359(lo)-31(cal)-359(indices)-359(con)32(v)31(ertion)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -42.71 -18.647 Td [(call)-525(psb_sp_getrow\050row,)-525(a,)-525(nz,)-525(ia,)-525(ja,)-525(val,)-525(info,)-525(&)]TJ 73.225 -11.955 Td [(&)-525(append,)-525(nzin,)-525(lrw\051)]TJ +/F30 9.9626 Tf -108.748 -18.389 Td [(call)-525(psb_glob_to_loc\050x,)-525(y,)-525(desc_a,)-525(info,)-525(iact,owned\051)]TJ 0 -11.956 Td [(call)-525(psb_glob_to_loc\050x,)-525(desc_a,)-525(info,)-525(iact,owned\051)]TJ 0 g 0 G -/F27 9.9626 Tf -73.225 -22.334 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.201 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -20.479 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.639 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -20.479 Td [(ro)32(w)]TJ + 0 -19.639 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 23.385 0 Td [(The)-333(\050\014rst\051)-334(ro)28(w)-333(to)-334(b)-27(e)-334(extracted.)]TJ 1.522 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)]TJ/F11 9.9626 Tf 104.691 0 Td [(>)]TJ/F8 9.9626 Tf 10.516 0 Td [(0.)]TJ +/F8 9.9626 Tf 11.028 0 Td [(An)-333(in)28(te)-1(ger)-333(v)28(ector)-333(of)-334(indices)-333(to)-333(b)-28(e)-334(con)28(v)28(erted.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in,)-383(inout)]TJ/F8 9.9626 Tf 42.645 0 Td [(.)]TJ -76.131 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(in)27(teger)-333(arra)28(y)83(.)]TJ 0 g 0 G -/F27 9.9626 Tf -140.114 -20.479 Td [(a)]TJ +/F27 9.9626 Tf -24.907 -31.594 Td [(desc)]TJ +ET +q +1 0 0 1 121.81 536.09 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 125.247 535.891 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(matrix)-334(from)-333(whic)28(h)-333(to)-334(get)-333(ro)28(ws.)]TJ 14.356 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 496.313 cm +1 0 0 1 312.036 488.27 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 496.114 Td [(Tspmat)]TJ +/F30 9.9626 Tf 315.174 488.07 Td [(desc)]TJ ET q -1 0 0 1 347.183 496.313 cm +1 0 0 1 336.723 488.27 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 350.322 496.114 Td [(type)]TJ +/F30 9.9626 Tf 339.861 488.07 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -271.348 -20.479 Td [(app)-32(end)]TJ +/F27 9.9626 Tf -260.887 -19.638 Td [(iact)]TJ 0 g 0 G -/F8 9.9626 Tf 41.58 0 Td [(Whether)-333(to)-334(app)-27(end)-334(or)-333(o)28(v)28(erwrite)-334(existing)-333(output.)]TJ -16.673 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(v)55(alue)-333(default:)-444(false)-334(\050o)28(v)28(erwrite\051.)]TJ +/F8 9.9626 Tf 23.281 0 Td [(sp)-28(eci\014es)-333(action)-334(to)-333(b)-28(e)-333(tak)28(en)-334(in)-333(case)-333(of)-334(range)-333(errors.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 257.147 0 Td [(global)]TJ/F8 9.9626 Tf -255.521 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-256(c)28(haracter)-255(v)56(ariable)]TJ/F30 9.9626 Tf 143.584 0 Td [(I)]TJ/F8 9.9626 Tf 5.23 0 Td [(gnore,)]TJ/F30 9.9626 Tf 29.293 0 Td [(W)]TJ/F8 9.9626 Tf 5.23 0 Td [(arning)-255(or)]TJ/F30 9.9626 Tf 41.67 0 Td [(A)]TJ/F8 9.9626 Tf 5.231 0 Td [(b)-28(ort,)-270(default)]TJ/F30 9.9626 Tf 56.741 0 Td [(I)]TJ/F8 9.9626 Tf 5.231 0 Td [(gnore.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -20.479 Td [(nzin)]TJ +/F27 9.9626 Tf -317.117 -19.639 Td [(o)32(wned)]TJ 0 g 0 G -/F8 9.9626 Tf 25.986 0 Td [(Input)-333(size)-334(to)-333(b)-28(e)-333(app)-28(ended)-333(to.)]TJ -1.079 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-398(as:)-573(an)-398(in)28(teger)]TJ/F11 9.9626 Tf 107.907 0 Td [(>)]TJ/F8 9.9626 Tf 11.589 0 Td [(0.)-638(When)-398(app)-28(end)-398(i)1(s)-398(true,)-414(sp)-28(eci\014es)-398(ho)28(w)-398(man)27(y)]TJ -119.496 -11.955 Td [(en)28(tries)-334(in)-333(the)-333(output)-333(v)27(ectors)-333(are)-333(already)-334(\014lled.)]TJ +/F8 9.9626 Tf 36.647 0 Td [(Sp)-28(ec\014es)-333(v)55(alid)-333(range)-333(of)-334(i)1(nput)-334(Scop)-27(e:)]TJ/F27 9.9626 Tf 158.933 0 Td [(global)]TJ/F8 9.9626 Tf -170.673 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(If)-294(true,)-302(then)-294(only)-295(indices)-294(strictly)-294(o)28(wned)-295(b)28(y)-294(the)-294(curren)28(t)-295(pro)-27(ces)-1(s)-294(are)-294(consid-)]TJ 0 -11.955 Td [(ered)-333(v)55(alid,)-333(if)-333(false)-334(then)-333(halo)-333(indices)-334(are)-333(also)-333(accepted.)-445(Default:)-444(false.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -20.479 Td [(lrw)]TJ +/F27 9.9626 Tf -24.907 -21.202 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 21.157 0 Td [(The)-333(last)-334(ro)28(w)-333(to)-334(b)-27(e)-334(extracted.)]TJ 3.75 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)]TJ/F11 9.9626 Tf 104.691 0 Td [(>)]TJ/F8 9.9626 Tf 10.516 0 Td [(0,)-333(default:)]TJ/F11 9.9626 Tf 48.43 0 Td [(r)-28(ow)]TJ/F8 9.9626 Tf 17.001 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -205.545 -22.334 Td [(On)-383(Return)]TJ + 0 -19.639 Td [(x)]TJ 0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(If)]TJ/F11 9.9626 Tf 10.133 0 Td [(y)]TJ/F8 9.9626 Tf 8.733 0 Td [(is)-350(not)-351(presen)28(t,)-355(then)]TJ/F11 9.9626 Tf 88.586 0 Td [(x)]TJ/F8 9.9626 Tf 9.185 0 Td [(is)-350(o)27(v)28(erwritten)-350(with)-351(th)1(e)-351(translated)-350(in)28(teger)-351(indices.)]TJ -102.758 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(in)27(teger)-333(arra)28(y)83(.)]TJ 0 g 0 G - 0 -20.479 Td [(nz)]TJ +/F27 9.9626 Tf -24.907 -19.639 Td [(y)]TJ 0 g 0 G -/F8 9.9626 Tf 16.439 0 Td [(the)-333(n)28(um)27(b)-27(er)-334(of)-333(elemen)28(ts)-334(returned)-333(b)28(y)-334(th)1(is)-334(call.)]TJ 8.468 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.956 Td [(Returned)-333(as:)-445(an)-333(in)28(teger)-334(scalar.)]TJ +/F8 9.9626 Tf 11.028 0 Td [(If)]TJ/F11 9.9626 Tf 10.04 0 Td [(y)]TJ/F8 9.9626 Tf 8.64 0 Td [(is)-341(presen)28(t,)-343(then)]TJ/F11 9.9626 Tf 70.405 0 Td [(y)]TJ/F8 9.9626 Tf 8.64 0 Td [(is)-341(o)28(v)27(erwri)1(tte)-1(n)-341(with)-341(the)-341(translated)-341(in)28(teger)-341(indices,)-343(and)]TJ/F11 9.9626 Tf -83.846 -11.955 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(left)-334(unc)28(hanged.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 113.242 0 Td [(global)]TJ/F8 9.9626 Tf -122.257 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(in)27(teger)-333(arra)28(y)83(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -20.479 Td [(ia)]TJ +/F27 9.9626 Tf -24.907 -19.638 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 13.734 0 Td [(the)-333(ro)28(w)-334(indices.)]TJ 11.173 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(with)-333(the)]TJ/F30 9.9626 Tf 170.611 0 Td [(ALLOCATABLE)]TJ/F8 9.9626 Tf 60.854 0 Td [(attribute.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.202 Td [(Notes)]TJ 0 g 0 G - -89.497 -29.887 Td [(99)]TJ +/F8 9.9626 Tf 166.875 -29.887 Td [(95)]TJ 0 g 0 G ET endstream endobj -1539 0 obj +1552 0 obj << -/Length 3712 +/Length 705 >> stream 0 g 0 G 0 g 0 G 0 g 0 G BT -/F27 9.9626 Tf 150.705 706.129 Td [(ja)]TJ +/F8 9.9626 Tf 162.881 706.129 Td [(1.)]TJ 0 g 0 G -/F8 9.9626 Tf 14.051 0 Td [(the)-333(column)-334(indices)-333(of)-333(the)-334(elemen)28(ts)-333(to)-334(b)-27(e)-334(inserted.)]TJ 10.855 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(with)-333(the)]TJ/F30 9.9626 Tf 170.611 0 Td [(ALLOCATABLE)]TJ/F8 9.9626 Tf 60.855 0 Td [(attribute.)]TJ -0 g 0 G -/F27 9.9626 Tf -256.372 -19.925 Td [(v)64(al)]TJ -0 g 0 G -/F8 9.9626 Tf 19.143 0 Td [(the)-333(elemen)27(ts)-333(to)-333(b)-28(e)-333(inse)-1(r)1(te)-1(d)1(.)]TJ 5.763 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(real)-333(arra)28(y)-334(with)-333(the)]TJ/F30 9.9626 Tf 151.516 0 Td [(ALLOCATABLE)]TJ/F8 9.9626 Tf 60.854 0 Td [(attribute.)]TJ -0 g 0 G -/F27 9.9626 Tf -237.276 -19.925 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(t)1(e)-1(d.)]TJ/F16 11.9552 Tf -24.906 -21.918 Td [(Notes)]TJ -0 g 0 G -/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ -0 g 0 G - [-500(The)-368(output)]TJ/F11 9.9626 Tf 66.553 0 Td [(nz)]TJ/F8 9.9626 Tf 14.716 0 Td [(is)-368(alw)28(a)28(ys)-368(the)-368(size)-368(of)-368(the)-368(output)-368(generated)-367(b)27(y)-367(the)-368(curren)27(t)]TJ -68.539 -11.955 Td [(call;)-314(th)28(us,)-309(if)]TJ/F30 9.9626 Tf 54.124 0 Td [(append=.true.)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)-310(the)-303(total)-304(output)-304(size)-304(will)-303(b)-28(e)]TJ/F11 9.9626 Tf 128.95 0 Td [(nz)-44(in)]TJ/F8 9.9626 Tf 22.088 0 Td [(+)]TJ/F11 9.9626 Tf 9.373 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(,)-310(with)]TJ -293.58 -11.955 Td [(the)-372(newly)-372(extracted)-372(co)-28(e\016cien)28(ts)-372(stored)-372(in)-372(en)28(tries)]TJ/F30 9.9626 Tf 216.307 0 Td [(nzin+1:nzin+nz)]TJ/F8 9.9626 Tf 76.93 0 Td [(of)-372(the)]TJ -293.237 -11.955 Td [(arra)28(y)-334(ar)1(gume)-1(n)28(ts;)]TJ + [-500(If)-352(an)-353(input)-352(index)-352(is)-353(out)-352(of)-353(r)1(ange)-1(,)-357(then)-352(the)-352(corres)-1(p)-27(onding)-353(ou)1(tput)-353(index)-352(is)]TJ 12.73 -11.955 Td [(set)-333(to)-334(a)-333(negativ)28(e)-334(n)28(um)28(b)-28(er;)]TJ 0 g 0 G -12.73 -19.926 Td [(2.)]TJ 0 g 0 G - [-500(When)]TJ/F30 9.9626 Tf 41.788 0 Td [(append=.true.)]TJ/F8 9.9626 Tf 71.315 0 Td [(the)-333(output)-334(arra)28(ys)-333(are)-333(reallo)-28(cated)-334(as)-333(necessary;)]TJ + [-500(The)-476(default)]TJ/F30 9.9626 Tf 69.543 0 Td [(I)]TJ/F8 9.9626 Tf 5.23 0 Td [(gnore)-476(means)-477(that)-476(the)-476(negativ)28(e)-477(out)1(put)-477(is)-476(the)-476(only)-476(action)]TJ -62.043 -11.955 Td [(tak)28(en)-334(on)-333(an)-333(out-of-range)-333(input.)]TJ 0 g 0 G - -113.103 -19.925 Td [(3.)]TJ -0 g 0 G - [-500(The)-253(ro)28(w)-252(and)-253(column)-253(indices)-252(are)-253(returned)-252(in)-253(the)-253(lo)-27(cal)-253(n)28(um)28(b)-28(ering)-253(sc)28(heme;)-280(if)]TJ 12.73 -11.955 Td [(the)-222(global)-222(n)27(um)28(b)-28(erin)1(g)-223(is)-222(desired,)-244(the)-223(user)-222(ma)28(y)-222(emplo)27(y)-222(the)]TJ/F30 9.9626 Tf 243.172 0 Td [(psb_loc_to_glob)]TJ/F8 9.9626 Tf -243.172 -11.955 Td [(routine)-333(on)-334(the)-333(output.)]TJ -0 g 0 G - 139.477 -290.909 Td [(100)]TJ + 141.968 -571.855 Td [(96)]TJ 0 g 0 G ET endstream endobj -1549 0 obj +1559 0 obj << -/Length 4124 +/Length 5730 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.18)-1125(psb)]TJ +ET +q +1 0 0 1 158.311 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 162.346 706.129 Td [(lo)-31(c)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 179.965 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(sizeof)-375(|)-375(Memory)-375(o)-31(ccupation)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(This)-333(function)-334(computes)-333(the)-333(memory)-334(o)-28(ccupation)-333(of)-333(a)-333(PSBLAS)-334(ob)-55(ject.)]TJ +/F16 11.9552 Tf 184 706.129 Td [(to)]TJ +ET +q +1 0 0 1 196.762 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 200.797 706.129 Td [(glob)-351(|)-350(Lo)-32(cal)-350(to)-351(global)-351(indices)-350(con)31(v)31(ersion)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf 0 -21.918 Td [(isz)-525(=)-525(psb_sizeof\050a\051)]TJ 0 -11.955 Td [(isz)-525(=)-525(psb_sizeof\050desc_a\051)]TJ 0 -11.956 Td [(isz)-525(=)-525(psb_sizeof\050prec\051)]TJ +/F30 9.9626 Tf -100.902 -18.389 Td [(call)-525(psb_loc_to_glob\050x,)-525(y,)-525(desc_a,)-525(info,)-525(iact\051)]TJ 0 -11.956 Td [(call)-525(psb_loc_to_glob\050x,)-525(desc_a,)-525(info,)-525(iact\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -21.917 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -18483,450 +18523,258 @@ BT /F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(A)-333(sparse)-334(matrix)]TJ/F11 9.9626 Tf 73.226 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(.)]TJ -66.342 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ -ET -q -1 0 0 1 312.036 532.522 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 315.174 532.322 Td [(Tspmat)]TJ -ET -q -1 0 0 1 347.183 532.522 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 350.322 532.322 Td [(type)]TJ + 0 -19.925 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F8 9.9626 Tf 11.028 0 Td [(An)-333(in)28(te)-1(ger)-333(v)28(ector)-333(of)-334(indices)-333(to)-333(b)-28(e)-334(con)28(v)28(erted.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in,)-383(inout)]TJ/F8 9.9626 Tf 42.645 0 Td [(.)]TJ -76.131 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(in)27(teger)-333(arra)28(y)83(.)]TJ 0 g 0 G -/F27 9.9626 Tf -271.348 -19.925 Td [(desc)]TJ +/F27 9.9626 Tf -24.907 -31.88 Td [(desc)]TJ ET q -1 0 0 1 121.81 512.596 cm +1 0 0 1 121.81 534.514 cm []0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F27 9.9626 Tf 125.247 512.397 Td [(a)]TJ +/F27 9.9626 Tf 125.247 534.315 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(Comm)28(unication)-334(d)1(e)-1(scriptor)1(.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 464.776 cm +1 0 0 1 312.036 486.693 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 464.576 Td [(desc)]TJ +/F30 9.9626 Tf 315.174 486.494 Td [(desc)]TJ ET q -1 0 0 1 336.723 464.776 cm +1 0 0 1 336.723 486.693 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 464.576 Td [(type)]TJ +/F30 9.9626 Tf 339.861 486.494 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -19.925 Td [(prec)]TJ -0 g 0 G -/F8 9.9626 Tf 26.408 0 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -33.88 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(preconditioner)-333(data)-333(structure)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 197.537 0 Td [(psb)]TJ -ET -q -1 0 0 1 338.658 408.985 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 341.796 408.786 Td [(prec)]TJ -ET -q -1 0 0 1 363.345 408.985 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 366.483 408.786 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -287.51 -19.926 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(F)96(unction)-384(v)64(alue)]TJ -0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(The)-332(memory)-331(o)-28(ccupation)-332(of)-331(the)-332(ob)-55(ject)-332(sp)-28(eci\014ed)-332(in)-331(the)-332(calling)]TJ -53.48 -11.955 Td [(sequence,)-333(in)-334(b)28(ytes.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(Returned)-333(as:)-445(an)]TJ/F30 9.9626 Tf 73.834 0 Td [(integer\050psb_long_int_k_\051)]TJ/F8 9.9626 Tf 128.849 0 Td [(n)28(um)28(b)-28(er.)]TJ -0 g 0 G - -63.206 -242.632 Td [(101)]TJ -0 g 0 G -ET - -endstream -endobj -1553 0 obj -<< -/Length 5774 ->> -stream -0 g 0 G -0 g 0 G -BT -/F16 11.9552 Tf 150.705 706.129 Td [(Sorting)-375(utilities)-375(|)]TJ 0 -19.593 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 686.736 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 686.536 Td [(msort)-375(|)-375(Sorting)-375(b)31(y)-375(the)-375(Merge-sort)-375(algorithm)]TJ -25.091 -12.601 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 674.134 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 673.935 Td [(qsort)-375(|)-375(Sorting)-375(b)31(y)-375(the)-375(Quic)31(ksort)-375(algorithm)]TJ -25.091 -12.602 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 661.532 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 661.333 Td [(hsort)-375(|)-375(Sorting)-375(b)31(y)-375(the)-375(Heapsort)-375(algorithm)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -25.091 -22.511 Td [(call)-525(psb_msort\050x,ix,dir,flag\051)]TJ 0 -11.955 Td [(call)-525(psb_qsort\050x,ix,dir,flag\051)]TJ 0 -11.955 Td [(call)-525(psb_hsort\050x,ix,dir,flag\051)]TJ/F8 9.9626 Tf 14.944 -21.865 Td [(These)-332(serial)-332(r)1(outines)-332(sort)-332(a)-332(sequence)]TJ/F11 9.9626 Tf 162.708 0 Td [(X)]TJ/F8 9.9626 Tf 12.34 0 Td [(in)28(to)-332(ascending)-332(or)-331(descending)-332(order.)]TJ -189.992 -11.955 Td [(The)-320(argumen)28(t)-321(meaning)-320(is)-320(iden)28(tical)-320(for)-320(the)-321(th)1(ree)-321(calls;)-324(the)-320(only)-321(di\013erence)-320(is)-320(the)]TJ 0 -11.955 Td [(algorithm)-333(used)-334(to)-333(accomplish)-333(the)-334(task)-333(\050see)-333(Us)-1(age)-333(Notes)-333(b)-28(elo)28(w\051.)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -21.865 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -22.511 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -22.511 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(The)-333(sequence)-334(to)-333(b)-28(e)-333(sorted.)]TJ 13.879 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger,)-333(real)-334(or)-333(complex)-333(arra)27(y)-333(of)-333(rank)-333(1.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -22.511 Td [(ix)]TJ -0 g 0 G -/F8 9.9626 Tf 14.21 0 Td [(A)-333(v)27(ector)-333(of)-333(indices.)]TJ 10.697 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-1(n)-333(in)28(teger)-333(arra)27(y)-333(of)-333(\050at)-333(leas)-1(t\051)-333(the)-333(same)-334(size)-333(as)]TJ/F11 9.9626 Tf 258.558 0 Td [(X)]TJ/F8 9.9626 Tf 9.036 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -292.501 -22.511 Td [(dir)]TJ -0 g 0 G -/F8 9.9626 Tf 19.247 0 Td [(The)-333(desired)-334(ordering.)]TJ 5.66 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue:)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -22.511 Td [(In)32(teger)-383(and)-384(real)-383(data:)]TJ -0 g 0 G -/F30 9.9626 Tf 114.396 0 Td [(psb_sort_up_)]TJ/F8 9.9626 Tf 62.764 0 Td [(,)]TJ/F30 9.9626 Tf 5.203 0 Td [(psb_sort_down_)]TJ/F8 9.9626 Tf 73.225 0 Td [(,)]TJ/F30 9.9626 Tf 5.203 0 Td [(psb_asort_up_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)]TJ/F30 9.9626 Tf -306.868 -11.955 Td [(psb_asort_down_)]TJ/F8 9.9626 Tf 78.456 0 Td [(;)-333(default)]TJ/F30 9.9626 Tf 39.573 0 Td [(psb_sort_up_)]TJ/F8 9.9626 Tf 62.765 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -202.711 -17.233 Td [(Complex)-383(data:)]TJ +/F27 9.9626 Tf -260.887 -19.925 Td [(iact)]TJ 0 g 0 G -/F30 9.9626 Tf 78.337 0 Td [(psb_lsort_up_)]TJ/F8 9.9626 Tf 67.995 0 Td [(,)]TJ/F30 9.9626 Tf 5.203 0 Td [(psb_lsort_down_)]TJ/F8 9.9626 Tf 78.455 0 Td [(,)]TJ/F30 9.9626 Tf 5.202 0 Td [(psb_asort_up_)]TJ/F8 9.9626 Tf 67.995 0 Td [(,)]TJ/F30 9.9626 Tf 5.203 0 Td [(psb_asort_down_)]TJ/F8 9.9626 Tf 78.455 0 Td [(;)]TJ -364.928 -11.955 Td [(default)]TJ/F30 9.9626 Tf 33.486 0 Td [(psb_lsort_up_)]TJ/F8 9.9626 Tf 67.995 0 Td [(.)]TJ +/F8 9.9626 Tf 23.281 0 Td [(sp)-28(eci\014es)-333(action)-334(to)-333(b)-28(e)-333(tak)28(en)-334(in)-333(case)-333(of)-334(range)-333(errors.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 257.147 0 Td [(global)]TJ/F8 9.9626 Tf -255.521 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-256(c)28(haracter)-255(v)56(ariable)]TJ/F30 9.9626 Tf 143.584 0 Td [(I)]TJ/F8 9.9626 Tf 5.23 0 Td [(gnore,)]TJ/F30 9.9626 Tf 29.293 0 Td [(W)]TJ/F8 9.9626 Tf 5.23 0 Td [(arning)-255(or)]TJ/F30 9.9626 Tf 41.67 0 Td [(A)]TJ/F8 9.9626 Tf 5.231 0 Td [(b)-28(ort,)-270(default)]TJ/F30 9.9626 Tf 56.741 0 Td [(I)]TJ/F8 9.9626 Tf 5.231 0 Td [(gnore.)]TJ 0 g 0 G -/F27 9.9626 Tf -148.305 -22.511 Td [(\015ag)]TJ +/F27 9.9626 Tf -317.117 -21.917 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 22.644 0 Td [(Whether)-333(to)-334(k)28(eep)-333(the)-334(origi)1(nal)-334(v)56(alues)-334(in)]TJ/F11 9.9626 Tf 170.583 0 Td [(I)-78(X)]TJ/F8 9.9626 Tf 14.197 0 Td [(.)]TJ -182.517 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.956 Td [(Sp)-28(eci\014ed)-222(as:)-389(an)-222(in)28(teger)-222(v)55(alue)]TJ/F30 9.9626 Tf 125.446 0 Td [(psb_sort_ovw_idx_)]TJ/F8 9.9626 Tf 91.13 0 Td [(or)]TJ/F30 9.9626 Tf 11.097 0 Td [(psb_sort_keep_idx_)]TJ/F8 9.9626 Tf 94.146 0 Td [(;)]TJ -321.819 -11.955 Td [(default)]TJ/F30 9.9626 Tf 33.485 0 Td [(psb_sort_ovw_idx_)]TJ/F8 9.9626 Tf 88.916 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -147.308 -24.503 Td [(On)-383(Return)]TJ + 0 -19.926 Td [(x)]TJ 0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(If)]TJ/F11 9.9626 Tf 10.133 0 Td [(y)]TJ/F8 9.9626 Tf 8.733 0 Td [(is)-350(not)-351(presen)28(t,)-355(then)]TJ/F11 9.9626 Tf 88.586 0 Td [(x)]TJ/F8 9.9626 Tf 9.185 0 Td [(is)-350(o)27(v)28(erwritten)-350(with)-351(th)1(e)-351(translated)-350(in)28(teger)-351(indices.)]TJ -102.758 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(in)27(teger)-333(arra)28(y)83(.)]TJ 0 g 0 G - 0 -22.511 Td [(x)]TJ +/F27 9.9626 Tf -24.907 -19.926 Td [(y)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(The)-333(sequence)-334(of)-333(v)55(alu)1(e)-1(s,)-333(in)-333(the)-334(c)28(hosen)-333(ordering.)]TJ 13.879 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger,)-333(real)-334(or)-333(complex)-333(arra)27(y)-333(of)-333(rank)-333(1.)]TJ +/F8 9.9626 Tf 11.028 0 Td [(If)]TJ/F11 9.9626 Tf 10.167 0 Td [(y)]TJ/F8 9.9626 Tf 8.767 0 Td [(is)-354(not)-354(presen)28(t,)-359(then)]TJ/F11 9.9626 Tf 88.732 0 Td [(y)]TJ/F8 9.9626 Tf 8.766 0 Td [(is)-354(o)28(v)28(erwritten)-354(with)-354(the)-354(translated)-353(in)27(teger)-353(indices,)]TJ -102.553 -11.955 Td [(and)]TJ/F11 9.9626 Tf 19.372 0 Td [(x)]TJ/F8 9.9626 Tf 9.015 0 Td [(is)-333(left)-334(unc)28(hanged.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 113.242 0 Td [(global)]TJ/F8 9.9626 Tf -141.629 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(in)27(teger)-333(arra)28(y)83(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -22.511 Td [(ix)]TJ +/F27 9.9626 Tf -24.907 -19.926 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 14.211 0 Td [(A)-333(v)28(e)-1(ctor)-333(of)-333(indices.)]TJ 10.696 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-332(in)27(teger)-332(arra)28(y)-333(of)-332(rank)-332(1,)-333(whose)-333(en)28(tries)-332(are)-333(mo)28(v)28(ed)-333(to)-332(the)-333(same)-332(p)-28(osition)]TJ 0 -11.955 Td [(as)-333(the)-334(corresp)-27(onding)-334(en)28(tries)-333(in)]TJ/F11 9.9626 Tf 136.958 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ 0 g 0 G - -3.175 -43.727 Td [(102)]TJ + 141.968 -115.11 Td [(97)]TJ 0 g 0 G ET endstream endobj -1557 0 obj +1565 0 obj << -/Length 6995 +/Length 3294 >> -stream -0 g 0 G -0 g 0 G -BT -/F16 11.9552 Tf 99.895 706.129 Td [(Notes)]TJ -0 g 0 G -/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ -0 g 0 G - [-500(F)83(or)-466(in)28(tege)-1(r)-466(or)-467(real)-466(data)-467(the)-467(sorting)-466(can)-467(b)-28(e)-466(p)-28(erformed)-467(in)-466(the)-467(up/do)28(wn)]TJ 12.73 -11.956 Td [(direction,)-333(on)-334(th)1(e)-334(natural)-333(or)-333(absolute)-334(v)56(alues;)]TJ -0 g 0 G - -12.73 -19.925 Td [(2.)]TJ -0 g 0 G - [-500(F)83(or)-397(complex)-398(data)-398(the)-397(sorting)-398(can)-398(b)-27(e)-398(done)-398(in)-397(a)-398(lexicographic)-398(order)-397(\050i.e.:)]TJ 12.73 -11.955 Td [(sort)-316(on)-316(the)-315(real)-316(part)-316(with)-316(ties)-316(br)1(ok)27(en)-316(accordin)1(g)-316(to)-316(the)-316(imaginary)-316(part\051)-315(or)]TJ 0 -11.955 Td [(on)-333(the)-334(absolute)-333(v)56(alues;)]TJ -0 g 0 G - -12.73 -19.925 Td [(3.)]TJ -0 g 0 G - [-500(The)-257(routines)-258(retur)1(n)-258(the)-257(items)-257(in)-258(the)-257(c)28(hosen)-257(ordering;)-283(the)-257(output)-257(di\013erence)]TJ 12.73 -11.956 Td [(is)-259(the)-259(handling)-259(of)-259(ties)-259(\050i.e.)-419(items)-259(with)-259(an)-259(equal)-259(v)56(alue\051)-259(in)-259(the)-259(original)-259(input.)]TJ 0 -11.955 Td [(With)-493(the)-493(merge-sort)-493(algorithm)-493(ties)-493(are)-493(preserv)27(ed)-493(in)-493(the)-493(same)-493(relativ)28(e)]TJ 0 -11.955 Td [(order)-405(as)-406(they)-405(had)-406(in)-405(the)-405(original)-406(sequence,)-423(while)-406(this)-405(is)-406(not)-405(guaran)28(teed)]TJ 0 -11.955 Td [(for)-333(quic)28(ksort)-334(or)-333(heapsort;)]TJ -0 g 0 G - -12.73 -19.925 Td [(4.)]TJ -0 g 0 G - [-500(If)]TJ/F11 9.9626 Tf 21.889 0 Td [(f)-108(l)-19(ag)]TJ/F8 9.9626 Tf 22.262 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(psb)]TJ -ET -q -1 0 0 1 181.295 542.941 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F11 9.9626 Tf 184.284 542.742 Td [(sor)-28(t)]TJ -ET -q -1 0 0 1 202.749 542.941 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q +stream +0 g 0 G +0 g 0 G BT -/F11 9.9626 Tf 205.738 542.742 Td [(ov)-36(w)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.19)-1125(psb)]TJ ET q -1 0 0 1 223.752 542.941 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 209.121 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F11 9.9626 Tf 226.741 542.742 Td [(idx)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(is)]TJ ET q -1 0 0 1 241.65 542.941 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 223.004 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F8 9.9626 Tf 247.157 542.742 Td [(then)-253(the)-252(en)27(tries)-252(in)]TJ/F11 9.9626 Tf 80.169 0 Td [(ix)]TJ/F8 9.9626 Tf 9.126 0 Td [(\0501)-278(:)]TJ/F11 9.9626 Tf 17.158 0 Td [(n)]TJ/F8 9.9626 Tf 5.979 0 Td [(\051)-253(where)]TJ/F11 9.9626 Tf 34.398 0 Td [(n)]TJ/F8 9.9626 Tf 8.497 0 Td [(is)-253(the)-252(s)-1(i)1(z)-1(e)]TJ -277.682 -11.956 Td [(of)]TJ/F11 9.9626 Tf 11.91 0 Td [(x)]TJ/F8 9.9626 Tf 9.579 0 Td [(are)-390(initialized)-390(to)]TJ/F11 9.9626 Tf 76.44 0 Td [(ix)]TJ/F8 9.9626 Tf 9.126 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(\051)]TJ/F14 9.9626 Tf 7.581 0 Td [(\040)]TJ/F11 9.9626 Tf 13.67 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(;)-418(th)28(us,)-404(up)-28(on)-390(return)-390(from)-390(the)-390(subroutine,)]TJ -139.046 -11.955 Td [(for)-333(eac)28(h)-334(index)]TJ/F11 9.9626 Tf 64.505 0 Td [(i)]TJ/F8 9.9626 Tf 6.751 0 Td [(w)28(e)-334(ha)28(v)28(e)-333(in)]TJ/F11 9.9626 Tf 49.257 0 Td [(ix)]TJ/F8 9.9626 Tf 9.126 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)-333(the)-333(p)-28(osition)-333(that)-334(th)1(e)-334(item)]TJ/F11 9.9626 Tf 123.751 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)-333(o)-28(ccupied)]TJ -273.697 -11.955 Td [(in)-333(the)-334(original)-333(data)-333(sequence;)]TJ +/F16 11.9552 Tf 227.039 706.129 Td [(o)31(wned)-375(|)]TJ 0 g 0 G - -12.73 -19.925 Td [(5.)]TJ 0 g 0 G - [-500(If)]TJ/F11 9.9626 Tf 23.404 0 Td [(f)-108(l)-19(ag)]TJ/F8 9.9626 Tf 23.446 0 Td [(=)]TJ/F11 9.9626 Tf 11.701 0 Td [(psb)]TJ -ET -q -1 0 0 1 185.179 487.15 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F11 9.9626 Tf 188.168 486.951 Td [(sor)-28(t)]TJ +/F30 9.9626 Tf -76.334 -18.389 Td [(call)-525(psb_is_owned\050x,)-525(desc_a\051)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(In)28(teger)-334(ind)1(e)-1(x.)]TJ 13.878 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(scalar)-333(in)28(teg)-1(er.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -31.88 Td [(desc)]TJ ET q -1 0 0 1 206.634 487.15 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 172.619 546.469 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F11 9.9626 Tf 209.622 486.951 Td [(k)-32(eep)]TJ +/F27 9.9626 Tf 176.057 546.27 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 230.011 487.15 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 362.845 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F11 9.9626 Tf 232.999 486.951 Td [(idx)]TJ +/F30 9.9626 Tf 365.983 498.449 Td [(desc)]TJ ET q -1 0 0 1 247.909 487.15 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 387.532 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 254.929 486.951 Td [(the)-405(routine)-404(will)-405(assume)-405(that)-404(the)-405(en)28(tries)-405(in)]TJ/F11 9.9626 Tf -130.127 -11.955 Td [(ix)]TJ/F8 9.9626 Tf 9.126 0 Td [(\050:\051)-333(ha)28(v)27(e)-333(already)-333(b)-28(een)-333(initialized)-334(b)28(y)-333(the)-334(user;)]TJ -0 g 0 G - -21.856 -19.926 Td [(6.)]TJ +/F30 9.9626 Tf 390.67 498.449 Td [(type)]TJ 0 g 0 G - [-500(The)-376(three)-375(sorting)-376(algorithms)-376(ha)28(v)28(e)-376(a)-375(s)-1(imilar)]TJ/F11 9.9626 Tf 208.295 0 Td [(O)]TJ/F8 9.9626 Tf 7.876 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(n)]TJ/F8 9.9626 Tf 7.641 0 Td [(log)]TJ/F11 9.9626 Tf 14.528 0 Td [(n)]TJ/F8 9.9626 Tf 5.98 0 Td [(\051)-376(exp)-27(e)-1(cted)-375(running)]TJ -235.464 -11.955 Td [(time;)-349(in)-343(the)-344(a)28(v)28(erage)-344(case)-343(quic)27(ksort)-343(will)-344(b)-27(e)-344(the)-344(fastest)-343(and)-344(merge-sort)-343(the)]TJ 0 -11.955 Td [(slo)28(w)28(e)-1(st.)-444(Ho)28(w)28(e)-1(v)28(er)-333(note)-333(that:)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G - 4.206 -19.925 Td [(\050a\051)]TJ +/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ 0 g 0 G - [-500(The)-419(w)28(orst)-419(case)-419(runn)1(ing)-419(time)-419(for)-419(quic)28(ksort)-419(is)]TJ/F11 9.9626 Tf 221.059 0 Td [(O)]TJ/F8 9.9626 Tf 7.876 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(n)]TJ/F7 6.9738 Tf 5.98 3.615 Td [(2)]TJ/F8 9.9626 Tf 4.47 -3.615 Td [(\051;)-461(the)-419(algorithm)]TJ -225.547 -11.955 Td [(implemen)28(ted)-319(here)-319(follo)28(ws)-319(the)-319(w)27(ell-kno)28(wn)-319(median-of-three)-319(heuristics,)]TJ 0 -11.956 Td [(but)-333(the)-334(w)28(orst)-333(case)-334(ma)28(y)-333(still)-334(ap)1(ply;)]TJ 0 g 0 G - -18.265 -15.94 Td [(\050b\051)]TJ + 0 -19.926 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G - [-500(The)-222(w)28(orst)-223(case)-222(running)-222(time)-222(for)-222(m)-1(erge-sort)-222(and)-222(heap-sort)-222(is)]TJ/F11 9.9626 Tf 273.309 0 Td [(O)]TJ/F8 9.9626 Tf 7.876 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(n)]TJ/F8 9.9626 Tf 7.64 0 Td [(log)]TJ/F11 9.9626 Tf 14.529 0 Td [(n)]TJ/F8 9.9626 Tf 5.98 0 Td [(\051)]TJ -294.943 -11.955 Td [(as)-333(the)-334(a)28(v)28(erage)-334(case;)]TJ +/F8 9.9626 Tf 78.386 0 Td [(A)-302(logical)-301(mask)-302(whic)28(h)-302(is)-302(tru)1(e)-302(if)]TJ/F11 9.9626 Tf 134.085 0 Td [(x)]TJ/F8 9.9626 Tf 8.7 0 Td [(is)-302(o)28(wned)-302(b)28(y)-301(the)-302(curren)28(t)-302(pro-)]TJ -196.265 -11.955 Td [(cess)-334(Scop)-27(e:)]TJ/F27 9.9626 Tf 52.415 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -52.415 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ/F16 11.9552 Tf -74.941 -33.873 Td [(Notes)]TJ 0 g 0 G - -17.158 -15.94 Td [(\050c\051)]TJ +/F8 9.9626 Tf 12.176 -19.926 Td [(1.)]TJ 0 g 0 G - [-500(The)-358(merge-sort)-358(algorithm)-357(is)-358(implemen)28(ted)-358(to)-358(tak)28(e)-358(adv)56(an)28(tage)-358(of)-358(sub-)]TJ 17.158 -11.955 Td [(sequences)-401(that)-400(ma)28(y)-401(b)-28(e)-400(already)-401(in)-400(the)-401(d)1(e)-1(sired)-400(ordering)-400(prior)-401(to)-400(the)]TJ 0 -11.956 Td [(subroutine)-246(call;)-275(this)-246(situation)-246(is)-247(relativ)28(ely)-246(common)-246(when)-246(dealing)-246(with)]TJ 0 -11.955 Td [(groups)-301(of)-301(indices)-301(of)-302(sparse)-301(matrix)-301(en)28(tries,)-308(th)28(us)-301(merge-sort)-301(is)-302(the)-301(pre-)]TJ 0 -11.955 Td [(ferred)-249(c)28(hoice)-249(when)-249(a)-249(sorting)-248(is)-249(needed)-249(b)28(y)-249(other)-249(routines)-249(in)-248(the)-249(library)83(.)]TJ + [-500(This)-300(routine)-300(r)1(e)-1(tu)1(rns)-300(a)]TJ/F30 9.9626 Tf 111.214 0 Td [(.true.)]TJ/F8 9.9626 Tf 34.368 0 Td [(v)56(alue)-300(for)-300(an)-300(index)-299(that)-300(is)-300(strictly)-300(o)28(wned)-300(b)28(y)]TJ -132.852 -11.955 Td [(the)-333(curren)27(t)-333(pro)-28(cess,)-333(excluding)-333(the)-334(halo)-333(indices)]TJ 0 g 0 G - 117.559 -205.23 Td [(103)]TJ + 141.968 -264.549 Td [(98)]TJ 0 g 0 G ET endstream endobj -1458 0 obj +1468 0 obj << /Type /ObjStm /N 100 -/First 972 -/Length 10532 +/First 976 +/Length 10549 >> stream -1455 0 1456 59 1457 118 1452 177 1463 270 1459 427 1460 572 1461 716 1465 859 352 917 -1462 974 1469 1093 1466 1241 1467 1384 1471 1531 356 1590 1468 1648 1473 1754 1475 1872 360 1930 -1472 1987 1478 2119 1476 2258 1480 2403 364 2462 1477 2520 1482 2639 1484 2757 1485 2815 1486 2873 -1481 2931 1490 3011 1488 3150 1492 3296 368 3355 1489 3413 1495 3532 1493 3671 1497 3818 372 3876 -1498 3933 1494 3991 1501 4110 1499 4249 1503 4395 376 4454 1504 4512 1500 4571 1507 4690 1505 4829 -1509 4976 380 5034 1510 5091 1506 5149 1513 5268 1511 5407 1515 5553 384 5612 1516 5670 1512 5729 -1519 5848 1517 5987 1521 6133 388 6191 1522 6248 1523 6306 1518 6364 1527 6470 1525 6609 1529 6754 -392 6813 1530 6871 1531 6930 1526 6989 1534 7095 1532 7234 1536 7379 396 7437 1533 7494 1538 7613 -1540 7731 1541 7790 1542 7849 1543 7908 1537 7967 1548 8086 1544 8243 1545 8388 1546 8535 1550 8680 -400 8738 1547 8795 1552 8914 1554 9032 405 9091 1551 9149 1556 9268 1558 9386 1559 9444 1560 9502 -% 1455 0 obj -<< -/D [1453 0 R /XYZ 149.705 753.953 null] ->> -% 1456 0 obj -<< -/D [1453 0 R /XYZ 150.705 632.405 null] ->> -% 1457 0 obj -<< -/D [1453 0 R /XYZ 150.705 609.989 null] ->> +1452 0 1457 146 1458 291 1462 436 1463 494 1464 552 1465 610 1466 668 1467 726 1459 784 +1470 903 1472 1021 1473 1080 1474 1139 1475 1198 1476 1257 1477 1315 1478 1374 1469 1433 1482 1526 +1479 1674 1480 1820 1484 1965 344 2023 1481 2080 1487 2186 1489 2304 1490 2363 1491 2422 1492 2481 +1493 2540 1494 2599 1495 2658 1486 2716 1499 2796 1496 2944 1497 3088 1501 3235 348 3293 1498 3350 +1505 3456 1502 3604 1503 3748 1507 3894 352 3953 1508 4011 1504 4070 1512 4176 1509 4324 1510 4469 +1514 4613 356 4671 1511 4728 1518 4847 1515 4995 1516 5141 1520 5285 360 5344 1517 5402 1522 5521 +1524 5639 1525 5697 1526 5755 1521 5813 1532 5906 1528 6063 1529 6209 1530 6353 1534 6496 364 6555 +1531 6613 1538 6732 1535 6880 1536 7023 1540 7169 368 7227 1537 7284 1542 7390 1544 7508 372 7567 +1541 7625 1547 7757 1545 7896 1549 8042 376 8100 1546 8157 1551 8276 1553 8394 1554 8453 1555 8512 +1550 8571 1558 8651 1556 8790 1560 8937 380 8995 1557 9052 1564 9171 1562 9310 1566 9456 384 9515 % 1452 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F16 570 0 R >> -/ProcSet [ /PDF /Text ] ->> -% 1463 0 obj -<< -/Type /Page -/Contents 1464 0 R -/Resources 1462 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1451 0 R -/Annots [ 1459 0 R 1460 0 R 1461 0 R ] ->> -% 1459 0 obj -<< /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [261.152 574.94 328.21 586.065] +/Rect [261.152 655.098 328.21 666.223] /A << /S /GoTo /D (descdata) >> >> -% 1460 0 obj +% 1457 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [269.918 483.284 345.972 494.409] -/A << /S /GoTo /D (vdata) >> +/Rect [294.721 488.124 372.239 499.249] +/A << /S /GoTo /D (spdata) >> >> -% 1461 0 obj +% 1458 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [187.733 381.665 263.787 392.79] -/A << /S /GoTo /D (vdata) >> +/Rect [261.152 420.91 328.21 432.035] +/A << /S /GoTo /D (descdata) >> >> -% 1465 0 obj +% 1462 0 obj << -/D [1463 0 R /XYZ 98.895 753.953 null] +/D [1460 0 R /XYZ 98.895 753.953 null] >> -% 352 0 obj +% 1463 0 obj << -/D [1463 0 R /XYZ 99.895 720.077 null] +/D [1460 0 R /XYZ 99.895 321.172 null] >> -% 1462 0 obj +% 1464 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> -/ProcSet [ /PDF /Text ] +/D [1460 0 R /XYZ 99.895 289.823 null] >> -% 1469 0 obj +% 1465 0 obj << -/Type /Page -/Contents 1470 0 R -/Resources 1468 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1451 0 R -/Annots [ 1466 0 R 1467 0 R ] +/D [1460 0 R /XYZ 99.895 256.537 null] >> % 1466 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [238.542 562.985 314.596 574.11] -/A << /S /GoTo /D (vdata) >> +/D [1460 0 R /XYZ 99.895 189.322 null] >> % 1467 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [311.962 483.284 379.019 494.409] -/A << /S /GoTo /D (descdata) >> ->> -% 1471 0 obj -<< -/D [1469 0 R /XYZ 149.705 753.953 null] ->> -% 356 0 obj -<< -/D [1469 0 R /XYZ 150.705 720.077 null] +/D [1460 0 R /XYZ 99.895 169.929 null] >> -% 1468 0 obj +% 1459 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R /F16 582 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1473 0 obj +% 1470 0 obj << /Type /Page -/Contents 1474 0 R -/Resources 1472 0 R +/Contents 1471 0 R +/Resources 1469 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1451 0 R +/Parent 1436 0 R >> -% 1475 0 obj +% 1472 0 obj << -/D [1473 0 R /XYZ 98.895 753.953 null] +/D [1470 0 R /XYZ 149.705 753.953 null] >> -% 360 0 obj +% 1473 0 obj << -/D [1473 0 R /XYZ 99.895 720.077 null] +/D [1470 0 R /XYZ 150.705 716.092 null] >> -% 1472 0 obj +% 1474 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R /F10 786 0 R >> -/ProcSet [ /PDF /Text ] +/D [1470 0 R /XYZ 150.705 652.386 null] >> -% 1478 0 obj +% 1475 0 obj << -/Type /Page -/Contents 1479 0 R -/Resources 1477 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1451 0 R -/Annots [ 1476 0 R ] +/D [1470 0 R /XYZ 150.705 607.997 null] >> % 1476 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 484.86 412.588 495.985] -/A << /S /GoTo /D (descdata) >> +/D [1470 0 R /XYZ 150.705 576.67 null] >> -% 1480 0 obj +% 1477 0 obj << -/D [1478 0 R /XYZ 149.705 753.953 null] +/D [1470 0 R /XYZ 150.705 544.789 null] >> -% 364 0 obj +% 1478 0 obj << -/D [1478 0 R /XYZ 150.705 720.077 null] +/D [1470 0 R /XYZ 150.705 500.954 null] >> -% 1477 0 obj +% 1469 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> +/Font << /F8 585 0 R /F11 796 0 R /F14 813 0 R >> /ProcSet [ /PDF /Text ] >> % 1482 0 obj @@ -18935,1037 +18783,1374 @@ stream /Contents 1483 0 R /Resources 1481 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1487 0 R +/Parent 1485 0 R +/Annots [ 1479 0 R 1480 0 R ] +>> +% 1479 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [294.721 576.23 361.779 587.355] +/A << /S /GoTo /D (descdata) >> +>> +% 1480 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [294.721 205.776 372.239 216.901] +/A << /S /GoTo /D (spdata) >> >> % 1484 0 obj << /D [1482 0 R /XYZ 98.895 753.953 null] >> -% 1485 0 obj +% 344 0 obj << /D [1482 0 R /XYZ 99.895 716.092 null] >> -% 1486 0 obj -<< -/D [1482 0 R /XYZ 99.895 688.251 null] ->> % 1481 0 obj << -/Font << /F8 573 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1490 0 obj +% 1487 0 obj << /Type /Page -/Contents 1491 0 R -/Resources 1489 0 R +/Contents 1488 0 R +/Resources 1486 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1487 0 R -/Annots [ 1488 0 R ] +/Parent 1485 0 R >> -% 1488 0 obj +% 1489 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 483.284 412.588 494.409] -/A << /S /GoTo /D (descdata) >> +/D [1487 0 R /XYZ 149.705 753.953 null] +>> +% 1490 0 obj +<< +/D [1487 0 R /XYZ 150.705 716.092 null] +>> +% 1491 0 obj +<< +/D [1487 0 R /XYZ 150.705 687.975 null] >> % 1492 0 obj << -/D [1490 0 R /XYZ 149.705 753.953 null] +/D [1487 0 R /XYZ 150.705 668.326 null] >> -% 368 0 obj +% 1493 0 obj << -/D [1490 0 R /XYZ 150.705 720.077 null] +/D [1487 0 R /XYZ 150.705 624.491 null] >> -% 1489 0 obj +% 1494 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> -/ProcSet [ /PDF /Text ] +/D [1487 0 R /XYZ 150.705 580.655 null] >> % 1495 0 obj << +/D [1487 0 R /XYZ 150.705 560.73 null] +>> +% 1486 0 obj +<< +/Font << /F8 585 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1499 0 obj +<< /Type /Page -/Contents 1496 0 R -/Resources 1494 0 R +/Contents 1500 0 R +/Resources 1498 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1487 0 R -/Annots [ 1493 0 R ] +/Parent 1485 0 R +/Annots [ 1496 0 R 1497 0 R ] >> -% 1493 0 obj +% 1496 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 495.239 361.779 506.364] -/A << /S /GoTo /D (descdata) >> +/Rect [294.721 574.94 372.239 586.065] +/A << /S /GoTo /D (spdata) >> >> % 1497 0 obj << -/D [1495 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [294.721 507.194 361.779 518.319] +/A << /S /GoTo /D (descdata) >> >> -% 372 0 obj +% 1501 0 obj << -/D [1495 0 R /XYZ 99.895 720.077 null] +/D [1499 0 R /XYZ 98.895 753.953 null] >> -% 1498 0 obj +% 348 0 obj << -/D [1495 0 R /XYZ 99.895 382.883 null] +/D [1499 0 R /XYZ 99.895 716.092 null] >> -% 1494 0 obj +% 1498 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1501 0 obj +% 1505 0 obj << /Type /Page -/Contents 1502 0 R -/Resources 1500 0 R +/Contents 1506 0 R +/Resources 1504 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1487 0 R -/Annots [ 1499 0 R ] +/Parent 1485 0 R +/Annots [ 1502 0 R 1503 0 R ] >> -% 1499 0 obj +% 1502 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 495.239 412.588 506.364] -/A << /S /GoTo /D (descdata) >> +/Rect [345.53 560.993 423.049 572.118] +/A << /S /GoTo /D (spdata) >> >> % 1503 0 obj << -/D [1501 0 R /XYZ 149.705 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.53 493.247 412.588 504.372] +/A << /S /GoTo /D (descdata) >> +>> +% 1507 0 obj +<< +/D [1505 0 R /XYZ 149.705 753.953 null] >> -% 376 0 obj +% 352 0 obj << -/D [1501 0 R /XYZ 150.705 720.077 null] +/D [1505 0 R /XYZ 150.705 716.092 null] >> -% 1504 0 obj +% 1508 0 obj << -/D [1501 0 R /XYZ 150.705 259.346 null] +/D [1505 0 R /XYZ 150.705 313.144 null] >> -% 1500 0 obj +% 1504 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1507 0 obj +% 1512 0 obj << /Type /Page -/Contents 1508 0 R -/Resources 1506 0 R +/Contents 1513 0 R +/Resources 1511 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1487 0 R -/Annots [ 1505 0 R ] +/Parent 1485 0 R +/Annots [ 1509 0 R 1510 0 R ] >> -% 1505 0 obj +% 1509 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 495.239 361.779 506.364] +/Rect [261.152 574.94 328.21 586.065] /A << /S /GoTo /D (descdata) >> >> -% 1509 0 obj +% 1510 0 obj << -/D [1507 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [213.774 290.009 289.828 301.134] +/A << /S /GoTo /D (vdata) >> >> -% 380 0 obj +% 1514 0 obj << -/D [1507 0 R /XYZ 99.895 720.077 null] +/D [1512 0 R /XYZ 98.895 753.953 null] >> -% 1510 0 obj +% 356 0 obj << -/D [1507 0 R /XYZ 99.895 382.883 null] +/D [1512 0 R /XYZ 99.895 716.092 null] >> -% 1506 0 obj +% 1511 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1513 0 obj +% 1518 0 obj << /Type /Page -/Contents 1514 0 R -/Resources 1512 0 R +/Contents 1519 0 R +/Resources 1517 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1487 0 R -/Annots [ 1511 0 R ] +/Parent 1485 0 R +/Annots [ 1515 0 R 1516 0 R ] >> -% 1511 0 obj +% 1515 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 495.239 412.588 506.364] +/Rect [345.53 363.459 412.588 374.584] /A << /S /GoTo /D (descdata) >> >> -% 1515 0 obj +% 1516 0 obj << -/D [1513 0 R /XYZ 149.705 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [416.591 141.026 492.645 152.151] +/A << /S /GoTo /D (vdata) >> >> -% 384 0 obj +% 1520 0 obj << -/D [1513 0 R /XYZ 150.705 720.077 null] +/D [1518 0 R /XYZ 149.705 753.953 null] >> -% 1516 0 obj +% 360 0 obj << -/D [1513 0 R /XYZ 150.705 259.346 null] +/D [1518 0 R /XYZ 150.705 716.092 null] >> -% 1512 0 obj +% 1517 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1519 0 obj +% 1522 0 obj << /Type /Page -/Contents 1520 0 R -/Resources 1518 0 R +/Contents 1523 0 R +/Resources 1521 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1524 0 R -/Annots [ 1517 0 R ] +/Parent 1527 0 R >> -% 1517 0 obj +% 1524 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 574.94 361.779 586.065] -/A << /S /GoTo /D (descdata) >> +/D [1522 0 R /XYZ 98.895 753.953 null] >> -% 1521 0 obj +% 1525 0 obj << -/D [1519 0 R /XYZ 98.895 753.953 null] +/D [1522 0 R /XYZ 99.895 632.405 null] >> -% 388 0 obj +% 1526 0 obj << -/D [1519 0 R /XYZ 99.895 720.077 null] +/D [1522 0 R /XYZ 99.895 609.989 null] >> -% 1522 0 obj +% 1521 0 obj << -/D [1519 0 R /XYZ 99.895 370.928 null] +/Font << /F27 584 0 R /F8 585 0 R /F16 582 0 R >> +/ProcSet [ /PDF /Text ] >> -% 1523 0 obj +% 1532 0 obj << -/D [1519 0 R /XYZ 99.895 327.092 null] +/Type /Page +/Contents 1533 0 R +/Resources 1531 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1527 0 R +/Annots [ 1528 0 R 1529 0 R 1530 0 R ] >> -% 1518 0 obj +% 1528 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> -/ProcSet [ /PDF /Text ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [311.962 574.94 379.019 586.065] +/A << /S /GoTo /D (descdata) >> >> -% 1527 0 obj +% 1529 0 obj << -/Type /Page -/Contents 1528 0 R -/Resources 1526 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1524 0 R -/Annots [ 1525 0 R ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [320.727 483.284 396.781 494.409] +/A << /S /GoTo /D (vdata) >> >> -% 1525 0 obj +% 1530 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 574.94 412.588 586.065] -/A << /S /GoTo /D (descdata) >> ->> -% 1529 0 obj -<< -/D [1527 0 R /XYZ 149.705 753.953 null] +/Rect [238.542 381.665 314.596 392.79] +/A << /S /GoTo /D (vdata) >> >> -% 392 0 obj +% 1534 0 obj << -/D [1527 0 R /XYZ 150.705 720.077 null] +/D [1532 0 R /XYZ 149.705 753.953 null] >> -% 1530 0 obj +% 364 0 obj << -/D [1527 0 R /XYZ 150.705 370.928 null] +/D [1532 0 R /XYZ 150.705 716.092 null] >> % 1531 0 obj << -/D [1527 0 R /XYZ 150.705 339.047 null] ->> -% 1526 0 obj -<< -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1534 0 obj +% 1538 0 obj << /Type /Page -/Contents 1535 0 R -/Resources 1533 0 R +/Contents 1539 0 R +/Resources 1537 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1524 0 R -/Annots [ 1532 0 R ] +/Parent 1527 0 R +/Annots [ 1535 0 R 1536 0 R ] >> -% 1532 0 obj +% 1535 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 492.904 372.239 504.029] -/A << /S /GoTo /D (spdata) >> +/Rect [187.733 562.985 263.787 574.11] +/A << /S /GoTo /D (vdata) >> >> % 1536 0 obj << -/D [1534 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [261.152 483.284 328.21 494.409] +/A << /S /GoTo /D (descdata) >> +>> +% 1540 0 obj +<< +/D [1538 0 R /XYZ 98.895 753.953 null] >> -% 396 0 obj +% 368 0 obj << -/D [1534 0 R /XYZ 99.895 720.077 null] +/D [1538 0 R /XYZ 99.895 716.092 null] >> -% 1533 0 obj +% 1537 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1538 0 obj +% 1542 0 obj << /Type /Page -/Contents 1539 0 R -/Resources 1537 0 R +/Contents 1543 0 R +/Resources 1541 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1524 0 R ->> -% 1540 0 obj -<< -/D [1538 0 R /XYZ 149.705 753.953 null] ->> -% 1541 0 obj -<< -/D [1538 0 R /XYZ 150.705 496.913 null] +/Parent 1527 0 R >> -% 1542 0 obj +% 1544 0 obj << -/D [1538 0 R /XYZ 150.705 439.185 null] +/D [1542 0 R /XYZ 149.705 753.953 null] >> -% 1543 0 obj +% 372 0 obj << -/D [1538 0 R /XYZ 150.705 418.983 null] +/D [1542 0 R /XYZ 150.705 716.092 null] >> -% 1537 0 obj +% 1541 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R /F16 570 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R /F10 812 0 R >> /ProcSet [ /PDF /Text ] >> -% 1548 0 obj +% 1547 0 obj << /Type /Page -/Contents 1549 0 R -/Resources 1547 0 R +/Contents 1548 0 R +/Resources 1546 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1524 0 R -/Annots [ 1544 0 R 1545 0 R 1546 0 R ] ->> -% 1544 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 529.112 372.239 540.237] -/A << /S /GoTo /D (spdata) >> +/Parent 1527 0 R +/Annots [ 1545 0 R ] >> % 1545 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 461.366 361.779 472.491] +/Rect [294.721 484.86 361.779 495.985] /A << /S /GoTo /D (descdata) >> >> +% 1549 0 obj +<< +/D [1547 0 R /XYZ 98.895 753.953 null] +>> +% 376 0 obj +<< +/D [1547 0 R /XYZ 99.895 716.092 null] +>> % 1546 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [321.343 405.575 388.401 416.7] -/A << /S /GoTo /D (precdata) >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> +/ProcSet [ /PDF /Text ] >> -% 1550 0 obj +% 1551 0 obj << -/D [1548 0 R /XYZ 98.895 753.953 null] +/Type /Page +/Contents 1552 0 R +/Resources 1550 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1527 0 R >> -% 400 0 obj +% 1553 0 obj << -/D [1548 0 R /XYZ 99.895 720.077 null] +/D [1551 0 R /XYZ 149.705 753.953 null] >> -% 1547 0 obj +% 1554 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F30 784 0 R /F27 572 0 R /F11 770 0 R >> +/D [1551 0 R /XYZ 150.705 716.092 null] +>> +% 1555 0 obj +<< +/D [1551 0 R /XYZ 150.705 688.251 null] +>> +% 1550 0 obj +<< +/Font << /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1552 0 obj +% 1558 0 obj << /Type /Page -/Contents 1553 0 R -/Resources 1551 0 R +/Contents 1559 0 R +/Resources 1557 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1524 0 R +/Parent 1561 0 R +/Annots [ 1556 0 R ] >> -% 1554 0 obj +% 1556 0 obj << -/D [1552 0 R /XYZ 149.705 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [294.721 483.284 361.779 494.409] +/A << /S /GoTo /D (descdata) >> >> -% 405 0 obj +% 1560 0 obj << -/D [1552 0 R /XYZ 150.705 720.077 null] +/D [1558 0 R /XYZ 98.895 753.953 null] >> -% 1551 0 obj +% 380 0 obj +<< +/D [1558 0 R /XYZ 99.895 716.092 null] +>> +% 1557 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F11 770 0 R /F27 572 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1556 0 obj +% 1564 0 obj << /Type /Page -/Contents 1557 0 R -/Resources 1555 0 R +/Contents 1565 0 R +/Resources 1563 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1568 0 R +/Parent 1561 0 R +/Annots [ 1562 0 R ] >> -% 1558 0 obj +% 1562 0 obj << -/D [1556 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.53 495.239 412.588 506.364] +/A << /S /GoTo /D (descdata) >> >> -% 1559 0 obj +% 1566 0 obj << -/D [1556 0 R /XYZ 99.895 702.144 null] +/D [1564 0 R /XYZ 149.705 753.953 null] >> -% 1560 0 obj +% 384 0 obj << -/D [1556 0 R /XYZ 99.895 668.326 null] +/D [1564 0 R /XYZ 150.705 716.092 null] >> endstream endobj 1572 0 obj << -/Length 187 +/Length 4991 >> stream 0 g 0 G 0 g 0 G BT -/F16 14.3462 Tf 150.705 706.129 Td [(7)-1125(P)31(arallel)-375(en)32(v)-1(ironmen)32(t)-375(routines)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.20)-1125(psb)]TJ +ET +q +1 0 0 1 158.311 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 162.346 706.129 Td [(o)31(wned)]TJ +ET +q +1 0 0 1 200.299 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 204.333 706.129 Td [(index)-375(|)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -104.438 -18.389 Td [(call)-525(psb_owned_index\050y,)-525(x,)-525(desc_a,)-525(info\051)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(In)28(teger)-334(indices.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in,)-383(inout)]TJ/F8 9.9626 Tf 42.645 0 Td [(.)]TJ -76.131 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(scalar)-333(or)-334(a)-333(rank)-333(one)-333(in)27(teger)-333(arra)28(y)83(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -31.88 Td [(desc)]TJ +ET +q +1 0 0 1 121.81 546.469 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 125.247 546.27 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 312.036 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 315.174 498.449 Td [(desc)]TJ +ET +q +1 0 0 1 336.723 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 339.861 498.449 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -260.887 -19.925 Td [(iact)]TJ +0 g 0 G +/F8 9.9626 Tf 23.281 0 Td [(sp)-28(eci\014es)-333(action)-334(to)-333(b)-28(e)-333(tak)28(en)-334(in)-333(case)-333(of)-334(range)-333(errors.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 257.147 0 Td [(global)]TJ/F8 9.9626 Tf -255.521 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-256(c)28(haracter)-255(v)56(ariable)]TJ/F30 9.9626 Tf 143.584 0 Td [(I)]TJ/F8 9.9626 Tf 5.23 0 Td [(gnore,)]TJ/F30 9.9626 Tf 29.293 0 Td [(W)]TJ/F8 9.9626 Tf 5.23 0 Td [(arning)-255(or)]TJ/F30 9.9626 Tf 41.67 0 Td [(A)]TJ/F8 9.9626 Tf 5.231 0 Td [(b)-28(ort,)-270(default)]TJ/F30 9.9626 Tf 56.741 0 Td [(I)]TJ/F8 9.9626 Tf 5.231 0 Td [(gnore.)]TJ +0 g 0 G +/F27 9.9626 Tf -317.117 -21.918 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.926 Td [(y)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(A)-294(logical)-294(mask)-294(whic)28(h)-294(is)-294(true)-294(for)-294(all)-294(corresp)-28(onding)-294(en)28(tries)-294(of)]TJ/F11 9.9626 Tf 259.229 0 Td [(x)]TJ/F8 9.9626 Tf 8.623 0 Td [(that)-294(are)-294(o)28(wned)]TJ -253.973 -11.955 Td [(b)28(y)-333(the)-334(curren)28(t)-333(pro)-28(cess)-334(Scop)-27(e:)]TJ/F27 9.9626 Tf 132.752 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -132.752 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(scalar)-333(or)-334(ran)1(k)-334(one)-333(logical)-333(arra)27(y)84(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.926 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ +0 g 0 G +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ 0 g 0 G -/F8 9.9626 Tf 164.383 -615.691 Td [(104)]TJ + [-500(This)-475(routine)-474(returns)-475(a)]TJ/F30 9.9626 Tf 118.186 0 Td [(.true.)]TJ/F8 9.9626 Tf 36.111 0 Td [(v)56(alue)-475(for)-475(those)-475(indices)-474(that)-475(are)-475(strictly)]TJ -141.567 -11.955 Td [(o)28(wned)-334(b)28(y)-333(the)-333(curren)27(t)-333(pro)-28(cess,)-333(excluding)-333(the)-334(halo)-333(indices)]TJ +0 g 0 G + 141.968 -141.013 Td [(99)]TJ 0 g 0 G ET endstream endobj -1576 0 obj +1578 0 obj << -/Length 5567 +/Length 3263 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.21)-1125(psb)]TJ +ET +q +1 0 0 1 209.121 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 213.156 706.129 Td [(is)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 223.004 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(init)-375(|)-375(Initializes)-375(PSBLAS)-375(parallel)-375(en)31(vironmen)31(t)]TJ +/F16 11.9552 Tf 227.039 706.129 Td [(lo)-31(cal)-375(|)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_init\050icontxt,)-525(np,)-525(basectxt,)-525(ids\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-294(subroutine)-294(initializes)-294(th)1(e)-294(PSBLAS)-294(parallel)-294(en)28(vironmen)28(t,)-302(de\014ning)-294(a)-294(vir-)]TJ -14.944 -11.955 Td [(tual)-333(parallel)-334(mac)28(hine.)]TJ +/F30 9.9626 Tf -76.334 -18.389 Td [(call)-525(psb_is_local\050x,)-525(desc_a\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(np)]TJ + 0 -19.925 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 17.712 0 Td [(Num)28(b)-28(er)-333(of)-334(pr)1(o)-28(cesses)-334(in)-333(the)-333(PSBLAS)-334(virtual)-333(parallel)-333(mac)27(h)1(ine.)]TJ 7.195 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-778(Default)1(:)-445(use)-333(all)-334(a)28(v)56(ailable)-334(p)1(ro)-28(cesses)-1(.)]TJ +/F8 9.9626 Tf 11.028 0 Td [(In)28(teger)-334(ind)1(e)-1(x.)]TJ 13.878 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(scalar)-333(in)28(teg)-1(er.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(basectxt)]TJ +/F27 9.9626 Tf -24.906 -31.88 Td [(desc)]TJ +ET +q +1 0 0 1 172.619 546.469 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 176.057 546.27 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 46.736 0 Td [(the)-356(initial)-357(comm)28(unication)-356(con)28(text.)-514(The)-356(new)-357(con)28(text)-356(will)-357(b)-27(e)-357(de\014ned)]TJ -21.829 -11.955 Td [(from)-333(the)-334(pro)-27(cess)-1(es)-333(participating)-333(in)-333(the)-334(initial)-333(one.)]TJ 0 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-778(Default)1(:)-445(use)-333(MPI)]TJ +/F8 9.9626 Tf 10.55 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 339.182 466.768 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 362.845 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 342.171 466.569 Td [(COMM)]TJ +/F30 9.9626 Tf 365.983 498.449 Td [(desc)]TJ ET q -1 0 0 1 375.977 466.768 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 387.532 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 378.966 466.569 Td [(W)28(ORLD.)]TJ -0 g 0 G -/F27 9.9626 Tf -279.071 -19.925 Td [(ids)]TJ -0 g 0 G -/F8 9.9626 Tf 19.048 0 Td [(Iden)28(tities)-497(of)-497(the)-497(pro)-28(cesses)-497(to)-497(use)-497(for)-497(the)-498(n)1(e)-1(w)-497(con)28(text;)-579(the)-497(argumen)28(t)-497(is)]TJ 5.859 -11.956 Td [(ignored)-428(when)]TJ/F30 9.9626 Tf 63.346 0 Td [(np)]TJ/F8 9.9626 Tf 14.722 0 Td [(is)-428(not)-428(sp)-27(eci\014ed.)-728(This)-428(allo)28(ws)-428(the)-428(pro)-27(ce)-1(sses)-427(in)-428(the)-428(new)]TJ -78.068 -11.955 Td [(en)28(vironmen)28(t)-334(to)-333(b)-28(e)-333(in)-333(an)-334(order)-333(di\013eren)28(t)-334(fr)1(om)-334(the)-333(original)-333(one.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)84(.)-778(Default:)-444(use)-334(the)-333(indices)-333(\0500)]TJ/F11 9.9626 Tf 254.158 0 Td [(:)-167(:)-166(:)-167(np)]TJ/F14 9.9626 Tf 26.49 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1\051.)]TJ -0 g 0 G -/F27 9.9626 Tf -315.518 -21.918 Td [(On)-383(Return)]TJ +/F30 9.9626 Tf 390.67 498.449 Td [(type)]TJ 0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ +/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-458(comm)28(unication)-457(con)27(text)-457(iden)28(tifying)-458(the)-457(virtual)-458(paral)1(le)-1(l)-457(mac)28(hine.)]TJ -15.082 -11.956 Td [(Note)-335(that)-335(this)-335(is)-336(alw)28(a)28(ys)-335(a)-335(duplicate)-335(of)]TJ/F30 9.9626 Tf 169.952 0 Td [(basectxt)]TJ/F8 9.9626 Tf 41.843 0 Td [(,)-336(so)-335(that)-335(library)-335(comm)28(u-)]TJ -211.795 -11.955 Td [(nications)-305(are)-305(completely)-305(s)-1(eparated)-305(from)-305(other)-305(comm)28(unication)-305(op)-28(erations.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ/F16 11.9552 Tf -24.907 -21.917 Td [(Notes)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ + 0 -19.926 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G - [-500(A)-333(call)-334(to)-333(this)-333(routine)-334(m)28(ust)-333(precede)-334(an)28(y)-333(other)-333(PSBLAS)-334(call.)]TJ +/F8 9.9626 Tf 78.386 0 Td [(A)-264(logical)-265(mask)-264(whic)27(h)-264(is)-265(true)-264(if)]TJ/F11 9.9626 Tf 131.492 0 Td [(x)]TJ/F8 9.9626 Tf 8.329 0 Td [(is)-265(lo)-27(cal)-265(to)-264(the)-265(curren)28(t)-264(pro)-28(cess)]TJ -193.301 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ/F16 11.9552 Tf -74.941 -33.873 Td [(Notes)]TJ 0 g 0 G - 0 -19.925 Td [(2.)]TJ +/F8 9.9626 Tf 12.176 -19.926 Td [(1.)]TJ 0 g 0 G - [-500(It)-262(is)-262(an)-262(error)-262(to)-262(sp)-28(ecify)-262(a)-262(v)56(alue)-262(for)]TJ/F11 9.9626 Tf 159.869 0 Td [(np)]TJ/F8 9.9626 Tf 13.603 0 Td [(greater)-262(than)-262(the)-262(n)28(um)28(b)-28(er)-262(of)-262(pro)-28(cesses)]TJ -160.742 -11.955 Td [(a)28(v)55(ailable)-333(in)-333(the)-334(un)1(derlying)-334(base)-333(parallel)-333(en)27(vir)1(onme)-1(n)28(t.)]TJ + [-500(This)-239(routine)-239(returns)-239(a)]TJ/F30 9.9626 Tf 108.787 0 Td [(.true.)]TJ/F8 9.9626 Tf 33.762 0 Td [(v)56(alue)-239(for)-239(an)-239(index)-239(that)-239(is)-239(lo)-27(cal)-239(to)-239(the)-239(curren)28(t)]TJ -129.819 -11.955 Td [(pro)-28(cess,)-333(including)-333(the)-334(halo)-333(indices)]TJ 0 g 0 G - 139.477 -97.177 Td [(105)]TJ + 139.477 -264.549 Td [(100)]TJ 0 g 0 G ET endstream endobj -1582 0 obj +1584 0 obj << -/Length 4639 +/Length 4975 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.22)-1125(psb)]TJ +ET +q +1 0 0 1 158.311 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 162.346 706.129 Td [(lo)-31(cal)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 190.239 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(info)-306(|)-307(Return)-306(information)-306(ab)-31(out)-307(PSBLAS)-306(parallel)-306(en-)]TJ -25.091 -13.948 Td [(vironmen)31(t)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf 0 -18.389 Td [(call)-525(psb_info\050icontxt,)-525(iam,)-525(np\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-456(subroutine)-456(returns)-456(in)1(formation)-456(ab)-28(out)-456(the)-456(PSBLAS)-456(p)1(arallel)-456(en)27(viron)1(-)]TJ -14.944 -11.955 Td [(men)28(t,)-334(de\014n)1(ing)-334(a)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -19.925 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ +/F16 11.9552 Tf 194.274 706.129 Td [(index)-375(|)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -94.379 -18.389 Td [(call)-525(psb_local_index\050y,)-525(x,)-525(desc_a,)-525(info\051)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(In)28(teger)-334(indices.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in,)-383(inout)]TJ/F8 9.9626 Tf 42.645 0 Td [(.)]TJ -76.131 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(scalar)-333(or)-334(a)-333(rank)-333(one)-333(in)27(teger)-333(arra)28(y)83(.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -31.88 Td [(desc)]TJ +ET +q +1 0 0 1 121.81 546.469 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 125.247 546.27 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 312.036 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 315.174 498.449 Td [(desc)]TJ +ET +q +1 0 0 1 336.723 498.649 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 339.861 498.449 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -260.887 -19.925 Td [(iact)]TJ 0 g 0 G +/F8 9.9626 Tf 23.281 0 Td [(sp)-28(eci\014es)-333(action)-334(to)-333(b)-28(e)-333(tak)28(en)-334(in)-333(case)-333(of)-334(range)-333(errors.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 257.147 0 Td [(global)]TJ/F8 9.9626 Tf -255.521 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-255(as:)-405(a)-256(c)28(haracter)-255(v)56(ariable)]TJ/F30 9.9626 Tf 143.584 0 Td [(I)]TJ/F8 9.9626 Tf 5.23 0 Td [(gnore,)]TJ/F30 9.9626 Tf 29.293 0 Td [(W)]TJ/F8 9.9626 Tf 5.23 0 Td [(arning)-255(or)]TJ/F30 9.9626 Tf 41.67 0 Td [(A)]TJ/F8 9.9626 Tf 5.231 0 Td [(b)-28(ort,)-270(default)]TJ/F30 9.9626 Tf 56.741 0 Td [(I)]TJ/F8 9.9626 Tf 5.231 0 Td [(gnore.)]TJ 0 g 0 G - 0 -19.925 Td [(iam)]TJ +/F27 9.9626 Tf -317.117 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 23.281 0 Td [(Iden)28(ti\014er)-333(of)-334(curren)28(t)-333(pro)-28(cess)-333(in)-334(the)-333(PSBLAS)-333(virtual)-334(p)1(arallel)-334(mac)28(hine.)]TJ 1.626 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue.)]TJ/F14 9.9626 Tf 134.302 0 Td [(\000)]TJ/F8 9.9626 Tf 7.748 0 Td [(1)]TJ/F14 9.9626 Tf 7.749 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(iam)]TJ/F14 9.9626 Tf 20.213 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.207 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1)]TJ 0 g 0 G -/F27 9.9626 Tf -239.12 -19.926 Td [(np)]TJ + 0 -19.926 Td [(y)]TJ 0 g 0 G -/F8 9.9626 Tf 17.711 0 Td [(Num)28(b)-28(er)-333(of)-334(pro)-27(cess)-1(es)-333(in)-333(the)-334(PS)1(BL)-1(AS)-333(virtual)-333(parallel)-333(mac)27(hin)1(e)-1(.)]TJ 7.196 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ +/F8 9.9626 Tf 11.028 0 Td [(A)-346(logical)-345(mask)-346(whic)28(h)-346(is)-345(true)-346(for)-345(all)-346(corresp)-28(onding)-345(en)28(tries)-346(of)]TJ/F11 9.9626 Tf 264.883 0 Td [(x)]TJ/F8 9.9626 Tf 9.136 0 Td [(that)-346(are)-345(lo)-28(cal)]TJ -260.14 -11.955 Td [(to)-333(the)-334(curren)28(t)-333(pro)-28(cess)-333(Scop)-28(e:)]TJ/F27 9.9626 Tf 131.092 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -131.092 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(scalar)-333(or)-334(ran)1(k)-334(one)-333(logical)-333(arra)27(y)84(.)]TJ 0 g 0 G -/F8 9.9626 Tf 12.176 -19.926 Td [(1.)]TJ +/F27 9.9626 Tf -24.907 -19.926 Td [(info)]TJ 0 g 0 G - [-500(F)83(or)-500(pro)-27(cess)-1(es)-500(in)-500(the)-500(vir)1(tual)-500(parallel)-500(mac)27(hine)-500(the)-500(iden)28(ti\014er)-500(will)-500(satisfy)]TJ 12.731 -11.955 Td [(0)]TJ/F14 9.9626 Tf 7.748 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(iam)]TJ/F14 9.9626 Tf 20.213 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.207 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1;)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ 0 g 0 G - -84.893 -19.925 Td [(2.)]TJ +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ 0 g 0 G - [-500(If)-432(the)-433(user)-432(has)-433(requested)-432(on)]TJ/F30 9.9626 Tf 143.131 0 Td [(psb_init)]TJ/F8 9.9626 Tf 46.15 0 Td [(a)-432(n)27(um)28(b)-28(er)-432(of)-432(pro)-28(cesses)-433(less)-432(than)]TJ -176.551 -11.955 Td [(the)-417(total)-416(a)28(v)55(ailable)-416(in)-417(the)-416(parallel)-417(execution)-416(en)28(vironmen)28(t,)-438(the)-416(remaining)]TJ 0 -11.955 Td [(pro)-28(cesses)-359(will)-359(ha)28(v)28(e)-359(on)-359(return)]TJ/F11 9.9626 Tf 130.487 0 Td [(iam)]TJ/F8 9.9626 Tf 20.638 0 Td [(=)]TJ/F14 9.9626 Tf 10.942 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1;)-372(the)-359(only)-359(call)-359(i)1(n)27(v)28(olving)]TJ/F30 9.9626 Tf 112.377 0 Td [(icontxt)]TJ/F8 9.9626 Tf -282.192 -11.956 Td [(that)-333(an)28(y)-334(suc)28(h)-333(pro)-28(cess)-334(ma)28(y)-333(execute)-334(is)-333(to)]TJ/F30 9.9626 Tf 177.086 0 Td [(psb_exit)]TJ/F8 9.9626 Tf 41.842 0 Td [(.)]TJ + [-500(This)-308(routine)-309(retur)1(ns)-309(a)]TJ/F30 9.9626 Tf 111.554 0 Td [(.true.)]TJ/F8 9.9626 Tf 34.454 0 Td [(v)56(alue)-309(for)-308(those)-308(indices)-309(that)-308(are)-308(lo)-28(cal)-308(to)-309(the)]TJ -133.278 -11.955 Td [(curren)28(t)-333(pro)-28(cess,)-334(including)-333(the)-333(halo)-333(indices.)]TJ 0 g 0 G - -79.452 -174.885 Td [(106)]TJ + 139.477 -141.013 Td [(101)]TJ 0 g 0 G ET endstream endobj -1588 0 obj +1590 0 obj << -/Length 4356 +/Length 3846 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.23)-1125(psb)]TJ +ET +q +1 0 0 1 209.121 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 213.156 706.129 Td [(get)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 232.054 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(exit)-375(|)-375(Exit)-375(from)-375(PSBLAS)-375(parallel)-375(en)31(vironmen)31(t)]TJ +/F16 11.9552 Tf 236.089 706.129 Td [(b)-31(oundary)-543(|)-542(Extract)-543(list)-542(of)-543(b)-31(oundary)-543(ele-)]TJ -48.024 -13.948 Td [(men)31(ts)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_exit\050icontxt\051)]TJ 0 -11.956 Td [(call)-525(psb_exit\050icontxt,close\051)]TJ/F8 9.9626 Tf 14.944 -21.917 Td [(This)-333(subroutine)-334(exits)-333(from)-333(the)-334(PSBLAS)-333(parallel)-333(virtual)-333(mac)27(hine.)]TJ +/F30 9.9626 Tf -37.36 -18.389 Td [(call)-525(psb_get_boundary\050bndel,)-525(desc,)-525(info\051)]TJ 0 g 0 G -/F27 9.9626 Tf -14.944 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ + 0 -19.926 Td [(desc)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ +/F8 9.9626 Tf 26.208 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -1.302 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 362.845 564.402 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 365.983 564.203 Td [(desc)]TJ +ET +q +1 0 0 1 387.532 564.402 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 390.67 564.203 Td [(type)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(close)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 28.755 0 Td [(Whether)-401(to)-401(clos)-1(e)-401(all)-401(data)-401(structures)-401(relate)-1(d)-401(to)-401(the)-401(virtual)-401(parallel)-401(m)-1(a-)]TJ -3.848 -11.955 Td [(c)28(hine,)-334(b)-27(esides)-334(those)-333(asso)-28(ciated)-333(with)-334(icon)28(txt.)]TJ 0 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(v)55(ariable,)-333(default)-333(v)55(alu)1(e)-1(:)-444(true.)]TJ/F16 11.9552 Tf -24.907 -19.925 Td [(Notes)]TJ +/F27 9.9626 Tf -260.887 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ 0 g 0 G - [-500(This)-241(routine)-241(ma)28(y)-241(b)-28(e)-241(called)-241(ev)28(en)-241(if)-241(a)-241(previous)-241(call)-241(to)]TJ/F30 9.9626 Tf 233.305 0 Td [(psb_info)]TJ/F8 9.9626 Tf 44.244 0 Td [(has)-241(returned)]TJ -264.819 -11.955 Td [(with)]TJ/F11 9.9626 Tf 22.963 0 Td [(iam)]TJ/F8 9.9626 Tf 20.662 0 Td [(=)]TJ/F14 9.9626 Tf 10.966 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1;)-374(indeed,)-367(it)-360(it)-361(is)-360(the)-361(only)-360(routine)-360(that)-361(ma)28(y)-360(b)-28(e)-361(called)-360(with)]TJ -62.34 -11.955 Td [(argumen)28(t)]TJ/F30 9.9626 Tf 44.583 0 Td [(icontxt)]TJ/F8 9.9626 Tf 39.933 0 Td [(in)-333(this)-334(situation.)]TJ + 0 -19.925 Td [(bndel)]TJ 0 g 0 G - -97.246 -19.925 Td [(2.)]TJ +/F8 9.9626 Tf 32.51 0 Td [(The)-268(list)-267(of)-268(b)-27(oundary)-268(elemen)28(ts)-268(on)-267(the)-268(calling)-267(pro)-28(cess,)-281(in)-267(lo)-28(cal)-268(n)28(um)28(b)-28(ering.)]TJ -7.604 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-456(as:)-691(a)-457(rank)-456(one)-457(arra)28(y)-457(with)-456(the)-457(ALLOCA)84(T)83(ABLE)-456(attribute,)-488(of)]TJ 0 -11.955 Td [(t)28(yp)-28(e)-333(in)27(teger.)]TJ 0 g 0 G - [-500(A)-305(call)-306(to)-305(this)-305(routine)-305(with)]TJ/F30 9.9626 Tf 128.752 0 Td [(close=.true.)]TJ/F8 9.9626 Tf 65.806 0 Td [(implies)-305(a)-306(call)-305(to)]TJ/F30 9.9626 Tf 71.445 0 Td [(MPI_Finalize)]TJ/F8 9.9626 Tf 62.764 0 Td [(,)]TJ -316.037 -11.956 Td [(after)-333(whic)27(h)-333(no)-333(parallel)-333(routine)-334(ma)28(y)-333(b)-28(e)-333(called.)]TJ +/F27 9.9626 Tf -24.906 -31.881 Td [(info)]TJ 0 g 0 G - -12.73 -19.925 Td [(3.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ/F16 11.9552 Tf -24.906 -21.918 Td [(Notes)]TJ +0 g 0 G +/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ +0 g 0 G + [-500(If)-269(there)-269(are)-269(no)-269(b)-28(oundary)-269(elemen)28(ts)-269(\050i.e.,)-282(if)-269(the)-269(lo)-28(cal)-269(part)-269(of)-269(the)-270(connectivit)28(y)]TJ 12.73 -11.956 Td [(graph)-449(is)-450(self-con)28(tained\051)-450(the)-449(output)-450(v)28(ector)-449(is)-450(set)-449(to)-450(the)-449(\134not)-450(allo)-28(cated")]TJ 0 -11.955 Td [(state.)]TJ +0 g 0 G + -12.73 -19.925 Td [(2.)]TJ 0 g 0 G - [-500(If)-391(the)-390(user)-391(whishes)-391(to)-390(use)-391(m)28(ultiple)-391(comm)28(unication)-391(con)28(texts)-391(in)-390(the)-391(same)]TJ 12.73 -11.955 Td [(program,)-485(or)-455(to)-455(en)28(ter)-455(and)-454(e)-1(xi)1(t)-455(m)27(ul)1(tiple)-455(times)-455(in)28(to)-455(the)-455(parallel)-455(en)28(viron-)]TJ 0 -11.955 Td [(men)28(t,)-494(this)-462(routine)-462(ma)28(y)-462(b)-28(e)-462(called)-462(to)-462(selectiv)28(ely)-462(close)-463(th)1(e)-462(c)-1(on)28(texts)-462(with)]TJ/F30 9.9626 Tf 0 -11.955 Td [(close=.false.)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)-244(while)-223(on)-222(the)-222(last)-222(call)-223(it)-222(should)-222(b)-28(e)-222(called)-222(with)]TJ/F30 9.9626 Tf 194.328 0 Td [(close=.true.)]TJ/F8 9.9626 Tf -262.322 -11.955 Td [(to)-333(sh)27(utd)1(o)27(wn)-333(in)-333(a)-334(clean)-333(w)28(a)28(y)-334(the)-333(en)28(tire)-334(parallel)-333(en)28(vironmen)28(t.)]TJ + [-500(Otherwise)-288(the)-289(size)-288(of)]TJ/F30 9.9626 Tf 105.44 0 Td [(bndel)]TJ/F8 9.9626 Tf 29.024 0 Td [(will)-288(b)-28(e)-288(exactly)-288(e)-1(qu)1(al)-289(to)-288(the)-288(n)28(um)27(b)-27(er)-289(of)-288(b)-28(oun)1(d-)]TJ -121.734 -11.955 Td [(ary)-333(elemen)27(ts.)]TJ 0 g 0 G - 139.477 -212.744 Td [(107)]TJ + 139.477 -194.811 Td [(102)]TJ 0 g 0 G ET endstream endobj -1595 0 obj +1597 0 obj << -/Length 2608 +/Length 3666 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.24)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 158.311 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(get)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(get)]TJ ET q -1 0 0 1 194.695 706.328 cm +1 0 0 1 181.245 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 198.729 706.129 Td [(mpi)]TJ +/F16 11.9552 Tf 185.28 706.129 Td [(o)31(v)31(erlap)-375(|)-375(Extract)-375(list)-375(of)-375(o)32(v)31(erlap)-375(elemen)31(ts)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -85.385 -18.389 Td [(call)-525(psb_get_overlap\050ovrel,)-525(desc,)-525(info\051)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(desc)]TJ +0 g 0 G +/F8 9.9626 Tf 26.209 0 Td [(the)-333(comm)27(unication)-333(descriptor.)]TJ -1.302 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 312.036 578.35 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 315.174 578.15 Td [(desc)]TJ ET q -1 0 0 1 221.952 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 336.723 578.35 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 225.987 706.129 Td [(comm)-375(|)-375(Get)-375(the)-375(MPI)-375(comm)31(unicator)]TJ -0 g 0 G +/F30 9.9626 Tf 339.861 578.15 Td [(type)]TJ 0 g 0 G -/F30 9.9626 Tf -75.282 -18.389 Td [(icomm)-525(=)-525(psb_get_mpi_comm\050icontxt\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-450(function)-450(returns)-451(the)-450(MPI)-450(comm)27(u)1(nicator)-451(asso)-28(ciated)-450(with)-450(a)-451(PS)1(B)-1(LAS)]TJ -14.944 -11.955 Td [(con)28(text)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -260.887 -21.917 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ + 0 -19.926 Td [(o)32(vrel)]TJ 0 g 0 G +/F8 9.9626 Tf 29.591 0 Td [(The)-333(list)-334(of)-333(o)28(v)28(erlap)-334(elemen)28(ts)-333(on)-334(the)-333(calling)-333(pro)-28(cess,)-333(in)-334(lo)-28(cal)-333(n)28(um)28(b)-28(ering.)]TJ -4.684 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-456(as:)-691(a)-457(rank)-456(one)-457(arra)28(y)-456(with)-457(the)-457(ALLOCA)84(T)83(ABLE)-456(attribute,)-488(of)]TJ 0 -11.955 Td [(t)28(yp)-28(e)-333(in)28(te)-1(ger.)]TJ 0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ +/F27 9.9626 Tf -24.907 -31.881 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.956 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.917 Td [(Notes)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ +/F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ 0 g 0 G + [-500(If)-343(there)-343(are)-344(no)-343(o)28(v)28(erlap)-344(elemen)28(ts)-343(the)-343(output)-344(v)28(ector)-343(is)-343(set)-344(to)-343(the)-343(\134not)-343(allo-)]TJ 12.73 -11.955 Td [(cated")-333(state.)]TJ 0 g 0 G - 0 -19.925 Td [(F)96(unction)-384(v)64(alue)]TJ + -12.73 -19.925 Td [(2.)]TJ 0 g 0 G -/F8 9.9626 Tf 78.386 0 Td [(The)-314(MPI)-314(comm)28(unicator)-314(as)-1(so)-27(ciated)-314(w)-1(i)1(th)-315(th)1(e)-315(PSBLAS)-314(virtual)]TJ -53.479 -11.955 Td [(parallel)-333(mac)27(h)1(ine.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ/F16 11.9552 Tf -74.941 -33.873 Td [(Notes)]TJ/F8 9.9626 Tf 37.587 0 Td [(The)-369(subroutine)-368(v)27(ersion)]TJ/F30 9.9626 Tf 104.726 0 Td [(psb_get_mpicomm)]TJ/F8 9.9626 Tf 82.129 0 Td [(is)-369(still)-369(a)28(v)56(ailable)-369(but)-369(is)-368(dep-)]TJ -224.442 -11.955 Td [(recated.)]TJ + [-500(Otherwise)-284(the)-284(size)-283(of)]TJ/F30 9.9626 Tf 105.261 0 Td [(ovrel)]TJ/F8 9.9626 Tf 28.979 0 Td [(will)-284(b)-27(e)-284(exactly)-284(equal)-284(to)-284(th)1(e)-284(n)28(um)27(b)-27(er)-284(of)-284(o)28(v)28(erlap)]TJ -121.51 -11.955 Td [(elemen)28(ts.)]TJ 0 g 0 G - 164.383 -320.34 Td [(108)]TJ + 139.477 -220.714 Td [(103)]TJ 0 g 0 G ET endstream endobj -1599 0 obj +1605 0 obj << -/Length 3456 +/Length 5828 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 124.986 706.129 Td [(get)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.25)-1125(psb)]TJ ET q -1 0 0 1 143.885 706.328 cm +1 0 0 1 209.121 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 147.92 706.129 Td [(mpi)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(sp)]TJ ET q -1 0 0 1 171.143 706.328 cm +1 0 0 1 226.74 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.178 706.129 Td [(rank)-375(|)-375(Get)-375(the)-375(MPI)-375(rank)]TJ +/F16 11.9552 Tf 230.775 706.129 Td [(getro)31(w)-433(|)-433(E)-1(xtract)-433(ro)31(w\050s\051)-433(from)-434(a)-433(sparse)-433(ma-)]TJ -42.71 -13.948 Td [(trix)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -75.283 -18.389 Td [(rank)-525(=)-525(psb_get_mpi_rank\050icontxt,)-525(id\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-333(function)-334(return)1(s)-334(the)-333(MPI)-333(rank)-334(of)-333(the)-333(PSBLAS)-334(pro)-27(cess)]TJ/F11 9.9626 Tf 264.343 0 Td [(id)]TJ +/F30 9.9626 Tf -37.36 -18.389 Td [(call)-525(psb_sp_getrow\050row,)-525(a,)-525(nz,)-525(ia,)-525(ja,)-525(val,)-525(info,)-525(&)]TJ 73.225 -11.955 Td [(&)-525(append,)-525(nzin,)-525(lrw\051)]TJ 0 g 0 G -/F27 9.9626 Tf -279.287 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -73.225 -20.298 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ -0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(id)]TJ -0 g 0 G -/F8 9.9626 Tf 14.529 0 Td [(Iden)28(ti\014er)-333(of)-334(a)-333(pro)-28(cess)-333(in)-334(the)-333(PSBLAS)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ 10.378 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(0)]TJ/F14 9.9626 Tf 142.051 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(id)]TJ/F14 9.9626 Tf 11.385 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1)]TJ +/F27 9.9626 Tf -33.797 -19.277 Td [(On)-383(En)32(try)]TJ 0 g 0 G -/F27 9.9626 Tf -222.544 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G + 0 -19.277 Td [(ro)32(w)]TJ 0 g 0 G - 0 -19.925 Td [(F)96(unciton)-384(v)64(alue)]TJ -0 g 0 G -/F8 9.9626 Tf 78.387 0 Td [(The)-333(MPI)-334(rank)-333(asso)-28(ciated)-333(with)-333(the)-334(PSBLAS)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 230.248 0 Td [(id)]TJ/F8 9.9626 Tf 8.617 0 Td [(.)]TJ -292.345 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ/F16 11.9552 Tf -74.942 -33.873 Td [(Notes)]TJ/F8 9.9626 Tf 38.324 0 Td [(The)-443(subroutin)1(e)-443(v)28(ersion)]TJ/F30 9.9626 Tf 106.934 0 Td [(psb_get_rank)]TJ/F8 9.9626 Tf 67.174 0 Td [(is)-443(still)-442(a)27(v)56(ailable)-443(bu)1(t)-443(is)-443(depre-)]TJ -212.432 -11.956 Td [(cated.)]TJ +/F8 9.9626 Tf 23.384 0 Td [(The)-333(\050\014rst\051)-334(ro)28(w)-333(to)-334(b)-27(e)-334(extracted.)]TJ 1.523 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.95 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)]TJ/F11 9.9626 Tf 104.69 0 Td [(>)]TJ/F8 9.9626 Tf 10.517 0 Td [(0.)]TJ 0 g 0 G - 164.384 -276.504 Td [(109)]TJ +/F27 9.9626 Tf -140.114 -19.277 Td [(a)]TJ 0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(the)-333(matrix)-334(from)-333(whic)28(h)-333(to)-334(get)-333(ro)28(ws.)]TJ 14.356 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.95 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf -25.183 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET - -endstream -endobj -1604 0 obj -<< -/Length 1202 ->> -stream -0 g 0 G -0 g 0 G +q +1 0 0 1 362.845 488.266 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F30 9.9626 Tf 365.983 488.067 Td [(Tspmat)]TJ ET q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 397.993 488.266 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(wtime)-375(|)-375(W)94(all)-375(clo)-31(c)31(k)-375(timing)]TJ +/F30 9.9626 Tf 401.131 488.067 Td [(type)]TJ 0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(time)-525(=)-525(psb_wtime\050\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-474(fun)1(c)-1(ti)1(o)-1(n)-473(returns)-474(a)-473(w)28(all)-474(clo)-28(c)28(k)-474(timer.)-865(The)-474(resolution)-473(of)-474(the)-473(timer)-474(is)]TJ -14.944 -11.955 Td [(dep)-28(enden)28(t)-333(on)-334(th)1(e)-334(underlying)-333(parallel)-333(en)28(vironmen)27(t)-333(implemen)28(tation.)]TJ +/F27 9.9626 Tf -271.347 -19.277 Td [(app)-32(end)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F8 9.9626 Tf 41.58 0 Td [(Whether)-333(to)-334(app)-27(end)-334(or)-333(o)28(v)28(erwrite)-334(existing)-333(output.)]TJ -16.674 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf -25.184 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(logical)-333(v)55(alue)-333(default:)-444(false)-334(\050o)28(v)28(erwrite\051.)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F27 9.9626 Tf -24.906 -19.277 Td [(nzin)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(Exit)]TJ +/F8 9.9626 Tf 25.986 0 Td [(Input)-333(size)-334(to)-333(b)-28(e)-333(app)-28(ended)-333(to.)]TJ -1.08 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf -25.184 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-398(as:)-573(an)-398(in)28(teger)]TJ/F11 9.9626 Tf 107.908 0 Td [(>)]TJ/F8 9.9626 Tf 11.588 0 Td [(0.)-638(When)-398(app)-28(end)-398(is)-397(true,)-414(s)-1(p)-27(eci\014es)-398(ho)28(w)-398(man)27(y)]TJ -119.496 -11.955 Td [(en)28(tries)-334(in)-333(the)-333(output)-333(v)27(ectors)-333(are)-333(already)-334(\014lled.)]TJ 0 g 0 G +/F27 9.9626 Tf -24.906 -19.277 Td [(lrw)]TJ 0 g 0 G - 0 -19.925 Td [(F)96(unction)-384(v)64(alue)]TJ +/F8 9.9626 Tf 21.156 0 Td [(The)-333(last)-334(ro)28(w)-333(to)-334(b)-27(e)-334(extracted.)]TJ 3.75 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -27.951 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf -25.184 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)]TJ/F11 9.9626 Tf 104.691 0 Td [(>)]TJ/F8 9.9626 Tf 10.516 0 Td [(0,)-333(default:)]TJ/F11 9.9626 Tf 48.43 0 Td [(r)-28(ow)]TJ/F8 9.9626 Tf 17.001 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 78.386 0 Td [(the)-333(elapsed)-334(time)-333(in)-333(sec)-1(on)1(ds.)]TJ -53.479 -11.955 Td [(Returned)-333(as:)-445(a)]TJ/F30 9.9626 Tf 68.299 0 Td [(real\050psb_dpk_\051)]TJ/F8 9.9626 Tf 76.546 0 Td [(v)56(ariable.)]TJ +/F27 9.9626 Tf -205.544 -20.297 Td [(On)-383(Return)]TJ 0 g 0 G - -5.369 -491.698 Td [(110)]TJ +0 g 0 G + 0 -19.277 Td [(nz)]TJ +0 g 0 G +/F8 9.9626 Tf 16.438 0 Td [(the)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(elemen)28(ts)-334(returned)-333(b)28(y)-334(thi)1(s)-334(call.)]TJ 8.468 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Returned)-333(as:)-445(an)-333(in)28(teger)-334(scalar.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -19.277 Td [(ia)]TJ +0 g 0 G +/F8 9.9626 Tf 13.733 0 Td [(the)-333(ro)27(w)-333(indices.)]TJ 11.173 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(with)-333(the)]TJ/F30 9.9626 Tf 170.611 0 Td [(ALLOCATABLE)]TJ/F8 9.9626 Tf 60.854 0 Td [(attribute.)]TJ +0 g 0 G + -91.988 -29.887 Td [(104)]TJ 0 g 0 G ET endstream endobj -1608 0 obj +1609 0 obj << -/Length 1484 +/Length 3702 >> stream 0 g 0 G 0 g 0 G +0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 124.986 706.129 Td [(barrier)-375(|)-375(Sinc)31(hronization)-375(p)-31(oin)31(t)-375(parallel)-375(en)32(vironmen)31(t)]TJ +/F27 9.9626 Tf 99.895 706.129 Td [(ja)]TJ +0 g 0 G +/F8 9.9626 Tf 14.052 0 Td [(the)-333(column)-334(indices)-333(of)-333(the)-334(elemen)28(ts)-333(to)-334(b)-27(e)-334(inserted.)]TJ 10.855 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(with)-333(the)]TJ/F30 9.9626 Tf 170.61 0 Td [(ALLOCATABLE)]TJ/F8 9.9626 Tf 60.855 0 Td [(attribute.)]TJ 0 g 0 G +/F27 9.9626 Tf -256.372 -19.925 Td [(v)64(al)]TJ 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_barrier\050icontxt\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-398(subroutine)-397(ac)-1(t)1(s)-398(as)-398(an)-398(explicit)-398(sync)28(hronization)-397(p)-28(oin)28(t)-398(for)-398(the)-398(PSBLAS)]TJ -14.944 -11.955 Td [(parallel)-333(virtual)-333(m)-1(ac)28(hine.)]TJ +/F8 9.9626 Tf 19.144 0 Td [(the)-333(elemen)27(ts)-333(to)-333(b)-28(e)-333(inserted.)]TJ 5.763 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -51.024 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(real)-333(arra)28(y)-334(with)-333(the)]TJ/F30 9.9626 Tf 151.515 0 Td [(ALLOCATABLE)]TJ/F8 9.9626 Tf 60.855 0 Td [(attribute.)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -237.277 -19.925 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ 0 g 0 G + [-500(The)-368(output)]TJ/F11 9.9626 Tf 66.552 0 Td [(nz)]TJ/F8 9.9626 Tf 14.717 0 Td [(is)-368(alw)28(a)28(ys)-368(the)-368(size)-368(of)-368(the)-368(output)-368(generated)-367(b)27(y)-367(the)-368(curren)28(t)]TJ -68.539 -11.955 Td [(call;)-314(th)28(us,)-309(if)]TJ/F30 9.9626 Tf 54.123 0 Td [(append=.true.)]TJ/F8 9.9626 Tf 67.995 0 Td [(,)-310(the)-303(total)-304(output)-304(size)-304(will)-303(b)-28(e)]TJ/F11 9.9626 Tf 128.95 0 Td [(nz)-44(in)]TJ/F8 9.9626 Tf 22.088 0 Td [(+)]TJ/F11 9.9626 Tf 9.373 0 Td [(nz)]TJ/F8 9.9626 Tf 11.051 0 Td [(,)-310(with)]TJ -293.58 -11.955 Td [(the)-372(newly)-372(extracted)-372(co)-28(e\016cien)28(ts)-372(stored)-372(in)-372(en)28(tries)]TJ/F30 9.9626 Tf 216.307 0 Td [(nzin+1:nzin+nz)]TJ/F8 9.9626 Tf 76.93 0 Td [(of)-372(the)]TJ -293.237 -11.955 Td [(arra)28(y)-333(argume)-1(n)28(ts;)]TJ 0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ + -12.73 -19.926 Td [(2.)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ + [-500(When)]TJ/F30 9.9626 Tf 41.788 0 Td [(append=.true.)]TJ/F8 9.9626 Tf 71.315 0 Td [(the)-333(output)-334(arr)1(a)27(ys)-333(are)-333(reallo)-28(cated)-334(as)-333(necessary;)]TJ 0 g 0 G - 139.477 -455.832 Td [(111)]TJ + -113.103 -19.925 Td [(3.)]TJ +0 g 0 G + [-500(The)-253(ro)28(w)-252(and)-253(column)-253(ind)1(ic)-1(es)-252(are)-253(returned)-252(in)-253(the)-253(lo)-27(cal)-253(n)28(um)28(b)-28(ering)-253(sc)28(heme;)-280(if)]TJ 12.73 -11.955 Td [(the)-222(global)-222(n)27(um)28(b)-28(erin)1(g)-223(is)-222(desired,)-244(the)-223(user)-222(ma)28(y)-222(emplo)27(y)-222(the)]TJ/F30 9.9626 Tf 243.172 0 Td [(psb_loc_to_glob)]TJ/F8 9.9626 Tf -243.172 -11.955 Td [(routine)-333(on)-334(th)1(e)-334(output.)]TJ +0 g 0 G + 139.477 -290.909 Td [(105)]TJ 0 g 0 G ET endstream endobj -1612 0 obj +1619 0 obj << -/Length 1357 +/Length 4138 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(6.26)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 209.121 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(ab)-31(ort)-375(|)-375(Ab)-31(ort)-375(a)-375(computation)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(sizeof)-375(|)-375(Memory)-375(o)-31(ccupation)]TJ/F8 9.9626 Tf -62.451 -18.389 Td [(This)-333(function)-334(computes)-333(the)-333(memory)-334(o)-27(c)-1(cup)1(ation)-334(of)-333(a)-333(PSBLAS)-334(ob)-55(ject.)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_abort\050icontxt\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-333(subroutine)-334(ab)-27(orts)-334(computation)-333(on)-333(the)-334(p)1(arallel)-334(virtual)-333(mac)28(hine.)]TJ +/F30 9.9626 Tf 0 -21.918 Td [(isz)-525(=)-525(psb_sizeof\050a\051)]TJ 0 -11.955 Td [(isz)-525(=)-525(psb_sizeof\050desc_a\051)]TJ 0 -11.956 Td [(isz)-525(=)-525(psb_sizeof\050prec\051)]TJ 0 g 0 G -/F27 9.9626 Tf -14.944 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.917 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G - 139.476 -467.787 Td [(112)]TJ + 0 -19.925 Td [(a)]TJ 0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(A)-333(sparse)-334(matrix)]TJ/F11 9.9626 Tf 73.225 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(.)]TJ -66.342 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET - -endstream -endobj -1616 0 obj -<< -/Length 4552 ->> -stream -0 g 0 G -0 g 0 G +q +1 0 0 1 362.845 532.522 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F30 9.9626 Tf 365.983 532.322 Td [(Tspmat)]TJ ET q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 397.993 532.522 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(b)-31(cast)-375(|)-375(Broadcast)-375(data)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_bcast\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-338(subroutine)-338(impleme)-1(n)28(ts)-338(a)-338(broadcast)-339(op)-27(eration)-338(base)-1(d)-338(on)-338(the)-338(underlying)]TJ -14.944 -11.955 Td [(comm)28(unication)-334(libr)1(ary)83(.)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +/F30 9.9626 Tf 401.131 532.322 Td [(type)]TJ 0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ +/F27 9.9626 Tf -271.347 -19.925 Td [(desc)]TJ +ET +q +1 0 0 1 172.619 512.596 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 176.057 512.397 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ +/F8 9.9626 Tf 10.55 0 Td [(Comm)28(unication)-334(descriptor.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 362.845 464.776 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 365.983 464.576 Td [(desc)]TJ +ET +q +1 0 0 1 387.532 464.776 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 390.67 464.576 Td [(type)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(On)-333(the)-334(ro)-27(ot)-334(pro)-27(ce)-1(ss,)-333(the)-333(data)-334(to)-333(b)-28(e)-333(broadcast.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(te)-1(ger,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-340(ma)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-403(a)-403(rank)-404(1)-403(or)-403(2)-403(arra)28(y)83(,)-421(or)-403(a)-403(c)28(haracter)-404(or)-403(logical)-403(v)56(ariable,)-421(whic)28(h)-403(ma)27(y)-403(b)-28(e)]TJ 0 -11.955 Td [(a)-427(scalar)-426(or)-427(ran)1(k)-427(1)-426(arra)27(y)84(.)-1151(T)28(yp)-28(e,)-450(ki)1(nd,)-450(rank)-427(and)-426(size)-427(m)28(ust)-426(agree)-427(on)-426(all)]TJ 0 -11.955 Td [(pro)-28(cesses.)]TJ +/F27 9.9626 Tf -260.887 -19.925 Td [(prec)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.926 Td [(ro)-32(ot)]TJ +/F8 9.9626 Tf 26.408 0 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -33.879 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(preconditioner)-333(data)-333(structure)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 197.537 0 Td [(psb)]TJ +ET +q +1 0 0 1 389.467 408.985 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 392.606 408.786 Td [(prec)]TJ +ET +q +1 0 0 1 414.155 408.985 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 417.293 408.786 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 25.931 0 Td [(Ro)-28(ot)-333(pro)-28(cess)-333(holding)-334(d)1(ata)-334(to)-333(b)-28(e)-333(broadcast.)]TJ -1.024 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 138.176 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.544 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1,)-333(default)-334(0)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -243.577 -21.918 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -287.509 -19.926 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -19.926 Td [(dat)]TJ + 0 -19.925 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G -/F8 9.9626 Tf 21.372 0 Td [(On)-333(pro)-28(cesses)-334(oth)1(e)-1(r)-333(than)-333(ro)-28(ot,)-333(the)-333(data)-334(to)-333(b)-28(e)-333(broadcast.)]TJ 3.535 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(te)-1(ger,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-340(ma)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-346(a)-346(rank)-347(1)-346(or)-346(2)-346(arra)28(y)83(,)-349(or)-347(a)-346(c)28(haracter)-346(or)-347(l)1(ogic)-1(al)-346(scalar.)-829(T)28(yp)-28(e,)-350(k)1(ind,)-350(rank)]TJ 0 -11.956 Td [(and)-333(size)-334(m)28(ust)-333(agree)-334(on)-333(all)-333(pro)-28(cesses.)]TJ +/F8 9.9626 Tf 78.386 0 Td [(The)-332(memory)-331(o)-28(ccupation)-332(of)-331(the)-332(ob)-55(jec)-1(t)-331(sp)-28(eci\014ed)-332(in)-331(the)-332(calling)]TJ -53.48 -11.955 Td [(sequence,)-333(in)-334(b)28(ytes.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(Returned)-333(as:)-445(an)]TJ/F30 9.9626 Tf 73.835 0 Td [(integer\050psb_long_int_k_\051)]TJ/F8 9.9626 Tf 128.849 0 Td [(n)28(um)28(b)-28(er.)]TJ 0 g 0 G - 139.477 -170.9 Td [(113)]TJ + -63.207 -242.632 Td [(106)]TJ 0 g 0 G ET endstream endobj -1620 0 obj +1623 0 obj << -/Length 5199 +/Length 5773 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(6.27)-1125(Sorting)-375(utilities)-375(|)]TJ 0 -19.593 Td [(psb)]TJ +ET +q +1 0 0 1 120.951 686.736 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 124.986 686.536 Td [(msort)-375(|)-375(Sorting)-375(b)31(y)-375(the)-375(Merge-sort)-375(algorithm)]TJ -25.091 -12.601 Td [(psb)]TJ +ET +q +1 0 0 1 120.951 674.134 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 124.986 673.935 Td [(qsort)-375(|)-375(Sorting)-375(b)31(y)-375(the)-375(Quic)31(ksort)-375(algorithm)]TJ -25.091 -12.602 Td [(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 120.951 661.532 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(sum)-375(|)-375(Global)-375(sum)]TJ +/F16 11.9552 Tf 124.986 661.333 Td [(hsort)-375(|)-375(Sorting)-375(b)31(y)-375(the)-375(Heapsort)-375(algorithm)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_sum\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-318(subroutine)-319(impl)1(e)-1(men)28(ts)-318(a)-318(s)-1(u)1(m)-319(reduction)-318(op)-28(eration)-318(based)-318(on)-319(the)-318(under-)]TJ -14.944 -11.955 Td [(lying)-333(comm)27(un)1(ic)-1(ati)1(on)-334(library)84(.)]TJ +/F30 9.9626 Tf -25.091 -22.511 Td [(call)-525(psb_msort\050x,ix,dir,flag\051)]TJ 0 -11.955 Td [(call)-525(psb_qsort\050x,ix,dir,flag\051)]TJ 0 -11.955 Td [(call)-525(psb_hsort\050x,ix,dir,flag\051)]TJ/F8 9.9626 Tf 14.944 -21.865 Td [(These)-332(serial)-332(rou)1(tines)-332(sort)-332(a)-332(sequence)]TJ/F11 9.9626 Tf 162.708 0 Td [(X)]TJ/F8 9.9626 Tf 12.34 0 Td [(in)28(to)-332(ascending)-332(or)-331(descending)-332(order.)]TJ -189.992 -11.955 Td [(The)-320(argumen)28(t)-321(meaning)-320(is)-320(iden)28(tical)-320(for)-320(the)-321(thr)1(e)-1(e)-320(calls;)-324(the)-321(on)1(ly)-321(di\013erence)-320(is)-320(the)]TJ 0 -11.955 Td [(algorithm)-333(used)-334(to)-333(accomplish)-333(the)-334(task)-333(\050see)-334(Usage)-333(Notes)-333(b)-28(elo)28(w\051.)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -21.865 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -22.511 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ + 0 -22.511 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(The)-333(sequence)-334(to)-333(b)-28(e)-333(sorted.)]TJ 13.879 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger,)-333(real)-334(or)-333(complex)-333(arra)27(y)-333(of)-333(rank)-333(1.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -22.511 Td [(ix)]TJ +0 g 0 G +/F8 9.9626 Tf 14.211 0 Td [(A)-333(v)27(ector)-333(of)-333(indices.)]TJ 10.696 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)-333(of)-333(\050at)-333(le)-1(ast\051)-333(the)-333(same)-334(size)-333(as)]TJ/F11 9.9626 Tf 258.559 0 Td [(X)]TJ/F8 9.9626 Tf 9.035 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -292.501 -22.511 Td [(dir)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ +/F8 9.9626 Tf 19.248 0 Td [(The)-333(desired)-334(ordering.)]TJ 5.659 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue:)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ +/F27 9.9626 Tf 0 -22.511 Td [(In)32(teger)-383(and)-384(real)-383(data:)]TJ 0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-333(c)-1(on)28(tribution)-333(to)-333(the)-334(gl)1(obal)-334(sum.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(tege)-1(r,)-341(real)-339(or)-340(complex)-340(v)56(ariable,)-342(whic)28(h)-339(m)-1(a)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-464(a)-464(ran)1(k)-464(1)-464(or)-464(2)-464(arra)28(y)83(.)-1299(T)28(yp)-28(e,)-497(kind)1(,)-497(rank)-464(and)-463(size)-464(m)27(ust)-463(agree)-464(on)-464(all)]TJ 0 -11.955 Td [(pro)-28(cesses.)]TJ +/F30 9.9626 Tf 114.397 0 Td [(psb_sort_up_)]TJ/F8 9.9626 Tf 62.764 0 Td [(,)]TJ/F30 9.9626 Tf 5.203 0 Td [(psb_sort_down_)]TJ/F8 9.9626 Tf 73.224 0 Td [(,)]TJ/F30 9.9626 Tf 5.203 0 Td [(psb_asort_up_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)]TJ/F30 9.9626 Tf -306.867 -11.955 Td [(psb_asort_down_)]TJ/F8 9.9626 Tf 78.455 0 Td [(;)-333(default)]TJ/F30 9.9626 Tf 39.574 0 Td [(psb_sort_up_)]TJ/F8 9.9626 Tf 62.764 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.926 Td [(ro)-32(ot)]TJ +/F27 9.9626 Tf -202.711 -17.233 Td [(Complex)-383(data:)]TJ 0 g 0 G -/F8 9.9626 Tf 25.93 0 Td [(Pro)-28(cess)-310(to)-309(hold)-310(the)-310(\014nal)-310(sum,)-314(or)]TJ/F14 9.9626 Tf 144.053 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-310(to)-310(mak)28(e)-310(it)-309(a)27(v)56(ailable)-310(on)-310(al)1(l)-310(pro)-28(cesses.)]TJ -152.825 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.427 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.749 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1,)-333(default)-334(-1.)]TJ +/F30 9.9626 Tf 78.338 0 Td [(psb_lsort_up_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)]TJ/F30 9.9626 Tf 5.203 0 Td [(psb_lsort_down_)]TJ/F8 9.9626 Tf 78.455 0 Td [(,)]TJ/F30 9.9626 Tf 5.203 0 Td [(psb_asort_up_)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)]TJ/F30 9.9626 Tf 5.203 0 Td [(psb_asort_down_)]TJ/F8 9.9626 Tf 78.455 0 Td [(;)]TJ -364.927 -11.955 Td [(default)]TJ/F30 9.9626 Tf 33.485 0 Td [(psb_lsort_up_)]TJ/F8 9.9626 Tf 67.995 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -251.325 -21.918 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -148.305 -22.511 Td [(\015ag)]TJ 0 g 0 G +/F8 9.9626 Tf 22.645 0 Td [(Whether)-333(to)-334(k)28(eep)-333(the)-333(original)-334(v)56(alues)-333(in)]TJ/F11 9.9626 Tf 170.582 0 Td [(I)-78(X)]TJ/F8 9.9626 Tf 14.197 0 Td [(.)]TJ -182.517 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.956 Td [(Sp)-28(eci\014ed)-222(as:)-389(an)-222(in)28(teger)-222(v)55(alue)]TJ/F30 9.9626 Tf 125.446 0 Td [(psb_sort_ovw_idx_)]TJ/F8 9.9626 Tf 91.13 0 Td [(or)]TJ/F30 9.9626 Tf 11.097 0 Td [(psb_sort_keep_idx_)]TJ/F8 9.9626 Tf 94.147 0 Td [(;)]TJ -321.82 -11.955 Td [(default)]TJ/F30 9.9626 Tf 33.486 0 Td [(psb_sort_ovw_idx_)]TJ/F8 9.9626 Tf 88.915 0 Td [(.)]TJ 0 g 0 G - 0 -19.925 Td [(dat)]TJ +/F27 9.9626 Tf -147.308 -24.503 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(On)-333(destination)-334(pr)1(o)-28(cess\050es)-1(\051,)-333(the)-333(result)-333(of)-334(the)-333(sum)-333(op)-28(eration.)]TJ 3.536 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(tege)-1(r,)-341(real)-339(o)-1(r)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-339(m)-1(a)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-333(a)-334(rank)-333(1)-333(or)-333(2)-334(arra)28(y)83(.)]TJ 0 -11.955 Td [(T)28(yp)-28(e,)-333(kind,)-333(rank)-334(and)-333(size)-333(m)27(ust)-333(agree)-333(on)-334(all)-333(pro)-28(cesses.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ + 0 -22.511 Td [(x)]TJ 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.272 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.011 -11.956 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ +/F8 9.9626 Tf 11.028 0 Td [(The)-333(sequence)-334(of)-333(v)55(alues,)-333(in)-333(the)-334(c)28(hosen)-333(ordering.)]TJ 13.879 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger,)-333(real)-334(or)-333(complex)-333(arra)27(y)-333(of)-333(rank)-333(1.)]TJ 0 g 0 G - -12.73 -19.925 Td [(2.)]TJ +/F27 9.9626 Tf -24.907 -22.511 Td [(ix)]TJ 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 33.208 0 Td [(dat)]TJ/F8 9.9626 Tf 19.012 0 Td [(argumen)28(t)-334(ma)28(y)-333(also)-334(b)-27(e)-334(a)-333(long)-333(in)28(teger)-334(scalar.)]TJ +/F8 9.9626 Tf 14.211 0 Td [(A)-333(v)27(ector)-333(of)-333(indices.)]TJ 10.696 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-332(in)27(teger)-332(arra)28(y)-333(of)-332(rank)-333(1,)-332(whose)-333(en)28(tries)-332(are)-333(mo)28(v)28(ed)-333(to)-332(the)-333(same)-332(p)-28(osition)]TJ 0 -11.955 Td [(as)-333(the)-334(corresp)-28(on)1(ding)-334(en)28(tries)-333(in)]TJ/F11 9.9626 Tf 136.959 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(.)]TJ 0 g 0 G - 99.987 -109.132 Td [(114)]TJ + -3.176 -43.727 Td [(107)]TJ 0 g 0 G ET endstream endobj -1626 0 obj +1627 0 obj << -/Length 5151 +/Length 6992 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 124.986 706.129 Td [(max)-375(|)-375(Global)-375(maxim)31(um)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(Notes)]TJ 0 g 0 G +/F8 9.9626 Tf 12.176 -19.925 Td [(1.)]TJ 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_max\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-326(subroutine)-326(implemen)28(ts)-326(a)-326(maxim)27(um)-326(v)56(aluereduction)-326(op)-28(eration)-326(based)-326(on)]TJ -14.944 -11.955 Td [(the)-333(underlying)-334(comm)28(unication)-333(library)83(.)]TJ + [-500(F)83(or)-466(in)28(te)-1(ger)-466(or)-467(real)-466(data)-467(the)-467(sorting)-466(can)-467(b)-28(e)-466(p)-28(erformed)-467(in)-466(the)-467(up/do)28(wn)]TJ 12.73 -11.956 Td [(direction,)-333(on)-334(the)-333(natural)-333(or)-333(absolute)-334(v)56(alues;)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ + -12.73 -19.925 Td [(2.)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ + [-500(F)83(or)-397(complex)-398(data)-398(the)-397(sorting)-398(can)-398(b)-27(e)-398(done)-398(in)-397(a)-398(lexicographic)-398(order)-397(\050i.e.:)]TJ 12.73 -11.955 Td [(sort)-316(on)-316(the)-315(real)-316(part)-316(with)-316(ties)-316(brok)28(en)-316(according)-315(to)-316(the)-316(imaginary)-316(part\051)-315(or)]TJ 0 -11.955 Td [(on)-333(the)-334(absolute)-333(v)56(alues;)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ + -12.73 -19.925 Td [(3.)]TJ 0 g 0 G + [-500(The)-257(routines)-258(return)-257(the)-257(items)-257(in)-258(the)-257(c)28(hosen)-258(or)1(dering;)-283(the)-257(output)-257(di\013erence)]TJ 12.73 -11.956 Td [(is)-259(the)-259(handling)-259(of)-259(ties)-259(\050i.e.)-419(items)-259(with)-259(an)-259(equal)-259(v)55(alu)1(e)-1(\051)-258(in)-259(the)-259(original)-259(input.)]TJ 0 -11.955 Td [(With)-493(the)-493(merge-sort)-493(algorithm)-493(ties)-493(are)-493(preserv)27(ed)-493(in)-493(the)-493(same)-493(relativ)28(e)]TJ 0 -11.955 Td [(order)-405(as)-406(they)-405(had)-406(in)-405(the)-406(or)1(iginal)-406(sequence,)-423(while)-406(this)-405(is)-406(not)-405(guaran)28(teed)]TJ 0 -11.955 Td [(for)-333(quic)28(ks)-1(or)1(t)-334(or)-333(heapsort;)]TJ 0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ + -12.73 -19.925 Td [(4.)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ + [-500(If)]TJ/F11 9.9626 Tf 21.89 0 Td [(f)-108(l)-19(ag)]TJ/F8 9.9626 Tf 22.261 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(psb)]TJ +ET +q +1 0 0 1 232.104 542.941 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F11 9.9626 Tf 235.093 542.742 Td [(sor)-28(t)]TJ +ET +q +1 0 0 1 253.559 542.941 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F11 9.9626 Tf 256.548 542.742 Td [(ov)-36(w)]TJ +ET +q +1 0 0 1 274.562 542.941 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F11 9.9626 Tf 277.55 542.742 Td [(idx)]TJ +ET +q +1 0 0 1 292.46 542.941 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 297.966 542.742 Td [(then)-253(the)-252(en)27(tries)-252(in)]TJ/F11 9.9626 Tf 80.169 0 Td [(ix)]TJ/F8 9.9626 Tf 9.126 0 Td [(\0501)-278(:)]TJ/F11 9.9626 Tf 17.158 0 Td [(n)]TJ/F8 9.9626 Tf 5.98 0 Td [(\051)-253(where)]TJ/F11 9.9626 Tf 34.397 0 Td [(n)]TJ/F8 9.9626 Tf 8.498 0 Td [(is)-253(the)-252(size)]TJ -277.683 -11.956 Td [(of)]TJ/F11 9.9626 Tf 11.911 0 Td [(x)]TJ/F8 9.9626 Tf 9.579 0 Td [(are)-390(initialized)-390(to)]TJ/F11 9.9626 Tf 76.439 0 Td [(ix)]TJ/F8 9.9626 Tf 9.127 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)]TJ/F14 9.9626 Tf 7.582 0 Td [(\040)]TJ/F11 9.9626 Tf 13.67 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(;)-418(th)28(us,)-405(u)1(p)-28(on)-390(return)-390(from)-390(the)-390(subroutine,)]TJ -139.046 -11.955 Td [(for)-333(eac)27(h)-333(index)]TJ/F11 9.9626 Tf 64.505 0 Td [(i)]TJ/F8 9.9626 Tf 6.752 0 Td [(w)28(e)-333(ha)27(v)28(e)-333(in)]TJ/F11 9.9626 Tf 49.256 0 Td [(ix)]TJ/F8 9.9626 Tf 9.126 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)-333(the)-333(p)-28(osition)-333(that)-333(the)-334(item)]TJ/F11 9.9626 Tf 123.751 0 Td [(x)]TJ/F8 9.9626 Tf 5.694 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(\051)-333(o)-28(ccupied)]TJ -273.697 -11.955 Td [(in)-333(the)-334(original)-333(data)-333(sequence;)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ + -12.73 -19.925 Td [(5.)]TJ +0 g 0 G + [-500(If)]TJ/F11 9.9626 Tf 23.404 0 Td [(f)-108(l)-19(ag)]TJ/F8 9.9626 Tf 23.446 0 Td [(=)]TJ/F11 9.9626 Tf 11.701 0 Td [(psb)]TJ +ET +q +1 0 0 1 235.988 487.15 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F11 9.9626 Tf 238.977 486.951 Td [(sor)-28(t)]TJ +ET +q +1 0 0 1 257.443 487.15 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F11 9.9626 Tf 260.432 486.951 Td [(k)-31(ee)-1(p)]TJ +ET +q +1 0 0 1 280.82 487.15 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F11 9.9626 Tf 283.809 486.951 Td [(idx)]TJ +ET +q +1 0 0 1 298.718 487.15 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 305.739 486.951 Td [(the)-405(routine)-404(will)-405(assume)-405(that)-404(the)-405(en)28(tries)-405(in)]TJ/F11 9.9626 Tf -130.128 -11.955 Td [(ix)]TJ/F8 9.9626 Tf 9.127 0 Td [(\050:\051)-333(ha)28(v)27(e)-333(already)-333(b)-28(een)-333(initialized)-334(b)28(y)-333(the)-333(use)-1(r;)]TJ 0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-334(con)28(tribution)-333(to)-333(the)-334(global)-333(maxim)28(um.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-326(as)-1(:)-441(an)-326(in)27(teger)-326(or)-327(real)-327(v)56(ariable,)-328(whic)28(h)-327(ma)28(y)-327(b)-28(e)-327(a)-327(scalar,)-328(or)-326(a)-327(rank)]TJ 0 -11.955 Td [(1)-333(or)-334(2)-333(arra)28(y)83(.)-778(T)28(yp)-28(e,)-333(kind,)-333(rank)-333(and)-334(size)-333(m)28(ust)-334(agree)-333(on)-333(all)-334(pro)-27(cess)-1(es.)]TJ + -21.857 -19.926 Td [(6.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(ro)-32(ot)]TJ + [-500(The)-376(three)-375(sorting)-376(algorithms)-376(ha)28(v)28(e)-376(a)-376(similar)]TJ/F11 9.9626 Tf 208.295 0 Td [(O)]TJ/F8 9.9626 Tf 7.876 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(n)]TJ/F8 9.9626 Tf 7.64 0 Td [(log)]TJ/F11 9.9626 Tf 14.529 0 Td [(n)]TJ/F8 9.9626 Tf 5.98 0 Td [(\051)-376(exp)-27(ec)-1(t)1(e)-1(d)-375(running)]TJ -235.465 -11.955 Td [(time;)-349(in)-343(the)-344(a)28(v)28(erage)-344(case)-344(qu)1(ic)27(ksort)-343(will)-344(b)-28(e)-343(the)-344(fastest)-343(and)-344(merge-sort)-343(the)]TJ 0 -11.955 Td [(slo)28(w)27(est.)-444(Ho)28(w)27(ev)28(er)-333(note)-333(that:)]TJ 0 g 0 G -/F8 9.9626 Tf 25.931 0 Td [(Pro)-28(cess)-305(to)-306(hold)-305(the)-305(\014nal)-305(maxim)27(um,)-311(or)]TJ/F14 9.9626 Tf 169.157 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-305(to)-306(mak)28(e)-305(it)-306(a)28(v)56(ailable)-306(on)-305(all)-305(pro-)]TJ -177.93 -11.956 Td [(cesses.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.428 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.748 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1,)-333(default)-334(-1.)]TJ + 4.207 -19.925 Td [(\050a\051)]TJ 0 g 0 G -/F27 9.9626 Tf -251.325 -33.873 Td [(On)-383(Return)]TJ + [-500(The)-419(w)28(orst)-419(case)-419(run)1(ning)-419(time)-419(for)-419(qui)1(c)27(ksort)-418(is)]TJ/F11 9.9626 Tf 221.058 0 Td [(O)]TJ/F8 9.9626 Tf 7.876 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(n)]TJ/F7 6.9738 Tf 5.98 3.615 Td [(2)]TJ/F8 9.9626 Tf 4.469 -3.615 Td [(\051;)-461(the)-419(algorithm)]TJ -225.547 -11.955 Td [(implemen)28(ted)-319(here)-319(follo)28(ws)-319(the)-319(w)27(ell-kno)28(wn)-319(median-of-three)-319(heuristics,)]TJ 0 -11.956 Td [(but)-333(the)-334(w)28(orst)-333(case)-334(ma)28(y)-333(still)-334(app)1(ly;)]TJ 0 g 0 G + -18.265 -15.94 Td [(\050b\051)]TJ 0 g 0 G - 0 -19.926 Td [(dat)]TJ + [-500(The)-222(w)28(orst)-223(case)-222(running)-222(time)-222(for)-223(merge-sort)-222(and)-222(heap-sort)-222(is)]TJ/F11 9.9626 Tf 273.309 0 Td [(O)]TJ/F8 9.9626 Tf 7.876 0 Td [(\050)]TJ/F11 9.9626 Tf 3.875 0 Td [(n)]TJ/F8 9.9626 Tf 7.64 0 Td [(log)]TJ/F11 9.9626 Tf 14.529 0 Td [(n)]TJ/F8 9.9626 Tf 5.98 0 Td [(\051)]TJ -294.944 -11.955 Td [(as)-333(the)-334(a)28(v)28(erage)-334(case;)]TJ 0 g 0 G -/F8 9.9626 Tf 21.372 0 Td [(On)-333(destination)-333(pro)-28(cess\050es\051,)-334(the)-333(result)-333(of)-334(the)-333(maxim)28(um)-334(op)-27(eration.)]TJ 3.535 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-326(as)-1(:)-441(an)-326(in)27(teger)-326(or)-327(real)-327(v)56(ariable,)-328(whic)28(h)-327(ma)28(y)-327(b)-28(e)-327(a)-327(scalar,)-328(or)-326(a)-327(rank)]TJ 0 -11.955 Td [(1)-333(or)-334(2)-333(arra)28(y)83(.)-778(T)28(yp)-28(e,)-333(kind,)-333(rank)-333(and)-334(size)-333(m)28(ust)-334(agree)-333(on)-333(all)-334(pro)-27(cess)-1(es.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ + -17.158 -15.94 Td [(\050c\051)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ + [-500(The)-358(merge-sort)-358(algorithm)-357(is)-358(implemen)28(ted)-358(to)-358(tak)28(e)-358(adv)56(an)28(tage)-358(of)-358(sub-)]TJ 17.158 -11.955 Td [(sequences)-401(that)-400(ma)28(y)-401(b)-28(e)-400(already)-401(in)-400(the)-401(desired)-400(ordering)-400(prior)-401(to)-400(the)]TJ 0 -11.956 Td [(subroutine)-246(call;)-275(this)-246(situation)-246(is)-247(relativ)28(ely)-246(common)-246(when)-246(dealing)-246(with)]TJ 0 -11.955 Td [(groups)-301(of)-301(indices)-301(of)-302(sparse)-301(matrix)-301(en)28(tries,)-308(th)28(us)-301(merge-sort)-302(is)-301(the)-301(pre-)]TJ 0 -11.955 Td [(ferred)-249(c)28(hoice)-249(when)-249(a)-249(sorting)-248(is)-249(needed)-249(b)28(y)-249(other)-249(routines)-249(in)-249(t)1(he)-249(library)83(.)]TJ 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.273 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.012 -11.956 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ + 117.559 -205.23 Td [(108)]TJ 0 g 0 G - -12.73 -19.925 Td [(2.)]TJ +ET + +endstream +endobj +1640 0 obj +<< +/Length 182 +>> +stream 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 33.209 0 Td [(dat)]TJ/F8 9.9626 Tf 19.012 0 Td [(argumen)28(t)-333(m)-1(a)28(y)-333(also)-333(b)-28(e)-334(a)-333(long)-333(in)28(teger)-334(scalar.)]TJ 0 g 0 G - 99.986 -109.132 Td [(115)]TJ +BT +/F16 14.3462 Tf 99.895 706.129 Td [(7)-1125(P)31(arallel)-375(en)31(vironmen)32(t)-375(routines)]TJ +0 g 0 G +/F8 9.9626 Tf 164.384 -615.691 Td [(109)]TJ 0 g 0 G ET endstream endobj -1633 0 obj +1645 0 obj << -/Length 5183 +/Length 5584 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(7.1)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 202.396 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(min)-375(|)-375(Global)-375(minim)31(um)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(init)-375(|)-375(Initializes)-375(PSBLAS)-375(parallel)-375(en)31(vironmen)31(t)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_min\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-311(subroutine)-312(implemen)28(ts)-311(a)-312(minim)28(um)-311(v)55(alue)-311(reduction)-312(op)-27(eration)-312(based)-311(on)]TJ -14.944 -11.955 Td [(the)-333(underlying)-333(com)-1(m)28(unication)-333(library)83(.)]TJ +/F30 9.9626 Tf -55.726 -18.389 Td [(call)-525(psb_init\050icontxt,)-525(np,)-525(basectxt,)-525(ids\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-294(subroutine)-294(initial)1(iz)-1(es)-293(the)-294(PSBLAS)-294(parallel)-294(en)28(vironmen)28(t,)-302(de\014ning)-294(a)-294(vir-)]TJ -14.944 -11.955 Td [(tual)-333(parallel)-334(mac)28(hine.)]TJ 0 g 0 G /F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -19974,120 +20159,130 @@ BT /F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ + 0 -19.925 Td [(np)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ +/F8 9.9626 Tf 17.711 0 Td [(Num)28(b)-28(er)-333(of)-334(pro)-27(cess)-1(es)-333(in)-333(the)-334(P)1(SBLA)-1(S)-333(virtual)-333(parallel)-333(mac)27(hin)1(e)-1(.)]TJ 7.196 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue.)-778(Defau)1(lt:)-445(use)-333(all)-334(a)28(v)56(ailable)-333(pro)-28(cesses.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ +/F27 9.9626 Tf -24.907 -19.925 Td [(basectxt)]TJ 0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-333(c)-1(on)28(tribution)-333(to)-333(the)-334(gl)1(obal)-334(minim)28(um.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-326(as:)-442(an)-326(in)27(teger)-326(or)-327(real)-327(v)56(ariable,)-328(whic)28(h)-327(ma)28(y)-327(b)-28(e)-327(a)-326(s)-1(calar,)-328(or)-326(a)-327(rank)]TJ 0 -11.955 Td [(1)-333(or)-334(2)-333(arra)28(y)83(.)-778(T)28(yp)-27(e)-1(,)-333(kind,)-333(rank)-333(and)-334(size)-333(m)28(ust)-334(agree)-333(on)-333(all)-334(pro)-27(cesse)-1(s.)]TJ +/F8 9.9626 Tf 46.736 0 Td [(the)-356(initial)-357(comm)28(unication)-356(con)28(text.)-514(The)-356(new)-357(con)28(text)-356(will)-357(b)-27(e)-357(de\014ned)]TJ -21.829 -11.955 Td [(from)-333(the)-334(pro)-27(cesse)-1(s)-333(participating)-333(in)-333(the)-334(initial)-333(one.)]TJ 0 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-778(Defau)1(lt:)-445(use)-333(MPI)]TJ +ET +q +1 0 0 1 389.991 466.768 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 392.98 466.569 Td [(COMM)]TJ +ET +q +1 0 0 1 426.787 466.768 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 429.775 466.569 Td [(W)28(ORLD.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(ro)-32(ot)]TJ +/F27 9.9626 Tf -279.07 -19.925 Td [(ids)]TJ 0 g 0 G -/F8 9.9626 Tf 25.93 0 Td [(Pro)-28(cess)-276(to)-276(hold)-276(the)-276(\014nal)-276(v)56(alue,)-287(or)]TJ/F14 9.9626 Tf 146.411 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-276(to)-276(mak)28(e)-276(it)-276(a)28(v)55(ailable)-276(on)-276(all)-276(pr)1(o)-28(cesses)-1(.)]TJ -155.183 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.427 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.749 0 Td [(<)]TJ/F8 9.9626 Tf 7.748 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1,)-333(default)-334(-1.)]TJ +/F8 9.9626 Tf 19.048 0 Td [(Iden)28(tities)-497(of)-497(the)-497(pro)-28(cesses)-497(to)-497(use)-497(for)-497(the)-497(new)-498(con)28(text;)-579(the)-497(argumen)28(t)-497(is)]TJ 5.858 -11.956 Td [(ignored)-428(when)]TJ/F30 9.9626 Tf 63.346 0 Td [(np)]TJ/F8 9.9626 Tf 14.723 0 Td [(is)-428(not)-428(sp)-27(eci\014ed.)-728(This)-428(allo)28(ws)-428(the)-428(pro)-27(ces)-1(ses)-427(in)-428(the)-428(new)]TJ -78.069 -11.955 Td [(en)28(vironmen)28(t)-334(to)-333(b)-28(e)-333(in)-333(an)-334(order)-333(di\013eren)28(t)-334(from)-333(the)-333(original)-333(one.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)84(.)-778(Default:)-444(use)-334(the)-333(indices)-333(\0500)]TJ/F11 9.9626 Tf 254.159 0 Td [(:)-167(:)-166(:)-167(np)]TJ/F14 9.9626 Tf 26.489 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1\051.)]TJ 0 g 0 G -/F27 9.9626 Tf -251.325 -33.873 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -315.517 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(dat)]TJ + 0 -19.925 Td [(icon)32(txt)]TJ 0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(On)-333(destination)-334(p)1(ro)-28(cess\050es)-1(\051)1(,)-334(the)-333(result)-333(of)-334(the)-333(minim)28(um)-334(op)-27(eration.)]TJ 3.536 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-326(as:)-442(an)-326(in)27(teger)-326(or)-327(real)-327(v)56(ariable,)-328(whic)28(h)-327(ma)28(y)-327(b)-28(e)-327(a)-326(s)-1(calar,)-328(or)-326(a)-327(rank)]TJ 0 -11.955 Td [(1)-333(or)-334(2)-333(arra)28(y)83(.)]TJ 0 -11.955 Td [(T)28(yp)-28(e,)-333(kind,)-333(rank)-334(and)-333(size)-333(m)27(ust)-333(agree)-333(on)-334(all)-333(pro)-28(cesses.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ +/F8 9.9626 Tf 39.989 0 Td [(the)-457(c)-1(omm)28(unication)-457(con)28(te)-1(x)1(t)-458(iden)28(tifying)-458(the)-457(virtual)-458(p)1(arallel)-458(mac)28(hine.)]TJ -15.083 -11.956 Td [(Note)-335(that)-335(this)-335(is)-336(alw)28(a)28(ys)-335(a)-335(duplicate)-335(of)]TJ/F30 9.9626 Tf 169.953 0 Td [(basectxt)]TJ/F8 9.9626 Tf 41.843 0 Td [(,)-336(so)-335(that)-335(library)-335(comm)28(u-)]TJ -211.796 -11.955 Td [(nications)-305(are)-305(completely)-306(separated)-305(from)-305(other)-305(comm)28(unication)-305(op)-28(erations.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ/F16 11.9552 Tf -24.906 -21.917 Td [(Notes)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ +/F8 9.9626 Tf 12.176 -19.926 Td [(1.)]TJ 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.272 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.011 -11.956 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ + [-500(A)-333(call)-334(to)-333(this)-333(routine)-334(m)28(ust)-333(precede)-334(an)28(y)-333(other)-333(PSBLAS)-334(call.)]TJ 0 g 0 G - -12.73 -19.925 Td [(2.)]TJ + 0 -19.925 Td [(2.)]TJ 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 33.208 0 Td [(dat)]TJ/F8 9.9626 Tf 19.012 0 Td [(argumen)28(t)-334(ma)28(y)-333(also)-334(b)-27(e)-334(a)-333(long)-333(in)28(teger)-334(scalar.)]TJ + [-500(It)-262(is)-262(an)-262(error)-262(to)-262(sp)-28(ecify)-262(a)-262(v)56(alue)-262(for)]TJ/F11 9.9626 Tf 159.87 0 Td [(np)]TJ/F8 9.9626 Tf 13.602 0 Td [(greater)-262(than)-262(the)-262(n)28(um)28(b)-28(er)-262(of)-262(pro)-28(cesses)]TJ -160.742 -11.955 Td [(a)28(v)55(ailable)-333(in)-333(the)-334(und)1(e)-1(r)1(lying)-334(base)-333(parallel)-333(en)27(viron)1(m)-1(en)28(t.)]TJ 0 g 0 G - 99.987 -109.132 Td [(116)]TJ + 139.477 -97.177 Td [(110)]TJ 0 g 0 G ET endstream endobj -1639 0 obj +1651 0 obj << -/Length 5239 +/Length 4667 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(7.2)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 151.587 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(amx)-375(|)-375(Global)-375(maxim)31(um)-375(absolute)-375(v)63(alue)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(info)-453(|)-453(Return)-453(information)-453(ab)-31(out)-453(PSBLAS)-453(par-)]TJ -25.091 -13.948 Td [(allel)-375(en)31(vironmen)31(t)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_amx\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-312(subroutine)-312(implemen)28(ts)-313(a)-312(maxim)28(um)-312(absolute)-312(v)55(alue)-312(reduction)-312(op)-28(eration)]TJ -14.944 -11.955 Td [(based)-333(on)-334(the)-333(underlying)-333(comm)28(unication)-334(library)84(.)]TJ +/F30 9.9626 Tf -30.635 -18.389 Td [(call)-525(psb_info\050icontxt,)-525(iam,)-525(np\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-456(subroutine)-456(returns)-456(inf)1(orma)-1(t)1(ion)-456(ab)-28(out)-456(the)-456(PSBLAS)-456(paral)1(le)-1(l)-455(en)27(viron-)]TJ -14.944 -11.955 Td [(men)28(t,)-334(de\014nin)1(g)-334(a)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -19.925 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G 0 -19.925 Td [(icon)32(txt)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ -0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-334(con)28(tribution)-333(to)-333(the)-334(global)-333(maxim)28(um.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(te)-1(ger,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-340(ma)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-464(a)-464(rank)-463(1)-464(or)-464(2)-464(arra)28(y)83(.)-1299(T)28(yp)-28(e,)-497(kind,)-496(rank)-464(and)-463(size)-464(m)27(ust)-463(agree)-464(on)-464(all)]TJ 0 -11.955 Td [(pro)-28(cesses.)]TJ +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.926 Td [(ro)-32(ot)]TJ +/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 25.931 0 Td [(Pro)-28(cess)-276(to)-276(hold)-276(the)-276(\014nal)-275(v)55(alue,)-287(or)]TJ/F14 9.9626 Tf 146.411 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-276(to)-276(mak)28(e)-276(it)-276(a)28(v)55(ailable)-276(on)-276(all)-276(p)1(ro)-28(cesses.)]TJ -155.184 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.428 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.748 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1,)-333(default)-334(-1.)]TJ 0 g 0 G -/F27 9.9626 Tf -251.325 -33.873 Td [(On)-383(Return)]TJ + 0 -19.925 Td [(iam)]TJ 0 g 0 G +/F8 9.9626 Tf 23.281 0 Td [(Iden)28(ti\014er)-333(of)-334(curren)28(t)-333(pro)-28(cess)-333(in)-334(the)-333(PSBLAS)-333(virtual)-334(par)1(allel)-334(mac)28(hine.)]TJ 1.626 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)]TJ/F14 9.9626 Tf 134.302 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F14 9.9626 Tf 7.749 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(iam)]TJ/F14 9.9626 Tf 20.213 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1)]TJ 0 g 0 G - 0 -19.926 Td [(dat)]TJ +/F27 9.9626 Tf -239.121 -19.926 Td [(np)]TJ 0 g 0 G -/F8 9.9626 Tf 21.372 0 Td [(On)-333(destination)-333(pro)-28(cess\050es\051,)-334(the)-333(result)-333(of)-334(the)-333(maxim)28(um)-334(op)-27(eration.)]TJ 3.535 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(te)-1(ger,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-340(ma)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-464(a)-464(rank)-463(1)-464(or)-464(2)-464(arra)28(y)83(.)-1299(T)28(yp)-28(e,)-497(kind,)-496(rank)-464(and)-463(size)-464(m)27(ust)-463(agree)-464(on)-464(all)]TJ 0 -11.956 Td [(pro)-28(cesses.)]TJ/F16 11.9552 Tf -24.907 -21.917 Td [(Notes)]TJ +/F8 9.9626 Tf 17.712 0 Td [(Num)28(b)-28(er)-333(of)-334(pro)-27(cesse)-1(s)-333(in)-333(the)-333(PSBLAS)-334(virtual)-333(parallel)-333(mac)27(h)1(ine.)]TJ 7.195 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ 0 g 0 G /F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.273 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.012 -11.955 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ + [-500(F)83(or)-500(pro)-27(cesse)-1(s)-500(in)-500(th)1(e)-501(v)1(irtual)-500(parallel)-500(mac)27(hin)1(e)-501(th)1(e)-501(id)1(e)-1(n)28(ti\014er)-500(will)-500(satisfy)]TJ 12.73 -11.955 Td [(0)]TJ/F14 9.9626 Tf 7.749 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(iam)]TJ/F14 9.9626 Tf 20.213 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1;)]TJ 0 g 0 G - -12.73 -19.925 Td [(2.)]TJ + -84.893 -19.925 Td [(2.)]TJ 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 33.209 0 Td [(dat)]TJ/F8 9.9626 Tf 19.012 0 Td [(argumen)28(t)-333(m)-1(a)28(y)-333(also)-333(b)-28(e)-334(a)-333(long)-333(in)28(teger)-334(scalar.)]TJ + [-500(If)-432(the)-433(user)-432(has)-433(requested)-432(on)]TJ/F30 9.9626 Tf 143.13 0 Td [(psb_init)]TJ/F8 9.9626 Tf 46.151 0 Td [(a)-432(n)27(um)28(b)-28(er)-432(of)-432(pro)-28(cesses)-433(less)-432(than)]TJ -176.551 -11.955 Td [(the)-417(total)-416(a)28(v)55(ailable)-416(in)-417(the)-416(parallel)-417(execution)-416(en)28(vironmen)28(t,)-438(the)-416(remaining)]TJ 0 -11.955 Td [(pro)-28(cesses)-359(will)-359(ha)28(v)28(e)-359(on)-359(return)]TJ/F11 9.9626 Tf 130.486 0 Td [(iam)]TJ/F8 9.9626 Tf 20.639 0 Td [(=)]TJ/F14 9.9626 Tf 10.941 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1;)-372(the)-359(only)-359(call)-359(in)28(v)28(olving)]TJ/F30 9.9626 Tf 112.377 0 Td [(icontxt)]TJ/F8 9.9626 Tf -282.192 -11.956 Td [(that)-333(an)28(y)-334(suc)28(h)-333(pro)-28(cess)-334(ma)28(y)-333(execute)-334(is)-333(to)]TJ/F30 9.9626 Tf 177.086 0 Td [(psb_exit)]TJ/F8 9.9626 Tf 41.843 0 Td [(.)]TJ 0 g 0 G - 99.986 -97.177 Td [(117)]TJ + -79.452 -174.885 Td [(111)]TJ 0 g 0 G ET endstream endobj -1645 0 obj +1657 0 obj << -/Length 5273 +/Length 4365 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(7.3)-1125(psb)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 202.396 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(amn)-375(|)-375(Global)-375(minim)31(um)-375(absolute)-375(v)63(alue)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(exit)-375(|)-375(Exit)-375(from)-375(PSBLAS)-375(parallel)-375(en)31(vironmen)31(t)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_amn\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-336(subroutine)-337(implemen)28(ts)-337(a)-336(minim)28(um)-337(absolute)-336(v)55(al)1(ue)-337(reduction)-336(op)-28(eration)]TJ -14.944 -11.955 Td [(based)-333(on)-334(the)-333(underlying)-333(comm)28(unication)-334(library)84(.)]TJ +/F30 9.9626 Tf -55.726 -18.389 Td [(call)-525(psb_exit\050icontxt\051)]TJ 0 -11.956 Td [(call)-525(psb_exit\050icontxt,close\051)]TJ/F8 9.9626 Tf 14.944 -21.917 Td [(This)-333(subroutine)-334(exits)-333(from)-333(the)-334(PS)1(B)-1(LAS)-333(parallel)-333(virtual)-333(mac)27(hin)1(e)-1(.)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -14.944 -19.926 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G @@ -20098,268 +20293,210 @@ BT 0 g 0 G /F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ -0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-333(c)-1(on)28(tribution)-333(to)-333(the)-334(gl)1(obal)-334(minim)28(um.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(tege)-1(r,)-341(real)-339(or)-340(complex)-340(v)56(ariable,)-342(whic)28(h)-339(m)-1(a)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-464(a)-464(ran)1(k)-464(1)-464(or)-464(2)-464(arra)28(y)83(.)-1299(T)28(yp)-28(e,)-497(kind)1(,)-497(rank)-464(and)-463(size)-464(m)27(ust)-463(agree)-464(on)-464(all)]TJ 0 -11.955 Td [(pro)-28(cesses.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.926 Td [(ro)-32(ot)]TJ -0 g 0 G -/F8 9.9626 Tf 25.93 0 Td [(Pro)-28(cess)-276(to)-276(hold)-276(the)-276(\014nal)-276(v)56(alue,)-287(or)]TJ/F14 9.9626 Tf 146.411 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-276(to)-276(mak)28(e)-276(it)-276(a)28(v)55(ailable)-276(on)-276(all)-276(pr)1(o)-28(cesses)-1(.)]TJ -155.183 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.427 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.749 0 Td [(<)]TJ/F8 9.9626 Tf 7.748 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1,)-333(default)-334(-1.)]TJ -0 g 0 G -/F27 9.9626 Tf -251.325 -33.873 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -24.907 -19.925 Td [(close)]TJ 0 g 0 G +/F8 9.9626 Tf 28.754 0 Td [(Whether)-401(to)-401(c)-1(lose)-401(all)-401(data)-401(structures)-402(related)-401(to)-401(the)-401(virtual)-401(parallel)-402(ma-)]TJ -3.847 -11.955 Td [(c)28(hine,)-333(b)-28(esides)-334(those)-333(asso)-28(ciated)-333(with)-334(icon)28(txt.)]TJ 0 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(logical)-333(v)55(ariabl)1(e)-1(,)-333(default)-333(v)55(al)1(ue:)-445(true.)]TJ/F16 11.9552 Tf -24.907 -19.925 Td [(Notes)]TJ 0 g 0 G - 0 -19.926 Td [(dat)]TJ +/F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ 0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(On)-333(destination)-334(p)1(ro)-28(cess\050es)-1(\051)1(,)-334(the)-333(result)-333(of)-334(the)-333(minim)28(um)-334(op)-27(eration.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(tege)-1(r,)-341(real)-339(or)-340(complex)-340(v)56(ariable,)-342(whic)28(h)-339(m)-1(a)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-333(a)-334(rank)-333(1)-333(or)-333(2)-334(arra)28(y)83(.)]TJ 0 -11.956 Td [(T)28(yp)-28(e,)-333(kind,)-333(rank)-334(and)-333(size)-333(m)27(ust)-333(agree)-333(on)-334(all)-333(pro)-28(cesses.)]TJ/F16 11.9552 Tf -24.907 -21.917 Td [(Notes)]TJ + [-500(This)-241(routine)-241(ma)28(y)-241(b)-28(e)-241(called)-241(ev)28(en)-241(if)-241(a)-241(previous)-241(call)-241(to)]TJ/F30 9.9626 Tf 233.304 0 Td [(psb_info)]TJ/F8 9.9626 Tf 44.244 0 Td [(has)-241(returned)]TJ -264.818 -11.955 Td [(with)]TJ/F11 9.9626 Tf 22.962 0 Td [(iam)]TJ/F8 9.9626 Tf 20.663 0 Td [(=)]TJ/F14 9.9626 Tf 10.966 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1;)-374(indeed,)-367(it)-360(it)-361(is)-360(the)-361(only)-360(routine)-360(that)-361(ma)28(y)-360(b)-28(e)-361(called)-360(with)]TJ -62.34 -11.955 Td [(argumen)28(t)]TJ/F30 9.9626 Tf 44.583 0 Td [(icontxt)]TJ/F8 9.9626 Tf 39.933 0 Td [(in)-333(this)-334(situation)1(.)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ + -97.246 -19.925 Td [(2.)]TJ 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.272 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.011 -11.955 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ + [-500(A)-305(call)-306(to)-305(this)-305(routine)-305(with)]TJ/F30 9.9626 Tf 128.752 0 Td [(close=.true.)]TJ/F8 9.9626 Tf 65.806 0 Td [(implies)-305(a)-306(call)-305(to)]TJ/F30 9.9626 Tf 71.445 0 Td [(MPI_Finalize)]TJ/F8 9.9626 Tf 62.764 0 Td [(,)]TJ -316.037 -11.956 Td [(after)-333(whic)28(h)-334(no)-333(parallel)-333(routine)-334(ma)28(y)-333(b)-28(e)-333(called.)]TJ 0 g 0 G - -12.73 -19.925 Td [(2.)]TJ + -12.73 -19.925 Td [(3.)]TJ 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 33.208 0 Td [(dat)]TJ/F8 9.9626 Tf 19.012 0 Td [(argumen)28(t)-334(ma)28(y)-333(also)-334(b)-27(e)-334(a)-333(long)-333(in)28(teger)-334(scalar.)]TJ + [-500(If)-391(the)-390(user)-391(whishes)-391(to)-390(use)-391(m)28(ultiple)-391(comm)28(unication)-391(con)28(texts)-391(in)-390(the)-391(same)]TJ 12.73 -11.955 Td [(program,)-485(or)-455(to)-455(en)28(ter)-455(and)-454(exit)-455(m)27(u)1(ltiple)-455(times)-455(in)28(to)-455(the)-455(parallel)-455(en)28(viron-)]TJ 0 -11.955 Td [(men)28(t,)-494(this)-462(routine)-462(ma)28(y)-462(b)-28(e)-462(called)-462(to)-462(selectiv)28(ely)-462(close)-462(the)-462(con)27(texts)-462(with)]TJ/F30 9.9626 Tf 0 -11.955 Td [(close=.false.)]TJ/F8 9.9626 Tf 67.994 0 Td [(,)-244(while)-223(on)-222(the)-222(last)-222(call)-223(it)-222(should)-222(b)-28(e)-222(called)-222(with)]TJ/F30 9.9626 Tf 194.327 0 Td [(close=.true.)]TJ/F8 9.9626 Tf -262.321 -11.955 Td [(to)-333(sh)27(u)1(tdo)27(wn)-333(in)-333(a)-334(clean)-333(w)28(a)28(y)-334(the)-333(en)28(tire)-334(parallel)-333(en)28(vironmen)28(t.)]TJ 0 g 0 G - 99.987 -97.177 Td [(118)]TJ + 139.477 -212.744 Td [(112)]TJ 0 g 0 G ET endstream endobj -1651 0 obj +1664 0 obj << -/Length 6213 +/Length 2621 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(7.4)-1125(psb)]TJ ET q -1 0 0 1 120.951 706.328 cm +1 0 0 1 151.587 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 124.986 706.129 Td [(nrm2)-375(|)-375(Global)-375(2-norm)-375(reduction)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_nrm2\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -19.794 Td [(This)-425(subroutine)-426(imp)1(le)-1(men)28(ts)-425(a)-425(2-norm)-426(v)56(alue)-425(reduction)-426(op)-27(eration)-426(based)-425(on)]TJ -14.944 -11.955 Td [(the)-333(underlying)-334(comm)28(unication)-333(library)83(.)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -18.226 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.076 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.076 Td [(icon)32(txt)]TJ -0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.076 Td [(dat)]TJ -0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-334(con)28(tribution)-333(to)-333(the)-334(global)-333(minim)28(um.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-421(as:)-619(a)-421(real)-421(v)55(ariable,)-443(whic)28(h)-421(ma)28(y)-421(b)-28(e)-421(a)-421(scalar,)-443(or)-421(a)-420(rank)-421(1)-421(arra)28(y)83(.)]TJ 0 -11.955 Td [(Kind,)-333(rank)-333(and)-334(size)-333(m)28(ust)-334(agree)-333(on)-333(all)-334(pro)-27(ce)-1(sses.)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(get)]TJ +ET +q +1 0 0 1 174.52 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 178.555 706.129 Td [(mpi)]TJ +ET +q +1 0 0 1 201.778 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 205.813 706.129 Td [(comm)-375(|)-375(Get)-375(the)-375(MPI)-375(comm)31(unicator)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.075 Td [(ro)-32(ot)]TJ 0 g 0 G -/F8 9.9626 Tf 25.931 0 Td [(Pro)-28(cess)-276(to)-276(hold)-276(the)-276(\014nal)-275(v)55(alue,)-287(or)]TJ/F14 9.9626 Tf 146.411 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-276(to)-276(mak)28(e)-276(it)-276(a)28(v)55(ailable)-276(on)-276(all)-276(p)1(ro)-28(cesses.)]TJ -155.184 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.428 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.748 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1,)-333(default)-334(-1.)]TJ +/F30 9.9626 Tf -105.918 -18.389 Td [(icomm)-525(=)-525(psb_get_mpi_comm\050icontxt\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-450(function)-451(retu)1(rns)-451(the)-450(MPI)-450(comm)27(uni)1(c)-1(ator)-450(asso)-28(ciated)-450(with)-450(a)-451(PSBLAS)]TJ -14.944 -11.955 Td [(con)28(text)]TJ 0 g 0 G -/F27 9.9626 Tf -251.325 -31.749 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G - 0 -19.076 Td [(dat)]TJ +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G -/F8 9.9626 Tf 21.372 0 Td [(On)-333(destination)-333(pro)-28(cess\050es\051,)-334(the)-333(result)-333(of)-334(the)-333(2-norm)-333(reduction.)]TJ 3.535 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(real)-333(v)55(ariable,)-333(whic)28(h)-333(ma)27(y)-333(b)-28(e)-333(a)-333(sc)-1(alar)1(,)-334(or)-333(a)-333(rank)-334(1)-333(arra)28(y)83(.)]TJ 0 -11.955 Td [(Kind,)-333(rank)-333(and)-334(size)-333(m)28(ust)-334(agree)-333(on)-333(all)-334(pro)-27(ce)-1(sses.)]TJ/F16 11.9552 Tf -24.907 -19.794 Td [(Notes)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -18.226 Td [(1.)]TJ + 0 -19.925 Td [(icon)32(txt)]TJ 0 g 0 G - [-500(This)-416(reduction)-416(is)-416(appropriate)-416(to)-416(compute)-416(the)-417(results)-416(of)-416(m)28(ultiple)-416(\050lo)-28(cal\051)]TJ 12.73 -11.955 Td [(NRM2)-333(op)-28(erations)-333(at)-334(the)-333(same)-334(ti)1(m)-1(e.)]TJ +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G - -12.73 -19.076 Td [(2.)]TJ +/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G - [-500(Denoting)-283(b)28(y)]TJ/F11 9.9626 Tf 68.601 0 Td [(dat)]TJ/F10 6.9738 Tf 14.05 -1.494 Td [(i)]TJ/F8 9.9626 Tf 6.138 1.494 Td [(the)-283(v)55(alue)-283(of)-283(the)-283(v)55(ariable)]TJ/F11 9.9626 Tf 106.29 0 Td [(dat)]TJ/F8 9.9626 Tf 16.87 0 Td [(on)-283(pro)-28(cess)]TJ/F11 9.9626 Tf 47.57 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(,)-293(the)-283(output)]TJ/F11 9.9626 Tf 54.503 0 Td [(r)-28(es)]TJ/F8 9.9626 Tf -304.724 -11.955 Td [(is)-333(equiv)55(alen)28(t)-333(to)-334(the)-333(computation)-333(of)]TJ/F11 9.9626 Tf 122.071 -25.904 Td [(r)-28(es)]TJ/F8 9.9626 Tf 16.847 0 Td [(=)]TJ/F1 9.9626 Tf 10.516 14.335 Td [(s)]TJ -ET -q -1 0 0 1 284.199 203.069 cm -[]0 d 0 J 0.398 w 0 0 m 34.569 0 l S -Q -BT -/F1 9.9626 Tf 284.199 197.999 Td [(X)]TJ/F10 6.9738 Tf 5.786 -21.219 Td [(i)]TJ/F11 9.9626 Tf 10.265 11.755 Td [(dat)]TJ/F7 6.9738 Tf 14.049 3.431 Td [(2)]TJ/F10 6.9738 Tf 0 -6.208 Td [(i)]TJ/F11 9.9626 Tf 4.469 2.777 Td [(;)]TJ/F8 9.9626 Tf -193.966 -30.908 Td [(with)-333(care)-334(tak)28(en)-333(to)-334(a)28(v)28(oid)-333(unnecessary)-334(o)28(v)28(er\015o)28(w.)]TJ 0 g 0 G - -12.73 -19.075 Td [(3.)]TJ + 0 -19.925 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G - [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.273 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.012 -11.956 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ +/F8 9.9626 Tf 78.387 0 Td [(The)-314(MPI)-314(comm)28(unicator)-314(ass)-1(o)-27(ciated)-314(with)-314(the)-315(PS)1(B)-1(LAS)-314(vir)1(tual)]TJ -53.48 -11.955 Td [(parallel)-333(mac)27(hin)1(e)-1(.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ/F16 11.9552 Tf -74.942 -33.873 Td [(Notes)]TJ/F8 9.9626 Tf 37.587 0 Td [(The)-369(subroutine)-368(v)27(ersion)]TJ/F30 9.9626 Tf 104.726 0 Td [(psb_get_mpicomm)]TJ/F8 9.9626 Tf 82.129 0 Td [(is)-369(still)-369(a)28(v)56(ailable)-369(but)-369(is)-368(dep-)]TJ -224.442 -11.955 Td [(recated.)]TJ 0 g 0 G - 139.477 -36.158 Td [(119)]TJ + 164.384 -320.34 Td [(113)]TJ 0 g 0 G ET endstream endobj -1659 0 obj +1668 0 obj << -/Length 5369 +/Length 3470 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(7.5)-1125(psb)]TJ +ET +q +1 0 0 1 202.396 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 206.431 706.129 Td [(get)]TJ +ET +q +1 0 0 1 225.33 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 229.365 706.129 Td [(mpi)]TJ ET q -1 0 0 1 171.761 706.328 cm +1 0 0 1 252.587 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 175.796 706.129 Td [(snd)-375(|)-375(Send)-375(data)]TJ +/F16 11.9552 Tf 256.622 706.129 Td [(rank)-375(|)-375(Get)-375(the)-375(MPI)-375(rank)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_snd\050icontxt,)-525(dat,)-525(dst,)-525(m\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-333(subroutine)-334(sends)-333(a)-333(pac)28(k)27(et)-333(of)-333(data)-334(to)-333(a)-333(destination.)]TJ +/F30 9.9626 Tf -105.917 -18.389 Td [(rank)-525(=)-525(psb_get_mpi_rank\050icontxt,)-525(id\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-333(function)-334(r)1(e)-1(tu)1(rns)-334(the)-333(MPI)-333(rank)-334(of)-333(the)-333(PSBLAS)-334(p)1(ro)-28(cess)]TJ/F11 9.9626 Tf 264.342 0 Td [(id)]TJ 0 g 0 G -/F27 9.9626 Tf -14.944 -19.926 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -279.286 -19.926 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous:)-444(s)-1(ee)-333(usage)-333(notes.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G 0 -19.925 Td [(icon)32(txt)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ -0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(The)-333(data)-334(to)-333(b)-28(e)-333(sen)28(t.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(tege)-1(r,)-341(real)-339(or)-340(complex)-340(v)56(ariable,)-342(whic)28(h)-339(m)-1(a)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-381(a)-381(rank)-381(1)-381(or)-381(2)-381(arra)28(y)83(,)-393(or)-381(a)-381(c)28(haracte)-1(r)-381(or)-381(logical)-381(scalar.)-968(T)27(yp)-27(e,)-393(kind)-381(and)]TJ 0 -11.955 Td [(rank)-327(m)27(ust)-327(agree)-328(on)-327(sender)-328(and)-327(receiv)28(e)-1(r)-327(pro)-28(cess;)-329(if)]TJ/F11 9.9626 Tf 220.724 0 Td [(m)]TJ/F8 9.9626 Tf 12.01 0 Td [(is)-328(n)1(o)-1(t)-327(sp)-28(eci\014ed,)-328(s)-1(ize)]TJ -232.734 -11.955 Td [(m)28(ust)-334(agree)-333(as)-333(w)27(ell.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.926 Td [(dst)]TJ +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.51 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G -/F8 9.9626 Tf 20.321 0 Td [(Destination)-333(pro)-28(cess.)]TJ 4.586 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-1(n)-333(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 138.176 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(dst)-278(<)]TJ/F8 9.9626 Tf 23.969 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1.)]TJ +/F27 9.9626 Tf -24.906 -19.925 Td [(id)]TJ 0 g 0 G -/F27 9.9626 Tf -239.002 -31.881 Td [(m)]TJ -0 g 0 G -/F8 9.9626 Tf 14.529 0 Td [(Num)28(b)-28(er)-333(of)-334(ro)28(ws.)]TJ 10.378 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf 43.455 0 Td [(.)]TJ -73.066 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 138.176 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(m)-278(<)]TJ/F8 9.9626 Tf 19.263 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(siz)-44(e)]TJ/F8 9.9626 Tf 17.813 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(dat;)]TJ/F8 9.9626 Tf 18.477 0 Td [(1\051.)]TJ -226.384 -11.956 Td [(When)]TJ/F11 9.9626 Tf 29.071 0 Td [(dat)]TJ/F8 9.9626 Tf 17.383 0 Td [(is)-335(a)-334(rank)-335(2)-335(arra)28(y)84(,)-335(sp)-28(eci\014es)-335(the)-335(n)28(um)28(b)-28(er)-334(of)-335(ro)28(ws)-335(to)-335(b)-27(e)-335(sen)28(t)-335(inde-)]TJ -46.454 -11.955 Td [(p)-28(enden)28(tly)-285(of)-285(the)-286(leadin)1(g)-286(dimension)]TJ/F11 9.9626 Tf 153.741 0 Td [(siz)-44(e)]TJ/F8 9.9626 Tf 17.813 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(dat;)]TJ/F8 9.9626 Tf 18.477 0 Td [(1\051;)-301(m)27(u)1(s)-1(t)-285(ha)28(v)28(e)-285(the)-286(same)-285(v)55(al)1(ue)]TJ -193.905 -11.955 Td [(on)-333(sending)-334(and)-333(receiving)-333(pro)-28(cesses.)]TJ +/F8 9.9626 Tf 14.529 0 Td [(Iden)28(ti\014er)-333(of)-334(a)-333(pro)-28(cess)-333(in)-334(the)-333(PSBLAS)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ 10.377 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.51 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(0)]TJ/F14 9.9626 Tf 142.051 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(id)]TJ/F14 9.9626 Tf 11.385 0 Td [(\024)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.207 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -222.543 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F16 11.9552 Tf 0 -21.918 Td [(Notes)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ + 0 -19.925 Td [(F)96(unciton)-384(v)64(alue)]TJ 0 g 0 G - [-500(This)-402(subroutine)-403(implies)-402(a)-402(sync)27(hronization,)-419(but)-403(on)1(ly)-403(b)-28(et)28(w)28(een)-403(th)1(e)-403(calling)]TJ 12.73 -11.955 Td [(pro)-28(cess)-333(and)-333(the)-334(destination)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 157.52 0 Td [(dst)]TJ/F8 9.9626 Tf 13.453 0 Td [(.)]TJ +/F8 9.9626 Tf 78.386 0 Td [(The)-333(MPI)-334(rank)-333(asso)-28(ciated)-333(with)-333(the)-334(PSBLAS)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 230.248 0 Td [(id)]TJ/F8 9.9626 Tf 8.618 0 Td [(.)]TJ -292.346 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ/F16 11.9552 Tf -74.941 -33.873 Td [(Notes)]TJ/F8 9.9626 Tf 38.323 0 Td [(The)-443(subroutine)-442(v)28(ersion)]TJ/F30 9.9626 Tf 106.934 0 Td [(psb_get_rank)]TJ/F8 9.9626 Tf 67.174 0 Td [(is)-443(still)-442(a)27(v)56(ailable)-443(but)-442(is)-443(depre-)]TJ -212.431 -11.956 Td [(cated.)]TJ 0 g 0 G - -31.496 -105.147 Td [(120)]TJ + 164.383 -276.504 Td [(114)]TJ 0 g 0 G ET endstream endobj -1664 0 obj +1672 0 obj << -/Length 5352 +/Length 1191 >> stream 0 g 0 G 0 g 0 G -BT -/F16 11.9552 Tf 99.895 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 120.951 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 124.986 706.129 Td [(rcv)-375(|)-375(Receiv)31(e)-375(data)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf -25.091 -18.389 Td [(call)-525(psb_rcv\050icontxt,)-525(dat,)-525(src,)-525(m\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-333(subroutine)-334(receiv)28(es)-333(a)-334(pac)28(k)28(et)-333(of)-334(data)-333(to)-333(a)-334(destination.)]TJ -0 g 0 G -/F27 9.9626 Tf -14.944 -19.926 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous:)-445(see)-333(usage)-333(notes.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ -0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(src)]TJ -0 g 0 G -/F8 9.9626 Tf 19.311 0 Td [(Source)-333(pro)-28(cess.)]TJ 5.596 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 138.176 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(sr)-28(c)-277(<)]TJ/F8 9.9626 Tf 24.269 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1.)]TJ +BT +/F16 11.9552 Tf 99.895 706.129 Td [(7.6)-1125(psb)]TJ +ET +q +1 0 0 1 151.587 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 155.621 706.129 Td [(wtime)-375(|)-375(W)94(all)-375(clo)-32(c)32(k)-375(timing)]TJ 0 g 0 G -/F27 9.9626 Tf -239.302 -31.88 Td [(m)]TJ 0 g 0 G -/F8 9.9626 Tf 14.529 0 Td [(Num)28(b)-28(er)-333(of)-334(ro)28(ws.)]TJ 10.378 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf 43.455 0 Td [(.)]TJ -73.066 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 138.176 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(m)-278(<)]TJ/F8 9.9626 Tf 19.264 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(siz)-44(e)]TJ/F8 9.9626 Tf 17.812 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(dat;)]TJ/F8 9.9626 Tf 18.477 0 Td [(1\051.)]TJ -226.384 -11.955 Td [(When)]TJ/F11 9.9626 Tf 29.071 0 Td [(dat)]TJ/F8 9.9626 Tf 17.383 0 Td [(is)-335(a)-334(rank)-335(2)-335(arra)28(y)84(,)-335(sp)-28(eci\014es)-335(the)-335(n)28(um)28(b)-28(er)-334(of)-335(ro)28(ws)-335(to)-335(b)-27(e)-335(sen)28(t)-335(inde-)]TJ -46.454 -11.955 Td [(p)-28(enden)28(tly)-285(of)-285(the)-286(leading)-285(dimension)]TJ/F11 9.9626 Tf 153.742 0 Td [(siz)-44(e)]TJ/F8 9.9626 Tf 17.812 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(dat;)]TJ/F8 9.9626 Tf 18.477 0 Td [(1\051;)-301(m)27(ust)-285(ha)28(v)28(e)-285(the)-286(same)-285(v)55(alu)1(e)]TJ -193.905 -11.955 Td [(on)-333(sending)-334(and)-333(receiving)-333(pro)-28(cesses.)]TJ +/F30 9.9626 Tf -55.726 -18.389 Td [(time)-525(=)-525(psb_wtime\050\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-474(function)-473(returns)-474(a)-473(w)27(all)-473(clo)-28(c)28(k)-474(timer.)-865(The)-474(resolution)-473(of)-474(the)-473(timer)-474(is)]TJ -14.944 -11.955 Td [(dep)-28(enden)28(t)-333(on)-334(the)-333(underlying)-333(parallel)-333(en)27(vir)1(onme)-1(n)28(t)-333(implemen)28(tation.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G - 0 -19.926 Td [(dat)]TJ +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(Exit)]TJ 0 g 0 G -/F8 9.9626 Tf 21.371 0 Td [(The)-333(data)-334(to)-333(b)-28(e)-333(receiv)28(ed.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(te)-1(ger,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-340(ma)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-381(a)-381(rank)-381(1)-381(or)-381(2)-381(arra)27(y)84(,)-393(or)-381(a)-381(c)27(har)1(ac)-1(ter)-381(or)-381(logical)-381(scalar.)-969(T)28(yp)-27(e)-1(,)-393(ki)1(nd)-381(and)]TJ 0 -11.956 Td [(rank)-327(m)27(ust)-327(agree)-328(on)-327(sender)-328(and)-327(receiv)27(er)-327(pro)-28(cess;)-329(if)]TJ/F11 9.9626 Tf 220.724 0 Td [(m)]TJ/F8 9.9626 Tf 12.01 0 Td [(is)-328(not)-327(sp)-28(eci\014ed,)-329(size)]TJ -232.734 -11.955 Td [(m)28(ust)-334(agree)-333(as)-333(w)27(ell.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ 0 g 0 G -/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ + 0 -19.925 Td [(F)96(unction)-384(v)64(alue)]TJ 0 g 0 G - [-500(This)-402(subroutine)-403(implies)-402(a)-402(s)-1(yn)1(c)27(hronization,)-419(but)-403(onl)1(y)-403(b)-28(et)28(w)28(een)-403(the)-402(calling)]TJ 12.73 -11.955 Td [(pro)-28(cess)-333(and)-333(the)-334(source)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 136.516 0 Td [(sr)-28(c)]TJ/F8 9.9626 Tf 13.753 0 Td [(.)]TJ +/F8 9.9626 Tf 78.387 0 Td [(the)-333(elapsed)-334(time)-333(in)-333(seconds.)]TJ -53.48 -11.955 Td [(Returned)-333(as:)-445(a)]TJ/F30 9.9626 Tf 68.3 0 Td [(real\050psb_dpk_\051)]TJ/F8 9.9626 Tf 76.545 0 Td [(v)56(ariable.)]TJ 0 g 0 G - -10.792 -105.147 Td [(121)]TJ + -5.368 -491.698 Td [(115)]TJ 0 g 0 G ET endstream endobj -1569 0 obj +1568 0 obj << /Type /ObjStm /N 100 -/First 965 -/Length 9049 +/First 973 +/Length 9773 >> stream -1561 0 1562 58 1563 116 1564 174 1565 231 1566 289 1567 347 1555 405 1571 523 1573 641 -409 700 1570 758 1575 838 1577 956 413 1014 1578 1071 1579 1129 1574 1187 1581 1319 1583 1437 -417 1496 1584 1554 1585 1612 1580 1671 1587 1803 1589 1921 421 1979 1590 2036 1591 2094 1592 2152 -1586 2210 1594 2342 1596 2460 425 2519 1593 2577 1598 2683 1600 2801 429 2859 1597 2916 1603 3048 -1605 3166 433 3225 1602 3283 1607 3389 1609 3507 437 3565 1606 3622 1611 3728 1613 3846 441 3905 -1610 3963 1615 4069 1617 4187 445 4245 1614 4302 1619 4434 1621 4552 449 4611 1622 4669 1623 4728 -1618 4787 1625 4919 1627 5037 453 5095 1628 5152 1629 5210 1624 5268 1632 5400 1634 5518 457 5577 -1635 5635 1636 5694 1631 5753 1638 5885 1640 6003 461 6061 1641 6118 1642 6176 1637 6234 1644 6366 -1646 6484 465 6543 1647 6601 1648 6660 1643 6719 1650 6851 1652 6969 469 7027 1653 7084 1654 7141 -1656 7199 1649 7256 1658 7426 1660 7544 473 7603 1661 7661 1657 7719 1663 7851 1665 7969 477 8027 -% 1561 0 obj -<< -/D [1556 0 R /XYZ 99.895 624.491 null] ->> -% 1562 0 obj -<< -/D [1556 0 R /XYZ 99.895 556.745 null] ->> -% 1563 0 obj -<< -/D [1556 0 R /XYZ 99.895 500.954 null] ->> -% 1564 0 obj -<< -/D [1556 0 R /XYZ 99.895 468.52 null] ->> -% 1565 0 obj -<< -/D [1556 0 R /XYZ 99.895 425.182 null] ->> -% 1566 0 obj -<< -/D [1556 0 R /XYZ 99.895 383.395 null] ->> +1567 0 1563 59 1571 178 1569 317 1573 464 388 522 1574 579 1570 637 1577 756 1575 895 +1579 1041 392 1100 1580 1158 1576 1217 1583 1336 1581 1475 1585 1622 396 1680 1586 1737 1582 1795 +1589 1914 1587 2053 1591 2199 400 2258 1592 2316 1593 2374 1588 2433 1596 2539 1594 2678 1598 2824 +405 2882 1599 2939 1600 2997 1595 3055 1604 3161 1602 3300 1606 3444 409 3503 1603 3561 1608 3680 +1610 3798 1611 3856 1612 3914 1613 3972 1607 4030 1618 4149 1614 4306 1615 4450 1616 4596 1620 4741 +413 4800 1617 4858 1622 4977 1624 5095 417 5153 1621 5210 1626 5329 1628 5447 1629 5506 1630 5565 +1631 5624 1632 5683 1633 5742 1634 5801 1635 5859 1636 5918 1637 5977 1625 6036 1639 6154 1641 6272 +421 6330 1638 6387 1644 6467 1646 6585 425 6644 1647 6702 1648 6761 1643 6820 1650 6952 1652 7070 +429 7128 1653 7185 1654 7242 1649 7300 1656 7432 1658 7550 433 7609 1659 7667 1660 7726 1661 7785 +1655 7844 1663 7976 1665 8094 437 8152 1662 8209 1667 8315 1669 8433 441 8492 1666 8550 1671 8682 % 1567 0 obj << -/D [1556 0 R /XYZ 99.895 355.499 null] +/D [1564 0 R /XYZ 150.705 382.883 null] >> -% 1555 0 obj +% 1563 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R /F7 785 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> % 1571 0 obj @@ -20368,352 +20505,376 @@ stream /Contents 1572 0 R /Resources 1570 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1568 0 R +/Parent 1561 0 R +/Annots [ 1569 0 R ] +>> +% 1569 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [294.721 495.239 361.779 506.364] +/A << /S /GoTo /D (descdata) >> >> % 1573 0 obj << -/D [1571 0 R /XYZ 149.705 753.953 null] +/D [1571 0 R /XYZ 98.895 753.953 null] >> -% 409 0 obj +% 388 0 obj +<< +/D [1571 0 R /XYZ 99.895 716.092 null] +>> +% 1574 0 obj << -/D [1571 0 R /XYZ 150.705 716.092 null] +/D [1571 0 R /XYZ 99.895 259.346 null] >> % 1570 0 obj << -/Font << /F16 570 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1575 0 obj +% 1577 0 obj << /Type /Page -/Contents 1576 0 R -/Resources 1574 0 R +/Contents 1578 0 R +/Resources 1576 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1568 0 R +/Parent 1561 0 R +/Annots [ 1575 0 R ] >> -% 1577 0 obj +% 1575 0 obj << -/D [1575 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.53 495.239 412.588 506.364] +/A << /S /GoTo /D (descdata) >> >> -% 413 0 obj +% 1579 0 obj << -/D [1575 0 R /XYZ 99.895 720.077 null] +/D [1577 0 R /XYZ 149.705 753.953 null] >> -% 1578 0 obj +% 392 0 obj << -/D [1575 0 R /XYZ 99.895 235.436 null] +/D [1577 0 R /XYZ 150.705 716.092 null] >> -% 1579 0 obj +% 1580 0 obj << -/D [1575 0 R /XYZ 99.895 213.573 null] +/D [1577 0 R /XYZ 150.705 382.883 null] >> -% 1574 0 obj +% 1576 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F11 770 0 R /F14 787 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1581 0 obj +% 1583 0 obj << /Type /Page -/Contents 1582 0 R -/Resources 1580 0 R +/Contents 1584 0 R +/Resources 1582 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1568 0 R +/Parent 1561 0 R +/Annots [ 1581 0 R ] >> -% 1583 0 obj +% 1581 0 obj << -/D [1581 0 R /XYZ 149.705 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [294.721 495.239 361.779 506.364] +/A << /S /GoTo /D (descdata) >> >> -% 417 0 obj +% 1585 0 obj << -/D [1581 0 R /XYZ 150.705 720.077 null] +/D [1583 0 R /XYZ 98.895 753.953 null] >> -% 1584 0 obj +% 396 0 obj << -/D [1581 0 R /XYZ 150.705 349.01 null] +/D [1583 0 R /XYZ 99.895 716.092 null] >> -% 1585 0 obj +% 1586 0 obj << -/D [1581 0 R /XYZ 150.705 315.192 null] +/D [1583 0 R /XYZ 99.895 259.346 null] >> -% 1580 0 obj +% 1582 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F14 787 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1587 0 obj +% 1589 0 obj << /Type /Page -/Contents 1588 0 R -/Resources 1586 0 R +/Contents 1590 0 R +/Resources 1588 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1568 0 R +/Parent 1561 0 R +/Annots [ 1587 0 R ] >> -% 1589 0 obj +% 1587 0 obj << -/D [1587 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.53 560.993 412.588 572.118] +/A << /S /GoTo /D (descdata) >> >> -% 421 0 obj +% 1591 0 obj << -/D [1587 0 R /XYZ 99.895 720.077 null] +/D [1589 0 R /XYZ 149.705 753.953 null] >> -% 1590 0 obj +% 400 0 obj << -/D [1587 0 R /XYZ 99.895 442.659 null] +/D [1589 0 R /XYZ 150.705 716.092 null] >> -% 1591 0 obj +% 1592 0 obj << -/D [1587 0 R /XYZ 99.895 396.886 null] +/D [1589 0 R /XYZ 150.705 356.98 null] >> -% 1592 0 obj +% 1593 0 obj << -/D [1587 0 R /XYZ 99.895 365.005 null] +/D [1589 0 R /XYZ 150.705 313.144 null] >> -% 1586 0 obj +% 1588 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F11 770 0 R /F14 787 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1594 0 obj +% 1596 0 obj << /Type /Page -/Contents 1595 0 R -/Resources 1593 0 R +/Contents 1597 0 R +/Resources 1595 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1568 0 R +/Parent 1601 0 R +/Annots [ 1594 0 R ] >> -% 1596 0 obj +% 1594 0 obj << -/D [1594 0 R /XYZ 149.705 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [294.721 574.94 361.779 586.065] +/A << /S /GoTo /D (descdata) >> >> -% 425 0 obj +% 1598 0 obj << -/D [1594 0 R /XYZ 150.705 720.077 null] +/D [1596 0 R /XYZ 98.895 753.953 null] >> -% 1593 0 obj +% 405 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R >> -/ProcSet [ /PDF /Text ] +/D [1596 0 R /XYZ 99.895 716.092 null] >> -% 1598 0 obj +% 1599 0 obj << -/Type /Page -/Contents 1599 0 R -/Resources 1597 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1601 0 R +/D [1596 0 R /XYZ 99.895 370.928 null] >> % 1600 0 obj << -/D [1598 0 R /XYZ 98.895 753.953 null] ->> -% 429 0 obj -<< -/D [1598 0 R /XYZ 99.895 720.077 null] +/D [1596 0 R /XYZ 99.895 339.047 null] >> -% 1597 0 obj +% 1595 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F11 770 0 R /F27 572 0 R /F14 787 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1603 0 obj +% 1604 0 obj << /Type /Page -/Contents 1604 0 R -/Resources 1602 0 R +/Contents 1605 0 R +/Resources 1603 0 R /MediaBox [0 0 595.276 841.89] /Parent 1601 0 R +/Annots [ 1602 0 R ] +>> +% 1602 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.53 484.857 423.049 495.982] +/A << /S /GoTo /D (spdata) >> >> -% 1605 0 obj +% 1606 0 obj << -/D [1603 0 R /XYZ 149.705 753.953 null] +/D [1604 0 R /XYZ 149.705 753.953 null] >> -% 433 0 obj +% 409 0 obj << -/D [1603 0 R /XYZ 150.705 720.077 null] +/D [1604 0 R /XYZ 150.705 716.092 null] >> -% 1602 0 obj +% 1603 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1607 0 obj +% 1608 0 obj << /Type /Page -/Contents 1608 0 R -/Resources 1606 0 R +/Contents 1609 0 R +/Resources 1607 0 R /MediaBox [0 0 595.276 841.89] /Parent 1601 0 R >> -% 1609 0 obj -<< -/D [1607 0 R /XYZ 98.895 753.953 null] ->> -% 437 0 obj -<< -/D [1607 0 R /XYZ 99.895 720.077 null] ->> -% 1606 0 obj +% 1610 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R >> -/ProcSet [ /PDF /Text ] +/D [1608 0 R /XYZ 98.895 753.953 null] >> % 1611 0 obj << -/Type /Page -/Contents 1612 0 R -/Resources 1610 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1601 0 R +/D [1608 0 R /XYZ 99.895 496.913 null] >> -% 1613 0 obj +% 1612 0 obj << -/D [1611 0 R /XYZ 149.705 753.953 null] +/D [1608 0 R /XYZ 99.895 439.185 null] >> -% 441 0 obj +% 1613 0 obj << -/D [1611 0 R /XYZ 150.705 720.077 null] +/D [1608 0 R /XYZ 99.895 418.983 null] >> -% 1610 0 obj +% 1607 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R >> +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R /F16 582 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1615 0 obj +% 1618 0 obj << /Type /Page -/Contents 1616 0 R -/Resources 1614 0 R +/Contents 1619 0 R +/Resources 1617 0 R /MediaBox [0 0 595.276 841.89] /Parent 1601 0 R +/Annots [ 1614 0 R 1615 0 R 1616 0 R ] >> -% 1617 0 obj +% 1614 0 obj << -/D [1615 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.53 529.112 423.049 540.237] +/A << /S /GoTo /D (spdata) >> >> -% 445 0 obj +% 1615 0 obj << -/D [1615 0 R /XYZ 99.895 720.077 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.53 461.366 412.588 472.491] +/A << /S /GoTo /D (descdata) >> >> -% 1614 0 obj +% 1616 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F11 770 0 R /F14 787 0 R >> -/ProcSet [ /PDF /Text ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [372.153 405.575 439.211 416.7] +/A << /S /GoTo /D (precdata) >> >> -% 1619 0 obj +% 1620 0 obj << -/Type /Page -/Contents 1620 0 R -/Resources 1618 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1601 0 R +/D [1618 0 R /XYZ 149.705 753.953 null] >> -% 1621 0 obj +% 413 0 obj << -/D [1619 0 R /XYZ 149.705 753.953 null] +/D [1618 0 R /XYZ 150.705 716.092 null] >> -% 449 0 obj +% 1617 0 obj << -/D [1619 0 R /XYZ 150.705 720.077 null] +/Font << /F16 582 0 R /F8 585 0 R /F30 810 0 R /F27 584 0 R /F11 796 0 R >> +/ProcSet [ /PDF /Text ] >> % 1622 0 obj << -/D [1619 0 R /XYZ 150.705 247.391 null] +/Type /Page +/Contents 1623 0 R +/Resources 1621 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1601 0 R +>> +% 1624 0 obj +<< +/D [1622 0 R /XYZ 98.895 753.953 null] >> -% 1623 0 obj +% 417 0 obj << -/D [1619 0 R /XYZ 150.705 213.573 null] +/D [1622 0 R /XYZ 99.895 716.092 null] >> -% 1618 0 obj +% 1621 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F14 787 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F11 796 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1625 0 obj +% 1626 0 obj << /Type /Page -/Contents 1626 0 R -/Resources 1624 0 R +/Contents 1627 0 R +/Resources 1625 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1630 0 R ->> -% 1627 0 obj -<< -/D [1625 0 R /XYZ 98.895 753.953 null] ->> -% 453 0 obj -<< -/D [1625 0 R /XYZ 99.895 720.077 null] +/Parent 1601 0 R >> % 1628 0 obj << -/D [1625 0 R /XYZ 99.895 247.391 null] +/D [1626 0 R /XYZ 149.705 753.953 null] >> % 1629 0 obj << -/D [1625 0 R /XYZ 99.895 213.573 null] +/D [1626 0 R /XYZ 150.705 702.144 null] >> -% 1624 0 obj +% 1630 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F14 787 0 R /F11 770 0 R >> -/ProcSet [ /PDF /Text ] +/D [1626 0 R /XYZ 150.705 668.326 null] +>> +% 1631 0 obj +<< +/D [1626 0 R /XYZ 150.705 624.491 null] >> % 1632 0 obj << -/Type /Page -/Contents 1633 0 R -/Resources 1631 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1630 0 R +/D [1626 0 R /XYZ 150.705 556.745 null] >> -% 1634 0 obj +% 1633 0 obj << -/D [1632 0 R /XYZ 149.705 753.953 null] +/D [1626 0 R /XYZ 150.705 500.954 null] >> -% 457 0 obj +% 1634 0 obj << -/D [1632 0 R /XYZ 150.705 720.077 null] +/D [1626 0 R /XYZ 150.705 468.52 null] >> % 1635 0 obj << -/D [1632 0 R /XYZ 150.705 247.391 null] +/D [1626 0 R /XYZ 150.705 425.182 null] >> % 1636 0 obj << -/D [1632 0 R /XYZ 150.705 213.573 null] +/D [1626 0 R /XYZ 150.705 383.395 null] >> -% 1631 0 obj +% 1637 0 obj +<< +/D [1626 0 R /XYZ 150.705 355.499 null] +>> +% 1625 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F14 787 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R /F7 811 0 R >> /ProcSet [ /PDF /Text ] >> -% 1638 0 obj +% 1639 0 obj << /Type /Page -/Contents 1639 0 R -/Resources 1637 0 R +/Contents 1640 0 R +/Resources 1638 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1630 0 R ->> -% 1640 0 obj -<< -/D [1638 0 R /XYZ 98.895 753.953 null] ->> -% 461 0 obj -<< -/D [1638 0 R /XYZ 99.895 720.077 null] +/Parent 1642 0 R >> % 1641 0 obj << -/D [1638 0 R /XYZ 99.895 235.436 null] +/D [1639 0 R /XYZ 98.895 753.953 null] >> -% 1642 0 obj +% 421 0 obj << -/D [1638 0 R /XYZ 99.895 201.618 null] +/D [1639 0 R /XYZ 99.895 716.092 null] >> -% 1637 0 obj +% 1638 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F14 787 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> % 1644 0 obj @@ -20722,15 +20883,15 @@ stream /Contents 1645 0 R /Resources 1643 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1630 0 R +/Parent 1642 0 R >> % 1646 0 obj << /D [1644 0 R /XYZ 149.705 753.953 null] >> -% 465 0 obj +% 425 0 obj << -/D [1644 0 R /XYZ 150.705 720.077 null] +/D [1644 0 R /XYZ 150.705 716.092 null] >> % 1647 0 obj << @@ -20738,11 +20899,11 @@ stream >> % 1648 0 obj << -/D [1644 0 R /XYZ 150.705 201.618 null] +/D [1644 0 R /XYZ 150.705 213.573 null] >> % 1643 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F14 787 0 R /F11 770 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F11 796 0 R /F14 813 0 R >> /ProcSet [ /PDF /Text ] >> % 1650 0 obj @@ -20751,56 +20912,60 @@ stream /Contents 1651 0 R /Resources 1649 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1630 0 R +/Parent 1642 0 R >> % 1652 0 obj << /D [1650 0 R /XYZ 98.895 753.953 null] >> -% 469 0 obj +% 429 0 obj << -/D [1650 0 R /XYZ 99.895 720.077 null] +/D [1650 0 R /XYZ 99.895 716.092 null] >> % 1653 0 obj << -/D [1650 0 R /XYZ 99.895 272.94 null] +/D [1650 0 R /XYZ 99.895 349.01 null] >> % 1654 0 obj << -/D [1650 0 R /XYZ 99.895 239.973 null] ->> -% 1656 0 obj -<< -/D [1650 0 R /XYZ 99.895 152.13 null] +/D [1650 0 R /XYZ 99.895 315.192 null] >> % 1649 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F14 787 0 R /F11 770 0 R /F10 786 0 R /F1 1655 0 R /F7 785 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F14 813 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> -% 1658 0 obj +% 1656 0 obj << /Type /Page -/Contents 1659 0 R -/Resources 1657 0 R +/Contents 1657 0 R +/Resources 1655 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1630 0 R +/Parent 1642 0 R >> -% 1660 0 obj +% 1658 0 obj << -/D [1658 0 R /XYZ 149.705 753.953 null] +/D [1656 0 R /XYZ 149.705 753.953 null] >> -% 473 0 obj +% 433 0 obj +<< +/D [1656 0 R /XYZ 150.705 716.092 null] +>> +% 1659 0 obj +<< +/D [1656 0 R /XYZ 150.705 442.659 null] +>> +% 1660 0 obj << -/D [1658 0 R /XYZ 150.705 720.077 null] +/D [1656 0 R /XYZ 150.705 396.886 null] >> % 1661 0 obj << -/D [1658 0 R /XYZ 150.705 223.48 null] +/D [1656 0 R /XYZ 150.705 365.005 null] >> -% 1657 0 obj +% 1655 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F11 770 0 R /F14 787 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F11 796 0 R /F14 813 0 R >> /ProcSet [ /PDF /Text ] >> % 1663 0 obj @@ -20809,189 +20974,354 @@ stream /Contents 1664 0 R /Resources 1662 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1667 0 R +/Parent 1642 0 R >> % 1665 0 obj << /D [1663 0 R /XYZ 98.895 753.953 null] >> -% 477 0 obj +% 437 0 obj +<< +/D [1663 0 R /XYZ 99.895 716.092 null] +>> +% 1662 0 obj +<< +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1667 0 obj +<< +/Type /Page +/Contents 1668 0 R +/Resources 1666 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1642 0 R +>> +% 1669 0 obj +<< +/D [1667 0 R /XYZ 149.705 753.953 null] +>> +% 441 0 obj +<< +/D [1667 0 R /XYZ 150.705 716.092 null] +>> +% 1666 0 obj +<< +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F11 796 0 R /F27 584 0 R /F14 813 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1671 0 obj << -/D [1663 0 R /XYZ 99.895 720.077 null] +/Type /Page +/Contents 1672 0 R +/Resources 1670 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1674 0 R >> endstream endobj -1673 0 obj +1678 0 obj << -/Length 6407 +/Length 1511 >> stream 0 g 0 G 0 g 0 G BT -/F16 14.3462 Tf 150.705 706.129 Td [(8)-1125(Error)-375(handling)]TJ/F8 9.9626 Tf 0 -21.821 Td [(The)-446(PSBLAS)-446(library)-446(error)-446(handling)-446(p)-28(olicy)-446(has)-446(b)-28(een)-446(completely)-446(rewritten)-446(in)]TJ 0 -11.955 Td [(v)28(ersion)-448(2.0.)-788(The)-448(idea)-448(b)-27(ehind)-448(the)-448(design)-448(of)-447(this)-448(new)-448(error)-448(handling)-447(strategy)]TJ 0 -11.955 Td [(is)-491(to)-492(k)28(eep)-491(error)-491(mes)-1(sages)-491(on)-491(a)-492(stac)28(k)-491(allo)28(wing)-492(th)1(e)-492(user)-491(to)-491(trace)-492(bac)28(k)-491(up)-492(t)1(o)]TJ 0 -11.956 Td [(the)-401(p)-27(oin)28(t)-401(where)-401(the)-400(\014rst)-401(error)-400(mes)-1(sage)-400(has)-401(b)-28(een)-400(generated.)-646(Ev)27(ery)-400(routine)-401(in)]TJ 0 -11.955 Td [(the)-442(P)1(SBLAS-2.0)-442(library)-441(has,)-469(as)-442(l)1(as)-1(t)-441(non-optional)-441(argumen)27(t,)-468(an)-442(in)28(teger)]TJ/F30 9.9626 Tf 322.79 0 Td [(info)]TJ/F8 9.9626 Tf -322.79 -11.955 Td [(v)56(ariable;)-385(whenev)28(er,)-376(inside)-368(the)-367(routine,)-376(an)-368(error)-367(is)-368(detected,)-376(this)-367(v)55(ariab)1(le)-368(is)-368(set)]TJ 0 -11.955 Td [(to)-381(a)-380(v)55(alu)1(e)-381(corresp)-28(onding)-380(to)-381(a)-380(sp)-28(eci\014c)-381(error)-380(co)-28(de.)-586(Then)-381(this)-380(error)-381(co)-28(de)-380(is)-381(also)]TJ 0 -11.955 Td [(pushed)-245(on)-245(the)-245(error)-245(stac)28(k)-245(and)-245(then)-245(either)-245(con)27(tr)1(ol)-245(is)-246(retur)1(ned)-245(to)-246(th)1(e)-246(caller)-245(routin)1(e)]TJ 0 -11.955 Td [(or)-372(the)-371(e)-1(xecution)-371(is)-372(ab)-28(orted,)-381(dep)-28(ending)-372(on)-371(the)-372(users)-372(c)28(hoice.)-560(A)28(t)-372(the)-372(time)-371(when)]TJ 0 -11.956 Td [(the)-364(execution)-363(is)-364(ab)-28(orted,)-371(an)-364(error)-364(message)-363(is)-364(prin)28(ted)-364(on)-364(standard)-363(output)-364(with)]TJ 0 -11.955 Td [(a)-448(lev)28(el)-448(of)-447(v)27(erb)-27(osit)27(y)-447(than)-448(can)-448(b)-27(e)-448(c)28(hosen)-448(b)28(y)-448(the)-448(user.)-787(If)-448(the)-448(execution)-447(is)-448(not)]TJ 0 -11.955 Td [(ab)-28(orted,)-328(then,)-329(the)-328(caller)-327(routine)-328(c)28(hec)28(ks)-328(the)-327(v)55(alue)-327(returned)-328(in)-327(the)]TJ/F30 9.9626 Tf 285.459 0 Td [(info)]TJ/F8 9.9626 Tf 24.185 0 Td [(v)56(ariable)]TJ -309.644 -11.955 Td [(and,)-359(if)-354(not)-354(zero,)-359(an)-353(error)-354(condition)-354(is)-354(raised.)-506(This)-354(pro)-28(cess)-354(con)28(tin)28(ues)-354(on)-354(all)-354(th)1(e)]TJ 0 -11.955 Td [(lev)28(els)-297(of)-296(nes)-1(ted)-296(calls)-297(un)28(til)-297(the)-296(lev)28(el)-297(where)-297(the)-296(user)-297(decides)-297(to)-296(ab)-28(ort)-297(the)-296(program)]TJ 0 -11.955 Td [(execution.)]TJ 14.944 -11.956 Td [(Figure)]TJ -0 0 1 rg 0 0 1 RG - [-353(9)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(7.7)-1125(psb)]TJ +ET +q +1 0 0 1 202.396 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 206.431 706.129 Td [(barrier)-352(|)-352(Sinc)31(hronization)-352(p)-31(oin)31(t)-352(parallel)-352(en)31(viron-)]TJ -25.091 -13.948 Td [(men)31(t)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -30.635 -18.389 Td [(call)-525(psb_barrier\050icontxt\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-398(subroutine)-397(acts)-398(as)-398(an)-398(explicit)-398(sync)28(hronization)-397(p)-28(oin)28(t)-398(for)-398(the)-398(PSBLAS)]TJ -14.944 -11.955 Td [(parallel)-333(virtual)-333(mac)27(hine.)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -19.925 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G - [-353(sho)28(ws)-353(the)-353(la)28(y)27(out)-353(of)-352(a)-353(ge)-1(n)1(e)-1(ri)1(c)]TJ/F30 9.9626 Tf 170.683 0 Td [(psb_foo)]TJ/F8 9.9626 Tf 40.129 0 Td [(routine)-353(with)-353(resp)-28(ect)-353(to)-353(the)]TJ -225.756 -11.955 Td [(PSBLAS-2.0)-326(error)-326(hand)1(ling)-326(p)-28(olicy)83(.)-442(It)-325(is)-326(p)-28(ossible)-326(to)-326(see)-326(ho)28(w,)-327(whenev)28(e)-1(r)-325(an)-326(error)]TJ 0 -11.955 Td [(condition)-379(is)-378(detected,)-390(the)]TJ/F30 9.9626 Tf 115.439 0 Td [(info)]TJ/F8 9.9626 Tf 24.694 0 Td [(v)56(ariable)-379(is)-379(set)-379(to)-378(the)-379(corresp)-28(onding)-378(error)-379(co)-28(de)]TJ -140.133 -11.955 Td [(whic)28(h)-376(is,)-387(then,)-386(pushed)-376(on)-376(top)-376(of)-376(the)-376(stac)28(k)-376(b)28(y)-376(means)-376(of)-376(the)]TJ/F30 9.9626 Tf 264.702 0 Td [(psb_errpush)]TJ/F8 9.9626 Tf 57.534 0 Td [(.)-572(An)]TJ -322.236 -11.955 Td [(error)-331(condition)-331(ma)28(y)-331(b)-28(e)-331(directly)-331(detected)-331(inside)-331(a)-331(routine)-331(or)-331(indirectly)-331(c)27(h)1(e)-1(c)28(king)]TJ 0 -11.956 Td [(the)-461(e)-1(rr)1(or)-462(co)-28(de)-461(returned)-462(returned)-461(b)28(y)-462(a)-461(called)-462(routine.)-829(Whenev)28(er)-461(an)-462(error)-461(is)]TJ 0 -11.955 Td [(encoun)28(tered,)-459(after)-434(it)-434(has)-433(b)-28(een)-434(pushed)-434(on)-434(stac)28(k,)-459(the)-434(program)-433(execution)-434(skips)]TJ 0 -11.955 Td [(to)-356(a)-356(p)-27(oin)28(t)-356(where)-356(the)-356(error)-355(condition)-356(is)-356(handled;)-367(the)-355(error)-356(condition)-356(is)-356(han)1(dled)]TJ 0 -11.955 Td [(either)-392(b)28(y)-392(returning)-392(con)28(trol)-392(to)-392(the)-392(caller)-391(routine)-392(or)-392(b)28(y)-392(calling)-392(the)]TJ/F30 9.9626 Tf 291.408 0 Td [(psb\134_error)]TJ/F8 9.9626 Tf -291.408 -11.955 Td [(routine)-478(whic)28(h)-479(pr)1(in)27(ts)-478(the)-478(con)28(ten)27(t)-478(of)-478(the)-478(error)-478(s)-1(tac)28(k)-478(and)-478(ab)-28(orts)-478(the)-478(program)]TJ 0 -11.955 Td [(execution,)-329(ac)-1(cord)1(ing)-329(to)-328(the)-329(c)28(hoice)-329(made)-328(b)27(y)-328(the)-329(user)-328(with)]TJ/F30 9.9626 Tf 252.028 0 Td [(psb_set_erraction)]TJ/F8 9.9626 Tf 88.916 0 Td [(.)]TJ -340.944 -11.956 Td [(The)-347(default)-346(is)-347(to)-346(prin)28(t)-347(the)-347(error)-346(and)-347(terminate)-346(the)-347(program,)-350(but)-346(the)-347(user)-346(ma)27(y)]TJ 0 -11.955 Td [(c)28(ho)-28(ose)-333(to)-334(handle)-333(the)-333(error)-334(explicitly)84(.)]TJ 14.944 -11.955 Td [(Figure)]TJ -0 0 1 rg 0 0 1 RG - [-479(10)]TJ 0 g 0 G - [-479(rep)-28(orts)-479(a)-479(sample)-480(error)-479(message)-479(generated)-479(b)28(y)-480(the)-479(PSBLAS-2.0)]TJ -14.944 -11.955 Td [(library)83(.)-451(This)-335(error)-336(has)-335(b)-28(een)-336(generated)-335(b)27(y)-335(the)-336(fact)-335(that)-336(the)-335(use)-1(r)-335(has)-336(c)28(hosen)-336(th)1(e)]TJ 0 -11.955 Td [(in)28(v)55(alid)-367(\134F)28(OO")-368(storage)-367(format)-368(to)-367(represen)27(t)-367(the)-368(sparse)-367(matrix.)-547(F)83(rom)-367(this)-368(error)]TJ 0 -11.955 Td [(message)-248(it)-248(is)-248(p)-27(oss)-1(i)1(ble)-248(to)-248(see)-248(that)-248(the)-248(error)-247(has)-248(b)-28(een)-248(detected)-248(inside)-248(th)1(e)]TJ/F30 9.9626 Tf 301.868 0 Td [(psb_cest)]TJ/F8 9.9626 Tf -301.868 -11.956 Td [(subroutine)-333(called)-334(b)28(y)]TJ/F30 9.9626 Tf 91.407 0 Td [(psb_spasb)]TJ/F8 9.9626 Tf 50.394 0 Td [(...)-444(b)27(y)-333(pro)-28(cess)-333(0)-333(\050i.e.)-445(the)-333(ro)-28(ot)-333(pro)-28(cess\051.)]TJ + 0 -19.925 Td [(icon)32(txt)]TJ +0 g 0 G +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G - 22.583 -211.304 Td [(122)]TJ + 139.476 -441.884 Td [(116)]TJ 0 g 0 G ET endstream endobj -1679 0 obj +1682 0 obj << -/Length 7220 +/Length 1370 >> stream 0 g 0 G 0 g 0 G -0 g 0 G -0 g 0 G -0 g 0 G -BT -/F53 8.9664 Tf 108.801 680.066 Td [(s)-60(u)-60(b)-60(r)-59(o)-60(u)-60(t)-60(i)-60(n)-60(e)]TJ/F46 8.9664 Tf 61.47 0 Td [(p)-132(s)-132(b)]TJ -ET -q -1 0 0 1 188.254 680.265 cm -[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S -Q -BT -/F46 8.9664 Tf 192.204 680.066 Td [(f)-132(o)-132(o)-241(\050)-155(s)-47(o)-47(m)-47(e)-768(a)-105(r)-106(g)-105(s)-376(,)-939(i)-156(n)-157(f)-156(o)-265(\051)]TJ -65.125 -10.959 Td [(.)-248(.)-249(.)]TJ/F53 8.9664 Tf -0.604 -10.959 Td [(i)-181(f)]TJ/F46 8.9664 Tf 10.408 0 Td [(\050)-260(e)-151(r)-151(r)-151(o)-151(r)-897(d)-129(e)-129(t)-130(e)-129(c)-129(t)-129(e)-130(d)-237(\051)]TJ/F53 8.9664 Tf 93.292 0 Td [(t)-30(h)-29(e)-30(n)]TJ/F46 8.9664 Tf -87.332 -10.959 Td [(i)-156(n)-157(f)-156(o)-65(=)-38(e)-129(r)-128(r)-129(c)-129(o)-129(d)-129(e)-129(1)]TJ/F53 8.9664 Tf -0.133 -10.959 Td [(c)-142(a)-141(l)-142(l)]TJ/F46 8.9664 Tf 27.487 0 Td [(p)-124(s)-124(b)]TJ -ET -q -1 0 0 1 187.956 636.429 cm -[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S -Q -BT -/F46 8.9664 Tf 191.831 636.23 Td [(e)-124(r)-124(r)-124(p)-123(u)-124(s)-124(h)-233(\050)-329(')-242(p)-133(s)-132(b)]TJ -ET -q -1 0 0 1 260.135 636.429 cm -[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S -Q -BT -/F46 8.9664 Tf 264.085 636.23 Td [(f)-132(o)-132(o)-353(')-332(,)-855(e)-129(r)-129(r)-129(c)-129(o)-128(d)-129(e)-129(1)-237(\051)]TJ/F53 8.9664 Tf -122.23 -10.959 Td [(g)-46(o)-47(t)-46(o)]TJ/F46 8.9664 Tf 27.968 0 Td [(9)-82(9)-82(9)-83(9)]TJ/F53 8.9664 Tf -44.989 -10.959 Td [(e)2(n)2(d)-796(i)-181(f)]TJ/F46 8.9664 Tf 2.245 -10.959 Td [(.)-248(.)-249(.)]TJ/F53 8.9664 Tf -0.957 -10.959 Td [(c)-142(a)-141(l)-142(l)]TJ/F46 8.9664 Tf 27.399 0 Td [(p)-114(s)-114(b)]TJ -ET -q -1 0 0 1 171.016 592.594 cm -[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S -Q -BT -/F46 8.9664 Tf 174.803 592.394 Td [(b)-114(a)-114(r)-223(\050)-155(s)-47(o)-46(m)-47(e)-769(a)-105(r)-105(g)-105(s)-377(,)-938(i)-157(n)-156(f)-157(o)-265(\051)]TJ/F53 8.9664 Tf -48.328 -10.958 Td [(i)-181(f)]TJ/F46 8.9664 Tf 10.408 0 Td [(\050)-265(i)-156(n)-157(f)-156(o)-939(.)]TJ/F53 8.9664 Tf 37.831 0 Td [(n)-11(e)]TJ/F46 8.9664 Tf 12.445 0 Td [(.)-910(z)-127(e)-127(r)-128(o)-235(\051)]TJ/F53 8.9664 Tf 43.016 0 Td [(t)-30(h)-29(e)-30(n)]TJ/F46 8.9664 Tf -87.332 -10.959 Td [(i)-156(n)-157(f)-156(o)-65(=)-38(e)-129(r)-128(r)-129(c)-129(o)-129(d)-129(e)-129(2)]TJ/F53 8.9664 Tf -0.133 -10.959 Td [(c)-142(a)-141(l)-142(l)]TJ/F46 8.9664 Tf 27.487 0 Td [(p)-124(s)-124(b)]TJ -ET -q -1 0 0 1 187.956 559.717 cm -[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S -Q BT -/F46 8.9664 Tf 191.831 559.518 Td [(e)-124(r)-124(r)-124(p)-123(u)-124(s)-124(h)-233(\050)-329(')-242(p)-133(s)-132(b)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(7.8)-1125(psb)]TJ ET q -1 0 0 1 260.135 559.717 cm -[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S +1 0 0 1 151.587 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F46 8.9664 Tf 264.085 559.518 Td [(f)-132(o)-132(o)-353(')-332(,)-855(e)-129(r)-129(r)-129(c)-129(o)-128(d)-129(e)-129(2)-237(\051)]TJ/F53 8.9664 Tf -122.23 -10.959 Td [(g)-46(o)-47(t)-46(o)]TJ/F46 8.9664 Tf 27.968 0 Td [(9)-82(9)-82(9)-83(9)]TJ/F53 8.9664 Tf -44.989 -10.959 Td [(e)2(n)2(d)-796(i)-181(f)]TJ/F46 8.9664 Tf 2.245 -10.959 Td [(.)-248(.)-249(.)]TJ -18.078 -10.959 Td [(9)-82(9)-82(9)-83(9)]TJ/F53 8.9664 Tf 27.419 0 Td [(c)-57(o)-57(n)-57(t)-56(i)-57(n)-57(u)-57(e)]TJ -9.945 -10.959 Td [(i)-181(f)]TJ/F46 8.9664 Tf 15.937 0 Td [(\050)-273(e)-164(r)-165(r)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(ab)-31(ort)-375(|)-375(Ab)-32(ort)-375(a)-374(computation)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -55.726 -18.389 Td [(call)-525(psb_abort\050icontxt\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-333(subroutine)-334(ab)-27(orts)-334(computation)-333(on)-333(the)-334(paral)1(le)-1(l)-333(virtual)-333(mac)28(hine.)]TJ +0 g 0 G +/F27 9.9626 Tf -14.944 -19.926 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(icon)32(txt)]TJ +0 g 0 G +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ +0 g 0 G + 139.477 -467.787 Td [(117)]TJ +0 g 0 G ET -q -1 0 0 1 164.726 504.923 cm -[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S -Q + +endstream +endobj +1686 0 obj +<< +/Length 4543 +>> +stream +0 g 0 G +0 g 0 G BT -/F46 8.9664 Tf 168.965 504.723 Td [(a)-164(c)-165(t)-946(.)]TJ/F53 8.9664 Tf 27.964 0 Td [(e)-22(q)]TJ/F46 8.9664 Tf 12.347 0 Td [(.)-923(a)-141(c)-141(t)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(7.9)-1125(psb)]TJ ET q -1 0 0 1 236.744 504.923 cm -[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S +1 0 0 1 202.396 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F46 8.9664 Tf 240.772 504.723 Td [(a)-141(b)-141(o)-141(r)-141(t)-249(\051)]TJ/F53 8.9664 Tf 39.166 0 Td [(t)-30(h)-30(e)-29(n)]TJ -142.758 -10.959 Td [(c)-142(a)-141(l)-142(l)]TJ/F46 8.9664 Tf 27.682 0 Td [(p)-146(s)-145(b)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(b)-31(cast)-375(|)-375(Broadcast)-375(data)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -55.726 -18.389 Td [(call)-525(psb_bcast\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-338(subroutine)-338(implemen)27(ts)-338(a)-338(broadcast)-338(op)-28(eration)-338(based)-339(on)-338(the)-338(underlying)]TJ -14.944 -11.955 Td [(comm)28(unication)-334(lib)1(rary)83(.)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(icon)32(txt)]TJ +0 g 0 G +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.371 0 Td [(On)-333(the)-334(ro)-27(ot)-334(pro)-27(ces)-1(s,)-333(the)-333(data)-334(to)-333(b)-28(e)-333(broadcast.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(tege)-1(r,)-341(real)-339(or)-340(complex)-340(v)56(ariable,)-342(whic)28(h)-339(m)-1(a)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-403(a)-403(rank)-404(1)-403(or)-403(2)-403(arra)28(y)83(,)-421(or)-403(a)-403(c)28(haracter)-404(or)-403(logical)-403(v)56(ariable,)-421(whic)28(h)-403(ma)27(y)-403(b)-28(e)]TJ 0 -11.955 Td [(a)-426(s)-1(calar)-426(or)-426(rank)-427(1)-426(arra)27(y)84(.)-1151(T)28(yp)-28(e,)-449(kind,)-450(rank)-427(and)-426(size)-427(m)28(ust)-426(agree)-427(on)-426(all)]TJ 0 -11.955 Td [(pro)-28(cesses.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.926 Td [(ro)-32(ot)]TJ +0 g 0 G +/F8 9.9626 Tf 25.93 0 Td [(Ro)-28(ot)-333(pro)-28(cess)-333(holding)-334(data)-333(to)-333(b)-28(e)-333(broadcast.)]TJ -1.023 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 138.176 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.207 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1,)-333(default)-334(0)]TJ +0 g 0 G +/F27 9.9626 Tf -243.576 -21.918 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.926 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.371 0 Td [(On)-333(pro)-28(cesses)-334(other)-333(than)-333(ro)-28(ot,)-333(the)-334(dat)1(a)-334(to)-333(b)-28(e)-333(broadcast.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(tege)-1(r,)-341(real)-339(or)-340(complex)-340(v)56(ariable,)-342(whic)28(h)-339(m)-1(a)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-346(a)-346(rank)-347(1)-346(or)-346(2)-346(arra)28(y)83(,)-349(or)-347(a)-346(c)28(haracter)-346(or)-346(logical)-347(scalar.)-829(T)28(yp)-28(e,)-349(kind,)-350(rank)]TJ 0 -11.956 Td [(and)-333(size)-334(m)28(ust)-333(agree)-334(on)-333(all)-333(pro)-28(cesses.)]TJ +0 g 0 G + 139.477 -170.9 Td [(118)]TJ +0 g 0 G ET -q -1 0 0 1 183.205 493.964 cm -[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S -Q + +endstream +endobj +1690 0 obj +<< +/Length 5157 +>> +stream +0 g 0 G +0 g 0 G BT -/F46 8.9664 Tf 187.274 493.764 Td [(e)-146(r)-145(r)-146(o)-145(r)-254(\050)-252(i)-144(c)-143(o)-144(n)-143(t)-143(x)-144(t)-252(\051)]TJ/F53 8.9664 Tf -50.844 -10.959 Td [(r)-58(e)-58(t)-58(u)-58(r)-58(n)]TJ -10.529 -10.958 Td [(e)-117(l)-117(s)-117(e)]TJ 10.529 -10.959 Td [(r)-58(e)-58(t)-58(u)-58(r)-58(n)]TJ -11.596 -10.959 Td [(e)2(n)2(d)-796(i)-181(f)]TJ -16.587 -21.918 Td [(e)2(n)2(d)-675(s)-59(u)-60(b)-60(r)-60(o)-60(u)-60(t)-60(i)-60(n)-59(e)]TJ/F46 8.9664 Tf 84.141 0 Td [(p)-132(s)-132(b)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(7.10)-1125(psb)]TJ ET q -1 0 0 1 210.371 428.21 cm -[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S +1 0 0 1 158.311 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F46 8.9664 Tf 214.321 428.011 Td [(f)-132(o)-132(o)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(sum)-375(|)-375(Global)-375(sum)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_sum\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-318(subroutine)-319(implemen)28(ts)-318(a)-319(sum)-318(reduction)-318(op)-28(eration)-318(based)-319(on)-318(the)-318(under-)]TJ -14.944 -11.955 Td [(lying)-333(comm)27(unication)-333(library)84(.)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G +0 g 0 G + 0 -19.925 Td [(icon)32(txt)]TJ +0 g 0 G +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-334(con)28(tribution)-333(to)-333(the)-334(global)-333(sum.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(te)-1(ger,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-340(ma)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-464(a)-464(rank)-463(1)-464(or)-464(2)-464(arra)28(y)83(.)-1299(T)28(yp)-28(e,)-497(kind,)-496(rank)-464(and)-463(size)-464(m)27(ust)-463(agree)-464(on)-464(all)]TJ 0 -11.955 Td [(pro)-28(cesses.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.926 Td [(ro)-32(ot)]TJ +0 g 0 G +/F8 9.9626 Tf 25.931 0 Td [(Pro)-28(cess)-310(to)-309(hold)-310(the)-310(\014nal)-310(sum,)-314(or)]TJ/F14 9.9626 Tf 144.053 0 Td [(\000)]TJ/F8 9.9626 Tf 7.748 0 Td [(1)-310(to)-310(mak)28(e)-310(it)-309(a)27(v)56(ailable)-310(on)-310(all)-309(pro)-28(cesses.)]TJ -152.825 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.428 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.748 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1,)-333(default)-334(-1.)]TJ +0 g 0 G +/F27 9.9626 Tf -251.325 -21.918 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.372 0 Td [(On)-333(destination)-333(pro)-28(cess\050es\051,)-334(the)-333(result)-333(of)-334(the)-333(sum)-333(op)-28(eration.)]TJ 3.535 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(te)-1(ger,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-340(ma)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-333(a)-334(rank)-333(1)-333(or)-334(2)-333(arra)28(y)83(.)]TJ 0 -11.955 Td [(T)28(yp)-28(e,)-333(kind,)-334(r)1(ank)-334(and)-333(size)-333(m)27(ust)-333(agree)-333(on)-334(all)-333(pro)-28(cesses.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ +0 g 0 G +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ +0 g 0 G + [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.273 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.012 -11.956 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ +0 g 0 G + -12.73 -19.925 Td [(2.)]TJ +0 g 0 G + [-500(The)]TJ/F30 9.9626 Tf 33.209 0 Td [(dat)]TJ/F8 9.9626 Tf 19.012 0 Td [(argumen)28(t)-333(m)-1(a)28(y)-333(also)-333(b)-28(e)-334(a)-333(long)-333(in)28(teger)-334(scalar.)]TJ +0 g 0 G + 99.986 -109.132 Td [(119)]TJ 0 g 0 G ET -q -1 0 0 1 99.895 701.884 cm -[]0 d 0 J 0.398 w 0 0 m 346.583 0 l S -Q -q -1 0 0 1 100.095 410.576 cm -[]0 d 0 J 0.398 w 0 0 m 0 291.308 l S -Q -q -1 0 0 1 446.279 410.576 cm -[]0 d 0 J 0.398 w 0 0 m 0 291.308 l S -Q -q -1 0 0 1 99.895 410.576 cm -[]0 d 0 J 0.398 w 0 0 m 346.583 0 l S -Q + +endstream +endobj +1696 0 obj +<< +/Length 5196 +>> +stream +0 g 0 G +0 g 0 G BT -/F8 9.9626 Tf 99.895 382.537 Td [(Figure)-329(9:)-443(The)-329(la)27(y)28(out)-329(of)-330(a)-329(generic)]TJ/F30 9.9626 Tf 147.445 0 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(7.11)-1125(psb)]TJ ET q -1 0 0 1 263.659 382.736 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 209.121 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 266.797 382.537 Td [(foo)]TJ/F8 9.9626 Tf 18.973 0 Td [(routine)-329(with)-330(resp)-28(ect)-329(to)-330(PS)1(B)-1(LAS)1(-)-1(2.)1(0)]TJ -185.875 -11.955 Td [(error)-333(handling)-333(p)-28(olicy)83(.)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(max)-375(|)-375(Global)-375(maxim)31(um)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_max\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-326(subroutine)-326(implemen)28(ts)-326(a)-326(maxim)27(um)-326(v)56(aluereduction)-326(op)-28(eration)-326(based)-326(on)]TJ -14.944 -11.955 Td [(the)-333(underlying)-333(com)-1(m)28(unication)-333(library)83(.)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(icon)32(txt)]TJ +0 g 0 G +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-333(c)-1(on)28(tribution)-333(to)-333(the)-334(gl)1(obal)-334(maxim)28(um.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-326(as:)-442(an)-326(in)27(teger)-326(or)-327(real)-327(v)56(ariable,)-328(whic)28(h)-327(ma)28(y)-327(b)-28(e)-327(a)-326(s)-1(calar,)-328(or)-326(a)-327(rank)]TJ 0 -11.955 Td [(1)-333(or)-334(2)-333(arra)28(y)83(.)-778(T)28(yp)-27(e)-1(,)-333(kind,)-333(rank)-333(and)-334(size)-333(m)28(ust)-334(agree)-333(on)-333(all)-334(pro)-27(cesse)-1(s.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(ro)-32(ot)]TJ +0 g 0 G +/F8 9.9626 Tf 25.93 0 Td [(Pro)-28(cess)-305(to)-306(hold)-305(the)-305(\014nal)-305(m)-1(ax)1(im)27(um,)-311(or)]TJ/F14 9.9626 Tf 169.158 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-305(to)-306(mak)28(e)-305(it)-306(a)28(v)56(ailable)-306(on)-305(all)-305(pro-)]TJ -177.93 -11.956 Td [(cesses.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.427 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.749 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1,)-333(default)-334(-1.)]TJ +0 g 0 G +/F27 9.9626 Tf -251.325 -33.873 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.926 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.371 0 Td [(On)-333(destination)-334(pr)1(o)-28(cess\050es)-1(\051,)-333(the)-333(result)-333(of)-334(the)-333(maxim)28(um)-334(op)-27(eration.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-326(as)-1(:)-441(an)-326(in)27(teger)-326(or)-327(real)-327(v)56(ariable,)-328(whic)28(h)-327(ma)28(y)-327(b)-28(e)-327(a)-326(s)-1(calar,)-328(or)-326(a)-327(rank)]TJ 0 -11.955 Td [(1)-333(or)-334(2)-333(arra)28(y)83(.)-778(T)28(yp)-27(e)-1(,)-333(kind,)-333(rank)-333(and)-334(size)-333(m)28(ust)-334(agree)-333(on)-333(all)-334(pro)-27(cesse)-1(s.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ 0 g 0 G +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ 0 g 0 G + [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.272 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.011 -11.956 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ 0 g 0 G + -12.73 -19.925 Td [(2.)]TJ 0 g 0 G + [-500(The)]TJ/F30 9.9626 Tf 33.208 0 Td [(dat)]TJ/F8 9.9626 Tf 19.012 0 Td [(argumen)28(t)-334(ma)28(y)-333(also)-334(b)-27(e)-334(a)-333(long)-333(in)28(teger)-334(scalar.)]TJ 0 g 0 G + 99.987 -109.132 Td [(120)]TJ 0 g 0 G -/F30 9.9626 Tf 8.369 -39.475 Td [(==========================================================)]TJ 0 -11.955 Td [(Process:)-525(0.)-1050(PSBLAS)-525(Error)-525(\0504010\051)-525(in)-525(subroutine:)-525(df_sample)]TJ 0 -11.955 Td [(Error)-525(from)-525(call)-525(to)-525(subroutine)-525(mat)-525(dist)]TJ 0 -11.955 Td [(==========================================================)]TJ 0 -11.955 Td [(Process:)-525(0.)-1050(PSBLAS)-525(Error)-525(\0504010\051)-525(in)-525(subroutine:)-525(mat_distv)]TJ 0 -11.956 Td [(Error)-525(from)-525(call)-525(to)-525(subroutine)-525(psb_spasb)]TJ 0 -11.955 Td [(==========================================================)]TJ 0 -11.955 Td [(Process:)-525(0.)-1050(PSBLAS)-525(Error)-525(\0504010\051)-525(in)-525(subroutine:)-525(psb_spasb)]TJ 0 -11.955 Td [(Error)-525(from)-525(call)-525(to)-525(subroutine)-525(psb_cest)]TJ 0 -11.955 Td [(==========================================================)]TJ 0 -11.955 Td [(Process:)-525(0.)-1050(PSBLAS)-525(Error)-525(\050136\051)-525(in)-525(subroutine:)-525(psb_cest)]TJ 0 -11.956 Td [(Format)-525(FOO)-525(is)-525(unknown)]TJ 0 -11.955 Td [(==========================================================)]TJ 0 -11.955 Td [(Aborting...)]TJ ET -q -1 0 0 1 99.895 343.417 cm -[]0 d 0 J 0.398 w 0 0 m 346.583 0 l S -Q -q -1 0 0 1 100.095 165.307 cm -[]0 d 0 J 0.398 w 0 0 m 0 178.111 l S -Q -q -1 0 0 1 446.279 165.307 cm -[]0 d 0 J 0.398 w 0 0 m 0 178.111 l S -Q -q -1 0 0 1 99.895 165.307 cm -[]0 d 0 J 0.398 w 0 0 m 346.583 0 l S -Q + +endstream +endobj +1702 0 obj +<< +/Length 5171 +>> +stream +0 g 0 G +0 g 0 G BT -/F8 9.9626 Tf 99.895 137.267 Td [(Figure)-386(10:)-551(A)-386(sample)-386(PSBLAS-2.0)-387(error)-386(message.)-603(Pro)-28(cess)-387(0)-386(detected)-386(an)-387(error)]TJ 0 -11.955 Td [(condition)-333(inside)-334(the)-333(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(7.12)-1125(psb)]TJ ET q -1 0 0 1 204.658 125.512 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 158.311 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F8 9.9626 Tf 207.647 125.312 Td [(cest)-333(s)-1(u)1(broutine)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(min)-375(|)-375(Global)-375(minim)31(um)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_min\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-311(subroutine)-312(implemen)28(ts)-311(a)-312(minim)28(um)-312(v)56(alue)-311(reduction)-312(op)-27(eration)-312(based)-311(on)]TJ -14.944 -11.955 Td [(the)-333(underlying)-334(comm)28(unication)-333(library)83(.)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(icon)32(txt)]TJ +0 g 0 G +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-334(con)28(tribution)-333(to)-333(the)-334(global)-333(minim)28(um.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-326(as)-1(:)-441(an)-326(in)27(teger)-326(or)-327(real)-327(v)56(ariable,)-328(whic)28(h)-327(ma)28(y)-327(b)-28(e)-327(a)-327(scalar,)-328(or)-326(a)-327(rank)]TJ 0 -11.955 Td [(1)-333(or)-334(2)-333(arra)28(y)83(.)-778(T)28(yp)-28(e,)-333(kind,)-333(rank)-333(and)-334(size)-333(m)28(ust)-334(agree)-333(on)-333(all)-334(pro)-27(cess)-1(es.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(ro)-32(ot)]TJ +0 g 0 G +/F8 9.9626 Tf 25.931 0 Td [(Pro)-28(cess)-276(to)-276(hold)-276(the)-276(\014nal)-275(v)55(alue,)-287(or)]TJ/F14 9.9626 Tf 146.411 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-276(to)-276(mak)28(e)-276(it)-276(a)28(v)55(ailable)-276(on)-276(all)-276(p)1(ro)-28(cesses.)]TJ -155.184 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.428 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.748 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1,)-333(default)-334(-1.)]TJ +0 g 0 G +/F27 9.9626 Tf -251.325 -33.873 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.372 0 Td [(On)-333(destination)-333(pro)-28(cess\050es\051,)-334(the)-333(result)-333(of)-334(the)-333(minim)28(um)-334(op)-27(eration.)]TJ 3.535 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-326(as)-1(:)-441(an)-326(in)27(teger)-326(or)-327(real)-327(v)56(ariable,)-328(whic)28(h)-327(ma)28(y)-327(b)-28(e)-327(a)-327(scalar,)-328(or)-326(a)-327(rank)]TJ 0 -11.955 Td [(1)-333(or)-334(2)-333(arra)28(y)83(.)]TJ 0 -11.955 Td [(T)28(yp)-28(e,)-333(kind,)-334(r)1(ank)-334(and)-333(size)-333(m)27(ust)-333(agree)-333(on)-334(all)-333(pro)-28(cesses.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ +0 g 0 G +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ +0 g 0 G + [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.273 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.012 -11.956 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ 0 g 0 G + -12.73 -19.925 Td [(2.)]TJ +0 g 0 G + [-500(The)]TJ/F30 9.9626 Tf 33.209 0 Td [(dat)]TJ/F8 9.9626 Tf 19.012 0 Td [(argumen)28(t)-333(m)-1(a)28(y)-333(also)-333(b)-28(e)-334(a)-333(long)-333(in)28(teger)-334(scalar.)]TJ 0 g 0 G - 56.632 -34.874 Td [(123)]TJ + 99.986 -109.132 Td [(121)]TJ 0 g 0 G ET @@ -20999,112 +21329,59 @@ endstream endobj 1709 0 obj << -/Length 3723 +/Length 5288 >> stream 0 g 0 G 0 g 0 G -0 g 0 G -0 g 0 G -BT -/F16 14.3462 Tf 150.705 680.226 Td [(psb)]TJ -ET -q -1 0 0 1 175.972 680.425 cm -[]0 d 0 J 0.398 w 0 0 m 4.842 0 l S -Q -BT -/F16 14.3462 Tf 180.814 680.226 Td [(errpush|Pushes)-375(an)-375(error)-375(co)-31(de)-375(on)31(to)-375(the)]TJ -30.109 -17.933 Td [(error)-375(stac)31(k)]TJ/F27 9.9626 Tf 1.377 -35.768 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.711 0 Td [(p)-120(s)-121(b)]TJ -ET -q -1 0 0 1 200.991 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 205.18 626.525 Td [(e)-120(r)-121(r)-120(p)-121(u)-120(s)-121(h)-226(\050)-244(e)-138(r)-138(r)]TJ -ET -q -1 0 0 1 270.664 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 275.03 626.525 Td [(c)-438(,)-825(r)]TJ -ET -q -1 0 0 1 299.951 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q BT -/F8 9.9626 Tf 303.581 626.525 Td [(n)-64(a)-65(m)-64(e)-290(,)-923(i)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(7.13)-1125(psb)]TJ ET q -1 0 0 1 348.584 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 353.187 626.525 Td [(e)-162(r)-162(r)-485(,)-914(a)]TJ -ET -q -1 0 0 1 392.442 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 209.121 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F8 9.9626 Tf 396.945 626.525 Td [(e)-152(r)-152(r)-258(\051)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(amx)-375(|)-375(Global)-375(maxim)31(um)-375(absolute)-375(v)63(alue)]TJ 0 g 0 G 0 g 0 G +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_amx\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-312(subroutine)-312(implemen)28(ts)-313(a)-312(maxim)28(um)-312(absolute)-312(v)55(alue)-312(reduction)-312(op)-28(eration)]TJ -14.944 -11.955 Td [(based)-333(on)-334(the)-333(underlying)-333(comm)28(unication)-334(library)84(.)]TJ 0 g 0 G -/F27 9.9626 Tf -246.24 -17.933 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.926 Td [(err)]TJ -ET -q -1 0 0 1 166.08 568.941 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 169.517 568.741 Td [(c)]TJ + 0 -19.925 Td [(icon)32(txt)]TJ 0 g 0 G -/F8 9.9626 Tf 10.074 0 Td [(the)-333(error)-334(co)-27(de)]TJ -3.98 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger.)]TJ +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(r)]TJ -ET -q -1 0 0 1 156.111 501.195 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 159.548 500.995 Td [(name)]TJ +/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ 0 g 0 G -/F8 9.9626 Tf 31.714 0 Td [(the)-333(soutine)-334(where)-333(the)-333(error)-334(has)-333(b)-28(een)-333(caugh)28(t.)]TJ -15.651 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(string.)]TJ +/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-333(c)-1(on)28(tribution)-333(to)-333(the)-334(gl)1(obal)-334(maxim)28(um.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(tege)-1(r,)-341(real)-339(or)-340(complex)-340(v)56(ariable,)-342(whic)28(h)-339(m)-1(a)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-464(a)-464(ran)1(k)-464(1)-464(or)-464(2)-464(arra)28(y)83(.)-1299(T)28(yp)-28(e,)-497(kind)1(,)-497(rank)-464(and)-463(size)-464(m)27(ust)-463(agree)-464(on)-464(all)]TJ 0 -11.955 Td [(pro)-28(cesses.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -31.881 Td [(i)]TJ -ET -q -1 0 0 1 154.575 421.494 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 158.012 421.294 Td [(err)]TJ +/F27 9.9626 Tf -24.907 -19.926 Td [(ro)-32(ot)]TJ 0 g 0 G -/F8 9.9626 Tf 19.669 0 Td [(addional)-333(info)-333(for)-334(error)-333(co)-28(de)]TJ -2.07 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)]TJ +/F8 9.9626 Tf 25.93 0 Td [(Pro)-28(cess)-276(to)-276(hold)-276(the)-276(\014nal)-276(v)56(alue,)-287(or)]TJ/F14 9.9626 Tf 146.411 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-276(to)-276(mak)28(e)-276(it)-276(a)28(v)55(ailable)-276(on)-276(all)-276(pr)1(o)-28(cesses)-1(.)]TJ -155.183 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.427 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.749 0 Td [(<)]TJ/F8 9.9626 Tf 7.748 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1,)-333(default)-334(-1.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -31.881 Td [(a)]TJ -ET -q -1 0 0 1 156.962 353.748 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 160.399 353.548 Td [(err)]TJ +/F27 9.9626 Tf -251.325 -33.873 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.926 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.371 0 Td [(On)-333(destination)-334(p)1(ro)-28(cess\050es)-1(\051)1(,)-334(the)-333(result)-333(of)-334(the)-333(maxim)28(um)-334(op)-27(eration.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(tege)-1(r,)-341(real)-339(or)-340(complex)-340(v)56(ariable,)-342(whic)28(h)-339(m)-1(a)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-464(a)-464(ran)1(k)-464(1)-464(or)-464(2)-464(arra)28(y)83(.)-1299(T)28(yp)-28(e,)-497(kind)1(,)-497(rank)-464(and)-463(size)-464(m)27(ust)-463(agree)-464(on)-464(all)]TJ 0 -11.956 Td [(pro)-28(cesses.)]TJ/F16 11.9552 Tf -24.907 -21.917 Td [(Notes)]TJ 0 g 0 G -/F8 9.9626 Tf 19.669 0 Td [(addional)-333(info)-333(for)-334(error)-333(co)-28(de)]TJ -4.457 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(string.)]TJ +/F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ +0 g 0 G + [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.272 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.011 -11.955 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ +0 g 0 G + -12.73 -19.925 Td [(2.)]TJ +0 g 0 G + [-500(The)]TJ/F30 9.9626 Tf 33.208 0 Td [(dat)]TJ/F8 9.9626 Tf 19.012 0 Td [(argumen)28(t)-334(ma)28(y)-333(also)-334(b)-27(e)-334(a)-333(long)-333(in)28(teger)-334(scalar.)]TJ 0 g 0 G - 139.477 -227.245 Td [(124)]TJ + 99.987 -97.177 Td [(122)]TJ 0 g 0 G ET @@ -21112,44 +21389,59 @@ endstream endobj 1715 0 obj << -/Length 1398 +/Length 5259 >> stream 0 g 0 G 0 g 0 G -0 g 0 G -0 g 0 G -BT -/F16 14.3462 Tf 99.895 680.226 Td [(psb)]TJ -ET -q -1 0 0 1 125.163 680.425 cm -[]0 d 0 J 0.398 w 0 0 m 4.842 0 l S -Q BT -/F16 14.3462 Tf 130.004 680.226 Td [(error|Prin)31(ts)-375(the)-375(error)-375(stac)32(k)-375(con)31(ten)31(t)-375(and)]TJ -30.109 -17.933 Td [(ab)-31(orts)-375(execution)]TJ/F27 9.9626 Tf 1.377 -35.768 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.921 0 Td [(p)-141(s)-142(b)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(7.14)-1125(psb)]TJ ET q -1 0 0 1 151.02 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 158.311 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F8 9.9626 Tf 155.418 626.525 Td [(e)-142(r)-141(r)-142(o)-141(r)-247(\050)-245(i)-140(c)-139(o)-140(n)-140(t)-139(x)-140(t)-245(\051)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(amn)-375(|)-375(Global)-375(minim)31(um)-375(absolute)-375(v)63(alue)]TJ 0 g 0 G 0 g 0 G +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_amn\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-336(s)-1(u)1(broutine)-337(implemen)28(ts)-337(a)-336(minim)28(um)-337(absolute)-336(v)55(alue)-336(reduction)-336(op)-28(eration)]TJ -14.944 -11.955 Td [(based)-333(on)-334(the)-333(underlying)-333(comm)28(unication)-334(library)84(.)]TJ 0 g 0 G -/F27 9.9626 Tf -55.523 -17.933 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.926 Td [(icon)32(txt)]TJ + 0 -19.925 Td [(icon)32(txt)]TJ +0 g 0 G +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-334(con)28(tribution)-333(to)-333(the)-334(global)-333(minim)28(um.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(te)-1(ger,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-340(ma)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-464(a)-464(rank)-463(1)-464(or)-464(2)-464(arra)28(y)83(.)-1299(T)28(yp)-28(e,)-497(kind,)-496(rank)-464(and)-463(size)-464(m)27(ust)-463(agree)-464(on)-464(all)]TJ 0 -11.955 Td [(pro)-28(cesses.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.926 Td [(ro)-32(ot)]TJ +0 g 0 G +/F8 9.9626 Tf 25.931 0 Td [(Pro)-28(cess)-276(to)-276(hold)-276(the)-276(\014nal)-275(v)55(alue,)-287(or)]TJ/F14 9.9626 Tf 146.411 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-276(to)-276(mak)28(e)-276(it)-276(a)28(v)55(ailable)-276(on)-276(all)-276(p)1(ro)-28(cesses.)]TJ -155.184 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.428 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.748 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1,)-333(default)-334(-1.)]TJ +0 g 0 G +/F27 9.9626 Tf -251.325 -33.873 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.926 Td [(dat)]TJ +0 g 0 G +/F8 9.9626 Tf 21.372 0 Td [(On)-333(destination)-333(pro)-28(cess\050es\051,)-334(the)-333(result)-333(of)-334(the)-333(minim)28(um)-334(op)-27(eration.)]TJ 3.535 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -71.51 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(te)-1(ger,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-340(ma)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-333(a)-334(rank)-333(1)-333(or)-334(2)-333(arra)28(y)83(.)]TJ 0 -11.956 Td [(T)28(yp)-28(e,)-333(kind,)-334(r)1(ank)-334(and)-333(size)-333(m)27(ust)-333(agree)-333(on)-334(all)-333(pro)-28(cesses.)]TJ/F16 11.9552 Tf -24.907 -21.917 Td [(Notes)]TJ +0 g 0 G +/F8 9.9626 Tf 12.177 -19.926 Td [(1.)]TJ +0 g 0 G + [-500(The)]TJ/F30 9.9626 Tf 32.469 0 Td [(dat)]TJ/F8 9.9626 Tf 18.273 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.012 -11.955 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ +0 g 0 G + -12.73 -19.925 Td [(2.)]TJ 0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger.)]TJ + [-500(The)]TJ/F30 9.9626 Tf 33.209 0 Td [(dat)]TJ/F8 9.9626 Tf 19.012 0 Td [(argumen)28(t)-333(m)-1(a)28(y)-333(also)-333(b)-28(e)-334(a)-333(long)-333(in)28(teger)-334(scalar.)]TJ 0 g 0 G - 139.477 -430.483 Td [(125)]TJ + 99.986 -97.177 Td [(123)]TJ 0 g 0 G ET @@ -21157,768 +21449,653 @@ endstream endobj 1721 0 obj << -/Length 1632 +/Length 6258 >> stream 0 g 0 G 0 g 0 G -0 g 0 G -0 g 0 G -BT -/F16 14.3462 Tf 150.705 680.226 Td [(psb)]TJ -ET -q -1 0 0 1 175.972 680.425 cm -[]0 d 0 J 0.398 w 0 0 m 4.842 0 l S -Q -BT -/F16 14.3462 Tf 180.814 680.226 Td [(set)]TJ -ET -q -1 0 0 1 201.789 680.425 cm -[]0 d 0 J 0.398 w 0 0 m 4.842 0 l S -Q -BT -/F16 14.3462 Tf 206.631 680.226 Td [(errv)31(erb)-31(osit)31(y|Sets)-375(the)-375(v)31(erb)-31(osit)32(y)-376(of)-375(error)]TJ -55.926 -17.933 Td [(messages.)]TJ/F27 9.9626 Tf 1.377 -35.768 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 30.082 0 Td [(p)-158(s)-157(b)]TJ -ET -q -1 0 0 1 202.473 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q BT -/F8 9.9626 Tf 207.032 626.525 Td [(s)-158(e)-157(t)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(7.15)-1125(psb)]TJ ET q -1 0 0 1 224.574 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 209.121 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F8 9.9626 Tf 229.133 626.525 Td [(e)-158(r)-157(r)-158(v)-158(e)-157(r)-158(b)-157(o)-158(s)-158(i)-157(t)-158(y)-263(\050)-142(v)-142(\051)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(nrm2)-375(|)-375(Global)-375(2-norm)-375(reduction)]TJ 0 g 0 G 0 g 0 G +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_nrm2\050icontxt,)-525(dat,)-525(root\051)]TJ/F8 9.9626 Tf 14.944 -19.794 Td [(This)-425(subroutine)-425(implem)-1(en)28(ts)-425(a)-425(2-norm)-426(v)56(alue)-425(reduction)-426(op)-27(eration)-426(based)-425(on)]TJ -14.944 -11.955 Td [(the)-333(underlying)-333(com)-1(m)28(unication)-333(library)83(.)]TJ 0 g 0 G -/F27 9.9626 Tf -78.428 -17.933 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F27 9.9626 Tf 0 -18.226 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G +/F27 9.9626 Tf -33.797 -19.076 Td [(On)-383(En)32(try)]TJ 0 g 0 G - 0 -19.926 Td [(v)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(v)27(erb)-27(osit)27(y)-333(lev)28(el)]TJ 13.878 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger.)]TJ + 0 -19.076 Td [(icon)32(txt)]TJ 0 g 0 G - 139.477 -430.483 Td [(126)]TJ +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G -ET - -endstream -endobj -1727 0 obj -<< -/Length 2103 ->> -stream +/F27 9.9626 Tf -24.907 -19.076 Td [(dat)]TJ 0 g 0 G +/F8 9.9626 Tf 21.371 0 Td [(The)-333(lo)-28(cal)-333(c)-1(on)28(tribution)-333(to)-333(the)-334(gl)1(obal)-334(minim)28(um.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-421(as:)-619(a)-421(real)-421(v)55(ariable,)-443(whic)28(h)-421(ma)28(y)-421(b)-28(e)-421(a)-421(scalar,)-443(or)-420(a)-421(rank)-421(1)-421(arra)28(y)83(.)]TJ 0 -11.955 Td [(Kind,)-333(rank)-333(and)-334(size)-333(m)28(ust)-334(agree)-333(on)-333(all)-334(pro)-27(ces)-1(ses.)]TJ 0 g 0 G +/F27 9.9626 Tf -24.907 -19.075 Td [(ro)-32(ot)]TJ 0 g 0 G +/F8 9.9626 Tf 25.93 0 Td [(Pro)-28(cess)-276(to)-276(hold)-276(the)-276(\014nal)-276(v)56(alue,)-287(or)]TJ/F14 9.9626 Tf 146.411 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)-276(to)-276(mak)28(e)-276(it)-276(a)28(v)55(ailable)-276(on)-276(all)-276(pr)1(o)-28(cesses)-1(.)]TJ -155.183 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue)]TJ/F14 9.9626 Tf 130.427 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1)]TJ/F11 9.9626 Tf 7.749 0 Td [(<)]TJ/F8 9.9626 Tf 7.748 0 Td [(=)]TJ/F11 9.9626 Tf 10.517 0 Td [(r)-28(oot)-278(<)]TJ/F8 9.9626 Tf 28.543 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1,)-333(default)-334(-1.)]TJ 0 g 0 G -BT -/F16 14.3462 Tf 99.895 680.226 Td [(psb)]TJ -ET -q -1 0 0 1 125.163 680.425 cm -[]0 d 0 J 0.398 w 0 0 m 4.842 0 l S -Q -BT -/F16 14.3462 Tf 130.004 680.226 Td [(set)]TJ -ET -q -1 0 0 1 150.979 680.425 cm -[]0 d 0 J 0.398 w 0 0 m 4.842 0 l S -Q -BT -/F16 14.3462 Tf 155.821 680.226 Td [(erraction|Set)-375(the)-375(t)31(yp)-31(e)-375(of)-375(action)-375(to)-375(b)-31(e)]TJ -55.926 -17.933 Td [(tak)31(en)-375(up)-31(on)-375(error)-375(condition.)]TJ/F27 9.9626 Tf 1.377 -35.768 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 30.09 0 Td [(p)-158(s)-159(b)]TJ -ET -q -1 0 0 1 151.695 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 156.263 626.525 Td [(s)-159(e)-158(t)]TJ -ET -q -1 0 0 1 173.829 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 178.396 626.525 Td [(e)-159(r)-158(r)-158(a)-159(c)-158(t)-159(i)-158(o)-159(n)-264(\050)-265(e)-160(r)-160(r)]TJ -ET -q -1 0 0 1 256.582 626.724 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 261.163 626.525 Td [(a)-160(c)-160(t)-265(\051)]TJ +/F27 9.9626 Tf -251.325 -31.749 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G + 0 -19.076 Td [(dat)]TJ 0 g 0 G -/F27 9.9626 Tf -161.268 -17.933 Td [(T)32(yp)-32(e:)]TJ +/F8 9.9626 Tf 21.371 0 Td [(On)-333(destination)-334(p)1(ro)-28(cess\050es)-1(\051)1(,)-334(the)-333(result)-333(of)-334(the)-333(2-norm)-333(reduction.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(real)-333(v)55(ariabl)1(e)-1(,)-333(whic)28(h)-333(ma)27(y)-333(b)-28(e)-333(a)-333(scalar,)-334(or)-333(a)-333(rank)-334(1)-333(arra)28(y)83(.)]TJ 0 -11.955 Td [(Kind,)-333(rank)-333(and)-334(size)-333(m)28(ust)-334(agree)-333(on)-333(all)-334(pro)-27(ces)-1(ses.)]TJ/F16 11.9552 Tf -24.907 -19.794 Td [(Notes)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F8 9.9626 Tf 12.177 -18.226 Td [(1.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ + [-500(This)-416(reduction)-416(is)-416(appropriate)-416(to)-416(compute)-416(the)-417(r)1(e)-1(sult)1(s)-417(of)-416(m)28(ultiple)-416(\050lo)-28(cal\051)]TJ 12.73 -11.955 Td [(NRM2)-333(op)-28(erations)-333(at)-334(the)-333(same)-333(time)-1(.)]TJ 0 g 0 G + -12.73 -19.076 Td [(2.)]TJ 0 g 0 G - 0 -19.926 Td [(err)]TJ + [-500(Denoting)-283(b)28(y)]TJ/F11 9.9626 Tf 68.601 0 Td [(dat)]TJ/F10 6.9738 Tf 14.049 -1.494 Td [(i)]TJ/F8 9.9626 Tf 6.139 1.494 Td [(the)-283(v)55(alue)-283(of)-283(the)-283(v)55(ariabl)1(e)]TJ/F11 9.9626 Tf 106.289 0 Td [(dat)]TJ/F8 9.9626 Tf 16.871 0 Td [(on)-283(pro)-28(cess)]TJ/F11 9.9626 Tf 47.569 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(,)-293(the)-283(output)]TJ/F11 9.9626 Tf 54.504 0 Td [(r)-28(es)]TJ/F8 9.9626 Tf -304.724 -11.955 Td [(is)-333(equiv)55(alen)28(t)-333(to)-334(the)-333(computation)-333(of)]TJ/F11 9.9626 Tf 122.07 -25.904 Td [(r)-28(es)]TJ/F8 9.9626 Tf 16.848 0 Td [(=)]TJ/F1 9.9626 Tf 10.516 14.335 Td [(s)]TJ ET q -1 0 0 1 115.271 568.941 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 335.008 203.069 cm +[]0 d 0 J 0.398 w 0 0 m 34.569 0 l S Q BT -/F27 9.9626 Tf 118.708 568.741 Td [(act)]TJ -0 g 0 G -/F8 9.9626 Tf 20.098 0 Td [(the)-333(t)27(yp)-27(e)-334(of)-333(action.)]TJ -14.004 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger.)-444(P)27(ossible)-333(v)56(alues)-1(:)]TJ/F30 9.9626 Tf 180.269 0 Td [(psb_act_ret)]TJ/F8 9.9626 Tf 57.533 0 Td [(,)]TJ/F30 9.9626 Tf 6.089 0 Td [(psb_act_abort)]TJ/F8 9.9626 Tf 67.994 0 Td [(.)]TJ -0 g 0 G - -172.408 -430.483 Td [(127)]TJ -0 g 0 G -ET - -endstream -endobj -1734 0 obj -<< -/Length 538 ->> -stream +/F1 9.9626 Tf 335.008 197.999 Td [(X)]TJ/F10 6.9738 Tf 5.786 -21.219 Td [(i)]TJ/F11 9.9626 Tf 10.265 11.755 Td [(dat)]TJ/F7 6.9738 Tf 14.05 3.431 Td [(2)]TJ/F10 6.9738 Tf 0 -6.208 Td [(i)]TJ/F11 9.9626 Tf 4.469 2.777 Td [(;)]TJ/F8 9.9626 Tf -193.967 -30.908 Td [(with)-333(care)-334(tak)28(en)-333(to)-334(a)28(v)28(oid)-333(unnecessary)-334(o)28(v)28(er\015o)28(w.)]TJ 0 g 0 G + -12.73 -19.075 Td [(3.)]TJ 0 g 0 G -BT -/F16 14.3462 Tf 150.705 706.129 Td [(9)-1125(Utilities)]TJ/F8 9.9626 Tf 0 -21.821 Td [(W)83(e)-412(ha)27(v)28(e)-412(som)-1(e)-412(utilities)-413(a)28(v)55(ai)1(lable)-413(for)-413(input)-412(and)-413(output)-412(of)-413(sparse)-413(matrices;)-452(the)]TJ 0 -11.955 Td [(in)28(terfaces)-334(to)-333(these)-333(routines)-334(are)-333(a)28(v)55(ailable)-333(in)-333(the)-334(mo)-27(dule)]TJ/F30 9.9626 Tf 241.843 0 Td [(psb_util_mod)]TJ/F8 9.9626 Tf 62.764 0 Td [(.)]TJ + [-500(The)]TJ/F30 9.9626 Tf 32.47 0 Td [(dat)]TJ/F8 9.9626 Tf 18.272 0 Td [(argumen)28(t)-259(is)-259(b)-28(oth)-259(input)-259(and)-259(output,)-274(and)-259(its)-259(v)55(alue)-259(ma)28(y)-259(b)-28(e)-259(c)28(hanged)]TJ -38.012 -11.956 Td [(ev)28(en)-334(on)-333(pro)-28(cesses)-333(di\013eren)28(t)-334(from)-333(the)-333(\014nal)-334(result)-333(destination.)]TJ 0 g 0 G - -140.224 -581.915 Td [(128)]TJ + 139.477 -36.158 Td [(124)]TJ 0 g 0 G ET endstream endobj -1739 0 obj +1729 0 obj << -/Length 4792 +/Length 5357 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 103.166 706.129 Td [(h)31(b)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(7.16)-1125(psb)]TJ ET q -1 0 0 1 118.544 706.328 cm +1 0 0 1 158.311 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 122.579 706.129 Td [(read)-274(|)-273(Read)-274(a)-273(sparse)-274(matrix)-274(from)-273(a)-274(\014le)-273(in)-274(the)-274(Harw)32(ell{)]TJ -22.684 -13.948 Td [(Bo)-31(eing)-375(format)]TJ/F27 9.9626 Tf 1.377 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.554 0 Td [(h)-105(b)]TJ -ET -q -1 0 0 1 144.579 668.014 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 148.61 667.814 Td [(r)-105(e)-104(a)-105(d)-210(\050)-139(a)-228(,)-911(i)-149(r)-150(e)-149(t)-460(,)-896(i)-135(u)-135(n)-135(i)-135(t)-431(,)-877(f)-116(i)-116(l)-116(e)-117(n)-116(a)-116(m)-116(e)-393(,)-776(b)-191(,)-902(m)-142(t)-141(i)-141(t)-141(l)-142(e)-247(\051)]TJ +/F16 11.9552 Tf 162.346 706.129 Td [(snd)-375(|)-375(Send)-375(data)]TJ 0 g 0 G 0 g 0 G +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_snd\050icontxt,)-525(dat,)-525(dst,)-525(m\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-333(subroutine)-334(sends)-333(a)-333(pac)27(k)28(et)-333(of)-333(data)-334(to)-333(a)-333(destination.)]TJ 0 g 0 G -/F27 9.9626 Tf -48.715 -17.933 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -14.944 -19.926 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous:)-445(see)-333(usage)-333(notes.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(\014lename)]TJ -0 g 0 G -/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(read.)]TJ -21.606 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)27(h)1(arac)-1(ter)-435(v)56(ariable)-435(con)28(taining)-436(a)-435(v)56(alid)-435(\014le)-435(name,)-461(or)]TJ/F30 9.9626 Tf 297.915 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(,)-461(in)]TJ -303.146 -11.956 Td [(whic)28(h)-302(cas)-1(e)-302(the)-302(default)-302(input)-302(unit)-302(5)-303(\050i.e.)-434(standard)-302(input)-302(in)-302(Unix)-302(jargon\051)-302(is)]TJ 0 -11.955 Td [(used.)-444(Default:)]TJ/F30 9.9626 Tf 66.058 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -96.195 -19.925 Td [(iunit)]TJ -0 g 0 G -/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(un)1(it)-334(n)28(um)28(b)-28(er.)]TJ -3.625 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(Only)-333(me)-1(ani)1(ngful)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.288 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ + 0 -19.925 Td [(icon)32(txt)]TJ 0 g 0 G -/F27 9.9626 Tf -316.425 -21.918 Td [(On)-383(Return)]TJ +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyin)1(g)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(dat)]TJ 0 g 0 G - 0 -19.925 Td [(a)]TJ +/F8 9.9626 Tf 21.371 0 Td [(The)-333(data)-334(to)-333(b)-28(e)-333(sen)28(t.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(te)-1(ger,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-340(ma)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-381(a)-381(rank)-381(1)-381(or)-381(2)-381(arra)27(y)84(,)-393(or)-381(a)-381(c)27(har)1(ac)-1(ter)-381(or)-381(logical)-381(scalar.)-969(T)28(yp)-27(e)-1(,)-393(ki)1(nd)-381(and)]TJ 0 -11.955 Td [(rank)-327(m)27(ust)-327(agree)-328(on)-327(sender)-328(and)-327(receiv)27(er)-327(pro)-28(cess;)-329(if)]TJ/F11 9.9626 Tf 220.724 0 Td [(m)]TJ/F8 9.9626 Tf 12.01 0 Td [(is)-328(not)-327(sp)-28(eci\014ed,)-329(size)]TJ -232.734 -11.955 Td [(m)28(ust)-334(agree)-333(as)-333(w)27(ell.)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)-333(read)-333(from)-334(\014le.)]TJ 14.356 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ -ET -q -1 0 0 1 312.036 452.82 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 315.174 452.621 Td [(Tspmat)]TJ -ET -q -1 0 0 1 347.183 452.82 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 350.322 452.621 Td [(type)]TJ +/F27 9.9626 Tf -24.907 -19.926 Td [(dst)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F8 9.9626 Tf 20.321 0 Td [(Destination)-333(pro)-28(cess.)]TJ 4.586 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 138.176 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(dst)-278(<)]TJ/F8 9.9626 Tf 23.969 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.207 0 Td [(\000)]TJ/F8 9.9626 Tf 9.962 0 Td [(1.)]TJ 0 g 0 G -/F27 9.9626 Tf -271.348 -19.925 Td [(b)]TJ +/F27 9.9626 Tf -239.002 -31.881 Td [(m)]TJ 0 g 0 G -/F8 9.9626 Tf 11.347 0 Td [(Rigth)-333(hand)-333(s)-1(i)1(de\050s)-1(\051.)]TJ 13.56 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-282(ar)1(ra)27(y)-281(of)-282(t)28(yp)-28(e)-281(real)-282(or)-281(complex,)-292(rank)-282(2)-281(and)-282(ha)28(ving)-281(the)-282(ALLOCA)83(T)84(ABLE)]TJ 0 -11.956 Td [(attribute;)-409(will)-384(b)-28(e)-384(allo)-28(cated)-384(an)1(d)-384(\014lled)-384(in)-384(if)-384(the)-384(input)-384(\014le)-384(con)28(tains)-384(a)-384(righ)28(t)]TJ 0 -11.955 Td [(hand)-333(side,)-334(otherwise)-333(will)-333(b)-28(e)-333(left)-334(in)-333(the)-333(UNALLOCA)83(TED)-333(state.)]TJ +/F8 9.9626 Tf 14.529 0 Td [(Num)28(b)-28(er)-333(of)-334(ro)28(ws.)]TJ 10.378 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf 43.455 0 Td [(.)]TJ -73.066 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 138.176 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(m)-278(<)]TJ/F8 9.9626 Tf 19.264 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(siz)-44(e)]TJ/F8 9.9626 Tf 17.812 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(dat;)]TJ/F8 9.9626 Tf 18.477 0 Td [(1\051.)]TJ -226.384 -11.956 Td [(When)]TJ/F11 9.9626 Tf 29.071 0 Td [(dat)]TJ/F8 9.9626 Tf 17.383 0 Td [(is)-335(a)-334(rank)-335(2)-335(arra)28(y)84(,)-335(sp)-28(eci\014es)-335(the)-335(n)28(um)28(b)-28(er)-334(of)-335(ro)28(ws)-335(to)-335(b)-27(e)-335(sen)28(t)-335(inde-)]TJ -46.454 -11.955 Td [(p)-28(enden)28(tly)-285(of)-285(the)-286(leading)-285(dimension)]TJ/F11 9.9626 Tf 153.742 0 Td [(siz)-44(e)]TJ/F8 9.9626 Tf 17.812 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(dat;)]TJ/F8 9.9626 Tf 18.477 0 Td [(1\051;)-301(m)27(ust)-285(ha)28(v)28(e)-285(the)-286(same)-285(v)55(alu)1(e)]TJ -193.905 -11.955 Td [(on)-333(sending)-334(and)-333(receiving)-333(pro)-28(cesses.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(m)32(title)]TJ +/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 34.738 0 Td [(Matrix)-333(title.)]TJ -9.831 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(A)-405(c)28(harac)28(h)28(ter)-405(v)56(ariable)-405(of)-405(length)-404(72)-405(holding)-405(a)-404(cop)27(y)-404(of)-405(the)-405(matrix)-404(title)-405(as)]TJ 0 -11.956 Td [(sp)-28(eci\014ed)-333(b)28(y)-334(the)-333(Harw)28(ell-Bo)-28(eing)-333(format)-334(and)-333(con)28(tained)-333(in)-334(the)-333(input)-333(\014le.)]TJ +/F16 11.9552 Tf 0 -21.918 Td [(Notes)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(iret)]TJ +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ 0 g 0 G -/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.318 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ + [-500(This)-402(subroutine)-403(implies)-402(a)-402(s)-1(yn)1(c)27(hronization,)-419(but)-403(on)1(ly)-403(b)-28(et)28(w)28(een)-403(the)-402(calling)]TJ 12.73 -11.955 Td [(pro)-28(cess)-333(and)-333(the)-334(destination)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 157.521 0 Td [(dst)]TJ/F8 9.9626 Tf 13.453 0 Td [(.)]TJ 0 g 0 G - 139.477 -194.811 Td [(129)]TJ + -31.497 -105.147 Td [(125)]TJ 0 g 0 G ET endstream endobj -1746 0 obj +1734 0 obj << -/Length 5239 +/Length 5375 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(h)31(b)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(7.17)-1125(psb)]TJ ET q -1 0 0 1 166.082 706.328 cm +1 0 0 1 209.121 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 170.117 706.129 Td [(write)-357(|)-357(W)93(rite)-357(a)-357(sparse)-357(matrix)-358(to)-357(a)-357(\014le)-357(in)-357(the)-357(Harw)31(ell{)]TJ -19.412 -13.948 Td [(Bo)-31(eing)-375(format)]TJ/F27 9.9626 Tf 1.377 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.733 0 Td [(h)-123(b)]TJ -ET -q -1 0 0 1 195.926 668.014 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 200.137 667.814 Td [(w)-123(r)-122(i)-123(t)-123(e)-228(\050)-139(a)-228(,)-910(i)-150(r)-149(e)-150(t)-460(,)-896(i)-135(u)-135(n)-135(i)-135(t)-431(,)-877(f)-116(i)-116(l)-116(e)-116(n)-116(a)-116(m)-117(e)-393(,)-821(k)-60(e)-60(y)-281(,)-853(r)-92(h)-91(s)-345(,)-902(m)-141(t)-142(i)-141(t)-141(l)-141(e)-247(\051)]TJ +/F16 11.9552 Tf 213.156 706.129 Td [(rcv)-375(|)-375(Receiv)31(e)-375(data)]TJ 0 g 0 G 0 g 0 G +/F30 9.9626 Tf -62.451 -18.389 Td [(call)-525(psb_rcv\050icontxt,)-525(dat,)-525(src,)-525(m\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-333(subroutine)-334(receiv)28(es)-333(a)-334(pac)28(k)28(et)-333(of)-334(data)-333(to)-333(a)-334(destination.)]TJ 0 g 0 G -/F27 9.9626 Tf -49.432 -17.933 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(a)]TJ +/F27 9.9626 Tf -14.944 -19.926 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)-333(to)-333(b)-28(e)-333(written.)]TJ 14.355 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.082 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ -ET -q -1 0 0 1 362.845 586.32 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 365.983 586.121 Td [(Tspmat)]TJ -ET -q -1 0 0 1 397.993 586.32 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 401.131 586.121 Td [(type)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous:)-444(s)-1(ee)-333(usage)-333(notes.)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G -/F27 9.9626 Tf -271.347 -19.926 Td [(b)]TJ 0 g 0 G -/F8 9.9626 Tf 11.346 0 Td [(Rigth)-333(hand)-334(sid)1(e)-1(.)]TJ 13.56 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(An)-282(arr)1(a)27(y)-281(of)-282(t)28(yp)-28(e)-281(real)-282(or)-281(complex,)-292(rank)-282(1)-281(and)-282(ha)28(ving)-281(the)-282(ALLOCA)83(T)84(ABLE)]TJ 0 -11.955 Td [(attribute;)-409(will)-384(b)-28(e)-384(allo)-28(cated)-384(and)-383(\014lled)-384(in)-384(if)-384(the)-384(input)-384(\014le)-384(con)28(tains)-384(a)-384(righ)28(t)]TJ 0 -11.955 Td [(hand)-333(side.)]TJ + 0 -19.925 Td [(icon)32(txt)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(\014lename)]TJ +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text)-333(iden)27(tifyi)1(ng)-334(the)-333(virtual)-333(parallel)-334(mac)28(hine.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(ariable.)]TJ 0 g 0 G -/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(written)-333(to.)]TJ -21.607 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.761 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)27(haracter)-435(v)56(ariable)-435(con)27(tain)1(ing)-436(a)-435(v)56(alid)-435(\014le)-435(name)-1(,)-460(or)]TJ/F30 9.9626 Tf 297.916 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(,)-461(in)]TJ -303.146 -11.955 Td [(whic)28(h)-281(case)-280(the)-281(d)1(e)-1(f)1(ault)-281(output)-280(unit)-280(6)-281(\050i.e.)-427(stand)1(ard)-281(output)-280(in)-280(Unix)-281(jargon\051)]TJ 0 -11.955 Td [(is)-333(used.)-445(Default:)]TJ/F30 9.9626 Tf 76.076 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(.)]TJ +/F27 9.9626 Tf -24.907 -19.925 Td [(src)]TJ 0 g 0 G -/F27 9.9626 Tf -106.213 -19.926 Td [(iunit)]TJ +/F8 9.9626 Tf 19.311 0 Td [(Source)-333(pro)-28(cess.)]TJ 5.596 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.134 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 138.176 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(sr)-28(c)-277(<)]TJ/F8 9.9626 Tf 24.269 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(np)]TJ/F14 9.9626 Tf 13.206 0 Td [(\000)]TJ/F8 9.9626 Tf 9.963 0 Td [(1.)]TJ 0 g 0 G -/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(u)1(nit)-334(n)28(um)28(b)-28(er.)]TJ -3.626 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.761 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(Only)-334(meaningf)1(ul)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.289 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ +/F27 9.9626 Tf -239.302 -31.88 Td [(m)]TJ 0 g 0 G -/F27 9.9626 Tf -316.425 -19.925 Td [(k)32(ey)]TJ +/F8 9.9626 Tf 14.529 0 Td [(Num)28(b)-28(er)-333(of)-334(ro)28(ws.)]TJ 10.378 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf 43.455 0 Td [(.)]TJ -73.066 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue)-333(0)]TJ/F11 9.9626 Tf 138.176 0 Td [(<)]TJ/F8 9.9626 Tf 7.749 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(m)-278(<)]TJ/F8 9.9626 Tf 19.263 0 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(siz)-44(e)]TJ/F8 9.9626 Tf 17.813 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(dat;)]TJ/F8 9.9626 Tf 18.477 0 Td [(1\051.)]TJ -226.384 -11.955 Td [(When)]TJ/F11 9.9626 Tf 29.071 0 Td [(dat)]TJ/F8 9.9626 Tf 17.383 0 Td [(is)-335(a)-334(rank)-335(2)-335(arra)28(y)84(,)-335(sp)-28(eci\014es)-335(the)-335(n)28(um)28(b)-28(er)-334(of)-335(ro)28(ws)-335(to)-335(b)-27(e)-335(sen)28(t)-335(inde-)]TJ -46.454 -11.955 Td [(p)-28(enden)28(tly)-285(of)-285(the)-286(leadin)1(g)-286(dimension)]TJ/F11 9.9626 Tf 153.741 0 Td [(siz)-44(e)]TJ/F8 9.9626 Tf 17.813 0 Td [(\050)]TJ/F11 9.9626 Tf 3.874 0 Td [(dat;)]TJ/F8 9.9626 Tf 18.477 0 Td [(1\051;)-301(m)27(u)1(s)-1(t)-285(ha)28(v)28(e)-285(the)-286(same)-285(v)55(al)1(ue)]TJ -193.905 -11.955 Td [(on)-333(sending)-334(and)-333(receiving)-333(pro)-28(cesses.)]TJ 0 g 0 G -/F8 9.9626 Tf 22.008 0 Td [(Matrix)-333(k)28(ey)83(.)]TJ 2.899 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(A)-385(c)28(harac)28(h)28(ter)-385(v)56(ariable)-385(of)-385(length)-384(8)-385(holding)-385(the)-384(matrix)-385(k)28(ey)-385(as)-385(sp)-28(eci\014ed)-384(b)27(y)]TJ 0 -11.955 Td [(the)-333(Harw)27(ell-Bo)-27(eing)-334(format)-333(and)-333(to)-334(b)-27(e)-334(written)-333(to)-333(\014le.)]TJ +/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(m)32(title)]TJ 0 g 0 G -/F8 9.9626 Tf 34.738 0 Td [(Matrix)-333(title.)]TJ -9.831 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(A)-318(c)28(harac)28(h)28(ter)-318(v)56(ariable)-318(of)-317(length)-318(72)-317(holding)-318(the)-317(matrix)-318(title)-318(as)-317(sp)-28(eci\014ed)-318(b)28(y)]TJ 0 -11.956 Td [(the)-333(Harw)27(ell-Bo)-27(eing)-334(format)-333(and)-333(to)-334(b)-27(e)-334(written)-333(to)-333(\014le.)]TJ + 0 -19.926 Td [(dat)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -21.917 Td [(On)-383(Return)]TJ +/F8 9.9626 Tf 21.371 0 Td [(The)-333(data)-334(to)-333(b)-28(e)-333(receiv)28(ed.)]TJ 3.536 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-339(as:)-458(an)-339(in)28(teg)-1(er,)-341(real)-340(or)-339(complex)-340(v)56(ariable,)-342(whic)28(h)-339(m)-1(a)28(y)-339(b)-28(e)-340(a)-340(scalar,)]TJ 0 -11.955 Td [(or)-381(a)-381(rank)-381(1)-381(or)-381(2)-381(arra)28(y)83(,)-393(or)-381(a)-381(c)27(h)1(aracte)-1(r)-381(or)-381(logical)-381(scalar.)-968(T)27(yp)-27(e,)-393(kind)-381(and)]TJ 0 -11.956 Td [(rank)-327(m)27(ust)-327(agree)-328(on)-327(sender)-328(and)-327(receiv)27(er)-327(pro)-28(cess;)-329(if)]TJ/F11 9.9626 Tf 220.724 0 Td [(m)]TJ/F8 9.9626 Tf 12.01 0 Td [(is)-328(not)-327(sp)-28(eci\014ed,)-328(s)-1(ize)]TJ -232.734 -11.955 Td [(m)28(ust)-334(agree)-333(as)-333(w)27(ell.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ 0 g 0 G +/F8 9.9626 Tf 12.177 -19.925 Td [(1.)]TJ 0 g 0 G - 0 -19.926 Td [(iret)]TJ + [-500(This)-402(subroutine)-403(implies)-402(a)-402(sync)27(hronization,)-419(but)-403(on)1(ly)-403(b)-28(et)28(w)28(een)-403(th)1(e)-403(calling)]TJ 12.73 -11.955 Td [(pro)-28(cess)-333(and)-333(the)-334(source)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 136.516 0 Td [(sr)-28(c)]TJ/F8 9.9626 Tf 13.753 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.318 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detected.)]TJ + -10.792 -105.147 Td [(126)]TJ +0 g 0 G +ET + +endstream +endobj +1741 0 obj +<< +/Length 6381 +>> +stream +0 g 0 G +0 g 0 G +BT +/F16 14.3462 Tf 99.895 706.129 Td [(8)-1125(Error)-375(handling)]TJ/F8 9.9626 Tf 0 -21.821 Td [(The)-446(PSBLAS)-446(library)-446(error)-446(handling)-446(p)-28(olicy)-446(has)-446(b)-28(een)-446(completely)-446(rewritten)-446(in)]TJ 0 -11.955 Td [(v)28(ersion)-448(2.0.)-788(The)-448(idea)-448(b)-27(ehind)-448(the)-448(design)-448(of)-447(this)-448(new)-448(error)-448(handling)-447(strategy)]TJ 0 -11.955 Td [(is)-491(to)-492(k)28(eep)-491(error)-491(me)-1(ssages)-491(on)-491(a)-492(stac)28(k)-491(allo)28(wing)-492(the)-491(user)-491(to)-491(trace)-492(bac)28(k)-491(up)-492(to)]TJ 0 -11.956 Td [(the)-401(p)-27(oin)27(t)-400(where)-401(the)-400(\014rst)-401(error)-400(me)-1(ssage)-400(has)-401(b)-28(een)-400(generated.)-646(Ev)27(ery)-400(routine)-401(in)]TJ 0 -11.955 Td [(the)-442(PS)1(B)-1(LAS)1(-)-1(2.0)-441(library)-441(has,)-469(as)-442(last)-441(non-optional)-441(argume)-1(n)28(t,)-468(an)-442(in)28(teger)]TJ/F30 9.9626 Tf 322.79 0 Td [(info)]TJ/F8 9.9626 Tf -322.79 -11.955 Td [(v)56(ariable;)-385(whenev)28(er,)-376(inside)-368(the)-367(routine,)-376(an)-368(error)-367(is)-368(detected,)-376(this)-367(v)55(ariable)-367(is)-368(set)]TJ 0 -11.955 Td [(to)-381(a)-380(v)55(alue)-380(corresp)-28(onding)-380(to)-381(a)-380(sp)-28(eci\014c)-381(error)-380(co)-28(de.)-586(Then)-381(this)-380(error)-381(co)-28(de)-380(is)-381(also)]TJ 0 -11.955 Td [(pushed)-245(on)-245(the)-245(error)-245(stac)28(k)-245(and)-245(then)-245(either)-245(con)27(trol)-245(is)-245(return)1(e)-1(d)-245(to)-245(the)-245(caller)-245(routine)]TJ 0 -11.955 Td [(or)-372(the)-372(execution)-371(is)-372(ab)-28(orted,)-381(dep)-28(ending)-372(on)-371(the)-372(users)-372(c)28(hoice.)-560(A)28(t)-372(the)-372(time)-371(when)]TJ 0 -11.956 Td [(the)-364(execution)-363(is)-364(ab)-28(orted,)-371(an)-364(error)-364(message)-363(is)-364(prin)28(ted)-364(on)-364(standard)-363(output)-364(with)]TJ 0 -11.955 Td [(a)-448(lev)28(el)-448(of)-447(v)27(erb)-27(osit)27(y)-447(than)-448(can)-448(b)-27(e)-448(c)28(hosen)-448(b)28(y)-448(the)-448(user.)-787(If)-448(the)-448(execution)-447(is)-448(not)]TJ 0 -11.955 Td [(ab)-28(orted,)-328(then,)-329(the)-328(caller)-327(routine)-328(c)28(hec)28(ks)-328(the)-328(v)56(alue)-328(retur)1(ned)-328(in)-328(the)]TJ/F30 9.9626 Tf 285.46 0 Td [(info)]TJ/F8 9.9626 Tf 24.185 0 Td [(v)56(ariable)]TJ -309.645 -11.955 Td [(and,)-359(if)-354(not)-354(zero,)-359(an)-353(e)-1(r)1(ror)-354(condition)-354(is)-354(raised.)-506(This)-354(pro)-28(cess)-354(con)28(tin)28(ues)-354(on)-354(all)-354(the)]TJ 0 -11.955 Td [(lev)28(els)-297(of)-297(nested)-296(calls)-297(un)28(til)-297(the)-296(lev)28(e)-1(l)-296(where)-297(the)-296(user)-297(decides)-297(to)-296(ab)-28(ort)-297(the)-296(program)]TJ 0 -11.955 Td [(execution.)]TJ 14.944 -11.956 Td [(Figure)]TJ +0 0 1 rg 0 0 1 RG + [-353(9)]TJ +0 g 0 G + [-353(sho)28(ws)-353(the)-353(la)28(y)27(out)-353(of)-353(a)-353(generic)]TJ/F30 9.9626 Tf 170.683 0 Td [(psb_foo)]TJ/F8 9.9626 Tf 40.129 0 Td [(routine)-353(with)-353(resp)-28(ect)-353(to)-353(the)]TJ -225.756 -11.955 Td [(PSBLAS-2.0)-326(error)-326(handl)1(ing)-326(p)-28(olicy)83(.)-442(It)-325(is)-326(p)-28(ossible)-326(to)-326(see)-326(ho)28(w,)-327(whenev)27(er)-325(an)-326(error)]TJ 0 -11.955 Td [(condition)-379(is)-378(detected,)-390(the)]TJ/F30 9.9626 Tf 115.439 0 Td [(info)]TJ/F8 9.9626 Tf 24.694 0 Td [(v)56(ariable)-379(is)-379(set)-379(to)-378(the)-379(corresp)-28(onding)-378(error)-379(co)-28(de)]TJ -140.133 -11.955 Td [(whic)28(h)-376(is,)-387(then,)-386(pushed)-376(on)-376(top)-376(of)-376(the)-376(stac)28(k)-376(b)28(y)-376(means)-376(of)-376(the)]TJ/F30 9.9626 Tf 264.703 0 Td [(psb_errpush)]TJ/F8 9.9626 Tf 57.533 0 Td [(.)-572(An)]TJ -322.236 -11.955 Td [(error)-331(condition)-331(ma)28(y)-331(b)-28(e)-331(directly)-331(detected)-331(inside)-331(a)-331(routine)-331(or)-331(indirectly)-331(c)27(hec)28(king)]TJ 0 -11.956 Td [(the)-462(error)-461(co)-28(de)-461(returned)-462(returned)-461(b)28(y)-462(a)-461(called)-462(routine.)-829(Whenev)28(er)-461(an)-462(error)-461(is)]TJ 0 -11.955 Td [(encoun)28(tered,)-459(after)-434(it)-434(has)-434(b)-27(een)-434(pushed)-434(on)-434(stac)28(k,)-459(the)-434(program)-433(exec)-1(u)1(tion)-434(skips)]TJ 0 -11.955 Td [(to)-356(a)-356(p)-27(oin)28(t)-356(where)-356(the)-356(error)-355(c)-1(on)1(dition)-356(is)-356(handled;)-367(the)-355(e)-1(r)1(ror)-356(condition)-356(is)-356(hand)1(le)-1(d)]TJ 0 -11.955 Td [(either)-392(b)28(y)-392(returning)-392(con)28(trol)-392(to)-392(the)-392(caller)-392(r)1(outine)-392(or)-392(b)28(y)-392(calling)-392(the)]TJ/F30 9.9626 Tf 291.408 0 Td [(psb\134_error)]TJ/F8 9.9626 Tf -291.408 -11.955 Td [(routine)-478(whic)28(h)-479(prin)28(ts)-478(the)-478(con)28(ten)27(t)-478(of)-478(the)-478(error)-479(stac)28(k)-478(and)-478(ab)-28(orts)-478(the)-478(program)]TJ 0 -11.955 Td [(execution,)-330(accordin)1(g)-329(to)-329(th)1(e)-329(c)28(hoice)-329(made)-328(b)27(y)-328(the)-329(user)-328(with)]TJ/F30 9.9626 Tf 252.028 0 Td [(psb_set_erraction)]TJ/F8 9.9626 Tf 88.916 0 Td [(.)]TJ -340.944 -11.956 Td [(The)-347(default)-346(is)-347(to)-346(prin)28(t)-347(the)-347(error)-346(and)-347(terminate)-346(the)-347(program,)-350(but)-346(the)-347(user)-346(ma)27(y)]TJ 0 -11.955 Td [(c)28(ho)-28(ose)-333(to)-334(handle)-333(the)-333(error)-334(explicitly)84(.)]TJ 14.944 -11.955 Td [(Figure)]TJ +0 0 1 rg 0 0 1 RG + [-479(10)]TJ 0 g 0 G - 139.477 -139.02 Td [(130)]TJ + [-479(rep)-28(orts)-479(a)-479(sample)-480(error)-479(message)-479(generated)-479(b)28(y)-480(the)-479(PSBLAS-2.0)]TJ -14.944 -11.955 Td [(library)83(.)-451(This)-335(error)-336(has)-335(b)-28(een)-336(generated)-335(b)27(y)-335(the)-336(fact)-335(that)-336(the)-335(use)-1(r)-335(has)-336(c)28(hosen)-336(the)]TJ 0 -11.955 Td [(in)28(v)55(alid)-367(\134F)28(OO")-368(storage)-367(format)-368(to)-367(represen)27(t)-367(the)-368(sparse)-367(matrix.)-547(F)83(rom)-367(this)-368(error)]TJ 0 -11.955 Td [(message)-248(it)-248(is)-248(p)-27(oss)-1(ib)1(le)-248(to)-248(see)-248(that)-248(the)-248(error)-247(has)-248(b)-28(een)-248(detected)-248(inside)-248(the)]TJ/F30 9.9626 Tf 301.869 0 Td [(psb_cest)]TJ/F8 9.9626 Tf -301.869 -11.956 Td [(subroutine)-333(called)-334(b)28(y)]TJ/F30 9.9626 Tf 91.408 0 Td [(psb_spasb)]TJ/F8 9.9626 Tf 50.394 0 Td [(...)-444(b)27(y)-333(pro)-28(cess)-333(0)-333(\050i.e.)-445(the)-333(ro)-28(ot)-333(pro)-28(cess\051.)]TJ +0 g 0 G + 22.582 -211.304 Td [(127)]TJ 0 g 0 G ET endstream endobj -1753 0 obj +1748 0 obj << -/Length 3661 +/Length 7207 >> stream 0 g 0 G 0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(mm)]TJ +/F53 8.9664 Tf 159.61 680.066 Td [(s)-60(u)-60(b)-60(r)-60(o)-59(u)-60(t)-60(i)-60(n)-60(e)]TJ/F46 8.9664 Tf 61.471 0 Td [(p)-132(s)-132(b)]TJ ET q -1 0 0 1 123.118 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 239.064 680.265 cm +[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S Q BT -/F16 11.9552 Tf 127.153 706.129 Td [(mat)]TJ +/F46 8.9664 Tf 243.014 680.066 Td [(f)-132(o)-132(o)-241(\050)-155(s)-47(o)-47(m)-46(e)-769(a)-105(r)-106(g)-105(s)-376(,)-939(i)-156(n)-156(f)-157(o)-265(\051)]TJ -65.126 -10.959 Td [(.)-248(.)-249(.)]TJ/F53 8.9664 Tf -0.604 -10.959 Td [(i)-181(f)]TJ/F46 8.9664 Tf 10.409 0 Td [(\050)-259(e)-152(r)-151(r)-151(o)-151(r)-897(d)-129(e)-129(t)-129(e)-130(c)-129(t)-129(e)-130(d)-237(\051)]TJ/F53 8.9664 Tf 93.291 0 Td [(t)-30(h)-30(e)-29(n)]TJ/F46 8.9664 Tf -87.332 -10.959 Td [(i)-156(n)-157(f)-156(o)-65(=)-38(e)-129(r)-129(r)-128(c)-129(o)-129(d)-129(e)-129(1)]TJ/F53 8.9664 Tf -0.133 -10.959 Td [(c)-142(a)-141(l)-142(l)]TJ/F46 8.9664 Tf 27.487 0 Td [(p)-124(s)-124(b)]TJ ET q -1 0 0 1 150.936 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 238.765 636.429 cm +[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S Q BT -/F16 11.9552 Tf 154.971 706.129 Td [(read)-467(|)-467(Read)-466(a)-467(sparse)-467(matrix)-467(from)-467(a)-467(\014le)-466(in)-467(the)]TJ -55.076 -13.948 Td [(MatrixMark)31(et)-375(format)]TJ/F27 9.9626 Tf 1.377 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.009 0 Td [(m)-50(m)]TJ +/F46 8.9664 Tf 242.641 636.23 Td [(e)-124(r)-124(r)-124(p)-123(u)-124(s)-124(h)-232(\050)-330(')-242(p)-132(s)-133(b)]TJ ET q -1 0 0 1 148.479 668.014 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 310.944 636.429 cm +[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S Q BT -/F8 9.9626 Tf 151.965 667.814 Td [(m)-50(a)-50(t)]TJ +/F46 8.9664 Tf 314.894 636.23 Td [(f)-132(o)-132(o)-353(')-332(,)-855(e)-129(r)-129(r)-129(c)-129(o)-129(d)-128(e)-129(1)-237(\051)]TJ/F53 8.9664 Tf -122.23 -10.959 Td [(g)-46(o)-47(t)-46(o)]TJ/F46 8.9664 Tf 27.969 0 Td [(9)-82(9)-82(9)-83(9)]TJ/F53 8.9664 Tf -44.989 -10.959 Td [(e)2(n)2(d)-796(i)-181(f)]TJ/F46 8.9664 Tf 2.244 -10.959 Td [(.)-248(.)-249(.)]TJ/F53 8.9664 Tf -0.957 -10.959 Td [(c)-142(a)-141(l)-142(l)]TJ/F46 8.9664 Tf 27.399 0 Td [(p)-114(s)-114(b)]TJ ET q -1 0 0 1 171.214 668.014 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 221.826 592.594 cm +[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S Q BT -/F8 9.9626 Tf 174.701 667.814 Td [(r)-50(e)-50(a)-50(d)-155(\050)-139(a)-228(,)-911(i)-149(r)-150(e)-149(t)-460(,)-897(i)-134(u)-135(n)-135(i)-135(t)-431(,)-890(f)-129(i)-129(l)-129(e)-129(n)-129(a)-129(m)-129(e)-235(\051)]TJ -0 g 0 G -0 g 0 G -0 g 0 G -/F27 9.9626 Tf -74.806 -17.933 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(\014lename)]TJ -0 g 0 G -/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(read.)]TJ -21.606 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)27(h)1(arac)-1(ter)-435(v)56(ariable)-435(con)28(taining)-436(a)-435(v)56(alid)-435(\014le)-435(name,)-461(or)]TJ/F30 9.9626 Tf 297.915 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(,)-461(in)]TJ -303.146 -11.956 Td [(whic)28(h)-302(cas)-1(e)-302(the)-302(default)-302(input)-302(unit)-302(5)-303(\050i.e.)-434(standard)-302(input)-302(in)-302(Unix)-302(jargon\051)-302(is)]TJ 0 -11.955 Td [(used.)-444(Default:)]TJ/F30 9.9626 Tf 66.058 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -96.195 -19.925 Td [(iunit)]TJ -0 g 0 G -/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(un)1(it)-334(n)28(um)28(b)-28(er.)]TJ -3.625 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(Only)-333(me)-1(ani)1(ngful)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.288 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -316.425 -21.918 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)-333(read)-333(from)-334(\014le.)]TJ 14.356 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F46 8.9664 Tf 225.613 592.394 Td [(b)-114(a)-114(r)-223(\050)-155(s)-47(o)-46(m)-47(e)-769(a)-105(r)-105(g)-105(s)-376(,)-939(i)-157(n)-156(f)-157(o)-264(\051)]TJ/F53 8.9664 Tf -48.329 -10.958 Td [(i)-181(f)]TJ/F46 8.9664 Tf 10.409 0 Td [(\050)-265(i)-156(n)-157(f)-156(o)-939(.)]TJ/F53 8.9664 Tf 37.83 0 Td [(n)-11(e)]TJ/F46 8.9664 Tf 12.445 0 Td [(.)-910(z)-127(e)-127(r)-128(o)-236(\051)]TJ/F53 8.9664 Tf 43.016 0 Td [(t)-30(h)-30(e)-29(n)]TJ/F46 8.9664 Tf -87.332 -10.959 Td [(i)-156(n)-157(f)-156(o)-65(=)-38(e)-129(r)-129(r)-128(c)-129(o)-129(d)-129(e)-129(2)]TJ/F53 8.9664 Tf -0.133 -10.959 Td [(c)-142(a)-141(l)-142(l)]TJ/F46 8.9664 Tf 27.487 0 Td [(p)-124(s)-124(b)]TJ ET q -1 0 0 1 312.036 452.82 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 238.765 559.717 cm +[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S Q BT -/F30 9.9626 Tf 315.174 452.621 Td [(Tspmat)]TJ +/F46 8.9664 Tf 242.641 559.518 Td [(e)-124(r)-124(r)-124(p)-123(u)-124(s)-124(h)-232(\050)-330(')-242(p)-132(s)-133(b)]TJ ET q -1 0 0 1 347.183 452.82 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 310.944 559.717 cm +[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S Q BT -/F30 9.9626 Tf 350.322 452.621 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -271.348 -19.925 Td [(iret)]TJ -0 g 0 G -/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.318 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ -0 g 0 G - 139.477 -318.348 Td [(131)]TJ -0 g 0 G -ET - -endstream -endobj -1759 0 obj -<< -/Length 3696 ->> -stream -0 g 0 G -0 g 0 G -BT -/F16 11.9552 Tf 150.705 706.129 Td [(mm)]TJ +/F46 8.9664 Tf 314.894 559.518 Td [(f)-132(o)-132(o)-353(')-332(,)-855(e)-129(r)-129(r)-129(c)-129(o)-129(d)-128(e)-129(2)-237(\051)]TJ/F53 8.9664 Tf -122.23 -10.959 Td [(g)-46(o)-47(t)-46(o)]TJ/F46 8.9664 Tf 27.969 0 Td [(9)-82(9)-82(9)-83(9)]TJ/F53 8.9664 Tf -44.989 -10.959 Td [(e)2(n)2(d)-796(i)-181(f)]TJ/F46 8.9664 Tf 2.244 -10.959 Td [(.)-248(.)-249(.)]TJ -18.077 -10.959 Td [(9)-82(9)-82(9)-83(9)]TJ/F53 8.9664 Tf 27.419 0 Td [(c)-57(o)-57(n)-57(t)-56(i)-57(n)-57(u)-57(e)]TJ -9.946 -10.959 Td [(i)-181(f)]TJ/F46 8.9664 Tf 15.938 0 Td [(\050)-273(e)-164(r)-165(r)]TJ ET q -1 0 0 1 173.928 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 215.536 504.923 cm +[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S Q BT -/F16 11.9552 Tf 177.963 706.129 Td [(arra)31(y)]TJ +/F46 8.9664 Tf 219.774 504.723 Td [(a)-164(c)-165(t)-946(.)]TJ/F53 8.9664 Tf 27.965 0 Td [(e)-22(q)]TJ/F46 8.9664 Tf 12.346 0 Td [(.)-923(a)-141(c)-141(t)]TJ ET q -1 0 0 1 209.557 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 287.553 504.923 cm +[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S Q BT -/F16 11.9552 Tf 213.592 706.129 Td [(read)-504(|)-504(Read)-504(a)-504(dense)-504(ar)1(ra)31(y)-504(from)-504(a)-504(\014le)-504(in)-504(the)]TJ -62.887 -13.948 Td [(MatrixMark)31(et)-375(format)]TJ/F27 9.9626 Tf 1.377 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.373 0 Td [(m)-86(m)]TJ +/F46 8.9664 Tf 291.582 504.723 Td [(a)-141(b)-141(o)-141(r)-141(t)-249(\051)]TJ/F53 8.9664 Tf 39.166 0 Td [(t)-30(h)-29(e)-30(n)]TJ -142.758 -10.959 Td [(c)-142(a)-141(l)-142(l)]TJ/F46 8.9664 Tf 27.681 0 Td [(p)-146(s)-145(b)]TJ ET q -1 0 0 1 200.38 668.014 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 234.014 493.964 cm +[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S Q BT -/F8 9.9626 Tf 204.23 667.814 Td [(a)-86(r)-87(r)-86(a)-87(y)]TJ +/F46 8.9664 Tf 238.084 493.764 Td [(e)-146(r)-145(r)-146(o)-145(r)-254(\050)-252(i)-144(c)-143(o)-144(n)-143(t)-143(x)-144(t)-252(\051)]TJ/F53 8.9664 Tf -50.844 -10.959 Td [(r)-58(e)-58(t)-58(u)-58(r)-58(n)]TJ -10.529 -10.958 Td [(e)-117(l)-117(s)-117(e)]TJ 10.529 -10.959 Td [(r)-58(e)-58(t)-58(u)-58(r)-58(n)]TJ -11.596 -10.959 Td [(e)2(n)2(d)-796(i)-181(f)]TJ -16.588 -21.918 Td [(e)2(n)2(d)-675(s)-60(u)-59(b)-60(r)-60(o)-60(u)-60(t)-60(i)-60(n)-60(e)]TJ/F46 8.9664 Tf 84.142 0 Td [(p)-132(s)-132(b)]TJ ET q -1 0 0 1 232.16 668.014 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 261.181 428.21 cm +[]0 d 0 J 0.398 w 0 0 m 2.765 0 l S Q BT -/F8 9.9626 Tf 236.01 667.814 Td [(r)-86(e)-87(a)-86(d)-192(\050)-121(b)-191(,)-910(i)-150(r)-149(e)-150(t)-460(,)-896(i)-135(u)-135(n)-135(i)-135(t)-431(,)-890(f)-129(i)-129(l)-129(e)-129(n)-129(a)-129(m)-129(e)-234(\051)]TJ -0 g 0 G -0 g 0 G -0 g 0 G -/F27 9.9626 Tf -85.305 -17.933 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +/F46 8.9664 Tf 265.131 428.011 Td [(f)-132(o)-132(o)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(\014lename)]TJ -0 g 0 G -/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(read.)]TJ -21.607 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)28(haracte)-1(r)-435(v)56(ariable)-435(con)28(taining)-435(a)-436(v)56(alid)-435(\014le)-435(name,)-461(or)]TJ/F30 9.9626 Tf 297.915 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(,)-461(in)]TJ -303.145 -11.956 Td [(whic)28(h)-302(case)-303(the)-302(default)-302(input)-302(unit)-302(5)-303(\050i.e.)-434(standard)-302(input)-302(in)-302(Unix)-302(jargon\051)-302(is)]TJ 0 -11.955 Td [(used.)-444(Default:)]TJ/F30 9.9626 Tf 66.057 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -96.195 -19.925 Td [(iunit)]TJ +ET +q +1 0 0 1 150.705 701.884 cm +[]0 d 0 J 0.398 w 0 0 m 346.583 0 l S +Q +q +1 0 0 1 150.904 410.576 cm +[]0 d 0 J 0.398 w 0 0 m 0 291.308 l S +Q +q +1 0 0 1 497.088 410.576 cm +[]0 d 0 J 0.398 w 0 0 m 0 291.308 l S +Q +q +1 0 0 1 150.705 410.576 cm +[]0 d 0 J 0.398 w 0 0 m 346.583 0 l S +Q +BT +/F8 9.9626 Tf 150.705 382.537 Td [(Figure)-329(9:)-443(The)-329(la)27(y)28(out)-329(of)-330(a)-329(generic)]TJ/F30 9.9626 Tf 147.445 0 Td [(psb)]TJ +ET +q +1 0 0 1 314.468 382.736 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 317.606 382.537 Td [(foo)]TJ/F8 9.9626 Tf 18.974 0 Td [(routine)-329(with)-330(resp)-28(ect)-329(to)-329(PSBLAS-2.0)]TJ -185.875 -11.955 Td [(error)-333(handling)-333(p)-28(olicy)83(.)]TJ 0 g 0 G -/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(u)1(nit)-334(n)28(um)28(b)-28(er.)]TJ -3.625 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue.)-444(Only)-333(me)-1(an)1(ingful)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.288 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -316.425 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(b)]TJ 0 g 0 G -/F8 9.9626 Tf 11.346 0 Td [(Rigth)-333(hand)-334(side\050s\051.)]TJ 13.561 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-310(arra)28(y)-310(of)-310(t)28(yp)-28(e)-310(real)-310(or)-310(complex,)-315(ran)1(k)-310(1)-310(or)-310(2)-310(and)-310(ha)28(ving)-310(the)-310(ALLOCA)83(T-)]TJ 0 -11.955 Td [(ABLE)-334(attribute;)-334(will)-333(b)-28(e)-334(allo)-27(c)-1(ated)-333(and)-334(\014lled)-334(in)-333(if)-334(the)-334(input)-333(\014le)-334(con)28(tains)-334(a)]TJ 0 -11.955 Td [(righ)28(t)-333(hand)-334(side,)-333(otherwise)-333(will)-334(b)-27(e)-334(left)-333(in)-333(the)-334(UNALLOCA)84(TED)-334(state.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(iret)]TJ +/F30 9.9626 Tf 8.368 -39.475 Td [(==========================================================)]TJ 0 -11.955 Td [(Process:)-525(0.)-1050(PSBLAS)-525(Error)-525(\0504010\051)-525(in)-525(subroutine:)-525(df_sample)]TJ 0 -11.955 Td [(Error)-525(from)-525(call)-525(to)-525(subroutine)-525(mat)-525(dist)]TJ 0 -11.955 Td [(==========================================================)]TJ 0 -11.955 Td [(Process:)-525(0.)-1050(PSBLAS)-525(Error)-525(\0504010\051)-525(in)-525(subroutine:)-525(mat_distv)]TJ 0 -11.956 Td [(Error)-525(from)-525(call)-525(to)-525(subroutine)-525(psb_spasb)]TJ 0 -11.955 Td [(==========================================================)]TJ 0 -11.955 Td [(Process:)-525(0.)-1050(PSBLAS)-525(Error)-525(\0504010\051)-525(in)-525(subroutine:)-525(psb_spasb)]TJ 0 -11.955 Td [(Error)-525(from)-525(call)-525(to)-525(subroutine)-525(psb_cest)]TJ 0 -11.955 Td [(==========================================================)]TJ 0 -11.955 Td [(Process:)-525(0.)-1050(PSBLAS)-525(Error)-525(\050136\051)-525(in)-525(subroutine:)-525(psb_cest)]TJ 0 -11.956 Td [(Format)-525(FOO)-525(is)-525(unknown)]TJ 0 -11.955 Td [(==========================================================)]TJ 0 -11.955 Td [(Aborting...)]TJ +ET +q +1 0 0 1 150.705 343.417 cm +[]0 d 0 J 0.398 w 0 0 m 346.583 0 l S +Q +q +1 0 0 1 150.904 165.307 cm +[]0 d 0 J 0.398 w 0 0 m 0 178.111 l S +Q +q +1 0 0 1 497.088 165.307 cm +[]0 d 0 J 0.398 w 0 0 m 0 178.111 l S +Q +q +1 0 0 1 150.705 165.307 cm +[]0 d 0 J 0.398 w 0 0 m 346.583 0 l S +Q +BT +/F8 9.9626 Tf 150.705 137.267 Td [(Figure)-386(10:)-551(A)-386(sample)-386(PSBLAS-2.0)-387(err)1(or)-387(message.)-603(Pro)-28(cess)-387(0)-386(detected)-386(an)-387(error)]TJ 0 -11.955 Td [(condition)-333(inside)-334(t)1(he)-334(psb)]TJ +ET +q +1 0 0 1 255.468 125.512 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 258.457 125.312 Td [(cest)-333(subroutine)]TJ 0 g 0 G -/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.318 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detected.)]TJ 0 g 0 G - 139.477 -294.437 Td [(132)]TJ + 56.631 -34.874 Td [(128)]TJ 0 g 0 G ET endstream endobj -1766 0 obj +1778 0 obj << -/Length 4176 +/Length 3734 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(mm)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(8.1)-1125(psb)]TJ ET q -1 0 0 1 123.118 706.328 cm +1 0 0 1 151.587 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 127.153 706.129 Td [(mat)]TJ +/F16 11.9552 Tf 155.621 706.129 Td [(errpush)]TJ/F8 9.9626 Tf -55.726 -18.389 Td [(Pushes)-333(an)-334(error)-333(co)-28(de)-333(on)28(to)-334(the)-333(error)-333(stac)27(k)]TJ/F27 9.9626 Tf 1.377 -17.933 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.712 0 Td [(p)-120(s)-121(b)]TJ ET q -1 0 0 1 150.936 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +1 0 0 1 150.181 670.006 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 154.37 669.807 Td [(e)-121(r)-120(r)-120(p)-121(u)-120(s)-121(h)-226(\050)-244(e)-138(r)-138(r)]TJ +ET +q +1 0 0 1 219.855 670.006 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 224.221 669.807 Td [(c)-438(,)-825(r)]TJ +ET +q +1 0 0 1 249.141 670.006 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F16 11.9552 Tf 154.971 706.129 Td [(write)-531(|)-532(W)94(rite)-532(a)-531(sparse)-531(matrix)-532(to)-531(a)-532(\014le)-531(in)-531(the)]TJ -55.076 -13.948 Td [(MatrixMark)31(et)-375(format)]TJ/F27 9.9626 Tf 1.377 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.175 0 Td [(m)-67(m)]TJ +/F8 9.9626 Tf 252.772 669.807 Td [(n)-64(a)-65(m)-64(e)-290(,)-923(i)]TJ ET q -1 0 0 1 148.977 668.014 cm +1 0 0 1 297.774 670.006 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 152.63 667.814 Td [(m)-67(a)-66(t)]TJ +/F8 9.9626 Tf 302.378 669.807 Td [(e)-162(r)-162(r)-485(,)-913(a)]TJ ET q -1 0 0 1 172.377 668.014 cm +1 0 0 1 341.632 670.006 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 176.029 667.814 Td [(w)-67(r)-66(i)-67(t)-67(e)-172(\050)-139(a)-227(,)-885(m)-124(t)-123(i)-124(t)-124(l)-123(e)-409(,)-910(i)-150(r)-149(e)-150(t)-460(,)-896(i)-135(u)-135(n)-135(i)-135(t)-431(,)-890(f)-129(i)-129(l)-129(e)-129(n)-129(a)-129(m)-129(e)-234(\051)]TJ +/F8 9.9626 Tf 346.136 669.807 Td [(e)-152(r)-152(r)-258(\051)]TJ 0 g 0 G 0 g 0 G 0 g 0 G -/F27 9.9626 Tf -76.134 -17.933 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -246.241 -27.896 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)-333(to)-333(b)-28(e)-333(written.)]TJ 14.356 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ + 0 -19.925 Td [(err)]TJ ET q -1 0 0 1 312.036 586.32 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 115.271 602.26 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F30 9.9626 Tf 315.174 586.121 Td [(Tspmat)]TJ +/F27 9.9626 Tf 118.708 602.061 Td [(c)]TJ +0 g 0 G +/F8 9.9626 Tf 10.073 0 Td [(the)-333(error)-334(co)-27(de)]TJ -3.979 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(r)]TJ ET q -1 0 0 1 347.183 586.32 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 105.301 534.514 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F30 9.9626 Tf 350.322 586.121 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -271.348 -19.926 Td [(m)32(title)]TJ -0 g 0 G -/F8 9.9626 Tf 34.738 0 Td [(Matrix)-333(title.)]TJ -9.831 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(A)-299(c)28(harac)28(h)28(ter)-299(v)55(ariable)-299(h)1(olding)-299(a)-299(descriptiv)28(e)-299(title)-299(for)-299(the)-299(matrix)-298(to)-299(b)-28(e)-299(writ-)]TJ 0 -11.955 Td [(ten)-333(to)-334(\014le.)]TJ +/F27 9.9626 Tf 108.738 534.315 Td [(name)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(\014lename)]TJ +/F8 9.9626 Tf 31.715 0 Td [(the)-333(soutine)-334(where)-333(the)-333(error)-334(has)-333(b)-28(een)-333(caugh)28(t.)]TJ -15.651 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(string.)]TJ 0 g 0 G -/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(written)-333(to.)]TJ -21.606 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)27(h)1(arac)-1(ter)-435(v)56(ariable)-435(con)28(taining)-436(a)-435(v)56(alid)-435(\014le)-435(name,)-461(or)]TJ/F30 9.9626 Tf 297.915 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(,)-461(in)]TJ -303.146 -11.955 Td [(whic)28(h)-281(case)-280(the)-280(default)-281(output)-280(unit)-280(6)-281(\050i.e.)-426(s)-1(t)1(andard)-281(output)-280(in)-280(Unix)-281(jargon\051)]TJ 0 -11.955 Td [(is)-333(used.)-445(Default:)]TJ/F30 9.9626 Tf 76.076 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -106.213 -19.925 Td [(iunit)]TJ -0 g 0 G -/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(un)1(it)-334(n)28(um)28(b)-28(er.)]TJ -3.625 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(Only)-333(me)-1(ani)1(ngful)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.288 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -316.425 -21.918 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -24.907 -31.88 Td [(i)]TJ +ET +q +1 0 0 1 103.765 454.813 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 107.202 454.614 Td [(err)]TJ 0 g 0 G +/F8 9.9626 Tf 19.67 0 Td [(addional)-333(info)-333(for)-334(error)-333(co)-28(de)]TJ -2.07 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(arra)27(y)]TJ 0 g 0 G - 0 -19.925 Td [(iret)]TJ +/F27 9.9626 Tf -24.907 -31.88 Td [(a)]TJ +ET +q +1 0 0 1 106.152 387.067 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 109.589 386.868 Td [(err)]TJ 0 g 0 G -/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.318 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detected.)]TJ +/F8 9.9626 Tf 19.669 0 Td [(addional)-333(info)-333(for)-334(error)-333(co)-28(de)]TJ -4.456 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(string.)]TJ 0 g 0 G - 139.477 -262.557 Td [(133)]TJ + 139.477 -260.564 Td [(129)]TJ 0 g 0 G ET endstream endobj -1668 0 obj +1675 0 obj << /Type /ObjStm /N 100 -/First 976 -/Length 8741 +/First 972 +/Length 8779 >> stream -1666 0 1662 57 1672 189 1669 337 1670 482 1674 629 481 688 1671 746 1678 839 1680 957 -1681 1015 1682 1074 1684 1133 1685 1192 1686 1251 1687 1310 1688 1369 1689 1427 1690 1486 1691 1545 -1692 1604 1693 1663 1694 1722 1695 1781 1696 1840 1697 1899 1698 1956 1699 2015 1700 2074 1701 2133 -1702 2192 1703 2251 1704 2310 1705 2369 1706 2428 1675 2486 1676 2545 1677 2604 1708 2712 1710 2830 -485 2889 1711 2947 1712 3005 1707 3063 1714 3156 1716 3274 489 3332 1717 3389 1718 3446 1713 3503 -1720 3596 1722 3714 493 3773 1723 3831 1724 3889 1719 3947 1726 4040 1728 4158 497 4216 1729 4273 -1730 4330 1725 4387 1733 4493 1735 4611 501 4670 1732 4728 1738 4821 1736 4960 1740 5105 505 5163 -1741 5220 1742 5278 1737 5336 1745 5442 1743 5581 1747 5724 509 5783 1748 5841 1749 5900 1744 5959 -1752 6065 1750 6204 1754 6349 513 6407 1755 6464 1756 6522 1751 6580 1758 6686 1760 6804 517 6863 -1761 6921 1762 6980 1757 7039 1765 7145 1763 7284 1767 7428 521 7486 1768 7543 1769 7601 1764 7659 -% 1666 0 obj +1673 0 445 58 1670 115 1677 221 1679 339 449 398 1676 456 1681 562 1683 680 453 738 +1680 795 1685 901 1687 1019 457 1078 1684 1136 1689 1268 1691 1386 461 1444 1692 1501 1693 1559 +1688 1617 1695 1749 1697 1867 465 1926 1698 1984 1699 2043 1694 2102 1701 2234 1703 2352 469 2410 +1704 2467 1705 2525 1700 2583 1708 2715 1710 2833 473 2892 1711 2950 1712 3009 1707 3068 1714 3200 +1716 3318 477 3376 1717 3433 1718 3491 1713 3549 1720 3681 1722 3799 481 3858 1723 3916 1724 3974 +1726 4033 1719 4091 1728 4261 1730 4379 485 4437 1731 4494 1727 4551 1733 4683 1735 4801 489 4860 +1736 4918 1732 4976 1740 5108 1737 5256 1738 5402 1742 5549 493 5607 1739 5664 1747 5757 1749 5875 +1750 5934 1751 5993 1753 6052 1754 6111 1755 6170 1756 6229 1757 6288 1758 6346 1759 6405 1760 6464 +1761 6523 1762 6582 1763 6641 1764 6700 1765 6759 1766 6818 1767 6875 1768 6934 1769 6993 1770 7052 +1771 7111 1772 7170 1773 7229 1774 7288 1775 7347 1744 7405 1745 7464 1746 7523 1777 7631 1779 7749 +% 1673 0 obj +<< +/D [1671 0 R /XYZ 98.895 753.953 null] +>> +% 445 0 obj << -/D [1663 0 R /XYZ 99.895 223.48 null] +/D [1671 0 R /XYZ 99.895 716.092 null] >> -% 1662 0 obj +% 1670 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F8 573 0 R /F27 572 0 R /F11 770 0 R /F14 787 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1672 0 obj +% 1677 0 obj << /Type /Page -/Contents 1673 0 R -/Resources 1671 0 R +/Contents 1678 0 R +/Resources 1676 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1667 0 R -/Annots [ 1669 0 R 1670 0 R ] ->> -% 1669 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [196.286 501.77 203.26 512.895] -/A << /S /GoTo /D (figure.9) >> ->> -% 1670 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [197.543 346.63 209.498 357.478] -/A << /S /GoTo /D (figure.10) >> +/Parent 1674 0 R >> -% 1674 0 obj +% 1679 0 obj << -/D [1672 0 R /XYZ 149.705 753.953 null] +/D [1677 0 R /XYZ 149.705 753.953 null] >> -% 481 0 obj +% 449 0 obj << -/D [1672 0 R /XYZ 150.705 716.092 null] +/D [1677 0 R /XYZ 150.705 716.092 null] >> -% 1671 0 obj +% 1676 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1678 0 obj +% 1681 0 obj << /Type /Page -/Contents 1679 0 R -/Resources 1677 0 R +/Contents 1682 0 R +/Resources 1680 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1667 0 R ->> -% 1680 0 obj -<< -/D [1678 0 R /XYZ 98.895 753.953 null] +/Parent 1674 0 R >> -% 1681 0 obj +% 1683 0 obj << -/D [1678 0 R /XYZ 108.264 687.737 null] +/D [1681 0 R /XYZ 98.895 753.953 null] >> -% 1682 0 obj +% 453 0 obj << -/D [1678 0 R /XYZ 108.264 691.025 null] +/D [1681 0 R /XYZ 99.895 716.092 null] >> -% 1684 0 obj +% 1680 0 obj << -/D [1678 0 R /XYZ 108.264 680.066 null] +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R >> +/ProcSet [ /PDF /Text ] >> % 1685 0 obj << -/D [1678 0 R /XYZ 108.264 669.107 null] +/Type /Page +/Contents 1686 0 R +/Resources 1684 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1674 0 R >> -% 1686 0 obj +% 1687 0 obj << -/D [1678 0 R /XYZ 108.264 658.148 null] +/D [1685 0 R /XYZ 149.705 753.953 null] >> -% 1687 0 obj +% 457 0 obj << -/D [1678 0 R /XYZ 108.264 647.189 null] +/D [1685 0 R /XYZ 150.705 716.092 null] >> -% 1688 0 obj +% 1684 0 obj << -/D [1678 0 R /XYZ 108.264 636.23 null] +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F11 796 0 R /F14 813 0 R >> +/ProcSet [ /PDF /Text ] >> % 1689 0 obj << -/D [1678 0 R /XYZ 108.264 625.271 null] +/Type /Page +/Contents 1690 0 R +/Resources 1688 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1674 0 R >> -% 1690 0 obj +% 1691 0 obj << -/D [1678 0 R /XYZ 108.264 614.312 null] +/D [1689 0 R /XYZ 98.895 753.953 null] >> -% 1691 0 obj +% 461 0 obj << -/D [1678 0 R /XYZ 108.264 603.353 null] +/D [1689 0 R /XYZ 99.895 716.092 null] >> % 1692 0 obj << -/D [1678 0 R /XYZ 108.264 592.394 null] +/D [1689 0 R /XYZ 99.895 247.391 null] >> % 1693 0 obj << -/D [1678 0 R /XYZ 108.264 581.436 null] +/D [1689 0 R /XYZ 99.895 213.573 null] >> -% 1694 0 obj +% 1688 0 obj << -/D [1678 0 R /XYZ 108.264 570.477 null] +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F14 813 0 R /F11 796 0 R >> +/ProcSet [ /PDF /Text ] >> % 1695 0 obj << -/D [1678 0 R /XYZ 108.264 559.518 null] +/Type /Page +/Contents 1696 0 R +/Resources 1694 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1674 0 R >> -% 1696 0 obj +% 1697 0 obj << -/D [1678 0 R /XYZ 108.264 548.559 null] +/D [1695 0 R /XYZ 149.705 753.953 null] >> -% 1697 0 obj +% 465 0 obj << -/D [1678 0 R /XYZ 108.264 537.6 null] +/D [1695 0 R /XYZ 150.705 716.092 null] >> % 1698 0 obj << -/D [1678 0 R /XYZ 108.264 526.641 null] +/D [1695 0 R /XYZ 150.705 247.391 null] >> % 1699 0 obj << -/D [1678 0 R /XYZ 108.264 515.682 null] +/D [1695 0 R /XYZ 150.705 213.573 null] >> -% 1700 0 obj +% 1694 0 obj << -/D [1678 0 R /XYZ 108.264 504.723 null] +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F14 813 0 R /F11 796 0 R >> +/ProcSet [ /PDF /Text ] >> % 1701 0 obj << -/D [1678 0 R /XYZ 108.264 493.764 null] +/Type /Page +/Contents 1702 0 R +/Resources 1700 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1706 0 R >> -% 1702 0 obj +% 1703 0 obj << -/D [1678 0 R /XYZ 108.264 482.805 null] +/D [1701 0 R /XYZ 98.895 753.953 null] >> -% 1703 0 obj +% 469 0 obj << -/D [1678 0 R /XYZ 108.264 471.847 null] +/D [1701 0 R /XYZ 99.895 716.092 null] >> % 1704 0 obj << -/D [1678 0 R /XYZ 108.264 460.888 null] +/D [1701 0 R /XYZ 99.895 247.391 null] >> % 1705 0 obj << -/D [1678 0 R /XYZ 108.264 449.929 null] ->> -% 1706 0 obj -<< -/D [1678 0 R /XYZ 108.264 438.97 null] ->> -% 1675 0 obj -<< -/D [1678 0 R /XYZ 143.452 394.492 null] ->> -% 1676 0 obj -<< -/D [1678 0 R /XYZ 150.074 149.223 null] +/D [1701 0 R /XYZ 99.895 213.573 null] >> -% 1677 0 obj +% 1700 0 obj << -/Font << /F53 1683 0 R /F46 1231 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F14 813 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> % 1708 0 obj @@ -21927,27 +22104,27 @@ stream /Contents 1709 0 R /Resources 1707 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1667 0 R +/Parent 1706 0 R >> % 1710 0 obj << /D [1708 0 R /XYZ 149.705 753.953 null] >> -% 485 0 obj +% 473 0 obj << -/D [1708 0 R /XYZ 150.705 724.062 null] +/D [1708 0 R /XYZ 150.705 716.092 null] >> % 1711 0 obj << -/D [1708 0 R /XYZ 150.705 638.48 null] +/D [1708 0 R /XYZ 150.705 235.436 null] >> % 1712 0 obj << -/D [1708 0 R /XYZ 150.705 638.48 null] +/D [1708 0 R /XYZ 150.705 201.618 null] >> % 1707 0 obj << -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F14 813 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> % 1714 0 obj @@ -21956,27 +22133,27 @@ stream /Contents 1715 0 R /Resources 1713 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1667 0 R +/Parent 1706 0 R >> % 1716 0 obj << /D [1714 0 R /XYZ 98.895 753.953 null] >> -% 489 0 obj +% 477 0 obj << -/D [1714 0 R /XYZ 99.895 724.062 null] +/D [1714 0 R /XYZ 99.895 716.092 null] >> % 1717 0 obj << -/D [1714 0 R /XYZ 99.895 638.48 null] +/D [1714 0 R /XYZ 99.895 235.436 null] >> % 1718 0 obj << -/D [1714 0 R /XYZ 99.895 638.48 null] +/D [1714 0 R /XYZ 99.895 201.618 null] >> % 1713 0 obj << -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F14 813 0 R /F11 796 0 R >> /ProcSet [ /PDF /Text ] >> % 1720 0 obj @@ -21985,56 +22162,56 @@ stream /Contents 1721 0 R /Resources 1719 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1667 0 R +/Parent 1706 0 R >> % 1722 0 obj << /D [1720 0 R /XYZ 149.705 753.953 null] >> -% 493 0 obj +% 481 0 obj << -/D [1720 0 R /XYZ 150.705 724.062 null] +/D [1720 0 R /XYZ 150.705 716.092 null] >> % 1723 0 obj << -/D [1720 0 R /XYZ 150.705 635.69 null] +/D [1720 0 R /XYZ 150.705 272.94 null] >> % 1724 0 obj << -/D [1720 0 R /XYZ 150.705 638.48 null] +/D [1720 0 R /XYZ 150.705 239.973 null] +>> +% 1726 0 obj +<< +/D [1720 0 R /XYZ 150.705 152.13 null] >> % 1719 0 obj << -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F14 813 0 R /F11 796 0 R /F10 812 0 R /F1 1725 0 R /F7 811 0 R >> /ProcSet [ /PDF /Text ] >> -% 1726 0 obj +% 1728 0 obj << /Type /Page -/Contents 1727 0 R -/Resources 1725 0 R +/Contents 1729 0 R +/Resources 1727 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1731 0 R ->> -% 1728 0 obj -<< -/D [1726 0 R /XYZ 98.895 753.953 null] +/Parent 1706 0 R >> -% 497 0 obj +% 1730 0 obj << -/D [1726 0 R /XYZ 99.895 724.062 null] +/D [1728 0 R /XYZ 98.895 753.953 null] >> -% 1729 0 obj +% 485 0 obj << -/D [1726 0 R /XYZ 99.895 635.69 null] +/D [1728 0 R /XYZ 99.895 716.092 null] >> -% 1730 0 obj +% 1731 0 obj << -/D [1726 0 R /XYZ 99.895 638.48 null] +/D [1728 0 R /XYZ 99.895 223.48 null] >> -% 1725 0 obj +% 1727 0 obj << -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F11 796 0 R /F14 813 0 R >> /ProcSet [ /PDF /Text ] >> % 1733 0 obj @@ -22043,885 +22220,926 @@ stream /Contents 1734 0 R /Resources 1732 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1731 0 R +/Parent 1706 0 R >> % 1735 0 obj << /D [1733 0 R /XYZ 149.705 753.953 null] >> -% 501 0 obj +% 489 0 obj << /D [1733 0 R /XYZ 150.705 716.092 null] >> +% 1736 0 obj +<< +/D [1733 0 R /XYZ 150.705 223.48 null] +>> % 1732 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F8 585 0 R /F27 584 0 R /F11 796 0 R /F14 813 0 R >> /ProcSet [ /PDF /Text ] >> -% 1738 0 obj +% 1740 0 obj << /Type /Page -/Contents 1739 0 R -/Resources 1737 0 R +/Contents 1741 0 R +/Resources 1739 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1731 0 R -/Annots [ 1736 0 R ] +/Parent 1743 0 R +/Annots [ 1737 0 R 1738 0 R ] >> -% 1736 0 obj +% 1737 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 449.411 372.239 460.536] -/A << /S /GoTo /D (spdata) >> ->> -% 1740 0 obj -<< -/D [1738 0 R /XYZ 98.895 753.953 null] +/Rect [145.477 501.77 152.451 512.895] +/A << /S /GoTo /D (figure.9) >> >> -% 505 0 obj +% 1738 0 obj << -/D [1738 0 R /XYZ 99.895 720.077 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [146.734 346.63 158.689 357.478] +/A << /S /GoTo /D (figure.10) >> >> -% 1741 0 obj +% 1742 0 obj << -/D [1738 0 R /XYZ 99.895 677.445 null] +/D [1740 0 R /XYZ 98.895 753.953 null] >> -% 1742 0 obj +% 493 0 obj << -/D [1738 0 R /XYZ 99.895 679.769 null] +/D [1740 0 R /XYZ 99.895 716.092 null] >> -% 1737 0 obj +% 1739 0 obj << -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1745 0 obj +% 1747 0 obj << /Type /Page -/Contents 1746 0 R -/Resources 1744 0 R +/Contents 1748 0 R +/Resources 1746 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1731 0 R -/Annots [ 1743 0 R ] +/Parent 1743 0 R >> -% 1743 0 obj +% 1749 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 582.91 423.049 594.035] -/A << /S /GoTo /D (spdata) >> +/D [1747 0 R /XYZ 149.705 753.953 null] >> -% 1747 0 obj +% 1750 0 obj << -/D [1745 0 R /XYZ 149.705 753.953 null] +/D [1747 0 R /XYZ 159.073 687.737 null] >> -% 509 0 obj +% 1751 0 obj << -/D [1745 0 R /XYZ 150.705 720.077 null] +/D [1747 0 R /XYZ 159.073 691.025 null] >> -% 1748 0 obj +% 1753 0 obj << -/D [1745 0 R /XYZ 150.705 677.445 null] +/D [1747 0 R /XYZ 159.073 680.066 null] >> -% 1749 0 obj +% 1754 0 obj << -/D [1745 0 R /XYZ 150.705 679.769 null] +/D [1747 0 R /XYZ 159.073 669.107 null] >> -% 1744 0 obj +% 1755 0 obj << -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R /F30 784 0 R >> -/ProcSet [ /PDF /Text ] +/D [1747 0 R /XYZ 159.073 658.148 null] >> -% 1752 0 obj +% 1756 0 obj << -/Type /Page -/Contents 1753 0 R -/Resources 1751 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1731 0 R -/Annots [ 1750 0 R ] +/D [1747 0 R /XYZ 159.073 647.189 null] >> -% 1750 0 obj +% 1757 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 449.411 372.239 460.536] -/A << /S /GoTo /D (spdata) >> +/D [1747 0 R /XYZ 159.073 636.23 null] >> -% 1754 0 obj +% 1758 0 obj << -/D [1752 0 R /XYZ 98.895 753.953 null] +/D [1747 0 R /XYZ 159.073 625.271 null] >> -% 513 0 obj +% 1759 0 obj << -/D [1752 0 R /XYZ 99.895 720.077 null] +/D [1747 0 R /XYZ 159.073 614.312 null] >> -% 1755 0 obj +% 1760 0 obj << -/D [1752 0 R /XYZ 99.895 679.769 null] +/D [1747 0 R /XYZ 159.073 603.353 null] >> -% 1756 0 obj +% 1761 0 obj << -/D [1752 0 R /XYZ 99.895 679.769 null] +/D [1747 0 R /XYZ 159.073 592.394 null] >> -% 1751 0 obj +% 1762 0 obj << -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R /F30 784 0 R >> -/ProcSet [ /PDF /Text ] +/D [1747 0 R /XYZ 159.073 581.436 null] >> -% 1758 0 obj +% 1763 0 obj << -/Type /Page -/Contents 1759 0 R -/Resources 1757 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1731 0 R +/D [1747 0 R /XYZ 159.073 570.477 null] >> -% 1760 0 obj +% 1764 0 obj << -/D [1758 0 R /XYZ 149.705 753.953 null] +/D [1747 0 R /XYZ 159.073 559.518 null] >> -% 517 0 obj +% 1765 0 obj << -/D [1758 0 R /XYZ 150.705 720.077 null] +/D [1747 0 R /XYZ 159.073 548.559 null] >> -% 1761 0 obj +% 1766 0 obj << -/D [1758 0 R /XYZ 150.705 679.769 null] +/D [1747 0 R /XYZ 159.073 537.6 null] >> -% 1762 0 obj +% 1767 0 obj << -/D [1758 0 R /XYZ 150.705 679.769 null] +/D [1747 0 R /XYZ 159.073 526.641 null] >> -% 1757 0 obj +% 1768 0 obj << -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R /F30 784 0 R >> -/ProcSet [ /PDF /Text ] +/D [1747 0 R /XYZ 159.073 515.682 null] >> -% 1765 0 obj +% 1769 0 obj << -/Type /Page -/Contents 1766 0 R -/Resources 1764 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1770 0 R -/Annots [ 1763 0 R ] +/D [1747 0 R /XYZ 159.073 504.723 null] >> -% 1763 0 obj +% 1770 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 582.91 372.239 594.035] -/A << /S /GoTo /D (spdata) >> +/D [1747 0 R /XYZ 159.073 493.764 null] >> -% 1767 0 obj +% 1771 0 obj << -/D [1765 0 R /XYZ 98.895 753.953 null] +/D [1747 0 R /XYZ 159.073 482.805 null] >> -% 521 0 obj +% 1772 0 obj << -/D [1765 0 R /XYZ 99.895 720.077 null] +/D [1747 0 R /XYZ 159.073 471.847 null] >> -% 1768 0 obj +% 1773 0 obj << -/D [1765 0 R /XYZ 99.895 679.769 null] +/D [1747 0 R /XYZ 159.073 460.888 null] >> -% 1769 0 obj +% 1774 0 obj << -/D [1765 0 R /XYZ 99.895 679.769 null] +/D [1747 0 R /XYZ 159.073 449.929 null] >> -% 1764 0 obj +% 1775 0 obj +<< +/D [1747 0 R /XYZ 159.073 438.97 null] +>> +% 1744 0 obj +<< +/D [1747 0 R /XYZ 194.261 394.492 null] +>> +% 1745 0 obj << -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R /F30 784 0 R >> +/D [1747 0 R /XYZ 200.884 149.223 null] +>> +% 1746 0 obj +<< +/Font << /F53 1752 0 R /F46 1300 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> +% 1777 0 obj +<< +/Type /Page +/Contents 1778 0 R +/Resources 1776 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1743 0 R +>> +% 1779 0 obj +<< +/D [1777 0 R /XYZ 98.895 753.953 null] +>> endstream endobj -1773 0 obj +1785 0 obj << -/Length 3364 +/Length 1412 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(mm)]TJ -ET -q -1 0 0 1 173.928 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 177.963 706.129 Td [(arra)31(y)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(8.2)-1125(psb)]TJ ET q -1 0 0 1 209.557 706.328 cm +1 0 0 1 202.396 706.328 cm []0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F16 11.9552 Tf 213.592 706.129 Td [(write)-438(|)-438(W)93(rite)-438(a)-438(dense)-438(arra)31(y)-438(from)-438(a)-438(\014le)-439(in)-438(the)]TJ -62.887 -13.948 Td [(MatrixMark)31(et)-375(format)]TJ/F27 9.9626 Tf 1.377 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.492 0 Td [(m)-99(m)]TJ -ET -q -1 0 0 1 200.739 668.014 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S -Q -BT -/F8 9.9626 Tf 204.709 667.814 Td [(a)-98(r)-99(r)-98(a)-99(y)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(error)]TJ/F8 9.9626 Tf -55.726 -18.389 Td [(Prin)28(ts)-333(the)-334(error)-333(stac)28(k)-334(con)28(ten)28(t)-333(and)-334(ab)-27(orts)-334(execution)]TJ/F27 9.9626 Tf 1.377 -17.933 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.921 0 Td [(p)-141(s)-142(b)]TJ ET q -1 0 0 1 233.237 668.014 cm +1 0 0 1 201.829 670.006 cm []0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F8 9.9626 Tf 237.207 667.814 Td [(w)-99(r)-98(i)-98(t)-99(e)-204(\050)-120(b)-191(,)-911(i)-149(r)-150(e)-149(t)-461(,)-896(i)-134(u)-135(n)-135(i)-135(t)-431(,)-890(f)-129(i)-129(l)-129(e)-129(n)-129(a)-129(m)-129(e)-235(\051)]TJ +/F8 9.9626 Tf 206.228 669.807 Td [(e)-142(r)-141(r)-141(o)-142(r)-247(\050)-245(i)-140(c)-139(o)-140(n)-139(t)-140(x)-140(t)-245(\051)]TJ 0 g 0 G 0 g 0 G 0 g 0 G -/F27 9.9626 Tf -86.502 -17.933 Td [(T)32(yp)-32(e:)]TJ +/F27 9.9626 Tf -55.523 -27.896 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G /F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G /F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(b)]TJ -0 g 0 G -/F8 9.9626 Tf 11.346 0 Td [(Rigth)-333(hand)-334(side\050s\051.)]TJ 13.56 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(An)-333(arra)27(y)-333(of)-333(t)28(yp)-28(e)-333(real)-334(or)-333(complex,)-333(rank)-334(1)-333(or)-333(2;)-334(will)-333(b)-28(e)-333(written..)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(\014lename)]TJ -0 g 0 G -/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(written.)]TJ -21.607 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)28(haracte)-1(r)-435(v)56(ariable)-435(con)28(taining)-435(a)-436(v)56(alid)-435(\014le)-435(name,)-461(or)]TJ/F30 9.9626 Tf 297.915 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(,)-461(in)]TJ -303.145 -11.955 Td [(whic)28(h)-302(case)-303(the)-302(default)-302(input)-302(unit)-302(5)-303(\050i.e.)-434(standard)-302(input)-302(in)-302(Unix)-302(jargon\051)-302(is)]TJ 0 -11.955 Td [(used.)-444(Default:)]TJ/F30 9.9626 Tf 66.057 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -96.195 -19.926 Td [(iunit)]TJ -0 g 0 G -/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(u)1(nit)-334(n)28(um)28(b)-28(er.)]TJ -3.625 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue.)-444(Only)-333(me)-1(an)1(ingful)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.288 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -316.425 -21.918 Td [(On)-383(Return)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(iret)]TJ + 0 -19.925 Td [(icon)32(txt)]TJ 0 g 0 G -/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.318 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detected.)]TJ +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(global)]TJ/F8 9.9626 Tf -32.378 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger.)]TJ 0 g 0 G - 139.477 -318.348 Td [(134)]TJ + 139.476 -463.802 Td [(130)]TJ 0 g 0 G ET endstream endobj -1780 0 obj +1791 0 obj << -/Length 1212 +/Length 1641 >> stream 0 g 0 G 0 g 0 G BT -/F16 14.3462 Tf 99.895 706.129 Td [(10)-1125(Preconditioner)-375(routines)]TJ/F8 9.9626 Tf 0 -21.821 Td [(The)-310(base)-310(PSBLAS)-310(library)-310(con)28(tains)-310(the)-310(implemen)28(tation)-310(of)-310(t)28(w)27(o)-310(simple)-310(precondi-)]TJ 0 -11.955 Td [(tioning)-333(tec)27(hn)1(iques:)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(8.3)-1125(psb)]TJ +ET +q +1 0 0 1 151.587 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 155.621 706.129 Td [(set)]TJ +ET +q +1 0 0 1 173.101 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 177.135 706.129 Td [(errv)31(erb)-31(osit)31(y)]TJ/F8 9.9626 Tf -77.24 -18.389 Td [(Sets)-333(the)-334(v)28(erb)-28(osit)28(y)-333(of)-334(error)-333(messages)]TJ/F27 9.9626 Tf 1.377 -17.933 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 30.082 0 Td [(p)-158(s)-157(b)]TJ +ET +q +1 0 0 1 151.663 670.006 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 156.223 669.807 Td [(s)-158(e)-157(t)]TJ +ET +q +1 0 0 1 173.764 670.006 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 178.324 669.807 Td [(e)-158(r)-157(r)-158(v)-158(e)-157(r)-158(b)-157(o)-158(s)-158(i)-157(t)-158(y)-263(\050)-142(v)-142(\051)]TJ +0 g 0 G 0 g 0 G -/F14 9.9626 Tf 14.944 -19.925 Td [(\017)]TJ 0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(Diagonal)-333(Scaling)]TJ +/F27 9.9626 Tf -78.429 -27.896 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G -/F14 9.9626 Tf -9.963 -19.926 Td [(\017)]TJ 0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(Blo)-28(c)28(k)-333(Jacobi)-334(with)-333(ILU\0500\051)-333(factorization)]TJ -24.907 -19.925 Td [(The)-364(supp)-27(orting)-364(data)-364(t)28(yp)-27(e)-364(and)-364(subroutine)-363(in)28(terfaces)-364(are)-364(de\014ned)-363(in)-364(the)-364(mo)-27(dule)]TJ/F30 9.9626 Tf 0 -11.955 Td [(psb_prec_mod)]TJ/F8 9.9626 Tf 62.764 0 Td [(.)-844(The)-466(old)-466(in)27(terfaces)]TJ/F30 9.9626 Tf 96.595 0 Td [(psb_precinit)]TJ/F8 9.9626 Tf 67.41 0 Td [(and)]TJ/F30 9.9626 Tf 20.698 0 Td [(psb_precbld)]TJ/F8 9.9626 Tf 62.18 0 Td [(are)-466(still)]TJ -309.647 -11.955 Td [(supp)-28(orted)-333(for)-333(bac)27(kw)28(ard)-333(compatibilit)28(y)]TJ + 0 -19.925 Td [(v)]TJ 0 g 0 G - 164.384 -498.229 Td [(135)]TJ +/F8 9.9626 Tf 11.028 0 Td [(the)-333(v)27(erb)-27(osit)27(y)-333(lev)28(el)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger.)]TJ +0 g 0 G + 139.477 -463.802 Td [(131)]TJ 0 g 0 G ET endstream endobj -1786 0 obj +1797 0 obj << -/Length 5089 +/Length 2114 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(init)-375(|)-375(Initialize)-375(a)-375(preconditioner)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf 0 -18.389 Td [(call)-525(prec%init\050icontxt,ptype,)-525(info\051)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(icon)32(txt)]TJ -0 g 0 G -/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.95 0 Td [(global)]TJ/F8 9.9626 Tf 29.757 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(pt)32(yp)-32(e)]TJ -0 g 0 G -/F8 9.9626 Tf 33.465 0 Td [(the)-333(t)28(yp)-28(e)-334(of)-333(preconditioner.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 153.092 0 Td [(global)]TJ/F8 9.9626 Tf -161.65 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(c)28(haracter)-333(string,)-334(see)-333(usage)-334(n)1(ote)-1(s.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -19.926 Td [(On)-383(Exit)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(prec)]TJ -0 g 0 G -/F8 9.9626 Tf 26.408 0 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -33.879 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(preconditioner)-333(data)-333(structure)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 197.537 0 Td [(psb)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(8.4)-1125(psb)]TJ ET q -1 0 0 1 389.467 446.843 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 202.396 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 392.606 446.644 Td [(prec)]TJ +/F16 11.9552 Tf 206.431 706.129 Td [(set)]TJ ET q -1 0 0 1 414.155 446.843 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 223.91 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 417.293 446.644 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -287.509 -19.926 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -31.23 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.034 -11.955 Td [(Error)-333(co)-28(de:)-444(if)-334(no)-333(error,)-333(0)-334(is)-333(returned.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ/F8 9.9626 Tf 37.058 0 Td [(Legal)-316(inputs)-315(to)-316(this)-316(subroutine)-315(are)-316(in)28(terpreted)-316(dep)-28(ending)-315(on)-316(the)]TJ/F11 9.9626 Tf 283.15 0 Td [(pty)-36(pe)]TJ/F8 9.9626 Tf -320.208 -11.955 Td [(string)-333(as)-334(follo)28(ws)]TJ -0 0 1 rg 0 0 1 RG -/F7 6.9738 Tf 69.932 3.615 Td [(4)]TJ -0 g 0 G -/F8 9.9626 Tf 4.47 -3.615 Td [(:)]TJ +/F16 11.9552 Tf 227.945 706.129 Td [(erraction)]TJ/F8 9.9626 Tf -77.24 -18.389 Td [(Set)-333(the)-334(t)28(yp)-28(e)-333(of)-333(action)-334(to)-333(b)-28(e)-333(tak)28(en)-334(up)-27(on)-334(error)-333(condition)]TJ/F27 9.9626 Tf 1.377 -17.933 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 30.09 0 Td [(p)-158(s)-159(b)]TJ +ET +q +1 0 0 1 202.505 670.006 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 207.072 669.807 Td [(s)-159(e)-158(t)]TJ +ET +q +1 0 0 1 224.638 670.006 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 229.206 669.807 Td [(e)-158(r)-159(r)-158(a)-159(c)-158(t)-159(i)-158(o)-159(n)-264(\050)-265(e)-160(r)-160(r)]TJ +ET +q +1 0 0 1 307.391 670.006 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 311.973 669.807 Td [(a)-160(c)-160(t)-265(\051)]TJ 0 g 0 G -/F27 9.9626 Tf -74.402 -19.925 Td [(NONE)]TJ 0 g 0 G -/F8 9.9626 Tf 39.048 0 Td [(No)-333(preconditioning,)-333(i.e.)-445(the)-333(preconditioner)-333(is)-334(just)-333(a)-333(cop)27(y)-333(op)-28(erator.)]TJ 0 g 0 G -/F27 9.9626 Tf -39.048 -19.926 Td [(DIA)32(G)]TJ +/F27 9.9626 Tf -161.268 -27.896 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 35.464 0 Td [(Diagonal)-441(scaling;)-496(eac)28(h)-442(en)28(try)-441(of)-441(the)-442(input)-441(v)28(ector)-442(is)-441(m)27(ulti)1(plied)-442(b)28(y)-441(the)]TJ -10.557 -11.955 Td [(recipro)-28(cal)-346(of)-346(the)-346(sum)-345(of)-346(the)-346(absolute)-346(v)55(alues)-346(of)-346(th)1(e)-346(c)-1(o)-27(e\016cien)27(ts)-346(in)-345(the)-346(cor-)]TJ 0 -11.955 Td [(resp)-28(onding)-333(ro)28(w)-334(of)-333(matrix)]TJ/F11 9.9626 Tf 113.602 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(;)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -145.981 -19.925 Td [(BJA)32(C)]TJ +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G -/F8 9.9626 Tf 35.672 0 Td [(Precondition)-249(b)28(y)-249(a)-249(factorization)-248(of)-249(the)-249(blo)-28(c)28(k-diagonal)-249(of)-249(matrix)]TJ/F11 9.9626 Tf 269.664 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(,)-266(where)]TJ -287.901 -11.956 Td [(blo)-28(c)28(k)-457(b)-28(oundaries)-457(are)-457(determined)-457(b)28(y)-457(the)-457(data)-457(allo)-28(cation)-457(b)-28(oundaries)-457(for)]TJ 0 -11.955 Td [(eac)28(h)-347(pro)-27(c)-1(ess;)-353(requires)-346(no)-347(comm)28(unication.)-484(Only)-347(the)-346(incomplete)-347(factoriza-)]TJ 0 -11.955 Td [(tion)]TJ/F11 9.9626 Tf 20.478 0 Td [(I)-78(LU)]TJ/F8 9.9626 Tf 19.83 0 Td [(\0500\051)-333(is)-334(curren)28(tly)-333(implemen)28(ted.)]TJ 0 g 0 G + 0 -19.925 Td [(err)]TJ ET q -1 0 0 1 150.705 129.78 cm -[]0 d 0 J 0.398 w 0 0 m 137.482 0 l S +1 0 0 1 166.08 602.26 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F32 5.9776 Tf 161.797 123.138 Td [(4)]TJ/F31 7.9701 Tf 4.151 -2.812 Td [(The)-354(string)-354(is)-354(c)-1(a)1(se)-1(-)1(i)-1(nsensitiv)30(e)]TJ +/F27 9.9626 Tf 169.517 602.061 Td [(act)]TJ 0 g 0 G +/F8 9.9626 Tf 20.098 0 Td [(the)-333(t)27(yp)-27(e)-334(of)-333(action.)]TJ -14.004 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger.)-445(P)28(ossible)-333(v)55(alu)1(e)-1(s:)]TJ/F30 9.9626 Tf 180.269 0 Td [(psb_act_ret)]TJ/F8 9.9626 Tf 57.534 0 Td [(,)]TJ/F30 9.9626 Tf 6.088 0 Td [(psb_act_abort)]TJ/F8 9.9626 Tf 67.995 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 149.14 -29.888 Td [(136)]TJ + -172.409 -463.802 Td [(132)]TJ 0 g 0 G ET endstream endobj -1795 0 obj +1803 0 obj << -/Length 7751 +/Length 537 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(build)-375(|)-375(Builds)-375(a)-375(preconditioner)]TJ -0 g 0 G +/F16 14.3462 Tf 99.895 706.129 Td [(9)-1125(Utilities)]TJ/F8 9.9626 Tf 0 -21.821 Td [(W)83(e)-412(ha)27(v)28(e)-412(s)-1(ome)-412(utilities)-413(a)28(v)55(ailab)1(le)-413(for)-413(input)-412(and)-413(output)-412(of)-413(sparse)-413(matrices;)-452(the)]TJ 0 -11.955 Td [(in)28(terfaces)-334(to)-333(these)-333(routines)-334(are)-333(a)28(v)55(ailable)-333(in)-333(the)-334(mo)-27(dule)]TJ/F30 9.9626 Tf 241.844 0 Td [(psb_util_mod)]TJ/F8 9.9626 Tf 62.764 0 Td [(.)]TJ 0 g 0 G -/F30 9.9626 Tf 0 -19.764 Td [(call)-525(prec%build\050a,)-525(desc_a,)-525(info[,amold,vmold,imold]\051)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -24.132 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -22.879 Td [(On)-383(En)32(try)]TJ + -140.224 -581.915 Td [(133)]TJ 0 g 0 G +ET + +endstream +endobj +1809 0 obj +<< +/Length 4784 +>> +stream 0 g 0 G - 0 -22.879 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(system)-334(sparse)-333(matrix.)-445(Scop)-27(e:)]TJ/F27 9.9626 Tf 148.886 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -134.53 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(,)-333(target.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(sparse)-333(matrix)-334(data)-333(structure)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 194.05 0 Td [(psb)]TJ +BT +/F16 11.9552 Tf 150.705 706.129 Td [(9.1)-1588(h)32(b)]TJ ET q -1 0 0 1 335.171 580.809 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 202.248 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 338.309 580.61 Td [(Tspmat)]TJ +/F16 11.9552 Tf 206.283 706.129 Td [(read)-463(|)-462(Read)-463(a)-462(sparse)-463(matrix)-463(from)-462(a)-463(\014le)-463(in)-462(the)]TJ -24.943 -13.948 Td [(Harw)31(ell{Bo)-31(eing)-375(format)]TJ/F27 9.9626 Tf -29.258 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.554 0 Td [(h)-105(b)]TJ ET q -1 0 0 1 370.319 580.809 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 195.388 668.014 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 373.457 580.61 Td [(type)]TJ +/F8 9.9626 Tf 199.42 667.814 Td [(r)-105(e)-104(a)-105(d)-210(\050)-139(a)-228(,)-910(i)-150(r)-150(e)-149(t)-460(,)-896(i)-135(u)-135(n)-135(i)-135(t)-431(,)-877(f)-116(i)-116(l)-116(e)-116(n)-117(a)-116(m)-116(e)-393(,)-776(b)-191(,)-902(m)-142(t)-141(i)-141(t)-141(l)-142(e)-246(\051)]TJ 0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -294.484 -22.879 Td [(prec)]TJ 0 g 0 G -/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)]TJ -1.501 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-222(as:)-389(an)-222(already)-222(initialized)-222(precondtioner)-222(data)-223(structure)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 273.115 0 Td [(psb)]TJ -ET -q -1 0 0 1 414.236 510.11 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 417.374 509.91 Td [(prec)]TJ -ET -q -1 0 0 1 438.923 510.11 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 442.061 509.91 Td [(type)]TJ +/F27 9.9626 Tf -48.715 -17.933 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -342.166 -34.833 Td [(desc)]TJ -ET -q -1 0 0 1 121.81 475.276 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S -Q -BT -/F27 9.9626 Tf 125.247 475.077 Td [(a)]TJ +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(\014lename)]TJ +0 g 0 G +/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(read.)]TJ -21.606 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)28(haracte)-1(r)-435(v)56(ariable)-435(con)28(taining)-435(a)-436(v)56(alid)-435(\014le)-435(name,)-461(or)]TJ/F30 9.9626 Tf 297.915 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(,)-461(in)]TJ -303.145 -11.956 Td [(whic)28(h)-302(case)-303(the)-302(default)-302(input)-302(unit)-302(5)-303(\050i.e.)-434(standard)-302(input)-302(in)-302(Unix)-302(jargon\051)-302(is)]TJ 0 -11.955 Td [(used.)-444(Default:)]TJ/F30 9.9626 Tf 66.057 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -96.195 -19.925 Td [(iunit)]TJ +0 g 0 G +/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(u)1(nit)-334(n)28(um)28(b)-28(er.)]TJ -3.625 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue.)-444(Only)-333(me)-1(an)1(ingful)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.288 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -316.425 -21.918 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(problem)-334(comm)28(unication)-333(descriptor.)-445(Scop)-27(e:)]TJ/F27 9.9626 Tf 208.247 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -219.243 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(,)-333(target.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(comm)28(unication)-333(desc)-1(ri)1(ptor)-334(data)-333(structure)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)-333(read)-333(from)-334(\014le.)]TJ 14.356 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 247.683 0 Td [(psb)]TJ +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 388.803 439.41 cm +1 0 0 1 362.845 452.82 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 391.942 439.211 Td [(desc)]TJ +/F30 9.9626 Tf 365.983 452.621 Td [(Tspmat)]TJ ET q -1 0 0 1 413.491 439.41 cm +1 0 0 1 397.993 452.82 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 416.629 439.211 Td [(type)]TJ +/F30 9.9626 Tf 401.131 452.621 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -337.655 -22.879 Td [(amold)]TJ +/F27 9.9626 Tf -271.347 -19.925 Td [(b)]TJ +0 g 0 G +/F8 9.9626 Tf 11.346 0 Td [(Rigth)-333(hand)-334(sid)1(e)-1(\050s\051.)]TJ 13.56 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(An)-282(arr)1(a)27(y)-281(of)-282(t)28(yp)-28(e)-281(real)-282(or)-281(complex,)-292(rank)-282(2)-281(and)-282(ha)28(ving)-281(the)-282(ALLOCA)83(T)84(ABLE)]TJ 0 -11.956 Td [(attribute;)-409(will)-384(b)-28(e)-384(allo)-28(cated)-384(and)-383(\014lled)-384(in)-384(if)-384(the)-384(input)-384(\014le)-384(con)28(tains)-384(a)-384(righ)28(t)]TJ 0 -11.955 Td [(hand)-333(side,)-334(otherwise)-333(will)-333(b)-28(e)-333(left)-334(in)-333(the)-333(UNALLOCA)83(TED)-333(state.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -19.925 Td [(m)32(title)]TJ +0 g 0 G +/F8 9.9626 Tf 34.737 0 Td [(Matrix)-333(title.)]TJ -9.831 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(A)-405(c)28(harac)28(h)28(ter)-405(v)56(ariable)-405(of)-405(length)-404(72)-405(holding)-405(a)-404(cop)27(y)-404(of)-405(the)-405(matrix)-404(title)-405(as)]TJ 0 -11.956 Td [(sp)-28(eci\014ed)-333(b)28(y)-334(the)-333(Harw)28(ell-Bo)-28(eing)-333(format)-334(and)-333(con)28(tained)-333(in)-334(the)-333(input)-333(\014le.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -19.925 Td [(iret)]TJ +0 g 0 G +/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.317 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ +0 g 0 G + 139.477 -194.811 Td [(134)]TJ 0 g 0 G -/F8 9.9626 Tf 35.374 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(the)-333(in)28(ternal)-333(matrix)-334(storage.)]TJ -10.467 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(a)-333(class)-334(deriv)28(ed)-333(from)]TJ/F30 9.9626 Tf 203.349 0 Td [(psb)]TJ -ET -q -1 0 0 1 344.47 368.711 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 347.608 368.512 Td [(T)]TJ ET -q -1 0 0 1 353.466 368.711 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q + +endstream +endobj +1816 0 obj +<< +/Length 5264 +>> +stream +0 g 0 G +0 g 0 G BT -/F30 9.9626 Tf 356.604 368.512 Td [(base)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(9.2)-1125(h)31(b)]TJ ET q -1 0 0 1 378.153 368.711 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 145.908 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 381.291 368.512 Td [(sparse)]TJ +/F16 11.9552 Tf 149.943 706.129 Td [(write)-573(|)-574(W)94(rite)-574(a)-573(sparse)-574(matrix)-573(to)-574(a)-573(\014le)-574(in)-573(the)]TJ -19.412 -13.948 Td [(Harw)31(ell{Bo)-31(eing)-375(format)]TJ/F27 9.9626 Tf -29.259 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.734 0 Td [(h)-123(b)]TJ ET q -1 0 0 1 413.301 368.711 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 145.117 668.014 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 416.439 368.512 Td [(mat)]TJ/F8 9.9626 Tf 15.691 0 Td [(.)]TJ +/F8 9.9626 Tf 149.328 667.814 Td [(w)-123(r)-122(i)-123(t)-123(e)-228(\050)-139(a)-228(,)-910(i)-150(r)-149(e)-150(t)-460(,)-896(i)-135(u)-135(n)-135(i)-135(t)-431(,)-877(f)-116(i)-116(l)-116(e)-116(n)-116(a)-116(m)-117(e)-393(,)-821(k)-60(e)-60(y)-281(,)-853(r)-92(h)-91(s)-345(,)-902(m)-141(t)-142(i)-141(t)-141(l)-141(e)-247(\051)]TJ 0 g 0 G -/F27 9.9626 Tf -332.235 -22.879 Td [(vmold)]TJ 0 g 0 G -/F8 9.9626 Tf 35.852 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(the)-333(in)28(ternal)-333(v)27(ector)-333(storage.)]TJ -10.945 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(a)-333(class)-334(deriv)28(ed)-333(from)]TJ/F30 9.9626 Tf 203.349 0 Td [(psb)]TJ -ET -q -1 0 0 1 344.47 298.012 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 347.608 297.812 Td [(T)]TJ +0 g 0 G +/F27 9.9626 Tf -49.433 -17.933 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)-333(to)-333(b)-28(e)-333(written.)]TJ 14.356 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 353.466 298.012 cm +1 0 0 1 312.036 586.32 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 356.604 297.812 Td [(base)]TJ +/F30 9.9626 Tf 315.174 586.121 Td [(Tspmat)]TJ ET q -1 0 0 1 378.153 298.012 cm +1 0 0 1 347.183 586.32 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 381.291 297.812 Td [(vect)]TJ +/F30 9.9626 Tf 350.322 586.121 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -271.348 -19.926 Td [(b)]TJ +0 g 0 G +/F8 9.9626 Tf 11.347 0 Td [(Rigth)-333(hand)-333(s)-1(i)1(de.)]TJ 13.56 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-282(ar)1(ra)27(y)-281(of)-282(t)28(yp)-28(e)-281(real)-282(or)-281(complex,)-292(rank)-282(1)-281(and)-282(ha)28(ving)-281(the)-282(ALLOCA)83(T)84(ABLE)]TJ 0 -11.955 Td [(attribute;)-409(will)-384(b)-28(e)-384(allo)-28(cated)-384(an)1(d)-384(\014lled)-384(in)-384(if)-384(the)-384(input)-384(\014le)-384(con)28(tains)-384(a)-384(righ)28(t)]TJ 0 -11.955 Td [(hand)-333(side.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.926 Td [(\014lename)]TJ +0 g 0 G +/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(written)-333(to.)]TJ -21.606 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)27(h)1(arac)-1(ter)-435(v)56(ariable)-435(con)28(taining)-436(a)-435(v)56(alid)-435(\014le)-435(name,)-461(or)]TJ/F30 9.9626 Tf 297.915 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(,)-461(in)]TJ -303.146 -11.955 Td [(whic)28(h)-281(case)-280(the)-280(default)-281(output)-280(unit)-280(6)-281(\050i.e.)-426(s)-1(t)1(andard)-281(output)-280(in)-280(Unix)-281(jargon\051)]TJ 0 -11.955 Td [(is)-333(used.)-445(Default:)]TJ/F30 9.9626 Tf 76.076 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -106.213 -19.926 Td [(iunit)]TJ +0 g 0 G +/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(un)1(it)-334(n)28(um)28(b)-28(er.)]TJ -3.625 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(Only)-333(me)-1(ani)1(ngful)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.288 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -316.425 -19.925 Td [(k)32(ey)]TJ +0 g 0 G +/F8 9.9626 Tf 22.008 0 Td [(Matrix)-333(k)28(ey)83(.)]TJ 2.899 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(A)-385(c)28(harac)28(h)28(ter)-385(v)56(ariable)-385(of)-385(length)-384(8)-385(holding)-385(the)-384(m)-1(atri)1(x)-385(k)28(ey)-385(as)-385(sp)-28(eci\014ed)-384(b)27(y)]TJ 0 -11.955 Td [(the)-333(Harw)27(ell-Bo)-27(eing)-334(format)-333(and)-333(to)-334(b)-27(e)-334(written)-333(to)-333(\014le.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(m)32(title)]TJ +0 g 0 G +/F8 9.9626 Tf 34.738 0 Td [(Matrix)-333(title.)]TJ -9.831 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(Optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(A)-318(c)28(harac)28(h)28(ter)-318(v)56(ariable)-318(of)-317(length)-318(72)-317(holding)-318(the)-317(m)-1(atr)1(ix)-318(title)-318(as)-317(sp)-28(eci\014ed)-318(b)28(y)]TJ 0 -11.956 Td [(the)-333(Harw)27(ell-Bo)-27(eing)-334(format)-333(and)-333(to)-334(b)-27(e)-334(written)-333(to)-333(\014le.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -21.917 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.926 Td [(iret)]TJ +0 g 0 G +/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.318 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ +0 g 0 G + 139.477 -139.02 Td [(135)]TJ +0 g 0 G ET -q -1 0 0 1 402.84 298.012 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 405.978 297.812 Td [(type)]TJ/F8 9.9626 Tf 20.922 0 Td [(.)]TJ + +endstream +endobj +1823 0 obj +<< +/Length 3666 +>> +stream 0 g 0 G -/F27 9.9626 Tf -327.005 -22.878 Td [(imold)]TJ 0 g 0 G -/F8 9.9626 Tf 32.988 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(th)1(e)-334(in)28(ternal)-333(in)28(te)-1(ger)-333(v)28(ector)-333(s)-1(t)1(o)-1(r)1(age)-1(.)]TJ -8.081 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-222(as:)-389(an)-222(ob)-56(ject)-222(of)-222(a)-222(class)-223(deriv)28(ed)-222(from)-222(\050in)28(teger\051)]TJ/F30 9.9626 Tf 233.541 0 Td [(psb)]TJ +BT +/F16 11.9552 Tf 150.705 706.129 Td [(9.3)-1125(mm)]TJ ET q -1 0 0 1 374.662 227.312 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 204.563 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 377.8 227.113 Td [(T)]TJ +/F16 11.9552 Tf 208.598 706.129 Td [(mat)]TJ ET q -1 0 0 1 383.658 227.312 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 232.381 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 386.796 227.113 Td [(base)]TJ +/F16 11.9552 Tf 236.416 706.129 Td [(read)-409(|)-409(Read)-409(a)-409(sparse)-409(matrix)-409(from)-409(a)-410(\014le)-409(in)]TJ -55.076 -13.948 Td [(the)-375(MatrixMark)31(et)-375(format)]TJ/F27 9.9626 Tf -29.258 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.009 0 Td [(m)-50(m)]TJ ET q -1 0 0 1 408.345 227.312 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 199.288 668.014 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 411.483 227.113 Td [(vect)]TJ +/F8 9.9626 Tf 202.775 667.814 Td [(m)-50(a)-50(t)]TJ ET q -1 0 0 1 433.032 227.312 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 222.024 668.014 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 436.171 227.113 Td [(type)]TJ/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F8 9.9626 Tf 225.51 667.814 Td [(r)-50(e)-50(a)-50(d)-155(\050)-139(a)-228(,)-911(i)-149(r)-150(e)-149(t)-461(,)-896(i)-134(u)-135(n)-135(i)-135(t)-431(,)-890(f)-129(i)-129(l)-129(e)-129(n)-129(a)-129(m)-129(e)-235(\051)]TJ 0 g 0 G -/F27 9.9626 Tf -357.197 -24.133 Td [(On)-383(Return)]TJ 0 g 0 G 0 g 0 G - 0 -22.879 Td [(prec)]TJ +/F27 9.9626 Tf -74.805 -17.933 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(\014lename)]TJ +0 g 0 G +/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(read.)]TJ -21.607 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)28(haracte)-1(r)-435(v)56(ariable)-435(con)28(taining)-435(a)-436(v)56(alid)-435(\014le)-435(name,)-461(or)]TJ/F30 9.9626 Tf 297.915 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(,)-461(in)]TJ -303.145 -11.956 Td [(whic)28(h)-302(case)-303(the)-302(default)-302(input)-302(unit)-302(5)-303(\050i.e.)-434(standard)-302(input)-302(in)-302(Unix)-302(jargon\051)-302(is)]TJ 0 -11.955 Td [(used.)-444(Default:)]TJ/F30 9.9626 Tf 66.057 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -96.195 -19.925 Td [(iunit)]TJ +0 g 0 G +/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(u)1(nit)-334(n)28(um)28(b)-28(er.)]TJ -3.625 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(in)28(teger)-333(v)55(alue.)-444(Only)-333(me)-1(an)1(ingful)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.288 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -316.425 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)]TJ -1.501 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(precondtioner)-333(data)-333(structure)]TJ +0 g 0 G + 0 -19.925 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)-333(read)-333(from)-334(\014le.)]TJ 14.356 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 194.77 0 Td [(psb)]TJ +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ ET q -1 0 0 1 335.891 132.48 cm +1 0 0 1 362.845 452.82 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.029 132.281 Td [(prec)]TJ +/F30 9.9626 Tf 365.983 452.621 Td [(Tspmat)]TJ ET q -1 0 0 1 360.578 132.48 cm +1 0 0 1 397.993 452.82 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 363.716 132.281 Td [(type)]TJ -0 g 0 G -0 g 0 G -/F8 9.9626 Tf -99.437 -41.843 Td [(137)]TJ -0 g 0 G -ET - -endstream -endobj -1799 0 obj -<< -/Length 1097 ->> -stream -0 g 0 G +/F30 9.9626 Tf 401.131 452.621 Td [(type)]TJ 0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -BT -/F27 9.9626 Tf 150.705 706.129 Td [(info)]TJ +/F27 9.9626 Tf -271.347 -19.925 Td [(iret)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ -24.906 -21.918 Td [(The)]TJ/F30 9.9626 Tf 21.637 0 Td [(amold)]TJ/F8 9.9626 Tf 26.152 0 Td [(,)]TJ/F30 9.9626 Tf 7.537 0 Td [(vmold)]TJ/F8 9.9626 Tf 30.631 0 Td [(and)]TJ/F30 9.9626 Tf 20.53 0 Td [(imold)]TJ/F8 9.9626 Tf 30.631 0 Td [(argumen)28(ts)-450(ma)28(y)-450(b)-28(e)-449(emplo)28(y)27(ed)-449(to)-450(in)28(terface)-450(with)]TJ -137.118 -11.955 Td [(sp)-28(ecial)-333(devices,)-334(suc)28(h)-333(as)-334(GP)1(Us)-334(and)-333(other)-333(acc)-1(elerators.)]TJ +/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.317 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ 0 g 0 G - 164.383 -533.997 Td [(138)]TJ + 139.477 -318.348 Td [(136)]TJ 0 g 0 G ET endstream endobj -1807 0 obj +1829 0 obj << -/Length 5847 +/Length 3717 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 99.895 706.129 Td [(apply)-375(|)-375(Preconditioner)-375(application)-375(routine)]TJ -0 g 0 G -0 g 0 G -/F30 9.9626 Tf 0 -18.389 Td [(call)-525(prec%apply\050x,y,desc_a,info,trans,work\051)]TJ 0 -11.956 Td [(call)-525(prec%apply\050x,desc_a,info,trans\051)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -21.917 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.925 Td [(prec)]TJ -0 g 0 G -/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)-445(Scop)-27(e:)]TJ/F27 9.9626 Tf 119.331 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -120.832 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(preconditioner)-333(data)-333(structure)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 197.537 0 Td [(psb)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(9.4)-1125(mm)]TJ ET q -1 0 0 1 338.658 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 153.753 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 341.796 578.15 Td [(prec)]TJ +/F16 11.9552 Tf 157.788 706.129 Td [(arra)31(y)]TJ ET q -1 0 0 1 363.345 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 189.383 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 366.483 578.15 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.922 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -287.51 -19.925 Td [(x)]TJ -0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(source)-334(v)28(ector.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 113.851 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -99.972 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(arra)27(y)-333(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 223.496 0 Td [(psb)]TJ +/F16 11.9552 Tf 193.417 706.129 Td [(read)-450(|)-451(Read)-450(a)-450(dense)-450(arra)31(y)-450(from)-451(a)-450(\014le)-450(in)]TJ -62.887 -13.948 Td [(the)-375(MatrixMark)31(et)-375(format)]TJ/F27 9.9626 Tf -29.258 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.373 0 Td [(m)-87(m)]TJ ET q -1 0 0 1 364.616 522.559 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 149.57 668.014 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 367.754 522.36 Td [(T)]TJ +/F8 9.9626 Tf 153.421 667.814 Td [(a)-86(r)-87(r)-86(a)-87(y)]TJ ET q -1 0 0 1 373.612 522.559 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 181.351 668.014 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 376.751 522.36 Td [(vect)]TJ +/F8 9.9626 Tf 185.201 667.814 Td [(r)-86(e)-87(a)-86(d)-192(\050)-121(b)-191(,)-910(i)-150(r)-149(e)-150(t)-460(,)-896(i)-135(u)-135(n)-135(i)-135(t)-431(,)-890(f)-129(i)-129(l)-129(e)-129(n)-129(a)-129(m)-129(e)-234(\051)]TJ +0 g 0 G +0 g 0 G +0 g 0 G +/F27 9.9626 Tf -85.306 -17.933 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(\014lename)]TJ +0 g 0 G +/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(read.)]TJ -21.606 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)27(h)1(arac)-1(ter)-435(v)56(ariable)-435(con)28(taining)-436(a)-435(v)56(alid)-435(\014le)-435(name,)-461(or)]TJ/F30 9.9626 Tf 297.915 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(,)-461(in)]TJ -303.146 -11.956 Td [(whic)28(h)-302(cas)-1(e)-302(the)-302(default)-302(input)-302(unit)-302(5)-303(\050i.e.)-434(standard)-302(input)-302(in)-302(Unix)-302(jargon\051)-302(is)]TJ 0 -11.955 Td [(used.)-444(Default:)]TJ/F30 9.9626 Tf 66.058 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -96.195 -19.925 Td [(iunit)]TJ +0 g 0 G +/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(un)1(it)-334(n)28(um)28(b)-28(er.)]TJ -3.625 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(Only)-333(me)-1(ani)1(ngful)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.288 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -316.425 -21.918 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(b)]TJ +0 g 0 G +/F8 9.9626 Tf 11.347 0 Td [(Rigth)-333(hand)-333(s)-1(i)1(de\050s)-1(\051.)]TJ 13.56 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-310(arra)28(y)-310(of)-310(t)28(yp)-28(e)-310(real)-310(or)-310(complex,)-315(rank)-309(1)-310(or)-310(2)-310(and)-310(ha)28(ving)-310(the)-310(ALLOCA)83(T-)]TJ 0 -11.955 Td [(ABLE)-334(attribute;)-334(will)-333(b)-28(e)-334(allo)-28(cated)-333(and)-334(\014lled)-334(in)-333(if)-334(the)-334(input)-333(\014le)-334(con)28(tains)-334(a)]TJ 0 -11.955 Td [(righ)28(t)-333(hand)-334(side,)-333(otherwise)-333(will)-334(b)-27(e)-334(left)-333(in)-333(the)-334(UNALLOCA)84(TED)-334(state.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(iret)]TJ +0 g 0 G +/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.318 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detected.)]TJ +0 g 0 G + 139.477 -294.437 Td [(137)]TJ +0 g 0 G +ET + +endstream +endobj +1836 0 obj +<< +/Length 4197 +>> +stream +0 g 0 G +0 g 0 G +BT +/F16 11.9552 Tf 150.705 706.129 Td [(9.5)-1125(mm)]TJ ET q -1 0 0 1 398.3 522.559 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 204.563 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 401.438 522.36 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -322.464 -19.926 Td [(desc)]TJ +/F16 11.9552 Tf 208.598 706.129 Td [(mat)]TJ ET q -1 0 0 1 121.81 502.634 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 232.381 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F27 9.9626 Tf 125.247 502.434 Td [(a)]TJ -0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(the)-333(problem)-334(comm)28(unication)-333(descriptor.)-445(Scop)-27(e:)]TJ/F27 9.9626 Tf 208.247 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -219.243 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(comm)28(unication)-333(data)-334(structure)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 201.08 0 Td [(psb)]TJ +/F16 11.9552 Tf 236.416 706.129 Td [(write)-481(|)-481(W)94(rite)-481(a)-481(sparse)-480(matrix)-481(to)-481(a)-481(\014le)-481(in)]TJ -55.076 -13.948 Td [(the)-375(MatrixMark)31(et)-375(format)]TJ/F27 9.9626 Tf -29.258 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.175 0 Td [(m)-67(m)]TJ ET q -1 0 0 1 342.2 466.768 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 199.787 668.014 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 345.339 466.569 Td [(desc)]TJ +/F8 9.9626 Tf 203.439 667.814 Td [(m)-67(a)-66(t)]TJ ET q -1 0 0 1 366.887 466.768 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 223.186 668.014 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S Q BT -/F30 9.9626 Tf 370.026 466.569 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F8 9.9626 Tf 226.839 667.814 Td [(w)-67(r)-66(i)-67(t)-66(e)-173(\050)-139(a)-227(,)-885(m)-124(t)-123(i)-124(t)-124(l)-123(e)-409(,)-910(i)-150(r)-149(e)-150(t)-460(,)-896(i)-135(u)-135(n)-135(i)-135(t)-431(,)-890(f)-129(i)-129(l)-129(e)-129(n)-129(a)-129(m)-129(e)-234(\051)]TJ 0 g 0 G -/F27 9.9626 Tf -291.052 -19.925 Td [(trans)]TJ 0 g 0 G -/F8 9.9626 Tf 30.609 0 Td [(Scop)-28(e:)]TJ -5.702 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(c)28(haracter.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.925 Td [(w)32(ork)]TJ +/F27 9.9626 Tf -76.134 -17.933 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F8 9.9626 Tf 29.432 0 Td [(an)-333(optional)-333(w)27(ork)-333(space)-333(Scop)-28(e:)]TJ/F27 9.9626 Tf 135.962 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -140.487 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(double)-333(precision)-333(arra)27(y)84(.)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G 0 g 0 G - 0 -19.925 Td [(y)]TJ + 0 -19.925 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(the)-333(destination)-334(v)28(ector.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 134.856 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -120.977 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(arra)27(y)-333(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(sparse)-334(matrix)-333(to)-333(b)-28(e)-333(written.)]TJ 14.356 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -67.081 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 223.496 0 Td [(psb)]TJ -ET -q -1 0 0 1 364.616 277.478 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 367.754 277.279 Td [(T)]TJ +/F30 9.9626 Tf 170.914 0 Td [(psb)]TJ ET q -1 0 0 1 373.612 277.478 cm +1 0 0 1 362.845 586.32 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 376.751 277.279 Td [(vect)]TJ +/F30 9.9626 Tf 365.983 586.121 Td [(Tspmat)]TJ ET q -1 0 0 1 398.3 277.478 cm +1 0 0 1 397.993 586.32 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 401.438 277.279 Td [(type)]TJ +/F30 9.9626 Tf 401.131 586.121 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -322.464 -19.926 Td [(info)]TJ +/F27 9.9626 Tf -271.347 -19.926 Td [(m)32(title)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ +/F8 9.9626 Tf 34.737 0 Td [(Matrix)-333(title.)]TJ -9.831 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(A)-299(c)28(harac)28(h)27(t)1(e)-1(r)-298(v)55(ariable)-299(hold)1(ing)-299(a)-299(descriptiv)28(e)-299(title)-299(for)-299(the)-299(matrix)-298(to)-299(b)-28(e)-299(writ-)]TJ 0 -11.955 Td [(ten)-333(to)-334(\014le.)]TJ 0 g 0 G - 139.477 -119.095 Td [(139)]TJ +/F27 9.9626 Tf -24.906 -19.925 Td [(\014lename)]TJ 0 g 0 G -ET - -endstream -endobj -1813 0 obj -<< -/Length 2936 ->> -stream +/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(written)-333(to.)]TJ -21.607 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.761 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)27(haracter)-435(v)56(ariable)-435(con)27(tain)1(ing)-436(a)-435(v)56(alid)-435(\014le)-435(name)-1(,)-460(or)]TJ/F30 9.9626 Tf 297.916 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(,)-461(in)]TJ -303.146 -11.955 Td [(whic)28(h)-281(case)-280(the)-281(d)1(e)-1(f)1(ault)-281(output)-280(unit)-280(6)-281(\050i.e.)-427(stand)1(ard)-281(output)-280(in)-280(Unix)-281(jargon\051)]TJ 0 -11.955 Td [(is)-333(used.)-445(Default:)]TJ/F30 9.9626 Tf 76.076 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(.)]TJ 0 g 0 G +/F27 9.9626 Tf -106.213 -19.925 Td [(iunit)]TJ 0 g 0 G -BT -/F16 11.9552 Tf 150.705 706.129 Td [(descr)-375(|)-375(Prin)31(ts)-375(a)-375(description)-375(of)-375(curren)31(t)-375(preconditioner)]TJ +/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(u)1(nit)-334(n)28(um)28(b)-28(er.)]TJ -3.626 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.184 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.761 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(Only)-334(meaningf)1(ul)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.289 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ 0 g 0 G +/F27 9.9626 Tf -316.425 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F30 9.9626 Tf 0 -18.389 Td [(call)-525(prec%descr\050\051)]TJ 0 -11.956 Td [(call)-525(prec%descr\050iout,)-525(root\051)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -21.917 Td [(T)32(yp)-32(e:)]TJ + 0 -19.925 Td [(iret)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.318 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(in)28(teger)-334(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detected.)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ + 139.476 -262.557 Td [(138)]TJ 0 g 0 G +ET + +endstream +endobj +1842 0 obj +<< +/Length 3393 +>> +stream 0 g 0 G - 0 -19.925 Td [(prec)]TJ 0 g 0 G -/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)-445(Scop)-27(e:)]TJ/F27 9.9626 Tf 119.33 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -120.832 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(preconditioner)-333(data)-333(structure)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 197.538 0 Td [(psb)]TJ +BT +/F16 11.9552 Tf 99.895 706.129 Td [(9.6)-1125(mm)]TJ ET q -1 0 0 1 389.467 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 153.753 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 392.606 578.15 Td [(prec)]TJ +/F16 11.9552 Tf 157.788 706.129 Td [(arra)31(y)]TJ ET q -1 0 0 1 414.155 578.35 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 189.383 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S Q BT -/F30 9.9626 Tf 417.293 578.15 Td [(type)]TJ +/F16 11.9552 Tf 193.417 706.129 Td [(write)-377(|)-377(W)93(rite)-377(a)-377(dense)-377(arra)31(y)-377(from)-378(a)-377(\014le)-377(in)]TJ -62.887 -13.948 Td [(the)-375(MatrixMark)31(et)-375(format)]TJ/F27 9.9626 Tf -29.258 -24.367 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.493 0 Td [(m)-99(m)]TJ +ET +q +1 0 0 1 149.929 668.014 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 153.899 667.814 Td [(a)-99(r)-98(r)-98(a)-99(y)]TJ +ET +q +1 0 0 1 182.428 668.014 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 186.398 667.814 Td [(w)-98(r)-99(i)-98(t)-99(e)-204(\050)-120(b)-191(,)-911(i)-149(r)-150(e)-149(t)-461(,)-896(i)-134(u)-135(n)-135(i)-135(t)-431(,)-890(f)-129(i)-129(l)-129(e)-129(n)-129(a)-129(m)-129(e)-235(\051)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -287.509 -19.925 Td [(iout)]TJ 0 g 0 G -/F8 9.9626 Tf 24.713 0 Td [(output)-333(unit.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 89.94 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -89.747 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(n)27(um)28(b)-28(er.)-444(Default:)-444(default)-334(outpu)1(t)-334(unit.)]TJ +/F27 9.9626 Tf -86.503 -17.933 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(ro)-32(ot)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G -/F8 9.9626 Tf 25.93 0 Td [(Pro)-28(cess)-333(from)-334(whic)28(h)-333(to)-333(prin)28(t)-334(Scop)-28(e:)]TJ/F27 9.9626 Tf 157.244 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -158.268 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-478(as:)-733(an)-478(in)28(teger)-478(n)28(um)27(b)-27(er)-478(b)-28(et)28(w)28(een)-478(0)-478(and)]TJ/F11 9.9626 Tf 220.073 0 Td [(np)]TJ/F14 9.9626 Tf 14.166 0 Td [(\000)]TJ/F8 9.9626 Tf 10.922 0 Td [(1,)-514(in)-478(whic)28(h)-478(case)]TJ -245.161 -11.955 Td [(the)-410(sp)-28(eci\014ed)-410(pro)-28(cess)-410(will)-411(pri)1(n)27(t)-410(the)-410(description,)-429(or)]TJ/F14 9.9626 Tf 225 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1,)-429(in)-411(whic)28(h)-410(case)-410(all)]TJ -232.749 -11.955 Td [(pro)-28(cesses)-333(will)-334(prin)28(t.)-444(Default:)-445(0.)]TJ +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G - 139.477 -352.221 Td [(140)]TJ 0 g 0 G -ET - -endstream -endobj -1817 0 obj -<< -/Length 989 ->> -stream + 0 -19.925 Td [(b)]TJ 0 g 0 G +/F8 9.9626 Tf 11.347 0 Td [(Rigth)-333(hand)-333(s)-1(i)1(de\050s)-1(\051.)]TJ 13.56 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(arra)28(y)-334(of)-333(t)28(yp)-28(e)-333(real)-334(or)-333(complex,)-333(rank)-334(1)-333(or)-333(2;)-334(will)-333(b)-28(e)-333(written..)]TJ 0 g 0 G -BT -/F16 11.9552 Tf 99.895 706.129 Td [(clone)-375(|)-375(clone)-375(curren)31(t)-375(preconditioner)]TJ +/F27 9.9626 Tf -24.907 -19.926 Td [(\014lename)]TJ 0 g 0 G +/F8 9.9626 Tf 46.513 0 Td [(The)-333(name)-334(of)-333(the)-333(\014le)-334(to)-333(b)-28(e)-333(written.)]TJ -21.606 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-435(as:)-648(a)-435(c)27(h)1(arac)-1(ter)-435(v)56(ariable)-435(con)28(taining)-436(a)-435(v)56(alid)-435(\014le)-435(name,)-461(or)]TJ/F30 9.9626 Tf 297.915 0 Td [(-)]TJ/F8 9.9626 Tf 5.231 0 Td [(,)-461(in)]TJ -303.146 -11.955 Td [(whic)28(h)-302(cas)-1(e)-302(the)-302(default)-302(input)-302(unit)-302(5)-303(\050i.e.)-434(standard)-302(input)-302(in)-302(Unix)-302(jargon\051)-302(is)]TJ 0 -11.955 Td [(used.)-444(Default:)]TJ/F30 9.9626 Tf 66.058 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ 0 g 0 G -/F30 9.9626 Tf 0 -18.389 Td [(call)-1050(prec%clone\050precout,info\051)]TJ +/F27 9.9626 Tf -96.195 -19.926 Td [(iunit)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +/F8 9.9626 Tf 28.532 0 Td [(The)-333(F)83(ortran)-333(\014le)-334(un)1(it)-334(n)28(um)28(b)-28(er.)]TJ -3.625 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -65.76 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)-444(Only)-333(me)-1(ani)1(ngful)-334(if)-333(\014lename)-333(is)-334(not)]TJ/F30 9.9626 Tf 286.288 0 Td [(-)]TJ/F8 9.9626 Tf 5.23 0 Td [(.)]TJ 0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +/F27 9.9626 Tf -316.425 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G -/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G + 0 -19.925 Td [(iret)]TJ +0 g 0 G +/F8 9.9626 Tf 22.589 0 Td [(Error)-333(co)-28(de.)]TJ 2.318 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detected.)]TJ 0 g 0 G - 0 -19.925 Td [(prec)]TJ + 139.477 -318.348 Td [(139)]TJ 0 g 0 G -/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)]TJ -1.501 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ +ET + +endstream +endobj +1849 0 obj +<< +/Length 1215 +>> +stream 0 g 0 G -/F27 9.9626 Tf -80.359 -33.873 Td [(On)-383(Return)]TJ 0 g 0 G +BT +/F16 14.3462 Tf 150.705 706.129 Td [(10)-1125(Preconditioner)-375(routines)]TJ/F8 9.9626 Tf 0 -21.821 Td [(The)-310(base)-310(PSBLAS)-310(library)-310(con)28(tains)-310(the)-310(implemen)28(tation)-310(of)-310(t)28(w)27(o)-310(simple)-310(precondi-)]TJ 0 -11.955 Td [(tioning)-333(tec)28(hniques:)]TJ 0 g 0 G - 0 -19.925 Td [(precout)]TJ +/F14 9.9626 Tf 14.944 -19.925 Td [(\017)]TJ 0 g 0 G -/F8 9.9626 Tf 42.957 0 Td [(A)-333(cop)27(y)-333(of)-333(the)-334(in)1(put)-334(ob)-55(ject.)]TJ +/F8 9.9626 Tf 9.962 0 Td [(Diagonal)-333(Scaling)]TJ 0 g 0 G -/F27 9.9626 Tf -42.957 -19.926 Td [(info)]TJ +/F14 9.9626 Tf -9.962 -19.926 Td [(\017)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ +/F8 9.9626 Tf 9.962 0 Td [(Blo)-28(c)28(k)-333(Jacobi)-334(with)-333(ILU\0500\051)-333(factorization)]TJ -24.906 -19.925 Td [(The)-364(supp)-27(orting)-364(data)-363(t)27(yp)-27(e)-364(and)-364(subroutin)1(e)-364(in)28(terfaces)-364(are)-364(de\014ned)-363(in)-364(the)-363(mo)-28(dule)]TJ/F30 9.9626 Tf 0 -11.955 Td [(psb_prec_mod)]TJ/F8 9.9626 Tf 62.764 0 Td [(.)-844(The)-466(old)-466(in)27(terfaces)]TJ/F30 9.9626 Tf 96.594 0 Td [(psb_precinit)]TJ/F8 9.9626 Tf 67.411 0 Td [(and)]TJ/F30 9.9626 Tf 20.697 0 Td [(psb_precbld)]TJ/F8 9.9626 Tf 62.181 0 Td [(are)-466(still)]TJ -309.647 -11.955 Td [(supp)-28(orted)-333(for)-333(bac)28(kw)27(ard)-333(compatibilit)28(y)]TJ 0 g 0 G - 140.626 -449.854 Td [(141)]TJ + 164.383 -498.229 Td [(140)]TJ 0 g 0 G ET endstream endobj -1823 0 obj +1855 0 obj << -/Length 2730 +/Length 5089 >> stream 0 g 0 G 0 g 0 G BT -/F16 11.9552 Tf 150.705 706.129 Td [(free)-375(|)-375(F)94(ree)-375(a)-375(preconditioner)]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(10.1)-1125(init)-375(|)-375(Initialize)-375(a)-375(preconditioner)]TJ 0 g 0 G 0 g 0 G -/F30 9.9626 Tf 0 -18.389 Td [(call)-525(prec%free\050info\051)]TJ +/F30 9.9626 Tf 0 -18.389 Td [(call)-525(prec%init\050icontxt,ptype,)-525(info\051)]TJ 0 g 0 G /F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G @@ -22929,828 +23147,735 @@ BT 0 g 0 G /F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G +0 g 0 G + 0 -19.925 Td [(icon)32(txt)]TJ +0 g 0 G +/F8 9.9626 Tf 39.989 0 Td [(the)-333(comm)27(unication)-333(con)28(text.)]TJ -15.082 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 27.951 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -57.707 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 25.183 0 Td [(required)]TJ/F8 9.9626 Tf 41.899 0 Td [(.)]TJ -67.082 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(alue.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(pt)32(yp)-32(e)]TJ +0 g 0 G +/F8 9.9626 Tf 33.465 0 Td [(the)-333(t)27(yp)-27(e)-334(of)-333(preconditioner.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 153.093 0 Td [(global)]TJ/F8 9.9626 Tf -161.651 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(c)28(haracter)-333(s)-1(t)1(ring,)-334(see)-333(usage)-334(notes.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.926 Td [(On)-383(Exit)]TJ +0 g 0 G 0 g 0 G 0 -19.925 Td [(prec)]TJ 0 g 0 G -/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)]TJ -1.501 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(preconditioner)-333(data)-333(structure)]TJ +/F8 9.9626 Tf 26.408 0 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -33.88 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(preconditioner)-333(data)-333(structure)]TJ 0 0 1 rg 0 0 1 RG /F30 9.9626 Tf 197.537 0 Td [(psb)]TJ ET q -1 0 0 1 389.467 578.35 cm +1 0 0 1 338.658 446.843 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 392.606 578.15 Td [(prec)]TJ +/F30 9.9626 Tf 341.796 446.644 Td [(prec)]TJ ET q -1 0 0 1 414.155 578.35 cm +1 0 0 1 363.345 446.843 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 417.293 578.15 Td [(type)]TJ +/F30 9.9626 Tf 366.483 446.644 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -287.509 -19.925 Td [(On)-383(Exit)]TJ +/F27 9.9626 Tf -287.51 -19.926 Td [(info)]TJ 0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -31.23 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Error)-333(co)-28(de:)-444(if)-334(no)-333(error,)-333(0)-334(is)-333(returned.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ/F8 9.9626 Tf 37.059 0 Td [(Legal)-316(inputs)-315(to)-316(this)-316(subroutine)-315(are)-316(in)28(terpreted)-316(dep)-28(ending)-315(on)-316(the)]TJ/F11 9.9626 Tf 283.149 0 Td [(pty)-36(pe)]TJ/F8 9.9626 Tf -320.208 -11.955 Td [(string)-333(as)-334(follo)28(ws)]TJ +0 0 1 rg 0 0 1 RG +/F7 6.9738 Tf 69.933 3.615 Td [(4)]TJ 0 g 0 G - 0 -19.925 Td [(prec)]TJ +/F8 9.9626 Tf 4.469 -3.615 Td [(:)]TJ +0 g 0 G +/F27 9.9626 Tf -74.402 -19.925 Td [(NONE)]TJ +0 g 0 G +/F8 9.9626 Tf 39.048 0 Td [(No)-333(preconditioning,)-333(i.e.)-445(the)-333(preconditioner)-333(is)-334(just)-333(a)-333(cop)27(y)-333(op)-28(erator.)]TJ +0 g 0 G +/F27 9.9626 Tf -39.048 -19.926 Td [(DIA)32(G)]TJ +0 g 0 G +/F8 9.9626 Tf 35.464 0 Td [(Diagonal)-441(scaling;)-496(eac)28(h)-442(en)28(try)-441(of)-442(th)1(e)-442(input)-441(v)28(ec)-1(tor)-441(is)-441(m)27(ultip)1(lied)-442(b)28(y)-441(the)]TJ -10.557 -11.955 Td [(recipro)-28(cal)-346(of)-346(the)-346(sum)-346(of)-345(the)-346(absolute)-346(v)55(alues)-346(of)-346(the)-346(co)-27(e\016cien)27(ts)-346(in)-346(th)1(e)-346(c)-1(or)1(-)]TJ 0 -11.955 Td [(resp)-28(onding)-333(ro)28(w)-334(of)-333(matrix)]TJ/F11 9.9626 Tf 113.602 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(;)]TJ +0 g 0 G +/F27 9.9626 Tf -145.981 -19.925 Td [(BJA)32(C)]TJ +0 g 0 G +/F8 9.9626 Tf 35.672 0 Td [(Precondition)-249(b)28(y)-249(a)-249(factorization)-248(of)-249(the)-249(blo)-28(c)28(k-diagonal)-249(of)-249(matrix)]TJ/F11 9.9626 Tf 269.665 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(,)-266(where)]TJ -287.902 -11.956 Td [(blo)-28(c)28(k)-457(b)-28(oundaries)-457(are)-457(determined)-457(b)28(y)-457(the)-457(data)-457(allo)-28(cation)-457(b)-28(oundaries)-457(for)]TJ 0 -11.955 Td [(eac)28(h)-347(pro)-28(cess;)-353(requires)-346(no)-347(comm)28(unication.)-484(Only)-347(the)-346(incomplete)-347(factoriza-)]TJ 0 -11.955 Td [(tion)]TJ/F11 9.9626 Tf 20.479 0 Td [(I)-78(LU)]TJ/F8 9.9626 Tf 19.83 0 Td [(\0500\051)-333(is)-334(curren)28(tly)-333(implemen)28(ted.)]TJ 0 g 0 G -/F8 9.9626 Tf 26.408 0 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -33.879 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(preconditioner)-333(data)-333(structure)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 197.537 0 Td [(psb)]TJ -ET -q -1 0 0 1 389.467 502.634 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S -Q -BT -/F30 9.9626 Tf 392.606 502.434 Td [(prec)]TJ ET q -1 0 0 1 414.155 502.634 cm -[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +1 0 0 1 99.895 129.78 cm +[]0 d 0 J 0.398 w 0 0 m 137.482 0 l S Q BT -/F30 9.9626 Tf 417.293 502.434 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -287.509 -19.925 Td [(info)]TJ +/F32 5.9776 Tf 110.987 123.138 Td [(4)]TJ/F31 7.9701 Tf 4.151 -2.812 Td [(The)-354(string)-354(is)-355(case-insensitiv)30(e)]TJ 0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -31.23 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.034 -11.955 Td [(Error)-333(co)-28(de:)-444(if)-334(no)-333(error,)-333(0)-334(is)-333(returned.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ/F8 9.9626 Tf 37.234 0 Td [(Releases)-334(all)-333(in)28(ternal)-333(storage.)]TJ 0 g 0 G - 127.149 -334.288 Td [(142)]TJ +/F8 9.9626 Tf 149.141 -29.888 Td [(141)]TJ 0 g 0 G ET endstream endobj -1827 0 obj +1864 0 obj << -/Length 598 +/Length 7738 >> stream 0 g 0 G 0 g 0 G BT -/F16 14.3462 Tf 99.895 706.129 Td [(11)-1125(Iterativ)31(e)-375(Metho)-31(ds)]TJ/F8 9.9626 Tf 0 -21.821 Td [(In)-519(this)-518(c)28(hapter)-519(w)28(e)-519(pro)28(vide)-519(routin)1(e)-1(s)-518(for)-519(preconditioners)-518(and)-519(iterativ)28(e)-519(meth-)]TJ 0 -11.955 Td [(o)-28(ds.)-647(The)-401(in)28(terfaces)-401(for)-401(Kryl)1(o)27(v)-401(subspace)-400(m)-1(etho)-27(ds)-401(are)-401(a)28(v)55(ailable)-400(in)-401(the)-401(mo)-28(dule)]TJ/F30 9.9626 Tf 0 -11.955 Td [(psb_krylov_mod)]TJ/F8 9.9626 Tf 73.225 0 Td [(.)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(10.2)-1125(build)-375(|)-375(Builds)-375(a)-375(preconditioner)]TJ 0 g 0 G - 91.159 -569.96 Td [(143)]TJ 0 g 0 G -ET - -endstream -endobj -1834 0 obj -<< -/Length 8299 ->> -stream +/F30 9.9626 Tf 0 -19.764 Td [(call)-525(prec%build\050a,)-525(desc_a,)-525(info[,amold,vmold,imold]\051)]TJ 0 g 0 G +/F27 9.9626 Tf 0 -24.132 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G -BT -/F16 11.9552 Tf 150.705 706.129 Td [(psb)]TJ -ET -q -1 0 0 1 171.761 706.328 cm -[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S -Q -BT -/F16 11.9552 Tf 175.796 706.129 Td [(krylo)31(v)-375(|)-375(Krylo)31(v)-375(Metho)-31(ds)-375(Driv)31(er)-375(Routine)]TJ/F8 9.9626 Tf -25.091 -18.389 Td [(This)-343(subroutine)-342(is)-343(a)-343(driv)28(er)-343(that)-342(pro)27(vi)1(des)-343(a)-343(general)-343(in)28(terface)-343(for)-342(all)-343(the)-343(Krylo)28(v-)]TJ 0 -11.956 Td [(Subspace)-333(family)-334(metho)-27(ds)-334(implemen)28(ted)-333(in)-334(PSBLAS)-333(v)28(ersion)-333(2.)]TJ 14.944 -11.955 Td [(The)-333(stopping)-334(criterion)-333(can)-333(tak)28(e)-334(the)-333(follo)28(wing)-334(v)56(alues:)]TJ +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ 0 g 0 G -/F27 9.9626 Tf -14.944 -19.102 Td [(1)]TJ +/F27 9.9626 Tf -33.797 -22.879 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -22.879 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.71 0 Td [(norm)28(wise)-334(bac)28(kw)28(ard)-333(error)-334(in)-333(the)-333(in\014nit)28(y)-334(norm;)-333(the)-333(iteration)-333(is)-334(stopp)-28(ed)-333(when)]TJ/F11 9.9626 Tf 109.582 -26.078 Td [(er)-28(r)]TJ/F8 9.9626 Tf 16.95 0 Td [(=)]TJ/F14 9.9626 Tf 38.11 6.74 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(r)]TJ/F10 6.9738 Tf 4.495 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(k)]TJ +/F8 9.9626 Tf 10.551 0 Td [(the)-333(system)-334(sparse)-333(matrix.)-445(Scop)-27(e:)]TJ/F27 9.9626 Tf 148.886 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -134.53 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(,)-333(target.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(sparse)-333(matrix)-334(d)1(ata)-334(structure)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 194.05 0 Td [(psb)]TJ ET q -1 0 0 1 299.658 621.14 cm -[]0 d 0 J 0.398 w 0 0 m 70.572 0 l S +1 0 0 1 385.981 580.809 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 299.658 611.815 Td [(\050)]TJ/F14 9.9626 Tf 3.875 0 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(A)]TJ/F14 9.9626 Tf 7.472 0 Td [(kk)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F10 6.9738 Tf 5.693 -1.494 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.494 Td [(k)]TJ/F8 9.9626 Tf 7.196 0 Td [(+)]TJ/F14 9.9626 Tf 9.962 0 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(b)]TJ/F14 9.9626 Tf 4.276 0 Td [(k)]TJ/F8 9.9626 Tf 4.981 0 Td [(\051)]TJ/F11 9.9626 Tf 7.838 6.834 Td [(<)-278(eps)]TJ -0 g 0 G -/F27 9.9626 Tf -223.488 -29.952 Td [(2)]TJ -0 g 0 G -/F8 9.9626 Tf 10.71 0 Td [(Relativ)28(e)-334(residual)-333(in)-333(the)-333(2-norm;)-334(the)-333(iteration)-333(is)-334(stopp)-27(ed)-334(when)]TJ/F11 9.9626 Tf 135.514 -26.078 Td [(er)-28(r)]TJ/F8 9.9626 Tf 16.95 0 Td [(=)]TJ/F14 9.9626 Tf 12.178 6.74 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(r)]TJ/F10 6.9738 Tf 4.495 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(k)]TJ +/F30 9.9626 Tf 389.119 580.61 Td [(Tspmat)]TJ ET q -1 0 0 1 325.59 565.11 cm -[]0 d 0 J 0.398 w 0 0 m 18.708 0 l S +1 0 0 1 421.128 580.809 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F14 9.9626 Tf 325.59 555.785 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(b)]TJ/F14 9.9626 Tf 4.276 0 Td [(k)]TJ/F7 6.9738 Tf 4.981 -1.494 Td [(2)]TJ/F11 9.9626 Tf 8.433 8.328 Td [(<)-278(eps)]TJ +/F30 9.9626 Tf 424.267 580.61 Td [(type)]TJ 0 g 0 G -/F27 9.9626 Tf -197.556 -29.952 Td [(3)]TJ +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -294.483 -22.879 Td [(prec)]TJ 0 g 0 G -/F8 9.9626 Tf 10.71 0 Td [(Relativ)28(e)-334(residual)-333(reduction)-333(in)-333(the)-334(2-norm;)-333(the)-333(iteration)-334(is)-333(stopp)-28(ed)-333(when)]TJ/F11 9.9626 Tf 133.17 -26.078 Td [(er)-28(r)]TJ/F8 9.9626 Tf 16.949 0 Td [(=)]TJ/F14 9.9626 Tf 14.523 6.74 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(r)]TJ/F10 6.9738 Tf 4.495 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(k)]TJ +/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)]TJ -1.501 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.378 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-222(as:)-389(an)-222(already)-222(initialized)-222(precondtioner)-222(data)-223(structure)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 273.115 0 Td [(psb)]TJ ET q -1 0 0 1 323.246 509.08 cm -[]0 d 0 J 0.398 w 0 0 m 23.396 0 l S +1 0 0 1 465.045 510.11 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F14 9.9626 Tf 323.246 499.755 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(r)]TJ/F7 6.9738 Tf 4.495 -1.494 Td [(0)]TJ/F14 9.9626 Tf 4.469 1.494 Td [(k)]TJ/F7 6.9738 Tf 4.982 -1.494 Td [(2)]TJ/F11 9.9626 Tf 8.432 8.328 Td [(<)-278(eps)]TJ/F8 9.9626 Tf -199.9 -30.505 Td [(The)-442(b)-28(eha)28(viour)-443(is)-442(con)27(t)1(rolled)-443(b)28(y)-443(th)1(e)-443(istop)-442(argumen)27(t)-442(\050see)-443(later\051.)-771(In)-443(the)-442(ab)-28(o)28(v)28(e)]TJ 0 -11.955 Td [(form)28(ulae,)]TJ/F11 9.9626 Tf 43.127 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.495 Td [(i)]TJ/F8 9.9626 Tf 5.855 1.495 Td [(is)-255(the)-255(ten)28(tativ)28(e)-255(solution)-255(and)]TJ/F11 9.9626 Tf 122.118 0 Td [(r)]TJ/F10 6.9738 Tf 4.494 -1.495 Td [(i)]TJ/F8 9.9626 Tf 6.085 1.495 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(b)]TJ/F14 9.9626 Tf 4.925 0 Td [(\000)]TJ/F11 9.9626 Tf 8.399 0 Td [(Ax)]TJ/F10 6.9738 Tf 13.165 -1.495 Td [(i)]TJ/F8 9.9626 Tf 5.856 1.495 Td [(the)-255(corresp)-28(onding)-254(residual)]TJ -230.234 -11.956 Td [(at)-333(the)]TJ/F11 9.9626 Tf 29.334 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(-th)-333(iteration.)]TJ/F27 9.9626 Tf -31.39 -17.52 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.763 0 Td [(p)-126(s)-125(b)]TJ +/F30 9.9626 Tf 468.184 509.91 Td [(prec)]TJ ET q -1 0 0 1 201.196 434.852 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 489.733 510.11 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F8 9.9626 Tf 205.436 434.653 Td [(k)-126(r)-125(y)-126(l)-125(o)-126(v)-231(\050)-146(m)-40(e)-41(t)-40(h)-40(o)-40(d)-242(,)-194(a)-228(,)-255(p)-94(r)-94(e)-94(c)-349(,)-176(b)-191(,)-185(x)-209(,)-243(e)-81(p)-81(s)-323(,)-274(d)-113(e)-112(s)-113(c)]TJ +/F30 9.9626 Tf 492.871 509.91 Td [(type)]TJ +0 g 0 G +0 g 0 G +/F27 9.9626 Tf -342.166 -34.833 Td [(desc)]TJ ET q -1 0 0 1 402.384 434.852 cm -[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +1 0 0 1 172.619 475.276 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S Q BT -/F8 9.9626 Tf 406.495 434.653 Td [(a)-386(,)-288(i)-127(n)-127(f)-127(o)-302(,)-48(&)]TJ -226.787 -11.956 Td [(&)-579(i)-67(t)-67(m)-68(a)-67(x)-296(,)-311(i)-150(t)-149(e)-150(r)-460(,)]TJ/F27 9.9626 Tf 79.243 0 Td [(e)-65(r)-65(r)]TJ/F8 9.9626 Tf 18.89 0 Td [(,)-305(i)-144(t)-144(r)-144(a)-144(c)-145(e)-449(,)-319(i)-158(r)-158(s)-158(t)-476(,)-288(i)-126(s)-126(t)-126(o)-127(p)-413(,)-230(c)-69(o)-69(n)-69(d)-174(\051)]TJ -0 g 0 G -0 g 0 G -0 g 0 G -/F27 9.9626 Tf -127.136 -26.454 Td [(T)32(yp)-32(e:)]TJ -0 g 0 G -/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ -0 g 0 G -/F27 9.9626 Tf -33.797 -19.513 Td [(On)-383(En)32(try)]TJ -0 g 0 G -0 g 0 G - 0 -19.514 Td [(metho)-32(d)]TJ -0 g 0 G -/F8 9.9626 Tf 43.012 0 Td [(a)-235(string)-235(that)-235(de\014nes)-235(the)-236(iterativ)28(e)-235(metho)-28(d)-235(to)-235(b)-28(e)-235(used.)-412(Supp)-27(orted)-235(v)55(alues)]TJ -18.106 -11.955 Td [(are:)]TJ -0 g 0 G -/F27 9.9626 Tf 0 -19.513 Td [(CG:)]TJ -0 g 0 G -/F8 9.9626 Tf 25.447 0 Td [(the)-333(Conjugate)-334(Gradien)28(t)-333(metho)-28(d;)]TJ -0 g 0 G -/F27 9.9626 Tf -25.447 -15.529 Td [(CGS:)]TJ -0 g 0 G -/F8 9.9626 Tf 31.812 0 Td [(the)-333(Conjugate)-334(Gradien)28(t)-333(Stabilized)-333(metho)-28(d;)]TJ -0 g 0 G -/F27 9.9626 Tf -31.812 -15.528 Td [(GCR:)]TJ -0 g 0 G -/F8 9.9626 Tf 34.039 0 Td [(the)-333(Generalized)-334(Conjugate)-333(Residual)-333(metho)-28(d;)]TJ -0 g 0 G -/F27 9.9626 Tf -34.039 -15.529 Td [(F)32(CG:)]TJ -0 g 0 G -/F8 9.9626 Tf 32.337 0 Td [(the)-333(Flexible)-334(Conjugate)-333(Gradien)28(t)-333(me)-1(th)1(o)-28(d)]TJ -0 0 1 rg 0 0 1 RG -/F7 6.9738 Tf 177.626 3.616 Td [(5)]TJ -0 g 0 G -/F8 9.9626 Tf 4.47 -3.616 Td [(;)]TJ -0 g 0 G -/F27 9.9626 Tf -214.433 -15.528 Td [(BICG:)]TJ -0 g 0 G -/F8 9.9626 Tf 37.941 0 Td [(the)-333(Bi-Conjugate)-334(Gradien)28(t)-333(metho)-28(d;)]TJ -0 g 0 G -/F27 9.9626 Tf -37.941 -15.529 Td [(BICGST)96(AB:)]TJ -0 g 0 G -/F8 9.9626 Tf 68.133 0 Td [(the)-333(Bi-Conjugate)-334(Gradien)28(t)-333(Stabilized)-333(me)-1(th)1(o)-28(d;)]TJ -0 g 0 G -/F27 9.9626 Tf -68.133 -15.528 Td [(BICGST)96(ABL:)]TJ -0 g 0 G -/F8 9.9626 Tf 75.024 0 Td [(the)-222(Bi-Conjugate)-222(Gradien)27(t)-222(Stabilized)-222(metho)-28(d)-222(with)-222(restart-)]TJ -53.106 -11.955 Td [(ing;)]TJ -0 g 0 G -/F27 9.9626 Tf -21.918 -15.529 Td [(R)32(GMRES:)]TJ -0 g 0 G -/F8 9.9626 Tf 58.807 0 Td [(the)-333(Generalized)-334(Minimal)-333(Residual)-333(metho)-28(d)-333(with)-334(restarting.)]TJ -0 g 0 G -/F27 9.9626 Tf -83.713 -19.513 Td [(a)]TJ +/F27 9.9626 Tf 176.057 475.077 Td [(a)]TJ 0 g 0 G -/F8 9.9626 Tf 10.55 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(sparse)-333(matrix)]TJ/F11 9.9626 Tf 178.969 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(.)]TJ -172.085 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 10.55 0 Td [(the)-333(problem)-334(comm)28(unication)-333(descriptor.)-445(Scop)-27(e:)]TJ/F27 9.9626 Tf 208.247 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -219.243 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(,)-333(target.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(comm)28(unication)-333(des)-1(crip)1(tor)-334(data)-333(structure)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 247.683 0 Td [(psb)]TJ ET q -1 0 0 1 362.845 137.958 cm +1 0 0 1 439.613 439.41 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 365.983 137.759 Td [(Tspmat)]TJ +/F30 9.9626 Tf 442.751 439.211 Td [(desc)]TJ ET q -1 0 0 1 397.993 137.958 cm +1 0 0 1 464.3 439.41 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 401.131 137.759 Td [(type)]TJ +/F30 9.9626 Tf 467.438 439.211 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G +/F27 9.9626 Tf -337.655 -22.879 Td [(amold)]TJ +0 g 0 G +/F8 9.9626 Tf 35.374 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(the)-333(in)28(ternal)-333(matrix)-334(storage.)]TJ -10.467 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(an)-334(ob)-55(ject)-334(of)-333(a)-333(class)-334(deriv)28(ed)-333(from)]TJ/F30 9.9626 Tf 203.348 0 Td [(psb)]TJ ET q -1 0 0 1 150.705 129.78 cm -[]0 d 0 J 0.398 w 0 0 m 137.482 0 l S +1 0 0 1 395.279 368.711 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F32 5.9776 Tf 161.797 123.138 Td [(5)]TJ/F31 7.9701 Tf 4.151 -2.812 Td [(Note:)-472(the)-354(i)-1(mplemen)30(tation)-354(is)-354(for)]TJ/F33 7.9701 Tf 120.249 0 Td [(F)-148(C)-70(G)]TJ/F31 7.9701 Tf 19.733 0 Td [(\0501\051.)]TJ -0 g 0 G -0 g 0 G -/F8 9.9626 Tf 9.158 -29.888 Td [(144)]TJ -0 g 0 G +/F30 9.9626 Tf 398.417 368.512 Td [(T)]TJ ET - -endstream -endobj -1846 0 obj -<< -/Length 7119 ->> -stream -0 g 0 G -0 g 0 G -0 g 0 G +q +1 0 0 1 404.275 368.711 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q BT -/F27 9.9626 Tf 99.895 706.129 Td [(prec)]TJ -0 g 0 G -/F8 9.9626 Tf 26.408 0 Td [(The)-333(data)-334(structure)-333(con)28(taining)-333(the)-334(preconditioner.)]TJ -1.501 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 407.413 368.512 Td [(base)]TJ ET q -1 0 0 1 312.036 658.507 cm +1 0 0 1 428.962 368.711 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 658.308 Td [(prec)]TJ +/F30 9.9626 Tf 432.101 368.512 Td [(sparse)]TJ ET q -1 0 0 1 336.723 658.507 cm +1 0 0 1 464.11 368.711 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 658.308 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F30 9.9626 Tf 467.248 368.512 Td [(mat)]TJ/F8 9.9626 Tf 15.691 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -22.202 Td [(b)]TJ +/F27 9.9626 Tf -332.234 -22.879 Td [(vmold)]TJ 0 g 0 G -/F8 9.9626 Tf 11.347 0 Td [(The)-333(RHS)-334(v)28(ector.)]TJ 13.56 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(arra)27(y)-333(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 223.496 0 Td [(psb)]TJ +/F8 9.9626 Tf 35.851 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(the)-333(in)28(ternal)-333(v)27(ector)-333(storage.)]TJ -10.945 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(ob)-55(ject)-334(of)-333(a)-333(class)-334(deriv)28(ed)-333(from)]TJ/F30 9.9626 Tf 203.349 0 Td [(psb)]TJ ET q -1 0 0 1 364.616 588.484 cm +1 0 0 1 395.279 298.012 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 367.754 588.285 Td [(T)]TJ +/F30 9.9626 Tf 398.417 297.812 Td [(T)]TJ ET q -1 0 0 1 373.612 588.484 cm +1 0 0 1 404.275 298.012 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 376.751 588.285 Td [(vect)]TJ +/F30 9.9626 Tf 407.413 297.812 Td [(base)]TJ ET q -1 0 0 1 398.3 588.484 cm +1 0 0 1 428.962 298.012 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 401.438 588.285 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +/F30 9.9626 Tf 432.101 297.812 Td [(vect)]TJ +ET +q +1 0 0 1 453.65 298.012 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 456.788 297.812 Td [(type)]TJ/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -322.464 -22.202 Td [(x)]TJ +/F27 9.9626 Tf -327.004 -22.878 Td [(imold)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(The)-333(initial)-334(guess.)]TJ 13.879 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(arra)27(y)-333(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ -0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 223.496 0 Td [(psb)]TJ +/F8 9.9626 Tf 32.987 0 Td [(The)-333(desired)-334(dynamic)-333(t)28(yp)-28(e)-333(for)-334(the)-333(in)28(ternal)-333(in)27(teger)-333(v)28(ector)-334(storage.)]TJ -8.081 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-222(as:)-389(an)-222(ob)-56(ject)-222(of)-222(a)-222(class)-223(deriv)28(ed)-222(from)-222(\050in)28(teger\051)]TJ/F30 9.9626 Tf 233.542 0 Td [(psb)]TJ ET q -1 0 0 1 364.616 518.461 cm +1 0 0 1 425.471 227.312 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 367.754 518.262 Td [(T)]TJ +/F30 9.9626 Tf 428.61 227.113 Td [(T)]TJ ET q -1 0 0 1 373.612 518.461 cm +1 0 0 1 434.468 227.312 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 376.751 518.262 Td [(vect)]TJ +/F30 9.9626 Tf 437.606 227.113 Td [(base)]TJ ET q -1 0 0 1 398.3 518.461 cm +1 0 0 1 459.155 227.312 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 401.438 518.262 Td [(type)]TJ -0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ -0 g 0 G -/F27 9.9626 Tf -322.464 -22.203 Td [(eps)]TJ -0 g 0 G -/F8 9.9626 Tf 21.117 0 Td [(The)-333(stopping)-334(tolerance.)]TJ 3.79 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(real)-333(n)28(um)27(b)-27(er.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.907 -22.203 Td [(desc)]TJ +/F30 9.9626 Tf 462.293 227.113 Td [(vect)]TJ ET q -1 0 0 1 121.81 426.236 cm -[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +1 0 0 1 483.842 227.312 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F27 9.9626 Tf 125.247 426.036 Td [(a)]TJ +/F30 9.9626 Tf 486.98 227.113 Td [(type)]TJ/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -357.196 -24.133 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -22.879 Td [(prec)]TJ 0 g 0 G -/F8 9.9626 Tf 10.551 0 Td [(con)28(tains)-334(d)1(ata)-334(structures)-333(for)-333(com)-1(m)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)]TJ -1.502 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(precondtioner)-333(data)-333(structure)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +/F30 9.9626 Tf 194.77 0 Td [(psb)]TJ ET q -1 0 0 1 312.036 378.415 cm +1 0 0 1 386.7 132.48 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 315.174 378.216 Td [(desc)]TJ +/F30 9.9626 Tf 389.838 132.281 Td [(prec)]TJ ET q -1 0 0 1 336.723 378.415 cm +1 0 0 1 411.387 132.48 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 339.861 378.216 Td [(type)]TJ +/F30 9.9626 Tf 414.525 132.281 Td [(type)]TJ 0 g 0 G -/F8 9.9626 Tf 20.921 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -260.887 -22.203 Td [(itmax)]TJ +/F8 9.9626 Tf -99.437 -41.843 Td [(142)]TJ 0 g 0 G -/F8 9.9626 Tf 33.783 0 Td [(The)-333(maxim)27(um)-333(n)28(um)28(b)-28(er)-333(of)-334(iterations)-333(to)-333(p)-28(erform.)]TJ -8.876 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(itmax)]TJ/F8 9.9626 Tf 29.504 0 Td [(=)-278(1000.)]TJ -68.94 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable)]TJ/F11 9.9626 Tf 142.079 0 Td [(itmax)]TJ/F14 9.9626 Tf 29.504 0 Td [(\025)]TJ/F8 9.9626 Tf 10.516 0 Td [(1.)]TJ +ET + +endstream +endobj +1868 0 obj +<< +/Length 1094 +>> +stream 0 g 0 G -/F27 9.9626 Tf -207.006 -22.202 Td [(itrace)]TJ 0 g 0 G -/F8 9.9626 Tf 33.251 0 Td [(If)]TJ/F11 9.9626 Tf 8.911 0 Td [(>)]TJ/F8 9.9626 Tf 10.517 0 Td [(0)-228(prin)28(t)-228(out)-228(an)-227(informational)-228(message)-228(ab)-28(out)-228(con)28(v)28(ergence)-228(ev)28(e)-1(r)1(y)]TJ/F11 9.9626 Tf 265.015 0 Td [(itr)-28(ace)]TJ/F8 9.9626 Tf -292.787 -11.955 Td [(iterations.)-444(If)-334(=)-277(0)-334(prin)28(t)-333(a)-334(message)-333(in)-333(case)-334(of)-333(con)28(v)27(ergence)-333(failure.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(itr)-28(ace)]TJ/F8 9.9626 Tf 28.785 0 Td [(=)]TJ/F14 9.9626 Tf 10.516 0 Td [(\000)]TJ/F8 9.9626 Tf 7.748 0 Td [(1.)]TJ 0 g 0 G -/F27 9.9626 Tf -111.392 -34.158 Td [(irst)]TJ +BT +/F27 9.9626 Tf 99.895 706.129 Td [(info)]TJ 0 g 0 G -/F8 9.9626 Tf 21.857 0 Td [(An)-333(in)28(te)-1(ger)-333(sp)-28(ecifying)-333(the)-333(restart)-334(parameter.)]TJ 3.05 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(V)83(alues:)]TJ/F11 9.9626 Tf 37.506 0 Td [(ir)-28(st)-447(>)]TJ/F8 9.9626 Tf 33.135 0 Td [(0.)-750(This)-435(is)-435(emplo)28(y)28(e)-1(d)-435(for)-435(the)-435(BiCGST)84(AB)-1(L)-435(or)-435(R)28(GMRES)]TJ -70.641 -11.955 Td [(metho)-28(ds,)-333(otherwise)-334(it)-333(is)-333(ignored.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ -24.907 -21.918 Td [(The)]TJ/F30 9.9626 Tf 21.638 0 Td [(amold)]TJ/F8 9.9626 Tf 26.152 0 Td [(,)]TJ/F30 9.9626 Tf 7.536 0 Td [(vmold)]TJ/F8 9.9626 Tf 30.631 0 Td [(and)]TJ/F30 9.9626 Tf 20.531 0 Td [(imold)]TJ/F8 9.9626 Tf 30.631 0 Td [(argumen)28(ts)-450(ma)28(y)-450(b)-27(e)-450(emplo)28(y)27(ed)-449(to)-450(in)28(terface)-450(with)]TJ -137.119 -11.955 Td [(sp)-28(ecial)-333(devices,)-334(suc)28(h)-333(as)-334(GPUs)-333(and)-333(other)-333(ac)-1(celerators.)]TJ 0 g 0 G - 139.477 -29.888 Td [(145)]TJ + 164.384 -533.997 Td [(143)]TJ 0 g 0 G ET endstream endobj -1852 0 obj +1876 0 obj << -/Length 4673 +/Length 5862 >> stream 0 g 0 G 0 g 0 G -0 g 0 G BT -/F27 9.9626 Tf 150.705 706.129 Td [(istop)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(10.3)-1125(apply)-375(|)-375(Preconditioner)-375(application)-375(routine)]TJ 0 g 0 G -/F8 9.9626 Tf 29.232 0 Td [(An)-333(in)28(tege)-1(r)-333(sp)-28(ecifying)-333(the)-333(stopping)-333(c)-1(r)1(iterion.)]TJ -4.326 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(V)83(alues:)-478(1:)-479(use)-351(the)-350(norm)28(wise)-351(bac)28(kw)28(ard)-351(error,)-354(2:)-479(use)-350(the)-351(scaled)-350(2-norm)-351(of)]TJ 0 -11.955 Td [(the)-333(residual,)-334(3:)-444(use)-333(the)-334(residual)-333(reduction)-333(in)-334(the)-333(2-norm.)-444(Default:)-445(2.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.906 -19.925 Td [(On)-383(Return)]TJ +/F30 9.9626 Tf 0 -18.389 Td [(call)-525(prec%apply\050x,y,desc_a,info,trans,work\051)]TJ 0 -11.956 Td [(call)-525(prec%apply\050x,desc_a,info,trans\051)]TJ 0 g 0 G +/F27 9.9626 Tf 0 -21.917 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ 0 g 0 G - 0 -19.926 Td [(x)]TJ 0 g 0 G -/F8 9.9626 Tf 11.028 0 Td [(The)-333(computed)-334(solution.)]TJ 13.878 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(ar)1(ra)27(y)-333(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ + 0 -19.925 Td [(prec)]TJ +0 g 0 G +/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)-445(Scop)-27(e:)]TJ/F27 9.9626 Tf 119.33 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -120.832 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(preconditioner)-333(data)-333(structure)]TJ 0 0 1 rg 0 0 1 RG -/F30 9.9626 Tf 223.496 0 Td [(psb)]TJ +/F30 9.9626 Tf 197.538 0 Td [(psb)]TJ +ET +q +1 0 0 1 389.467 578.35 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 392.606 578.15 Td [(prec)]TJ +ET +q +1 0 0 1 414.155 578.35 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 417.293 578.15 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -287.509 -19.925 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(the)-333(source)-334(v)28(ector.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 113.851 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -99.972 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(rank)-333(one)-333(arra)27(y)-333(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 223.495 0 Td [(psb)]TJ ET q -1 0 0 1 415.426 558.881 cm +1 0 0 1 415.426 522.559 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 418.564 558.682 Td [(T)]TJ +/F30 9.9626 Tf 418.564 522.36 Td [(T)]TJ ET q -1 0 0 1 424.422 558.881 cm +1 0 0 1 424.422 522.559 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 427.56 558.682 Td [(vect)]TJ +/F30 9.9626 Tf 427.56 522.36 Td [(vect)]TJ ET q -1 0 0 1 449.109 558.881 cm +1 0 0 1 449.109 522.559 cm []0 d 0 J 0.398 w 0 0 m 3.138 0 l S Q BT -/F30 9.9626 Tf 452.247 558.682 Td [(type)]TJ +/F30 9.9626 Tf 452.247 522.36 Td [(type)]TJ 0 g 0 G /F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G -/F27 9.9626 Tf -322.464 -19.925 Td [(iter)]TJ -0 g 0 G -/F8 9.9626 Tf 22.589 0 Td [(The)-333(n)27(u)1(m)27(b)-27(e)-1(r)-333(of)-333(iterations)-333(p)-28(erformed.)]TJ 2.317 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Returned)-333(as:)-445(an)-333(in)28(teger)-334(v)56(ariable.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.925 Td [(err)]TJ -0 g 0 G -/F8 9.9626 Tf 19.669 0 Td [(The)-333(con)27(v)28(ergence)-333(estimate)-334(on)-333(exit.)]TJ 5.237 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Returned)-333(as:)-445(a)-333(real)-333(n)27(um)28(b)-28(er.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.925 Td [(cond)]TJ -0 g 0 G -/F8 9.9626 Tf 28.532 0 Td [(An)-280(estimate)-280(of)-279(the)-280(condition)-280(n)28(um)28(b)-28(er)-280(of)-279(matrix)]TJ/F11 9.9626 Tf 204.226 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(;)-298(only)-279(a)28(v)55(ailable)-280(with)-279(the)]TJ/F11 9.9626 Tf -215.324 -11.956 Td [(C)-72(G)]TJ/F8 9.9626 Tf 18.988 0 Td [(metho)-28(d)-333(on)-333(real)-334(data.)]TJ -18.988 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Returned)-287(as:)-421(a)-287(real)-287(n)28(um)28(b)-28(er.)-429(A)-287(correct)-287(result)-286(will)-287(b)-28(e)-287(greater)-287(than)-287(or)-286(equal)]TJ 0 -11.955 Td [(to)-267(one;)-288(if)-267(sp)-28(eci\014ed)-266(for)-267(non-real)-266(data,)-280(or)-266(an)-267(error)-266(o)-28(ccurred,)-280(zero)-267(is)-266(returned.)]TJ -0 g 0 G -/F27 9.9626 Tf -24.906 -19.926 Td [(info)]TJ -0 g 0 G -/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(te)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ -0 g 0 G - 139.477 -173.35 Td [(146)]TJ -0 g 0 G +/F27 9.9626 Tf -322.464 -19.926 Td [(desc)]TJ ET - -endstream -endobj -1856 0 obj -<< -/Length 7014 ->> -stream -0 g 0 G -0 g 0 G +q +1 0 0 1 172.619 502.634 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q BT -/F16 14.3462 Tf 99.895 706.129 Td [(References)]TJ -0 g 0 G -/F8 9.9626 Tf 4.982 -21.821 Td [([1])]TJ -0 g 0 G - [-500(D.)-441(Barbieri,)-468(V.)-441(Cardellini,)-467(S.)-441(Filipp)-28(one)-441(and)-441(D.)-441(Rouson)]TJ/F17 9.9626 Tf 267.833 0 Td [(Design)-457(Patterns)]TJ -252.336 -11.955 Td [(for)-441(S)-1(ci)1(ent)-1(i)1(\014)-1(c)-441(Computations)-442(on)-441(Sp)51(arse)-441(Matric)51(es)]TJ/F8 9.9626 Tf 210.802 0 Td [(,)-447(HPSS)-424(2011,)-447(Algorithms)]TJ -210.802 -11.955 Td [(and)-375(Programming)-374(T)83(o)-28(ols)-375(for)-374(Next-Generation)-375(High-P)28(erformance)-375(Scien)28(ti\014c)]TJ 0 -11.956 Td [(Soft)28(w)28(are,)-334(Bordeaux,)-333(Sep.)-333(2011)]TJ -0 g 0 G - -15.497 -18.666 Td [([2])]TJ -0 g 0 G - [-500(G.)-341(Bella,)-343(S.)-341(Filipp)-28(one,)-343(A.)-341(De)-341(Maio)-341(and)-341(M.)-341(T)84(esta,)]TJ/F17 9.9626 Tf 235.488 0 Td [(A)-365(Simulation)-365(Mo)51(del)-364(for)]TJ -219.991 -11.955 Td [(F)77(or)51(est)-365(Fir)51(es)]TJ/F8 9.9626 Tf 52.03 0 Td [(,)-343(in)-341(J.)-340(Dongarra,)-343(K.)-341(Madsen,)-343(J.)-341(W)84(asniewski,)-343(editors,)-343(Pro)-28(ceed-)]TJ -52.03 -11.955 Td [(ings)-394(of)-395(P)84(ARA)-395(04)-394(W)83(orkshop)-394(on)-395(State)-394(of)-395(the)-394(Art)-394(in)-395(Scien)28(ti\014c)-394(Com)-1(p)1(uting,)]TJ 0 -11.955 Td [(pp.)-333(546{553,)-334(Lecture)-333(Notes)-333(in)-334(Computer)-333(Science,)-333(Springer,)-334(2005.)]TJ -0 g 0 G - -15.497 -18.666 Td [([3])]TJ -0 g 0 G - [-500(A.)-316(Buttari,)-320(D.)-317(di)-316(Sera\014no,)-320(P)83(.)-316(D'Am)28(bra,)-320(S.)-317(Filipp)-27(one,)-100(2LEV-D2P4:)-436(a)-316(pac)28(k-)]TJ 15.497 -11.955 Td [(age)-388(of)-388(high-p)-28(erformance)-388(preconditioners,)-218(Applicable)-388(Alge)-1(b)1(ra)-389(in)-388(Engin)1(e)-1(er-)]TJ 0 -11.956 Td [(ing,)-393(Comm)27(un)1(ications)-382(and)-381(Computing,)-393(V)83(olume)-381(18,)-393(Num)27(b)-27(er)-382(3,)-393(Ma)28(y)83(,)-393(2007,)]TJ 0 -11.955 Td [(pp.)-333(223-239)]TJ -0 g 0 G - -15.497 -18.666 Td [([4])]TJ -0 g 0 G - [-500(P)83(.)-691(D'Am)28(bra,)-780(S.)-691(Filipp)-28(one,)-780(D.)-691(Di)-691(Sera\014no)-819(On)-691(the)-691(Dev)28(elopmen)28(t)-691(of)]TJ 15.497 -11.955 Td [(PSBLAS-based)-430(P)28(arallel)-430(Tw)28(o-lev)28(el)-430(Sc)27(h)28(w)28(arz)-430(Preconditioners)-731(Applied)-430(Nu-)]TJ 0 -11.955 Td [(merical)-245(Mathematics)-1(,)-262(Elsevier)-246(Science,)-263(V)83(ol)1(ume)-246(57,)-263(Issues)-245(11-12,)-263(No)27(v)28(em)28(b)-28(er-)]TJ 0 -11.955 Td [(Decem)28(b)-28(er)-333(2007)-1(,)-333(P)28(ages)-333(1181-1196.)]TJ -0 g 0 G - -15.497 -18.667 Td [([5])]TJ -0 g 0 G - [-500(Dongarra,)-529(J.)-490(J.,)-529(DuCroz,)-529(J.,)-529(Hammarling,)-529(S.)-490(and)-490(Hanson,)-529(R.,)-529(An)-490(Ex-)]TJ 15.497 -11.955 Td [(tended)-478(Set)-478(of)-478(F)83(ortran)-478(Basic)-478(Linear)-478(Algebra)-478(Subprograms,)-514(A)28(C)-1(M)-477(T)83(rans.)]TJ 0 -11.955 Td [(Math.)-333(Soft)28(w.)-334(v)28(ol.)-333(14,)-334(1{17,)-333(1988.)]TJ -0 g 0 G - -15.497 -18.666 Td [([6])]TJ +/F27 9.9626 Tf 176.057 502.434 Td [(a)]TJ 0 g 0 G - [-500(Dongarra,)-444(J.,)-444(DuCroz,)-444(J.,)-445(Hammarling,)-444(S.)-422(and)-422(Du\013,)-444(I.,)-444(A)-422(Set)-422(of)-422(lev)28(el)-422(3)]TJ 15.497 -11.955 Td [(Basic)-357(Linear)-357(Algebra)-357(Subpr)1(ogram)-1(s,)-362(A)27(CM)-356(T)83(rans.)-357(Math.)-357(Soft)28(w.)-357(v)28(ol.)-357(16,)-362(1{)]TJ 0 -11.955 Td [(17,)-333(1990.)]TJ +/F8 9.9626 Tf 10.55 0 Td [(the)-333(problem)-334(comm)28(unication)-333(descriptor.)-445(Scop)-27(e:)]TJ/F27 9.9626 Tf 208.247 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -219.243 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(comm)28(unication)-333(data)-334(structure)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 201.08 0 Td [(psb)]TJ +ET +q +1 0 0 1 393.01 466.768 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 396.148 466.569 Td [(desc)]TJ +ET +q +1 0 0 1 417.697 466.768 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 420.835 466.569 Td [(type)]TJ 0 g 0 G - -15.497 -18.666 Td [([7])]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G - [-500(J.)-265(J.)-266(Dongarra)-266(and)-265(R.)-266(C.)-265(Whaley)83(,)]TJ/F17 9.9626 Tf 162.063 0 Td [(A)-295(User's)-296(Guide)-295(to)-296(the)-295(BLA)25(CS)-295(v.)-295(1.1)]TJ/F8 9.9626 Tf 156.589 0 Td [(,)-279(La-)]TJ -303.155 -11.956 Td [(pac)28(k)-291(W)84(orking)-291(Note)-290(94,)-299(T)83(ec)28(h.)-290(Rep.)-291(UT-CS-95-281,)-299(Univ)28(ersit)28(y)-290(of)-291(T)84(ennesse)-1(e,)]TJ 0 -11.955 Td [(Marc)28(h)-334(1995)-333(\050up)-28(dated)-333(Ma)28(y)-333(1997\051.)]TJ +/F27 9.9626 Tf -291.052 -19.925 Td [(trans)]TJ 0 g 0 G - -15.497 -18.666 Td [([8])]TJ +/F8 9.9626 Tf 30.609 0 Td [(Scop)-28(e:)]TJ -5.702 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(c)28(haracter.)]TJ 0 g 0 G - [-500(I.)-488(Du\013,)-527(M.)-488(Marrone,)-526(G.)-488(Radicati)-488(and)-488(C.)-488(Vittoli,)]TJ/F17 9.9626 Tf 244.569 0 Td [(L)51(evel)-500(3)-500(Basic)-500(Line)51(ar)]TJ -229.072 -11.955 Td [(A)26(lgebr)51(a)-463(Subpr)52(o)51(gr)51(ams)-463(f)1(or)-463(Sp)51(arse)-462(Matric)51(es:)-669(a)-462(User)-462(L)51(evel)-463(Interfac)52(e)]TJ/F8 9.9626 Tf 292.206 0 Td [(,)-475(A)27(CM)]TJ -292.206 -11.955 Td [(T)83(ransactions)-333(on)-333(Mathematical)-334(Soft)28(w)28(are,)-333(23\0503\051,)-334(pp.)-333(379{401,)-333(1997.)]TJ +/F27 9.9626 Tf -24.907 -19.925 Td [(w)32(ork)]TJ 0 g 0 G - -15.497 -18.666 Td [([9])]TJ +/F8 9.9626 Tf 29.431 0 Td [(an)-333(optional)-334(w)28(ork)-333(space)-333(Scop)-28(e:)]TJ/F27 9.9626 Tf 135.963 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -140.487 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(double)-333(precision)-333(arra)27(y)84(.)]TJ 0 g 0 G - [-500(I.)-358(Du\013,)-365(M.)-359(Heroux)-358(and)-359(R.)-358(P)27(ozo,)]TJ/F17 9.9626 Tf 162.007 0 Td [(A)26(n)-381(Overview)-381(of)-381(the)-381(Sp)51(arse)-381(Basic)-381(Line)51(ar)]TJ -146.51 -11.956 Td [(A)26(lgebr)51(a)-348(S)-1(u)1(bpr)51(o)51(gr)51(ams:)-455(the)-348(New)-349(Standar)51(d)-348(fr)51(om)-348(the)-348(BLAS)-348(T)76(e)51(chnic)52(al)-349(F)77(orum)]TJ/F8 9.9626 Tf 320.465 0 Td [(,)]TJ -320.465 -11.955 Td [(A)28(CM)-334(T)84(ransactions)-334(on)-333(Mathematical)-333(Soft)28(w)27(are,)-333(28\0502\051,)-333(pp.)-333(23)-1(9{267,)-333(2002.)]TJ +/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ 0 g 0 G - -20.479 -18.666 Td [([10])]TJ 0 g 0 G - [-500(S.)-451(Filipp)-28(one)-451(and)-451(M.)-451(Cola)-56(janni,)]TJ/F17 9.9626 Tf 165.708 0 Td [(PSBLAS:)-466(A)-466(Libr)51(ary)-466(for)-467(Par)51(al)-51(lel)-466(Line)51(ar)]TJ -145.229 -11.955 Td [(A)26(lgebr)51(a)-420(Computation)-420(on)-420(Sp)51(arse)-420(Matric)51(es)]TJ/F8 9.9626 Tf 181.375 0 Td [(,)-661(A)27(CM)-400(T)83(ransactions)-401(on)-401(Mathe-)]TJ -181.375 -11.955 Td [(matical)-333(Soft)27(w)28(are,)-333(26\0504\051,)-333(pp.)-334(527{550,)-333(2000.)]TJ + 0 -19.925 Td [(y)]TJ 0 g 0 G - -20.479 -18.666 Td [([11])]TJ +/F8 9.9626 Tf 11.028 0 Td [(the)-333(destination)-334(v)28(ector.)-444(Scop)-28(e:)]TJ/F27 9.9626 Tf 134.856 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -120.977 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(inout)]TJ/F8 9.9626 Tf 26.097 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-444(a)-334(rank)-333(one)-333(arra)27(y)-333(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 223.495 0 Td [(psb)]TJ +ET +q +1 0 0 1 415.426 277.478 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 418.564 277.279 Td [(T)]TJ +ET +q +1 0 0 1 424.422 277.478 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 427.56 277.279 Td [(vect)]TJ +ET +q +1 0 0 1 449.109 277.478 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 452.247 277.279 Td [(type)]TJ 0 g 0 G - [-500(S.)-425(Filipp)-27(one)-425(and)-425(A.)-425(Buttari,)]TJ/F17 9.9626 Tf 152.315 0 Td [(Obje)51(ct-Oriente)51(d)-442(T)77(e)51(chniques)-442(for)-441(Sp)51(arse)-442(Ma-)]TJ -131.836 -11.955 Td [(trix)-407(Computations)-406(in)-407(F)77(ortr)51(an)-407(2003)]TJ/F8 9.9626 Tf 153.485 0 Td [(,)-615(A)28(CM)-387(T)84(ransactions)-387(on)-386(Mathematical)]TJ -153.485 -11.956 Td [(Soft)28(w)28(are,)-334(38\0504\051,)-333(2012.)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G - -20.479 -18.666 Td [([12])]TJ +/F27 9.9626 Tf -322.464 -19.926 Td [(info)]TJ 0 g 0 G - [-500(S.)-267(Filipp)-27(one,)-280(P)83(.)-267(D'Am)28(bra,)-280(M.)-267(Cola)-55(janni,)]TJ/F17 9.9626 Tf 197.776 0 Td [(Using)-297(a)-296(Par)51(al)-51(lel)-297(Libr)52(ary)-297(of)-296(Sp)51(arse)]TJ -177.297 -11.955 Td [(Line)51(ar)-352(A)26(lgebr)51(a)-352(in)-352(a)-352(Fluid)-352(Dynami)1(cs)-352(Applic)51(ations)-352(Co)51(de)-352(on)-352(Linux)-352(Clusters)]TJ/F8 9.9626 Tf 320.465 0 Td [(,)]TJ -320.465 -11.955 Td [(in)-398(G.)-399(Jou)1(b)-28(ert,)-415(A.)-398(Murli,)-414(F.)-399(P)28(eters,)-414(M.)-399(V)84(annesc)27(hi,)-414(editors,)-415(P)28(arallel)-398(Com-)]TJ 0 -11.955 Td [(puting)-354(-)-354(Adv)55(ances)-354(&)-354(Curren)28(t)-355(Issues,)-359(pp.)-354(441{448,)-360(Imp)-28(erial)-354(College)-354(Press,)]TJ 0 -11.955 Td [(2002.)]TJ +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.148 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)27(t)1(e)-1(ger)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detec)-1(ted.)]TJ 0 g 0 G - 143.905 -29.888 Td [(147)]TJ + 139.477 -119.095 Td [(144)]TJ 0 g 0 G ET endstream endobj -1864 0 obj +1881 0 obj << -/Length 3124 +/Length 2992 >> stream 0 g 0 G 0 g 0 G -0 g 0 G BT -/F8 9.9626 Tf 150.705 706.129 Td [([13])]TJ +/F16 11.9552 Tf 99.895 706.129 Td [(10.4)-1125(descr)-555(|)-556(Prin)32(ts)-556(a)-555(description)-555(of)-556(curren)32(t)-556(precondi-)]TJ 37.36 -13.948 Td [(tioner)]TJ 0 g 0 G - [-500(Gamma,)-494(E.,)-987(Helm,)-493(R.,)-987(Johnson,)-494(R.,)-987(and)-923(Vlissides,)-494(J.)-461(1995.)]TJ/F17 9.9626 Tf 314.294 0 Td [(Design)]TJ -293.815 -11.955 Td [(Patterns:)-427(Elements)-293(of)-292(R)51(eusable)-293(Obje)51(ct-Oriente)51(d)-292(Softwar)51(e)]TJ/F8 9.9626 Tf 246.617 0 Td [(.)-262(Addison-W)83(esley)83(.)]TJ 0 g 0 G - -267.096 -19.926 Td [([14])]TJ +/F30 9.9626 Tf -37.36 -18.389 Td [(call)-525(prec%descr\050\051)]TJ 0 -11.955 Td [(call)-525(prec%descr\050iout,)-525(root\051)]TJ 0 g 0 G - [-500(Karypis,)-561(G.)-515(and)-515(Kumar,)-561(V.,)]TJ/F17 9.9626 Tf 157.276 0 Td [(METIS:)-525(Unstructur)51(e)51(d)-525(Gr)51(aph)-525(Partitioning)]TJ -136.797 -11.955 Td [(and)-413(Sp)51(arse)-413(Matrix)-414(Or)51(deri)1(ng)-414(System)]TJ/F8 9.9626 Tf 158.597 0 Td [(.)-394(Minneap)-27(olis,)-409(MN)-394(55455:)-565(Univ)28(ersit)28(y)]TJ -158.597 -11.955 Td [(of)-420(Minnesota,)-441(Departmen)27(t)-420(of)-419(Computer)-420(Science,)-442(1995.)-420(In)28(ternet)-420(Address:)]TJ/F30 9.9626 Tf 0 -11.955 Td [(http://www.cs.umn.edu/~karypis)]TJ/F8 9.9626 Tf 156.91 0 Td [(.)]TJ +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ 0 g 0 G - -177.389 -19.925 Td [([15])]TJ +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ 0 g 0 G - [-500(La)28(wson,)-339(C.,)-339(Hanson,)-339(R.,)-339(Kincaid,)-339(D.)-338(and)-338(Krogh,)-339(F.,)-339(Basic)-338(Linear)-338(Algebra)]TJ 20.479 -11.956 Td [(Subprograms)-337(for)-336(Fortran)-337(usage,)-338(A)28(CM)-337(T)84(rans.)-337(Math.)-337(Soft)28(w.)-337(v)28(ol.)-337(5,)-337(38{329,)]TJ 0 -11.955 Td [(1979.)]TJ +/F27 9.9626 Tf -33.797 -19.925 Td [(On)-383(En)32(try)]TJ 0 g 0 G - -20.479 -19.925 Td [([16])]TJ 0 g 0 G - [-500(Mac)28(hiels,)-372(L.)-364(and)-364(Deville,)-372(M.)]TJ/F17 9.9626 Tf 148.97 0 Td [(F)77(ortr)51(an)-386(90:)-517(A)26(n)-387(entry)-386(to)-386(obje)51(ct-oriente)51(d)-386(pr)51(o-)]TJ -128.491 -11.955 Td [(gr)51(amming)-492(for)-492(the)-492(soluti)1(on)-492(of)-492(p)51(artial)-492(di\013er)51(ential)-492(e)51(quations.)]TJ/F8 9.9626 Tf 267.456 0 Td [(A)28(CM)-479(T)83(rans.)]TJ -267.456 -11.955 Td [(Math.)-333(Soft)28(w.)-334(v)28(ol.)-333(23,)-334(32{49.)]TJ + 0 -19.926 Td [(prec)]TJ 0 g 0 G - -20.479 -19.926 Td [([17])]TJ +/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)-445(Scop)-27(e:)]TJ/F27 9.9626 Tf 119.331 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -120.832 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(preconditioner)-333(data)-333(structure)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 197.537 0 Td [(psb)]TJ +ET +q +1 0 0 1 338.658 564.402 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 341.796 564.203 Td [(prec)]TJ +ET +q +1 0 0 1 363.345 564.402 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 366.483 564.203 Td [(type)]TJ 0 g 0 G - [-500(Metcalf,)-434(M.,)-434(Reid,)-433(J.)-414(and)-414(Cohen,)-434(M.)]TJ/F17 9.9626 Tf 189.335 0 Td [(F)77(ortr)51(an)-432(95/2003)-432(explaine)51(d.)]TJ/F8 9.9626 Tf 123.907 0 Td [(Oxford)]TJ -292.763 -11.955 Td [(Univ)28(ersit)28(y)-334(Press,)-333(2004.)]TJ +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ 0 g 0 G - -20.479 -19.925 Td [([18])]TJ +/F27 9.9626 Tf -287.51 -19.925 Td [(iout)]TJ 0 g 0 G - [-500(Rouson,)-374(D.W.I.,)-374(Xia,)-374(J.,)-374(Xu,)-373(X.:)-510(Scien)28(ti\014c)-366(Soft)28(w)28(are)-366(Design:)-510(Th)1(e)-366(Ob)-56(ject-)]TJ 20.479 -11.955 Td [(Orien)28(ted)-333(W)83(a)28(y.)-334(Cam)28(bridge)-333(Univ)28(ersit)27(y)-333(Press)-333(\0502011\051)]TJ +/F8 9.9626 Tf 24.713 0 Td [(output)-333(unit.)-445(S)1(c)-1(op)-27(e:)]TJ/F27 9.9626 Tf 89.941 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -89.747 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(n)27(um)28(b)-28(er.)-444(Default:)-444(default)-334(outp)1(ut)-334(unit.)]TJ 0 g 0 G - -20.479 -19.926 Td [([19])]TJ +/F27 9.9626 Tf -24.907 -19.925 Td [(ro)-32(ot)]TJ 0 g 0 G - [-500(M.)-443(Snir,)-471(S.)-443(Otto,)-471(S.)-443(Huss-Lederman,)-471(D.)-443(W)84(alk)27(er)-443(and)-443(J.)-443(Dongarra,)]TJ/F17 9.9626 Tf 321.124 0 Td [(MPI:)]TJ -300.645 -11.955 Td [(The)-365(Complete)-365(R)51(efer)51(enc)51(e.)-365(V)76(ol)1(ume)-366(1)-365(-)-365(The)-365(MPI)-365(Cor)51(e)]TJ/F8 9.9626 Tf 228.803 0 Td [(,)-343(sec)-1(on)1(d)-342(edition,)-343(MIT)]TJ -228.803 -11.955 Td [(Press,)-333(1998.)]TJ +/F8 9.9626 Tf 25.931 0 Td [(Pro)-28(cess)-333(from)-334(wh)1(ic)27(h)-333(to)-333(prin)28(t)-334(Scop)-28(e:)]TJ/F27 9.9626 Tf 157.244 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -158.268 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-478(as:)-733(an)-478(in)28(teger)-478(n)28(um)28(b)-28(er)-478(b)-28(et)28(w)28(een)-478(0)-478(and)]TJ/F11 9.9626 Tf 220.072 0 Td [(np)]TJ/F14 9.9626 Tf 14.166 0 Td [(\000)]TJ/F8 9.9626 Tf 10.923 0 Td [(1,)-514(in)-478(whic)28(h)-478(case)]TJ -245.161 -11.955 Td [(the)-410(sp)-28(eci\014ed)-410(pro)-28(cess)-410(will)-411(pr)1(in)27(t)-410(the)-410(description,)-429(or)]TJ/F14 9.9626 Tf 225 0 Td [(\000)]TJ/F8 9.9626 Tf 7.748 0 Td [(1,)-429(in)-411(whic)28(h)-410(case)-410(all)]TJ -232.748 -11.955 Td [(pro)-28(cesses)-333(will)-334(prin)28(t.)-444(Default:)-444(0.)]TJ 0 g 0 G - 143.905 -352.677 Td [(148)]TJ + 139.477 -338.273 Td [(145)]TJ 0 g 0 G ET endstream endobj -1777 0 obj +1782 0 obj << /Type /ObjStm /N 100 -/First 961 -/Length 10503 +/First 967 +/Length 10032 >> stream -1772 0 1774 118 525 177 1775 235 1776 294 1771 353 1779 459 1781 577 529 635 1778 692 -1785 798 1782 946 1783 1093 1787 1243 533 1302 1788 1360 1784 1418 1794 1575 1789 1741 1790 1884 -1791 2029 1792 2176 1796 2323 537 2381 1793 2438 1798 2544 1800 2662 1797 2721 1806 2814 1801 2980 -1802 3126 1803 3269 1804 3416 1808 3560 541 3618 1805 3675 1812 3781 1810 3920 1814 4066 545 4125 -1811 4183 1816 4315 1818 4433 549 4491 1815 4548 1822 4654 1819 4802 1820 4948 1824 5095 553 5154 -1821 5212 1826 5318 1828 5436 557 5494 1825 5551 1833 5644 1829 5792 1830 5941 1835 6085 561 6144 -1836 6202 1837 6261 1838 6320 1839 6379 1832 6437 1845 6634 1831 6800 1841 6947 1842 7089 1843 7233 -1847 7379 1844 7437 1851 7556 1849 7695 1853 7839 1850 7898 1855 8004 1857 8122 1858 8180 754 8238 -1859 8295 805 8352 804 8409 760 8466 761 8523 777 8580 757 8637 758 8694 1860 8751 753 8809 -1861 8866 1854 8924 1863 9017 1865 9135 921 9194 792 9252 759 9310 756 9368 752 9426 755 9484 -% 1772 0 obj -<< -/Type /Page -/Contents 1773 0 R -/Resources 1771 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1770 0 R ->> -% 1774 0 obj -<< -/D [1772 0 R /XYZ 149.705 753.953 null] ->> -% 525 0 obj -<< -/D [1772 0 R /XYZ 150.705 720.077 null] ->> -% 1775 0 obj -<< -/D [1772 0 R /XYZ 150.705 679.769 null] ->> -% 1776 0 obj -<< -/D [1772 0 R /XYZ 150.705 679.769 null] ->> -% 1771 0 obj +497 0 1780 57 1781 115 1776 173 1784 266 1786 384 501 443 1787 501 1788 560 1783 619 +1790 712 1792 830 505 888 1793 945 1794 1003 1789 1061 1796 1154 1798 1272 509 1331 1799 1389 +1800 1448 1795 1507 1802 1613 1804 1731 513 1789 1801 1846 1808 1939 1806 2078 1810 2222 517 2281 +1811 2339 1812 2398 1807 2457 1815 2563 1813 2702 1817 2846 521 2904 1818 2961 1819 3019 1814 3077 +1822 3183 1820 3322 1824 3466 525 3525 1825 3583 1826 3642 1821 3701 1828 3807 1830 3925 529 3983 +1831 4040 1832 4098 1827 4156 1835 4262 1833 4401 1837 4544 533 4603 1838 4661 1839 4720 1834 4779 +1841 4885 1843 5003 537 5061 1844 5118 1845 5176 1840 5234 1848 5340 1850 5458 541 5517 1847 5575 +1854 5681 1851 5829 1852 5976 1856 6126 545 6184 1857 6241 1853 6299 1863 6456 1858 6622 1859 6765 +1860 6909 1861 7056 1865 7203 549 7262 1862 7320 1867 7426 1869 7544 1866 7602 1875 7695 1870 7861 +1871 8007 1872 8150 1873 8297 1877 8441 553 8500 1874 8558 1880 8664 1878 8803 1882 8950 557 9008 +% 497 0 obj << -/Font << /F16 570 0 R /F27 572 0 R /F8 573 0 R /F30 784 0 R >> -/ProcSet [ /PDF /Text ] +/D [1777 0 R /XYZ 99.895 716.092 null] >> -% 1779 0 obj +% 1780 0 obj << -/Type /Page -/Contents 1780 0 R -/Resources 1778 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1770 0 R +/D [1777 0 R /XYZ 99.895 681.762 null] >> % 1781 0 obj << -/D [1779 0 R /XYZ 98.895 753.953 null] ->> -% 529 0 obj -<< -/D [1779 0 R /XYZ 99.895 716.092 null] +/D [1777 0 R /XYZ 99.895 681.762 null] >> -% 1778 0 obj +% 1776 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F14 787 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1785 0 obj +% 1784 0 obj << /Type /Page -/Contents 1786 0 R -/Resources 1784 0 R +/Contents 1785 0 R +/Resources 1783 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1770 0 R -/Annots [ 1782 0 R 1783 0 R ] +/Parent 1743 0 R >> -% 1782 0 obj +% 1786 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [372.153 443.433 439.211 454.558] -/A << /S /GoTo /D (precdata) >> +/D [1784 0 R /XYZ 149.705 753.953 null] >> -% 1783 0 obj +% 501 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [219.641 354.046 226.103 366.086] -/A << /S /GoTo /D (Hfootnote.4) >> +/D [1784 0 R /XYZ 150.705 716.092 null] >> % 1787 0 obj << -/D [1785 0 R /XYZ 149.705 753.953 null] ->> -% 533 0 obj -<< -/D [1785 0 R /XYZ 150.705 720.077 null] +/D [1784 0 R /XYZ 150.705 681.762 null] >> % 1788 0 obj << -/D [1785 0 R /XYZ 165.948 129.79 null] +/D [1784 0 R /XYZ 150.705 681.762 null] >> -% 1784 0 obj +% 1783 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R /F7 785 0 R /F32 788 0 R /F31 790 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F27 584 0 R >> /ProcSet [ /PDF /Text ] >> -% 1794 0 obj +% 1790 0 obj << /Type /Page -/Contents 1795 0 R -/Resources 1793 0 R +/Contents 1791 0 R +/Resources 1789 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1770 0 R -/Annots [ 1789 0 R 1790 0 R 1791 0 R 1792 0 R ] +/Parent 1743 0 R >> -% 1789 0 obj +% 1792 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [317.856 577.4 395.375 588.524] -/A << /S /GoTo /D (spdata) >> +/D [1790 0 R /XYZ 98.895 753.953 null] >> -% 1790 0 obj +% 505 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [396.921 506.7 463.979 517.825] -/A << /S /GoTo /D (precdata) >> +/D [1790 0 R /XYZ 99.895 716.092 null] +>> +% 1793 0 obj +<< +/D [1790 0 R /XYZ 99.895 679.825 null] >> -% 1791 0 obj +% 1794 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [371.488 436.001 438.546 447.126] -/A << /S /GoTo /D (descdata) >> +/D [1790 0 R /XYZ 99.895 681.762 null] >> -% 1792 0 obj +% 1789 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [318.576 129.071 385.634 140.196] -/A << /S /GoTo /D (precdata) >> +/Font << /F16 582 0 R /F8 585 0 R /F27 584 0 R >> +/ProcSet [ /PDF /Text ] >> % 1796 0 obj << -/D [1794 0 R /XYZ 98.895 753.953 null] +/Type /Page +/Contents 1797 0 R +/Resources 1795 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1743 0 R >> -% 537 0 obj +% 1798 0 obj << -/D [1794 0 R /XYZ 99.895 720.077 null] +/D [1796 0 R /XYZ 149.705 753.953 null] >> -% 1793 0 obj +% 509 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> -/ProcSet [ /PDF /Text ] +/D [1796 0 R /XYZ 150.705 716.092 null] >> -% 1798 0 obj +% 1799 0 obj << -/Type /Page -/Contents 1799 0 R -/Resources 1797 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1770 0 R +/D [1796 0 R /XYZ 150.705 679.825 null] >> % 1800 0 obj << -/D [1798 0 R /XYZ 149.705 753.953 null] +/D [1796 0 R /XYZ 150.705 681.762 null] >> -% 1797 0 obj +% 1795 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F8 585 0 R /F27 584 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1806 0 obj +% 1802 0 obj << /Type /Page -/Contents 1807 0 R -/Resources 1805 0 R +/Contents 1803 0 R +/Resources 1801 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1809 0 R -/Annots [ 1801 0 R 1802 0 R 1803 0 R 1804 0 R ] +/Parent 1805 0 R +>> +% 1804 0 obj +<< +/D [1802 0 R /XYZ 98.895 753.953 null] +>> +% 513 0 obj +<< +/D [1802 0 R /XYZ 99.895 716.092 null] >> % 1801 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [321.343 574.94 388.401 586.065] -/A << /S /GoTo /D (precdata) >> +/Font << /F16 582 0 R /F8 585 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] >> -% 1802 0 obj +% 1808 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [347.301 519.15 423.355 530.274] -/A << /S /GoTo /D (vdata) >> +/Type /Page +/Contents 1809 0 R +/Resources 1807 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1805 0 R +/Annots [ 1806 0 R ] >> -% 1803 0 obj +% 1806 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [324.885 463.359 391.943 474.484] -/A << /S /GoTo /D (descdata) >> +/Rect [345.53 449.411 423.049 460.536] +/A << /S /GoTo /D (spdata) >> >> -% 1804 0 obj +% 1810 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [347.301 274.069 423.355 285.194] -/A << /S /GoTo /D (vdata) >> +/D [1808 0 R /XYZ 149.705 753.953 null] >> -% 1808 0 obj +% 517 0 obj << -/D [1806 0 R /XYZ 98.895 753.953 null] +/D [1808 0 R /XYZ 150.705 716.092 null] >> -% 541 0 obj +% 1811 0 obj << -/D [1806 0 R /XYZ 99.895 720.077 null] +/D [1808 0 R /XYZ 150.705 677.445 null] >> -% 1805 0 obj +% 1812 0 obj +<< +/D [1808 0 R /XYZ 150.705 679.769 null] +>> +% 1807 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F27 584 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1812 0 obj +% 1815 0 obj << /Type /Page -/Contents 1813 0 R -/Resources 1811 0 R +/Contents 1816 0 R +/Resources 1814 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1809 0 R -/Annots [ 1810 0 R ] +/Parent 1805 0 R +/Annots [ 1813 0 R ] >> -% 1810 0 obj +% 1813 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [372.153 574.94 439.211 586.065] -/A << /S /GoTo /D (precdata) >> ->> -% 1814 0 obj -<< -/D [1812 0 R /XYZ 149.705 753.953 null] ->> -% 545 0 obj -<< -/D [1812 0 R /XYZ 150.705 720.077 null] +/Rect [294.721 582.91 372.239 594.035] +/A << /S /GoTo /D (spdata) >> >> -% 1811 0 obj +% 1817 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R /F11 770 0 R /F14 787 0 R >> -/ProcSet [ /PDF /Text ] +/D [1815 0 R /XYZ 98.895 753.953 null] >> -% 1816 0 obj +% 521 0 obj << -/Type /Page -/Contents 1817 0 R -/Resources 1815 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1809 0 R +/D [1815 0 R /XYZ 99.895 716.092 null] >> % 1818 0 obj << -/D [1816 0 R /XYZ 98.895 753.953 null] +/D [1815 0 R /XYZ 99.895 677.445 null] >> -% 549 0 obj +% 1819 0 obj << -/D [1816 0 R /XYZ 99.895 720.077 null] +/D [1815 0 R /XYZ 99.895 679.769 null] >> -% 1815 0 obj +% 1814 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F27 584 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> % 1822 0 obj @@ -23759,1800 +23884,1915 @@ stream /Contents 1823 0 R /Resources 1821 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1809 0 R -/Annots [ 1819 0 R 1820 0 R ] ->> -% 1819 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [372.153 574.94 439.211 586.065] -/A << /S /GoTo /D (precdata) >> +/Parent 1805 0 R +/Annots [ 1820 0 R ] >> % 1820 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [372.153 499.224 439.211 510.349] -/A << /S /GoTo /D (precdata) >> +/Rect [345.53 449.411 423.049 460.536] +/A << /S /GoTo /D (spdata) >> >> % 1824 0 obj << /D [1822 0 R /XYZ 149.705 753.953 null] >> -% 553 0 obj +% 525 0 obj +<< +/D [1822 0 R /XYZ 150.705 716.092 null] +>> +% 1825 0 obj << -/D [1822 0 R /XYZ 150.705 720.077 null] +/D [1822 0 R /XYZ 150.705 679.769 null] +>> +% 1826 0 obj +<< +/D [1822 0 R /XYZ 150.705 679.769 null] >> % 1821 0 obj << -/Font << /F16 570 0 R /F30 784 0 R /F27 572 0 R /F8 573 0 R >> +/Font << /F16 582 0 R /F27 584 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1826 0 obj +% 1828 0 obj << /Type /Page -/Contents 1827 0 R -/Resources 1825 0 R +/Contents 1829 0 R +/Resources 1827 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1809 0 R +/Parent 1805 0 R >> -% 1828 0 obj +% 1830 0 obj << -/D [1826 0 R /XYZ 98.895 753.953 null] +/D [1828 0 R /XYZ 98.895 753.953 null] >> -% 557 0 obj +% 529 0 obj << -/D [1826 0 R /XYZ 99.895 716.092 null] +/D [1828 0 R /XYZ 99.895 716.092 null] >> -% 1825 0 obj +% 1831 0 obj +<< +/D [1828 0 R /XYZ 99.895 679.769 null] +>> +% 1832 0 obj +<< +/D [1828 0 R /XYZ 99.895 679.769 null] +>> +% 1827 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F30 784 0 R >> +/Font << /F16 582 0 R /F27 584 0 R /F8 585 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1833 0 obj +% 1835 0 obj << /Type /Page -/Contents 1834 0 R -/Resources 1832 0 R +/Contents 1836 0 R +/Resources 1834 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1809 0 R -/Annots [ 1829 0 R 1830 0 R ] +/Parent 1805 0 R +/Annots [ 1833 0 R ] >> -% 1829 0 obj +% 1833 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [384.578 276.229 391.04 288.268] -/A << /S /GoTo /D (Hfootnote.5) >> +/Rect [345.53 582.91 423.049 594.035] +/A << /S /GoTo /D (spdata) >> >> -% 1830 0 obj +% 1837 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [345.53 134.549 423.049 145.674] -/A << /S /GoTo /D (spdata) >> +/D [1835 0 R /XYZ 149.705 753.953 null] >> -% 1835 0 obj +% 533 0 obj << -/D [1833 0 R /XYZ 149.705 753.953 null] +/D [1835 0 R /XYZ 150.705 716.092 null] >> -% 561 0 obj +% 1838 0 obj << -/D [1833 0 R /XYZ 150.705 720.077 null] +/D [1835 0 R /XYZ 150.705 679.769 null] >> -% 1836 0 obj +% 1839 0 obj << -/D [1833 0 R /XYZ 150.705 446.608 null] +/D [1835 0 R /XYZ 150.705 679.769 null] >> -% 1837 0 obj +% 1834 0 obj << -/D [1833 0 R /XYZ 150.705 446.608 null] +/Font << /F16 582 0 R /F27 584 0 R /F8 585 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] >> -% 1838 0 obj +% 1841 0 obj << -/D [1833 0 R /XYZ 150.705 434.653 null] +/Type /Page +/Contents 1842 0 R +/Resources 1840 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1846 0 R >> -% 1839 0 obj +% 1843 0 obj << -/D [1833 0 R /XYZ 165.948 129.79 null] +/D [1841 0 R /XYZ 98.895 753.953 null] >> -% 1832 0 obj +% 537 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F27 572 0 R /F11 770 0 R /F14 787 0 R /F10 786 0 R /F7 785 0 R /F30 784 0 R /F32 788 0 R /F31 790 0 R /F33 1840 0 R >> -/ProcSet [ /PDF /Text ] +/D [1841 0 R /XYZ 99.895 716.092 null] +>> +% 1844 0 obj +<< +/D [1841 0 R /XYZ 99.895 679.769 null] >> % 1845 0 obj << +/D [1841 0 R /XYZ 99.895 679.769 null] +>> +% 1840 0 obj +<< +/Font << /F16 582 0 R /F27 584 0 R /F8 585 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1848 0 obj +<< /Type /Page -/Contents 1846 0 R -/Resources 1844 0 R +/Contents 1849 0 R +/Resources 1847 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1848 0 R -/Annots [ 1831 0 R 1841 0 R 1842 0 R 1843 0 R ] +/Parent 1846 0 R >> -% 1831 0 obj +% 1850 0 obj +<< +/D [1848 0 R /XYZ 149.705 753.953 null] +>> +% 541 0 obj +<< +/D [1848 0 R /XYZ 150.705 716.092 null] +>> +% 1847 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R /F14 813 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1854 0 obj +<< +/Type /Page +/Contents 1855 0 R +/Resources 1853 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1846 0 R +/Annots [ 1851 0 R 1852 0 R ] +>> +% 1851 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 655.098 361.779 666.223] +/Rect [321.343 443.433 388.401 454.558] /A << /S /GoTo /D (precdata) >> >> -% 1841 0 obj +% 1852 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [347.301 585.075 423.355 596.2] -/A << /S /GoTo /D (vdata) >> +/Rect [168.831 354.046 175.293 366.086] +/A << /S /GoTo /D (Hfootnote.4) >> >> -% 1842 0 obj +% 1856 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [347.301 515.052 423.355 526.177] -/A << /S /GoTo /D (vdata) >> +/D [1854 0 R /XYZ 98.895 753.953 null] >> -% 1843 0 obj +% 545 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [294.721 375.006 361.779 386.13] -/A << /S /GoTo /D (descdata) >> +/D [1854 0 R /XYZ 99.895 716.092 null] >> -% 1847 0 obj +% 1857 0 obj << -/D [1845 0 R /XYZ 98.895 753.953 null] +/D [1854 0 R /XYZ 115.138 129.79 null] >> -% 1844 0 obj +% 1853 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R /F11 770 0 R /F14 787 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R /F7 811 0 R /F32 814 0 R /F31 816 0 R >> /ProcSet [ /PDF /Text ] >> -% 1851 0 obj +% 1863 0 obj << /Type /Page -/Contents 1852 0 R -/Resources 1850 0 R +/Contents 1864 0 R +/Resources 1862 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1848 0 R -/Annots [ 1849 0 R ] +/Parent 1846 0 R +/Annots [ 1858 0 R 1859 0 R 1860 0 R 1861 0 R ] >> -% 1849 0 obj +% 1858 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [398.111 555.472 474.165 566.597] -/A << /S /GoTo /D (vdata) >> ->> -% 1853 0 obj -<< -/D [1851 0 R /XYZ 149.705 753.953 null] +/Rect [368.666 577.4 446.184 588.524] +/A << /S /GoTo /D (spdata) >> >> -% 1850 0 obj +% 1859 0 obj << -/Font << /F27 572 0 R /F8 573 0 R /F30 784 0 R /F11 770 0 R >> -/ProcSet [ /PDF /Text ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [447.73 506.7 514.788 517.825] +/A << /S /GoTo /D (precdata) >> >> -% 1855 0 obj +% 1860 0 obj << -/Type /Page -/Contents 1856 0 R -/Resources 1854 0 R -/MediaBox [0 0 595.276 841.89] -/Parent 1848 0 R +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [422.298 436.001 489.356 447.126] +/A << /S /GoTo /D (descdata) >> >> -% 1857 0 obj +% 1861 0 obj << -/D [1855 0 R /XYZ 98.895 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [369.385 129.071 436.443 140.196] +/A << /S /GoTo /D (precdata) >> >> -% 1858 0 obj +% 1865 0 obj << -/D [1855 0 R /XYZ 99.895 724.062 null] +/D [1863 0 R /XYZ 149.705 753.953 null] >> -% 754 0 obj +% 549 0 obj << -/D [1855 0 R /XYZ 99.895 699.619 null] +/D [1863 0 R /XYZ 150.705 716.092 null] >> -% 1859 0 obj +% 1862 0 obj << -/D [1855 0 R /XYZ 99.895 643.15 null] +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> +/ProcSet [ /PDF /Text ] >> -% 805 0 obj +% 1867 0 obj << -/D [1855 0 R /XYZ 99.895 588.618 null] +/Type /Page +/Contents 1868 0 R +/Resources 1866 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1846 0 R >> -% 804 0 obj +% 1869 0 obj << -/D [1855 0 R /XYZ 99.895 534.087 null] +/D [1867 0 R /XYZ 98.895 753.953 null] >> -% 760 0 obj +% 1866 0 obj << -/D [1855 0 R /XYZ 99.895 479.555 null] +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] >> -% 761 0 obj +% 1875 0 obj << -/D [1855 0 R /XYZ 99.895 436.978 null] +/Type /Page +/Contents 1876 0 R +/Resources 1874 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1846 0 R +/Annots [ 1870 0 R 1871 0 R 1872 0 R 1873 0 R ] >> -% 777 0 obj +% 1870 0 obj << -/D [1855 0 R /XYZ 99.895 394.402 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [372.153 574.94 439.211 586.065] +/A << /S /GoTo /D (precdata) >> >> -% 757 0 obj +% 1871 0 obj << -/D [1855 0 R /XYZ 99.895 351.272 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [398.111 519.15 474.165 530.274] +/A << /S /GoTo /D (vdata) >> >> -% 758 0 obj +% 1872 0 obj << -/D [1855 0 R /XYZ 99.895 308.696 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [375.695 463.359 442.753 474.484] +/A << /S /GoTo /D (descdata) >> >> -% 1860 0 obj +% 1873 0 obj << -/D [1855 0 R /XYZ 99.895 266.119 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [398.111 274.069 474.165 285.194] +/A << /S /GoTo /D (vdata) >> >> -% 753 0 obj +% 1877 0 obj << -/D [1855 0 R /XYZ 99.895 223.543 null] +/D [1875 0 R /XYZ 149.705 753.953 null] >> -% 1861 0 obj +% 553 0 obj << -/D [1855 0 R /XYZ 99.895 180.966 null] +/D [1875 0 R /XYZ 150.705 716.092 null] >> -% 1854 0 obj +% 1874 0 obj << -/Font << /F16 570 0 R /F8 573 0 R /F17 750 0 R >> +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> /ProcSet [ /PDF /Text ] >> -% 1863 0 obj +% 1880 0 obj << /Type /Page -/Contents 1864 0 R -/Resources 1862 0 R +/Contents 1881 0 R +/Resources 1879 0 R /MediaBox [0 0 595.276 841.89] -/Parent 1848 0 R +/Parent 1883 0 R +/Annots [ 1878 0 R ] >> -% 1865 0 obj +% 1878 0 obj << -/D [1863 0 R /XYZ 149.705 753.953 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [321.343 560.993 388.401 572.118] +/A << /S /GoTo /D (precdata) >> >> -% 921 0 obj +% 1882 0 obj << -/D [1863 0 R /XYZ 150.705 716.092 null] +/D [1880 0 R /XYZ 98.895 753.953 null] >> -% 792 0 obj +% 557 0 obj << -/D [1863 0 R /XYZ 150.705 688.251 null] +/D [1880 0 R /XYZ 99.895 716.092 null] >> -% 759 0 obj + +endstream +endobj +1887 0 obj << -/D [1863 0 R /XYZ 150.705 632.184 null] +/Length 998 >> -% 756 0 obj +stream +0 g 0 G +0 g 0 G +BT +/F16 11.9552 Tf 150.705 706.129 Td [(10.5)-1125(clone)-375(|)-375(clone)-375(curren)31(t)-375(preconditioner)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf 0 -18.389 Td [(call)-1050(prec%clone\050precout,info\051)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(prec)]TJ +0 g 0 G +/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)]TJ -1.501 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -80.358 -33.873 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(precout)]TJ +0 g 0 G +/F8 9.9626 Tf 42.957 0 Td [(A)-333(cop)27(y)-333(of)-333(the)-333(input)-334(ob)-55(ject.)]TJ +0 g 0 G +/F27 9.9626 Tf -42.957 -19.926 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Return)-333(co)-28(de.)]TJ +0 g 0 G + 140.625 -449.854 Td [(146)]TJ +0 g 0 G +ET + +endstream +endobj +1893 0 obj << -/D [1863 0 R /XYZ 150.705 590.562 null] +/Length 2736 >> -% 752 0 obj +stream +0 g 0 G +0 g 0 G +BT +/F16 11.9552 Tf 99.895 706.129 Td [(10.6)-1125(free)-375(|)-375(F)94(ree)-375(a)-375(preconditioner)]TJ +0 g 0 G +0 g 0 G +/F30 9.9626 Tf 0 -18.389 Td [(call)-525(prec%free\050info\051)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -21.918 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Async)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.926 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(prec)]TJ +0 g 0 G +/F8 9.9626 Tf 26.408 0 Td [(the)-333(preconditioner.)]TJ -1.501 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.452 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(preconditioner)-333(data)-333(structure)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 197.537 0 Td [(psb)]TJ +ET +q +1 0 0 1 338.658 578.35 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 341.796 578.15 Td [(prec)]TJ +ET +q +1 0 0 1 363.345 578.35 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 366.483 578.15 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -287.51 -19.925 Td [(On)-383(Exit)]TJ +0 g 0 G +0 g 0 G + 0 -19.925 Td [(prec)]TJ +0 g 0 G +/F8 9.9626 Tf 26.408 0 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -33.88 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(preconditioner)-333(data)-333(structure)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 197.537 0 Td [(psb)]TJ +ET +q +1 0 0 1 338.658 502.634 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 341.796 502.434 Td [(prec)]TJ +ET +q +1 0 0 1 363.345 502.634 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 366.483 502.434 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -287.51 -19.925 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -31.23 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Error)-333(co)-28(de:)-444(if)-334(no)-333(error,)-333(0)-334(is)-333(returned.)]TJ/F16 11.9552 Tf -24.907 -21.918 Td [(Notes)]TJ/F8 9.9626 Tf 37.234 0 Td [(Releases)-334(all)-333(in)28(ternal)-333(storage.)]TJ +0 g 0 G + 127.15 -334.288 Td [(147)]TJ +0 g 0 G +ET + +endstream +endobj +1897 0 obj << -/D [1863 0 R /XYZ 150.705 544.789 null] +/Length 608 >> -% 755 0 obj +stream +0 g 0 G +0 g 0 G +BT +/F16 14.3462 Tf 150.705 706.129 Td [(11)-1125(Iterativ)31(e)-375(Metho)-31(ds)]TJ/F8 9.9626 Tf 0 -21.821 Td [(In)-519(thi)1(s)-519(c)28(hapter)-519(w)28(e)-519(pro)28(vide)-519(routi)1(nes)-519(for)-519(preconditioners)-518(and)-519(iterativ)28(e)-519(meth-)]TJ 0 -11.955 Td [(o)-28(ds.)-647(The)-401(in)28(terfaces)-401(for)-401(Kr)1(ylo)27(v)-401(sub)1(s)-1(p)1(ac)-1(e)-400(metho)-28(ds)-401(are)-401(a)28(v)55(ailable)-400(in)-401(the)-401(mo)-28(dule)]TJ/F30 9.9626 Tf 0 -11.955 Td [(psb_krylov_mod)]TJ/F8 9.9626 Tf 73.225 0 Td [(.)]TJ +0 g 0 G + 91.158 -569.96 Td [(148)]TJ +0 g 0 G +ET + +endstream +endobj +1904 0 obj << -/D [1863 0 R /XYZ 150.705 512.909 null] +/Length 8324 >> +stream +0 g 0 G +0 g 0 G +BT +/F16 11.9552 Tf 99.895 706.129 Td [(11.1)-1125(psb)]TJ +ET +q +1 0 0 1 158.311 706.328 cm +[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S +Q +BT +/F16 11.9552 Tf 162.346 706.129 Td [(krylo)31(v)-375(|)-375(Krylo)31(v)-375(Metho)-31(ds)-375(Driv)31(er)-375(Routine)]TJ/F8 9.9626 Tf -62.451 -18.389 Td [(This)-343(subroutine)-342(is)-343(a)-343(driv)28(er)-343(that)-342(pro)27(vid)1(e)-1(s)-342(a)-343(general)-343(in)28(terface)-343(for)-342(all)-343(the)-343(Krylo)28(v-)]TJ 0 -11.956 Td [(Subspace)-333(family)-334(metho)-27(ds)-334(implemen)28(ted)-333(in)-334(PSBLAS)-333(v)28(ersion)-333(2.)]TJ 14.944 -11.955 Td [(The)-333(stopping)-334(criterion)-333(can)-333(tak)28(e)-334(the)-333(follo)28(wing)-334(v)56(alues:)]TJ +0 g 0 G +/F27 9.9626 Tf -14.944 -19.102 Td [(1)]TJ +0 g 0 G +/F8 9.9626 Tf 10.71 0 Td [(norm)28(wise)-334(bac)28(kw)28(ard)-333(error)-334(in)-333(the)-333(in\014nit)28(y)-334(norm;)-333(the)-333(iteration)-334(i)1(s)-334(stopp)-28(ed)-333(when)]TJ/F11 9.9626 Tf 109.583 -26.078 Td [(er)-28(r)]TJ/F8 9.9626 Tf 16.949 0 Td [(=)]TJ/F14 9.9626 Tf 38.11 6.74 Td [(k)]TJ/F11 9.9626 Tf 4.982 0 Td [(r)]TJ/F10 6.9738 Tf 4.494 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(k)]TJ +ET +q +1 0 0 1 248.849 621.14 cm +[]0 d 0 J 0.398 w 0 0 m 70.572 0 l S +Q +BT +/F8 9.9626 Tf 248.849 611.815 Td [(\050)]TJ/F14 9.9626 Tf 3.874 0 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(A)]TJ/F14 9.9626 Tf 7.472 0 Td [(kk)]TJ/F11 9.9626 Tf 9.963 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.494 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.494 Td [(k)]TJ/F8 9.9626 Tf 7.195 0 Td [(+)]TJ/F14 9.9626 Tf 9.963 0 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(b)]TJ/F14 9.9626 Tf 4.276 0 Td [(k)]TJ/F8 9.9626 Tf 4.981 0 Td [(\051)]TJ/F11 9.9626 Tf 7.837 6.834 Td [(<)-278(eps)]TJ +0 g 0 G +/F27 9.9626 Tf -223.488 -29.952 Td [(2)]TJ +0 g 0 G +/F8 9.9626 Tf 10.71 0 Td [(Relativ)28(e)-334(residual)-333(in)-333(the)-333(2-)-1(n)1(orm)-1(;)-333(the)-333(iteration)-333(is)-334(stopp)-28(ed)-333(when)]TJ/F11 9.9626 Tf 135.515 -26.078 Td [(er)-28(r)]TJ/F8 9.9626 Tf 16.949 0 Td [(=)]TJ/F14 9.9626 Tf 12.178 6.74 Td [(k)]TJ/F11 9.9626 Tf 4.982 0 Td [(r)]TJ/F10 6.9738 Tf 4.494 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(k)]TJ +ET +q +1 0 0 1 274.781 565.11 cm +[]0 d 0 J 0.398 w 0 0 m 18.708 0 l S +Q +BT +/F14 9.9626 Tf 274.781 555.785 Td [(k)]TJ/F11 9.9626 Tf 4.981 0 Td [(b)]TJ/F14 9.9626 Tf 4.276 0 Td [(k)]TJ/F7 6.9738 Tf 4.981 -1.494 Td [(2)]TJ/F11 9.9626 Tf 8.432 8.328 Td [(<)-278(eps)]TJ +0 g 0 G +/F27 9.9626 Tf -197.556 -29.952 Td [(3)]TJ +0 g 0 G +/F8 9.9626 Tf 10.71 0 Td [(Relativ)28(e)-334(residual)-333(reduction)-333(in)-333(the)-334(2-norm;)-333(the)-333(iteration)-334(is)-333(stopp)-28(ed)-333(when)]TJ/F11 9.9626 Tf 133.171 -26.078 Td [(er)-28(r)]TJ/F8 9.9626 Tf 16.949 0 Td [(=)]TJ/F14 9.9626 Tf 14.522 6.74 Td [(k)]TJ/F11 9.9626 Tf 4.982 0 Td [(r)]TJ/F10 6.9738 Tf 4.494 -1.495 Td [(i)]TJ/F14 9.9626 Tf 3.317 1.495 Td [(k)]TJ +ET +q +1 0 0 1 272.436 509.08 cm +[]0 d 0 J 0.398 w 0 0 m 23.396 0 l S +Q +BT +/F14 9.9626 Tf 272.436 499.755 Td [(k)]TJ/F11 9.9626 Tf 4.982 0 Td [(r)]TJ/F7 6.9738 Tf 4.494 -1.494 Td [(0)]TJ/F14 9.9626 Tf 4.47 1.494 Td [(k)]TJ/F7 6.9738 Tf 4.981 -1.494 Td [(2)]TJ/F11 9.9626 Tf 8.432 8.328 Td [(<)-278(eps)]TJ/F8 9.9626 Tf -199.9 -30.505 Td [(The)-443(b)-27(eha)28(viour)-443(is)-442(con)27(troll)1(e)-1(d)-442(b)28(y)-443(the)-442(istop)-442(argumen)27(t)-442(\050see)-443(later\051.)-771(In)-443(the)-442(ab)-28(o)28(v)27(e)]TJ 0 -11.955 Td [(form)28(ulae,)]TJ/F11 9.9626 Tf 43.127 0 Td [(x)]TJ/F10 6.9738 Tf 5.694 -1.495 Td [(i)]TJ/F8 9.9626 Tf 5.856 1.495 Td [(is)-255(the)-255(ten)28(tativ)28(e)-255(solution)-255(and)]TJ/F11 9.9626 Tf 122.117 0 Td [(r)]TJ/F10 6.9738 Tf 4.495 -1.495 Td [(i)]TJ/F8 9.9626 Tf 6.084 1.495 Td [(=)]TJ/F11 9.9626 Tf 10.516 0 Td [(b)]TJ/F14 9.9626 Tf 4.925 0 Td [(\000)]TJ/F11 9.9626 Tf 8.399 0 Td [(Ax)]TJ/F10 6.9738 Tf 13.166 -1.495 Td [(i)]TJ/F8 9.9626 Tf 5.856 1.495 Td [(the)-255(corresp)-28(ondin)1(g)-255(residual)]TJ -230.235 -11.956 Td [(at)-333(the)]TJ/F11 9.9626 Tf 29.335 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(-th)-333(iteration.)]TJ/F27 9.9626 Tf -31.39 -17.52 Td [(c)-138(a)-138(l)-139(l)]TJ/F8 9.9626 Tf 29.763 0 Td [(p)-126(s)-125(b)]TJ +ET +q +1 0 0 1 150.386 434.852 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 154.627 434.653 Td [(k)-126(r)-125(y)-126(l)-125(o)-126(v)-231(\050)-146(m)-40(e)-41(t)-40(h)-40(o)-40(d)-242(,)-194(a)-228(,)-255(p)-94(r)-94(e)-94(c)-349(,)-176(b)-191(,)-185(x)-209(,)-243(e)-81(p)-81(s)-323(,)-274(d)-113(e)-112(s)-113(c)]TJ +ET +q +1 0 0 1 351.575 434.852 cm +[]0 d 0 J 0.398 w 0 0 m 2.989 0 l S +Q +BT +/F8 9.9626 Tf 355.686 434.653 Td [(a)-386(,)-288(i)-127(n)-127(f)-127(o)-302(,)-48(&)]TJ -226.788 -11.956 Td [(&)-579(i)-67(t)-67(m)-68(a)-67(x)-296(,)-311(i)-150(t)-149(e)-150(r)-460(,)]TJ/F27 9.9626 Tf 79.244 0 Td [(e)-65(r)-65(r)]TJ/F8 9.9626 Tf 18.889 0 Td [(,)-305(i)-144(t)-144(r)-144(a)-145(c)-144(e)-449(,)-319(i)-158(r)-158(s)-158(t)-477(,)-287(i)-126(s)-126(t)-126(o)-127(p)-413(,)-230(c)-69(o)-69(n)-69(d)-174(\051)]TJ +0 g 0 G +0 g 0 G +0 g 0 G +/F27 9.9626 Tf -127.136 -26.454 Td [(T)32(yp)-32(e:)]TJ +0 g 0 G +/F8 9.9626 Tf 33.797 0 Td [(Sync)28(hronous.)]TJ +0 g 0 G +/F27 9.9626 Tf -33.797 -19.513 Td [(On)-383(En)32(try)]TJ +0 g 0 G +0 g 0 G + 0 -19.514 Td [(metho)-32(d)]TJ +0 g 0 G +/F8 9.9626 Tf 43.012 0 Td [(a)-235(string)-235(that)-235(de\014nes)-236(th)1(e)-236(iterativ)28(e)-235(metho)-28(d)-235(to)-235(b)-28(e)-235(used.)-412(Supp)-27(orted)-235(v)55(alues)]TJ -18.105 -11.955 Td [(are:)]TJ +0 g 0 G +/F27 9.9626 Tf 0 -19.513 Td [(CG:)]TJ +0 g 0 G +/F8 9.9626 Tf 25.446 0 Td [(the)-333(Conjugate)-334(Gradien)28(t)-333(metho)-28(d;)]TJ +0 g 0 G +/F27 9.9626 Tf -25.446 -15.529 Td [(CGS:)]TJ +0 g 0 G +/F8 9.9626 Tf 31.811 0 Td [(the)-333(Conjugate)-334(Gradien)28(t)-333(Stabilized)-333(metho)-28(d;)]TJ +0 g 0 G +/F27 9.9626 Tf -31.811 -15.528 Td [(GCR:)]TJ +0 g 0 G +/F8 9.9626 Tf 34.039 0 Td [(the)-333(Generalized)-334(Conjugate)-333(Residual)-333(metho)-28(d;)]TJ +0 g 0 G +/F27 9.9626 Tf -34.039 -15.529 Td [(F)32(CG:)]TJ +0 g 0 G +/F8 9.9626 Tf 32.337 0 Td [(the)-333(Flexible)-334(Conjugate)-333(Gradien)28(t)-333(metho)-28(d)]TJ +0 0 1 rg 0 0 1 RG +/F7 6.9738 Tf 177.626 3.616 Td [(5)]TJ +0 g 0 G +/F8 9.9626 Tf 4.469 -3.616 Td [(;)]TJ +0 g 0 G +/F27 9.9626 Tf -214.432 -15.528 Td [(BICG:)]TJ +0 g 0 G +/F8 9.9626 Tf 37.941 0 Td [(the)-333(Bi-Conjugate)-334(Gradien)28(t)-333(metho)-28(d;)]TJ +0 g 0 G +/F27 9.9626 Tf -37.941 -15.529 Td [(BICGST)96(AB:)]TJ +0 g 0 G +/F8 9.9626 Tf 68.133 0 Td [(the)-333(Bi-Conjugate)-334(Gradien)28(t)-333(Stabilized)-333(metho)-28(d;)]TJ +0 g 0 G +/F27 9.9626 Tf -68.133 -15.528 Td [(BICGST)96(ABL:)]TJ +0 g 0 G +/F8 9.9626 Tf 75.024 0 Td [(the)-222(Bi-Conjugate)-222(Gradien)27(t)-222(Stabilized)-222(metho)-28(d)-222(with)-222(restart-)]TJ -53.106 -11.955 Td [(ing;)]TJ +0 g 0 G +/F27 9.9626 Tf -21.918 -15.529 Td [(R)32(GMRES:)]TJ +0 g 0 G +/F8 9.9626 Tf 58.807 0 Td [(the)-333(Generalized)-334(Minimal)-333(Residual)-333(metho)-28(d)-333(with)-334(restarting.)]TJ +0 g 0 G +/F27 9.9626 Tf -83.714 -19.513 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.551 0 Td [(the)-333(lo)-28(cal)-333(p)-28(ortion)-333(of)-334(global)-333(sparse)-333(matrix)]TJ/F11 9.9626 Tf 178.968 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(.)]TJ -172.084 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 312.036 137.958 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 315.174 137.759 Td [(Tspmat)]TJ +ET +q +1 0 0 1 347.183 137.958 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 350.322 137.759 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +0 g 0 G +ET +q +1 0 0 1 99.895 129.78 cm +[]0 d 0 J 0.398 w 0 0 m 137.482 0 l S +Q +BT +/F32 5.9776 Tf 110.987 123.138 Td [(5)]TJ/F31 7.9701 Tf 4.151 -2.812 Td [(Note:)-472(the)-355(implemen)30(tation)-354(is)-355(f)1(or)]TJ/F33 7.9701 Tf 120.25 0 Td [(F)-148(C)-70(G)]TJ/F31 7.9701 Tf 19.732 0 Td [(\0501\051.)]TJ +0 g 0 G +0 g 0 G +/F8 9.9626 Tf 9.159 -29.888 Td [(149)]TJ +0 g 0 G +ET endstream endobj -1888 0 obj +1916 0 obj << -/Length1 2422 -/Length2 20069 -/Length3 0 -/Length 22491 +/Length 7123 >> stream -%!PS-AdobeFont-1.0: CMBX10 003.002 -%%Title: CMBX10 -%Version: 003.002 -%%CreationDate: Mon Jul 13 16:17:00 2009 -%%Creator: David M. Jones -%Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMBX10. -% This Font Software is licensed under the SIL Open Font License, Version 1.1. -% This license is in the accompanying file OFL.txt, and is also -% available with a FAQ at: http://scripts.sil.org/OFL. -%%EndComments -FontDirectory/CMBX10 known{/CMBX10 findfont dup/UniqueID known{dup -/UniqueID get 5000768 eq exch/FontType get 1 eq and}{pop false}ifelse -{save true}{false}ifelse}{false}ifelse -11 dict begin -/FontType 1 def -/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /RAJOBS+CMBX10 def -/FontBBox {-56 -250 1164 750 }readonly def -/PaintType 0 def -/FontInfo 9 dict dup begin -/version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMBX10.) readonly def -/FullName (CMBX10) readonly def -/FamilyName (Computer Modern) readonly def -/Weight (Bold) readonly def -/ItalicAngle 0 def -/isFixedPitch false def -/UnderlinePosition -100 def -/UnderlineThickness 50 def -end readonly def -/Encoding 256 array -0 1 255 {1 index exch /.notdef put} for -dup 65 /A put -dup 66 /B put -dup 67 /C put -dup 68 /D put -dup 69 /E put -dup 70 /F put -dup 71 /G put -dup 72 /H put -dup 73 /I put -dup 74 /J put -dup 76 /L put -dup 77 /M put -dup 78 /N put -dup 79 /O put -dup 80 /P put -dup 82 /R put -dup 83 /S put -dup 84 /T put -dup 85 /U put -dup 86 /V put -dup 90 /Z put -dup 97 /a put -dup 98 /b put -dup 99 /c put -dup 58 /colon put -dup 44 /comma put -dup 100 /d put -dup 101 /e put -dup 56 /eight put -dup 124 /emdash put -dup 123 /endash put -dup 61 /equal put -dup 102 /f put -dup 11 /ff put -dup 14 /ffi put -dup 12 /fi put -dup 53 /five put -dup 13 /fl put -dup 52 /four put -dup 103 /g put -dup 104 /h put -dup 45 /hyphen put -dup 105 /i put -dup 106 /j put -dup 107 /k put -dup 108 /l put -dup 109 /m put -dup 110 /n put -dup 57 /nine put -dup 111 /o put -dup 49 /one put -dup 112 /p put -dup 46 /period put -dup 113 /q put -dup 39 /quoteright put -dup 114 /r put -dup 115 /s put -dup 55 /seven put -dup 54 /six put -dup 116 /t put -dup 51 /three put -dup 50 /two put -dup 117 /u put -dup 118 /v put -dup 119 /w put -dup 120 /x put -dup 121 /y put -dup 122 /z put -dup 48 /zero put -readonly def -currentdict end -currentfile eexec -oc;jAw-=%W)-{ru)rAE(@{빴Q|_R -ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{=מ7ڄĒKV"~Pr-=L$wcrlVcN &'{%Gf#ɨ_i#SXd+U*|:1m=⾝~6/aGLf#NOS}ERs{[.-jj|tm\: x8PbPh[_9t237,I2B8J0msUWQdX!??Q4eRH ]ӊ.p_?8:o:UuDZ[m^/a4l4ȒtL<~&WwLa9gPqhQΠjv)]sqR"ЯDž#eZKPHrF"tw;*l5 FF BW1S!2*`8:XlUI?[wc &Z`ѩް sdHeF'*s ЁTd9Baऋ[a$g1f\0 7aR^(Lj#!mw2#nr$|TL]{X`4.Gw|P2BgܴwbkF Nfj;d?#l"+6g{* ,SQ2&'n\`]Q:ݹ6ln0b9m],/ڨ\Y$6[+UE#ƸMO( ϲ.DL\*@z3'&Е62%+(k`D/k(ɒkpt`^Bձ\H~Y_˒c%~(! -Jvs}9qw{6sΓM &Q-p'&M&7tZ\r|5M5"*<ΕD,Lfj+ʾɝ"x0h#u[@}"փ -dIE* , j]v.tx kEYl}d.-eJ C=KD jnI"yX D|&k>ixbu?ѱ ,VszAc  G 7H`Ď'Ķ)r -ҎG֯Z~C -U. EC3}henħE!C[xxnCq##Ti.iW/i*?K`ɞ}g;ο@>Hmn91-[ tj7 3Myz,?Z@RPBi>vVF\Ahko8*NIQv94z4m n8)Db]ٞ>=e3Q-'0y#JW 0݈7\t53=μغ|[R>5Ir xhhy!kVSȮ7I ThaToɁ( WdsUI=]әM|dJ\YRGy4d(N{"l\ ]kȮ8V -A==r V^*mx(e=\ʰ!Bb8йX ֙Mاi -p)r ~1 ׏<;d,^6f,PpΨ|kR87>i e ^NҢ@h`[BF,L%mUBe*$nox3K V$[[fU;4Qjggo !%Uh(ԝ 2ן, O[Ј_\?Wt<ȅ/; "Rm®)E\rW1 ђoy։)B̊\@gJ?m Eqqٔ84^Da97 㤸{ɧZ!_`-rlُ*qٺ؊t LCg -:nbJ Lqrj5^9NRVJ7en%ϰYƕut4ƸF΋ėvQj6%c#~ O e҉'aS1e F u s^i"yw,~ C~Rƒ`,j"+ȬKk Q5IjEbT)">wv|$.4*@s? -ipb\r 9AZx; -~c/Hϫ+%Bm-7 S2*Eoq;ջ/6[ LoT F>=8$d�otu[QEU!\ސswE6W׍ Q8 < %xl& -~Bh=F"2\],ӱ@re(lF*ŊY7ٍ` pS?%i|ˋt|[b<7M=7snѪw24ׅd/bD~[)g43G&/pN%;t :p }wM/{ Ϭ0.bj!Z@< zyl)" KUmoҙ2c})z:<ۄF oŃGLyT7;$^>,Y.Fܔ%Gj,&U&S0Sg\+h8.!ɧ?4}+dC֡;GľZ#AeqE>RL K@$|DW/PN^Е3*0KƷ)}JMg"$58_gCs2C7,K՞?λ)效4 1#oIXcP~1 a^46Ӕ)jOa a ^oy^&9ߗǫ%<mLLN9y a)U)D.?9f4R2X w#_RzZu)q{ 3hSߛPDŒx)8%֗Q]9 rf!:wn; @AK ?gNq48)ďT cݨRSK:k4S};3<ʵ< SU^΋opf"5@A bq]W*VOMt,Sg__]0-GXz+G|f_r]EGaqۜgm ]Mnv(D/LbdR;G??aJVTy^ۭgm~`Z2Ј|{AJcQR qnd(ۜyoD`TJCHzRaPהxƜC@Mp<[0?e;ZT+R[kgϧa"q^b *r|::VNBOUzHbaGDH$6$4tLJb -INIC֜qa.K,ƭ >Cy -l7'mf &o1:i҅u meNπ@1; BB}Z(P3>f`mwyج]}L0qoJ 4VCBBLx1s_(\2ZZ. -G?eu8 3p8Dq,ƾ&[3M st/ϪT ;C;]DDu0 դQ[=zʥP*KCUqk#?k )M GRWI "RY7Wư0+@γTNT?aJxy~8up| ?5$[)sNd<#UM(8 bEQHt.f6֡U ǟ*xϟOiא`r/\coωS:#D=@KA2 gLHmO٘b9PoǕ -ڄOiINtVV8/{ )N8(g]P .'9X[}[6 !$>ɹk^ s2$Q{1(^\ҫ؅NQ@ R5Юg4vH2RDMe}6#QLil" fEg*!k2h#ugn NrKIF7S)q=UFԐqmYu},f,d4~׍jS찉Jz:dVmoa3_Ib*P ^N]w h̪A6" CCIތ$d,$}F3,NT!WN3Ru+}M=;1xHO4HZHfOgZ=Ck>kRUIw9x)6:*ۥ |hYNHe96sκNII>5l0yUYnϊ K@iO5R1^Ч12r;X0HXqP1Kp5{(,itLȮԃrQ4-F ƕ xhVg2{1xnN?39rjuP5_銖Y=$]K<MxB_PѬpD!j0mHTکr ' LcFa0ޣ/<4gBwRSSm%XȀύy뮧p^xŠпͦ);qEQ)DJLOnSMn(b It;wXDNk|8Q)}Oio>9L(A L^h7PxH7vaj=Y*.~r[?Qtf`FȎɼe\UJ[CӈڸfkݵAq]/f2D (d%(^)8\ځä:^1G* -w8~AU\NJFi;T0$|ckGAgVW /%le zr%9G i[H2!@ X} XY}N9L鉚nI_5;~'^rിp흼#Z{O7J!R;‡O[a -D'wx ƝawISPfFI'Trc:gW7 +VX{rb<#NcAsbpF}1O-KyJ[Usĝr9$Ozi\rHA^s01kGǗq9V.}NfaN|~Rnn1˾٩=JѰ[0*QcMSFOO[v},M+ aSqg iƘa&X20DvYJXOk -|UԟE@%LW%ޭ,I0Lk0 p=sn3g6xLd`|%"Vhҷ\S!9v! lHy0X!"ZLɍ` yv' y -ui.6)1uZm\)f@޽]G8Y M'"ɫ$-ݻ HHY d'յ78uQ onx!1% gaQ>{H$4BIW(m Y=E ry B@#lNJB2D3[jMf?aǞq"L>oE =Cҭuꆒu'_V)Ń~T=w].HHiLr Ye'o]'o`-30rnoߔñh(ɻ0S88=",Y(G!V0~Bf ;4 -ֶtYf\?ũfᬏFĥIdϳZal1]$D'(@#O v,Ibga w\\=&[|#i4, Tkk v'ȵ[XnR侧y^1v&U%.N $m|qo>n揟lj9<(&e7 _~ApChi9mIx(6.6RmLm+|,bL{~?HnB3?h% *㷻`5 !LJNŭ I/%n! reAV/[,jM.-Wh䖟}Dz׾*4j|Rf7ɤE4PNF|.Pk/u|{dMy&ZyHWB ri=0Yߜ7tG^gx: =47_u楶d]PhRc! C4ihqP3ٚD2QxMPDS˰UCn z+<x]q_? c\t4b/7r=(0Q+cLDum6(΂|yXaLj??yͽC~/&-_MD[5V <^:.RV=VaL8tm枣!с| _:7|Zڳ<wjv>*9Ժwhd黎ZdûH.̤9~9slùTm~j&@ !2qǀy ~Տ:#2Ij`#O(EH&:@!˕O^ڿB:rgE-EEC[NwB bj'^!q/*E[9pKH-紕ʘ<nWͺJ]B$(?_ Nc`+Aj-taп?(;ns''E=dУf#3l>,YZm|p'\efc<.tR -$|eO+o{zJIs +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F27 9.9626 Tf 150.705 706.129 Td [(prec)]TJ +0 g 0 G +/F8 9.9626 Tf 26.408 0 Td [(The)-333(data)-334(structure)-333(con)28(taining)-333(the)-334(preconditioner.)]TJ -1.502 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 362.845 658.507 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 365.983 658.308 Td [(prec)]TJ +ET +q +1 0 0 1 387.532 658.507 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 390.67 658.308 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -260.887 -22.202 Td [(b)]TJ +0 g 0 G +/F8 9.9626 Tf 11.346 0 Td [(The)-333(RHS)-334(v)28(ector.)]TJ 13.56 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(ar)1(ra)27(y)-333(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 223.496 0 Td [(psb)]TJ +ET +q +1 0 0 1 415.426 588.484 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 418.564 588.285 Td [(T)]TJ +ET +q +1 0 0 1 424.422 588.484 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 427.56 588.285 Td [(vect)]TJ +ET +q +1 0 0 1 449.109 588.484 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 452.247 588.285 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -322.464 -22.202 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(The)-333(initial)-334(guess.)]TJ 13.878 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-334(ar)1(ra)27(y)-333(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 223.496 0 Td [(psb)]TJ +ET +q +1 0 0 1 415.426 518.461 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 418.564 518.262 Td [(T)]TJ +ET +q +1 0 0 1 424.422 518.461 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 427.56 518.262 Td [(vect)]TJ +ET +q +1 0 0 1 449.109 518.461 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 452.247 518.262 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -322.464 -22.203 Td [(eps)]TJ +0 g 0 G +/F8 9.9626 Tf 21.116 0 Td [(The)-333(stopping)-334(tolerance.)]TJ 3.79 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(real)-333(n)28(um)27(b)-27(er.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.906 -22.203 Td [(desc)]TJ +ET +q +1 0 0 1 172.619 426.236 cm +[]0 d 0 J 0.398 w 0 0 m 3.437 0 l S +Q +BT +/F27 9.9626 Tf 176.057 426.036 Td [(a)]TJ +0 g 0 G +/F8 9.9626 Tf 10.55 0 Td [(con)28(tains)-334(data)-333(structures)-333(for)-333(c)-1(omm)28(unications.)]TJ -10.996 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(required)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(structured)-333(data)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 170.915 0 Td [(psb)]TJ +ET +q +1 0 0 1 362.845 378.415 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 365.983 378.216 Td [(desc)]TJ +ET +q +1 0 0 1 387.532 378.415 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 390.67 378.216 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.922 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -260.887 -22.203 Td [(itmax)]TJ +0 g 0 G +/F8 9.9626 Tf 33.783 0 Td [(The)-333(maxim)27(um)-333(n)28(um)28(b)-28(er)-333(of)-334(iterations)-333(to)-333(p)-28(erform.)]TJ -8.877 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(itmax)]TJ/F8 9.9626 Tf 29.505 0 Td [(=)-278(1000.)]TJ -68.941 -11.956 Td [(Sp)-28(eci\014ed)-333(as:)-445(an)-333(in)28(teger)-333(v)55(ariable)]TJ/F11 9.9626 Tf 142.079 0 Td [(itmax)]TJ/F14 9.9626 Tf 29.505 0 Td [(\025)]TJ/F8 9.9626 Tf 10.516 0 Td [(1.)]TJ +0 g 0 G +/F27 9.9626 Tf -207.006 -22.202 Td [(itrace)]TJ +0 g 0 G +/F8 9.9626 Tf 33.25 0 Td [(If)]TJ/F11 9.9626 Tf 8.912 0 Td [(>)]TJ/F8 9.9626 Tf 10.516 0 Td [(0)-228(prin)28(t)-228(out)-228(an)-228(i)1(nformational)-228(message)-228(ab)-28(out)-228(con)28(v)28(ergence)-228(ev)27(ery)]TJ/F11 9.9626 Tf 265.015 0 Td [(itr)-28(ace)]TJ/F8 9.9626 Tf -292.787 -11.955 Td [(iterations.)-444(If)-334(=)-278(0)-333(prin)28(t)-333(a)-334(message)-333(in)-333(cas)-1(e)-333(of)-333(con)28(v)27(ergence)-333(failure.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf -29.612 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(Default:)]TJ/F11 9.9626 Tf 39.436 0 Td [(itr)-28(ace)]TJ/F8 9.9626 Tf 28.785 0 Td [(=)]TJ/F14 9.9626 Tf 10.516 0 Td [(\000)]TJ/F8 9.9626 Tf 7.749 0 Td [(1.)]TJ +0 g 0 G +/F27 9.9626 Tf -111.392 -34.158 Td [(irst)]TJ +0 g 0 G +/F8 9.9626 Tf 21.857 0 Td [(An)-333(in)28(tege)-1(r)-333(sp)-28(ecifying)-333(the)-333(restart)-334(par)1(a)-1(meter.)]TJ 3.049 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.612 0 Td [(optional)]TJ/F8 9.9626 Tf 40.576 0 Td [(.)]TJ -70.188 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.548 0 Td [(.)]TJ -43.034 -11.955 Td [(V)83(alues:)]TJ/F11 9.9626 Tf 37.507 0 Td [(ir)-28(st)-447(>)]TJ/F8 9.9626 Tf 33.134 0 Td [(0.)-750(This)-435(is)-435(emplo)28(y)27(ed)-435(for)-435(the)-435(BiCGST)83(ABL)-435(or)-435(R)28(GMRES)]TJ -70.641 -11.955 Td [(metho)-28(ds,)-333(otherwise)-334(it)-333(is)-333(ignored.)]TJ +0 g 0 G + 139.477 -29.888 Td [(150)]TJ +0 g 0 G +ET -}D5 -Nntq3!\Uc>Mp_}2 /6 v,5a!l¹;PE3}J>X:`MåtvW6&Rjz ~@ߑzfזrxFQ ;?)'6FA{^dȻ }(_@vnYZ^k -I_} [J)uT.ltG.rjEA5C? ;"I rL wo(=J92^8/;>n>%c܍oY!\~*D5KfO y;(3c Q!uF]IoL.Ɉ"}c"X}ZTA=s+HCm:uXb?G}15-WN_IeTnk*[POWl]J4zPE"R3ɒ胖RiS>:B.KCIR{OVxHBT„AFdZ`7iQ Z*' t}+DsB ВBȿr&'!lYx)AYeuWwvdhٻcjYkb!s+4RG{Xⱱ6eَ,AܿOǂ #W oղ5`uyc8%B!"A;}|A+@V/ -Kp$hKS1H\ʪNpr)F0]ej}ZQ?a9Fj%<%d siboRЮUWez(#7-X^A?'7LSf6P6&Jp:=KiM6nTNQIOeP؂:pO:~#$CrJ\ˇHc(_V~Hw,6ͅ_ -Y/}kbՑfo]Xkd~-j<㱙qE?)(. -odYTӌѣIji(!E{氰7dU4Ɇ=_)-+ (ٗa_C@)l{VhvDowJج~9yWNQ J)&&_zb HayvRj특L{.E0¡+>gC Ϯ0z-Šg?jTX|fk=lZ:m/P^}Gț:F,91홨47T%U&kXW1d|o+;yǠcq+>MHw(U< (hv =9˜&\s3?>pw$yܐ@:+Ffzt( -O>PMF$la<{&e{ ^g@mf=GWsO4Xb;kҙD2jS}'L 7pmc¯Z!Ddj6Q"F g`zLUB%"G zm]$rҫ~.+?estuFgT(OX2Nh=vIKraSFp?К^tc^;XJ t?yy @3"vUr_ \,٘gRï:6>'~d5YfvY5bX((V"1Q؎7@7( i;esY6 - j&Zto>]m:3"Y $Cb3g Q 3k2<1kڄq2OeCU] hBD }~ 2` 4|sM:J k{ m43lIƙA@r {*Gs4^ -3X -`)ٷ2x #䫏Ai(~o`PgA%;,gu64JS KoE߼OG~0,u"-WJAڅyjʿ[3i?6`fR/ٌ|U$BŎkj\f VI y7‡`-dwDkOiůߒnHn'W @Pf 3*_ۑS4z(w%ɠ%򷠃'zj.COU*MN9DF2͏].!>1IBp7z0cJ_u.|"06N#IdP=2N6W(sI_^iY2 -C! 9:.ip c:!P Mgd7r5̊%$f7t#C NAXnØJ׃$V>*>n>oMz.*n8Awxvݷ3(9Fn1H-RycrM]bv!?91rb5 Wlvc :|v/dLTd>{XWc $ݑ__c)0D\?6erFތww5$ڌ7|f0<;4B -ѣr<:#&GA9&.ƀیSYlQ䳷૽ -^I&+׃,cehoƈ%&85hH&uNdSYE'"f/bCMjȠabVYsjbt 0tMg=5 ΝGV_(ʈH떅DޞlR5(Y蕧r\Œ)R> ^Ұk/> 8,O'o|C?s-,AAҔ4*/B}aІp|b3G8_" ^0-|xKӹ Cr~3.(Im+g_\#o!3[1u7}9 {*_ uJio&posmtaCC6eu4S*۠@we0 LF?z?2{ -ɷc.Ri=.A:Ʋټp!\O4j| ! T)f6 򗻽!8EQldV5jpUA{y-}Nʲp7m!WC}JkIi[|(,NwdwS }VZ_[wT|)ۅX3?~dڵ+Ξ53MTa5:V,PLK ]_hqFrښ`Ns IN*w&yYMJ)T6V} uw zElDsZSx'igOq h -oDx vaݙ"dm.@Cԣ<9NdT}sÐL3ft}5ޔ(%y@q|$S>|TY?HπqO:)4^\˿@0*tЬ䁕,^OSPY^y*u1[~ܱwY?56Pi7fIjQOJEE -#YP241Im"}XgccܸZp*Zy\}~$̙ovaޔ48_wRPPIBQ3Fץ(T_2̞ y*GN 4dzL tAl<(ig/ +]ʬ6 -] -i  Ȥ7{P'cGh$}&Z/f_}H[(IV|?C7j?A7;ܱ`rж+Rی>)WwP-MH۠̃@5L#i\}5[!~/;0g7M@)(Z>jTi0^e5" 9'QYND >GZp 4PX -q| -hpU}^Ĝ&=Ll ${*8f\n+ 1bZ>x&YRF*]aX&bz 6G'u/Vzg 6A ,t3)ݶ v5|VJi|kz]'n=19(G"^l?0*݂cd"`KKxrx+/hRCȂ\UUm~{ -X?fD8^s>} - yqCi]~g7ͼ:fP }1 Y,ϧ%y-U-dvIarT'xkѭ6Y\cDGݰ닙k%YfܩJszb Lk+:0&kYbc")A[r0[hpC/}\@@2!vښ[TwQu@ml)8SG{3?Ć;`mqGLP^ܫ"3%G?4I8-)%c4 w2r%HŔt`nvl䩀*/F a1Ծ:#`mm >k;eԊh$Uu$#6K1a=~z?΍wPrQ#{sɆEHdl"|oM 6{ꗡz33XXv0r8rkk9Y8b?*}R[nuD 8_or>J1q;,ߢӭ7m RMocK։^G9ҍFDA@1MK_G=r-"aVK9,Kpjooṋ/\fSe@xj [ FpFQ3 +#cT7)=vǖ`|2xRlR3kC{*uLt3rLpuq@ ^aEn ᶅ?|I;g@ $={bCޣíVJn' {m9_)H3;/9pbJoܗS/ڢ)͚NgoE(\;">M <3T+$+lApk)(jk!9vEX'81X=w*nr^Y0Y:x&иMnQqT|M,%7@4^DQ2S0rY3)wR-| 7Р UMזhȼ:\ h?䴁̸.ms"a>pb}i/}SwѻBdQj4ڈceg"&Zd+Bءl~M}Z_rCeasR´2L K#NOz)y 44^&,K<:vMK9!+E;bX>CAU|xhT&uf0x[5'zk~bucNy֪ZM -D юru[m VRs?߷啌͟ñ 6 n9 -ɘ* aexG̹!J@=/YU?ժ6$Kz76}J?7Ok(J9aK %m-# t~X҄H1 Wِ(9[jf:$;DeKӊgU^(_tҬ;kqavd|5w2 EΜ " 7yYcM]GB:y0&mjVح -} hjɣf/IV+\}3bGU 5"+IU(oVNo⮂b"ޢ:7cxst! @%e)\ /Cso^- qhKpڀ& /_ endstream endobj -1890 0 obj +1921 0 obj << -/Length1 2382 -/Length2 17618 -/Length3 0 -/Length 20000 +/Length 4693 >> stream -%!PS-AdobeFont-1.0: CMBX12 003.002 -%%Title: CMBX12 -%Version: 003.002 -%%CreationDate: Mon Jul 13 16:17:00 2009 -%%Creator: David M. Jones -%Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMBX12. -% This Font Software is licensed under the SIL Open Font License, Version 1.1. -% This license is in the accompanying file OFL.txt, and is also -% available with a FAQ at: http://scripts.sil.org/OFL. -%%EndComments -FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup -/UniqueID get 5000769 eq exch/FontType get 1 eq and}{pop false}ifelse -{save true}{false}ifelse}{false}ifelse -11 dict begin -/FontType 1 def -/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /BWDLNI+CMBX12 def -/FontBBox {-53 -251 1139 750 }readonly def -/PaintType 0 def -/FontInfo 9 dict dup begin -/version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMBX12.) readonly def -/FullName (CMBX12) readonly def -/FamilyName (Computer Modern) readonly def -/Weight (Bold) readonly def -/ItalicAngle 0 def -/isFixedPitch false def -/UnderlinePosition -100 def -/UnderlineThickness 50 def -end readonly def -/Encoding 256 array -0 1 255 {1 index exch /.notdef put} for -dup 65 /A put -dup 66 /B put -dup 67 /C put -dup 68 /D put -dup 69 /E put -dup 70 /F put -dup 71 /G put -dup 72 /H put -dup 73 /I put -dup 75 /K put -dup 76 /L put -dup 77 /M put -dup 78 /N put -dup 79 /O put -dup 80 /P put -dup 81 /Q put -dup 82 /R put -dup 83 /S put -dup 84 /T put -dup 85 /U put -dup 86 /V put -dup 87 /W put -dup 97 /a put -dup 98 /b put -dup 99 /c put -dup 100 /d put -dup 101 /e put -dup 56 /eight put -dup 124 /emdash put -dup 123 /endash put -dup 102 /f put -dup 14 /ffi put -dup 12 /fi put -dup 53 /five put -dup 52 /four put -dup 103 /g put -dup 104 /h put -dup 45 /hyphen put -dup 105 /i put -dup 107 /k put -dup 108 /l put -dup 109 /m put -dup 110 /n put -dup 57 /nine put -dup 111 /o put -dup 49 /one put -dup 112 /p put -dup 40 /parenleft put -dup 41 /parenright put -dup 46 /period put -dup 113 /q put -dup 39 /quoteright put -dup 114 /r put -dup 115 /s put -dup 55 /seven put -dup 54 /six put -dup 116 /t put -dup 51 /three put -dup 50 /two put -dup 117 /u put -dup 118 /v put -dup 119 /w put -dup 120 /x put -dup 121 /y put -dup 122 /z put -dup 48 /zero put -readonly def -currentdict end -currentfile eexec -oc;jAw-=%W)-{ru)rAE(@{빴Q|_R -ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{Jf^ַ>aq4!<_CцcQ%BlS71_ -sQzԜr?ktP2Òl(?69~'@2bt[{ax 7}Gn[TY>T#a1h!;`WƮk>Kj̱JzNc?^<@ qTud[eюj:JnK#2S[ŝBb?̬Mo7aa'gP:δѩ҈ dBd|IH^wMe#DD13W.J.6׮r(N #>Zjhɵ+Uw -$\WN.C(V\N¸3A?l_sMP yfSyֿb`9upPȐNur)L=uhՂD١Pԋ^} --zU*3~HwzQ:.cxv(P}F>48zeU+Jk <>,H~^U>~~)9G-_+ԇ2miΝ1r>Z?ώ8PZm#meDPњ69v=hE_X(yN(9d5p7LZC~ld1:/ g!, -}Q+93V{ QlG 7!;yq+ JA vj/rڜZP)4f+OpX_t~ 5[RZ$ҹ=#e@K*WEt_-J bΣZdh>xNpsGLOh>o련J;J+\m -J6km9"N `D[ h6w{Ac<=ޮv}PC*|sAחfK+1!Sn~#_*]\i!Jiq˘mJ K fy*S}iGV6wa$mv<zZQ^L0NRq!*7uLO=b~_J CI?<5 T zs}uL`M؀"7K 8yO {|v`).D3K$ ,3sÝDRT c2쑃%yD\MS9HQ՝rfG^\55#v[Yϴ)KS^~nMX,8&7a d$ݕ ^t/WyϿ4QK{)=WDd>oeZpٕi-e@PLb|#p"6KLPXzbZc})%LKfO2ݮ (NԴU-eru RyTkl>'H 9т-)u -u+ld4zcLsTJ[:v?WNM* NiLffF/? ̔o_a! Bt]z\ޔR/r4MFwe5']ZPp׶r?PaL'- -c3G}T'ڡn#^>Ҡ'-ހFwMOTDsJQ{ T޾2VNsҎ%Bh$,>oK"Hϯ 2BU7'J(Ǜc1PIݐ.lQjF%jP -1zb2ɮWM+mKf,"/3~į;7/7=o-R%nJB@n6A0hRF9T {(&$߅:hMj %FVڈGv?`S::JepR̶9y?O_4:╱bEV]1Vb,"KoF0dba̟f4G^̬k({: -]-eJbc?hs+΢_sS,atyir%F3gދ&M}ۨ3Dkh`\rud>;iA_ -oF_љckNԋn`v)2ۙ$# 6{⮶\FvUW l -%x[gj6~C "^klCy%)%nWFO/My~ZqiI$CT*x])it4ZV]m剁VO)gi -%-JUƠ[fTX7/.cU,h78M4 z9:̳jmrvP# >bx_Løğ y5R@/{fQC}d~r!4ѐfPo퀿M+^',6_/W{h/њjS}Jz sնj ޳~zL{qA\Rh$):zNSJLyj^Ĕǒ)T~KZAP0JP~(>~9&åv^")X5=hN҂aNز%1v1gv?467H!NjO4پb夹tFy&{wQ[+ZJq -+@ mn,jMnEfI m RGUY8šNK:]ĤB!N?J'A.k{c㣆+/lB~z- NWWcr酉?V,d\$;tTR%M8DLsY{D#4 D{a\j;$ndʟ'KE 'p a_C1daEE4"<[ɬ}77%غk/2Ik'wblZqq@`C,6|U[2ǩ{{_W{l[(Eㅐ&K!.0t)f7lnMwX< | w2#:|м6ޡ4Hkr~IEmvb,[xY@rL'3:`A7C~X+_显R#GAVt]Dd ! 0*uzbrYN%gUX&h͈6OW2^zG iNΫyf_S">.g`B6G -BdXXE}텅eW_llQ6ioF<3ԙZN%Q^w݃{&E:k= BI| -~ڛfKikx zm 3ٳ~mk -R-rHsډZ嬪.]]Mmјrx{%u_p[ -5~`31>pajdoT&]J[[@ǿ&#F8i ^9<we+-lBdv>B2p["jaƯesk40?`oёL^e OagJQIs[lyZ&CXO3¼UjtYVmE!ؓ jyfn(Rv64꾙o^vXrG\PidDFO"pMx -zM"t@-:C.R<L?l)Ld*v9l$٨{K4u)Pyh(aх=žµ.+rc[3(_5&Ҡ',[wNӾAsq;ecITW<1>ip!A3`TyR^"nB؅W>FgIh!ri7?K!n$iQw?P |zZI07h9W$u ]|l촚hN/쎁~z gx ,>fIHU*#CuJB8Hߓ6'bmOqIhzV[ 3mE)wM15 7DP pSE-ѫu8OZ(׆ZЀ|(Tak(.QMCttFs -ߑ3)aBv - :&!%ݛC:0`(}SFIЍ/ܩ@AGYCvv+Yy6 s6kaIJ;`pC|3GXU/-mՉ)*r΅UXJҔi*k6GiKc0y:ee{bf]. si/+"ή,FmUHB4쟜0vIA4a0)rZަLm"2C(67Ð`:R0=_} 50(EM`iB4-O*lWMܴ[?Ie3LtM)lв>Vc8j^Rz_Vq\c6aԾSn6V -8ELG! ;$jHC> -U]o fK -1y&8فݛ!al J $$0X0|^K)"E)ɑ`pL.M!L"40ðaW/7[ -UTVF "f G -xaˍk+!ٵuz"J67ȲYz=oNѩYXM.?Ĝ\ AGv$ߦoQ7@~n@YxKo^PetWE>`o1ƨ=Š -~xyvqe.=70"L3vp6 tA E&E3U@VG Dϋ=|([<2GeT -DO6O@x*A(TعbHЯ'Ym-_X@qs[^8a5e@@l\T>oOHfR,i꽎+r[&y.bF/mMɕߩ!q'R[d[C6|okȟefJqCli|%[XDe6frH{\mlbwnW be8JomT]jӴG,H6Jr<08y+eF3{&F'k<_`M8.]5*44,UL܆%GDcٓPh1_E^n2gVш&ǀ(U"T3dPD bgoї-||⯁l@( -\k]ȡn *dh!bJSaUU;tV?)j~Jb"2\vLp]24=4i wE%w^#0 \+kIc>:;=3J#J|5U~yO×iC2U7:wrIDs.)%R@d0a;=MWi!PJǚ_* (KW#!SQ!Cܽ2g lYrdw?Q}>pTLWސݸihw77Ļ\>PhKmUBCRu~ŕf̮ceg3g$ÀK_Ds͙9(So,F,9慙rG - 6z.(z4~ ^)e9$t?Qd@GRӢUKn݁.84]6 \ /梖7"Vx¿o_EeR$:{r s2.TLf:Pc9 o/O - |2VsxD3K75S2 t cg-̆as{T-SaKƊӍU61vjn9p&a+#:Ci w 287 8+1zI "~Gڧt/r63 (AhGM3FA+Szd'j_|b2*; Oɲ2o(LWܛyὬW|Ł -V.byՊ\ZF=n= J4"5kY*u dz[-h]*ɤˡ0B}_ȀcJڊ|n^kE!ـ:' @1 B8M*zlU؂12߅R+`B#Plȩl# b:XF3 \"ƤgcF6Ȣg4Y&Neȍ\S{Y&ĸ{n.lX4 =:@:L%0:`.tӉ%i XLK>+a|G NK&C7R_ r?(}44*wTmlZDظ 9v+۴cDnW֋K}>%9 Qd6?[ǡA/nJR^@R3(g -RRE&N,$vFeWOzHU0ȉ,&iw{1 26 -Ihg2J;L} 3>̻,f0ҧDv(_4};"_,kr7&*1:n%VNF/n{hc87PM9lZcd^C7NOc{:ODE)>:5r I",(%Lb9T[p) B8i)1*Qi⣅l)OΩcLK? _Ut/5б6&:ig~luK%6-ZKZPc,fo\LTɮ"B~ u\T "|^cP?YJx$]7X͎L21X-q}ʝȇQU$dWZ9 ёnٺÄG\/=Dn}EᄹZ&|4\ʸ:IGK ^}¸߮H:$411 )OZe3V\w:ZR`SF& (eWWFx~̠2Kx|6{^3@)À0u_]_cO:ڰ&*$-t9&1ZWQj3;\/:XS3,e^#giSJwۑ\fPn4Alv ,_ClKDW3^ nB0B`T -dj7~Lk j_Xf+2 th/<`u'؉-.$`RXu{u <"m94͌+]ek5:OWȼT켰5N\Z([U^H[pxY%zؒd^#<_DYk& G_$; j:K _,ޓ}_fZ_&Z>= -ZtwR:p7l=F;S?P!7?`p00p21!g+!rGR\kn'Ռ;'usnҲ1HU A_#ks^zDEhOV&O p7jd]FMXeZ6B0Ћ*\&?{#d T8 gklYcE.^Iu>uh#fFaLMƂ;Td۵\=#fQr+_u3uϖ! M;k1R_eC<>)ZՈwKF:J@-kh*?%R0|tcfE;N#N_VE^QÔ4FԐ67?`(bT/]D=StC=]x"m9@MD1Ap>ZF_VIp&a0L:ZCA:poZUy7B0&cGB[_^^,7b8^hԘx;;#@uT_9iH$ud_@Zd,y0xT2a.q>*%ayB^QU +Hk=ɹJx` /K83`J|n^MH%PtXs=~zS']-S [߀U%&ʳOk8#0T=ZWamcB;}OH>ؘ#GEcձPݬg4|gr R -xY,X_jcsX[4ڦv.&KPD=^fsއ!レV[hdMUT;ޘ9?4IVfVMey.p[F]WUVpFY4)&úb#F 4Hy~kqZ\b@QUS?qQ/W)/~FYJ̘^եTW ImvjA6aEEr=N1Qi/Uqg(|1M#d6ulcT IWxKfeJKޭwO }^M{!C -a FBx$Î]4mN.}"m<.<>aF2H|.!6-ۈR:Zh]mnZILU0ہV1rj^Ag"E3K -\[~O0q.-X%ҀJ \ ͮaްYQ=&w,cX\8 ϢȭXCDJG]صvHukZ 5O7kD6,? N+);mBt|] -(( 6F,?*Mu;M3`(}K_Y[qxÉ{}>D<2>%,GTzΔeL+ ,#<=v%Jwʶ`?=2~4%4~4_t0^KЙM+q -ݲ%EJl$ɍCtx뾮^ׄVְ+D;kc#9!b9XF"oMWCQHg-#Mbd=G6 މi? -L;ef\M&pwj<$7uSBgͅ Pi"WC id_SگFgE^JEn`= -A*8G`OC)Kc_p(cf/2a򢡡*"A1cz.^`WZ^!j  ްE[pQۤ**HI t7])s}x;L\~M1ptcm3E%o{.Bv΃Nv^++O=GX<&j0[ omǘui}Nj4[|7yY/ץQ++%1[tS*l֗e2'UT%Tn5R*ݾMW&FL/6pLAkwcZVTpkzG)1 s˧fE9 u{GtoT -y\zh^!՛!$_ҙX -ULґkHL󤽓fU u!h lMEݦBU#5☦Ԅ &$&LV%F${/:ɢS}ci21H957wa狂qvL 5((W{Y5%zJ{0ZvjTFgԛT}S?hiKGfC2=dH_Z$sLlʔ:~.MB~-Z~i?_(%}4]pj`^pIIG>{^@.N@cb?SQ"q)& )U&vht c~,XF?=8ht7w’Hh]"w jy6yB Җlj]M?xqNay\/y̛|W!5~es2ӕA /O=A!7h -=/cxn4m۸/=T':;F3o`s.UIEֵ,F ;>X 'VԗC-]PA N7-mK6o!*>2t\wk7_DMӀGW[3ew)|c:_,|8dLe"fp#$ o k'9DEA ?;.dT,JMwN9zpHx64LeAg.e%p$D/[& }?]0tVA$8xbY/PPhwsAAveR;.8>xj2R)M|HHTjTKĔ --+m쟟}4/2Oi62Xκ8lcfU -nOX 9'鹇8"Q(K=P_#߈KLڬ$A&[mEuu#G={ M ^OM>}zc#shmD?%oUqؐ -ﷀw!4/*1Y#^L+Sm+}_FӁtK|2#+C]D BaGƝ%35%/' >7W_XF6$+`^?0Co2j)JnNQ640CCdeZ?Uͣ={ Qd[X tYSɖ<9h P=78A3pbs8NL5xG[du˖ga_zukӴ _=w{A H72R!~̠%|VY2IJO^QC/Z<.|+!]狗<+*Z`g"f*jrd:-xE];OXScsW'_H&pu`s -yx|MXFmg|h֊GJd_}SG?(>8*`TH|149wl/,y^6J]!T[nV%$dZbU4CT$)%iP#vR7ATe6sq@N|jt -u; +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F27 9.9626 Tf 99.895 706.129 Td [(istop)]TJ +0 g 0 G +/F8 9.9626 Tf 29.232 0 Td [(An)-333(in)28(te)-1(ger)-333(sp)-28(ecifying)-333(the)-333(stopping)-334(crit)1(e)-1(ri)1(on.)]TJ -4.325 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf 40.577 0 Td [(.)]TJ -70.188 -11.956 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(in)]TJ/F8 9.9626 Tf 9.547 0 Td [(.)]TJ -43.033 -11.955 Td [(V)83(alues:)-478(1:)-479(use)-351(th)1(e)-351(norm)28(wise)-351(bac)28(kw)28(ard)-351(error,)-354(2:)-479(use)-350(the)-351(scaled)-350(2-norm)-351(of)]TJ 0 -11.955 Td [(the)-333(residual,)-334(3:)-444(use)-333(the)-334(residual)-333(reduction)-333(in)-334(th)1(e)-334(2-norm.)-444(Default:)-445(2.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(On)-383(Return)]TJ +0 g 0 G +0 g 0 G + 0 -19.926 Td [(x)]TJ +0 g 0 G +/F8 9.9626 Tf 11.028 0 Td [(The)-333(computed)-334(solution.)]TJ 13.879 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(inout)]TJ/F8 9.9626 Tf 26.096 0 Td [(.)]TJ -59.582 -11.955 Td [(Sp)-28(eci\014ed)-333(as:)-445(a)-333(rank)-333(one)-333(arra)27(y)-333(or)-333(an)-334(ob)-55(ject)-333(of)-334(t)28(yp)-28(e)]TJ +0 0 1 rg 0 0 1 RG +/F30 9.9626 Tf 223.496 0 Td [(psb)]TJ +ET +q +1 0 0 1 364.616 558.881 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 367.754 558.682 Td [(T)]TJ +ET +q +1 0 0 1 373.612 558.881 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 376.751 558.682 Td [(vect)]TJ +ET +q +1 0 0 1 398.3 558.881 cm +[]0 d 0 J 0.398 w 0 0 m 3.138 0 l S +Q +BT +/F30 9.9626 Tf 401.438 558.682 Td [(type)]TJ +0 g 0 G +/F8 9.9626 Tf 20.921 0 Td [(.)]TJ +0 g 0 G +/F27 9.9626 Tf -322.464 -19.925 Td [(iter)]TJ +0 g 0 G +/F8 9.9626 Tf 22.589 0 Td [(The)-333(n)27(um)28(b)-28(er)-333(of)-333(iterations)-333(p)-28(erformed.)]TJ 2.318 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Returned)-333(as:)-445(an)-333(in)28(teger)-334(v)56(ariable.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(err)]TJ +0 g 0 G +/F8 9.9626 Tf 19.67 0 Td [(The)-333(con)27(v)28(ergence)-333(estimate)-334(on)-333(exit.)]TJ 5.237 -11.956 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Returned)-333(as:)-445(a)-333(real)-333(n)27(um)28(b)-28(er.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.925 Td [(cond)]TJ +0 g 0 G +/F8 9.9626 Tf 28.532 0 Td [(An)-280(estimate)-280(of)-279(the)-280(condition)-280(n)28(um)28(b)-28(er)-280(of)-279(matrix)]TJ/F11 9.9626 Tf 204.226 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(;)-298(only)-279(a)27(v)56(ailable)-280(with)-279(the)]TJ/F11 9.9626 Tf -215.323 -11.956 Td [(C)-72(G)]TJ/F8 9.9626 Tf 18.987 0 Td [(metho)-28(d)-333(on)-333(real)-334(data.)]TJ -18.987 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(optional)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(Returned)-287(as:)-421(a)-287(real)-287(n)28(um)28(b)-28(er.)-429(A)-287(correct)-287(result)-286(will)-287(b)-28(e)-287(greater)-287(than)-287(or)-286(equal)]TJ 0 -11.955 Td [(to)-267(on)1(e)-1(;)-288(if)-267(sp)-28(eci\014ed)-266(for)-267(non)1(-)-1(r)1(e)-1(al)-266(data,)-280(or)-266(an)-267(error)-266(o)-28(ccurred,)-280(zero)-267(is)-266(returned.)]TJ +0 g 0 G +/F27 9.9626 Tf -24.907 -19.926 Td [(info)]TJ +0 g 0 G +/F8 9.9626 Tf 23.758 0 Td [(Error)-333(co)-28(de.)]TJ 1.149 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf -32.379 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf -29.611 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ -50.035 -11.955 Td [(An)-333(in)28(tege)-1(r)-333(v)56(alue;)-334(0)-333(means)-333(no)-334(error)-333(has)-333(b)-28(een)-333(detecte)-1(d)1(.)]TJ +0 g 0 G + 139.477 -173.35 Td [(151)]TJ +0 g 0 G +ET + endstream endobj -1892 0 obj +1926 0 obj << -/Length1 1599 -/Length2 8420 -/Length3 0 -/Length 10019 +/Length 80 >> stream -%!PS-AdobeFont-1.0: CMBX9 003.002 -%%Title: CMBX9 -%Version: 003.002 -%%CreationDate: Mon Jul 13 16:17:00 2009 -%%Creator: David M. Jones -%Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMBX9. -% This Font Software is licensed under the SIL Open Font License, Version 1.1. -% This license is in the accompanying file OFL.txt, and is also -% available with a FAQ at: http://scripts.sil.org/OFL. -%%EndComments -FontDirectory/CMBX9 known{/CMBX9 findfont dup/UniqueID known{dup -/UniqueID get 5000767 eq exch/FontType get 1 eq and}{pop false}ifelse -{save true}{false}ifelse}{false}ifelse -11 dict begin -/FontType 1 def -/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /VUBHOM+CMBX9 def -/FontBBox {-58 -250 1195 750 }readonly def -/PaintType 0 def -/FontInfo 9 dict dup begin -/version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMBX9.) readonly def -/FullName (CMBX9) readonly def -/FamilyName (Computer Modern) readonly def -/Weight (Bold) readonly def -/ItalicAngle 0 def -/isFixedPitch false def -/UnderlinePosition -100 def -/UnderlineThickness 50 def -end readonly def -/Encoding 256 array -0 1 255 {1 index exch /.notdef put} for -dup 97 /a put -dup 98 /b put -dup 99 /c put -dup 100 /d put -dup 101 /e put -dup 102 /f put -dup 103 /g put -dup 104 /h put -dup 105 /i put -dup 108 /l put -dup 110 /n put -dup 111 /o put -dup 113 /q put -dup 114 /r put -dup 115 /s put -dup 116 /t put -dup 117 /u put -readonly def -currentdict end -currentfile eexec -oc;jAw-=%W)-{ru)rAE(@{빴Q|_R -ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{Jf^ַ>aq4!<_CцcQ%BlS71_ -sQz5>?Q;8F}Q|-K,}>PD -65~`dU6+[\5тqFB>ֳ1^;!'VQ!<$6jT&UVDq~`XhZwU W67$hV%tj6~h<56{O.o"Fחlai!N;/ie L5sh!YB yֻM~|M{\B3ևxYXިmHo%l)CKFuԴlY~<,&Z#^gx'6wB8IWذ~D.TP>KoNzS6=('a`T seSdDVzL^|kb=yjaI>Ř(ץ4^? 'Kn`4Q9 . `3oh~Fq;zJ50EPX*ƚQ 㗘k4]aҡpM9\l[Z)uƔT\0kebIA;/{c Jn^GkgQ0Y'ISD;A39 h?ݦbJU5zw jpJBUY{e#Fws@rISp^YoZ|5h2*لEA4W?|PCx' А4 -v0U'J#oqӉY%egg|* )SZo8r;8Wlv"r`UkL==~V -X` -UvSw;8wwH_,^~q\3[l&8E};`Zګ)HZ/I ;3w -h$j/z/^,_C~A7kpRhbK0sQrI;YD4u-:p׼V1y&EF#RdȷnfNEzfL)3xg23) -pEY%NXA@WQQ X$r d7UmwK6+2a,n9VbA:)48z>Im8XCهLFʺߦkg'f 2 z?qe3?-&1VKl/>4(5p,Jr6`pԚd׌^d';@8]mB̾"D%i-{tx*yt:`Z]K=.;TƪXmj nѹ5&.F~P]^7FoQv3:2rHS7!S5ŷISvG0;=f/bkl9d n&CO l"*e@n!6}Zjou#|)f*,E^a(, L Ah_ȪRlgYhaƐi% )m`RDӇO4;X @4chC.4Fc|E-5 OA)R3N{o`aYUrBs-15s܏i%ZY+W;/J"u;DgI x9"rwh -Rʊ~KhR^44s7M֒kL%vOqT+ovlo\+pm\gw٧Ӡ9_8i-d) ĩ#CM# h8pU"w.WV:ʠǜOc #%^oFxEkl ȃ<6wyh[$fuq%_Cn \Ȫp#vMժd2 g jRZ,xrF8P<(F`~W/dCnǗtPf"'nLCeJ59&yۄe^OI0\^PKGd@2ʨ󌱇lW/rZ\~ldB (#o}HZswHo܆0%oE=pdK)d/gYR[+7! nIw8 MF'/`6-d9Wt{`>P)$w>]{ _JJ[|aJЪCWk΢gLs 1/U wwKOwZoYz8gʟ821ZYYK%UW`ߤlP`B?1e1 t߭c`jD]< j#Sk@_6&"|  135~j5jag+PCTo+LxI@UoW.0#6!$_ȧ`r{s{] - ݤ"Amөe~]i栛ox;Ģ)Ąv{ԒNˡʀ8z -D4>uqlGmt -ZбK`4ҳWL d)yZd\m:췋s0j -dɎat@әV$Kas)~$8+\[)K9+%?< $_nRnWQ-U*up4Š[i}H=`SUPa{0'QW^t>.9Nzlc [=ˆ]8D8"QL wek\/+w^8 ZLn}69α$uT[e/DjFhGČ3eWfTf!>3rn_&kJӍne mW%q*5sIsoVgoꡯ+EƿR7ll,#4~^$)Cȗ`P{R!0K?.&V퍗#fRG/0Q Spe,W4`W16 +Bo5@.{27qGiʣTjzpGrb`Bn] 5EP£*Ӝ-f?75ko2|pwleP iאI͒wsz;SfT`De/:M#,N C@Xrٓn_ʴM[H-f4#u/VNy\#x[6§4̷,.aI-D=(Ao.Q$-q 4rh!-i vfrؠ%/^ -)p*d'D_mӝ>lC~t/a$Go@ܞ+A9IcU!}pIG"RU)صJ@uІ`YϪCuJUm8*8>B -tk1@͠YlW3[>[6&pCKƣ܉f&N0]X?TpP Y,y簢)4Ubj"fhEWdjt_8 |\YNeԭ5쀬ы; 44Ye*C#JahT+vX{\6))rfESд5hsdU[YJ*L |og9w>!>C4?m/.q߉K|8R1!>ȱ:& Kkq h!ʅƝC4k<ídqaeX&Z;SRMsh><^.9٠3n5% +YLjQA4OV?r%Lxє*g0fLjl}Xl:D0_.4w-bm!xMᑘ]&(3CXjȃ;&t]u`N X+]G -.AnNLZLpF&rw4?'YzB6VVbī̑uvf R~tgReObv+~{e{4Qe/wDk!P3F4佑\ˆ`3LҾ5](qF:qpv= B%NQjS.n}(玜hqr fFu#;F+q8Jh2k0uC;`dXMK/W V8 <_\j4nv\VdQjyf|@uO 'ˁ%(aq3\5L@]줣S`}E\T@6 Ɂ@aUF~#qOYf_1}nbjn(xի&{e#΋uFP0qPQ:Lrn;,z2Vd_6l2įGU0.iܲO@R9~ny% R7o:oC̽E "?EEeBզ(V= -tm3,#/ؗUWFlj}ıN?2)lI$-jƆ|63v oE>[bhKE]׶8ِT3k :`vy76$M-?Sc6jV Su4oڪ狢AXmtM/zNF5Q` = v 9{`"pN-:MxBL!MO i7ڢ{XIAK@i##^Ғ]К)~N 4FtpBg0SxR R#dF;BկgZFiT7B<~X&ky\<'&;-1>_ko`)tnGu,ȁ32Y$+2n%T$ \i n[o pY0w?=5ih_mt;?c%VXe3ZED;lـGJ_"*Ac(4Q`^"?Um#`D'^D)"M˼$>2vqþGUW} e"K#h-b̸j9P񗞑(Si9}k%|78}0Eb?VC]P36j+&ܚrM~/7La_VCg;Ls17AM"ڱ9hhT://Ηl [2̄=qY푏 C\D[a )~;I \4[|xa^%=k$ƏFߵx̽Xō ^g+k ̑ԑޔ{? XZn-|n|7cLԝo&kt4OilE눼{*ִ/tЍe w߀br?c ;2A_;erqW:P=awh'dS?TZy?"t^o!=0<I^@0ݫ}JYfwdLӊɗhX/='&{&E -Iۛ}l|_;sN27vX6>MJ/̅AnVkQ6/#m,٠Q%\{>ۋ"-|KvRU$-Q~YӉׇyMvh> stream -%!PS-AdobeFont-1.0: CMEX10 003.002 -%%Title: CMEX10 -%Version: 003.002 -%%CreationDate: Mon Jul 13 16:17:00 2009 -%%Creator: David M. Jones -%Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMEX10. -% This Font Software is licensed under the SIL Open Font License, Version 1.1. -% This license is in the accompanying file OFL.txt, and is also -% available with a FAQ at: http://scripts.sil.org/OFL. -%%EndComments -FontDirectory/CMEX10 known{/CMEX10 findfont dup/UniqueID known{dup -/UniqueID get 5092766 eq exch/FontType get 1 eq and}{pop false}ifelse -{save true}{false}ifelse}{false}ifelse -11 dict begin -/FontType 1 def -/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /OUFNAH+CMEX10 def -/FontBBox {-24 -2960 1454 772 }readonly def -/PaintType 0 def -/FontInfo 9 dict dup begin -/version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMEX10.) readonly def -/FullName (CMEX10) readonly def -/FamilyName (Computer Modern) readonly def -/Weight (Medium) readonly def -/ItalicAngle 0 def -/isFixedPitch false def -/UnderlinePosition -100 def -/UnderlineThickness 50 def -end readonly def -/Encoding 256 array -0 1 255 {1 index exch /.notdef put} for -dup 115 /radicalBigg put -dup 88 /summationdisplay put -readonly def -currentdict end -currentfile eexec -oc;jAw-=%W)-{ru)rAE(@{빴Q|_R -ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{ޣ!fpG?[Ttku'5O P 1[.BBBo0 VoG;wCMdK&\YT{#v m E57G~ߡ +3[ť73ŝ:&uN]B Je v(7JIFO/kZ)Ckz*7Xuvw نg&֋U+DWAԳPx;%]r@G~fJ48{vFM"~wvԇ1I mJXk k51D[Wopl^(;w\FIzHy$$r ./xj83>z>9Nќv-v)TTD*IL}qbx>u}&:=l]o:Eiۧ[A^ [/ER;R;"6(ũK?C!>;gh) Ga 9nQ<@(<|+)}Pˇ2&dqmc#IhFeI-S n|{cfyv40]vO?݋ZωN#I'\9wÅPp`i(2NzfAʑ[?}7N)-t)^EI(^ܒM[ ҽTf[z{ rC2YcCŤŬfvnTgTBg^fOW 3Kgiuؓe>Nוq1S.֢+0ȉ<]vmZ =WVhY&R{!2ܼ'Nr6ɱbk_ک'@13{MKݐ__GaTAbʊ0ZB{䤡 d2J> 7RK7׏T;Ȱ+[4B*q4~;7D 5W?S&3[L^'{P)V̴~B,10Z]TC2e;=@7n6 -|,E+ʻ%_B κ7() xK6qQl: `qyi_O7MK!5(sfgHQ1N9!;8 @ߙ:Ϭ&-(D00fkC[x'=xWH i~ -swOVꮈiJL%{yݘF": -1[[ nse]-D.ct&_C$I]Dؘƫ'DGSQ$ҀpՄ6<~"Dg՞1o/+8>YX+갭҅:fXM(~t~xc+`Hcv"+!gl;%kι #v" %MA6ֆN{%]D`;>I뼳g!CSiØofglu:o3yUݢ\a;'f@ᛙv⬊Zj NB].yiW3 5{$";Y]`!i1{Zn|VS,v6.am$|%>)TCk"3o@*RU,6<#44`xDo:Et{M6#:]wޞCA'j]=K4EA=:MOa+VX[b,ma*69Z]ʤ|`?tvFwr2)/-Ov5@y9 ]#x~{! ˣz{TD]7d{WtMpiځ(+\, pZ]8âwcl_E΀G#ӱ¶ꭚ=]Y7*rQ !WQӄrgdM9n*P b3Bxe @1RhOj\Bycwzj eH? U~pE.kIc4g<BZ\B5hrEd^wŠim ;2 "? -]`_Z 8P\w)9%9dS6X?}+LYJ^y@1 (h{Uem,F/d"H7?j V}2 -l -Olb(FY8G߱4. eS]<b@{ɤA.S f>oLơ6/翔OHeAᤇ#:j -7 6Y^Rvr?NVIz1x^PA~KutS`ZGR`Tg3H4'eKR `܁k+j|7oHNPqJg4{"NJ.Go[yv.IS+9jULd+fu˥~mQfsGMb)RY2>y2d=Ue8@*<*?!.y]PhNЫ1qrYgMR/ -_X仾ru'Apue+`Y>q WXG6dZ e T_j^-'[nnyOZ:O?U3z;Fra}/_ -D'o!OQ'ʱL@ .!Ux~eRj=U=ΥDqKߒ&u9qD<: Lb.3c%x]׉; aRy Z:Սl^nz!/rUզ4)hOMMd 14/Xsa0"A묵erᶒlBNr8ݰY~ry9h?chٞ!c -Y猅Oc}q5\(y!^(L 153jvzh9鷔7ZCY即O:,!UC$*h[G%4O#+y6">RR-:#XL%YDd,[FTꠤgXcб:o9LJ\{h%v9'tUBQŕ&Fpԥ,8W뗶FF-QEWDEz5s#.TD1R0݊:$}+r*WޮUb\]Evs|?LkoOiFx(8z1d8w .b"%K^i59C|]J4ptjŊÑCȇ -ĭGe/" # @!aMbE0U?\ bYӽImʗ.`x+2qZ:j㱦tWMK;8ƦA s&q\oqVjQ %i3k$n'=E#* -WVV IPQ8>i 4bm miʾ.P`W0'20vwl.]elЂ!Yz"FkR͙,`k%Iuban\Rڇud :t?YS/WXlO]{j -f_p|=ZO(+`H -5 ~7dh֫]V1Ԅ2D(W[/tG -W ( zK֍3Z!>LWaF;w0cA܂LcEa; *DG5HX&sw*;s(#PBپ hoOt%J u.:ۃ &essE3a̕*Pv*k]5D6?x3{%ЯEiVjӨPNx[ ЩnP1#WvA8޿6dzLtGb5Pw,.#gF:4:uBV@aO2zn! `pgTwaG7= bzsФY@}0{9B6$ʗԧЋ>n4=#|h~ޕ4R_= !\SNм.bZ&zt~^ױ+[q'_`XƛS]LgLovc 4ˣkR.zSK.$ƪo5nPW EjISn$I~9VTm'`_JMWޮ8>`Q]K_CP(8!J٪S׊]lޯ_ɐBALQs&^ -1_%@quu=8LTUҧ{]訍-SHp׍/[Z +0 g 0 G +0 g 0 G +BT +/F16 14.3462 Tf 99.895 706.129 Td [(References)]TJ +0 g 0 G +/F8 9.9626 Tf 4.982 -21.821 Td [([1])]TJ +0 g 0 G + [-500(D.)-441(Barbieri,)-468(V.)-441(Cardellini,)-467(S.)-441(Filipp)-28(one)-441(and)-441(D.)-441(Rouson)]TJ/F17 9.9626 Tf 267.833 0 Td [(Design)-457(Patterns)]TJ -252.336 -11.955 Td [(for)-441(S)-1(ci)1(ent)-1(i)1(\014)-1(c)-441(Computations)-442(on)-441(Sp)51(arse)-441(Matric)51(es)]TJ/F8 9.9626 Tf 210.802 0 Td [(,)-447(HPSS)-424(2011,)-447(Algorithms)]TJ -210.802 -11.955 Td [(and)-375(Programming)-374(T)83(o)-28(ols)-375(for)-374(Next-Generation)-375(High-P)28(erformance)-375(Scien)28(ti\014c)]TJ 0 -11.956 Td [(Soft)28(w)28(are,)-334(Bordeaux,)-333(Sep.)-333(2011)]TJ +0 g 0 G + -15.497 -18.666 Td [([2])]TJ +0 g 0 G + [-500(G.)-341(Bella,)-343(S.)-341(Filipp)-28(one,)-343(A.)-341(De)-341(Maio)-341(and)-341(M.)-341(T)84(esta,)]TJ/F17 9.9626 Tf 235.488 0 Td [(A)-365(Simulation)-365(Mo)51(del)-364(for)]TJ -219.991 -11.955 Td [(F)77(or)51(est)-365(Fir)51(es)]TJ/F8 9.9626 Tf 52.03 0 Td [(,)-343(in)-341(J.)-340(Dongarra,)-343(K.)-341(Madsen,)-343(J.)-341(W)84(asniewski,)-343(editors,)-343(Pro)-28(ceed-)]TJ -52.03 -11.955 Td [(ings)-394(of)-395(P)84(ARA)-395(04)-394(W)83(orkshop)-394(on)-395(State)-394(of)-395(the)-394(Art)-394(in)-395(Scien)28(ti\014c)-394(Com)-1(p)1(uting,)]TJ 0 -11.955 Td [(pp.)-333(546{553,)-334(Lecture)-333(Notes)-333(in)-334(Computer)-333(Science,)-333(Springer,)-334(2005.)]TJ +0 g 0 G + -15.497 -18.666 Td [([3])]TJ +0 g 0 G + [-500(A.)-316(Buttari,)-320(D.)-317(di)-316(Sera\014no,)-320(P)83(.)-316(D'Am)28(bra,)-320(S.)-317(Filipp)-27(one,)-100(2LEV-D2P4:)-436(a)-316(pac)28(k-)]TJ 15.497 -11.955 Td [(age)-388(of)-388(high-p)-28(erformance)-388(preconditioners,)-218(Applicable)-388(Alge)-1(b)1(ra)-389(in)-388(Engin)1(e)-1(er-)]TJ 0 -11.956 Td [(ing,)-393(Comm)27(un)1(ications)-382(and)-381(Computing,)-393(V)83(olume)-381(18,)-393(Num)27(b)-27(er)-382(3,)-393(Ma)28(y)83(,)-393(2007,)]TJ 0 -11.955 Td [(pp.)-333(223-239)]TJ +0 g 0 G + -15.497 -18.666 Td [([4])]TJ +0 g 0 G + [-500(P)83(.)-691(D'Am)28(bra,)-780(S.)-691(Filipp)-28(one,)-780(D.)-691(Di)-691(Sera\014no)-819(On)-691(the)-691(Dev)28(elopmen)28(t)-691(of)]TJ 15.497 -11.955 Td [(PSBLAS-based)-430(P)28(arallel)-430(Tw)28(o-lev)28(el)-430(Sc)27(h)28(w)28(arz)-430(Preconditioners)-731(Applied)-430(Nu-)]TJ 0 -11.955 Td [(merical)-245(Mathematics)-1(,)-262(Elsevier)-246(Science,)-263(V)83(ol)1(ume)-246(57,)-263(Issues)-245(11-12,)-263(No)27(v)28(em)28(b)-28(er-)]TJ 0 -11.955 Td [(Decem)28(b)-28(er)-333(2007)-1(,)-333(P)28(ages)-333(1181-1196.)]TJ +0 g 0 G + -15.497 -18.667 Td [([5])]TJ +0 g 0 G + [-500(Dongarra,)-529(J.)-490(J.,)-529(DuCroz,)-529(J.,)-529(Hammarling,)-529(S.)-490(and)-490(Hanson,)-529(R.,)-529(An)-490(Ex-)]TJ 15.497 -11.955 Td [(tended)-478(Set)-478(of)-478(F)83(ortran)-478(Basic)-478(Linear)-478(Algebra)-478(Subprograms,)-514(A)28(C)-1(M)-477(T)83(rans.)]TJ 0 -11.955 Td [(Math.)-333(Soft)28(w.)-334(v)28(ol.)-333(14,)-334(1{17,)-333(1988.)]TJ +0 g 0 G + -15.497 -18.666 Td [([6])]TJ +0 g 0 G + [-500(Dongarra,)-444(J.,)-444(DuCroz,)-444(J.,)-445(Hammarling,)-444(S.)-422(and)-422(Du\013,)-444(I.,)-444(A)-422(Set)-422(of)-422(lev)28(el)-422(3)]TJ 15.497 -11.955 Td [(Basic)-357(Linear)-357(Algebra)-357(Subpr)1(ogram)-1(s,)-362(A)27(CM)-356(T)83(rans.)-357(Math.)-357(Soft)28(w.)-357(v)28(ol.)-357(16,)-362(1{)]TJ 0 -11.955 Td [(17,)-333(1990.)]TJ +0 g 0 G + -15.497 -18.666 Td [([7])]TJ +0 g 0 G + [-500(J.)-265(J.)-266(Dongarra)-266(and)-265(R.)-266(C.)-265(Whaley)83(,)]TJ/F17 9.9626 Tf 162.063 0 Td [(A)-295(User's)-296(Guide)-295(to)-296(the)-295(BLA)25(CS)-295(v.)-295(1.1)]TJ/F8 9.9626 Tf 156.589 0 Td [(,)-279(La-)]TJ -303.155 -11.956 Td [(pac)28(k)-291(W)84(orking)-291(Note)-290(94,)-299(T)83(ec)28(h.)-290(Rep.)-291(UT-CS-95-281,)-299(Univ)28(ersit)28(y)-290(of)-291(T)84(ennesse)-1(e,)]TJ 0 -11.955 Td [(Marc)28(h)-334(1995)-333(\050up)-28(dated)-333(Ma)28(y)-333(1997\051.)]TJ +0 g 0 G + -15.497 -18.666 Td [([8])]TJ +0 g 0 G + [-500(I.)-488(Du\013,)-527(M.)-488(Marrone,)-526(G.)-488(Radicati)-488(and)-488(C.)-488(Vittoli,)]TJ/F17 9.9626 Tf 244.569 0 Td [(L)51(evel)-500(3)-500(Basic)-500(Line)51(ar)]TJ -229.072 -11.955 Td [(A)26(lgebr)51(a)-463(Subpr)52(o)51(gr)51(ams)-463(f)1(or)-463(Sp)51(arse)-462(Matric)51(es:)-669(a)-462(User)-462(L)51(evel)-463(Interfac)52(e)]TJ/F8 9.9626 Tf 292.206 0 Td [(,)-475(A)27(CM)]TJ -292.206 -11.955 Td [(T)83(ransactions)-333(on)-333(Mathematical)-334(Soft)28(w)28(are,)-333(23\0503\051,)-334(pp.)-333(379{401,)-333(1997.)]TJ +0 g 0 G + -15.497 -18.666 Td [([9])]TJ +0 g 0 G + [-500(I.)-358(Du\013,)-365(M.)-359(Heroux)-358(and)-359(R.)-358(P)27(ozo,)]TJ/F17 9.9626 Tf 162.007 0 Td [(A)26(n)-381(Overview)-381(of)-381(the)-381(Sp)51(arse)-381(Basic)-381(Line)51(ar)]TJ -146.51 -11.956 Td [(A)26(lgebr)51(a)-348(S)-1(u)1(bpr)51(o)51(gr)51(ams:)-455(the)-348(New)-349(Standar)51(d)-348(fr)51(om)-348(the)-348(BLAS)-348(T)76(e)51(chnic)52(al)-349(F)77(orum)]TJ/F8 9.9626 Tf 320.465 0 Td [(,)]TJ -320.465 -11.955 Td [(A)28(CM)-334(T)84(ransactions)-334(on)-333(Mathematical)-333(Soft)28(w)27(are,)-333(28\0502\051,)-333(pp.)-333(23)-1(9{267,)-333(2002.)]TJ +0 g 0 G + -20.479 -18.666 Td [([10])]TJ +0 g 0 G + [-500(S.)-451(Filipp)-28(one)-451(and)-451(M.)-451(Cola)-56(janni,)]TJ/F17 9.9626 Tf 165.708 0 Td [(PSBLAS:)-466(A)-466(Libr)51(ary)-466(for)-467(Par)51(al)-51(lel)-466(Line)51(ar)]TJ -145.229 -11.955 Td [(A)26(lgebr)51(a)-420(Computation)-420(on)-420(Sp)51(arse)-420(Matric)51(es)]TJ/F8 9.9626 Tf 181.375 0 Td [(,)-661(A)27(CM)-400(T)83(ransactions)-401(on)-401(Mathe-)]TJ -181.375 -11.955 Td [(matical)-333(Soft)27(w)28(are,)-333(26\0504\051,)-333(pp.)-334(527{550,)-333(2000.)]TJ +0 g 0 G + -20.479 -18.666 Td [([11])]TJ +0 g 0 G + [-500(S.)-425(Filipp)-27(one)-425(and)-425(A.)-425(Buttari,)]TJ/F17 9.9626 Tf 152.315 0 Td [(Obje)51(ct-Oriente)51(d)-442(T)77(e)51(chniques)-442(for)-441(Sp)51(arse)-442(Ma-)]TJ -131.836 -11.955 Td [(trix)-407(Computations)-406(in)-407(F)77(ortr)51(an)-407(2003)]TJ/F8 9.9626 Tf 153.485 0 Td [(,)-615(A)28(CM)-387(T)84(ransactions)-387(on)-386(Mathematical)]TJ -153.485 -11.956 Td [(Soft)28(w)28(are,)-334(38\0504\051,)-333(2012.)]TJ +0 g 0 G + -20.479 -18.666 Td [([12])]TJ +0 g 0 G + [-500(S.)-267(Filipp)-27(one,)-280(P)83(.)-267(D'Am)28(bra,)-280(M.)-267(Cola)-55(janni,)]TJ/F17 9.9626 Tf 197.776 0 Td [(Using)-297(a)-296(Par)51(al)-51(lel)-297(Libr)52(ary)-297(of)-296(Sp)51(arse)]TJ -177.297 -11.955 Td [(Line)51(ar)-352(A)26(lgebr)51(a)-352(in)-352(a)-352(Fluid)-352(Dynami)1(cs)-352(Applic)51(ations)-352(Co)51(de)-352(on)-352(Linux)-352(Clusters)]TJ/F8 9.9626 Tf 320.465 0 Td [(,)]TJ -320.465 -11.955 Td [(in)-398(G.)-399(Jou)1(b)-28(ert,)-415(A.)-398(Murli,)-414(F.)-399(P)28(eters,)-414(M.)-399(V)84(annesc)27(hi,)-414(editors,)-415(P)28(arallel)-398(Com-)]TJ 0 -11.955 Td [(puting)-354(-)-354(Adv)55(ances)-354(&)-354(Curren)28(t)-355(Issues,)-359(pp.)-354(441{448,)-360(Imp)-28(erial)-354(College)-354(Press,)]TJ 0 -11.955 Td [(2002.)]TJ +0 g 0 G + 143.905 -29.888 Td [(153)]TJ +0 g 0 G +ET + +endstream +endobj +1938 0 obj +<< +/Length 3124 +>> +stream +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F8 9.9626 Tf 150.705 706.129 Td [([13])]TJ +0 g 0 G + [-500(Gamma,)-494(E.,)-987(Helm,)-493(R.,)-987(Johnson,)-494(R.,)-987(and)-923(Vlissides,)-494(J.)-461(1995.)]TJ/F17 9.9626 Tf 314.294 0 Td [(Design)]TJ -293.815 -11.955 Td [(Patterns:)-427(Elements)-293(of)-292(R)51(eusable)-293(Obje)51(ct-Oriente)51(d)-292(Softwar)51(e)]TJ/F8 9.9626 Tf 246.617 0 Td [(.)-262(Addison-W)83(esley)83(.)]TJ +0 g 0 G + -267.096 -19.926 Td [([14])]TJ +0 g 0 G + [-500(Karypis,)-561(G.)-515(and)-515(Kumar,)-561(V.,)]TJ/F17 9.9626 Tf 157.276 0 Td [(METIS:)-525(Unstructur)51(e)51(d)-525(Gr)51(aph)-525(Partitioning)]TJ -136.797 -11.955 Td [(and)-413(Sp)51(arse)-413(Matrix)-414(Or)51(deri)1(ng)-414(System)]TJ/F8 9.9626 Tf 158.597 0 Td [(.)-394(Minneap)-27(olis,)-409(MN)-394(55455:)-565(Univ)28(ersit)28(y)]TJ -158.597 -11.955 Td [(of)-420(Minnesota,)-441(Departmen)27(t)-420(of)-419(Computer)-420(Science,)-442(1995.)-420(In)28(ternet)-420(Address:)]TJ/F30 9.9626 Tf 0 -11.955 Td [(http://www.cs.umn.edu/~karypis)]TJ/F8 9.9626 Tf 156.91 0 Td [(.)]TJ +0 g 0 G + -177.389 -19.925 Td [([15])]TJ +0 g 0 G + [-500(La)28(wson,)-339(C.,)-339(Hanson,)-339(R.,)-339(Kincaid,)-339(D.)-338(and)-338(Krogh,)-339(F.,)-339(Basic)-338(Linear)-338(Algebra)]TJ 20.479 -11.956 Td [(Subprograms)-337(for)-336(Fortran)-337(usage,)-338(A)28(CM)-337(T)84(rans.)-337(Math.)-337(Soft)28(w.)-337(v)28(ol.)-337(5,)-337(38{329,)]TJ 0 -11.955 Td [(1979.)]TJ +0 g 0 G + -20.479 -19.925 Td [([16])]TJ +0 g 0 G + [-500(Mac)28(hiels,)-372(L.)-364(and)-364(Deville,)-372(M.)]TJ/F17 9.9626 Tf 148.97 0 Td [(F)77(ortr)51(an)-386(90:)-517(A)26(n)-387(entry)-386(to)-386(obje)51(ct-oriente)51(d)-386(pr)51(o-)]TJ -128.491 -11.955 Td [(gr)51(amming)-492(for)-492(the)-492(soluti)1(on)-492(of)-492(p)51(artial)-492(di\013er)51(ential)-492(e)51(quations.)]TJ/F8 9.9626 Tf 267.456 0 Td [(A)28(CM)-479(T)83(rans.)]TJ -267.456 -11.955 Td [(Math.)-333(Soft)28(w.)-334(v)28(ol.)-333(23,)-334(32{49.)]TJ +0 g 0 G + -20.479 -19.926 Td [([17])]TJ +0 g 0 G + [-500(Metcalf,)-434(M.,)-434(Reid,)-433(J.)-414(and)-414(Cohen,)-434(M.)]TJ/F17 9.9626 Tf 189.335 0 Td [(F)77(ortr)51(an)-432(95/2003)-432(explaine)51(d.)]TJ/F8 9.9626 Tf 123.907 0 Td [(Oxford)]TJ -292.763 -11.955 Td [(Univ)28(ersit)28(y)-334(Press,)-333(2004.)]TJ +0 g 0 G + -20.479 -19.925 Td [([18])]TJ +0 g 0 G + [-500(Rouson,)-374(D.W.I.,)-374(Xia,)-374(J.,)-374(Xu,)-373(X.:)-510(Scien)28(ti\014c)-366(Soft)28(w)28(are)-366(Design:)-510(Th)1(e)-366(Ob)-56(ject-)]TJ 20.479 -11.955 Td [(Orien)28(ted)-333(W)83(a)28(y.)-334(Cam)28(bridge)-333(Univ)28(ersit)27(y)-333(Press)-333(\0502011\051)]TJ +0 g 0 G + -20.479 -19.926 Td [([19])]TJ +0 g 0 G + [-500(M.)-443(Snir,)-471(S.)-443(Otto,)-471(S.)-443(Huss-Lederman,)-471(D.)-443(W)84(alk)27(er)-443(and)-443(J.)-443(Dongarra,)]TJ/F17 9.9626 Tf 321.124 0 Td [(MPI:)]TJ -300.645 -11.955 Td [(The)-365(Complete)-365(R)51(efer)51(enc)51(e.)-365(V)76(ol)1(ume)-366(1)-365(-)-365(The)-365(MPI)-365(Cor)51(e)]TJ/F8 9.9626 Tf 228.803 0 Td [(,)-343(sec)-1(on)1(d)-342(edition,)-343(MIT)]TJ -228.803 -11.955 Td [(Press,)-333(1998.)]TJ +0 g 0 G + 143.905 -352.677 Td [(154)]TJ +0 g 0 G +ET + endstream endobj -1896 0 obj +1961 0 obj << -/Length1 2027 -/Length2 14551 +/Length1 2422 +/Length2 20069 /Length3 0 -/Length 16578 +/Length 22491 >> stream -%!PS-AdobeFont-1.0: CMMI10 003.002 -%%Title: CMMI10 +%!PS-AdobeFont-1.0: CMBX10 003.002 +%%Title: CMBX10 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMMI10. +%Copyright: (), with Reserved Font Name CMBX10. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup -/UniqueID get 5087385 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMBX10 known{/CMBX10 findfont dup/UniqueID known{dup +/UniqueID get 5000768 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /PUWBWT+CMMI10 def -/FontBBox {-32 -250 1048 750 }readonly def +/FontName /RAJOBS+CMBX10 def +/FontBBox {-56 -250 1164 750 }readonly def /PaintType 0 def -/FontInfo 10 dict dup begin +/FontInfo 9 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMMI10.) readonly def -/FullName (CMMI10) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMBX10.) readonly def +/FullName (CMBX10) readonly def /FamilyName (Computer Modern) readonly def -/Weight (Medium) readonly def -/ItalicAngle -14.04 def +/Weight (Bold) readonly def +/ItalicAngle 0 def /isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def -/ascent 750 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 65 /A put +dup 66 /B put dup 67 /C put dup 68 /D put +dup 69 /E put +dup 70 /F put dup 71 /G put +dup 72 /H put dup 73 /I put +dup 74 /J put dup 76 /L put +dup 77 /M put dup 78 /N put dup 79 /O put dup 80 /P put -dup 81 /Q put +dup 82 /R put +dup 83 /S put dup 84 /T put dup 85 /U put -dup 88 /X put +dup 86 /V put +dup 90 /Z put dup 97 /a put -dup 11 /alpha put dup 98 /b put -dup 12 /beta put dup 99 /c put -dup 59 /comma put +dup 58 /colon put +dup 44 /comma put dup 100 /d put dup 101 /e put +dup 56 /eight put +dup 124 /emdash put +dup 123 /endash put +dup 61 /equal put dup 102 /f put +dup 11 /ff put +dup 14 /ffi put +dup 12 /fi put +dup 53 /five put +dup 13 /fl put +dup 52 /four put dup 103 /g put -dup 62 /greater put +dup 104 /h put +dup 45 /hyphen put dup 105 /i put dup 106 /j put dup 107 /k put dup 108 /l put -dup 60 /less put dup 109 /m put dup 110 /n put +dup 57 /nine put dup 111 /o put +dup 49 /one put dup 112 /p put -dup 58 /period put +dup 46 /period put +dup 113 /q put +dup 39 /quoteright put dup 114 /r put dup 115 /s put +dup 55 /seven put +dup 54 /six put dup 116 /t put +dup 51 /three put +dup 50 /two put dup 117 /u put dup 118 /v put dup 119 /w put dup 120 /x put dup 121 /y put dup 122 /z put +dup 48 /zero put readonly def currentdict end currentfile eexec -oc;jAw-<X2-Τ^tE_SKF1F^jNBq{y4-Fgbԓ{"WB:rP ?dgS%|'ؓw&F7JNL9VRtbT5'm\N"K< -wJv$tE;D4Vܢv{bG@dū)Nh]!(7h`f1zpBrd۞>sVÙiHޭkJKyuKI[Ƅ(,M=}%vf'E+)}f$l(W2[8hT>9X33 viU/Y{z4B&qnz|1/ɴcCzwm|x]Lmo}zm5o: 꿊."ĈdNo3 -vz N -pzP;Vҿg6Ǣ >,>OJ4mA0R3ֹ*{+9iuMO@h}-( Qȃ钏A)ӱ =.93g=[_bo_BVƂW"䶝aoZFsO)%d2wNH>D}۝Y1jZg1bJa|`hb)wYc[&0jX7yg -hS&}p-f^ a_ -l4zVnR_e@*z|Wi.9)ǙBSs3Ϗk,^bz˹a ˅4_B1+W2poDx>fH[]TEjRȊ~/+  l8zXܒpH!V܁d!;d4T5:,v#cK*;+zXz k Qw>aqb61IK&?e=f?ToRw: -e -/ y}tX"7qtf}є)8SRXyԍ/Cmo0%}pd{h4>^wD@eQdaidY^@?p i3;BŹAe "Kc_ +oc;jAw-=%W)-{ru)rAE(@{빴Q|_R +ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ +}3{Z2zݬT2s$Z&{BJ{=מ7ڄĒKV"~Pr-=L$wcrlVcN &'{%Gf#ɨ_i#SXd+U*|:1m=⾝~6/aGLf#NOS}ERs{[.-jj|tm\: x8PbPh[_9t237,I2B8J0msUWQdX!??Q4eRH ]ӊ.p_?8:o:UuDZ[m^/a4l4ȒtL<~&WwLa9gPqhQΠjv)]sqR"ЯDž#eZKPHrF"tw;*l5 FF BW1S!2*`8:XlUI?[wc &Z`ѩް sdHeF'*s ЁTd9Baऋ[a$g1f\0 7aR^(Lj#!mw2#nr$|TL]{X`4.Gw|P2BgܴwbkF Nfj;d?#l"+6g{* ,SQ2&'n\`]Q:ݹ6ln0b9m],/ڨ\Y$6[+UE#ƸMO( ϲ.DL\*@z3'&Е62%+(k`D/k(ɒkpt`^Bձ\H~Y_˒c%~(! +Jvs}9qw{6sΓM &Q-p'&M&7tZ\r|5M5"*<ΕD,Lfj+ʾɝ"x0h#u[@}"փ +dIE* , j]v.tx kEYl}d.-eJ C=KD jnI"yX D|&k>ixbu?ѱ ,VszAc  G 7H`Ď'Ķ)r +ҎG֯Z~C +U. EC3}henħE!C[xxnCq##Ti.iW/i*?K`ɞ}g;ο@>Hmn91-[ tj7 3Myz,?Z@RPBi>vVF\Ahko8*NIQv94z4m n8)Db]ٞ>=e3Q-'0y#JW 0݈7\t53=μغ|[R>5Ir xhhy!kVSȮ7I ThaToɁ( WdsUI=]әM|dJ\YRGy4d(N{"l\ ]kȮ8V +A==r V^*mx(e=\ʰ!Bb8йX ֙Mاi +p)r ~1 ׏<;d,^6f,PpΨ|kR87>i e ^NҢ@h`[BF,L%mUBe*$nox3K V$[[fU;4Qjggo !%Uh(ԝ 2ן, O[Ј_\?Wt<ȅ/; "Rm®)E\rW1 ђoy։)B̊\@gJ?m Eqqٔ84^Da97 㤸{ɧZ!_`-rlُ*qٺ؊t LCg +:nbJ Lqrj5^9NRVJ7en%ϰYƕut4ƸF΋ėvQj6%c#~ O e҉'aS1e F u s^i"yw,~ C~Rƒ`,j"+ȬKk Q5IjEbT)">wv|$.4*@s? +ipb\r 9AZx; +~c/Hϫ+%Bm-7 S2*Eoq;ջ/6[ LoT F>=8$d�otu[QEU!\ސswE6W׍ Q8 < %xl& +~Bh=F"2\],ӱ@re(lF*ŊY7ٍ` pS?%i|ˋt|[b<7M=7snѪw24ׅd/bD~[)g43G&/pN%;t :p }wM/{ Ϭ0.bj!Z@< zyl)" KUmoҙ2c})z:<ۄF oŃGLyT7;$^>,Y.Fܔ%Gj,&U&S0Sg\+h8.!ɧ?4}+dC֡;GľZ#AeqE>RL K@$|DW/PN^Е3*0KƷ)}JMg"$58_gCs2C7,K՞?λ)效4 1#oIXcP~1 a^46Ӕ)jOa a ^oy^&9ߗǫ%<mLLN9y a)U)D.?9f4R2X w#_RzZu)q{ 3hSߛPDŒx)8%֗Q]9 rf!:wn; @AK ?gNq48)ďT cݨRSK:k4S};3<ʵ< SU^΋opf"5@A bq]W*VOMt,Sg__]0-GXz+G|f_r]EGaqۜgm ]Mnv(D/LbdR;G??aJVTy^ۭgm~`Z2Ј|{AJcQR qnd(ۜyoD`TJCHzRaPהxƜC@Mp<[0?e;ZT+R[kgϧa"q^b *r|::VNBOUzHbaGDH$6$4tLJb +INIC֜qa.K,ƭ >Cy +l7'mf &o1:i҅u meNπ@1; BB}Z(P3>f`mwyج]}L0qoJ 4VCBBLx1s_(\2ZZ. +G?eu8 3p8Dq,ƾ&[3M st/ϪT ;C;]DDu0 դQ[=zʥP*KCUqk#?k )M GRWI "RY7Wư0+@γTNT?aJxy~8up| ?5$[)sNd<#UM(8 bEQHt.f6֡U ǟ*xϟOiא`r/\coωS:#D=@KA2 gLHmO٘b9PoǕ +ڄOiINtVV8/{ )N8(g]P .'9X[}[6 !$>ɹk^ s2$Q{1(^\ҫ؅NQ@ R5Юg4vH2RDMe}6#QLil" fEg*!k2h#ugn NrKIF7S)q=UFԐqmYu},f,d4~׍jS찉Jz:dVmoa3_Ib*P ^N]w h̪A6" CCIތ$d,$}F3,NT!WN3Ru+}M=;1xHO4HZHfOgZ=Ck>kRUIw9x)6:*ۥ |hYNHe96sκNII>5l0yUYnϊ K@iO5R1^Ч12r;X0HXqP1Kp5{(,itLȮԃrQ4-F ƕ xhVg2{1xnN?39rjuP5_銖Y=$]K<MxB_PѬpD!j0mHTکr ' LcFa0ޣ/<4gBwRSSm%XȀύy뮧p^xŠпͦ);qEQ)DJLOnSMn(b It;wXDNk|8Q)}Oio>9L(A L^h7PxH7vaj=Y*.~r[?Qtf`FȎɼe\UJ[CӈڸfkݵAq]/f2D (d%(^)8\ځä:^1G* +w8~AU\NJFi;T0$|ckGAgVW /%le zr%9G i[H2!@ X} XY}N9L鉚nI_5;~'^rിp흼#Z{O7J!R;‡O[a -D'wx ƝawISPfFI'Trc:gW7 +VX{rb<#NcAsbpF}1O-KyJ[Usĝr9$Ozi\rHA^s01kGǗq9V.}NfaN|~Rnn1˾٩=JѰ[0*QcMSFOO[v},M+ aSqg iƘa&X20DvYJXOk +|UԟE@%LW%ޭ,I0Lk0 p=sn3g6xLd`|%"Vhҷ\S!9v! lHy0X!"ZLɍ` yv' y +ui.6)1uZm\)f@޽]G8Y M'"ɫ$-ݻ HHY d'յ78uQ onx!1% gaQ>{H$4BIW(m Y=E ry B@#lNJB2D3[jMf?aǞq"L>oE =Cҭuꆒu'_V)Ń~T=w].HHiLr Ye'o]'o`-30rnoߔñh(ɻ0S88=",Y(G!V0~Bf ;4 +ֶtYf\?ũfᬏFĥIdϳZal1]$D'(@#O v,Ibga w\\=&[|#i4, Tkk v'ȵ[XnR侧y^1v&U%.N $m|qo>n揟lj9<(&e7 _~ApChi9mIx(6.6RmLm+|,bL{~?HnB3?h% *㷻`5 !LJNŭ I/%n! reAV/[,jM.-Wh䖟}Dz׾*4j|Rf7ɤE4PNF|.Pk/u|{dMy&ZyHWB ri=0Yߜ7tG^gx: =47_u楶d]PhRc! C4ihqP3ٚD2QxMPDS˰UCn z+<x]q_? c\t4b/7r=(0Q+cLDum6(΂|yXaLj??yͽC~/&-_MD[5V <^:.RV=VaL8tm枣!с| _:7|Zڳ<wjv>*9Ժwhd黎ZdûH.̤9~9slùTm~j&@ !2qǀy ~Տ:#2Ij`#O(EH&:@!˕O^ڿB:rgE-EEC[NwB bj'^!q/*E[9pKH-紕ʘ<nWͺJ]B$(?_ Nc`+Aj-taп?(;ns''E=dУf#3l>,YZm|p'\efc<.tR +$|eO+o{zJIs ->To=*y#p$Ua5Q2Z3:wXEk!XLǑU MlTHnyeUsAܜo3|] ]zN&GU1@./9;IFz$U/Klf6xq y -w}HH/*%bkYyoxжjxS\y)n?VJ+ka[zffI*[f=M3)%qO(\-Z!J -H)rQQ5TbL}/>5k=QwO75#:,U_LP?NCSMi > 3*j#WÝD8$|!F̊L;_ -dQJI$Y(mRqJ[~f9,6_1~w S,?1? Ayl(LtU m@*T9EWOg-ږHpaH"\z/EjV{11̃TVL5yWK|z|ڶtjBdV=z3TJ~[3`vpnrU MVW.Y-t虘鰭2z񑄥 -Kxq3å_t|W%0=E@.2^r:(H>ePݳ;ס}mW-MAzs`sb}s@_s/FOE«lh\G`ba8$(^U3qC"vj?Aӷ5.s:];H2?lcP!e-t1//ǑbK @3\SN:8'gU?)Rb%o>6 ~) O -Xw5/"|k(e$/JG 0Mo#hpT%-R(>* Ҩ25h|I.5u`QPւ)`QQǶ(45^ބM߯o5G*`?RFM Àgpfn51dK[L -yq B$@'6!W -ΐEI6,IT$yهHpiVch]l&ߡF:O$#Ȋ!D:%)aMx"_L?d*:02]7x(4p P8*.v5sb<]LQ0*K+@>e.-oӏCƀl\~R+$voDgya|n)>1_|hvD5"Pt#'徹.GESJW˕̪N AZr!o"XF-)$^Y|i RA5=OgCna8z*2e6]Ԃpc&IJn=/Kzb -̴3'@{VR&goIa;nI_ | $xf@ҾdG7x jU8 RCӿ?A X9ݾ#Q|ְ\W - \]ä4/RH$ktv>8]Q,1H9` O@&]zPO(5{OÞ! F!s`ql贃8nr99:ݹ6SH u:е ܴJ/bKQ楿a,?x'P\ kl.9ld|G:﫝* - d.rGjKrU c̓o6=$_]_XwhJmHeBbj?|ӐB w9p& 1j"+Mf qP8#K -"̸-LX[{Ĺ;Z, S[[F} N؈*gTCEql{/pWSmpROU+z\)5J&5*NG_7Ԇ9GvGˌ<ʤ$L{M,1ҍ3fRY-'+vWE+-2~EMA5Z; Ĥ\3>b>KRc-8X)2/<,2ct/CkRr\n2(]yp[acY{֖]@)"uW"V@aMm* -:{eNFARn -[4HmQZ _jfЛ!뒋bl'7Li>nypUN/XDa\ pXF\ڤS}“%`V oHP5K?XKĤpPwC\a1bI$Z|}wiS~[CExaW?{͍M{8aߞ ŃffA^ n*{nU&g}C1VVR TuLS-=$Yԩtd)'}~`}$}x05ig2% [ qWYg]x9$eL[0?ꏿi*rН D]y| Hwn.ķ#ځxQ+ 9/7"'-^4Lp+3yVqD7XusF71UΊṆR1Z83֫ZF12 Qjxi+Si~u$vTwds~wmK;r@Q#!J"Ӕ:#&#`v{QRܸr @uhIdgn7bk2ko'+a -[^kY3=q}E9Rjz5<+S -+ʉ詍RZ9@-% fgMpz< -nI-n'd[2$Ad>pBZ"$r?ݩȅ.0N3Sdk^aPw@ų.ӈaِ1C'6-FR{B0 [W*v@(GY |ܣ1mRa03hBF$g/o sbke6 W%b! bB1-)2;AsnXPܷi|:~gp6]`QGi/~q|hP۫>ezǻCU[;HCk",ׇD\;Yof@1txgeЋ My"@]Aq>WO7&77f|<7z/!,`vHZYY.2-h1%FT?f?^!!:.[xDajG "j^'zΧI+E[ K=u؟B^hx"EWYgt?KG·Rib+WO%oeB|RI >|R -#هe{(ge)_.vM!;AuWæ*Mc+sZpy+Nz*] &Pgz cqkg4'9Vi GiidU -wnjt|tP!gX d׈[|-F f?u|猜dΆ,h˧kRO"}Ǔ'%>ח=T֛rd\{ CBs3S&q0KTrjUcbHF[P^uI9u-荅Ʊ3GZf-6 iƂ=ԬrRoZ~ @ʕ+X^^8]]0DKg@; LnD@KMf;hl.N]' YŇ"):>`b7\g%`_wK+y!_^wQC b#;Wnζ b CO_0q}ؒߊYٻ30L[<,hUGvZyHb@9[MSAzY@|.rBPh]U\:w%bv -`1Z9  -"aJ_XH-2y2Q 5nP?9"gj"P#rA)a -<W><_ k#[wʲBA^ۅ<~f瑍UPOI_uEh,kbcrه#Ca])y]jb_Yq b/'s+0 dzFmqU̓J -_]N|9vvDuګY $uԮn#4(gX>VU]3-S9N#Igs3͠K{fKU!^JbV}u_E\XQ=a2d:r|Dfp }y5KK z!GSJ]Yx=z2Oij.n #=UXBL;槯OPIn_ %>o҂A-%*֞NW̞95^Sыo \[MuJ+|ҪJF9Z%X9R]Z\]L`( ̯uO1;(cЍmb\anKM{"LOҊ+ˁx3l6~yf'z_DgM]b89N,ĞҪ͠{-JFh+! ]!yfP8㢇G:zthSdC q͋w] qjYjGZSo[%_9>q{87%+[`|%,~EDOk9z,bP1:lHuԦ 3^+i[WoN $uy -MJtH"bdSoEEɺhYIqIQ-17qQ@#γ= =b&WlljrcǎORd #9Ԩ=(& npmbty+g,%Km_ZdXR|s1!4 CՖn5oG]e8p,XȦ4*e)TjYZ<iR5BA%G 4Gr:B0}49n~=T[ ܡޑKGV߆Ԯ5ԭ˭>EOJwf^ZIP -p_*ݶ@>$OsD>,z4QOu5< ]1Oqy@ú08PJѪC%td9qNC=J('gI_LPޯ`U@)C#;̢&WԻk%1&1I ,:YVѠv.f"0E0Ըl vB遦hLƟ_D OSܓ}\T k -ߣc<36 ]$L,/I%0yS&~ NmNl RzyQ#OUDR)'-ix!]r!1־!jD5cQ}sFz+#UAv⫡{~y y=8xii9\;h3a? -Lj635B`jsӺru9KBrWa7Vp@7ȹy{Œ",*g:=0-Qb1g2>V!V \&$j q)%j}:4ng:KqDd025 ")tښ#b~^#FVf!Yz"!Htj;DeH@xx6u]^^<.)2 Qe`>KF/,m -tngMα K:nA%,mn;֐&FAO(戔V(4Qi (~i -t+?M} W@H}^ࠅ?ߖXDN1Osy{#D)GԮ -:؈DW*i"e5-&"#1 δ:ur\dI\2o/- b ~ -@[8Ć|_n8H]UݙE}a),m ^3lK]I2DѶ -BB>Lz( <({>aXi -7@OҲ%ԐAeS6W-\[y=at!#ȡ`Sx,2Tϗ!T!;;MF@$\ɳ7WU8VYu\ս(g g/5$ lߊ8̆ d/My޷-]I*7+1e!{N-;q.ф3$L_VUE:&jqPq;RbawBzQ M\Ν -:o侦5lbr]" -N8+R{UWlT-+?":FZN~5!"?0zrs$VEgp²XʼnxN( -߿kY90,>?rgs.I C8R;} -Nx'q/H*a 2)yY{ijB; 6p&|%n&*Q}C3gnN]6.axR!Aj]$U 5WM 8SNT)HZ<-lSS%N#ѮQ[JŌQ,W zb^-]A?=6Cfm(d#KBhJLWybDtMbVUOuT,]ȻD SjP(٪{O!l6~EH*w 6zڍ6~^U"\֖\ rl`uI8_:--ZEMqc^{uTѕ0]/?J+9\/ jѢi/~p/IB@LF:v흅cn+Y5':57%P' CTg+ѬoDf~AKci7 xlbj9Ձ\XqYψ56-| %;!I_'Od+{9fRL#HhUNlsZhħi(fpK7k$@)SDC[SJ?DPحƧjOK܈l\f<27FMp_}2 /6 v,5a!l¹;PE3}J>X:`MåtvW6&Rjz ~@ߑzfזrxFQ ;?)'6FA{^dȻ }(_@vnYZ^k +I_} [J)uT.ltG.rjEA5C? ;"I rL wo(=J92^8/;>n>%c܍oY!\~*D5KfO y;(3c Q!uF]IoL.Ɉ"}c"X}ZTA=s+HCm:uXb?G}15-WN_IeTnk*[POWl]J4zPE"R3ɒ胖RiS>:B.KCIR{OVxHBT„AFdZ`7iQ Z*' t}+DsB ВBȿr&'!lYx)AYeuWwvdhٻcjYkb!s+4RG{Xⱱ6eَ,AܿOǂ #W oղ5`uyc8%B!"A;}|A+@V/ +Kp$hKS1H\ʪNpr)F0]ej}ZQ?a9Fj%<%d siboRЮUWez(#7-X^A?'7LSf6P6&Jp:=KiM6nTNQIOeP؂:pO:~#$CrJ\ˇHc(_V~Hw,6ͅ_ +Y/}kbՑfo]Xkd~-j<㱙qE?)(. +odYTӌѣIji(!E{氰7dU4Ɇ=_)-+ (ٗa_C@)l{VhvDowJج~9yWNQ J)&&_zb HayvRj특L{.E0¡+>gC Ϯ0z-Šg?jTX|fk=lZ:m/P^}Gț:F,91홨47T%U&kXW1d|o+;yǠcq+>MHw(U< (hv =9˜&\s3?>pw$yܐ@:+Ffzt( +O>PMF$la<{&e{ ^g@mf=GWsO4Xb;kҙD2jS}'L 7pmc¯Z!Ddj6Q"F g`zLUB%"G zm]$rҫ~.+?estuFgT(OX2Nh=vIKraSFp?К^tc^;XJ t?yy @3"vUr_ \,٘gRï:6>'~d5YfvY5bX((V"1Q؎7@7( i;esY6 + j&Zto>]m:3"Y $Cb3g Q 3k2<1kڄq2OeCU] hBD }~ 2` 4|sM:J k{ m43lIƙA@r {*Gs4^ +3X +`)ٷ2x #䫏Ai(~o`PgA%;,gu64JS KoE߼OG~0,u"-WJAڅyjʿ[3i?6`fR/ٌ|U$BŎkj\f VI y7‡`-dwDkOiůߒnHn'W @Pf 3*_ۑS4z(w%ɠ%򷠃'zj.COU*MN9DF2͏].!>1IBp7z0cJ_u.|"06N#IdP=2N6W(sI_^iY2 +C! 9:.ip c:!P Mgd7r5̊%$f7t#C NAXnØJ׃$V>*>n>oMz.*n8Awxvݷ3(9Fn1H-RycrM]bv!?91rb5 Wlvc :|v/dLTd>{XWc $ݑ__c)0D\?6erFތww5$ڌ7|f0<;4B +ѣr<:#&GA9&.ƀیSYlQ䳷૽ +^I&+׃,cehoƈ%&85hH&uNdSYE'"f/bCMjȠabVYsjbt 0tMg=5 ΝGV_(ʈH떅DޞlR5(Y蕧r\Œ)R> ^Ұk/> 8,O'o|C?s-,AAҔ4*/B}aІp|b3G8_" ^0-|xKӹ Cr~3.(Im+g_\#o!3[1u7}9 {*_ uJio&posmtaCC6eu4S*۠@we0 LF?z?2{ +ɷc.Ri=.A:Ʋټp!\O4j| ! T)f6 򗻽!8EQldV5jpUA{y-}Nʲp7m!WC}JkIi[|(,NwdwS }VZ_[wT|)ۅX3?~dڵ+Ξ53MTa5:V,PLK ]_hqFrښ`Ns IN*w&yYMJ)T6V} uw zElDsZSx'igOq h +oDx vaݙ"dm.@Cԣ<9NdT}sÐL3ft}5ޔ(%y@q|$S>|TY?HπqO:)4^\˿@0*tЬ䁕,^OSPY^y*u1[~ܱwY?56Pi7fIjQOJEE +#YP241Im"}XgccܸZp*Zy\}~$̙ovaޔ48_wRPPIBQ3Fץ(T_2̞ y*GN 4dzL tAl<(ig/ +]ʬ6 +] +i  Ȥ7{P'cGh$}&Z/f_}H[(IV|?C7j?A7;ܱ`rж+Rی>)WwP-MH۠̃@5L#i\}5[!~/;0g7M@)(Z>jTi0^e5" 9'QYND >GZp 4PX +q| +hpU}^Ĝ&=Ll ${*8f\n+ 1bZ>x&YRF*]aX&bz 6G'u/Vzg 6A ,t3)ݶ v5|VJi|kz]'n=19(G"^l?0*݂cd"`KKxrx+/hRCȂ\UUm~{ +X?fD8^s>} + yqCi]~g7ͼ:fP }1 Y,ϧ%y-U-dvIarT'xkѭ6Y\cDGݰ닙k%YfܩJszb Lk+:0&kYbc")A[r0[hpC/}\@@2!vښ[TwQu@ml)8SG{3?Ć;`mqGLP^ܫ"3%G?4I8-)%c4 w2r%HŔt`nvl䩀*/F a1Ծ:#`mm >k;eԊh$Uu$#6K1a=~z?΍wPrQ#{sɆEHdl"|oM 6{ꗡz33XXv0r8rkk9Y8b?*}R[nuD 8_or>J1q;,ߢӭ7m RMocK։^G9ҍFDA@1MK_G=r-"aVK9,Kpjooṋ/\fSe@xj [ FpFQ3 +#cT7)=vǖ`|2xRlR3kC{*uLt3rLpuq@ ^aEn ᶅ?|I;g@ $={bCޣíVJn' {m9_)H3;/9pbJoܗS/ڢ)͚NgoE(\;">M <3T+$+lApk)(jk!9vEX'81X=w*nr^Y0Y:x&иMnQqT|M,%7@4^DQ2S0rY3)wR-| 7Р UMזhȼ:\ h?䴁̸.ms"a>pb}i/}SwѻBdQj4ڈceg"&Zd+Bءl~M}Z_rCeasR´2L K#NOz)y 44^&,K<:vMK9!+E;bX>CAU|xhT&uf0x[5'zk~bucNy֪ZM +D юru[m VRs?߷啌͟ñ 6 n9 +ɘ* aexG̹!J@=/YU?ժ6$Kz76}J?7Ok(J9aK %m-# t~X҄H1 Wِ(9[jf:$;DeKӊgU^(_tҬ;kqavd|5w2 EΜ " 7yYcM]GB:y0&mjVح +} hjɣf/IV+\}3bGU 5"+IU(oVNo⮂b"ޢ:7cxst! @%e)\ /Cso^- qhKpڀ& /_ endstream endobj -1898 0 obj +1963 0 obj << -/Length1 1385 -/Length2 6193 +/Length1 2382 +/Length2 17618 /Length3 0 -/Length 7578 +/Length 20000 >> stream -%!PS-AdobeFont-1.0: CMMI5 003.002 -%%Title: CMMI5 +%!PS-AdobeFont-1.0: CMBX12 003.002 +%%Title: CMBX12 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMMI5. +%Copyright: (), with Reserved Font Name CMBX12. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMMI5 known{/CMMI5 findfont dup/UniqueID known{dup -/UniqueID get 5087380 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup +/UniqueID get 5000769 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /RVPZIX+CMMI5 def -/FontBBox {37 -250 1349 750 }readonly def +/FontName /BWDLNI+CMBX12 def +/FontBBox {-53 -251 1139 750 }readonly def /PaintType 0 def -/FontInfo 10 dict dup begin +/FontInfo 9 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMMI5.) readonly def -/FullName (CMMI5) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMBX12.) readonly def +/FullName (CMBX12) readonly def /FamilyName (Computer Modern) readonly def -/Weight (Medium) readonly def -/ItalicAngle -14.04 def +/Weight (Bold) readonly def +/ItalicAngle 0 def /isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def -/ascent 750 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for +dup 65 /A put +dup 66 /B put +dup 67 /C put +dup 68 /D put +dup 69 /E put +dup 70 /F put +dup 71 /G put +dup 72 /H put +dup 73 /I put +dup 75 /K put +dup 76 /L put +dup 77 /M put +dup 78 /N put +dup 79 /O put +dup 80 /P put +dup 81 /Q put +dup 82 /R put +dup 83 /S put +dup 84 /T put +dup 85 /U put +dup 86 /V put +dup 87 /W put +dup 97 /a put +dup 98 /b put +dup 99 /c put +dup 100 /d put +dup 101 /e put +dup 56 /eight put +dup 124 /emdash put +dup 123 /endash put +dup 102 /f put +dup 14 /ffi put +dup 12 /fi put +dup 53 /five put +dup 52 /four put +dup 103 /g put +dup 104 /h put +dup 45 /hyphen put dup 105 /i put +dup 107 /k put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 57 /nine put +dup 111 /o put +dup 49 /one put +dup 112 /p put +dup 40 /parenleft put +dup 41 /parenright put +dup 46 /period put +dup 113 /q put +dup 39 /quoteright put +dup 114 /r put +dup 115 /s put +dup 55 /seven put +dup 54 /six put +dup 116 /t put +dup 51 /three put +dup 50 /two put +dup 117 /u put +dup 118 /v put +dup 119 /w put +dup 120 /x put +dup 121 /y put +dup 122 /z put +dup 48 /zero put readonly def currentdict end currentfile eexec -oc;jAw-<X2-Τ^tE_SKF1F^jNBq{y4-Fgbԓ{"WB:rP ?dgS%|'ؓw&F7JNL9VRtbT5'm\N"K< -wJv$tE;D4Vܢv{bG@dū)Nh]!*qĞLG~ʒ@͑\֬nx1ο?n!4;M~Qy Ҍ4u:VOG(m3~qӇerګlW=Wj=4a&b2ЊõAr)7|p\W;C|O0z wQ R(W?2ܰ㋈iN3mʊ PʝYA9I\_#ι~ .& ðe8vaISh:}x߱/jҿ䗧̋[ -Hlu|GKKk[&q&0@YEΰGGO˲@3l=ZFꝁ΂~='>vFZn9tbpi5lAz۲u:@9_T -B:ElׯȳL4 - -]hlT;zfqy>8 1Ō[)L!lAU@L^;Ƚ3yAE`Gv'Eɘ斆g U cwK028zp"E( UbbEVOϼ2jXF%.L|czWe)% y^֘tY =V?z FŻDPÄEL8L(Ef `7 Sc]YDrGLA@c-N; Xa 9ONLm5#+Y)>wll􄥶и)g > *J!qP`^ CI }a5,-;$CuW]q.Jg%V[!!ȱ%T]fa -) 1nFaD`</(FKv3C ؃c}:,f4"8 ^f䣴WsOQĦ0[%CZ;w,nW!/-8`ӢQ:֟{Z!D[ VJ76Ӱa>͖rf av/7.F8<[ӝiH]z8K'+`&ihnB9Q4zKz7!<`,SY#DEs@*εabLf[.THd20Xq{ }{J -dSAΏL,K2( S;{p ҇½?(2F}m±ERw&_" U YZՖR Ҁ<`&sﴶBKUzsy[Tx ̠kU*%Ѳ6<Alb43}PZ@xq;S[Վ5tMJӟVh -L3tX`HcE抶^ +*q\IK*0>zqFo1]zJD0V!*YZ[;I=+g `2'qW[tb(h*ajRѶvTx:j}I‘[SK-MtW:w4{UbG4~- :LZDsB3a_@7`xm"R&TX'*Ѱ]eMa 3 |A`Æv!ζU2&"nꙏzRAbJ&GɚC -Ty|?Q „3IڦAwXĕ{_M6 qe[&I؇*YRAVՒJE.jۜ(^EnÆOQ!)-IH/jUrq.hd"#=dA<[Z5-:0qϹ,|4};.fh4H`qyoK~j*0DSHя%Nk/2f&,fbzӒ8a# [Ѵ]B>_I~jR5zRJ 当:atSA>Bdʩ;3׼ðGoDٽwrQk!'k3V#]#Q*ox) `J6)B9at(ҎQUFY -Է򱫌["?@$n&q GFaa\xRWWHPL5\ު( DR /?whu0Ӆq翈(~E`^ AiԢ>QR#߇$Ny OQKKܛv<"waF &%$-t4qX!@5S'Ʀ-Ԭ)162:"m)iHHobHL,;+x00Lg`_j׷zhYqeBmd#CČ-n!Lab|i6m\0#`|v.PRM-N/; ]-+[_fb&pf4pQNVuU',/OՌ: ,b(H - ClD3 F]+:Qbg!5M]`#Z;m/)ihA W?VD8\?$ysfpȍT[2?F3ߧW~*GP552^9 ;d#=Tjg_tॸw}< - 6+SQ]\tM6.,lfr-7oT t8<@Rɝ 8"u˓A - VQAf5؂;BK޸ / BDP3OzEnVJ-ħk Mhy,ShjGo;YF>d[* -!u'Y]D d68d=15 Go>:s# =<&MZ@/t ->I(Ӊb/ tڳlptXp<` jvD Rl erTv*9֭섧`'w=WK$>HߊؗEan5V +c -)F +rNX`.2iaY1|-~;Hp(ЈvxU -UJ1h*i b `I$LIoAYʌÓ6f?#sp}lhىϚ1^v8lBVyA#7 * kfeZqjJgI(\Îjv yar[džT j=D*F@Đq8r1TWUGE gc1#U҅%='V&Yf">M0wX2ځBO44bZE +#;}zeFZ{%k pðs|i( -7]癓 AC -nMŊ[6 3PWo yʌR\B;4-|+=Fdr5F#[HT|  D@!q\`R LkwY[c.I%\F _I q!W&|F;wC;zBi*7au¨--X[1``X/c0@WՀ;y_Z~` +oc;jAw-=%W)-{ru)rAE(@{빴Q|_R +ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ +}3{Z2zݬT2s$Z&{BJ{Jf^ַ>aq4!<_CцcQ%BlS71_ +sQzԜr?ktP2Òl(?69~'@2bt[{ax 7}Gn[TY>T#a1h!;`WƮk>Kj̱JzNc?^<@ qTud[eюj:JnK#2S[ŝBb?̬Mo7aa'gP:δѩ҈ dBd|IH^wMe#DD13W.J.6׮r(N #>Zjhɵ+Uw +$\WN.C(V\N¸3A?l_sMP yfSyֿb`9upPȐNur)L=uhՂD١Pԋ^} +-zU*3~HwzQ:.cxv(P}F>48zeU+Jk <>,H~^U>~~)9G-_+ԇ2miΝ1r>Z?ώ8PZm#meDPњ69v=hE_X(yN(9d5p7LZC~ld1:/ g!, +}Q+93V{ QlG 7!;yq+ JA vj/rڜZP)4f+OpX_t~ 5[RZ$ҹ=#e@K*WEt_-J bΣZdh>xNpsGLOh>o련J;J+\m +J6km9"N `D[ h6w{Ac<=ޮv}PC*|sAחfK+1!Sn~#_*]\i!Jiq˘mJ K fy*S}iGV6wa$mv<zZQ^L0NRq!*7uLO=b~_J CI?<5 T zs}uL`M؀"7K 8yO {|v`).D3K$ ,3sÝDRT c2쑃%yD\MS9HQ՝rfG^\55#v[Yϴ)KS^~nMX,8&7a d$ݕ ^t/WyϿ4QK{)=WDd>oeZpٕi-e@PLb|#p"6KLPXzbZc})%LKfO2ݮ (NԴU-eru RyTkl>'H 9т-)u +u+ld4zcLsTJ[:v?WNM* NiLffF/? ̔o_a! Bt]z\ޔR/r4MFwe5']ZPp׶r?PaL'- +c3G}T'ڡn#^>Ҡ'-ހFwMOTDsJQ{ T޾2VNsҎ%Bh$,>oK"Hϯ 2BU7'J(Ǜc1PIݐ.lQjF%jP +1zb2ɮWM+mKf,"/3~į;7/7=o-R%nJB@n6A0hRF9T {(&$߅:hMj %FVڈGv?`S::JepR̶9y?O_4:╱bEV]1Vb,"KoF0dba̟f4G^̬k({: +]-eJbc?hs+΢_sS,atyir%F3gދ&M}ۨ3Dkh`\rud>;iA_ +oF_љckNԋn`v)2ۙ$# 6{⮶\FvUW l +%x[gj6~C "^klCy%)%nWFO/My~ZqiI$CT*x])it4ZV]m剁VO)gi +%-JUƠ[fTX7/.cU,h78M4 z9:̳jmrvP# >bx_Løğ y5R@/{fQC}d~r!4ѐfPo퀿M+^',6_/W{h/њjS}Jz sնj ޳~zL{qA\Rh$):zNSJLyj^Ĕǒ)T~KZAP0JP~(>~9&åv^")X5=hN҂aNز%1v1gv?467H!NjO4پb夹tFy&{wQ[+ZJq ++@ mn,jMnEfI m RGUY8šNK:]ĤB!N?J'A.k{c㣆+/lB~z- NWWcr酉?V,d\$;tTR%M8DLsY{D#4 D{a\j;$ndʟ'KE 'p a_C1daEE4"<[ɬ}77%غk/2Ik'wblZqq@`C,6|U[2ǩ{{_W{l[(Eㅐ&K!.0t)f7lnMwX< | w2#:|м6ޡ4Hkr~IEmvb,[xY@rL'3:`A7C~X+_显R#GAVt]Dd ! 0*uzbrYN%gUX&h͈6OW2^zG iNΫyf_S">.g`B6G +BdXXE}텅eW_llQ6ioF<3ԙZN%Q^w݃{&E:k= BI| +~ڛfKikx zm 3ٳ~mk +R-rHsډZ嬪.]]Mmјrx{%u_p[ +5~`31>pajdoT&]J[[@ǿ&#F8i ^9<we+-lBdv>B2p["jaƯesk40?`oёL^e OagJQIs[lyZ&CXO3¼UjtYVmE!ؓ jyfn(Rv64꾙o^vXrG\PidDFO"pMx +zM"t@-:C.R<L?l)Ld*v9l$٨{K4u)Pyh(aх=žµ.+rc[3(_5&Ҡ',[wNӾAsq;ecITW<1>ip!A3`TyR^"nB؅W>FgIh!ri7?K!n$iQw?P |zZI07h9W$u ]|l촚hN/쎁~z gx ,>fIHU*#CuJB8Hߓ6'bmOqIhzV[ 3mE)wM15 7DP pSE-ѫu8OZ(׆ZЀ|(Tak(.QMCttFs +ߑ3)aBv + :&!%ݛC:0`(}SFIЍ/ܩ@AGYCvv+Yy6 s6kaIJ;`pC|3GXU/-mՉ)*r΅UXJҔi*k6GiKc0y:ee{bf]. si/+"ή,FmUHB4쟜0vIA4a0)rZަLm"2C(67Ð`:R0=_} 50(EM`iB4-O*lWMܴ[?Ie3LtM)lв>Vc8j^Rz_Vq\c6aԾSn6V +8ELG! ;$jHC> +U]o fK +1y&8فݛ!al J $$0X0|^K)"E)ɑ`pL.M!L"40ðaW/7[ +UTVF "f G +xaˍk+!ٵuz"J67ȲYz=oNѩYXM.?Ĝ\ AGv$ߦoQ7@~n@YxKo^PetWE>`o1ƨ=Š -~xyvqe.=70"L3vp6 tA E&E3U@VG Dϋ=|([<2GeT +DO6O@x*A(TعbHЯ'Ym-_X@qs[^8a5e@@l\T>oOHfR,i꽎+r[&y.bF/mMɕߩ!q'R[d[C6|okȟefJqCli|%[XDe6frH{\mlbwnW be8JomT]jӴG,H6Jr<08y+eF3{&F'k<_`M8.]5*44,UL܆%GDcٓPh1_E^n2gVш&ǀ(U"T3dPD bgoї-||⯁l@( +\k]ȡn *dh!bJSaUU;tV?)j~Jb"2\vLp]24=4i wE%w^#0 \+kIc>:;=3J#J|5U~yO×iC2U7:wrIDs.)%R@d0a;=MWi!PJǚ_* (KW#!SQ!Cܽ2g lYrdw?Q}>pTLWސݸihw77Ļ\>PhKmUBCRu~ŕf̮ceg3g$ÀK_Ds͙9(So,F,9慙rG + 6z.(z4~ ^)e9$t?Qd@GRӢUKn݁.84]6 \ /梖7"Vx¿o_EeR$:{r s2.TLf:Pc9 o/O + |2VsxD3K75S2 t cg-̆as{T-SaKƊӍU61vjn9p&a+#:Ci w 287 8+1zI "~Gڧt/r63 (AhGM3FA+Szd'j_|b2*; Oɲ2o(LWܛyὬW|Ł +V.byՊ\ZF=n= J4"5kY*u dz[-h]*ɤˡ0B}_ȀcJڊ|n^kE!ـ:' @1 B8M*zlU؂12߅R+`B#Plȩl# b:XF3 \"ƤgcF6Ȣg4Y&Neȍ\S{Y&ĸ{n.lX4 =:@:L%0:`.tӉ%i XLK>+a|G NK&C7R_ r?(}44*wTmlZDظ 9v+۴cDnW֋K}>%9 Qd6?[ǡA/nJR^@R3(g +RRE&N,$vFeWOzHU0ȉ,&iw{1 26 +Ihg2J;L} 3>̻,f0ҧDv(_4};"_,kr7&*1:n%VNF/n{hc87PM9lZcd^C7NOc{:ODE)>:5r I",(%Lb9T[p) B8i)1*Qi⣅l)OΩcLK? _Ut/5б6&:ig~luK%6-ZKZPc,fo\LTɮ"B~ u\T "|^cP?YJx$]7X͎L21X-q}ʝȇQU$dWZ9 ёnٺÄG\/=Dn}EᄹZ&|4\ʸ:IGK ^}¸߮H:$411 )OZe3V\w:ZR`SF& (eWWFx~̠2Kx|6{^3@)À0u_]_cO:ڰ&*$-t9&1ZWQj3;\/:XS3,e^#giSJwۑ\fPn4Alv ,_ClKDW3^ nB0B`T +dj7~Lk j_Xf+2 th/<`u'؉-.$`RXu{u <"m94͌+]ek5:OWȼT켰5N\Z([U^H[pxY%zؒd^#<_DYk& G_$; j:K _,ޓ}_fZ_&Z>= +ZtwR:p7l=F;S?P!7?`p00p21!g+!rGR\kn'Ռ;'usnҲ1HU A_#ks^zDEhOV&O p7jd]FMXeZ6B0Ћ*\&?{#d T8 gklYcE.^Iu>uh#fFaLMƂ;Td۵\=#fQr+_u3uϖ! M;k1R_eC<>)ZՈwKF:J@-kh*?%R0|tcfE;N#N_VE^QÔ4FԐ67?`(bT/]D=StC=]x"m9@MD1Ap>ZF_VIp&a0L:ZCA:poZUy7B0&cGB[_^^,7b8^hԘx;;#@uT_9iH$ud_@Zd,y0xT2a.q>*%ayB^QU +Hk=ɹJx` /K83`J|n^MH%PtXs=~zS']-S [߀U%&ʳOk8#0T=ZWamcB;}OH>ؘ#GEcձPݬg4|gr R +xY,X_jcsX[4ڦv.&KPD=^fsއ!レV[hdMUT;ޘ9?4IVfVMey.p[F]WUVpFY4)&úb#F 4Hy~kqZ\b@QUS?qQ/W)/~FYJ̘^եTW ImvjA6aEEr=N1Qi/Uqg(|1M#d6ulcT IWxKfeJKޭwO }^M{!C +a FBx$Î]4mN.}"m<.<>aF2H|.!6-ۈR:Zh]mnZILU0ہV1rj^Ag"E3K +\[~O0q.-X%ҀJ \ ͮaްYQ=&w,cX\8 ϢȭXCDJG]صvHukZ 5O7kD6,? N+);mBt|] +(( 6F,?*Mu;M3`(}K_Y[qxÉ{}>D<2>%,GTzΔeL+ ,#<=v%Jwʶ`?=2~4%4~4_t0^KЙM+q +ݲ%EJl$ɍCtx뾮^ׄVְ+D;kc#9!b9XF"oMWCQHg-#Mbd=G6 މi? +L;ef\M&pwj<$7uSBgͅ Pi"WC id_SگFgE^JEn`= +A*8G`OC)Kc_p(cf/2a򢡡*"A1cz.^`WZ^!j  ްE[pQۤ**HI t7])s}x;L\~M1ptcm3E%o{.Bv΃Nv^++O=GX<&j0[ omǘui}Nj4[|7yY/ץQ++%1[tS*l֗e2'UT%Tn5R*ݾMW&FL/6pLAkwcZVTpkzG)1 s˧fE9 u{GtoT +y\zh^!՛!$_ҙX +ULґkHL󤽓fU u!h lMEݦBU#5☦Ԅ &$&LV%F${/:ɢS}ci21H957wa狂qvL 5((W{Y5%zJ{0ZvjTFgԛT}S?hiKGfC2=dH_Z$sLlʔ:~.MB~-Z~i?_(%}4]pj`^pIIG>{^@.N@cb?SQ"q)& )U&vht c~,XF?=8ht7w’Hh]"w jy6yB Җlj]M?xqNay\/y̛|W!5~es2ӕA /O=A!7h +=/cxn4m۸/=T':;F3o`s.UIEֵ,F ;>X 'VԗC-]PA N7-mK6o!*>2t\wk7_DMӀGW[3ew)|c:_,|8dLe"fp#$ o k'9DEA ?;.dT,JMwN9zpHx64LeAg.e%p$D/[& }?]0tVA$8xbY/PPhwsAAveR;.8>xj2R)M|HHTjTKĔ +-+m쟟}4/2Oi62Xκ8lcfU +nOX 9'鹇8"Q(K=P_#߈KLڬ$A&[mEuu#G={ M ^OM>}zc#shmD?%oUqؐ +ﷀw!4/*1Y#^L+Sm+}_FӁtK|2#+C]D BaGƝ%35%/' >7W_XF6$+`^?0Co2j)JnNQ640CCdeZ?Uͣ={ Qd[X tYSɖ<9h P=78A3pbs8NL5xG[du˖ga_zukӴ _=w{A H72R!~̠%|VY2IJO^QC/Z<.|+!]狗<+*Z`g"f*jrd:-xE];OXScsW'_H&pu`s -yx|MXFmg|h֊GJd_}SG?(>8*`TH|149wl/,y^6J]!T[nV%$dZbU4CT$)%iP#vR7ATe6sq@N|jt +u; endstream endobj -1900 0 obj +1965 0 obj << -/Length1 1519 -/Length2 8224 +/Length1 1599 +/Length2 8420 /Length3 0 -/Length 9743 +/Length 10019 >> stream -%!PS-AdobeFont-1.0: CMMI7 003.002 -%%Title: CMMI7 +%!PS-AdobeFont-1.0: CMBX9 003.002 +%%Title: CMBX9 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMMI7. +%Copyright: (), with Reserved Font Name CMBX9. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMMI7 known{/CMMI7 findfont dup/UniqueID known{dup -/UniqueID get 5087382 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMBX9 known{/CMBX9 findfont dup/UniqueID known{dup +/UniqueID get 5000767 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /ZUYGVH+CMMI7 def -/FontBBox {-1 -250 1171 750 }readonly def +/FontName /VUBHOM+CMBX9 def +/FontBBox {-58 -250 1195 750 }readonly def /PaintType 0 def -/FontInfo 10 dict dup begin +/FontInfo 9 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMMI7.) readonly def -/FullName (CMMI7) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMBX9.) readonly def +/FullName (CMBX9) readonly def /FamilyName (Computer Modern) readonly def -/Weight (Medium) readonly def -/ItalicAngle -14.04 def +/Weight (Bold) readonly def +/ItalicAngle 0 def /isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def -/ascent 750 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for -dup 72 /H put -dup 73 /I put -dup 84 /T put dup 97 /a put -dup 59 /comma put +dup 98 /b put +dup 99 /c put +dup 100 /d put +dup 101 /e put +dup 102 /f put +dup 103 /g put +dup 104 /h put dup 105 /i put -dup 106 /j put -dup 107 /k put -dup 109 /m put +dup 108 /l put dup 110 /n put +dup 111 /o put +dup 113 /q put +dup 114 /r put +dup 115 /s put +dup 116 /t put +dup 117 /u put readonly def currentdict end currentfile eexec -oc;jAw-<X2-Τ^tE_SKF1F^jNBq{y4-Fgbԓ{"WB:rP ?dgS%|'ؓw&F7JNL9VRtbT5'm\N"K< -wJv$tE;D4Vܢv{bGBH)[)Wmu;€jA݄6p`QJ3@H0lī U=Sn1: zU2!ʯ -̹6&X!d[~gݰgZTd?}*BkӨ%>Cc-AMMغ8_/99PR lf-d] ߭EU_~f*j ~`(ks@(YH詵{>sب9ϗQ'%¤^ ϩ'qT LB%iWl;,ƤL&[͓LY!L.Ee_CrcI"#5pl$#WŮV*^-ZHh]Md&wfoZ_xOGoV%i8z`<džS{(j.KRY#u㔦nR֔LexW2N ܸm {Y2rpFSf (5b4;2}$ -Cq^`Vx_-܂ߗp\ڥf6kEW1xnnXǣj?cB۬᠘4Nw7t4-xOK|.JH%͙6.jHi>lg&w|5CW)6v}42B>Ũq%~AO.bB!dMýKK!R\-9;Q -wL%jΓ~c0Z#bprg3jN'<;Tē-XtF! -? ˢ[2}+-P L9FfVݎ44 X)+g-ٱ*m}(UYđU^> -+JFd%:=gEMuQpVp&7[9qQoIVM2]aď (|f/FrRVv^ |ĩ-pxG?'gzl,γ#ACFYm^ @.sֺ>f!]JCGuQyCWs ð&ITF̀Je&-e$Vk% vl#'6 8 H߾A7]i׈3eYx/yf] ->q^`~'}`3(1~zRjAwua8#tNʰq$ޕSOO@y{1FūÃ)^FK}J.@4z1D3$k,0Ia8pPQrCik]qB~&\PTW\}'5 Cze<(sko9!?xїE[⒞J>&"B Sc׊}5DmDUhK1M)k)P%-/l|tcT _hhk򗇿ܑCl ai&k'0 vYok9&352X8r]61*EXk d`-sW㴑`\ҋ'!Fљf8Bfمܧ()"Q%b@q+^P6Au}P:G(jH*J}a"`R_tźG{M8D*R,%-R_ϢPzQkqM)Vt8 ^ \lKt7#]뢪xNAVDPjtQAT8a BEֹ_cR2vNlFޛU'y|E3YFo`]ps - %zD 6ӬɘZ\{D-pO<Ѻ}KQ&U / ;yezFLy%LgNڝnK#꾫_:G^)S8ȼZ#Ah)<\\&ږSv%KQ' 49$ՍHD0Yyh)(;[;y,EVJO-+i&ltit$ز ,}<[$yǟک+)(xq0K׽tt"/t/Mw -e7+dW~b(6Lj?c_j -]۽Vh=-(_^:`{?BU& 9HqU2-1cdD CR5vKEiV!;qtO%7Wzj~UgYq珎SWXKL2">9$:; `k -E5 FBjl|De: -AkN4NkcOq"8&)I@ -m(=[44qqZu0P_/٧?"u텶;@ 柊"b6(N}dV&i%*%5,.Vofc.; a/p%l *u"Mh6,6ޥQ>jfRTLŧ{sj(橫2%0ł.`o{N)eugB'b!)iPOYL^peBxҴ@y,4#**PY2 ❙ȀygT>$[X{D1t?Kv {׺jޜ"4%{C{gŪPi;TM"_<.HNUFؓψĈ0NL+/lQqX -w^WwQD]~@8~("ZU5K"5DT -iur!lF,j<XQfxC㼕X: %lɻq˸n -꾸a ZSMa8"kgCLԏ -"ϓl#9BMjX3ҭڰnE`Ts[ڟN՗ej.Du 2OQajcSd#o[]"}Ñ:*y0 }D],2OQ^E:MmXS7U&倧6hf@mųue[1.Xg@kQHNVQaTb8MJ}pp++iSSj@9֙\g7ۗJ>>Z aDرԎ@zq2ԗ9{Vk2`-ʶ5 WC!2 5BwR&,%5%"@LJαm W{8)$U?zhX {ӳ]P-k?Sp"3H SN QQub Rqs/( Mɩ#1YV}E/J4o˻Yxבi̓P_+ ?&$,:39|~wܨ.Gsi@C{25;ܮ2GUI8,bA|Z:V S|:U%pkèR=G #պ6,8fBqbh?&wOV,pM?n\kz/J|;hh3gw gh6QޒNYwRRfrۀ!(uf3ebP FM9Uk -곡gy75"Ri]Q"^l%ܲL쫙~<}uGOqE`q=d`LN*ȑm<_oeIX,'ފu)\]$-J{tXgmCcWį![^2&N+o*Um",b$@_Z١|L?zpCKAdv<ܣ w$Ma}7+MigGfrH Iޥ m[D](33"& JM^z`ݑ5! w󀅖"ꛨu:I?_񅂐`g'Ij}2Zl[x莙 ͦ,Y_ 혋_A¦M^zNLa/W -ZX4g X@6 -zqUK]p*K954~F$Y'VzV;iJ#9=*Xv -=3c @.>LXB26i[V'?qQoA -᷺' cV(-X_{]K Fݹ/0ݮC궨7վ5_`䎼P5)Գ*W ZU",~_WjSF ^BBKؐ&îm'3a:x6efEVc{n8+Iwrfw(DV֑}> /_Q)u&A][:5fD#< |i"#ٽAGU'؎XnWU.Fܲ xP XwH a KPu+/ -t妐?qnuI: װ~KJ~x|~+I w3xR~κ&Yª.Zu^Z/m˖fz?f_+up}Y5N(B^FFnS-$~u(Tj$J%N-H8_U} }FOs[z %3+[lRou<̪n. 3b25| -f;&}tu"@HDu1j+?9>o>DqN6y Kn;p9cS&܅awX0i~ο;6v_ɵ|W$=;  >do\h6zx- &= A!:`bЂBJ:Y_ ͯj$>*XqBùCauF[̀ۊ%Z H2 (F]9Cf2!9}  㣽i ̌{b՛جDS`sZaq4!<_CцcQ%BlS71_ +sQz5>?Q;8F}Q|-K,}>PD +65~`dU6+[\5тqFB>ֳ1^;!'VQ!<$6jT&UVDq~`XhZwU W67$hV%tj6~h<56{O.o"Fחlai!N;/ie L5sh!YB yֻM~|M{\B3ևxYXިmHo%l)CKFuԴlY~<,&Z#^gx'6wB8IWذ~D.TP>KoNzS6=('a`T seSdDVzL^|kb=yjaI>Ř(ץ4^? 'Kn`4Q9 . `3oh~Fq;zJ50EPX*ƚQ 㗘k4]aҡpM9\l[Z)uƔT\0kebIA;/{c Jn^GkgQ0Y'ISD;A39 h?ݦbJU5zw jpJBUY{e#Fws@rISp^YoZ|5h2*لEA4W?|PCx' А4 +v0U'J#oqӉY%egg|* )SZo8r;8Wlv"r`UkL==~V +X` +UvSw;8wwH_,^~q\3[l&8E};`Zګ)HZ/I ;3w +h$j/z/^,_C~A7kpRhbK0sQrI;YD4u-:p׼V1y&EF#RdȷnfNEzfL)3xg23) +pEY%NXA@WQQ X$r d7UmwK6+2a,n9VbA:)48z>Im8XCهLFʺߦkg'f 2 z?qe3?-&1VKl/>4(5p,Jr6`pԚd׌^d';@8]mB̾"D%i-{tx*yt:`Z]K=.;TƪXmj nѹ5&.F~P]^7FoQv3:2rHS7!S5ŷISvG0;=f/bkl9d n&CO l"*e@n!6}Zjou#|)f*,E^a(, L Ah_ȪRlgYhaƐi% )m`RDӇO4;X @4chC.4Fc|E-5 OA)R3N{o`aYUrBs-15s܏i%ZY+W;/J"u;DgI x9"rwh +Rʊ~KhR^44s7M֒kL%vOqT+ovlo\+pm\gw٧Ӡ9_8i-d) ĩ#CM# h8pU"w.WV:ʠǜOc #%^oFxEkl ȃ<6wyh[$fuq%_Cn \Ȫp#vMժd2 g jRZ,xrF8P<(F`~W/dCnǗtPf"'nLCeJ59&yۄe^OI0\^PKGd@2ʨ󌱇lW/rZ\~ldB (#o}HZswHo܆0%oE=pdK)d/gYR[+7! nIw8 MF'/`6-d9Wt{`>P)$w>]{ _JJ[|aJЪCWk΢gLs 1/U wwKOwZoYz8gʟ821ZYYK%UW`ߤlP`B?1e1 t߭c`jD]< j#Sk@_6&"|  135~j5jag+PCTo+LxI@UoW.0#6!$_ȧ`r{s{] + ݤ"Amөe~]i栛ox;Ģ)Ąv{ԒNˡʀ8z +D4>uqlGmt +ZбK`4ҳWL d)yZd\m:췋s0j +dɎat@әV$Kas)~$8+\[)K9+%?< $_nRnWQ-U*up4Š[i}H=`SUPa{0'QW^t>.9Nzlc [=ˆ]8D8"QL wek\/+w^8 ZLn}69α$uT[e/DjFhGČ3eWfTf!>3rn_&kJӍne mW%q*5sIsoVgoꡯ+EƿR7ll,#4~^$)Cȗ`P{R!0K?.&V퍗#fRG/0Q Spe,W4`W16 +Bo5@.{27qGiʣTjzpGrb`Bn] 5EP£*Ӝ-f?75ko2|pwleP iאI͒wsz;SfT`De/:M#,N C@Xrٓn_ʴM[H-f4#u/VNy\#x[6§4̷,.aI-D=(Ao.Q$-q 4rh!-i vfrؠ%/^ +)p*d'D_mӝ>lC~t/a$Go@ܞ+A9IcU!}pIG"RU)صJ@uІ`YϪCuJUm8*8>B +tk1@͠YlW3[>[6&pCKƣ܉f&N0]X?TpP Y,y簢)4Ubj"fhEWdjt_8 |\YNeԭ5쀬ы; 44Ye*C#JahT+vX{\6))rfESд5hsdU[YJ*L |og9w>!>C4?m/.q߉K|8R1!>ȱ:& Kkq h!ʅƝC4k<ídqaeX&Z;SRMsh><^.9٠3n5% +YLjQA4OV?r%Lxє*g0fLjl}Xl:D0_.4w-bm!xMᑘ]&(3CXjȃ;&t]u`N X+]G +.AnNLZLpF&rw4?'YzB6VVbī̑uvf R~tgReObv+~{e{4Qe/wDk!P3F4佑\ˆ`3LҾ5](qF:qpv= B%NQjS.n}(玜hqr fFu#;F+q8Jh2k0uC;`dXMK/W V8 <_\j4nv\VdQjyf|@uO 'ˁ%(aq3\5L@]줣S`}E\T@6 Ɂ@aUF~#qOYf_1}nbjn(xի&{e#΋uFP0qPQ:Lrn;,z2Vd_6l2įGU0.iܲO@R9~ny% R7o:oC̽E "?EEeBզ(V= +tm3,#/ؗUWFlj}ıN?2)lI$-jƆ|63v oE>[bhKE]׶8ِT3k :`vy76$M-?Sc6jV Su4oڪ狢AXmtM/zNF5Q` = v 9{`"pN-:MxBL!MO i7ڢ{XIAK@i##^Ғ]К)~N 4FtpBg0SxR R#dF;BկgZFiT7B<~X&ky\<'&;-1>_ko`)tnGu,ȁ32Y$+2n%T$ \i n[o pY0w?=5ih_mt;?c%VXe3ZED;lـGJ_"*Ac(4Q`^"?Um#`D'^D)"M˼$>2vqþGUW} e"K#h-b̸j9P񗞑(Si9}k%|78}0Eb?VC]P36j+&ܚrM~/7La_VCg;Ls17AM"ڱ9hhT://Ηl [2̄=qY푏 C\D[a )~;I \4[|xa^%=k$ƏFߵx̽Xō ^g+k ̑ԑޔ{? XZn-|n|7cLԝo&kt4OilE눼{*ִ/tЍe w߀br?c ;2A_;erqW:P=awh'dS?TZy?"t^o!=0<I^@0ݫ}JYfwdLӊɗhX/='&{&E +Iۛ}l|_;sN27vX6>MJ/̅AnVkQ6/#m,٠Q%\{>ۋ"-|KvRU$-Q~YӉׇyMvh> stream -%!PS-AdobeFont-1.0: CMMI8 003.002 -%%Title: CMMI8 +%!PS-AdobeFont-1.0: CMEX10 003.002 +%%Title: CMEX10 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMMI8. +%Copyright: (), with Reserved Font Name CMEX10. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMMI8 known{/CMMI8 findfont dup/UniqueID known{dup -/UniqueID get 5087383 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMEX10 known{/CMEX10 findfont dup/UniqueID known{dup +/UniqueID get 5092766 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /ZOAUSA+CMMI8 def -/FontBBox {-24 -250 1110 750 }readonly def +/FontName /OUFNAH+CMEX10 def +/FontBBox {-24 -2960 1454 772 }readonly def /PaintType 0 def -/FontInfo 10 dict dup begin +/FontInfo 9 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMMI8.) readonly def -/FullName (CMMI8) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMEX10.) readonly def +/FullName (CMEX10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def -/ItalicAngle -14.04 def +/ItalicAngle 0 def /isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def -/ascent 750 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for -dup 67 /C put -dup 70 /F put -dup 71 /G put +dup 115 /radicalBigg put +dup 88 /summationdisplay put readonly def currentdict end currentfile eexec -oc;jAw-<X2-Τ^tE_SKF1F^jNBq{y4-Fgbԓ{"WB:rP ?dgS%|'ؓw&F7JNL9VRtbT5'm\N"K< -wJv$tE;D4Vܢv{bGCSM!R -C\#Xjh -ho35ƒ8"g{dNׅs'&X83/`C37Vl"ʀbNeP@KVcR8Dh89pz㠚LF]䘼m[Yմ]Ô _hV`I1J٪*D t U#8,eG- )1C4#9նB~DIb_ 6,=;܋o,NIMj_vVo%hQi 5X<ƪl0L c0+$c:4#3R+h~y3542KmWz.g!jA|v9eqyF[q—lj -)jҙs>l2gјpT@M/{[bK1NW^tD$;Č,,BYQ53}Q7sR |4aĹ=8ש1Y ';l3#pKdo 2{P?kKuU%5@_Ba*{U-ǸG1L5UF0҄>MR 1)dqa,<ׂRBY_1;VW*]X? ?"KZj@Q8'e޻tX<k{s-ZmqqrImqt/9aNgcZFfD|lLYBjg}`㜰h$$TH-'RuVx#>ym֛&xykkxH73_؉յ^0ZS%ݖګ=jx5XWYD!<(eh6hB@2OR(!K*ܯt^";!0* -tG -l8JY| -5K9mYөn F>-?)"ȧ9V*wj gڕoL%Y~ZM : !P!l10{Ft'XꤞKEM8tˈ(Q3kZ ޛ4i_9&yslAʗ3*@xk,@|x/ʖ)Oc*DeE| fGv6\U8"ĝm1a0heAfC+55oNw^k:G \0a# }]xvRf)tsLCs_W@#赡7iOXt&{biҢYnVq̠!X[ow_ "@]J4rSE +,09DWF"C@i[ԗ @~8xtv.fU$ ^x{m`#Z,QRڶ  %Sc0G.;=8sy뿶'Z]AxwZjGOIƆ7,5o߿焘kG~D55o>@]AIm_Ҷ Jo^ɒmφo#6PUA"X꛸/B^(@n$#H褔0㴻fr,d"q+s? n~DL zC ⒎yCEJߢxүJs!(Ԙ>gs]8`;ԭV=ݏhkTJXM*8^zceхE)R !6w3''6"sɾmI`=0c%gxf2(g1Q&#pOvY@HbՈG[$њ\L5ʢ -f/6OyщT9|]O`jٳ1+W'dN(l1BD^]᣼z+L41QUq -GB ܓVA'Sq jv)4Ћ e|iſl`u/ou>_سT)^S-nw}, ZNEC Y Rez3sp$ 2RH?. p#+Ne>PrI%y@n-S4¶{֍Y[OhEi\*BxCЙ#(~#=ϑ X\yQζ5_p&R5‰SJ^ ԷrXu 㝢)Ɣ1,B7GODE k\OȧY@hn:*洊@Q?PEDS\ ؠ䟥CMhQQxMϗDv]錻ҦJ*T#"hiW_5ʙaKT$#. Ɨ Yam=fW#tj&zlIX@t߸ඔ*'>`r/XV(soGRe',q6e: 5lP&7/ -Ex*Y$ݦӢ15\>h#1F̍\`AkS?jH:+S D:]+HT5‹f\V:\g0ﮩ IҲt} -ôoDks>+D85}lS,@\.X:; }# z;d?=rXBPucjb=ځ$ E,c2{ƫ-1,tUj34s 11hmQ4ŨSxLLIQMhƭըXT3(3o׆0ɣ Y'=gO.*V˼5$Z[łs`\Txyx{ba-:'cp{m.z~4_2a#[@?cs 9Asɦk * -0Ɔ>CȒhծ)nbF6&tR +eylyQ( )6 -ܾS)q|/`>蜐 -![+Azca_t!4t%zv@6n+-ga,_ zk :׹ENyX/5}n+,YTrۓ7hޛȕ4ZB3$M'Q6Au«T.C ,yP?%nIceOWUx 9XΖ 7aJn]ܵkقe1[+JIsXW°?mT _\ Q.(Ca1e2Xrָ88}~~HQ $\w;?4B?RB6!Y6n9MW\6}˖kxwnEB ɐ+!_>;(U fu#nWv)!dT@A!3xm(0,^>TmqO^-{7)0ٚc2 -B9V{7-cOgm6=UqZUkew>x^[.ZGPn!'FU-]1fj 6ORfWg$rdV+&K7IRͰd !HQ: YGdsz_| +oc;jAw-=%W)-{ru)rAE(@{빴Q|_R +ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ +}3{Z2zݬT2s$Z&{BJ{ޣ!fpG?[Ttku'5O P 1[.BBBo0 VoG;wCMdK&\YT{#v m E57G~ߡ +3[ť73ŝ:&uN]B Je v(7JIFO/kZ)Ckz*7Xuvw نg&֋U+DWAԳPx;%]r@G~fJ48{vFM"~wvԇ1I mJXk k51D[Wopl^(;w\FIzHy$$r ./xj83>z>9Nќv-v)TTD*IL}qbx>u}&:=l]o:Eiۧ[A^ [/ER;R;"6(ũK?C!>;gh) Ga 9nQ<@(<|+)}Pˇ2&dqmc#IhFeI-S n|{cfyv40]vO?݋ZωN#I'\9wÅPp`i(2NzfAʑ[?}7N)-t)^EI(^ܒM[ ҽTf[z{ rC2YcCŤŬfvnTgTBg^fOW 3Kgiuؓe>Nוq1S.֢+0ȉ<]vmZ =WVhY&R{!2ܼ'Nr6ɱbk_ک'@13{MKݐ__GaTAbʊ0ZB{䤡 d2J> 7RK7׏T;Ȱ+[4B*q4~;7D 5W?S&3[L^'{P)V̴~B,10Z]TC2e;=@7n6 +|,E+ʻ%_B κ7() xK6qQl: `qyi_O7MK!5(sfgHQ1N9!;8 @ߙ:Ϭ&-(D00fkC[x'=xWH i~ +swOVꮈiJL%{yݘF": +1[[ nse]-D.ct&_C$I]Dؘƫ'DGSQ$ҀpՄ6<~"Dg՞1o/+8>YX+갭҅:fXM(~t~xc+`Hcv"+!gl;%kι #v" %MA6ֆN{%]D`;>I뼳g!CSiØofglu:o3yUݢ\a;'f@ᛙv⬊Zj NB].yiW3 5{$";Y]`!i1{Zn|VS,v6.am$|%>)TCk"3o@*RU,6<#44`xDo:Et{M6#:]wޞCA'j]=K4EA=:MOa+VX[b,ma*69Z]ʤ|`?tvFwr2)/-Ov5@y9 ]#x~{! ˣz{TD]7d{WtMpiځ(+\, pZ]8âwcl_E΀G#ӱ¶ꭚ=]Y7*rQ !WQӄrgdM9n*P b3Bxe @1RhOj\Bycwzj eH? U~pE.kIc4g<BZ\B5hrEd^wŠim ;2 "? +]`_Z 8P\w)9%9dS6X?}+LYJ^y@1 (h{Uem,F/d"H7?j V}2 +l +Olb(FY8G߱4. eS]<b@{ɤA.S f>oLơ6/翔OHeAᤇ#:j +7 6Y^Rvr?NVIz1x^PA~KutS`ZGR`Tg3H4'eKR `܁k+j|7oHNPqJg4{"NJ.Go[yv.IS+9jULd+fu˥~mQfsGMb)RY2>y2d=Ue8@*<*?!.y]PhNЫ1qrYgMR/ +_X仾ru'Apue+`Y>q WXG6dZ e T_j^-'[nnyOZ:O?U3z;Fra}/_ -D'o!OQ'ʱL@ .!Ux~eRj=U=ΥDqKߒ&u9qD<: Lb.3c%x]׉; aRy Z:Սl^nz!/rUզ4)hOMMd 14/Xsa0"A묵erᶒlBNr8ݰY~ry9h?chٞ!c +Y猅Oc}q5\(y!^(L 153jvzh9鷔7ZCY即O:,!UC$*h[G%4O#+y6">RR-:#XL%YDd,[FTꠤgXcб:o9LJ\{h%v9'tUBQŕ&Fpԥ,8W뗶FF-QEWDEz5s#.TD1R0݊:$}+r*WޮUb\]Evs|?LkoOiFx(8z1d8w .b"%K^i59C|]J4ptjŊÑCȇ +ĭGe/" # @!aMbE0U?\ bYӽImʗ.`x+2qZ:j㱦tWMK;8ƦA s&q\oqVjQ %i3k$n'=E#* +WVV IPQ8>i 4bm miʾ.P`W0'20vwl.]elЂ!Yz"FkR͙,`k%Iuban\Rڇud :t?YS/WXlO]{j +f_p|=ZO(+`H +5 ~7dh֫]V1Ԅ2D(W[/tG +W ( zK֍3Z!>LWaF;w0cA܂LcEa; *DG5HX&sw*;s(#PBپ hoOt%J u.:ۃ &essE3a̕*Pv*k]5D6?x3{%ЯEiVjӨPNx[ ЩnP1#WvA8޿6dzLtGb5Pw,.#gF:4:uBV@aO2zn! `pgTwaG7= bzsФY@}0{9B6$ʗԧЋ>n4=#|h~ޕ4R_= !\SNм.bZ&zt~^ױ+[q'_`XƛS]LgLovc 4ˣkR.zSK.$ƪo5nPW EjISn$I~9VTm'`_JMWޮ8>`Q]K_CP(8!J٪S׊]lޯ_ɐBALQs&^ +1_%@quu=8LTUҧ{]訍-SHp׍/[Z endstream endobj -1904 0 obj +1969 0 obj << -/Length1 2668 -/Length2 23272 +/Length1 2045 +/Length2 14638 /Length3 0 -/Length 25940 +/Length 16683 >> stream -%!PS-AdobeFont-1.0: CMR10 003.002 -%%Title: CMR10 +%!PS-AdobeFont-1.0: CMMI10 003.002 +%%Title: CMMI10 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMR10. +%Copyright: (), with Reserved Font Name CMMI10. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup -/UniqueID get 5000793 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup +/UniqueID get 5087385 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /SEWPRR+CMR10 def -/FontBBox {-40 -250 1009 750 }readonly def +/FontName /HKHZAC+CMMI10 def +/FontBBox {-32 -250 1048 750 }readonly def /PaintType 0 def -/FontInfo 9 dict dup begin +/FontInfo 10 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMR10.) readonly def -/FullName (CMR10) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMMI10.) readonly def +/FullName (CMMI10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def -/ItalicAngle 0 def +/ItalicAngle -14.04 def /isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def +/ascent 750 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for dup 65 /A put -dup 66 /B put dup 67 /C put dup 68 /D put -dup 69 /E put -dup 70 /F put dup 71 /G put -dup 72 /H put dup 73 /I put -dup 74 /J put -dup 75 /K put dup 76 /L put -dup 77 /M put dup 78 /N put dup 79 /O put dup 80 /P put -dup 82 /R put -dup 83 /S put +dup 81 /Q put dup 84 /T put dup 85 /U put -dup 86 /V put -dup 87 /W put dup 88 /X put dup 97 /a put -dup 38 /ampersand put +dup 11 /alpha put dup 98 /b put -dup 91 /bracketleft put -dup 93 /bracketright put +dup 12 /beta put dup 99 /c put -dup 58 /colon put -dup 44 /comma put +dup 59 /comma put dup 100 /d put dup 101 /e put -dup 56 /eight put -dup 123 /endash put -dup 61 /equal put dup 102 /f put -dup 11 /ff put -dup 14 /ffi put -dup 12 /fi put -dup 53 /five put -dup 13 /fl put -dup 52 /four put dup 103 /g put -dup 104 /h put -dup 45 /hyphen put +dup 62 /greater put dup 105 /i put dup 106 /j put dup 107 /k put dup 108 /l put +dup 60 /less put dup 109 /m put dup 110 /n put -dup 57 /nine put dup 111 /o put -dup 49 /one put dup 112 /p put -dup 40 /parenleft put -dup 41 /parenright put -dup 37 /percent put -dup 46 /period put -dup 43 /plus put -dup 113 /q put -dup 92 /quotedblleft put -dup 34 /quotedblright put -dup 39 /quoteright put -dup 114 /r put -dup 115 /s put -dup 59 /semicolon put -dup 55 /seven put -dup 54 /six put -dup 47 /slash put -dup 116 /t put -dup 51 /three put -dup 50 /two put -dup 117 /u put -dup 118 /v put -dup 119 /w put -dup 120 /x put -dup 121 /y put -dup 122 /z put -dup 48 /zero put -readonly def -currentdict end -currentfile eexec -oc;jAw-=%W)-{ru)rAE(@{빴Q|_R -ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{x< ,-.2iRnñvپ1䠕 '䓱_r"O_t3kefBݼVfj9ҳ Yh뀸{q-ɷ}W??gw1*Eh[:tWeI,v8a<{B100Z85|}Nlw]6Nbh3E`(Eޏ'Q;eԃ/.DyL5$4IG׮Ɋ\yj9.VU5Q!-赁B9dB^oVwBɎT7RsOGA b#TBv!mWT=w,ID%'MK<|]D@2O( ݎ%#_ɷVBST#z!${l\4ĸ ;5l&!〚=(fUwAeB#30>H 'L+֓jz@=s\<=\Y$D?U 6xGQnǫi%֔! -L2[)!fXc<'ȲRP3E!-:'AJ.IJCJJt&{76 -#VH/Fgw"F5wS$|oQ<Η `~<10|;,zɴ% -oߠx0sW1Fx gmxVyѝ"]#z~pv Ũ.rB9$nYCC1td@#8kNԋK;ԓlF( ،N;d*<Ʀs9ZQ@It%[)7&hn Y'a¶T'Xrߙ/n_nJL (@ -К -N{KF^kbn~`L]aU{vLܺ41$rmAsnZ*=sob@{y !CC{c.WZ0n bpgsPd$-\ԛ&L27JBs/g(xQ,t>[8͓GsŸ:R$9]6&my)ivjWLRB^RBalx_Y:5M/j١!}`D&WȪQX$HߧtI .Y@nr_n܁ OtAN-L n?_^_g~Ə;`KB6eĶ ->lQp)/;S' ^:tJj@xE(0G;κQqǔkT'; ÃDHjsrxܖ -.>֯kl;&#<ښe)fFz`Ƿ?Ic@SH&<evn8F\V3aA!yy:+c!xbM։/f}3ߖ˦"G'fMsXWU}Yĵ^ %j!HOH͎_;臲Jv]# -$'Ch?5u-G:zHZ\%Uv z^By%NT⸶3=X?mJ-3iH@ܐfσkR.v'm.'SDly7 YCm^Gu5_G1t/ -41n_D>}p+fg9h$]@M`^ҹGK;5wIrqA3fAYiuYrD:dR At -,)aɺh9[ԧuS9KTKaX$wgɓO[xqǃyI(j5LIc}|h$zDUwY+Z:ϤŜ1le`u@|܈贚^6/y`a [Ί`ҾEwa ziLa}jʰ@}xWns0n*{l?Zz>8p-L&ȣK`> `%`ݿs?v˻^\*QNbf+ۼބo" ٧U zgga䎐uFљ<Xyݸ*g4?X2]4H͢^qLeoU~ 7>)ƤHnA7"{DRj)ע~eVDJ|X}ѧCrTA fP};"ӼK#ΑTF\^ԓ ; |R D\Ă Hu6QИ'Q3b;x#3S:jb%tJ/>ʡOrVށx]>)]l5o[F;,N&'i\NQIH?T:@FN SX0<)hW4fFDh.سT)^S-nw}, ZNEC Y Rez3\ -tY5`F~_xU|'XLJG@U6I \>:V_>զ9*I0}ӵ\"{3UzuFf٤Pߨ)E8Uw)gq:dj#hq so -@ -KG7"|QЇ Zzs|}LմS:fmA3S 2=[dؓJ\ܳc|tj1ƛArѮJv,K| ϕVސ -Q[^9# Tϝ̖\ua2SU;}wѧ ]*z24cL4$2Fw<`7)_ 0IZlf5\t~V= ʼ&3VYvE9c7xX y >}ķeĭ&ne4{YӠاi6*֡gCVj81aG[QU XW'~7?7KO wͯ6udslwS+BHub֜`ZewOX &l~3ԸfGkDDr)}皶!m[ ʪp^"e*EϨ]\YW\ksB,IQ Z1IݔQ'oT4a` VF )apL|y 6>u\"$(WBA&|a M+8./Ҹrkd)Z|*_?f[;W {^*Zl3:Syw{ݿ[8}JSwd?Qݩp+4 Á!!P右C@{:E@Np2{&Bܑ0%f rJ LWm_ )uv32HY~CSxь]2Y7]N3*g5gLISVZW71KAkA"]Nym 0/;?gWCH%4<;sL?bSK!!K0$h4=( FV4AA-L'Pv&ˠ܄ )G(& 9UABvNW[d&/QY7Vѣ[#d {R`'|t^+&y]ו7‘`./|oIGeOVNM.b*#{Ў zijy\?}$]~=R;5\θbǠi)bbOL NS\rSk8TK>bcOטBk-Vs,ibkQ(v)b-ҷ&Pmz5AT#DmcJFPߧQ/7Y ؕ} d)HZϬCE{5tz }amg߱RؿnROøF-^Rnw3ywtkIi^vY1[5x>2 WDkX79+]M}$5)KN:UTb;P1'V4`pNuO(#9bYL7س!2W9@,ʵ303F:|8U EvYQ -nׂvA:(Q*1*jSםE?0hryI7VYdX1ōM}īO^D9GrhvO !JQXАi'mj'+L*G$c<%:6Xs+{4K `Fq@|e/&S$ب - Zk.dCg{uxAS[)i WW 3Ae~] *mgEGe*v֣N| z -Em-e_Lmi9wVd#ͧNP1)5C\<5Ln>lbbo+ln{F# -ēH@T~=\e̠ӈ=4t7v|p Euq,*J~|7B6ʜsP14*<{]ESnJ80XCM!3𣏕YZlT-.N:A},$PpJ"9_ 7+ec{{-ތ1ze~*c=~jV#ļД6>(ȫϹ}gU-Ix\?ualQܻ>2T;⟽ eF(][rdfdbPZ5.9y0qѶ- cxPq,rKe't ^CdXv Bpsj'eK O9x[x0(5\$d6YXPl*BIO2+#.)4*RȠFtJ8a)a>k"# :qG]PeuZ; *&pzKK~!JZ-t-UM|`/L.+E3|V; `=cb63c^6׮ӺT.Ϯ*?fޚZJ)'G\/t)XP&Hjuu)?uj85khKd +WI"~b%}4~SiHro5j%W~ -[j_!נjYGdӉ< {}ݗoq ?j6`PBi1m>ԗ=C:Mλ8`::wQtuE_kPAlWJ~0ZD{ќu[2Lkw˰iPPa\0p1w7HI N{*FjչՇc/%)[VS{?"1˄}XM\39OvVXw[\ M,K/bir9b\U_d=mxۥ{8LDe*B4CByDc[ -K o̓8J`Ugd!rPWtuYC0d ~5_QC=;x36OC)B>gzLHz@&(} +&ozE|dUTdQ@j<+L%LZ( HjMuiqj6Ԙ`;OA;O~hg+QgAU. .D}RbqˡEá "`q2L?/,NE8'd(뽃A¤t -aehd%P cF -ejK31~CJ@J~-hȄ`NWm93b{7Eogt |4җ rRenܸvu(5m\d'ψc7>cPhlVPiPH=~{f\RO_5)Nttk{dK[y/r.=-8Q/L}3i< -x<`tЎ!i.|w(lMzfzX@r!?,_eStmNMaO&Bn`0G:ş%NomX:e0;"F&H~!Bl 1mX=ɡ*eH$IbJke}>'[GXEMqu(s)~4{r(Ar,y/4@D }3Fsf~.'rY8LMqt h^ P[g~4֛&2&&شۇuj׮H%;^ 1ĩw͎1}($e~cKTlŸu9Ff'GA>lo0s 1@N+o풏5(Cb$RえM[1a`HBYrn$Wh^Wꟾqfs6|J-B_NI7j}q(Hee}> g€p{~;wm53_E-k擔I`bIQIp2#ܙ`tM{=t$5Ϊ<>?~yߒ97"[j"=p U|$# -pe@.$ڇ\b~Q'qϭ9'_SkS3jSPNzpYh/;$%~%BF5<& xU-~ޤcvZYLQHGtVUBl2 iUluLa"ÎY`{E{s 2ڱ)MJ菺9!%xx[&LPЖ<3>mACiҖm~}?K!q3WF`<0Y8f/a楮}~}^QEM`Vbs_+;Pֆ+sUBͱ$IfָF6 /435zXeHe]ʊSc}z˨paq'׎ S.|Iq+`-,O:*"E:٪bs_0~mםu^sl=**ko KQKr&AhV -Z`t:K"fyn5-i7$&m7f`d\5tRfnSx1`ze0I|Y\uU0[FOV-tߕg8M8fS=1Z\`.@u4m~PX! -ÕiA;_n{blѥ, 9a(T*Q{Rxq«I咤.Y+|ɁZD|rl槚%)a2 -(M7̆hcPW2UP̠ɝdY)1ǝz5/4Ż8' Hc*A űXgw^½xzbv(=6J'nɟvL)esh\M58u<Ơ3L ';aLGؗz3\7|J'CNՏLݘ|] 6b xAً,xܫ¥!nC>m-7=E=ՆFٍTܻ"V@" Ulp캓_-™7.$4ܥ P9Xo(ҥ*ʅs'eGĿ])_eˬřROd) -kӋ _}*^!)ET,cH(\xR/o?!$( `.Hٴ u;tR#)>0A?$,>rW?ں9gtz%`,+ cu cf؟8QfǾp*2Ǚ\p*f;EDM8ö6.;=S-t.[N[!.d:|XTcN_\V܉ĝ"EI*+{HG+9|bohsOvO :ݠ-  /m$OD6Rp!_v҉G(tP+'S܌) W.$Ov5.aѿ3_H[[B',A7{X(_etWE>"u3-4qqawkdkJr.k7ѱjZ2&yc 6 :Л -3[~t9>V"Df㽉B>4b`0x ޯxYGT1s:b -{v4p~ 'AȦo@&^/ L4 '[f2+_h<6iA!ӧ#} O@."p2`N/.4H T8Lm"cbڶg k-Ԡ1kYKLT}%'s D5/tRhJa^yi]{:!۫{~HNܫePJ%ӥ3١ڌh۳!Oc&?&^\2 py8L[es#i9L#0Sy6lS)Qe~_NTMEL?_]ŧ0 x=Yq%!dqa5D.'D=GST̝tERќ,@YquaA y: ]7rFąBDz!3F'~ɝ 0H٠Ӳ߲ S*r$ȔZnGuC`k: g:KC&Sj|i4o IPCh]ބ10s:cS_WOSOAH}`_#u$f wE+bvտɦ|J6&^zWA(sUL B竷RX)V4F`l@*,W^z\h2*P:NxDHó{V[7q3)nNGD;Xxcb-گ` 7ٶ*)GĶsmڏذnS@pb2O±)D"\iNayփMy}u%Q|!̺hwU7$6ƨQEseT :3BӑC%&fV=גưXPHi p`A\ϗ] ~.ͼ*(( 7Kig11ʿRl=A[8)}XʂK$i@=0Y붙ǥ%^{߽];9KzAN}ԑ\("֚n/Lu0@_HصՄ4K!YO.@eN lRUw-r'[94)l@Eq'/Cwuˆ3ZXӗSWse)kWJDAJjywOB`Һx/Ĥ@+DdC\Ă,?78+<[v4d I 0}eVE?( e^(A-cHu 7]ekᵽV=>9dC]kOαoM ~ҟzYYQ.-ZѺwt_ qm7b_. k΄.Tꦈnr>JW.o ѵM<Ѭ+qel8@SAԔ:+"9jY!Bu<'ڪ3jq`VeH^T<0<ĉޱy fi_#{Ugېע +^ޫ9t]7 &~K{A2n'Lr,/5_Nn"L7^dwwFcBF Y*ѱcrJ.E<ًJqms:TMFp_A|a7+& Gmtʃ후`) bꉔ\RkŮ)r$n;=88ZG@b%솥X;;9Čڋk?GK17 t2sS4[C5 -TEU5WsBy+_p=$%m7Y#_,<)" vI:4q{D$!F B~P|'rKXZ*l%Mw}-R[%[ӆIiMxa>cW'\FyBשgUדH @tf,ר{P -@*{S\:>%Ɂr8-@BVA)MBq$=I؆mFC,bnIcqsa\]`ﱼ.G<6J3#-[9eQg Ņi Y6?huQ_σQtIe- R5J3[FuT]4yntƵ lwxA h#5xy b͵ر13wrіp\f8ĐH(5'`"`\N&(\&'"6d1@MK{]hۮ@݉vdX9~p g8\?'#,"TOŋ*;~+H|Ulkd#W9*E0<_':dl#a-u5]p@3Er`__O Ao4R^=y%' : -=!ht%x C qPY ԏ2qzRUh?v0JMQod^ z\ƒ7aHQ6jf$l~Cƿ  ?j\8+\Gm5EVϳ#a4*|ӟIldțT]Tjb\@yܔfl=zU(V_>Y -zǹppӎlڸ4 -(]4/G:uUBX Du4N͈ -ow^'؂EI -Se9;uj2 tD5ڋ~$ea@>wQ#IXdCδYɅN E[m"XrWE21fCԔp]X{8ܴ:~] nE{罔0g*rm3r GuԫK|NZ'\oߟ3A:C{ @apO>*J{8) lcV*<$ @_#[$Fҵg$-eZ"" Zųp#Ib %e;㝯$' n=|b΢gȲmL90*S9!,JQF鞂e.%=!=YS-ur6U&E=YI GzYET18dQ5Ds\h"fuͯi@|Wٖh& ]TR, 睜ͮ͟ΐ aDYwOTR)/xJBpPܺ!H%x߃t30@}S\>ek)X{2I!8Rސ5nϺxgHu+"S2d{z̲MX?!#u6urrw1}f;6\ցԱ8 u+i-#9 bcZsW=QR=`QUޑI;CgjrVE.K2P'0_<}oil^ :,њQܐy.eDB wm~ex'I6yUR4 -5.] К4F5)sJG)zd WE}`Ypұ8)5=3"lKv8hd Ţoȇ(0}鋒T?덭|e]P7ڶvk޴m9/9Fщ=RZ7HcqRr򧅄$Al -zCD(]p -qx -3+RƐHǥ -*E1Rz"~hl ѣEȤ]8EJ)D~3XQ ͌N/BҹAjT{4_ zM|1V)4)O`id>wȉH~0z"50t6jTrSvԳ9a8ܪ#tûPt܌/kec{6ѥy: >^Y73] =q|3Z7 SuA5æ755 %9\A -w^Ns5)KUz%ex@>`#0 9eq1`~fҎۧWaπIcS -FR9}9Q30v5k IFw#"❈-)j0X&" Y.1EL^gIhM<D iy)kMMZBb~McJ"&GĬ)Uу>F2y"نp]v}EC( - &F1DWؠ~Vڦ1D`ci@ONx'49K&b;gB[?NBOmC?DȜ-hzѳvJB'c!>JP2㚷nƼyUx6ޏoqL`(~7oƟc{T/QjCPҖف,0֤́F -REz!oÁp9CˤzQh& f8xL &ٗ`^$klJK*3Ac5ʈ,qpRu`*^37&];C<8+TΚk3fO&&Oơ<; f$va'%=3N4G q۬SAἢ{R~H1 qZXUBd-2bڗ^lOr0ī,tB".fdC"ޣTܽ\~P\gW W ?V SM.wUǞcS$}-wȋ@A"rÆ -pwcSLL*D:;Q2L޳>tH l&oe -أD >:%ĭP tz%̪ҮgE]Q#*cZc2C!p?dSx x^2 -6 -ēIH+Z[fW!1םl6WSF ocL\>iߢ03آTZl#""S2\1q?y7};sX޹-I (PCσrWk{:C4oE7b&QxiXJo -pc xI#e]8Rcw(/i<89k3DLEؔC5!xYjuneEUgUJACsf՗g(n&wIXn17-]s=QHEz{,/w;;aj=#; -?ڢJ4La,ǂABO_4"lË=~za}M@.r˹̽8Y5ʗVR "u$S"F5V}TSw|+w|]5n p./K\J|~4.*AR^OWoC m,]4s+#?SE/'3,Av}{q 1aU@JYwf="sWȳOdMDmM5d]6: ߫-?m -Q 04Y-G3:BAuIHH_g.er/UeE7t)4;LXK{i:hb84Q n}$0:x2MnY^/ gKw[Rg'}sAR ßQ8:9e {5O"aWVuPY}6+u.[ 5G|*.gPFQ%Iw$RKw}3xᖜ4Siy[.Z˗5K6A#V$THz0ݠit v8XO?N^w77 ci߇n -O˄8kۨ,u /pXgkmjzbK(Q*rOX<%4uL{8,7,:LAw{X,X_ q#oS癣Me6@^9d̶r|dչR)k-Nr%QٹZk`v2¡TlA2d-QBKPCSUr. [[FԙkRC;pSevad1#aȾd]irS()Jܸ֓620"VOM-5?KzSS{)&Wu)|%j1d]# [6:KGą4FϳfuF1AW8fhRB{&N?0SsBRtC|&3+?BA4aBK{Gg·!N]-ZiA2(-Z6>3E`2(I"Yo>O\.)¡k6.%TaJ@ ŝdS>]5"vVhDA/jW}ZA2 )>54SEf9Gf:Ey>f%[Q2gӆ[pXd6.a1%?$tJ(^$2M/Jy\8=nT r xyE:tW=^;9ː楝^@&{Yw"rfKƜtw'LP;33jM}")bAgĠ~'Bc(j#3j(ZLT81|M]2F5FR[z I)K -,f0G:4KOR֋W]1Nn #;px󰀊7|Mt  T"zˋ=pnZ7tlxz,&>m3,ݣl 8˛ԞZrK {?6ْ5 TK*6j(>BCB_0ׁ15o`B! x:mU F>t -ie~x, 2!`z@r -endstream -endobj -1906 0 obj -<< -/Length1 1425 -/Length2 6648 -/Length3 0 -/Length 8073 ->> -stream -%!PS-AdobeFont-1.0: CMR6 003.002 -%%Title: CMR6 -%Version: 003.002 -%%CreationDate: Mon Jul 13 16:17:00 2009 -%%Creator: David M. Jones -%Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMR6. -% This Font Software is licensed under the SIL Open Font License, Version 1.1. -% This license is in the accompanying file OFL.txt, and is also -% available with a FAQ at: http://scripts.sil.org/OFL. -%%EndComments -FontDirectory/CMR6 known{/CMR6 findfont dup/UniqueID known{dup -/UniqueID get 5000789 eq exch/FontType get 1 eq and}{pop false}ifelse -{save true}{false}ifelse}{false}ifelse -11 dict begin -/FontType 1 def -/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /UJRPBG+CMR6 def -/FontBBox {-20 -250 1193 750 }readonly def -/PaintType 0 def -/FontInfo 9 dict dup begin -/version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMR6.) readonly def -/FullName (CMR6) readonly def -/FamilyName (Computer Modern) readonly def -/Weight (Medium) readonly def -/ItalicAngle 0 def -/isFixedPitch false def -/UnderlinePosition -100 def -/UnderlineThickness 50 def -end readonly def -/Encoding 256 array -0 1 255 {1 index exch /.notdef put} for -dup 53 /five put -dup 52 /four put -dup 49 /one put -dup 51 /three put -dup 50 /two put -readonly def -currentdict end -currentfile eexec -oc;jAw-=%W)-{ru)rAE(@{빴Q|_R -ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{r̗m1l(zNRr^&%:(/IߺHm!4JxI7bs,OiOl7Ӧ!b^Ѵ-E>3t;G<;l: OSS*O?9-w yg8LsYtָE qHp0>ˇ -,qۊq mZD]7ʺOk-G_\SyGLN8g2Q}:ä|C/ɑl ѓčC2`Lu3D*Cǩ5љsLUkmH FqTfZ$|2xlڮOuxgG/|:&Nn$JEQyރ4>py'3ji.ǦX9~b0 ub;F8(PFY|DS%y=gn!QZИOi歨H,a7`_Z<gZeߟ՟q/~j'[E1 wg,Kom>M8;r CXVkg-/R@|lbC/zK_i,'1Q7^3EӪ9$Zdy]ltr=>K%a1\(t.EzW(#MN̑6~*E;ֿCa^1y5ݿ'hyf -s.8ϰ5ciG$5g0KTlp@>]fW7QGVn~˟=]Z`*~7 "ڌcw0U{Yn._xIPYQ]`MN!Xw:R;t+]gZɅ oswQU)8aA^av>xƍH_n~}StG7 K72fCi0Gm1u?4&]ژdFpmUhӲ$w\Jd8+SE=XnV%?ү֟G[4D)ҏ}<)%pD%qrkoX(&Ƕc<^ԺO;FIRCK-fjz hs+*U-\(=D[d)@%t)#ْMٗA=5N$1Qkh|)Zc׼=}6^w'eufH p!x."s!SpزvNȗy8~%_mD8ǸrɳhwWu_6[= -V]Y2?% -)/KR|e=b_0Sʖ531ؿmx> ՘OX![ؠ`vf|}R 4"~)uv E$U\W;댞K0 6$֥拐Pk?yy4<˒q=CG$ @d~A1Q8A-|߉b1`zj ۦZ\.r ~s"b]Ry&rD0hLS)z6M="'OOQk {2+$}<໒W` 1=',hkƏCfE5F]Ћynh|d/(~&PB9Cx9 - %,9OKLvH,>Ҏ,6"+DƸrhL<]A+6JJ9ۿ2jQ}bF[z'p&S*U$ؖa`RI=՞dv_\WB_5n[&UXiNcuοrvI]VI߮\S"Ivs qYpP]5||rOډccB0KV|נ40Cajps8A軝Y4-L ͯi FV{%xE_ *`LOU -ǔKGs|mJ%5ݯdAv<jா-W:,=BYme"r5tŧ>,wxI_ esxRtQeh; -[Gf҄(`*/I{w4iOa"č\%{-+`8@;dZxW'gA$vq%=@ Py_w駾{p6LMmM# -R -Y$Р쭀|6|噐ȏGI`fkqa}@tZ&'=3bIgU5eA},):ichZ:l҂ 2W#30rM$a ImvO", -:(%CMi@\[ -t=UMn[B_2_@nu?L,DWUx=u}#m6xA x^QZ+% *{ϊշr RH [*Yy0iǭ0abP7y־pvkTTR+%7!fF gGP2?S%|b%N&t:>EOYJJJZBH-!~yp̊Ҭ㠄֯d z/3j*(JP$'AT˪x"b4~4]Xպ撾99T<ԟʛKȟ9[I{P>5Ruc&(0ܪv;{3x}_%.beW2eSxD8o{ۻ}wn,WPz;+RtVX= \uBU(Cvw?H jt~DxtӃEP[x/2)+ഷʱx46IHgoE'nb\lLhcb/K}kVD u6#+9oi(gy5lS{ ZQ 0dpWg-Lbpy\z(gR6eKG=9U2ݧCH opr'FS+ U$κ h; I~Ζ:oDUEFyo;0?mP>"#Ǖ T5J!*S@M7#8&-yn95GTɄV -+WS[Om3Pmd,+ST졆kyR<$ ݀ 2a&=CԠN 97#~MT?BzR͹Qz]sTP@P G- R9Mz)3MHxV'.(s;|_OT՞X9`G $PW٤eY=fE%ԤOpdDmz]֥zK+xIVk -w:Mm4YV#⺸M]*Ǣף9t5#rm'Eeo$Κ+z8n/=?njѳ((,O2w <6Fnc1!AzVRIز+Tko9:W\v.yA5gf]?j6)xy!N5g,:2F%uE`Bxw(ݯɆ&^͂NV۞AB k+&@'јsƒ_;q(_:.:)[ ?bt.N|Pm}/u#7A"U)T\ZxH ro}o2Xa/vD3kU[+,뫲,O 4%߇$H'űC/ |,v=}醜Cy`6YP*r8%{o4c1OSB!dA6]W%gcTޟd>M2^Nj[N@*Z;#hhK7#2;Cݶ2 wC"[yDJ,#b‰ZV*7 xߘK;Дyv96I)I" $!/8o(PyRUS`<!{Ge+(CuAqlTcu[ j=E՟2C4%2+drQ/;ڑ}C`@|&cſ1IO}5& !v,+M1pp_㯎0iP͕񇐸gZ1:~i(l=kqa.1':;)]4,6uxcLAa^!L"u -ɜ~=C3[ .18jITOQ -Qy(E*>'߇߃5 h V`,vr3TT{3O_<΄D+ h3ʂpSV#u:>f`"_Bon!wN y/C5rb?7@?+V5خ -B6oYq^5Zp r,B^:NJ07Aϊߧrէ}E4zAWr%`HpZp={o.{#'uMTÕ[gI{dLAN }be/F? A]buvqݓ[3<4MBTparN[0O4\ۤ识BoƸF >'dnxN#ik_Aޛճs#;w͑2ԳLҘEDs =ֱU#T{\! ^CǺnaA2EȎ -,t.U佴r&Bըϲܔ'LU -?d1t> -}tjH# iaڇ^![!BQhT1%r<ԶcNP+P x@k}cdp"/n}ؗIjX=謀dA'T&`妺M]'|g4b -J4YЄ ]1cY#@zG6K1&C'ī7Ptu.)OD->`xAv&lNO5%ew@?r,糉#*gzl>1-ĖVKmz)cQu%jf3>γ?{\ f> -Wڮ;5]Eԝ4*,?B 9 - CaI$8]F 6'dXLkRRzÖ\Xp_lv ġ?n?T#Gɪu\%(N!aD)ch1Ez``˕/&$S }S]g({jBnkm*u5'k -8ͫQx&,$>;v Y<qVpٯM_F|y4ƨ≦cQC%`ܨPD{ϼ!۱)ÙrVv^A^ohlQı\C<[c6<^&g_s4o ]_|CK -,-ܸ,Zk -!sVÙiHޭkJKyuKI[Ƅ(,M=}%vf'E+)}f$l(W2[8hT>9X33 viU/Y{z4B&qnz|1/ɴcCzwm|x]Lmo}zm5o: 꿊."ĈdNo3 +vz N +pzP;Vҿg6Ǣ >,>OJ4mA0R3ֹ*{+9iuMO@h}-( Qȃ钏A)ӱ =.93g=[_bo_BVƂW"䶝aoZFsO)%d2wNH>D}۝Y1jZg1bJa|`hb)wYc[&0jX7yg +hS&}p-f^ a_ +l4zVnR_e@*z|Wi.9)ǙBSs3Ϗk,^bz˹a ˅4_B1+W2poDx>fH[]TEjRȊ~/+  l8zXܒpH!V܁d!;d4T5:,v#cK*;+zXz k Qw>aqb61IK&?e=f?ToRw: +e +/ y}tX"7qtf}є)8SRXyԍ/Cmo0%}pd{h4>^wD@eQdaidY^@?p i3;BŹAe "Kc_ + +>To=*y#p$Ua5Q2Z3:wXEk!XLǑU MlTHnyeUsAܜo3|] ]zN&GU1@./9;IFz$U/Klf6xq y +w}HH/*%bkYyoxжjxS\y)n?VJ+ka[zffI*[f=M3)%qO(\-Z!J +H)rQQ5TbL}/>5k=QwO75#:,U_LP?NCSMi > 3*j#WÝD8$|!F̊L;_ +dQJI$Y(mRqJ[~f9,6_1~w S,?1? Ayl(LtU m@*T9EWOg-ږHpaH"\z/EjV{11̃TVL5yWK|z|ڶtjBdV=z3TJ~[3`vpnrU MVW.Y-t虘鰭2z񑄥 +Kxq3å_t|W%0=E@.2^r:(H>ePݳ;ס}mW-MAzs`sb}s@_s/FOE«lh\G`ba8$(^U3qC"vj?Aӷ5.s:];H2?lcP!e-t1//ǑbK @3\SN:8'gU?)Rb%o>6 ~) O +Xw5/"|k(e$/JG 0Mo#hpT%-R(>* Ҩ25h|I.5u`QPւ)`QQǶ(45^ބM߯o5G*`?RFM Àgpfn51dK[L +yq B$@'6!W +ΐEI6,IT$yهHpiVch]l&ߡF:O$#Ȋ!D:%)aMx"_L?d*:02]7x(4p P8*.v5sb<]LQ0*K+@>e.-oӏCƀl\~R+$voDgya|n)>1_|hvD5"Pt#'徹.GESJW˕̪N AZr!o"XF-)$^Y|i RA5=OgCna8z*2e6]Ԃpc&IJn=/Kzb +̴3'@{VR&goIa;nI_ | $xf@ҾdG7x jU8 RCӿ?A X9ݾ#Q|ְ\W + \]ä4/RH$ktv>8]Q,1H9` O@&]zPO(5{OÞ! F!s`ql贃8nr99:ݹ6SH u:е ܴJ/bKQ ;2~t|CAS~/T>8QN+~g-|z4ZK +x%݁Vp=ЍɊN-"{L}Cm4}kw~enҜ.fYpg![t_7.sIw4 }cO;*iz2m/řՅ* 4y*u3^Nݣ;Ŕ+ɧSdM:)2 ;B "4PmGMwU$f=Ą{Ay<\.|L5L:ݭZ:>f>proyjؒ* 'XK.O]H_mkh׺{pMqhXW}8e1؆B,V%u U?֕XOhfH]Q&=?^uRxѹr' @ f9SJ%$C͒:bg-Yki26f;L+24Bn:/ߛ*8ww,tZv+'8:IjM^I>+ۆ&WThpݟZ;^hKle,Btځ8LϲrB# ާÆ.LY~z&$Tz0nߘZwrC͵aX#bBRj)%`Y4G ]SVݑ M484R%eۨ-Oϩ]l2Is$Np07"&@L/}f_ F0n"m0q)YzϼӔǧUv=˔pqKI^#֧OI &~Un ^Hܵ<$,,"W?_uz//z w}Xo=qD-p/ǺA-0M+}'sହ+D4ti~$<@1d#];Hϙ, avc>h$G! Rwђx߮W@y1ѧ~5/_pfڪ`O!Vx(Dܪ4z|p3 8rRa\\`_CBEWz ȟ䅤5&Y8 ~Dt Ew{ 7ȱֿ~ht O0u'M9WSGz߁|5\Tm.=ĻtG+^ iVzrTet]Ԇm7"wc۹.Sn"H]Yz}"f,\>TUqKr}suI \5*(!'u0 F>uMͥ5+1p,%m1ra pYF0#G~|\6+TOJ"g-]:DSV5,]c\ND{耻B:_yNz.94@cj\qGH+zrȠ~_)W˯k%ΰ|@yot7-B<-FEdX=ϰOF?ݳ < ʩņ*J~;JqəH~$rZ8@dolov&`aYQ#(`/5nvXbcհǀT+>ul%D/ +G/.ʣxx"F e ]/4f}!,HlHqF_7膪,~mA(Qb5I׎Ǐ*<<_@!IG#!hT YdOZaLQHZ}ggc`{dM 7YOs.g0"]\lF_٬joD8\`:a=W%FU{wZ\RXWlN66I k)ඉcPO +bbӀ-> yx'0 f;6lBXGWRA+5kr=[֚Q{ vxb@^R0FHV& +z*Azd,]j ޢr/q+@IJސR7.R(pco!jzʙRю #>#g D CSpWNnN-D+cXFރ#4-#I3&%jʟvcl t_ۤ1~vX+_wbVvzEgY^O[$W*d Рl,][3[q Iw1u›c]X4Fcj5+!- lMo~Z*f'ie۾=͵hN$]}^~2}oh/rh~^BFy<ѕJU24-IB ^y-M5k7ao6 pidS=Y!reLoR|D@)N\f AsZtL*KZG4}o&DǸ\n/{ZZC0Q\A#ex  aA6ĘH<v 6rI6C9/h/`k^%JzɰhR{Eh؜t R7\nQEJp3E2ճ+'vmyA"noL5Dqn/p4voxVb';ӵD ` !9 t/ OAnkib *;$GNxUS Qөo]EKا Rx-yǔ,wCÊ0r n2߁5 +t1]IdK^ S^Ɜ:^!azd2s@z=3S8I2FTK 3ۃ]-e)"WCK +c]q;V^=.T.xMC@ZG|닸ཙ>e7o@s 1WO`Dz.xk,m*fj V۽(!r(cnN{{)[A1rİS/F?RD7 2f/BlI#dWsoY.A1WLP,7Q(Pdհ(̣K۞9\8SZb^+a\]!.cc|~C3S#~poWσf+6Ĉ( T!g>؉$ǰuYK2$O;hqV)kDAYG| TkdES͏4qÉ3YiOuIW4rJOI~inzzhETCuTI7Eq S"gGP31Q +9{ɠexʺZD_Y4d.B *` *R)Iȑ3̍YfN %՘;`)DAJGZvi\E@܈R OGriН?^DfRAz7j܎nGq\2ìBW0qthՎv=5n$ h^7n}1!SI>h'}Sx`1TUWy`P|+O4U<T'F\b9eƯ>Ib;XX)XoE,Fq>~(y99 +ɗ>O\n[׃5"- v}aRj+fkYȺ656~@t^} V3OK|g^E#:Le )|9ޔ9(%+FIZA?J}(BTp!̯DxѸX, <&&ZPcQWG}sKH|Xѭu3%a^Gww![oKQ>sbpC&Zۋ7hpn +wqA|X4x'\U__wn50,~bFAYp_O ~o + NLHz}e-txbη!X/i*uyx:((e)-;Eueކdc.6,rP\ +K: 'F'5  +/ Cf*DU= M:焯͈%\/S8 +Bq,s!SFB3=`ގa \- /"nX=P5XiqӃ,2F"+Q_-U9 +gtE>aTcEɧYft*B=oL<%H4M>b&&JĖ _KZ0j[yj1 )d@~\ 29?DjD(۲])[OTd}nMI7xЅb7 3=BEѤe‚EB8? 6z[vΎKlBm $9 W}1\l~tșwECN3|("f%{ǩv1C +H;f7&pm:g*syrͲX9fl43P>T׍wJ7(|ڈ.J>.c+V.]E56!EW7 Aš>^YfT<'D>?BN xa9RI$e$6$me0?#F,bn] +iLtGtu9GIj'Z1 ZNQ5Mwܯ"מ- q\KfydvZN;%fB$k┻xn2Yfxwh6*̃鹿+>yK@Q1S?#Pm9Fs@ѤQzIWPN@e0!!R~C[J{>{Ķe,R~f1+~r=͎ .YEvT!8%ױ+nRuîBd5QZmȕ8cj}wBY!(  'f6-9 +(cLEOCBZV]k=Q[Ffp NQxN߈Ib(=h +J6/|[nҸ?MqM^Rۯ:aPاS^7S񪻤jy"Q;2@,& +i78w~RHyz]4R<^|$T5'9 R +ʳ-@z+V@NP\wxT`xX4:$.1YC|9OE9l|w R ƃ9hS6c sw[B^]N8Ziu@cBDQiH_HWAhA~5wMUP1!\ӹL#aVJ)FރT Će7}auOεC w֠m'F @(ݴ 5 &R +4&Fi!&CPt#+72p%a5K<#sFSUh̺d*l4hA'7 =נo^k 4kQ歴Rp5ֱ*h]ǏJ睍ߡq?#݂7qAg9uq5/=4ECc21m >QO9m2E'ρH!y>Y`E`j=ڃ,H; 3h|Xy cOGb5$Rߘ؉48CD #_K|D \"xn[#ϐ0=viOZ`I`W"Y.n25*<ۍ*30E8 ׼C5;H, FC|h4A_S]!`\㸌7T*{W "e9O7@#uemV  /1VHFR7gd׈Utݪ7ogm[ڥE|WP {ou=2kz`@ ;MKtWHLݪW.G7^7S_iLBW.\wY-0d#{c#XBu%H6trDJm-uug9+wO[$I>i)$)T4m{3WǜG-g>?_+a4<ݥ.eػD r!Q(||&gMZ]y%/LQIDY0 Ю?]~On6ۺhQ:d@'!@*IsPlHx_jD\݃g3.f߻0i}= 3bP7k4Drߘ5zW~ZBbZ$TCW? endstream endobj -1908 0 obj +1971 0 obj << -/Length1 1460 -/Length2 7107 +/Length1 1385 +/Length2 6193 /Length3 0 -/Length 8567 +/Length 7578 >> stream -%!PS-AdobeFont-1.0: CMR7 003.002 -%%Title: CMR7 +%!PS-AdobeFont-1.0: CMMI5 003.002 +%%Title: CMMI5 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMR7. +%Copyright: (), with Reserved Font Name CMMI5. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMR7 known{/CMR7 findfont dup/UniqueID known{dup -/UniqueID get 5000790 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMMI5 known{/CMMI5 findfont dup/UniqueID known{dup +/UniqueID get 5087380 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /GIODUE+CMR7 def -/FontBBox {-27 -250 1122 750 }readonly def +/FontName /RVPZIX+CMMI5 def +/FontBBox {37 -250 1349 750 }readonly def /PaintType 0 def -/FontInfo 9 dict dup begin +/FontInfo 10 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMR7.) readonly def -/FullName (CMR7) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMMI5.) readonly def +/FullName (CMMI5) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def -/ItalicAngle 0 def +/ItalicAngle -14.04 def /isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def +/ascent 750 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for -dup 58 /colon put -dup 53 /five put -dup 52 /four put -dup 49 /one put -dup 51 /three put -dup 50 /two put -dup 48 /zero put +dup 105 /i put readonly def currentdict end currentfile eexec -oc;jAw-=%W)-{ru)rAE(@{빴Q|_R -ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{ޣ\u3]G~ 7G!/ Q FM~f/m*i("!i -K5> ţ d,J^,]^ -z* +khjOwq k&,_?Ɉc"n?W)Ջ kÖ投`Z/S *?c|Wgoʮbi8hesQiɺ4)FvP Vؐpik`j`EU)oW jBNfPTa_$ uDd3QBZSfyu4 螨x঺N<1Xk7I>%} -'T)~$I%qPI#-MVxkx@޼ۜZJ6h=hAڰ:#obv0e\¡0cPBz{f=d1G'{1@dD~yXrDOZE.ϐ=(%^/2V)(mfR20`މTLm/QL zKMmͥ +^vA -oEGxvXIxAW>xCª5!w^ ĥv(4,-eӻ?/R?Dqeq-xE $ܘ*3oᮘY+0{+N.>ψ'=IJ -f]̇C"spn21 {3=Ej4ZN2 -K~*w?#9; -A)Py 7}^muF2x~m64&G?r\|6L)ew¦ØB+rBc۞3v -!:0{uL -âAj}{q3W^B'(Yhn0WRS?u Zin=ٽڠǘ){s=m\ul^GhN@(s x6bM'*'6?nA{,1{E.RxmN4k(wl30M\Er -pty o> -{a_S -[D.tIEӽ ]fVՓj7Va_a"-{#- -:bO[)HAXE뻔Ug2zOqq" rI~$>s0Y@Ȩ5{I>y炲oCA2=B?"R -g_,~q.E| noϗT6;i?Xb4}teL1~&LdZ}2W.4.^%*D|Z?7W1 * DD?P_toKL'c ߇mS>-#| ;[R1ڢ` -@@onh.VF+w3ݟ)RX#9sz4X"#bwL{cFNj'ƌQԑt2Tn~. |_ߐk(Fm -n8*Y3".g~3SBج!͗s8 +݆ iD7D#oEMP00pn̋E\ٮ+7_ QzRĉ iDoB=|n$2bVÛWRu^]72# -x7SE5OU:?oq W\qPt<hR,v7EbZ5=>Û֜#hSRA>2O?l"q(DOuk4_}Ǟ# `N0N_CB<=gKO1/a!!ԓ(`J˭9.R˨y1jlnL`f~ͪuJjwD19K^W7L(ҿkH8rC/_! 1gg` bu VdoT_E$ LZCbΏ)#ue*<m}}<Z1]7n=6c~#`oM`IGCcIR(f 1?>+YKCZ%s)pxHODRhL⩩? -F,@۷l-%xWuLT7a5 -b=oюca -rPYqf3UeQ6ju! tYL,#Ev8?@<m?ĸӿY7^U0M`X,oz N]CSpbӿ\{2,1ߣT&JRCu& /D#eΓ|}J-ozOYTC]i/ K^QaCi{;ᤩ`; -@WCk2YHG$JԓO>K+ +F. %KWWZ ucQRT1 >r튌;FG֧':ũdXn|I]ͨxq/1siN$bppa5DC$6lg*4/*$Mmd$$0el7aa (w3\\XAȿ4`]|v21) d6.7FkC/1J5deGñqvTߞN|@\%eC_>$X8cB'f{ nQZNr Rn}R1Bz _Мך-Ekjmnk"5j/2~bE9#FmY۩~|NDpTT6Z%H ctjz3\ */09R[Ƣ3/c4֪K^ 3b%B@$Md$8(sPWcY:2N&q4$ -VYvHS Gr +?6>s{&@ Xz #xHH+D%vZ~WO?V33N FӁ9 -[" "rme{3L7gdzR`QK8\ڕf0h <8 y -9\PD^1L1̄\$CFblMQz.Iۯ8fv -%ڞOBTVHY+pJ}S -ɲmpJ3Yas ݟ*SQYLBP_[HWBQgf `~[x/yp -vi >zxup^ľ@#uw<4b,m*}p…N{fE@fNg.`d"ŵr sr45S-U_x`F#忐{uD[Kf4IIxzɯrfb[Bk9kl 8U/W:Z94'`3T+)0ê翄 -z_,{uC-4i 7,g_H9gQrHA8]E6AQsif*lI$LI`@?d/]JTgZY3.S^+ -}KM*עGt836@<1.bJX`y<˟Dt2XJQhi1kpQTS;9v_}$qﱡLT@-p˧а# ק՗؇hg@6vw1AmlGh?z68N`@UX״>Pnù.}UoLR Ww})[N[?6 ց$TeǵY ېb>ubi&[*B^=b0״Eq[ۅ㪂uZrٟ;cm;m`6h~nGXcsN=qv{Y+K־*cb>扶{$y\k4+U7 2|X;6yv+#zc)hC]z2*SIA]!=[X:e⬇nesŸS"3hnhP}߃h7K :Bܑxygށ(2V}ă4Tn֦y-vBRB8zZ-)>ӛҸxp"Qi&3Yt -͉EW6w-"; D!Idh:|E D2Sf"[윌WM@)x<[dj-3> -k} Ti䪻J -硳%<[{ i*y2^.ЀgͫbԋU:^IUCxmT?F,=[0 OR=w|8O<b%$c6aۆ|Ckv)װQL,1:lF9p`F/DV`ՎB,Xy4H//=g8%Z\,j6Y,bpT`K#{_2$aVUsc2fe1 ~PsϬ_' -U,yVzdCX(Y`w%oPrA ktn,D?L'X#UB Ρ -Ԫȝl-,xu+k;H;w\1mmDi|{5-=i"R#{P !%Uj=F2.c/Qb ᝼M ɓ.sФxN8tbvV02+؀7k?u˩xaz*iD DX{i}t3Fi -OΣ_ֺ/! +oc;jAw-<X2-Τ^tE_SKF1F^jNBq{y4-Fgbԓ{"WB:rP ?dgS%|'ؓw&F7JNL9VRtbT5'm\N"K< +wJv$tE;D4Vܢv{bG@dū)Nh]!*qĞLG~ʒ@͑\֬nx1ο?n!4;M~Qy Ҍ4u:VOG(m3~qӇerګlW=Wj=4a&b2ЊõAr)7|p\W;C|O0z wQ R(W?2ܰ㋈iN3mʊ PʝYA9I\_#ι~ .& ðe8vaISh:}x߱/jҿ䗧̋[ +Hlu|GKKk[&q&0@YEΰGGO˲@3l=ZFꝁ΂~='>vFZn9tbpi5lAz۲u:@9_T +B:ElׯȳL4 + +]hlT;zfqy>8 1Ō[)L!lAU@L^;Ƚ3yAE`Gv'Eɘ斆g U cwK028zp"E( UbbEVOϼ2jXF%.L|czWe)% y^֘tY =V?z FŻDPÄEL8L(Ef `7 Sc]YDrGLA@c-N; Xa 9ONLm5#+Y)>wll􄥶и)g > *J!qP`^ CI }a5,-;$CuW]q.Jg%V[!!ȱ%T]fa +) 1nFaD`</(FKv3C ؃c}:,f4"8 ^f䣴WsOQĦ0[%CZ;w,nW!/-8`ӢQ:֟{Z!D[ VJ76Ӱa>͖rf av/7.F8<[ӝiH]z8K'+`&ihnB9Q4zKz7!<`,SY#DEs@*εabLf[.THd20Xq{ }{J +dSAΏL,K2( S;{p ҇½?(2F}m±ERw&_" U YZՖR Ҁ<`&sﴶBKUzsy[Tx ̠kU*%Ѳ6<Alb43}PZ@xq;S[Վ5tMJӟVh +L3tX`HcE抶^ +*q\IK*0>zqFo1]zJD0V!*YZ[;I=+g `2'qW[tb(h*ajRѶvTx:j}I‘[SK-MtW:w4{UbG4~- :LZDsB3a_@7`xm"R&TX'*Ѱ]eMa 3 |A`Æv!ζU2&"nꙏzRAbJ&GɚC +Ty|?Q „3IڦAwXĕ{_M6 qe[&I؇*YRAVՒJE.jۜ(^EnÆOQ!)-IH/jUrq.hd"#=dA<[Z5-:0qϹ,|4};.fh4H`qyoK~j*0DSHя%Nk/2f&,fbzӒ8a# [Ѵ]B>_I~jR5zRJ 当:atSA>Bdʩ;3׼ðGoDٽwrQk!'k3V#]#Q*ox) `J6)B9at(ҎQUFY +Է򱫌["?@$n&q GFaa\xRWWHPL5\ު( DR /?whu0Ӆq翈(~E`^ AiԢ>QR#߇$Ny OQKKܛv<"waF &%$-t4qX!@5S'Ʀ-Ԭ)162:"m)iHHobHL,;+x00Lg`_j׷zhYqeBmd#CČ-n!Lab|i6m\0#`|v.PRM-N/; ]-+[_fb&pf4pQNVuU',/OՌ: ,b(H + ClD3 F]+:Qbg!5M]`#Z;m/)ihA W?VD8\?$ysfpȍT[2?F3ߧW~*GP552^9 ;d#=Tjg_tॸw}< + 6+SQ]\tM6.,lfr-7oT t8<@Rɝ 8"u˓A + VQAf5؂;BK޸ / BDP3OzEnVJ-ħk Mhy,ShjGo;YF>d[* +!u'Y]D d68d=15 Go>:s# =<&MZ@/t +>I(Ӊb/ tڳlptXp<` jvD Rl erTv*9֭섧`'w=WK$>HߊؗEan5V +c +)F +rNX`.2iaY1|-~;Hp(ЈvxU +UJ1h*i b `I$LIoAYʌÓ6f?#sp}lhىϚ1^v8lBVyA#7 * kfeZqjJgI(\Îjv yar[džT j=D*F@Đq8r1TWUGE gc1#U҅%='V&Yf">M0wX2ځBO44bZE +#;}zeFZ{%k pðs|i( +7]癓 AC +nMŊ[6 3PWo yʌR\B;4-|+=Fdr5F#[HT|  D@!q\`R LkwY[c.I%\F _I q!W&|F;wC;zBi*7au¨--X[1``X/c0@WՀ;y_Z~` endstream endobj -1910 0 obj +1973 0 obj << -/Length1 2131 -/Length2 14577 +/Length1 1519 +/Length2 8224 /Length3 0 -/Length 16708 +/Length 9743 >> stream -%!PS-AdobeFont-1.0: CMR8 003.002 -%%Title: CMR8 +%!PS-AdobeFont-1.0: CMMI7 003.002 +%%Title: CMMI7 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMR8. +%Copyright: (), with Reserved Font Name CMMI7. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMR8 known{/CMR8 findfont dup/UniqueID known{dup -/UniqueID get 5000791 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMMI7 known{/CMMI7 findfont dup/UniqueID known{dup +/UniqueID get 5087382 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /HFTEUS+CMR8 def -/FontBBox {-36 -250 1070 750 }readonly def +/FontName /ZUYGVH+CMMI7 def +/FontBBox {-1 -250 1171 750 }readonly def /PaintType 0 def -/FontInfo 9 dict dup begin +/FontInfo 10 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMR8.) readonly def -/FullName (CMR8) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMMI7.) readonly def +/FullName (CMMI7) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def -/ItalicAngle 0 def +/ItalicAngle -14.04 def /isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def +/ascent 750 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for -dup 66 /B put -dup 71 /G put +dup 72 /H put dup 73 /I put -dup 76 /L put -dup 78 /N put -dup 79 /O put -dup 80 /P put dup 84 /T put -dup 88 /X put dup 97 /a put -dup 98 /b put -dup 99 /c put -dup 58 /colon put -dup 44 /comma put -dup 100 /d put -dup 101 /e put -dup 56 /eight put -dup 102 /f put -dup 53 /five put -dup 52 /four put -dup 103 /g put -dup 104 /h put -dup 45 /hyphen put +dup 59 /comma put dup 105 /i put +dup 106 /j put dup 107 /k put -dup 108 /l put dup 109 /m put dup 110 /n put -dup 57 /nine put -dup 111 /o put -dup 49 /one put -dup 112 /p put -dup 40 /parenleft put -dup 41 /parenright put -dup 46 /period put -dup 113 /q put -dup 114 /r put -dup 115 /s put -dup 55 /seven put -dup 54 /six put -dup 47 /slash put -dup 116 /t put -dup 51 /three put -dup 50 /two put -dup 117 /u put -dup 118 /v put -dup 119 /w put -dup 120 /x put -dup 121 /y put -dup 48 /zero put readonly def currentdict end currentfile eexec -oc;jAw-=%W)-{ru)rAE(@{빴Q|_R -ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{r̗m1l(zNRr^&%:(/IߺHm!4JxI7bs,OiOl7_gѳs6;P}tx,IvJ3Yʫ] -=~Hrl;H :(xP/PL͍SI'sb~|PpNcOAͧBV")Th^Cx(Ry,s)+Hߋ;m*?>H"%N;8'bGZÕbd ^i$iaesF)l:}3X - Mv%GN,Ҧ/~`Љ"JO238ڐi -]IGcf7Ԁ2ڣ}T  @ &x߳8h -{ga5Lw'~=OLcgPv9F˛z%e|O/bV K ^Ć8ԇ<)M<m;疑}Od1]ZSmPf4Ժ)}MPg2вl1gFޢp V}{<[5iJOY>5XZ$157~Zڕ-UDm?3δ쩄'V+RGpyDHvx{pcL1w¾ FMNg(S ?)?;@ṂBN߬GXDio n PSSXD[kg[tU^?f27#xUým`jck$u:RمiEUա<.^Y&ۆo9s> û -8jzIC%oOn8Rg#;D2(J+|Gk9ڲփey/9+,-b3w9W7} z᣹өUyTpt_24a6s!O #i׌$޳\Apr$w5\plYn1upd[lk!lRv4_x_$V[HZKr\wu%_F ^ =ԝȆCf%-۷R>Qt@2 )~zx6mXFVCEOxJ -jFmh)XɽЇ8{u c*;e?blV|@-jAf9Vb 8Tdj4!VerZvZ,eV҆?0 -ZWGvl~و[5rL}qTvmjCbM:gÇ VOiڪ#|ym-4-, fFxWpsX!6q-M'ŏ"1,sxɵISĜV"^j73EvV(T^K-k?Ӓ.;d{)pBh+4uU *:m;<%s!- -8X+p&4jO^1TpvD^ x$+flx7=1S6>rMz 40] XC 2ƺ_s5uD^'? jeq (ӓQEuf%x(m"B (brqYqu]ΫHgp7:NQAdYQk(|_S/8aV%'ov"U2!kh5Q?)投g&J$,jS]&1Fq**X*ilSfN{qZ '@dnl{"KDŚ 4tTY9X}4heQ l_7@ZUĩ/Ac*A\4;N{45L=!V5. }rKqS*'R=:tF_}OV-F=;*ZGoe -ED,A$ CÚI9:Fω/%`,miSs1M>l搣Z՟_tJqǙJkuBy#+1HLabL 剙 Wb])Qjfnpht;\܌8:,{=JE2[WD{D7ܻ9'Jޞ#11j:n+G,,ls3݂FITHH`v=%.ayKyMBn!Sukyv"5Dz -֧'4Q| &֨ӷRc3k&ӼJ 4m [[h|]5 -9Jȍ -0g_ -wn{QAnGgIH]E oV值4:(\TYs7HAe{Ю?VN,pPTlΟ fg;I?"BDyв LM> -E,4c| -}=xbK2^^WUAV7xQ~e#EJf/5R2 jn@FԚI&d|+.;b^ɺN(S k< q/3?׏ƚ~sďS}V7+v8kܩ!ȿ}x =7Z}ǜ]c!j~?}&bXqiE3xmΏZ6զE7C+:Kꉓ~FdNg1Gκ%ׁۃ1ýwCl檬q1FQf1Ż9\@¼(ň^Eг%( fJz^ ' R 2͏aǃYֆZZgd U9/|VϽT_&$_=1zGGx /"Fo<,*#Yo:a&jCȯťuK`uŽ /uwaEt #l!} j؇'*eRh-.h;hMoجcx(iw N̸u T=6^ V$[f@[sk4kJ@/SOnYJ\"mz{1*JKْ|(nwCָ 4&j_G.Yb[J87*"&!Ν&${G?`lê);&|vMÞ\SSELok.N&@`S9eϋci n "*z(N(`(j>C1*CɚIbtrjcWqt?[Ii56߫AښIJ'{-Al$h;m#Q5dd0u3+CcZы|1B]; T}݁{*!O^5 ;6Iˑm-x@ʏs[2 NCb+i+Ɍnu}jlD=_}ٹ*13?9r5\ʥB24"F#KLE*Bmw c,ɰh,<#fx%+L54yR#Ss+j%rqJH엮`S|'a!7[Z&.BvK94{~ͯ'ElB9 6gŠnS&}FL5r1}X蝻?;HǯPO*E4%_Qy. +1}ށ;\SlKE@%ŤQ"%VD󩉬y!;0j`.(9d !0;/[ċ>#qod]O>=z-)dgWl|nLղ FEHқ\~l'҄u6UeGBnKM̉OeӁV?hoR5y?ݙvĸZ@'+my5@:pqU`y -2~&@ʹNt;=ΰ oY+KۛFtz/zRk]z,l93& ^ y&\ -v+vXuC2I~gs="(pQ"RQSq1x̦,1fɈ[G]x&͕k5E' zFm]mT{ςh1Z(vtO:kТ4oP~Ԣ 豟l;ݳ1`yI@!fLE6<+w/_+XNVLTI?Yuk6rga tq=M=?u4~h7ajGw֖ˣՙb8|7_Aǵ2s>@rk&$n·nٿ`ϼdKDNf60ƀ4#&649߮XGOUSV9'&F#U@VreN)tX{bn̷|C'Ob^Jp$:2}osre 3ꁈ#R@D eܾ-찮-#<<\-8ŷ:Ws}w Ӧ\|Jy:,xf~X0O @xLcfġ9Pj'7a3A }~P]T#ZWo T?2#[=UN3JMNS_{/,ӛkGZ$FG[B{S[VUIa'Jn4\[pTp@nng?>x!`NH<xIcR -3.t]cI vvMtol_:R,xU0NdW\xxJ΋i- 5LI;ɧ@#c̚p79f%Ӆ( @"_,Ci4mûJ bhh&y+\/^fP1'kَ dOu:`aY~C1z!.刊n=&X/xvK~2:pSs+RJvu$2N3QGI/ ,_Y퀖`0}/ś=% (=*dF#դr~7%bcm^qA%CDp'Uڤ%;x4@5a/uR"aa'hS --r7-U%e| -$sୡ27Jf,dy+r DHҋH$بbQ8据썧(k+AFM3NaM;c3pK]Q'%t k>ԉj+="zV68ufUr!H>pץ(Kƾ+b3ͶyA3ƿ4we+iٲE(lP! z'kA9urG- -ABzc-M3׶TqρeyceWEӪ{y=W --x-0-} UXl?ep}z5Rh?,U lb]S6Hc:fN-dVNжnnAVT&SKҳ٬:UFAw.@JV:|c&zuj&w;xdW](}uΚl^"Xhycn׷&_?7g -f.zqjsa,fXRm ZpѪPt3C=?:|,a4Z3ePdjL&pz pul6_Qu"F&kwPPOP'Ps ;-a(s6DنI=\ }>b:T(z zXG 2/?2I?I98^bDi6156 v r:}ry̹u1ˡ}CQgPLJy -Ep.Saǜ,WqAX\8[ol٘p*Xx|'G&aﱘ7p ^ VhmJ:ގOPԩ׃ш<4{YO1jlϝї 7$Zu` |$ 6Uf8PӛȰ}uƾh*`.AUpag;.J҉'2o<`d TLM[G- C1Ty]?5t'Vez|"+UDmYv'F V6ۂL?0X,$8eJAMd%wEmR|Dn*5yVu#@;N7~^b` :o a&^@ 9]]wD|5)t-/hnI\U3%$fT_]␋"QwNH(jwם++i"kSH.-T/z{WmX>ojSE =^F؂ٙɧ_^.."b޲lWQG5<,(0}HTc\/2p DDMpu-ohUᦽw P8vnMkp[W<_$*zlـ_ynw R;BR^ڤIȝCO"s7 {D~?Kټy PծD! 5igjE) ->4v}JvAFL6,IqIj_uc>ݎy]K̬XU?T?M!^l| #uf^nt[1,BX*{N: KKXzr5}Mr8=qK]$wt#/s>ݕQ -$y -rB7ŗg)!Um^bKf= -\粥'-0GN Rt -?zԗџ:r2'GY6zJ5=$!pq\Uo] -(d A ))jV;r^͞1D!6OXi}g5;[lujhJAqu[oHz\seZnS$ _C+e -:+.㣙Ff%A{R>X0O4,fĴl݉lXyp( S #}M̓1áG՞!Wx3hcCh*I>jy8Nn -5|P9*O Q}IR8> BkZt%!M3JhѯȂ[u?+ӂǴ3 ɴԤD-{ۮ:u9K `dax DM]績.,NQ ƛp&-Yagho2G h'.RiZ|?\g{2`z!ID ^^d2e|?`KhZqr0'[hiyWB9 *"h D!I4#͚aL,pv{JΏ*ΧRDyh66.(-\!iC޾䖛1LⓎs/=K, 5ԉ; -e;lGۭ .v! #d";ȬmY>̶%{0-ьcEZJjl@>rsJ%I>rڂ3|)0*W=|_'AYU{s5}3YoSD]I\c.Y#reNV;Ci2_213v [bP>&x*DqԍjI=TZ`5֛E,`d xE ԁ6Yj(>I^I0sM$)3@n 4*-jaGDf}Dk?ލWa0S [5;iwU.C-Yu -sőnB!u!N&Y|ۜj;[CgۼxKى3 `,/bB]ڹLyáE oLT)7TԛֈuQ/C`!$M;B[̦0/s=vJsK:KS4]wD \&M\_;KIl].P2?YVSp80L7w&Ym-G#_h!Q[X0wԖ%!P}y9N*-kwn5,yf;x"O=Yjn~щAJ˼TBާ3]'x UP/=2^DgB+0sPށ%037}&ʎCOCaIz`8ɷ-EYUܿqiRa/i+@IX c@ (;W$ -7/5@XY x\YcMm"1Vt&|*9 ]ci~j:-rYibev~ O émbXب2֡:M&=߿eoN0(!ɱxjg)Mx 1X66fQ@_m'|Q ƪb_v5ss}X1+Գ\2rMvEB1jF|on&:N!{szEAB}t!<~Y)_/L0P+/lR=zǂcW`AB۶fn<>;u{): oTF1ELYYnB\y)Nhn@0&U7P,${WG0֡תotn儑_WA|X ܺ h^KX@@;iq;YFA$rʎ:L"Nxy*!h<\P?IyQlf;3ϼo}$5EʓsfWo3$X~[8뎋l ;|gzLՍAŅ$P$2-ȠF ş VYrkzdn9\1{E)m7~z Y2h -1mO8n#p2 --` BR8~ygǩ~3\^tS W+NQ,\T1`/ -DTvJ{J|8F>&݃н0_I|4qee" uٙ(dxQ|*/U*wXŌ# t-$O(ק"l<ۧfX5 (mn'iFTU=M"z>]P|S`z8ڮ]DEHse+yrdל憟K%Ϥ۩ N c̛ 7!>VfƢh!HR= cm$m Nz/z ɣ;/SDVXDPQX~7?DzU* -œ Ea$kkDcK+ HDR$:ϟO8{=vKW^٨#Uo9_Oj6ɧ&utOz,\uz[E']YlrnY`Q#GO$DGԏjuަydUYL9#D,ScTw:?(` gԁU0uB+]f .f7F0ξ*1~! ,gHڴ9]3sKX\mBxKkFA !AkRJnW)o\ض̬tD̢e6|xmC 6 v,2CO@~ªJ;M7D^u jI6!0G^#tyq܈$|Ae$"9@vNNz6*^–4zw?N xD18oU_)iȐBYs6VrbFU϶Uy70ryjc+Z;`ۋ< c$I bReg\Œ񂚦 -wgeQ$B+9WlV[g5y[DNT)1ѕY?6ہ Tn>n2 -m{ +oc;jAw-<X2-Τ^tE_SKF1F^jNBq{y4-Fgbԓ{"WB:rP ?dgS%|'ؓw&F7JNL9VRtbT5'm\N"K< +wJv$tE;D4Vܢv{bGBH)[)Wmu;€jA݄6p`QJ3@H0lī U=Sn1: zU2!ʯ +̹6&X!d[~gݰgZTd?}*BkӨ%>Cc-AMMغ8_/99PR lf-d] ߭EU_~f*j ~`(ks@(YH詵{>sب9ϗQ'%¤^ ϩ'qT LB%iWl;,ƤL&[͓LY!L.Ee_CrcI"#5pl$#WŮV*^-ZHh]Md&wfoZ_xOGoV%i8z`<džS{(j.KRY#u㔦nR֔LexW2N ܸm {Y2rpFSf (5b4;2}$ +Cq^`Vx_-܂ߗp\ڥf6kEW1xnnXǣj?cB۬᠘4Nw7t4-xOK|.JH%͙6.jHi>lg&w|5CW)6v}42B>Ũq%~AO.bB!dMýKK!R\-9;Q +wL%jΓ~c0Z#bprg3jN'<;Tē-XtF! +? ˢ[2}+-P L9FfVݎ44 X)+g-ٱ*m}(UYđU^> ++JFd%:=gEMuQpVp&7[9qQoIVM2]aď (|f/FrRVv^ |ĩ-pxG?'gzl,γ#ACFYm^ @.sֺ>f!]JCGuQyCWs ð&ITF̀Je&-e$Vk% vl#'6 8 H߾A7]i׈3eYx/yf] +>q^`~'}`3(1~zRjAwua8#tNʰq$ޕSOO@y{1FūÃ)^FK}J.@4z1D3$k,0Ia8pPQrCik]qB~&\PTW\}'5 Cze<(sko9!?xїE[⒞J>&"B Sc׊}5DmDUhK1M)k)P%-/l|tcT _hhk򗇿ܑCl ai&k'0 vYok9&352X8r]61*EXk d`-sW㴑`\ҋ'!Fљf8Bfمܧ()"Q%b@q+^P6Au}P:G(jH*J}a"`R_tźG{M8D*R,%-R_ϢPzQkqM)Vt8 ^ \lKt7#]뢪xNAVDPjtQAT8a BEֹ_cR2vNlFޛU'y|E3YFo`]ps + %zD 6ӬɘZ\{D-pO<Ѻ}KQ&U / ;yezFLy%LgNڝnK#꾫_:G^)S8ȼZ#Ah)<\\&ږSv%KQ' 49$ՍHD0Yyh)(;[;y,EVJO-+i&ltit$ز ,}<[$yǟک+)(xq0K׽tt"/t/Mw +e7+dW~b(6Lj?c_j +]۽Vh=-(_^:`{?BU& 9HqU2-1cdD CR5vKEiV!;qtO%7Wzj~UgYq珎SWXKL2">9$:; `k +E5 FBjl|De: +AkN4NkcOq"8&)I@ +m(=[44qqZu0P_/٧?"u텶;@ 柊"b6(N}dV&i%*%5,.Vofc.; a/p%l *u"Mh6,6ޥQ>jfRTLŧ{sj(橫2%0ł.`o{N)eugB'b!)iPOYL^peBxҴ@y,4#**PY2 ❙ȀygT>$[X{D1t?Kv {׺jޜ"4%{C{gŪPi;TM"_<.HNUFؓψĈ0NL+/lQqX +w^WwQD]~@8~("ZU5K"5DT +iur!lF,j<XQfxC㼕X: %lɻq˸n +꾸a ZSMa8"kgCLԏ +"ϓl#9BMjX3ҭڰnE`Ts[ڟN՗ej.Du 2OQajcSd#o[]"}Ñ:*y0 }D],2OQ^E:MmXS7U&倧6hf@mųue[1.Xg@kQHNVQaTb8MJ}pp++iSSj@9֙\g7ۗJ>>Z aDرԎ@zq2ԗ9{Vk2`-ʶ5 WC!2 5BwR&,%5%"@LJαm W{8)$U?zhX {ӳ]P-k?Sp"3H SN QQub Rqs/( Mɩ#1YV}E/J4o˻Yxבi̓P_+ ?&$,:39|~wܨ.Gsi@C{25;ܮ2GUI8,bA|Z:V S|:U%pkèR=G #պ6,8fBqbh?&wOV,pM?n\kz/J|;hh3gw gh6QޒNYwRRfrۀ!(uf3ebP FM9Uk +곡gy75"Ri]Q"^l%ܲL쫙~<}uGOqE`q=d`LN*ȑm<_oeIX,'ފu)\]$-J{tXgmCcWį![^2&N+o*Um",b$@_Z١|L?zpCKAdv<ܣ w$Ma}7+MigGfrH Iޥ m[D](33"& JM^z`ݑ5! w󀅖"ꛨu:I?_񅂐`g'Ij}2Zl[x莙 ͦ,Y_ 혋_A¦M^zNLa/W +ZX4g X@6 +zqUK]p*K954~F$Y'VzV;iJ#9=*Xv -=3c @.>LXB26i[V'?qQoA +᷺' cV(-X_{]K Fݹ/0ݮC궨7վ5_`䎼P5)Գ*W ZU",~_WjSF ^BBKؐ&îm'3a:x6efEVc{n8+Iwrfw(DV֑}> /_Q)u&A][:5fD#< |i"#ٽAGU'؎XnWU.Fܲ xP XwH a KPu+/ +t妐?qnuI: װ~KJ~x|~+I w3xR~κ&Yª.Zu^Z/m˖fz?f_+up}Y5N(B^FFnS-$~u(Tj$J%N-H8_U} }FOs[z %3+[lRou<̪n. 3b25| +f;&}tu"@HDu1j+?9>o>DqN6y Kn;p9cS&܅awX0i~ο;6v_ɵ|W$=;  >do\h6zx- &= A!:`bЂBJ:Y_ ͯj$>*XqBùCauF[̀ۊ%Z H2 (F]9Cf2!9}  㣽i ̌{b՛جDS`sZ> +stream +%!PS-AdobeFont-1.0: CMMI8 003.002 +%%Title: CMMI8 +%Version: 003.002 +%%CreationDate: Mon Jul 13 16:17:00 2009 +%%Creator: David M. Jones +%Copyright: Copyright (c) 1997, 2009 American Mathematical Society +%Copyright: (), with Reserved Font Name CMMI8. +% This Font Software is licensed under the SIL Open Font License, Version 1.1. +% This license is in the accompanying file OFL.txt, and is also +% available with a FAQ at: http://scripts.sil.org/OFL. +%%EndComments +FontDirectory/CMMI8 known{/CMMI8 findfont dup/UniqueID known{dup +/UniqueID get 5087383 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +11 dict begin +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def +/FontName /ZOAUSA+CMMI8 def +/FontBBox {-24 -250 1110 750 }readonly def +/PaintType 0 def +/FontInfo 10 dict dup begin +/version (003.002) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMMI8.) readonly def +/FullName (CMMI8) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +/ascent 750 def +end readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 67 /C put +dup 70 /F put +dup 71 /G put +readonly def +currentdict end +currentfile eexec +oc;jAw-<X2-Τ^tE_SKF1F^jNBq{y4-Fgbԓ{"WB:rP ?dgS%|'ؓw&F7JNL9VRtbT5'm\N"K< +wJv$tE;D4Vܢv{bGCSM!R +C\#Xjh +ho35ƒ8"g{dNׅs'&X83/`C37Vl"ʀbNeP@KVcR8Dh89pz㠚LF]䘼m[Yմ]Ô _hV`I1J٪*D t U#8,eG- )1C4#9նB~DIb_ 6,=;܋o,NIMj_vVo%hQi 5X<ƪl0L c0+$c:4#3R+h~y3542KmWz.g!jA|v9eqyF[q—lj +)jҙs>l2gјpT@M/{[bK1NW^tD$;Č,,BYQ53}Q7sR |4aĹ=8ש1Y ';l3#pKdo 2{P?kKuU%5@_Ba*{U-ǸG1L5UF0҄>MR 1)dqa,<ׂRBY_1;VW*]X? ?"KZj@Q8'e޻tX<k{s-ZmqqrImqt/9aNgcZFfD|lLYBjg}`㜰h$$TH-'RuVx#>ym֛&xykkxH73_؉յ^0ZS%ݖګ=jx5XWYD!<(eh6hB@2OR(!K*ܯt^";!0* +tG +l8JY| +5K9mYөn F>-?)"ȧ9V*wj gڕoL%Y~ZM : !P!l10{Ft'XꤞKEM8tˈ(Q3kZ ޛ4i_9&yslAʗ3*@xk,@|x/ʖ)Oc*DeE| fGv6\U8"ĝm1a0heAfC+55oNw^k:G \0a# }]xvRf)tsLCs_W@#赡7iOXt&{biҢYnVq̠!X[ow_ "@]J4rSE +,09DWF"C@i[ԗ @~8xtv.fU$ ^x{m`#Z,QRڶ  %Sc0G.;=8sy뿶'Z]AxwZjGOIƆ7,5o߿焘kG~D55o>@]AIm_Ҷ Jo^ɒmφo#6PUA"X꛸/B^(@n$#H褔0㴻fr,d"q+s? n~DL zC ⒎yCEJߢxүJs!(Ԙ>gs]8`;ԭV=ݏhkTJXM*8^zceхE)R !6w3''6"sɾmI`=0c%gxf2(g1Q&#pOvY@HbՈG[$њ\L5ʢ +f/6OyщT9|]O`jٳ1+W'dN(l1BD^]᣼z+L41QUq +GB ܓVA'Sq jv)4Ћ e|iſl`u/ou>_سT)^S-nw}, ZNEC Y Rez3sp$ 2RH?. p#+Ne>PrI%y@n-S4¶{֍Y[OhEi\*BxCЙ#(~#=ϑ X\yQζ5_p&R5‰SJ^ ԷrXu 㝢)Ɣ1,B7GODE k\OȧY@hn:*洊@Q?PEDS\ ؠ䟥CMhQQxMϗDv]錻ҦJ*T#"hiW_5ʙaKT$#. Ɨ Yam=fW#tj&zlIX@t߸ඔ*'>`r/XV(soGRe',q6e: 5lP&7/ +Ex*Y$ݦӢ15\>h#1F̍\`AkS?jH:+S D:]+HT5‹f\V:\g0ﮩ IҲt} +ôoDks>+D85}lS,@\.X:; }# z;d?=rXBPucjb=ځ$ E,c2{ƫ-1,tUj34s 11hmQ4ŨSxLLIQMhƭըXT3(3o׆0ɣ Y'=gO.*V˼5$Z[łs`\Txyx{ba-:'cp{m.z~4_2a#[@?cs 9Asɦk * +0Ɔ>CȒhծ)nbF6&tR +eylyQ( )6 +ܾS)q|/`>蜐 +![+Azca_t!4t%zv@6n+-ga,_ zk :׹ENyX/5}n+,YTrۓ7hޛȕ4ZB3$M'Q6Au«T.C ,yP?%nIceOWUx 9XΖ 7aJn]ܵkقe1[+JIsXW°?mT _\ Q.(Ca1e2Xrָ88}~~HQ $\w;?4B?RB6!Y6n9MW\6}˖kxwnEB ɐ+!_>;(U fu#nWv)!dT@A!3xm(0,^>TmqO^-{7)0ٚc2 +B9V{7-cOgm6=UqZUkew>x^[.ZGPn!'FU-]1fj 6ORfWg$rdV+&K7IRͰd !HQ: YGdsz_| endstream endobj -1912 0 obj +1977 0 obj << -/Length1 2014 -/Length2 14211 +/Length1 2668 +/Length2 23077 /Length3 0 -/Length 16225 +/Length 25745 >> stream -%!PS-AdobeFont-1.0: CMR9 003.002 -%%Title: CMR9 +%!PS-AdobeFont-1.0: CMR10 003.002 +%%Title: CMR10 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMR9. +%Copyright: (), with Reserved Font Name CMR10. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMR9 known{/CMR9 findfont dup/UniqueID known{dup -/UniqueID get 5000792 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup +/UniqueID get 5000793 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /KKURMF+CMR9 def -/FontBBox {-39 -250 1036 750 }readonly def +/FontName /WUKOCR+CMR10 def +/FontBBox {-40 -250 1009 750 }readonly def /PaintType 0 def /FontInfo 9 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMR9.) readonly def -/FullName (CMR9) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMR10.) readonly def +/FullName (CMR10) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def @@ -25562,27 +25802,57 @@ FontDirectory/CMR9 known{/CMR9 findfont dup/UniqueID known{dup end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for +dup 65 /A put dup 66 /B put +dup 67 /C put +dup 68 /D put +dup 69 /E put +dup 70 /F put dup 71 /G put +dup 72 /H put dup 73 /I put +dup 74 /J put +dup 75 /K put dup 76 /L put +dup 77 /M put +dup 78 /N put dup 79 /O put dup 80 /P put +dup 82 /R put +dup 83 /S put +dup 84 /T put +dup 85 /U put +dup 86 /V put +dup 87 /W put dup 88 /X put dup 97 /a put +dup 38 /ampersand put dup 98 /b put +dup 91 /bracketleft put +dup 93 /bracketright put dup 99 /c put +dup 58 /colon put dup 44 /comma put dup 100 /d put dup 101 /e put dup 56 /eight put +dup 124 /emdash put +dup 123 /endash put dup 61 /equal put dup 102 /f put +dup 11 /ff put +dup 14 /ffi put +dup 12 /fi put dup 53 /five put +dup 13 /fl put dup 52 /four put dup 103 /g put dup 104 /h put +dup 45 /hyphen put dup 105 /i put +dup 106 /j put +dup 107 /k put +dup 108 /l put dup 109 /m put dup 110 /n put dup 57 /nine put @@ -25592,16 +25862,25 @@ dup 112 /p put dup 40 /parenleft put dup 41 /parenright put dup 46 /period put +dup 43 /plus put +dup 113 /q put +dup 92 /quotedblleft put +dup 34 /quotedblright put dup 39 /quoteright put dup 114 /r put dup 115 /s put +dup 59 /semicolon put dup 55 /seven put dup 54 /six put +dup 47 /slash put dup 116 /t put dup 51 /three put dup 50 /two put dup 117 /u put +dup 118 /v put +dup 119 /w put dup 120 /x put +dup 121 /y put dup 122 /z put dup 48 /zero put readonly def @@ -25609,309 +25888,355 @@ currentdict end currentfile eexec oc;jAw-=%W)-{ru)rAE(@{빴Q|_R ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{x< ,-.2iRnñvپ1䠕 '䓱_r"O_t3kefBݼVfj9ҳ 7! wX: 3Jwͤ푘IKjfWI.kvCW_5gWZWO~]!K"x؉ruJԥ?F6Jq>B^f'<2bSz>/kaɾP"jt}[#[p__ @Y!ɹsu~/8MeC2+{x$*|܆k)D 3CҊUDw/Õъ7uS2v΁ ~ytKd"f!Zυ?.ǥTmBlHEU[ZF`Qy)`gdeFIrU-J~xg4KX { 7$O@M?\(L⩎z%KNJ`ī}W6ĠAP6N錛"7`ܓuN -SX@*i,xIۜ*O/" -t1;$l% p#B+}ڀ'ƱRS^P˵aF(~#ۿB(I&@}-:{yA$m:'}ӧj^\ĺ>segz!,ܵ/u-9u}eIypӶs$dNQ/9<` _`m;4uacxr!LB Cu"KDPoѼczضgӅj=>1Im9!`Z&USYQoeȲ ׿ 0G> ?:. Ndơ]U5=:-z6g&QZI[)( Q ^6GB϶)Cflg=У -p#E뎶o%iiT8v,%&{6"I"Pu>Ul Ҧn}㪣ujyH^^?"8AÆKh_Wq(Wi4s_޾"/b,zVgl8_GjjxCFTģW"1v&V@}B8Wt9fggs Km }x[!.ZCgA۬<9vD(dh9,oK4Ѐ?Xe^E>miQ>L -|(2>!*'%芡N 7Ԣp> Wr1 N{L:+>+͖:U)h|NS&V<C.ꬼVݦmwҧG06RY H&9g>1iWI?ƗųȦ2•Y;yӂgo٧ji]WQy_6K1_@H{`xx -_gg\It5m%e|0/3Tizwq}ʖNIAeG ='XC8o]?ew(m*>[G9贰c.b7Eم}S(EJ~DRbx `bn* GoB)7!SԦ`o ?9h{Fk9B -L1yo(QG$0װ]3#,OJ8|~"Oog(ĻxCg픻4}Pe &ol0' %Y>VNo؋lj=;xĭ3)!GtfJ](2{)ir18/dYY1AgqHus'3;퐑˞RNt(n> -" -O`AoxbE ҚO(JݸtGhacb-iwS9϶](?##ͬ7ۆDh,,#X=@c 4?q>!7'CR :p\(rGVIʵh3̓1_ -տӄQsbv -tü$>y=-|犬DHB//gm?SFOEn7UߎUfݢ׼Exmþ_DRan*=vߕ2teX|uj 5Θ*{txbl&V֥ !Qz>!)x[5&\#@ag$5$h;mUx)|Rpf *YF˕Hs- -*=,$4zkbkv?JTEz0X_gS"TݿEԓfY S`9ڳs pc<ʨ?Dс] BG?8""t9ES)Bx:oafD&_<( 7NL'%_1T69ypF>\'Cx~LN)VޔO0"A \ũwyzN"3+aYI"" [Uw4Gׇ(ឳد4drچڨa*R+d,wVm~A)|Iy@ -A%0nje<3D]=KԪZ})Bi#ycJ&kusgWE[Rw;)TFY߁΃0u, LTˎ!l6p(RJ&4ҧ·zD(8eWEO (bHN9I2qM"Jp߳ȉLx91( j{x^P@XgS*HXbe&hZ_OVQ#J;Ĭ3q6KXQf M<PdhJ iJ@YoJ fڃAyuVi#84&D:dO&FB+0M\5bDl[Wj>Ju(RܨЗŇM;UFߵػ6ct(Qm})mh i1rn)Qشξw/{I3;4gs,dQs k_S+y>{DK3-z'C,b!HfYLA~q0.f2nco,g5r#|m05oJpHCou{ P1} i&T k!kZeni08amql!2ŧYs}ELDGS*)@N85)C,wҚ4=6"Mzt]AJ)]Lr*InC^Q!IQVZc2ՐU;BFbFկ8nXIAL ^*‚o.\SYIuyXs? 1Џ:GdqN$JgnLs{BqY]jfYBr뎊i5pSCq: -99xec]R{zC?yOS.+T#`J**Or: 1-Ga"FXb2OF+< PpT)Y(aVK -Zѡ̍@ݾO:r^:M9s q@*DY_<Ib>Ce[@Ч]%Ȁ#K7Rjk2A>&^Rz=f)gjAݓ'xbBPd<^Ҏ,!ávm J!*5ҋ.5(K>++4y@B[Y -`͑!-|RVMr6 d$jwe(%.`. t -`n1h nzeR#nmOنwwOu*NkxcV9Hq82ɤ3՛.S+@&\]bWߡ!Nޥpa0fln -ED pCr:Q=̝W8{mCUط;Qtߪjƚ|YQ4C<ZeoD>소V@R6I+jiM׍.;}Rց0!3+B04OqߤyDpk~rVUlF=~K,܏ Єʳre!3wr |fж|l24"le֙'IN,5LkME(9hRGM'W vnvq7R7nmpXr8&kfLSHJXiouG}RʵV'v-LXri'Uyl]MQh `(i4,p&\3}v-'ȳ=s7Fyv_auLBDMڸ{%ip=^\FR%-43}Hom7vѓ/WJ MUf#[\8iPʹu:tMI2!:1EjWDYvvEPrwMS-޵~`Yi -}TK1B -Aϕe(ߥiU en7,z r|GVdcdK{@$ - `/ W[حF+}SS%l4!_'#'0 S -|t\Bl X}{5D|5$YϮ81ũI[̉bzE/T?=Xd -҂' p)l^@*F}a>>3+f2m͏ -QHy[*x'M^)D~)\im h>I}d@Bܮ|_2_ W3wŭ8$& -I<.\pPx~G<n/CRNV1,oJ0k͈9Qc#PrK!Fn(3aJ㻭FQ -R!9neU{uKR;dZ9@úG؎ΒJI -%/ bc(#9kܬzvI,x{'Bd! <`;8'|9ٜ7b"65:XG)Rpw,m̘߈QGFs&Zٿ=Bg2 vg3m7whHA *'ClPCqv)jgBu"WɊ>l]lA`=R>tF7Y3;'ߊ5@TxN@; -xAfasxgs@s;hi~% -6wÓMz^:FݝX -n`1jiaf12+qS%Z B#R`QD11E.rlz6Ob -Gwq'ΝZ;x -_A|!Kb2'Rl!1aeVΧDvr!Kgvݤ`6s/%\AZɡpP"%{\uWw^t4S8{i%Z - 5vxEP*x5xNX\g p%W)E'C1~ M}`셊!\%2JiM.<q'΋Z,&+r hy- -f62n~mٜeтn}Sca+59#^6G-[e\ bJ'ҏ2PoӭB$KQAl\A7oBb"Nsmj1 ~J١-Mԏrt.|%8&2Rh(.7Ak+Y@_lP>[?Ap e:+u[tK ЮYj^ -)&D-/``>dSA^րÓmçWrL-vNI*]F7-QrT;SjP [~,+/1~NJ_R)STZxE"Q+gH -5zGohHsAK*m5cЃ&3($~~\Ʀl#u7ٶױu$vq!Ѕ{+ڥ+_:G uKTе)a[Kb}@_#!ULWlYQm+X0go9--?{OD5,'p 1QzrQBKUiq7gf@0Rtъ[%z\\|:TppE4>:xГҋJAӺ==f0I$ - 1uH.XQg+'?b+wc` OKSo4G ._S79u+~UX C]qܴ; i\hgIg텬AɅ}BEh.zzNp&C&':G2$VIMY^W=n1qQ]8Ff/ivCCSJC:_<6ah&ÁL'.dUF8nG0d5e_Vn_~% 6Ix.|-uKMQ'V@:"vzsMGB;.׻,yD!{'`J1Y|ØXVFπVpK>X S.4y]lӇ'xa+R<+TGF lGQOߗiW+TN3>t>#*PQ+lWQG1剘dPYջ?&"W]VTXyM_GY_ Aa4D_4v\‹/T^u4sUw ;' |i$V0TOӔ!>9ws9\@C"Wp Uu'u><!-/׀S4DzIy<;k)Nr|JՀScs'a+?JƒPCmGMZL-wftX<83<EjIZh:{4A'kȅQ[$qlDɊ -L??왷dA6=OE@u!!PU^+:wd,_GdfHwNudGsg㧺{YpztqvI.W#bSe"\/d`qUB.3vCiu;Okk4JuyL@e[eRm-*4&;MZ"{q[%mF70t3os]z>U$i5qgO5SkFlՂ"x +hRc$Чd5.ntvMVYCBq4땀Nj%:Fip8eEa9y$aMP -u^ -<6S O(}BTcN„{=REK*[hqocQM=q!&i j9и,P2?: -s1΄>pr!y`# }ٿmz텏0Au; -%nƺ6ظvcrcCMݝ}37Ev}H~}8شD8x T={m=}0UюQiUBNlU`u8r0{b -zfЌA87'"|~*o6Gu4Ԣ v~8lAƁ+Wu;aMsMKmK'O.PM -i AWlPx*2aK(n8S46V:p̥OXNt0vGmC gZv3dH`PPM0? ؘMa &oGï}XU} 7P~X~jd6tIU*"rCuDsM(UA4|#,a( Т 20n4 w*h{qĵ0dIaqN$Ȝ'1t2F,ʴd X"z%L/+fvO߂Wӻ2]z9% Xi;WV/hP0[$ N 6`ui@|OJ8*>p[d_'EH(U?ot~}7 dUaZh_BiOE'Fj֙x'(Rs=Jt2'ky:jK1Zn˳/ -W=USD dU!` -E|I rJv2 CZQ3q7Zef$ pׂ6P*Fzc`{OyCfk 6wӕu93NSM'm Ofu/l^!Kpɺi̬UQĽy 3[p3@1'OneA0N ' ԹUھܹ#尵˅>bB&в}(}\5i[(#/SF)ƭ]ETn NSddԋ7|.~.`lΈ)}F+и]03慵݈x$ 躕j% -}uLUc m(de_7csev Ⴒ o[<} ;J - -Eǔ|gJ;uw9YP֚J 癳kkbO }˦әMֹ1{O/6z1!Ó]ۗwh+995'VGӎ^P$#s:0afm#Mtr6;ԓ| rm4f{C&qhN=6M$hnN(je -\+Trq/itBaI=XOh#%6nN.|Nq,T""*t,M{(hsˠ [gM;<6 -€'OJJY#6GS&vē͖%=Cd7]n@P~'?E[>""h$n6T^8|~ꛩqq~sb$7|v. Z)-e)*ShƀQ^Zw'F#XAHjfA<)W%uCF/PSV~>AQxg^?qD~b̆Rt@4$2;n}]MrZuk -)O>ѴY%@kor!%b5/;3Y~̬j&Uݐx{L)21'qP{rqJ]2/2k 9/_ݵ}Ya\g]+-f۫rE}72z.kfp4ߑ軫4wu'I$V T,OAhְ:9n:#6V^=⇊$5#k|}fV>Og늤+ x5hXyk -IPE^-\šde -T5my`g< _^vawnn^K޿eytjN> -a/z6|[c{'3`h+Fs>Ju]| -8'SGG 2 +}3{Z2zݬT2s$Z&{BJ{x< ,-.2iRnñvپ1䠕 '䓱_r"O_t3kefBݼVfj9ҳ Yh뀸{q-ɷ}W??gw1*Eh[:tWeI,v8a<{B100Z85|}Nlw]6Nbh3E`(Eޏ'Q;eԃ/.DyL5$4IG׮Ɋ\yj9.VU5Q!-赁B9dB^oVwBɎT7RsOGA b#TBv!mWT=w,ID%'MK<|]D@2O( ݎ%#_ɷVBST#z!${l\4ĸ ;5l&!〚=(fUwAeB#30>H 'L+֓jz@=s\<=\Y$D?U 6xGQnǫi%֔! +L2[)!fXc<'ȲRP3E!-:'AJ.IJCJJt&{76 +#VH/Fgw"F5wS$|oQ<Η `~<10|;,zɴ% +oߠx0sW1Fx gmxVyѝ"]#z~pv Ũ.rB9$nYCC1td@#8kNԋK;ԓlF( ،N;d*<Ʀs9ZQ@It%[)7&hn Y'a¶T'Xrߙ/n_nJL (@ +К +N{KF^kbn~`L]aU{vLܺ41$rmAsnZ*=sob@{y !CC{c.WZ0n bpgsPd$-\ԛ&L27JBs/g(xQ,t>[8͓GsŸ:R$9]6&my)ivjWLRB^RBalx_Y:5M/j١!}`D&WȪQX$HߧtI .Y@nr_n܁ OtAN-L n?_^_g~Ə;`KB6eĶ +>lQp)/;S' ^:tJj@xE(0G;κQqǔkT'; ÃDHjsrxܖ +.>֯kl;&#<ښe)fFz`Ƿ?Ic@SH&<evn8F\V3aA!yy:+c!xbM։/f}3ߖ˦"G'fMsXWU}Yĵ^ %j!HOH͎_;臲Jv]# +$'Ch?5u-G:zHZ\%Uv z^By%NT⸶3=X?mJ-3iH@ܐfσkR.v'm.'SDly7 YCm^Gu5_G1t/ +41n_D>}p+fg9h$]@M`^ҹGK;5wIrqA3fAYiuYrD:dR At -,)aɺh9[ԧuS9KTKaX$wgɓO[xqǃyI(j5LIc}|h$zDUwY+Z:ϤŜ1le`u@|܈贚^6/y`a [Ί`ҾEwa ziLa}jʰ@}xWns0n*{l?Zz>8p-L&ȣK`> `%`ݿs?v˻^\*QNbf+ۼބo" ٧U zgga䎐uFљ<Xyݸ*g4?X2]4H͢^qLeoU~ 7>)ƤHnA7"{DRj)ע~eVDJ|X}ѧCrTA fP};"ӼK#ΑTF\^ԓ ; |R D\Ă Hu6QИ'Q3b;x#3S:jb%tJ/>ʡOrVށx]>)]l5o[F;,N&'i\NQIH?T:@FN SX0<)hW4fFDh.سT)^S-nw}, ZNEC Y Rez3\ +tY5`F~_xU|'XLJG@U6I \>:V_>զ9*I0}ӵ\"{3UzuFf٤Pߨ)E8Uw)gq:dj#hq so -@ +KG7"|QЇ Zzs|}LմS:fmA3S 2=[dؓJ\ܳc|tj1ƛArѮJv,K| ϕVސ +Q[^9# Tϝ̖\ua2SU;}wѧ ]*z24cL4$2Fw<`7)_ 0IZlf5\t~V= ʼ&3VYvE9c7xX y >}ķeĭ&ne4{YӠاi6*֡gCVj81aG[QU XW'~7?7KO wͯ6udslwS+BHub֜`ZewOX &l~3ԸfGkDDr)}皶!m[ ʪp^"e*EϨ]\YW\ksB,IQ Z1IݔQ'oT4a` VF )apL|y 6>u\"$(WBA&|a M+8./Ҹrkd)Z|*_?f[;W {^*Zl3:Syw{ݿ[8}JSwd?Qݩp+4 Á!!P右C@{:E@Np2{&Bܑ0%f rJ LWm_ )uv32HY~CSxь]2Y7]N3*g5gLISVZW71KAkA"]Nym 0/;?gWCH%4<;sL?bSK!!K0$h4=( FV4AA-L'Pv&ˠ܄ )G(& 9UABvNW[d&/QY7Vѣ[#d {R`'|t^+&y]ו7‘`./|oIGeOVNM.b*#{Ў zijy\?}$]~=R;5\θbǠi)bbOL NS\rSk8TK>bcOטBk-Vs,ibkQ(v)b-ҷ&Pmz5AT#DmcJFPߧQ/7Y ؕ} d)HZϬCE{5tz }amg߱RؿnROøF-^Rnw3ywtkIi^vY1[5x>2 WDkX79+]M}$5)KN:UTb;P1'V4`pNuO(#9bYL7س!2W9@,ʵ303F:|8U EvYQ +nׂvA:(Q*1*jSםE?0hryI7VYdX1ōM}īO^D9GrhvO !JQXАi'mj'+L*G$c<%:6Xs+{4K `Fq@|e/&S$ب + Zk.dCg{uxAS[)i WW 3Ae~] *mgEGe*v֣N| z -Em-e_Lmi9wVd#ͧNP1)5C\<5Ln>lbbo+ln{F# +ēH@T~=\e̠ӈ=4t7v|p Euq,*J~|7B6ʜsP14*<{]ESnJ80XCM!3𣏕YZlT-.N:A},$PpJ"9_ 7+ec{{-ތ1ze~*c=~jV#ļД6>(ȫϹ}gU-Ix\?ualQܻ>2T;⟽ eF(][rdfdbPZ5.9~y1tH1"#BV4%cOP|,id"bG/ +]W.SӑP:>R+Q{!Wc *Mgνbc39$eV6ڵ&xc]Niټ:PL'~Lk^+H5)4T , 1y2ϮeLU/.SV ]7/f[vRs;Bʧǥ.Toi @;;Ȓ VmOpg|I1m +HP^J^Gcӆ~d1W! Rzi&M-T~6D"k5p5VB@i}_qu*!~qGS{U$cHKP%nN(ӽJ|tj~xڋEKd4Iw93diSa5P_$,-&ndeG4dGgjl(%նSbLmUϖQ(8-u/hpfݸXbՏ}PVoM>*X p#Ә'±5ѩR7%UD1ʇ>}沦}3) 2j>8S 8x| :1cPrV7t GejP6V)\Vf>0YTӽIfæ=WҚ?ۨ Hh{<"LS& CcJL_rsupx.xsTӌ!SpȉRl^ݮD7h#]*Qwm&MVtj!2Kbzۘщr'|G vV!,Ӈ=-QZ 0.zvBmK{KNX~W*[݄`>إ:RbJe\"]T(nOhcC?*+1In %=Ykc3ˁOb+s|̺]!(YM=}cZ{u ⤯O lND3PZYV0GJc rO9c E'h؇rsl㓍6 +:$.ա/Y@y(g#,ZJo?՝bQVwزum9r3B/ (7PVcӘW0Z>r|~^0SjMÁ}%4 %RKP;/M%<E8P4AF@HK#ُZմe[?4w s翶@zB!ʡAuJ)Ʀ[)YɲHݿylS|i3aOQ _&0 AA1TUU`*/k*-~Y}a_- d_{gdHCdӶ u]vɣY˿LT̓) +EKEO#l]M)$@`T,5EvG#wG]-љt.^ǫ/j9:<㹸M,28#* d峉aQ]*Dϡ7Kv0> O 4PM|YëDs PVʮ1£ЖSLJS'n3cgJw0eɰL0hWX#-V.s0uŏסּ}(:sAe=7Pis&/,CRˆ W@͑"-Z)\`=w:w #7$ˎJzH6fu] Flߥ< -a Y6SOfhc盲M5&)%XhjQAZ:?',_y'ٺsuIqa1-DJf8=ZR,Y?ԥ8sV2#sP)4 9G0 `Pbn/1HOz2Pk7Fo_"o% uc柼̑doJH45BU&ڷn!cԵ͗#HVCgPzBXFy~-CT _S$t,{e0΃ +~ lm$3cKNtL@Fl՝4½R\n` )S`nuޠ6. 83:ѨpW6fD:I;6O;d@Sb˚|:%džk)}N8{u&gŏH}l:+|VK*v0vI DY=QU"6 z@E?S9.du|,A>+L)@FR~_Sl:5*[$Q$=Kgj:%cO1.C -u-utGW5.jS]@'EV~j?Ŷc?Lx'͗V]|F QccR̃AI+!~&T pIeء(c[ 4`?XeذL0|`fC\Q[cYɓ2u~aN>}Dv%BL-qDSU=n$ޗF@Rh}t`JWm] ?Lo"ELC+"7$<:ĖT%z2wUt*=Gtj1a6KZmwdg/S&yMAdIvOuܩR|eR 7"Zm@.C +TCSho/`"㩽wE-5|\mjk^^m`b ձ{uz]@V6?K_xSa㺥/P~&3,ޖoLsU?p$EXjch;i%BNɂ49nyhkxj̟g,!_ X_9WS}Q8߂)BQbTcf7ZӀ7zxby \FPpƽz<\ q'[?9GP 7p &cPFz +@I-E +N2r &}͋ WK$z3qrgR^P%Y3jċŦ) yV^.Z6uw4* *. *FEA)Ka$7_dK"[3'-&_7F̸bS\^(P =6*&`ly;B#/?:<|*pYLwϻۻB@k{?~[I|xӲ#r/p}QrV^:a[B쒢-dJUo4xLa aRM$$ VjzpN +IG3si)yrd +b?<ך l3}̒n"OеޑbkT< rM9V޳NUr*.qU) @*TX:}'u~~ KA<>jD% ĶRl{EgF%j̠ =  [j̭|F}.S5b=hT>(u3kB] εD'T( <WnVsփ1}K-A';ʮ! M7-AkQ1Ǚj FkSҽ//jlךޝʱr0h&VJ+-y/^⏴!t<$DS +0!^BW9Ypu ([R;LӸuM TO9pOdi>Ui&z(]B}bx'&U;ceۙtJ= +!׈=QʺK9ٺ.̬E wF2Z+KqElh#&ܫӀ]π *=te!mf9s$Ž&س*{S[)r/*wbER*G] oRKmaTUh%SYvZ7=Cqid)]0$hHk +$)BwC`OJhߋH}Uda[[ +BG4k~@ĐPtyNsw+//!OR2hODwB>W7jauZ +c!pINz1hBjP *Zxe#C*,7>&@['d"#m5قOWİ$`A(ܬ1pVBP䱻U"k.PK2"2d҃.QΛ>Pqսm\47="-upqC@uu}PK[Հ>12)'$\r}w! +*nFO.uMTXWGεba[6+cAdyc HqZ@%f[dnxBD,-Damr#1Pf-\Q~|k_P ?ybPi%q6O`brV]p ;YD0( + :6(fK {撈kfo,klTCB~nQ u:Y%tD.\?,Xޡ5k zR +ҽXo?scdo]p0h uЪخ 9ߓ~똹™3< %.Pxx]IU.y %9衒h,F(W Q`I{\KxR~!邶E{v7DK00KpId| GW0 }) +_,Qf ]m͜bQoL҅1lSG87ƛYIWS9:&nYh+u)d(yj{A:O17HcQ]%)Ϳ ʶ ^3m H";YZbiKٰij)Rm5/aUD]OC-A8 (`Fm!9X/IAeEt 7Y +/9lWt}St˽sY,r~<D W +c!O֤Ybld&{`m§Y+.;xcU+t54SJ7ʚx삲 NRWB1!<_C(Ż/QrPo`p lKqيy><6 f XCofT<34JӄY1D9S$:W泥\#kaTTT2<r:3 +& \}~szvtJ~Rɫ-PZ.݉f\a/BUFaXq (cJ{Dń.8F*Yp*?%q;h%qv啝aFeYGgT,md!7;%XeNbҝ V4'#^^&m P,]GcRH;pHt,q<?جt1O 'ɷ`iQKe#\%.8HƑ',!$٬+%6f@\))uvvf3<wqK{?F1ƟRNa}NV= &N%7Dz%J8zޥYt9> +&1 b-T@ѯG B.)G\?ЋG1~mk d]8·dOEfCyFIT奔VF ],ϼ=دܶt%atwbyM#)wҧ%m)s:'PmcUBٞP +G~"dpJj 'mN7@|* #Lq/֘iiDh4#f.nxd| iƯvJxb(g*MAK,u~Llp\&?HV(@iQWa!G`pQ!*2ͮ. +7Kg.WJRVK ^]ao^(Si6DE1wQ +^ѧ^ڃȕlb^oMoU;MSSyVXgZ^zr†Bw ^&7 B>}'RBZ#ZЈ83(&El.w +d\Їn9ZV{P rZ[Dn_9DBSlm߹NJ"Q 21k="h{?FcDm޼y`h*&2\RI?9Fo +ޛzR#Zo[FÏIŒ"_WͱJ^qhMD/u0 9Di |z%фLS8 7Q&nҎl7rix̓Tֱ7ʹt0gZ +ו矅}[:T2ĺtLf-~y] Z?lA +9]=De$J6$ Vj-G>SV?cW Lt],n8ʹAtzI5''/=u wW4;1[݆շ'+ܷ\%˄<-OIAK u^;6 ;ܖT _TAFq7 +*F4Hri(-D;b( "^p*ZDF",I_?V'fmrIjӹ%,'v 2/+>]Ie4;-u?KgH}=BwR$3˿qR y'Hٶ}`9nb!YДPI#ziFEp0A +`5a gu|jC_$[pG^$zo}ΔTD1)0a{"־π'YCurbX6bT̃/cB52LuɹfuߎEӲs +4mt||gH6}EMgMDXw;^*- o irVmۓѾKͨ[|s{((;Jٻj&u=tRkR]^Gp>m,y)NS [x V6L/e;TҎlCYEXh0IY >_f7ϡ%=-dtC) 6"R7 Ewo Z:k÷T8>885V|n_GÝZ>S-qhz {5 ֑$.?hOjGzH7Xnp.ҒRM^ǥjui鴖 +20i ACZ8C3 Zj3=B5 r`ߐR +;̈́)g \e88 Y.M4`p6IOh'z'k`'>- 3oe9 *5lHGLBrmBżȚZLR?d돶o + +c [}H~vԘ~sI 8ЯwjdrR6vE#U?93Xag9riM›`j7PJ=g]Ym׽Rr*bzaW;PUf6; {3OF%k]k0km=?V%N"6_N{(WLJH5kp;.VT333ޖwX UB`[5}ת裸·U;9g.a(QȀoV>!YS l0ly넔QµXpGp~^a(o%Iy b70$ ܞ +[ЯN8~W +|4^1uuc?3J:!ZJr*?к\"p4niן'3hMLA<[ 4q\@x @Y̸wgi<(7u{MҮVywj\$!wKXYB$ċ&tb|ږ)kM7w5$ S c - հª7_u U3#oA+7&}n(j3jcN9cq[AS/yk1|)`v#kjQ5#'8䔞=R :=[ҀHraڑ5BÄ +G$#x1* L=Ka6ncĚ]GI%ux__2<-Er\F @א>a9> +\$ZQٰ}+;ԄvH u>% ZӴ$&F^E3 D`׵ϭ6PBN:!竫Ɗcӌw㌄)zaِw=ᖄ,gA{'V|nJNr1 kez?])'C|"ÂQi)Z.!u$c))4/Ș6UGJrXb ZRC_^Ĉl:35hGTsAD!2kP?`PpXk*;Xj#@>2Ë}݈f}MVmYŹ/q@ϩ=@slqYUՖZhֱ෗T BOLXlHJp #sye> v#{FV!u}+8nfo]$wfJOf4wfԘVN0K+[|ln870 SG + Ȗ3{+'ϻq:[H>*a::+[ :))UYLeqwwetOùg"MZ!ZPryetP)S'nCI9W)'jgnݛMrk<Ebt__A%o IyMJ[KTb5qt(5$tUPtqffuT0t锴4}dm8to/s*.`bX\'>4-5~ v*VVY>Rx$"Q RG,ն،ZNo$ZiQAp:+S]+Ikou= )q45LKH:J-woT7iU ;WaD#Z+$KGNӝ` t)J< k!aC@rl*+>k+ Iepc: .Y6>VgϵbAjtрuGZK`z]]DH")my+٘7竌hEe(S"i~׸ 6wJzCbBD#ZL/&2co! +鱜ݡ$E/YfrocBbppu`$

].Px(:κ1َ`k?&=k?L &gzܒoH&{*ݹ7& xp#> >e9}*ŷn_<:*晎9|7s"#ҔC7)6|ϳ7 iv6ՄqͼO3Ex-0SJYe{ƸTq*u 2%I +{ܞ+yϦb`\ +Fc&h01`.=1cb0bm˺m{5Rg\ƃuQZx ~wx_4^ i=Xm:d(Z}Я0}l ®*T]hTz,l(#3ޒS%nA&IqC񮯚WthDZ`%T*-0+#3jҢa߾K91i2Ҽ=ne\ƉJL̯l?#?ݴ ^,CǕ,u+%b٣&txʹeʐQڊ87kZ0jǁ&Qm0"fSsDnT|bPz!f~z`F9[>2VC#z0p`R*9JA֞( 9ev'O^W-0Rw&̡35O'T%8%YsƝY?jV{UpxN GJW4oEn}/jŚytM]y_n%Zwpͅ@}E9{,9Yxa`Nn\tӚu0#/n6Ҁ^_<5Ec]FKR_,ۡ )p>{>>X@z@2jf-+#?Ny}?Fvmpsn:j,/6zMq3iDAd@x͐nrqݎFw1!'7 v X!p%xF9//NuÞw@_chk l1{)8$uz1< 1xەrv7HGc .!b0()f6n iv]4h߿LoNY['mp%h/%tF!g5’d` #?LJ2L`z +J9# ސ-K˕q B4>lA9PNܸ_*Qvv?l$ f rk%_, siMu3Ec⡇P 1jOSf 6r;ٮ, }W44bg!CwLisqFP<-©.iT,ut/ +[ ++ { ; 'O5Cpq:tV%.(:X"ԚL[6^>d"XgYwDJ_C +ҙFiMTj)9Z[f +HևX:OL-W=5.3l.d0D>ɒ@(9Nʊƻo!ɣ2¨fE%ZIch[ +eď +Ph;ΖѠV*W ;%'RҬ`#EX +h Ҭ f]SL endstream endobj -1914 0 obj +1979 0 obj << -/Length1 1681 -/Length2 8374 +/Length1 1425 +/Length2 6648 /Length3 0 -/Length 10055 +/Length 8073 >> stream -%!PS-AdobeFont-1.0: CMSY10 003.002 -%%Title: CMSY10 +%!PS-AdobeFont-1.0: CMR6 003.002 +%%Title: CMR6 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMSY10. +%Copyright: (), with Reserved Font Name CMR6. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup -/UniqueID get 5096651 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMR6 known{/CMR6 findfont dup/UniqueID known{dup +/UniqueID get 5000789 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /IMOIOS+CMSY10 def -/FontBBox {-29 -960 1116 775 }readonly def +/FontName /UJRPBG+CMR6 def +/FontBBox {-20 -250 1193 750 }readonly def /PaintType 0 def /FontInfo 9 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMSY10.) readonly def -/FullName (CMSY10) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMR6.) readonly def +/FullName (CMR6) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def -/ItalicAngle -14.04 def +/ItalicAngle 0 def /isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for -dup 66 /B put -dup 72 /H put -dup 73 /I put -dup 32 /arrowleft put -dup 106 /bar put -dup 107 /bardbl put -dup 102 /braceleft put -dup 103 /braceright put -dup 15 /bullet put -dup 50 /element put -dup 21 /greaterequal put -dup 20 /lessequal put -dup 0 /minus put -dup 54 /negationslash put -dup 112 /radical put -dup 120 /section put +dup 53 /five put +dup 52 /four put +dup 49 /one put +dup 51 /three put +dup 50 /two put readonly def currentdict end currentfile eexec -oc;jAw-ᾉYň5t&נ{hLGqB`d˗Pة|*x\ޖHtEB-gedog7Q`[['W73sZ9 m !tAY!$tY\r[uTIUiBy[Ȝŗ3Kï6zJ!˒Js&B5C"m&`7Ӣƻ3ugNC O~̶uo5=_T/ h,$B%dʘ3l MoYLڶ~3^`12]=l8B6PlpfW< %PIN!ju#,.iXnȼ‡o$ҁXꑷI5V*E6tKo_)RPG;Z@9"V3TTLN Y:Akڬ6̠==80~DQ Q^br/2^KZh`N'Jt4iBYҁ7ޟBU_~\fXAZl_ZƎý'xHbG:"l5CU[aLrf 1[;4p^NpqBD '؅93M&9{ VD 8 aе2n.hf -l?K[$Gp/JzcF8vP3/XO6yAo~]WqDMY4ߧY̢XPEL2_2 oH{ -1x'u|o WNRE홹&lF\LRh1Fb}+l C] (vfo+fM}l?c*ވ"^R]miKOҎ!I ӲR_tW;u@(#t*̧ U{|Q}a3Fl8xtHWA­;!V CVov?³;=>,㧫\"RvRCإQDh -@_,˜kbflAIP^wٚdIHzk(c3xɁSUPIf{KΩs Y/v[L%O@HdjyTõVmqgC9zTC/t~Řo*9rIojUKxj. ,+b1ֲ IlDLQZ3P-no'$F zg!Ј*oj-Nͥͭo8KwQgݍp*1^.֊ LV~m la ]%."`_QipŎs5y.Xͮ)Td1Kk̊jn0zGqaWQ%zJX3tIy0ľ.#[#D#EԂppF*ޘvrOdn7n f9*X:>Ǽ:*Lf͍9&aj;+{0 )AgðK*XKV'zZA) n TÙLJ^Di[:s<ܸ2!U|#5VfUqP}|=G5O|Ps9}* -+gpA,,=|j25Cɂ7 ./Fɹ0tRẊ."we hPempJo@▁_A3QBV~$9Ej= -]? {w_53Fgӿ4BAq41Pf ,Sş6r[v` xG$.} ̔ϾF͙c=f!*˽./wĉR8(@ًz c@N&Imݣ>X!me@lW"VCH8kՑŨj]n3X>Jz?D=Nbn {qbY(>"8*苾ky3o H Dw] d{EʥËw.$Vhtzk$kk$]4cfCW@3plQQ晉b/pTqF8_AnQmK{&z;<տm[i7뜣'*qXTnt<Ռk/?2m)fy#(`%{!Q/0&sxfB+rE[tgOKQ$$=ל?d@3c)]3%*M}H饞;Cdrp1jFcstG'C\p))_)( MM - qv&C3NLZswTPu{sϰP+-UFUP"KΆ+Ye7?0(idL;gk9(YI-l`;`AH:YHb1H{wR^Yњ, -$FԖHDV?pyїP%F=BGKPh~N[I_ꈀCTzf <Ӗ`4|mE1J'$`}R \N2kfaouJ73vKW{M3?׏M]:W;vX;B X.PI;?!T . sU]䮃=X 5rMt>y=*bC~^ tArl'Ŧ\؟L냡P&7ttuGz;Kg4э;u)";SvC~?J/F"6U.0>+KQӄ0"ӫ=sxoJ]ת!w6O.}t5V˩+7Us֩yēTC5GrgU5$&|~G8 Mv(jt Ϣn]]QWOؑm. R[ИoNng IF:?tؐSUOcj2Cm[O7>kWkX' #t'Xd9+E7Nd8{]m/ ׎dvYYwop!EP7F?ojP9"gBP;B^QO3*B 3un$I_Oe` -$`}-9Q/ĥMe?Ұh]b _2<͖+tª[ϜJO@%MI tv\/bMVF05+kI2W9>f} Ķ3tj|" -[LhY)o57k#%H\,x|ssxH͆|;` v%گT[c]e"GUj߫ytvx:udQuZy_Td"b+O]lx'6w6XCDKOf(g@w]fV[~1F^A3v Ovү2v -zT0b#[zyϒ$e1k5dRA`(Ņ@{=yW>>y@U;=H;c{30ü^ծ)ՙ-{OO2R´xQwBgБS"תlbz;Iy\EprkM @@e&3lʉtS%)/pR"2u -Ee5+ٰsZ'bQSlj zvހ~%.Kz\NE,eV2=Mo)-JcV:U2Ѹ>1ȓ"QWOё4*Oz.cjcY&=7Y,A5nIF/?̊ ]as.N/CջtHG50x}eb9S&0rJHN\?^4'bɻ':K`wpcT!_ H݊{}HmZto7ʫߑQǷbi>ܜZOddFտcc -$" |hJQvB'\%63J)Ag+Tʍrn&^ܼt,Ks+,ݏ8t:EFH9ȇORJ3*R ! .-ur\96@3j&SШO(?iIdYFC㙥mƩ(#zLaj3HԽX}/-(oZI|^VqPLH+Ս|:%Ȉÿ!I,疨0Ni;"% xaIXwlr}ap ~/`Y}K_zLźL'BH:)\E^Na>oڿWRy1k Zix^7}X\Xzy4^obrsw~:?8`I#x=ۏFb7>&l[cdh׉3/cJђkr- ~ kR8+|^H|edhBI*w2e+l O0ERÎX沍1Ip vaXuޱ.92^:po1-<z:sA!;Qg}u^z8uz"ks?]-^fﰥ=aaq/mpȺhBZX<,O([E& +U;.[xU7:SK~3F?=w1_׫Jg!kL;i@W+v5kph@M0nb~]tV~8n?VY}~L.`x7o\/[=3}#[_|864)_KIh - -'XFXC`(4\QӣWSB_"DR Ѳnx -R -i­HMU{␙.Whv7|+-`Xl(q!WDCò((,=+DJ+8{*`a&<'?QZ7Eyէ3t9Xӥf:yp̩RF3 Gٺ?G!7>u[I;y6끅ſ r.̡K7x)@GdĿܶr0Yu%wkl#K -+|;{5Y]RMjfv׏V+Ҽ-QxhVLpy$!2^(e8K )_fQpcA;M -d -bϛaZ``Z@A]KG LVS {oϥ~Աkؒ=AOGV\IEA -Ui -&)67\n:-ZyPC0Cc6ISAdx!Βw9@@J`{?mT0jVEoyPɒ&rfHt@D `lˮ8WpzF ]٣pۉ7ۆ؆6iV2[¸zEP}[N-*bKpGx:SLL]`_C[^^iӍx*]i#43&b1#;GnmT$mjdLxYl&h'9gc[@oBlgf2OZ5/"Ҧ >6ysLDa=6/2i|k\F`ew`ĝgL%5 5'lfG'x:? UPC0^'\$lGɺ'vC+@lqs5WWsTXJip%R ACQ_OAa,1[Ό>m33tgX)87pa 4Ѩvz1|q䏑}z!Z . igk!^Oӷ<(t-Bmhuttu9m#@l]YHQ6ͦںGA{2çڿzZP0d=-LtQy)lZ7Ie -u -%d$ +oc;jAw-=%W)-{ru)rAE(@{빴Q|_R +ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ +}3{Z2zݬT2s$Z&{BJ{r̗m1l(zNRr^&%:(/IߺHm!4JxI7bs,OiOl7Ӧ!b^Ѵ-E>3t;G<;l: OSS*O?9-w yg8LsYtָE qHp0>ˇ +,qۊq mZD]7ʺOk-G_\SyGLN8g2Q}:ä|C/ɑl ѓčC2`Lu3D*Cǩ5љsLUkmH FqTfZ$|2xlڮOuxgG/|:&Nn$JEQyރ4>py'3ji.ǦX9~b0 ub;F8(PFY|DS%y=gn!QZИOi歨H,a7`_Z<gZeߟ՟q/~j'[E1 wg,Kom>M8;r CXVkg-/R@|lbC/zK_i,'1Q7^3EӪ9$Zdy]ltr=>K%a1\(t.EzW(#MN̑6~*E;ֿCa^1y5ݿ'hyf +s.8ϰ5ciG$5g0KTlp@>]fW7QGVn~˟=]Z`*~7 "ڌcw0U{Yn._xIPYQ]`MN!Xw:R;t+]gZɅ oswQU)8aA^av>xƍH_n~}StG7 K72fCi0Gm1u?4&]ژdFpmUhӲ$w\Jd8+SE=XnV%?ү֟G[4D)ҏ}<)%pD%qrkoX(&Ƕc<^ԺO;FIRCK-fjz hs+*U-\(=D[d)@%t)#ْMٗA=5N$1Qkh|)Zc׼=}6^w'eufH p!x."s!SpزvNȗy8~%_mD8ǸrɳhwWu_6[= +V]Y2?% +)/KR|e=b_0Sʖ531ؿmx> ՘OX![ؠ`vf|}R 4"~)uv E$U\W;댞K0 6$֥拐Pk?yy4<˒q=CG$ @d~A1Q8A-|߉b1`zj ۦZ\.r ~s"b]Ry&rD0hLS)z6M="'OOQk {2+$}<໒W` 1=',hkƏCfE5F]Ћynh|d/(~&PB9Cx9 + %,9OKLvH,>Ҏ,6"+DƸrhL<]A+6JJ9ۿ2jQ}bF[z'p&S*U$ؖa`RI=՞dv_\WB_5n[&UXiNcuοrvI]VI߮\S"Ivs qYpP]5||rOډccB0KV|נ40Cajps8A軝Y4-L ͯi FV{%xE_ *`LOU +ǔKGs|mJ%5ݯdAv<jா-W:,=BYme"r5tŧ>,wxI_ esxRtQeh; -[Gf҄(`*/I{w4iOa"č\%{-+`8@;dZxW'gA$vq%=@ Py_w駾{p6LMmM# +R +Y$Р쭀|6|噐ȏGI`fkqa}@tZ&'=3bIgU5eA},):ichZ:l҂ 2W#30rM$a ImvO", +:(%CMi@\[ +t=UMn[B_2_@nu?L,DWUx=u}#m6xA x^QZ+% *{ϊշr RH [*Yy0iǭ0abP7y־pvkTTR+%7!fF gGP2?S%|b%N&t:>EOYJJJZBH-!~yp̊Ҭ㠄֯d z/3j*(JP$'AT˪x"b4~4]Xպ撾99T<ԟʛKȟ9[I{P>5Ruc&(0ܪv;{3x}_%.beW2eSxD8o{ۻ}wn,WPz;+RtVX= \uBU(Cvw?H jt~DxtӃEP[x/2)+ഷʱx46IHgoE'nb\lLhcb/K}kVD u6#+9oi(gy5lS{ ZQ 0dpWg-Lbpy\z(gR6eKG=9U2ݧCH opr'FS+ U$κ h; I~Ζ:oDUEFyo;0?mP>"#Ǖ T5J!*S@M7#8&-yn95GTɄV ++WS[Om3Pmd,+ST졆kyR<$ ݀ 2a&=CԠN 97#~MT?BzR͹Qz]sTP@P G- R9Mz)3MHxV'.(s;|_OT՞X9`G $PW٤eY=fE%ԤOpdDmz]֥zK+xIVk +w:Mm4YV#⺸M]*Ǣף9t5#rm'Eeo$Κ+z8n/=?njѳ((,O2w <6Fnc1!AzVRIز+Tko9:W\v.yA5gf]?j6)xy!N5g,:2F%uE`Bxw(ݯɆ&^͂NV۞AB k+&@'јsƒ_;q(_:.:)[ ?bt.N|Pm}/u#7A"U)T\ZxH ro}o2Xa/vD3kU[+,뫲,O 4%߇$H'űC/ |,v=}醜Cy`6YP*r8%{o4c1OSB!dA6]W%gcTޟd>M2^Nj[N@*Z;#hhK7#2;Cݶ2 wC"[yDJ,#b‰ZV*7 xߘK;Дyv96I)I" $!/8o(PyRUS`<!{Ge+(CuAqlTcu[ j=E՟2C4%2+drQ/;ڑ}C`@|&cſ1IO}5& !v,+M1pp_㯎0iP͕񇐸gZ1:~i(l=kqa.1':;)]4,6uxcLAa^!L"u +ɜ~=C3[ .18jITOQ +Qy(E*>'߇߃5 h V`,vr3TT{3O_<΄D+ h3ʂpSV#u:>f`"_Bon!wN y/C5rb?7@?+V5خ +B6oYq^5Zp r,B^:NJ07Aϊߧrէ}E4zAWr%`HpZp={o.{#'uMTÕ[gI{dLAN }be/F? A]buvqݓ[3<4MBTparN[0O4\ۤ识BoƸF >'dnxN#ik_Aޛճs#;w͑2ԳLҘEDs =ֱU#T{\! ^CǺnaA2EȎ +,t.U佴r&Bըϲܔ'LU +?d1t> +}tjH# iaڇ^![!BQhT1%r<ԶcNP+P x@k}cdp"/n}ؗIjX=謀dA'T&`妺M]'|g4b -J4YЄ ]1cY#@zG6K1&C'ī7Ptu.)OD->`xAv&lNO5%ew@?r,糉#*gzl>1-ĖVKmz)cQu%jf3>γ?{\ f> +Wڮ;5]Eԝ4*,?B 9 + CaI$8]F 6'dXLkRRzÖ\Xp_lv ġ?n?T#Gɪu\%(N!aD)ch1Ez``˕/&$S }S]g({jBnkm*u5'k +8ͫQx&,$>;v Y<qVpٯM_F|y4ƨ≦cQC%`ܨPD{ϼ!۱)ÙrVv^A^ohlQı\C<[c6<^&g_s4o ]_|CK +,-ܸ,Zk +!> stream -%!PS-AdobeFont-1.0: CMSY7 003.002 -%%Title: CMSY7 +%!PS-AdobeFont-1.0: CMR7 003.002 +%%Title: CMR7 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMSY7. +%Copyright: (), with Reserved Font Name CMR7. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMSY7 known{/CMSY7 findfont dup/UniqueID known{dup -/UniqueID get 5096648 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMR7 known{/CMR7 findfont dup/UniqueID known{dup +/UniqueID get 5000790 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /XNLILI+CMSY7 def -/FontBBox {-15 -951 1251 782 }readonly def +/FontName /GIODUE+CMR7 def +/FontBBox {-27 -250 1122 750 }readonly def /PaintType 0 def /FontInfo 9 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMSY7.) readonly def -/FullName (CMSY7) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMR7.) readonly def +/FullName (CMR7) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def -/ItalicAngle -14.04 def +/ItalicAngle 0 def /isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for -dup 49 /infinity put -dup 0 /minus put +dup 58 /colon put +dup 53 /five put +dup 52 /four put +dup 49 /one put +dup 51 /three put +dup 50 /two put +dup 48 /zero put readonly def currentdict end currentfile eexec -oc;jAw-ᾉYň5t&נ{hLGqB`d˗Pة|*x\ޖHtEB-gedog7Q`[['W73sZ9 m !tAY!$tY\r[uTIUiBy[Ȝŗ3Kï6zJ!˒Js&B5C"m&m1$0m jAirOJϴ2&7.BbR{媀E S.9/wG<#/[ә4ػjzzq,I˂ڣzx b-NHa?C*֨i֕,'u?(y/$p셝srψSCo&ͰBZƎJV)Hɳqa?; j!8·'(zr>0t~@B7>tXv=ֻt*ch,߭y%bwbc2 -At5qm#O:JjݒcZ$4HPv-V[(a75feLԍ۱2_xgc^L|_ 7Bc콁1'mԂ W -o bKPfAOܑ`Ax2zl 6܄x}NܱǞ̖cv[^."cvc$#;a$3|4x߽ -(a@cRn6phؚZfzz?K $YJo/q.1f JBw'4?}D/& Z=Vͪ7E ɍ}ʜDtǪĿ!X96E'<m&)JSw4!3δͺϳVJq,UZÄ[JսQK *L8ⅳӣ@0g|ȰF`Tk2қ׍Ƈ#xb`Y@ ɞno{avXik$i='CPEs&>#MX6E!H5&Bc+.s1(R9 PZSIA H){y,䲚9Ө蠂ӎTs9hoqVa#ai$% -eq#*!24S"xSMGd+׼d.0rMVBhQzо;7XbGǀe4oxu$]'eU5 vi Un2\=6XF%d蛳F!@}}qEybaW!izsKB/)PȀ(eKϯXt-}V$3LygX4rG[~W 3d<Dit\_~/̦2a(V2ڼN5>DLduN7:~%Ǐ|4=R/X)$I՗- oZk~%E :A@%!&ѯ3f8ldMR-,0Fn'YGwu_*bXw=AYq>\;B *Ps: ykX`ƗX){qbudog6Ņ)Y>6!X ]|Vmby1\2=謫p@Bo=EpV5%CWTn*q 24L&}5V $10G^ZԖ,䴧yuUCFDcl|Nz Lj-w>O`"'ň"p= yz!ӡ >okkTeA\-UuC6blap !]/ikqU2ϡqGG5fW I2S56 kD6آ=rE1?t0_L4*+QAQ02|ۖ]IX۫Ջ ޜ* _R߉Y%N56_쾦fr[pSH1+ VsĤQ/yepԈ+ Zܐ50Z7sk{15ֈڒ _pƴz hN  kCJ LgNOM\2 g+<}?j|;Oz^h3ػ$68F~g?_8{uhx%4|BAij%Q8[7 gT{5p~ktGwԈ2O3 fXMEO ތPHb;'5 5AM#SShᘣ vq-DnZ;ڶϪMX_IѲOp5a B%9]Z!; vK4Pmb%ۦ{) sqH;jv{{-k+HOWͦO:G2y>q(94(kB^oR[/~C2 %k M{p5@ew?O|;䁾džyF1 N/hXjlhwTM^^meHa@lU"!ZkÄ>-=IJ-RA*P@!u)v]e$z_;Wr<E :L=uD I0CƜzǿ70vR[`)+:|ntsy1~u -|SYi`zrF{jGE^WH7(g}MV-*dqα[^ ׈/yđ 'Ti:yLieIFxpQ,iMNcgWK<UĭOr--t -c%WR?7PQ4R M6z^(?NJiw/Sf -~'|෕N5"~ 2H*/ ~/b=/j1>~Dg(ˉ^`evs $t=Eҝ;e.\-G k!*5vٿNPZKk^wc/B!co -ךkC96M­д1z.`CMkfQ9b}L&>}x^baљ0VOH:^jJ 7kwVD= I˪|΄ׄB| eJ+7lZMڳ7A4TPpMΩURf+1啿*wΫywf#Ά) }Tn$LXPY80m]-i)eS2oYlu[|0j\<<[@ w)8Áo ڿ()H)g={ѵ]?E~T(X'`Tʗ" A@a8S$S-U% -i!PVyZsuR}(t?i_a| h{ڹJ-س`xVD&`p + ıjO-N5VFG㝽*Kģ\k. lXSc|r[]͘Q&!aXt[rKR_4R {!%3.} --B+ޙi~Ճh K*,/hPj{` DCw_h/p3eH/IA)ik#U ]`&o(k3>al=K -/3@A|G+TBR׃ 3OABl{sl"17 k_e-QNFQ -*i=F8*%=Mm[͡]7H/e/cEr\4tE>I28ݳT fL C#h -wBūdr|{T5Qo2?PmeЄ.-Ϭ]lƿ84c:üSR($t}< -H yY>f.RⅬj }+PjE.Xg8KG_0!ozW*4]xĪ 3m6 rj͘uv>lLWwPNqGލu2 p;ݐz Ih=IJ  -RX+%FR1z -D:g{Y}3>6 KQhl [Ć.^^c}.s^֜G>?WJXe і{*nxzv4y۫tQ/x`k4ٞvqK_<-k{怣;-fژ nοH̖c]rj N?HvlYng:W u"k%N6@ |^(̮Pr@̀ +oc;jAw-=%W)-{ru)rAE(@{빴Q|_R +ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ +}3{Z2zݬT2s$Z&{BJ{ޣ\u3]G~ 7G!/ Q FM~f/m*i("!i +K5> ţ d,J^,]^ +z* +khjOwq k&,_?Ɉc"n?W)Ջ kÖ投`Z/S *?c|Wgoʮbi8hesQiɺ4)FvP Vؐpik`j`EU)oW jBNfPTa_$ uDd3QBZSfyu4 螨x঺N<1Xk7I>%} +'T)~$I%qPI#-MVxkx@޼ۜZJ6h=hAڰ:#obv0e\¡0cPBz{f=d1G'{1@dD~yXrDOZE.ϐ=(%^/2V)(mfR20`މTLm/QL zKMmͥ +^vA +oEGxvXIxAW>xCª5!w^ ĥv(4,-eӻ?/R?Dqeq-xE $ܘ*3oᮘY+0{+N.>ψ'=IJ +f]̇C"spn21 {3=Ej4ZN2 +K~*w?#9; +A)Py 7}^muF2x~m64&G?r\|6L)ew¦ØB+rBc۞3v +!:0{uL +âAj}{q3W^B'(Yhn0WRS?u Zin=ٽڠǘ){s=m\ul^GhN@(s x6bM'*'6?nA{,1{E.RxmN4k(wl30M\Er +pty o> +{a_S +[D.tIEӽ ]fVՓj7Va_a"-{#- +:bO[)HAXE뻔Ug2zOqq" rI~$>s0Y@Ȩ5{I>y炲oCA2=B?"R +g_,~q.E| noϗT6;i?Xb4}teL1~&LdZ}2W.4.^%*D|Z?7W1 * DD?P_toKL'c ߇mS>-#| ;[R1ڢ` +@@onh.VF+w3ݟ)RX#9sz4X"#bwL{cFNj'ƌQԑt2Tn~. |_ߐk(Fm +n8*Y3".g~3SBج!͗s8 +݆ iD7D#oEMP00pn̋E\ٮ+7_ QzRĉ iDoB=|n$2bVÛWRu^]72# +x7SE5OU:?oq W\qPt<hR,v7EbZ5=>Û֜#hSRA>2O?l"q(DOuk4_}Ǟ# `N0N_CB<=gKO1/a!!ԓ(`J˭9.R˨y1jlnL`f~ͪuJjwD19K^W7L(ҿkH8rC/_! 1gg` bu VdoT_E$ LZCbΏ)#ue*<m}}<Z1]7n=6c~#`oM`IGCcIR(f 1?>+YKCZ%s)pxHODRhL⩩? +F,@۷l-%xWuLT7a5 +b=oюca +rPYqf3UeQ6ju! tYL,#Ev8?@<m?ĸӿY7^U0M`X,oz N]CSpbӿ\{2,1ߣT&JRCu& /D#eΓ|}J-ozOYTC]i/ K^QaCi{;ᤩ`; +@WCk2YHG$JԓO>K+ +F. %KWWZ ucQRT1 >r튌;FG֧':ũdXn|I]ͨxq/1siN$bppa5DC$6lg*4/*$Mmd$$0el7aa (w3\\XAȿ4`]|v21) d6.7FkC/1J5deGñqvTߞN|@\%eC_>$X8cB'f{ nQZNr Rn}R1Bz _Мך-Ekjmnk"5j/2~bE9#FmY۩~|NDpTT6Z%H ctjz3\ */09R[Ƣ3/c4֪K^ 3b%B@$Md$8(sPWcY:2N&q4$ +VYvHS Gr +?6>s{&@ Xz #xHH+D%vZ~WO?V33N FӁ9 +[" "rme{3L7gdzR`QK8\ڕf0h <8 y +9\PD^1L1̄\$CFblMQz.Iۯ8fv -%ڞOBTVHY+pJ}S +ɲmpJ3Yas ݟ*SQYLBP_[HWBQgf `~[x/yp +vi >zxup^ľ@#uw<4b,m*}p…N{fE@fNg.`d"ŵr sr45S-U_x`F#忐{uD[Kf4IIxzɯrfb[Bk9kl 8U/W:Z94'`3T+)0ê翄 +z_,{uC-4i 7,g_H9gQrHA8]E6AQsif*lI$LI`@?d/]JTgZY3.S^+ +}KM*עGt836@<1.bJX`y<˟Dt2XJQhi1kpQTS;9v_}$qﱡLT@-p˧а# ק՗؇hg@6vw1AmlGh?z68N`@UX״>Pnù.}UoLR Ww})[N[?6 ց$TeǵY ېb>ubi&[*B^=b0״Eq[ۅ㪂uZrٟ;cm;m`6h~nGXcsN=qv{Y+K־*cb>扶{$y\k4+U7 2|X;6yv+#zc)hC]z2*SIA]!=[X:e⬇nesŸS"3hnhP}߃h7K :Bܑxygށ(2V}ă4Tn֦y-vBRB8zZ-)>ӛҸxp"Qi&3Yt +͉EW6w-"; D!Idh:|E D2Sf"[윌WM@)x<[dj-3> +k} Ti䪻J +硳%<[{ i*y2^.ЀgͫbԋU:^IUCxmT?F,=[0 OR=w|8O<b%$c6aۆ|Ckv)װQL,1:lF9p`F/DV`ՎB,Xy4H//=g8%Z\,j6Y,bpT`K#{_2$aVUsc2fe1 ~PsϬ_' +U,yVzdCX(Y`w%oPrA ktn,D?L'X#UB Ρ +Ԫȝl-,xu+k;H;w\1mmDi|{5-=i"R#{P !%Uj=F2.c/Qb ᝼M ɓ.sФxN8tbvV02+؀7k?u˩xaz*iD DX{i}t3Fi +OΣ_ֺ/! endstream endobj -1918 0 obj +1983 0 obj << -/Length1 2199 -/Length2 18119 +/Length1 2131 +/Length2 14577 /Length3 0 -/Length 20318 +/Length 16708 >> stream -%!PS-AdobeFont-1.0: CMTI10 003.002 -%%Title: CMTI10 +%!PS-AdobeFont-1.0: CMR8 003.002 +%%Title: CMR8 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMTI10. +%Copyright: (), with Reserved Font Name CMR8. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMTI10 known{/CMTI10 findfont dup/UniqueID known{dup -/UniqueID get 5000828 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMR8 known{/CMR8 findfont dup/UniqueID known{dup +/UniqueID get 5000791 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /HBJLDT+CMTI10 def -/FontBBox {-35 -250 1124 750 }readonly def +/FontName /HFTEUS+CMR8 def +/FontBBox {-36 -250 1070 750 }readonly def /PaintType 0 def /FontInfo 9 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMTI10.) readonly def -/FullName (CMTI10) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMR8.) readonly def +/FullName (CMR8) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def -/ItalicAngle -14.04 def +/ItalicAngle 0 def /isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for -dup 65 /A put dup 66 /B put -dup 67 /C put -dup 68 /D put -dup 69 /E put -dup 70 /F put dup 71 /G put dup 73 /I put dup 76 /L put -dup 77 /M put dup 78 /N put dup 79 /O put dup 80 /P put -dup 82 /R put -dup 83 /S put dup 84 /T put -dup 85 /U put -dup 86 /V put +dup 88 /X put dup 97 /a put dup 98 /b put dup 99 /c put dup 58 /colon put +dup 44 /comma put dup 100 /d put dup 101 /e put +dup 56 /eight put dup 102 /f put -dup 11 /ff put -dup 12 /fi put dup 53 /five put +dup 52 /four put dup 103 /g put dup 104 /h put dup 45 /hyphen put dup 105 /i put -dup 106 /j put +dup 107 /k put dup 108 /l put dup 109 /m put dup 110 /n put @@ -25919,11 +26244,14 @@ dup 57 /nine put dup 111 /o put dup 49 /one put dup 112 /p put +dup 40 /parenleft put +dup 41 /parenright put dup 46 /period put dup 113 /q put -dup 39 /quoteright put dup 114 /r put dup 115 /s put +dup 55 /seven put +dup 54 /six put dup 47 /slash put dup 116 /t put dup 51 /three put @@ -25937,616 +26265,789 @@ dup 48 /zero put readonly def currentdict end currentfile eexec -oc;jAw-24 WEvQC<3A2kX0k^|:ٴfb,|=sLu2KZ`3ndgRw@),q՜G<&h'. ΍883 ABAԾI$s@F25ڪ,i pK>6K` %E((bsS?#;IHIRgHŗC" Axb'^;*DٕTz35'«G=F F섲.K|Lђ^Tsә,˛PS{1c ˋri,BRjl_݂tUH %!#V|6G9i/'//do1Wˋ_G -‰a vL"paS-g綇}t@{&Y`I -|ۢsifˇ]<zilWUf }ϡq^c,@{6~?JSijv$i"$O -VQ?236u`}u~㣖9ñ#M=f.bȫ G 䁡"K aI\N*Q*;G40Z($Xv*WsPn hXU;.a7X5{~MzH Tj?^ -LhIt}e&,APRNy< 9MCfQx"c<~Nh%0`ڇD+qn ;/XM wZdi3V"+$(5|.R`G[xM9s&7q%*=׶%zJ3FA%@kd/]gā2Ǧ<\%ߓnW(5uI&dI fWt]]32b驞VS~O &`hXsGA"%͗"h*4Λh`:gQgatN9"#D*$Ǫyy\ 9OE{y"QAw/Ѧi,֗665:?Sr#2 +]vV=] U8~ 4"5;;jJ+عo!窧)y.^<^gNlV:H (j$.C>drYz3D^"(ݪy?ssDt45KqcV}PI'REhܺn!p}ilqH'>2AOl2 # [˚so DtaK:}9/M]fXlf-F| Y A1Qƕ/28 S廩/^dVB [aJzH0uSo/Y`'g)5ʪ:\hYrG!y 9rhcagzoϘ$@]8 REPWhͽz]FIءz۳L|"CEw}BŽ03&pv4Q:uKw+nC~vto:a, y\Y8L sϯ~dp=n?D( =>mzN5  ,$2/"f6%)R%b8j6mqEQ-C sKD\=R3d>!YΎ9MQΕ/Vd+BW&IIpAh* ,W_UkW2G&tk+hV<$_TgLضucz9?^y(;2-~7]r&Q0[AM]fX?x]inU>%ʸ(T?. a1L.wiaH#C-`g=f) -TEGeIuEo?Fg 5s9!GYrÂ$֡ L8h:ji Dc8k.l|l| /ܚ;'(2P]< nӱ -l\C؀:ጜ'|-sy5eDeEͲ3ڗ05nv>*!d p+2~Ͽr);J;шJ2y].1'e'0\Mt:gF+mr3*ttXKuRL˨B4Pmhel[b9ʸNRr%0K.㼎b8TC{,Pu9 %" -ƛ1غ^KUIzfs'FiwG&2bDX4&"t]vU3qekZb2mHj1}q_P2|a8~kP4o_== vԑ8U5[_ )e=mʂ:1ԍb D9}F`ֿ0cnR܃IpyiS?z5qeSdqei QJV6ᤙ>ot5&2ZW$MQ:Pϼ\w/v@j=_L@wNҸ}FdX;ʊw%aMcà/bbK+2qޫffQ`" -nLo/'w ^*Waol2)&e+شg !g 'f?qwtלKZt&,<#)Y,zzп榯%1!ǠW"pu maRr1r@C( ^ tR^0Kt{տgB"ߧDf!=|Q -:( [~GsvjʓkP g/=_]Uz T,$V9jZߵ5߷tQq̮ٙGkc{ |RL ]vCAh$(5y9>8A88o1ȉSO Av??߻㹑Vks=lvbϣ8|\_%{Ҩ>&&zIWVSiUAV+Ӓ$D} Ge=fL| +)o^E`Iv7fK+sDz2s4+:>AnpT/ٸ&XɥݡT,@T;w zȼӧzekc=zaH``$4 -ϋHG^/'tWWu5*b9N&ԯ}ڷ#* -7=/|CX2W!wAk'TM<@SтkP8f>? T2K/K\ >$ɊLSN 5F=)!#8e|͓g_NQ:\UAd<@_ʴݮ -V;M5ztMmiJر]wimL˧cMѠk>HI s__Y/H%Hf]_ "5+9E2T̸CO[ g=<@2L4^էn^83rABzSiܗyUO ZĠG?mѬLlPm۪p@n,y4s:xNKXa2# -utw( 7̥>چ,Fny]fH_^;NyHU/#")t.ˀ!ϛiwx{ yC Cb|о ;7kKS1Ja9zWs˔dDXH\d۝j)3x%n'l KOmR\I5piO~5>g@Y5+9׷0ɴk8@ ,qA“D뉹4NBuytz]pȧ".?̒ѯ/l[l&R~WwB!n]8+I5wY]Hvܲ;U"ǘN4*={ZU6o+L%= &vɃu}qs,QF?RGmai?y ybxfULWQ@U-6eٹ+Iƕt!WfwmAN̼LZYLOyJQ)P2$b?IO4o OJrD:8k2?T,QY I鄳BEJ&rZb ʰOS;~qF9c#cc֙dLǤb0Ɩ˿hZRJ >*G F{;C'elIcXm ,؇6֙&Emn.RGAeŤ2W| -K; >x! MA;NJ}b3 /2ۏs))^iދ1R (ŖƮg4Ѳ4l/XR+|Ifb{h E]5[n,|8]C,BV"*NZԷɗg*`?ېPC C)LEDSSotOb \T=/st?CPfF .a(C!Db̛Exj%YKW1ޖ/Ykt@.95wHFcNDCisㄶϯZ8A6KZMhmEGpXԠ_;u/t_& \゗>fwb]>|`FsGDԝ{zРEbf\){`Tf(lωtB?B<k#Mb8I]1pW=ﻬozmU#{ ؆rbM;-uDy6)vAE)RD!i{ݚ@S:(QS~- tG+\{ rcJϬڔӻ%(,"Ze<T5Z=F+I|=;icJKSA'&7&۱eb&qA <s.0vBAW@3Ǐ1fiUs(֧EqyIg2ewg )Tf $mޫymqqzoǫm'(>xn,g#~fvϊ=rش8޺SA(SV fcSjAqRǃLT Gۢpy6'ٌDh5|F)Ncj Wl囷T߀qYJgoivnJZP -& AH`-d abבYɹ_tHܼp-~QmSKΠ -gM_\P`I }^@u%!DfG%lQ<%  ]~CO+K\x;^z8?!7"F]~ tl'TјWpQ|IA;SSS?{U4 ps0W_. ҆GĚх/羥of4;~ {S=zRvn`(D؟B`3pZPY^ <ǡ91ֺ#X\AS/=ՑVamӄI#\(\t<&$2ToWFmb_(\emh(셆]OCA:|[I8egܺ'i=(CNڔ?US0kiK ov5lxeى$}o} ݛ[ϼq".&6 %.W:>[m1/BTuWarH0QELN=wJ%Ԑi_+"[,wx?ö5$eFvd*kp?ە9?ϬvU#Om&x+tG&wЏs'@}GW׿GwF*S-n^U֊yzt$WFdM캓[vZz sGRlyyZ0g.>UQ?kؚURYFd^,7;Pٯ!QͿ v\d)\05JDFPi3=cgwjwS,:u1/bM$b# !+6uQ!Fw06=11KLaU!h* +|։[fA( "<g4#]ݰ6"BBBZx|EKQY:^Ow(!چYO7%lX}zj )yRHe7u _+GGW8p a 1TޥF·Z7;֟p]%Z$%ekg0#:rM5.>\alQ:g67DpW1ib[F$ ?u !oySUʘH$V6pX c֭s^ՉI -b?=u}p3fꄟb!T1g!G \JNc8A&7$3zY/@ujG$Z'uTР\gm.a85WRۈgq}AXOFؤ@KA/a>YԺ+]hdWơ",BF`.]{*摐['_nZ -\1ۖ -gR)Sybn]qn)P>*xKV8>4u l!cx7'Z@-D^;}$zfO(<@%toer3{)SiM-ei8@ rXiK -!]{T bITaϦK0[뫙jviO3X!#2Y}CLWc^)vH]3B};b T"#y^[VR*I9#^Z|ۥe IF#iB7^b!pWE=l׏`,G - $yuʹ}At'9}\ЯZw`p[ -IVҦ_T+mz*`2 wnNPnt薢e44"!Y#}!3[$N5\ݻ~5+e_E޽-rok?dKvh>±ʐrhdjӏ g4OY׍vA!^Ԣ0:(ǽbF܈PAos;G[O&66"x)sA=zLޡM۠Qk@i#t%@&'M<*#i3o,J6zV`&ն8zs#ם龯$Y}^rgp*>$BmfAtw9hsu"C0NurpfX1wN_JcB;HN]y;>0Vܦ0*!VQ(!e<1{yINZXv$,KxD"޺i),p,h WW*8v~tˏl\١š -ɺYK(Y*/]̿h3uM.Gki@<`3VkG/7};BP;yA/m Yz -A'Ouk9)j+II={.*d̀VA)?Ԩw*ͅBCq^ΚkA4_]~ᓚvO<ڡ cɕ_ԁ=H:UM3_B9Pex]2I3F]h6t˝a Sߜ>ںk9y^*:>!nH*CtK<>NA+R0KA]%0%NuOMVg'B5Rn ;&g4taqӻgGL]A(|Ԉ: ! vJqcũ,DEm%KX徔]Uc0 :̼ p-x w3Y:Br໏8wtRbQc@_hb緮/^Qrwr?1҇${;D\5-B$#Z'iH'd>7x<"Y7\?cp擼=l~UhK>~ØkCO/ - |j>T:~I|J)10 ^ڻv!=ni#3@g KliOootC)SĔTFy5Jiµ9i"~PGz ]?!|CpU7('g\a_/uwA(!5  c\h5 +A/Pc -WE~-SF=X)=v9IS}by݋c zR\?~ 8ASd%ɜw^֜ȥFaD:ut!Gc(iȽ<5֗)G-OZki Gs$#f29'L62]\"`\ -=7{cW#{}%(m{!]攑[`KƼEQ&:΄Ac2|n7I]ks\`L9DW6\ ѭǢ}!}ϗzA҇Lu'n9YZ9h`EخfƗ) =B~_u:\ OUyp/ -.M9$OJo[O`;lR 2'2t9b'm5y7-E9H`-:H-E>o(ʿqIhRH݉uA_O-~m]{!Xj|0f%X]%8:e}b[camKf#_wT^6!Ƚ2d+ ȶS"Z>ѼQϏ#M[\+BE8 ASːɡ+ 9?B&)uLo,mãs&xMԣYn4ļ1ZH ] }^߫D*DT)]1 D/bHNW0gvXUuD,a]ac\ -(HwϘ$j$OQD32qP!1fxIL{$UT-v:Rj[u -9j|u*XQR>b -!9U^WTY{GOۇܖ%sh2!hir?;ԝ!ARS>9#|"Z q1pz Q"nEs-$R%6 W aRǒji*%Q9DKlPy<Űm sIbC#.*^%R - 1׽=:n|xɀ%Zpz;*wiL>-546+lYLU$EXax1kN1%;͹-JALoƄr 93mnvVl#ˤ:g4(c"i2|Qm>̂CD)qc]8i-`ҧݽ|e!耽 f!8P5WCUVzaeOsj:nbhWpȠNeUXIT?o`5zWfKUVervt*ŐBsg0y%7<升.XwP'S}˄pM8ָI:u?azi-#zTdY*l741nAר4>}O!b. !tL* -aB ekl#q2u^kw=P/Įt7uGS(Y`W߻źHM<o6OY*M6S2\ChfD@($9eHHZ~#`V{=PԇKk5^Pux'}%{xYml,X6:5Rbj2!5f7j%6e#-sL2, W@?uasK;Xp4XOOQ;s^| @ ѭd -%t*t!@MIް >4Qo9š'v^ƪ;)&z+gaܧUc+ߝMQ`>BE[w:9X_T ?dCu}ۗ"`ǡ+~{}\Y=@oF4>ly͔V!{'ykDT8POk* -V@zSq!18k@5u:#SR&ESusHi| ߇–2H rv 6n&!s e 6t͂^_<+$apC<=$0ҙ*\2CYCԻKRr` S.6|<)o)!Ys 53)2{H'MVIN6"N*f;p8ʞp^QTa9@Na@ײL[IP:.&Z0"Y,Ru%6rCӾ٩65O l;qNޤ퇕sZa]tJњNrjזUgkў;զcE9JcU,w%6ڊ> aD4KY? FDKWڪNWL(ʄ-꒼P^gRb&g{;#al -_ -rc34% vv"1v6kWb=ߨZ -psyqPI/s4hiPfus9WQ U3~]o gc|uʾXU)DEx51$AsFe$eyȎ7 -|VT㮟2}I3nO8j -dSF 7P|tK$I&`4bv5P?F`o;Ul5e rUn3WS' $ =V -bj@5& -"~ F,Qݑܲg뺲^'Nz,~yxek74bq\҄C$P;Rwg'2I"| 3ieR"(uq?e{G^>IH&RJ -`쐵T"O\^u,GVY-m;{?ls'HzG?% #@ q;91%7y3 2G@C3dh>/[Ro#[PIZ% pv)wD '&c1ٽC#yoݷX܁w8g۳ c F~'zbLDpQr>%E)DWtZf5Q=DKH!DX}F}Xg%#m3+61Ե($Г15C6э*5*:ީJy"u5<ɚ \?l 9$$2ު -d}bIbutȀ6HOlXKjd8o]DŽ2'㻺_ + ? yB `ԥOf?jK ?˞EQhK[M|H߅bt?3>\q Jj4s1-}p cRGa8* ~L6"nh-KLA[ 8xw=k'-ScZN%9&y,j[y~"6 qzl:S+w:x P9G|-(wAn/i/2w8H $ O#Pna+Qf7eV0eO/CnV+k0ͫ]B Q2BbEQ' -T ?OH2|V2/Ghl-k[VB}u",ؠH;#v?Jk[̡PWhzُ۱c>l ,ye㟧GC=+ďG.QfVsQrBN'TEoSqk)"cp&1ǹs2WDziD1~Dx\P>pS2*~!Y Mo~,o3H=X)|@3k7г%‚H[,>1,`Xx(DhbL>rg@BzV$Q1 -! I-9p{4~ۛ&pۼ,e3N@|@8~7Hpt%/TexۯsRۼH$ ؊kwϤRGqqoM}nV/Zg -w'a?=t=To5Mj^ߘ"NFCg#YDw^&f^ -mD].CQWzó-'Pf6).ZXzq=)'G=({|iA_N0dHaQaYhE+=YT'{;ѥ>?+,;"ҰOj釕)CS8_ -yU,ux)<ۿ)Z:\K#{T‘k*ծF7O=VXE+8*'. !$k9JN!up ד1hN?6\MF"1|kv1ĔӶb ZrS!ڨA{n|mnE=5E"ğ|39Pˠt٧fsy;d)`g4t$iwo:L|TJeuD7lpNJ3Qb-XQ_dazG^% z}!- mշ&5-$(LVG v??G(XP)-¡gk*!8]>7#S x'eMd~5d ؇=b{Hؙ7R9]ȷΫD}&ѲA'#b|s1vb/Q[.#@O}{HF%t; $ m-H -uU)>RU!`ƿ RK4dΟLq: -xruxriFp FTcg#SK -5dzO4*Rt9t|CxDC ZF}n*EP9v<ŮI(}^@GslO(fڧLf 16Dx,I 벞?͵Y p1ί+)Nw ~_-)ohH{@j`6D.Jd6Ǝ<|>QQY{a>"jԣ5^'Ed5|^iTD<آ4I:X=雹ؑR1XdKVW4(8ǺJHk~yO1Lgl\0Yz%>_ 4# ջPKNBĵKkC f.˿2-[dRK#%k Ͷf+,"Y*\11;wϺ27:*l'@J 0 ǏѮ2ONH@{7S4 -HZc$61i6848Ȅ߹Q8X:ᦗ.>ӍW V G|,WAg -9aL13[mP:_ 7@0w4vO6ҙ`Tﯮ-'0Fσ(FZq1*`-1\aais[}=ﺡJPca@O -qQO[16ddq̔':qak7qb3r@z|ϗg_{} 8^ !2m3kyO -*KXxU˵Mql,!?8Kr{ '_*M80ʈuZי]aDjŽ@#DS^ -8R^t`K`"gj oHw6 AОaXDM{*m&<i'<#:1'NUt,ĸ69o: ⲹܥ -g՚fI h""Z|L@d,^% m*% {dS:z~'"V _F:_O=ga6J8^qtf,+M3S$;D`Z -QqFSJ -sP#+ ݢp8bM԰ބLJ~5=(FS{ Sbp}Q5ŠwcD2X-I_fL>f:ŤcѸWh ُ?5S).XG'z9 F @_&%>k[&ޙc,ivaYibZdZ 2LTHR+yUwL (/DѺ6K -Xj?izDRusuaSTk;֧_+_2(*O+5HM膽A1IYl9%d~Qc,Ae[޻wIݢf('BTnng -endstream -endobj -1920 0 obj -<< -/Length1 1699 -/Length2 10351 -/Length3 0 -/Length 12050 ->> -stream -%!PS-AdobeFont-1.0: CMTI12 003.002 -%%Title: CMTI12 -%Version: 003.002 -%%CreationDate: Mon Jul 13 16:17:00 2009 -%%Creator: David M. Jones -%Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMTI12. -% This Font Software is licensed under the SIL Open Font License, Version 1.1. -% This license is in the accompanying file OFL.txt, and is also -% available with a FAQ at: http://scripts.sil.org/OFL. -%%EndComments -FontDirectory/CMTI12 known{/CMTI12 findfont dup/UniqueID known{dup -/UniqueID get 5000829 eq exch/FontType get 1 eq and}{pop false}ifelse -{save true}{false}ifelse}{false}ifelse -11 dict begin -/FontType 1 def -/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /OZJPZO+CMTI12 def -/FontBBox {-36 -251 1103 750 }readonly def -/PaintType 0 def -/FontInfo 9 dict dup begin -/version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMTI12.) readonly def -/FullName (CMTI12) readonly def -/FamilyName (Computer Modern) readonly def -/Weight (Medium) readonly def -/ItalicAngle -14.04 def -/isFixedPitch false def -/UnderlinePosition -100 def -/UnderlineThickness 50 def -end readonly def -/Encoding 256 array -0 1 255 {1 index exch /.notdef put} for -dup 65 /A put -dup 66 /B put -dup 76 /L put -dup 80 /P put -dup 83 /S put -dup 97 /a put -dup 98 /b put -dup 99 /c put -dup 100 /d put -dup 101 /e put -dup 102 /f put -dup 103 /g put -dup 104 /h put -dup 105 /i put -dup 108 /l put -dup 110 /n put -dup 111 /o put -dup 112 /p put -dup 114 /r put -dup 115 /s put -dup 116 /t put -dup 117 /u put -dup 121 /y put -readonly def -currentdict end -currentfile eexec -oc;jAw-24 WEvQC<3A2kX0k^|:ٴfb,|=sLu2KZ`3ndgRw@),q՜G<&h'. ΍883 ABAԾI$s@F25ڪ,i pK>6K` %E((bsSD;Uѓ"":!cQMq:(MO)|$~x!A7ux(ǻISG|IQԏY=9"i1B/?xI84HrxF-}S?geXhb'N'68^o ߑT݄j"_ u3S[3^G{Wsh"NWk#IQ9dxpY JJO(UMaKDpP=|#fLV<J#o)Z.$U(X=G-Jk%_HGM %4ߴ -DQjY1=KʧHZ̛wOȃDل6C!8]g,cAo?Ҟj?;IAGYPKKɧBs_W9AD2IEWKN*3iA%t  .ox #&ShD"5{nƋ%;{.=:ٯ}]AUi =.:wv6 <n~?V+Ɉ8R rmsri40XgJ~9H)G3TA3c<;k \" -"9WB7{YZu>]=h۶#׵N=8gkS^Z΂dxZ >B/ngH$1'F%!q\sg ,YKX]goRw~IipX4_ -A6)Ā_B&mVU=J9zkt 7n/N+u'br$T47.\I0Jh>)Q԰[]" ؐ MCŕ͆Upu k{nN'ghhs }Ng*t\/j4p'2/Z{{5kݟpݞP% ?C 9AVpzGI%ZXcJ -rxgYNrfcw~B?B&&tѥn^pDF&Ixe%ci -Ⅻ5<C0C'\F֡z[R 4]=)E`͞獨YI!Jfn:W]ŗknI#‹j"BBvvмuFGN;-lK΀i(sl}HGo1Lzǝ|S+xbs*e3>:FNƉUm -C']&`W V km&怷B@ϛ&Wϑ/4 Y^O `n>nRE_l6FYnnr%p7}%|UDrZ/,#N1Hۏ.CMn)7Q7!frɘkdfN\o-6Iʨ#Rw\CǛqd*~)]Z9TŪ;De=#RƬ4WĤ>L] -\g$2$m -q﮸ݣAqdu5B爜ǫJa)ҿ =['f R}]<N⽠zЁ)#0qG32'j g&geAna>I\Rʣ8߭u4't $qi"gE;I̶(ƭ8p} ó)^"rtS_V3Kh9"$a'm.}Ʌ9Yۖ~-iB*+dခXRI Z򂌧3FFNpC)1*RV -jm#XIz93&;vNTip qs+;2"cY>'N9sgէѤVK j_Eڍؘt$/Lڒb1pUG&%Yw毞|3 L[NFL]eE|eAzMնTZ<:,.$St=SjF_pEzr}BoN, y^`*3MeixgBpC @m ۂ;;u0-Qq3C?"˯sPBveb^~֫)Ze,˒[ -y*?ݳEҞ/_ZNdEc"{u3Jn5kuL;[~d("pMKKjuAbJ6vt-*fu&%XR5Kԩ~qB׭(E:& -O.VX@Oc`&_BtOgRn-bs),+{Umځ'nC)l,į&L UHuLU'Jl6t:h]A>aR[т8˿N{f? e=Y/wث#Ƿw;o6QlEs52p[ c$bPͳŋ3s91}$q"P҉bo+ՐFsv-@\4NmP)Xݢ}_4hohF 9C]X'p4|:aB7#K7˲n"81-{N;td *a"zj2aMO)BL# {jBT39Uth3~GRb8`7.A olT"D+,K8NJS덠M`'MXN4Уvj"'LO)CD)9{;IJ=i}ԱRoF81~Sٔ&E;9+ݓ,6JSó{2HWzIpW.u7p92QݪP2^AwrͣNEޏy|gqmWU˥s* f6.LK] 3>MoUs J77b,$y~ + ,hϖqztDFktQ!QBl(4>:hvqID*7W5zGsq\X7vmm)NkH7:T\Fn8!J ->ONZ - -a8"5n ZJd!b6`=Ԏ -m:3ڑYK)yhfghۥPAc'SU-|G8ȓ|/"MKkI ri^{jD<;pzjA#x;|#`'u䝈AEGn 4yhߠ}4ji׈)BAl@7BhyoBbf\8GS3ˏN޵dX,{4@&U.1l&PK ֬Q{m'c%usr6Ϻ#!Uv -.-@WͲEdq]VhR.fdݱogr3xlیqsŶ#ayi4mwLD&Y4@1w*Oҿ,=+ܾuʁU]2hv~L1- -Q}f`gEk`Tk%猲3*૏J]I\ӷ70aFj&lyzb&wG]ps4nv_$2^ 屽jQ)&#q)b~9춚氮Mh`8JV߅EBb|̩Ua_| 8 L~ҷVExwwżkif8gxm(Ÿ -> -=MlT?y=F .?$W!Ѡ3ZEIW~QijIo=uB\a|> 2 H9<ۚuRw9liYTV'g9j3e"ob -3yg7{6PZ9mT$/ /_`ɗ}p6V AH\ 0pw8L)R <b^89893.orX|IJ:ri}fx-b' Pqv4 ) oD)P,hw%>lCdZ(aβ &j7d`p2Z֠>yM&#_Tٻl. u/잦Ab+]P&CUIdWi^no@1q9a_ʢP%_X4b[wi5uS1WcVVqʺ2*1~lw(eFI~#:}G:AC?p$eTy3,HpjֱN2@E I'^Y ŗI)bN燩IVWھԛc!Bt:IY:=݁ڝ,; t8X9)U8)kPߺ6ڞ)ۧP|=vP՗KZN ߑ6];ϱJo $[5urFQ}XҼbp6) -lltmUuɩc[>n¢R%LJ#+]:) -Im|T`fo ?\$s_lh^8~ꈺnldiɿ@qע\^ظ':sL@hnb̽ o c:d:}EAT@0|ls`w) 7 q2ĆL%Y4:jXIoNJ/AZ{<&ίN2 !~brE)/ Na8C ?ǴS}K+qd y L^$SP(wq9^c9_Pjj3ړԦBZ֑[G!:L63sq -qO'wXWM%ct,Cp܈0Ӭ1: -TsQ GӇa`AɾxS5[qB͋b/9FN&W)r''h촞mѮ,3XhaZI&Uȝ CkOS1;|Gڡ' ݁:Xiz?zƜ>4bC%gly.saݶx!®k kY6lZt4h tZ^"1:`Y+u;AdPf( #5naMdve3PbrJ["?}I&ЩSE();5uC\n*]SW[B ʂh\V`A+"i)3'8kk`.fL8D%B y8^:N^cM-RL4WNTȰ!@vUnD"+!KsX _y۳UVs!60箔!,q!PuoZl K[EX%Ig.;- Ws$%o<@"w0&Gw#گ|innSФ|g*׏ʼn D&68 {Y;~_%0zh•EU{TӞ2tV*^&H J.#BH ]CIvJQ&2hGpy5@ ;剎e&fɆvV'&p3W -[NW&gۺwC)i>~JLB;$uJAbM@*s02~J%h*E>v`TZ,k륫),{Z\<Ǥ(y>ӫls -Ʀv:[c)uW`Pgu_UOպi>nrjJŶ6kIF6~ڌ[Zi/gt:GS$^-58.päHYʓm,!z8q cV}\%T)@,<.X Z{laK2>3  –hV\3)'f^qѢcqp뿯.V揟s?&$'ʡx̴G;U,\:A:9b³)fyCI0qTcʍxF@_jvWQbp,ΡB 'gY@3*aq{ۛտJ}jn6#o ^Ե$d蒒Kgb1r):_?NqIU&jިݵ!\kmLӫ/vW0>Ӿ{w{g* 'Q$ýD%`p^9'(=vxr0"E&Y-cH׬-* g@VX ]ӭj[mb5%D.αسAuc|ȴIwe釧 tb?g oPl'Z"jr*F)lOFܲpݭXftTYH< , cx׾1 bB%xlAu!%OG:0XךhroC!ɬYftXgzR/XH⬣L~ yf2*vAY]/m4Uf |/7oRz?25떵Fd/%}T [%kJs۸HzYb<!I`j5 wGH 4x"Ƃ;$I8E4 $+^t8׮1nľ3ud&l aax B=f*b뗅c&5{^6]W>2tKl].z+vBJ%=Wݔk 9g͈TJ~y@B?:])/]Sh?D,_BƏ8.C1A!fϝ9v<ٵ\[Xq[(i5&y --djM6[o7KMT¦baPM\be+6g(͡,;L:|闛Nβ1S#(@>Q/$K]!dRffi[Pʇ?ÂQ-enB2Tߜj[nC % -X A StoCKr0E1O& \e;Hˁ lqάa]_i0y4 ^20 +oc;jAw-=%W)-{ru)rAE(@{빴Q|_R +ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ +}3{Z2zݬT2s$Z&{BJ{r̗m1l(zNRr^&%:(/IߺHm!4JxI7bs,OiOl7_gѳs6;P}tx,IvJ3Yʫ] +=~Hrl;H :(xP/PL͍SI'sb~|PpNcOAͧBV")Th^Cx(Ry,s)+Hߋ;m*?>H"%N;8'bGZÕbd ^i$iaesF)l:}3X + Mv%GN,Ҧ/~`Љ"JO238ڐi -]IGcf7Ԁ2ڣ}T  @ &x߳8h +{ga5Lw'~=OLcgPv9F˛z%e|O/bV K ^Ć8ԇ<)M<m;疑}Od1]ZSmPf4Ժ)}MPg2вl1gFޢp V}{<[5iJOY>5XZ$157~Zڕ-UDm?3δ쩄'V+RGpyDHvx{pcL1w¾ FMNg(S ?)?;@ṂBN߬GXDio n PSSXD[kg[tU^?f27#xUým`jck$u:RمiEUա<.^Y&ۆo9s> û +8jzIC%oOn8Rg#;D2(J+|Gk9ڲփey/9+,-b3w9W7} z᣹өUyTpt_24a6s!O #i׌$޳\Apr$w5\plYn1upd[lk!lRv4_x_$V[HZKr\wu%_F ^ =ԝȆCf%-۷R>Qt@2 )~zx6mXFVCEOxJ +jFmh)XɽЇ8{u c*;e?blV|@-jAf9Vb 8Tdj4!VerZvZ,eV҆?0 +ZWGvl~و[5rL}qTvmjCbM:gÇ VOiڪ#|ym-4-, fFxWpsX!6q-M'ŏ"1,sxɵISĜV"^j73EvV(T^K-k?Ӓ.;d{)pBh+4uU *:m;<%s!- +8X+p&4jO^1TpvD^ x$+flx7=1S6>rMz 40] XC 2ƺ_s5uD^'? jeq (ӓQEuf%x(m"B (brqYqu]ΫHgp7:NQAdYQk(|_S/8aV%'ov"U2!kh5Q?)投g&J$,jS]&1Fq**X*ilSfN{qZ '@dnl{"KDŚ 4tTY9X}4heQ l_7@ZUĩ/Ac*A\4;N{45L=!V5. }rKqS*'R=:tF_}OV-F=;*ZGoe +ED,A$ CÚI9:Fω/%`,miSs1M>l搣Z՟_tJqǙJkuBy#+1HLabL 剙 Wb])Qjfnpht;\܌8:,{=JE2[WD{D7ܻ9'Jޞ#11j:n+G,,ls3݂FITHH`v=%.ayKyMBn!Sukyv"5Dz +֧'4Q| &֨ӷRc3k&ӼJ 4m [[h|]5 +9Jȍ +0g_ +wn{QAnGgIH]E oV值4:(\TYs7HAe{Ю?VN,pPTlΟ fg;I?"BDyв LM> +E,4c| +}=xbK2^^WUAV7xQ~e#EJf/5R2 jn@FԚI&d|+.;b^ɺN(S k< q/3?׏ƚ~sďS}V7+v8kܩ!ȿ}x =7Z}ǜ]c!j~?}&bXqiE3xmΏZ6զE7C+:Kꉓ~FdNg1Gκ%ׁۃ1ýwCl檬q1FQf1Ż9\@¼(ň^Eг%( fJz^ ' R 2͏aǃYֆZZgd U9/|VϽT_&$_=1zGGx /"Fo<,*#Yo:a&jCȯťuK`uŽ /uwaEt #l!} j؇'*eRh-.h;hMoجcx(iw N̸u T=6^ V$[f@[sk4kJ@/SOnYJ\"mz{1*JKْ|(nwCָ 4&j_G.Yb[J87*"&!Ν&${G?`lê);&|vMÞ\SSELok.N&@`S9eϋci n "*z(N(`(j>C1*CɚIbtrjcWqt?[Ii56߫AښIJ'{-Al$h;m#Q5dd0u3+CcZы|1B]; T}݁{*!O^5 ;6Iˑm-x@ʏs[2 NCb+i+Ɍnu}jlD=_}ٹ*13?9r5\ʥB24"F#KLE*Bmw c,ɰh,<#fx%+L54yR#Ss+j%rqJH엮`S|'a!7[Z&.BvK94{~ͯ'ElB9 6gŠnS&}FL5r1}X蝻?;HǯPO*E4%_Qy. +1}ށ;\SlKE@%ŤQ"%VD󩉬y!;0j`.(9d !0;/[ċ>#qod]O>=z-)dgWl|nLղ FEHқ\~l'҄u6UeGBnKM̉OeӁV?hoR5y?ݙvĸZ@'+my5@:pqU`y +2~&@ʹNt;=ΰ oY+KۛFtz/zRk]z,l93& ^ y&\ +v+vXuC2I~gs="(pQ"RQSq1x̦,1fɈ[G]x&͕k5E' zFm]mT{ςh1Z(vtO:kТ4oP~Ԣ 豟l;ݳ1`yI@!fLE6<+w/_+XNVLTI?Yuk6rga tq=M=?u4~h7ajGw֖ˣՙb8|7_Aǵ2s>@rk&$n·nٿ`ϼdKDNf60ƀ4#&649߮XGOUSV9'&F#U@VreN)tX{bn̷|C'Ob^Jp$:2}osre 3ꁈ#R@D eܾ-찮-#<<\-8ŷ:Ws}w Ӧ\|Jy:,xf~X0O @xLcfġ9Pj'7a3A }~P]T#ZWo T?2#[=UN3JMNS_{/,ӛkGZ$FG[B{S[VUIa'Jn4\[pTp@nng?>x!`NH<xIcR +3.t]cI vvMtol_:R,xU0NdW\xxJ΋i- 5LI;ɧ@#c̚p79f%Ӆ( @"_,Ci4mûJ bhh&y+\/^fP1'kَ dOu:`aY~C1z!.刊n=&X/xvK~2:pSs+RJvu$2N3QGI/ ,_Y퀖`0}/ś=% (=*dF#դr~7%bcm^qA%CDp'Uڤ%;x4@5a/uR"aa'hS +-r7-U%e| +$sୡ27Jf,dy+r DHҋH$بbQ8据썧(k+AFM3NaM;c3pK]Q'%t k>ԉj+="zV68ufUr!H>pץ(Kƾ+b3ͶyA3ƿ4we+iٲE(lP! z'kA9urG- +ABzc-M3׶TqρeyceWEӪ{y=W +-x-0-} UXl?ep}z5Rh?,U lb]S6Hc:fN-dVNжnnAVT&SKҳ٬:UFAw.@JV:|c&zuj&w;xdW](}uΚl^"Xhycn׷&_?7g +f.zqjsa,fXRm ZpѪPt3C=?:|,a4Z3ePdjL&pz pul6_Qu"F&kwPPOP'Ps ;-a(s6DنI=\ }>b:T(z zXG 2/?2I?I98^bDi6156 v r:}ry̹u1ˡ}CQgPLJy +Ep.Saǜ,WqAX\8[ol٘p*Xx|'G&aﱘ7p ^ VhmJ:ގOPԩ׃ш<4{YO1jlϝї 7$Zu` |$ 6Uf8PӛȰ}uƾh*`.AUpag;.J҉'2o<`d TLM[G- C1Ty]?5t'Vez|"+UDmYv'F V6ۂL?0X,$8eJAMd%wEmR|Dn*5yVu#@;N7~^b` :o a&^@ 9]]wD|5)t-/hnI\U3%$fT_]␋"QwNH(jwם++i"kSH.-T/z{WmX>ojSE =^F؂ٙɧ_^.."b޲lWQG5<,(0}HTc\/2p DDMpu-ohUᦽw P8vnMkp[W<_$*zlـ_ynw R;BR^ڤIȝCO"s7 {D~?Kټy PծD! 5igjE) +>4v}JvAFL6,IqIj_uc>ݎy]K̬XU?T?M!^l| #uf^nt[1,BX*{N: KKXzr5}Mr8=qK]$wt#/s>ݕQ +$y +rB7ŗg)!Um^bKf= -\粥'-0GN Rt +?zԗџ:r2'GY6zJ5=$!pq\Uo] +(d A ))jV;r^͞1D!6OXi}g5;[lujhJAqu[oHz\seZnS$ _C+e +:+.㣙Ff%A{R>X0O4,fĴl݉lXyp( S #}M̓1áG՞!Wx3hcCh*I>jy8Nn +5|P9*O Q}IR8> BkZt%!M3JhѯȂ[u?+ӂǴ3 ɴԤD-{ۮ:u9K `dax DM]績.,NQ ƛp&-Yagho2G h'.RiZ|?\g{2`z!ID ^^d2e|?`KhZqr0'[hiyWB9 *"h D!I4#͚aL,pv{JΏ*ΧRDyh66.(-\!iC޾䖛1LⓎs/=K, 5ԉ; +e;lGۭ .v! #d";ȬmY>̶%{0-ьcEZJjl@>rsJ%I>rڂ3|)0*W=|_'AYU{s5}3YoSD]I\c.Y#reNV;Ci2_213v [bP>&x*DqԍjI=TZ`5֛E,`d xE ԁ6Yj(>I^I0sM$)3@n 4*-jaGDf}Dk?ލWa0S [5;iwU.C-Yu +sőnB!u!N&Y|ۜj;[CgۼxKى3 `,/bB]ڹLyáE oLT)7TԛֈuQ/C`!$M;B[̦0/s=vJsK:KS4]wD \&M\_;KIl].P2?YVSp80L7w&Ym-G#_h!Q[X0wԖ%!P}y9N*-kwn5,yf;x"O=Yjn~щAJ˼TBާ3]'x UP/=2^DgB+0sPށ%037}&ʎCOCaIz`8ɷ-EYUܿqiRa/i+@IX c@ (;W$ +7/5@XY x\YcMm"1Vt&|*9 ]ci~j:-rYibev~ O émbXب2֡:M&=߿eoN0(!ɱxjg)Mx 1X66fQ@_m'|Q ƪb_v5ss}X1+Գ\2rMvEB1jF|on&:N!{szEAB}t!<~Y)_/L0P+/lR=zǂcW`AB۶fn<>;u{): oTF1ELYYnB\y)Nhn@0&U7P,${WG0֡תotn儑_WA|X ܺ h^KX@@;iq;YFA$rʎ:L"Nxy*!h<\P?IyQlf;3ϼo}$5EʓsfWo3$X~[8뎋l ;|gzLՍAŅ$P$2-ȠF ş VYrkzdn9\1{E)m7~z Y2h +1mO8n#p2 +-` BR8~ygǩ~3\^tS W+NQ,\T1`/ +DTvJ{J|8F>&݃н0_I|4qee" uٙ(dxQ|*/U*wXŌ# t-$O(ק"l<ۧfX5 (mn'iFTU=M"z>]P|S`z8ڮ]DEHse+yrdל憟K%Ϥ۩ N c̛ 7!>VfƢh!HR= cm$m Nz/z ɣ;/SDVXDPQX~7?DzU* +œ Ea$kkDcK+ HDR$:ϟO8{=vKW^٨#Uo9_Oj6ɧ&utOz,\uz[E']YlrnY`Q#GO$DGԏjuަydUYL9#D,ScTw:?(` gԁU0uB+]f .f7F0ξ*1~! ,gHڴ9]3sKX\mBxKkFA !AkRJnW)o\ض̬tD̢e6|xmC 6 v,2CO@~ªJ;M7D^u jI6!0G^#tyq܈$|Ae$"9@vNNz6*^–4zw?N xD18oU_)iȐBYs6VrbFU϶Uy70ryjc+Z;`ۋ< c$I bReg\Œ񂚦 +wgeQ$B+9WlV[g5y[DNT)1ѕY?6ہ Tn>n2 +m{ endstream endobj -1922 0 obj +1985 0 obj << -/Length1 2460 -/Length2 17290 +/Length1 2014 +/Length2 14211 /Length3 0 -/Length 19750 +/Length 16225 >> stream -%!PS-AdobeFont-1.0: CMTT10 003.002 -%%Title: CMTT10 +%!PS-AdobeFont-1.0: CMR9 003.002 +%%Title: CMR9 %Version: 003.002 %%CreationDate: Mon Jul 13 16:17:00 2009 %%Creator: David M. Jones %Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMTT10. +%Copyright: (), with Reserved Font Name CMR9. % This Font Software is licensed under the SIL Open Font License, Version 1.1. % This license is in the accompanying file OFL.txt, and is also % available with a FAQ at: http://scripts.sil.org/OFL. %%EndComments -FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup -/UniqueID get 5000832 eq exch/FontType get 1 eq and}{pop false}ifelse +FontDirectory/CMR9 known{/CMR9 findfont dup/UniqueID known{dup +/UniqueID get 5000792 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 11 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /TJSMYH+CMTT10 def -/FontBBox {-4 -233 537 696 }readonly def +/FontName /KKURMF+CMR9 def +/FontBBox {-39 -250 1036 750 }readonly def /PaintType 0 def /FontInfo 9 dict dup begin /version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMTT10.) readonly def -/FullName (CMTT10) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMR9.) readonly def +/FullName (CMR9) readonly def /FamilyName (Computer Modern) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def -/isFixedPitch true def +/isFixedPitch false def /UnderlinePosition -100 def /UnderlineThickness 50 def end readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for -dup 65 /A put dup 66 /B put -dup 67 /C put -dup 68 /D put -dup 69 /E put -dup 70 /F put +dup 71 /G put dup 73 /I put -dup 75 /K put dup 76 /L put -dup 77 /M put -dup 78 /N put dup 79 /O put dup 80 /P put -dup 82 /R put -dup 83 /S put -dup 84 /T put -dup 85 /U put -dup 87 /W put -dup 89 /Y put +dup 88 /X put dup 97 /a put -dup 38 /ampersand put -dup 126 /asciitilde put -dup 42 /asterisk put dup 98 /b put -dup 92 /backslash put -dup 91 /bracketleft put -dup 93 /bracketright put dup 99 /c put -dup 58 /colon put dup 44 /comma put dup 100 /d put dup 101 /e put +dup 56 /eight put dup 61 /equal put dup 102 /f put +dup 53 /five put dup 52 /four put dup 103 /g put dup 104 /h put -dup 45 /hyphen put dup 105 /i put -dup 106 /j put -dup 107 /k put -dup 108 /l put dup 109 /m put dup 110 /n put +dup 57 /nine put dup 111 /o put dup 49 /one put dup 112 /p put dup 40 /parenleft put dup 41 /parenright put -dup 37 /percent put dup 46 /period put -dup 43 /plus put -dup 113 /q put +dup 39 /quoteright put dup 114 /r put dup 115 /s put +dup 55 /seven put dup 54 /six put -dup 47 /slash put dup 116 /t put dup 51 /three put dup 50 /two put dup 117 /u put -dup 95 /underscore put -dup 118 /v put -dup 119 /w put dup 120 /x put -dup 121 /y put dup 122 /z put dup 48 /zero put readonly def currentdict end currentfile eexec -oc;jAw-=%W)-{ru)rAE(@{빴Q|_R -ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{=מ0).|˿!:[LI0lr9G$}/X S`p*p+fwwFGO^ȇ r+dMvNy{YK[z[f -ܷBDq}M8|j${jpxxSƫEu -7%ɑ4\ 9b \)[FU.q4Z8KzwwylϦI5bjcZ,7ɪK:#@Jd@ѻFM_d#g+=>ZaWNH5Y/ .rpf{0D|6@;]/h|.RAɰKml^&W܀{mFՙ3FK~I7@T7AMOP.;ݐH+iX;}jYXEu5ǻpېBIᡊS 7pQ40cH4u[ wYÖ2[tʖڣ?hb*$ -dƥ`$ P :")|UƩfDtd§=5+j7%i@)шT/qUF1tEςҷݢ@ Ѣ1ãF^R?-¦q^!*1gw24/3@\7zaz1).ExY'Ȫ5Fc=nj2cw1 3bI]y: f֡ꋓfg%p^`('m K'K '>EPN,:M{S3G2R@6\?-^X'F.qhYlawNUpͧ`M9_Jgbw! ̼sāTҔDb:Wq!]iơw`褩'`h^ TTInHel䶢͒à`じ 'p(=Y1UѬ/OT -%`&{(K:.CiK9xH-vE4x_5叠ٺ,dl5'bbq,H. O8 NNnZGquDZMgd/.o~*ĽẾʿep˵ -1}oK({AsM`?  }|^ڧ(1vMXAj!Vk5=&Yiw|vCPezFލ`FJO!zơãE.)8At`+o z`!|a*dU ).tIhq*0q>NU 3ȏ7Ā9Ot[3|5r0p8ߕWqDLŽ{`dw|ׄ GJz/H'Z$MΤ8Z̈<7{LpV)%k3ToCn}4>ZrȰ{rUZ9EGu49>`oq/~x▏S|f9׬?X.uBxfGbE.wW;o, BLkkK{9fgg,l|&Ma*$v#ܶ>7Ucö'nNЙ1WƫV Nu+947yG( "zoO_|cZzB@ZAݾ@aexb?>"YTgBlٍ9UFJ?"[p] phU8Փz޾L?:K;W%X$؇:b9pF^dBJR(6[-T*4!yY`'M( MPA#fT"f"?eX&RE ]2L6 ?h)8&/Baf!0tM<ŋX0z1$6$}W<1ji76$4e L,vΡTuQo:=}E˨(S0.1) d#I;P]ɵR蕺I,"?bB8|GϞ\;H -nc2߯xX1!?:t#?%gSe[ze} h)D j-O6vzu@b ixc`r&r Iڹ_> 1SSdY$`)­:] R]FITkxjgbHd.(: -﫜.%pq>>^zx,{^c]r6oެtHTC O;q]8$yBoLr {=f$' F}*%*tdsCNzc5G~¸e 2d]bsz':aWA>4+ -5u=JTH8Yn{-t}PtJx8R.\{`u[%37\rnNJFk Oj+WesMV)JYV˛81d#JL1?M?"śbQᄍfcӟr ar4ד@dv5꺜5eDfR+c=PisX8mm;EL]H|S° #ȿl S6e!3BYTg}TTaΈfgX_+t12)A{ߨcװzP*Q˩SRd*lN؏bjɇwu_ŧ03_m=/Quf -'I N?qj) -ʎӲ+Ar⻩6&HДC9mr|7rG%:Jr<(gG^Ĵ~xP^KYYD˓"$?f7ښ}Xo3'+Te|7~x9Fʓ u -ih -9Nt9uicsJw -cZ|$C[ie ";3|AzFY4WSHʘJ᧞)~%b[O?;Rw߹E5?"W|;ծI6X'\dKs}2{QA)wJtXi3uR3Tq5b|~<27bA}LXO6/'`:8gI$G,M`y}Gꦜ?)c7K !8Bʽl. ouv -KS?0Z<M^oE "1\eάI SsBITve赡 Rkvl$|i0qp -QxroHQvzŃe4`eb?V'ax * ǡ~MCC0"rsSC=y [^ՔI1d#J9&I# g߶c*B+FWndM}RYubPvc?_gMk5Zoof~G>ص͈,gk]E8?`aN/`p22it (/[@|;C]ar6X W,COQY``J_Bhq8 !;.*ĿLMbMKa{boKInUowg3Ս|Rq?'SoIV\]iTgȋ[_Z_j5'N8wM%+E:v -"Ӫax;Y `m e"bsiq>,Znè3Œe(go =$Rܬ'J:cj3f2 -N:3CC;Ov"<ȳA?9=ԇa{M˻&}Lnu4۟V[+._b$t1.}c{<0PBW*ZCƛOS 0aS5Ε-}7-*IC{1ȹAZųrO(G n69i5bDN'wL ,j"WvyMbfv&,ՆHѶG[f&Px&I뤏i=(˗z:[} $>]IlvyPd[tzw;hc9X S8{՝YJ4ks'$r+t7))m&LWQ L7)g͑".f E* -M:7jm !'3x<[r n^s:^M{9Eŷ8Bt,wv0V\a4T2G+F],ٚ]z~a1CJUs/ 'ګœk[M#I8ߦ)qU$rCO>ŰtM>IV&Mi`o k P^\ m"e]VD7u\~&bO4tޡKLԁN\-vaKD­~2W^"ቍö 8YJBX2U[0lq߃>KH>sx[b۝%4ꅛ5Kʹ}97B~ڧ_'n"D|TS~[;o(O8lWJ(Hk"^W-etVc`z2_](:7ڎ_E%$!99 -^DlEڵ8 arx| 1?peW5}2OnP -"h/KU%K~0[ P`CU/ݘM3ʽuǂ&gk7XpMǟA{C%u%۩|V#GLߊb{%OY3]Za_W!l?vyf*8*l4]e> zf(Y`ۘ8?HPىJ'.dڰ?X𤄳*y!v48Iv 1Lnဝ?hF,CO -2fn_Z,HcO냹nҧcH; n7ZBM]%ǖ6v &<ˋ9ݖdžx}-`{yq.*Za}Bub}ڧaƓNh \WK#aB۳;yROF˩^2X1 <)4mTUdը4 ȵc3P1O\'(L?]J{||-UOjk\|<Ju!I59٩_;Mz>T>K1W^F:ÖR6&beˇM$/YETR䙕ļxsp iP/YLa5{ K -yo,F'=Cnxl;`%mwoh`o(A\=#TЇZްT6ԞPHvMcwVES"}G$6D>?gx6O+=|d2˟;l >ƫ9΅ʥ1v`Tb]^ެj-YOC=镹jQIOnu&$iVJsй^8!? -6.D>LSh $;zQ -}A,R:Tc7ǁq 3*.<VU5ܮ 8 zЩbtpt$2{DT2*KJwnlR8vAZo`DLok}f.wi а+hI)uxs٦@w&ڿئжIܭ}h -Ak(C1<BO$ݿ&8 9_LZXz.F ~!TMzd -ƻx^wSzwA)K9`Q^4[,.#M&,3"_;-SHHpF4kCwTJZ&~>nu -i1$mHL&X6|rH :C.O56 "ஸRyu(in;27KQ(9ZH kUi -f"fM `3ޘʚKd|Y&ƖPhg?LZ ?f|=Y r.rB)e$K"<2?8Aѫccܘ!Jl  r~tSTLu'M\Aj+Ƅi 5OG8go^'.l aG7{59عsK$L?2{0Tl述Yń~1k1{SkZXq,RmQ:gPTS{*8W2D]H}S?)iBV5ķ4):9Wfcs;*VzJ™A>dvrhqX cb&:jm+[16dtW1Nī}gNӴ?'RՄ۽dXlNn')[)<_$LoyT2x w Oo$‹]Ⱦ;F3Yo3 - " -?[mzlX- ޿R΅ QMo=Cm`!1 -YU#AyUZv8~ |3s&ˤJLn՟ǝ]?Zʺ}jF `i>{G A-& K }(x]d1 :dm~ dߊċMo׃v%ۿYsD 5xA8+I귩IIpYat!&XmE<.D`ьZ(gVB]-㺁tjc!k(匀JK'gc14cu?;oTo''E֣"xL_ =$Icĉb WU"HꢟĘsGo]k/{,]G+78&vXi:B,!ѐG"*qDŽQʨ!24_!/t"k?h0>u| zՖclŽ!uÍqsR5H$puYqXo#R_\5_?!IgF)/eau'AVdr}Y'kfVu9 !p죍e S`*kBkO}<|OA)C )ʝBങ(t* -l !2N/E>`S,RQ#bM,TYb}+`6kGe9!6$?]hJ.?Y @w԰dlptgURɡ-(r _,R‚nuX)"V@.2*I/`>/ {V97 >eŀMN\N#/ -L|$!d JKؐ}-T;0_, k>!:1OSt0J@uGXSBgc/ԃ N<^9 Ք\I4jՓ9;k a:EM -Ple+pkTl^,Xe_UJe@y}+blKWZ:,cyf0\0ZSE>˧=zpG\y+[[yZt3ߍ.xci^;'ArM;]=8?V6yʿUGF-m4@wc"VaU-#cHd#]EJ:I/ï]S0_Cٍm0 W,Di$yw*˕ck#:G hj-RXvtd?XKakZ|^2biBMd0F(glӆIcԙKYV:_g7. >i@3&үI~SMeBa򢳕=܇ O8Gq A;8alU`>v_#*A" (N?Yz{ZU'4."Qkoswa :7F{ *hw,btzdth.}_p:\lGo]v%J4 7Y=}`%WgE -GuEDԥ;d!/1kIfYYZ-Mi]$!r -LTV=o -۽P߸Bx=$-6){wk(@øOHUB ?rl6c>uҔIhկU}z$ߓ$j WB_= D#0 ExZiܤI}կjW|ƜڈMy-[؅٠ޥU$bxʄ&PznXAz^ |Y:˚pxSe9k -umޠDv -Ibף~)bX|O&g I'u!77X*() ݥ}iTl,Kͯl -ܹP/o=K5)k9 ,!P_"#A4얹l1CU_fEiNat u*H6VV F+D̙C~Zk+M - JT<5JŵE]+D>B8]8Th'/!7?TknG Ro7y>")Ɉ@aN J?$O@_,a4ƀy@+ ;`FZvǺֺeeG X~&eu`Oףehy@W)%u734T^vhά$ sv,$ 뷓xR| ,W]ץ#0*4>xf'FIc؋et7;e;˯y *R/r3}Ks9 6{W?i#UgeV}yݬLq#nʏƧWd1vۻEg]Èeq<RZ=~Wy4x*-%VVնQ -ЇMhaQdөy?fx>> QN[sv .Xpru -ݴ+I^DO ;6wۇQFoA8Oɻ)?A=+(*ajL2)㪼PR*C*(}syXq%+8x.Mڽ4cUb{3]*suSsr{AQ*k.V_a ;\rߒab2 :GO/>qF'R$5*:8~K[̟/Dh_%1}Vp}#\/9`S/ |Va؉s026,GWd=pHo6<2n^ibkʗu!sԳrb{vb)`7c<GN7%6$PB[N/f U@]k~'/_H7`"oNF^Jف}-c\žsY(A7,z*\֟_~ |O -hNN9vG'Ug4R1L}ݷ7Ar"s]D̜*f8>5#!]J@oxqrh߬ڹ jB  Jže)5薷71ӬQ^uܐ\#:<+1382ɜiB+WT^"a~J7Xi0`'_&Eg̦n3n eŃdTF<>p .2ĩ ?j٦} jXXcT7J B)Nc6+'d -Fm.]mD!]Yplk`J sTBVe졽. k90TʶņrKj,fh32zz9=d=ҡ9|4ophg\TI6Òҋ3ݪRT=$?ìAd`UƏ`ߌ${sѥ * .VlyƍK jfk yؒ:wi{zNكZ]d_"HJ?e`:0H-Q1vCt-T"w)׵{pδmF6gM_鴓0(K(m`Wkmy⯁+0ugIf>W -ƅϛ7-DiJG_)utU -",%ULڀbM!qxE~Als.4fH"\¸Ա _wgB8LMLUyasjҞӽ DȚ -7nOWHg~7I' -ȷ[MVw 7SMR4; J?jѿJ\덈7Kp (WcB3 @_zdxdUR .̺5msHIxIrt0Y"t/Y n.YUwAYʞa QI4sͷ`Zq{x73KS6FpJş`m,݊!iD'@).cAFkaG34Lkubu`wmS0-.)Z/ԥwhC -M-.Fx*Iw jO i㟧:eȶIſ:܊Hݧ-rh\'̒R_TgGP ZquSAA2,ᇉ^ϒO?靹Mw6BIxpDy,4ՓAG.WA'R(ZǏh8Ͽ?3']rmRKbw`wBSvgMqL&"d4E({qtf[A\ʻt1ǞRRy# dEtju Y*2?.T2>Gvwtj3^!E3廢XUZ _|lmE_r/-ϳٽ'ILRQd[a˴TC -,Ojʊb?כ:m~U]†^E_J ciG:OKá]QHqz2n_y#uB4oXL7:nT5Fˆ)L81C [bPN.u{2e$ ^%8=%I%u-^"m.۸~:k@jucd"kDmZTMc"Gtd$. $  */a+wz(SNN4jU@7Ku7$-椟xPU?v0&T t8'9==!E'рl>bd"}r hCAi\88;B8RpgFaT9%:$+Jhn ߢ&[K45?ۑR<~cLsoEpdអػTݰj\#2 ؚF)^ 5.6 -k4ݗي3J)bo߮k @I_wz -eHxw.=lO:Ї(=V{/k?Ib"9Rdxq+'ͺh'{1etb|ў!ݱ -s7M9-@ЮRB#:މףlV̌eUwJ"1 CW|M`/n$wΛ_7S `kssމo1,ؽII䝊s>9y U.&ˁ:.mQG-+NM91 +oc;jAw-=%W)-{ru)rAE(@{빴Q|_R +ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ +}3{Z2zݬT2s$Z&{BJ{x< ,-.2iRnñvپ1䠕 '䓱_r"O_t3kefBݼVfj9ҳ 7! wX: 3Jwͤ푘IKjfWI.kvCW_5gWZWO~]!K"x؉ruJԥ?F6Jq>B^f'<2bSz>/kaɾP"jt}[#[p__ @Y!ɹsu~/8MeC2+{x$*|܆k)D 3CҊUDw/Õъ7uS2v΁ ~ytKd"f!Zυ?.ǥTmBlHEU[ZF`Qy)`gdeFIrU-J~xg4KX { 7$O@M?\(L⩎z%KNJ`ī}W6ĠAP6N錛"7`ܓuN +SX@*i,xIۜ*O/" +t1;$l% p#B+}ڀ'ƱRS^P˵aF(~#ۿB(I&@}-:{yA$m:'}ӧj^\ĺ>segz!,ܵ/u-9u}eIypӶs$dNQ/9<` _`m;4uacxr!LB Cu"KDPoѼczضgӅj=>1Im9!`Z&USYQoeȲ ׿ 0G> ?:. Ndơ]U5=:-z6g&QZI[)( Q ^6GB϶)Cflg=У +p#E뎶o%iiT8v,%&{6"I"Pu>Ul Ҧn}㪣ujyH^^?"8AÆKh_Wq(Wi4s_޾"/b,zVgl8_GjjxCFTģW"1v&V@}B8Wt9fggs Km }x[!.ZCgA۬<9vD(dh9,oK4Ѐ?Xe^E>miQ>L +|(2>!*'%芡N 7Ԣp> Wr1 N{L:+>+͖:U)h|NS&V<C.ꬼVݦmwҧG06RY H&9g>1iWI?ƗųȦ2•Y;yӂgo٧ji]WQy_6K1_@H{`xx +_gg\It5m%e|0/3Tizwq}ʖNIAeG ='XC8o]?ew(m*>[G9贰c.b7Eم}S(EJ~DRbx `bn* GoB)7!SԦ`o ?9h{Fk9B +L1yo(QG$0װ]3#,OJ8|~"Oog(ĻxCg픻4}Pe &ol0' %Y>VNo؋lj=;xĭ3)!GtfJ](2{)ir18/dYY1AgqHus'3;퐑˞RNt(n> +" +O`AoxbE ҚO(JݸtGhacb-iwS9϶](?##ͬ7ۆDh,,#X=@c 4?q>!7'CR :p\(rGVIʵh3̓1_ +տӄQsbv +tü$>y=-|犬DHB//gm?SFOEn7UߎUfݢ׼Exmþ_DRan*=vߕ2teX|uj 5Θ*{txbl&V֥ !Qz>!)x[5&\#@ag$5$h;mUx)|Rpf *YF˕Hs- +*=,$4zkbkv?JTEz0X_gS"TݿEԓfY S`9ڳs pc<ʨ?Dс] BG?8""t9ES)Bx:oafD&_<( 7NL'%_1T69ypF>\'Cx~LN)VޔO0"A \ũwyzN"3+aYI"" [Uw4Gׇ(ឳد4drچڨa*R+d,wVm~A)|Iy@ +A%0nje<3D]=KԪZ})Bi#ycJ&kusgWE[Rw;)TFY߁΃0u, LTˎ!l6p(RJ&4ҧ·zD(8eWEO (bHN9I2qM"Jp߳ȉLx91( j{x^P@XgS*HXbe&hZ_OVQ#J;Ĭ3q6KXQf M<PdhJ iJ@YoJ fڃAyuVi#84&D:dO&FB+0M\5bDl[Wj>Ju(RܨЗŇM;UFߵػ6ct(Qm})mh i1rn)Qشξw/{I3;4gs,dQs k_S+y>{DK3-z'C,b!HfYLA~q0.f2nco,g5r#|m05oJpHCou{ P1} i&T k!kZeni08amql!2ŧYs}ELDGS*)@N85)C,wҚ4=6"Mzt]AJ)]Lr*InC^Q!IQVZc2ՐU;BFbFկ8nXIAL ^*‚o.\SYIuyXs? 1Џ:GdqN$JgnLs{BqY]jfYBr뎊i5pSCq: +99xec]R{zC?yOS.+T#`J**Or: 1-Ga"FXb2OF+< PpT)Y(aVK +Zѡ̍@ݾO:r^:M9s q@*DY_<Ib>Ce[@Ч]%Ȁ#K7Rjk2A>&^Rz=f)gjAݓ'xbBPd<^Ҏ,!ávm J!*5ҋ.5(K>++4y@B[Y -`͑!-|RVMr6 d$jwe(%.`. t +`n1h nzeR#nmOنwwOu*NkxcV9Hq82ɤ3՛.S+@&\]bWߡ!Nޥpa0fln +ED pCr:Q=̝W8{mCUط;Qtߪjƚ|YQ4C<ZeoD>소V@R6I+jiM׍.;}Rց0!3+B04OqߤyDpk~rVUlF=~K,܏ Єʳre!3wr |fж|l24"le֙'IN,5LkME(9hRGM'W vnvq7R7nmpXr8&kfLSHJXiouG}RʵV'v-LXri'Uyl]MQh `(i4,p&\3}v-'ȳ=s7Fyv_auLBDMڸ{%ip=^\FR%-43}Hom7vѓ/WJ MUf#[\8iPʹu:tMI2!:1EjWDYvvEPrwMS-޵~`Yi +}TK1B +Aϕe(ߥiU en7,z r|GVdcdK{@$ + `/ W[حF+}SS%l4!_'#'0 S +|t\Bl X}{5D|5$YϮ81ũI[̉bzE/T?=Xd +҂' p)l^@*F}a>>3+f2m͏ +QHy[*x'M^)D~)\im h>I}d@Bܮ|_2_ W3wŭ8$& +I<.\pPx~G<n/CRNV1,oJ0k͈9Qc#PrK!Fn(3aJ㻭FQ +R!9neU{uKR;dZ9@úG؎ΒJI +%/ bc(#9kܬzvI,x{'Bd! <`;8'|9ٜ7b"65:XG)Rpw,m̘߈QGFs&Zٿ=Bg2 vg3m7whHA *'ClPCqv)jgBu"WɊ>l]lA`=R>tF7Y3;'ߊ5@TxN@; +xAfasxgs@s;hi~% +6wÓMz^:FݝX +n`1jiaf12+qS%Z B#R`QD11E.rlz6Ob +Gwq'ΝZ;x +_A|!Kb2'Rl!1aeVΧDvr!Kgvݤ`6s/%\AZɡpP"%{\uWw^t4S8{i%Z + 5vxEP*x5xNX\g p%W)E'C1~ M}`셊!\%2JiM.<q'΋Z,&+r hy- +f62n~mٜeтn}Sca+59#^6G-[e\ bJ'ҏ2PoӭB$KQAl\A7oBb"Nsmj1 ~J١-Mԏrt.|%8&2Rh(.7Ak+Y@_lP>[?Ap e:+u[tK ЮYj^ +)&D-/``>dSA^րÓmçWrL-vNI*]F7-QrT;SjP [~,+/1~NJ_R)STZxE"Q+gH +5zGohHsAK*m5cЃ&3($~~\Ʀl#u7ٶױu$vq!Ѕ{+ڥ+_:G uKTе)a[Kb}@_#!ULWlYQm+X0go9--?{OD5,'p 1QzrQBKUiq7gf@0Rtъ[%z\\|:TppE4>:xГҋJAӺ==f0I$ + 1uH.XQg+'?b+wc` OKSo4G ._S79u+~UX C]qܴ; i\hgIg텬AɅ}BEh.zzNp&C&':G2$VIMY^W=n1qQ]8Ff/ivCCSJC:_<6ah&ÁL'.dUF8nG0d5e_Vn_~% 6Ix.|-uKMQ'V@:"vzsMGB;.׻,yD!{'`J1Y|ØXVFπVpK>X S.4y]lӇ'xa+R<+TGF lGQOߗiW+TN3>t>#*PQ+lWQG1剘dPYջ?&"W]VTXyM_GY_ Aa4D_4v\‹/T^u4sUw ;' |i$V0TOӔ!>9ws9\@C"Wp Uu'u><!-/׀S4DzIy<;k)Nr|JՀScs'a+?JƒPCmGMZL-wftX<83<EjIZh:{4A'kȅQ[$qlDɊ +L??왷dA6=OE@u!!PU^+:wd,_GdfHwNudGsg㧺{YpztqvI.W#bSe"\/d`qUB.3vCiu;Okk4JuyL@e[eRm-*4&;MZ"{q[%mF70t3os]z>U$i5qgO5SkFlՂ"x +hRc$Чd5.ntvMVYCBq4땀Nj%:Fip8eEa9y$aMP +u^ +<6S O(}BTcN„{=REK*[hqocQM=q!&i j9и,P2?: +s1΄>pr!y`# }ٿmz텏0Au; +%nƺ6ظvcrcCMݝ}37Ev}H~}8شD8x T={m=}0UюQiUBNlU`u8r0{b +zfЌA87'"|~*o6Gu4Ԣ v~8lAƁ+Wu;aMsMKmK'O.PM +i AWlPx*2aK(n8S46V:p̥OXNt0vGmC gZv3dH`PPM0? ؘMa &oGï}XU} 7P~X~jd6tIU*"rCuDsM(UA4|#,a( Т 20n4 w*h{qĵ0dIaqN$Ȝ'1t2F,ʴd X"z%L/+fvO߂Wӻ2]z9% Xi;WV/hP0[$ N 6`ui@|OJ8*>p[d_'EH(U?ot~}7 dUaZh_BiOE'Fj֙x'(Rs=Jt2'ky:jK1Zn˳/ +W=USD dU!` +E|I rJv2 CZQ3q7Zef$ pׂ6P*Fzc`{OyCfk 6wӕu93NSM'm Ofu/l^!Kpɺi̬UQĽy 3[p3@1'OneA0N ' ԹUھܹ#尵˅>bB&в}(}\5i[(#/SF)ƭ]ETn NSddԋ7|.~.`lΈ)}F+и]03慵݈x$ 躕j% +}uLUc m(de_7csev Ⴒ o[<} ;J + +Eǔ|gJ;uw9YP֚J 癳kkbO }˦әMֹ1{O/6z1!Ó]ۗwh+995'VGӎ^P$#s:0afm#Mtr6;ԓ| rm4f{C&qhN=6M$hnN(je +\+Trq/itBaI=XOh#%6nN.|Nq,T""*t,M{(hsˠ [gM;<6 +€'OJJY#6GS&vē͖%=Cd7]n@P~'?E[>""h$n6T^8|~ꛩqq~sb$7|v. Z)-e)*ShƀQ^Zw'F#XAHjfA<)W%uCF/PSV~>AQxg^?qD~b̆Rt@4$2;n}]MrZuk +)O>ѴY%@kor!%b5/;3Y~̬j&Uݐx{L)21'qP{rqJ]2/2k 9/_ݵ}Ya\g]+-f۫rE}72z.kfp4ߑ軫4wu'I$V T,OAhְ:9n:#6V^=⇊$5#k|}fV>Og늤+ x5hXyk +IPE^-\šde -T5my`g< _^vawnn^K޿eytjN> +a/z6|[c{'3`h+Fs>Ju]| +8'SGG 2 +endstream +endobj +1987 0 obj +<< +/Length1 1681 +/Length2 8374 +/Length3 0 +/Length 10055 +>> +stream +%!PS-AdobeFont-1.0: CMSY10 003.002 +%%Title: CMSY10 +%Version: 003.002 +%%CreationDate: Mon Jul 13 16:17:00 2009 +%%Creator: David M. Jones +%Copyright: Copyright (c) 1997, 2009 American Mathematical Society +%Copyright: (), with Reserved Font Name CMSY10. +% This Font Software is licensed under the SIL Open Font License, Version 1.1. +% This license is in the accompanying file OFL.txt, and is also +% available with a FAQ at: http://scripts.sil.org/OFL. +%%EndComments +FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup +/UniqueID get 5096651 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +11 dict begin +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def +/FontName /IMOIOS+CMSY10 def +/FontBBox {-29 -960 1116 775 }readonly def +/PaintType 0 def +/FontInfo 9 dict dup begin +/version (003.002) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMSY10.) readonly def +/FullName (CMSY10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 66 /B put +dup 72 /H put +dup 73 /I put +dup 32 /arrowleft put +dup 106 /bar put +dup 107 /bardbl put +dup 102 /braceleft put +dup 103 /braceright put +dup 15 /bullet put +dup 50 /element put +dup 21 /greaterequal put +dup 20 /lessequal put +dup 0 /minus put +dup 54 /negationslash put +dup 112 /radical put +dup 120 /section put +readonly def +currentdict end +currentfile eexec +oc;jAw-ᾉYň5t&נ{hLGqB`d˗Pة|*x\ޖHtEB-gedog7Q`[['W73sZ9 m !tAY!$tY\r[uTIUiBy[Ȝŗ3Kï6zJ!˒Js&B5C"m&`7Ӣƻ3ugNC O~̶uo5=_T/ h,$B%dʘ3l MoYLڶ~3^`12]=l8B6PlpfW< %PIN!ju#,.iXnȼ‡o$ҁXꑷI5V*E6tKo_)RPG;Z@9"V3TTLN Y:Akڬ6̠==80~DQ Q^br/2^KZh`N'Jt4iBYҁ7ޟBU_~\fXAZl_ZƎý'xHbG:"l5CU[aLrf 1[;4p^NpqBD '؅93M&9{ VD 8 aе2n.hf +l?K[$Gp/JzcF8vP3/XO6yAo~]WqDMY4ߧY̢XPEL2_2 oH{ +1x'u|o WNRE홹&lF\LRh1Fb}+l C] (vfo+fM}l?c*ވ"^R]miKOҎ!I ӲR_tW;u@(#t*̧ U{|Q}a3Fl8xtHWA­;!V CVov?³;=>,㧫\"RvRCإQDh +@_,˜kbflAIP^wٚdIHzk(c3xɁSUPIf{KΩs Y/v[L%O@HdjyTõVmqgC9zTC/t~Řo*9rIojUKxj. ,+b1ֲ IlDLQZ3P-no'$F zg!Ј*oj-Nͥͭo8KwQgݍp*1^.֊ LV~m la ]%."`_QipŎs5y.Xͮ)Td1Kk̊jn0zGqaWQ%zJX3tIy0ľ.#[#D#EԂppF*ޘvrOdn7n f9*X:>Ǽ:*Lf͍9&aj;+{0 )AgðK*XKV'zZA) n TÙLJ^Di[:s<ܸ2!U|#5VfUqP}|=G5O|Ps9}* ++gpA,,=|j25Cɂ7 ./Fɹ0tRẊ."we hPempJo@▁_A3QBV~$9Ej= +]? {w_53Fgӿ4BAq41Pf ,Sş6r[v` xG$.} ̔ϾF͙c=f!*˽./wĉR8(@ًz c@N&Imݣ>X!me@lW"VCH8kՑŨj]n3X>Jz?D=Nbn {qbY(>"8*苾ky3o H Dw] d{EʥËw.$Vhtzk$kk$]4cfCW@3plQQ晉b/pTqF8_AnQmK{&z;<տm[i7뜣'*qXTnt<Ռk/?2m)fy#(`%{!Q/0&sxfB+rE[tgOKQ$$=ל?d@3c)]3%*M}H饞;Cdrp1jFcstG'C\p))_)( MM + qv&C3NLZswTPu{sϰP+-UFUP"KΆ+Ye7?0(idL;gk9(YI-l`;`AH:YHb1H{wR^Yњ, +$FԖHDV?pyїP%F=BGKPh~N[I_ꈀCTzf <Ӗ`4|mE1J'$`}R \N2kfaouJ73vKW{M3?׏M]:W;vX;B X.PI;?!T . sU]䮃=X 5rMt>y=*bC~^ tArl'Ŧ\؟L냡P&7ttuGz;Kg4э;u)";SvC~?J/F"6U.0>+KQӄ0"ӫ=sxoJ]ת!w6O.}t5V˩+7Us֩yēTC5GrgU5$&|~G8 Mv(jt Ϣn]]QWOؑm. R[ИoNng IF:?tؐSUOcj2Cm[O7>kWkX' #t'Xd9+E7Nd8{]m/ ׎dvYYwop!EP7F?ojP9"gBP;B^QO3*B 3un$I_Oe` +$`}-9Q/ĥMe?Ұh]b _2<͖+tª[ϜJO@%MI tv\/bMVF05+kI2W9>f} Ķ3tj|" +[LhY)o57k#%H\,x|ssxH͆|;` v%گT[c]e"GUj߫ytvx:udQuZy_Td"b+O]lx'6w6XCDKOf(g@w]fV[~1F^A3v Ovү2v +zT0b#[zyϒ$e1k5dRA`(Ņ@{=yW>>y@U;=H;c{30ü^ծ)ՙ-{OO2R´xQwBgБS"תlbz;Iy\EprkM @@e&3lʉtS%)/pR"2u +Ee5+ٰsZ'bQSlj zvހ~%.Kz\NE,eV2=Mo)-JcV:U2Ѹ>1ȓ"QWOё4*Oz.cjcY&=7Y,A5nIF/?̊ ]as.N/CջtHG50x}eb9S&0rJHN\?^4'bɻ':K`wpcT!_ H݊{}HmZto7ʫߑQǷbi>ܜZOddFտcc +$" |hJQvB'\%63J)Ag+Tʍrn&^ܼt,Ks+,ݏ8t:EFH9ȇORJ3*R ! .-ur\96@3j&SШO(?iIdYFC㙥mƩ(#zLaj3HԽX}/-(oZI|^VqPLH+Ս|:%Ȉÿ!I,疨0Ni;"% xaIXwlr}ap ~/`Y}K_zLźL'BH:)\E^Na>oڿWRy1k Zix^7}X\Xzy4^obrsw~:?8`I#x=ۏFb7>&l[cdh׉3/cJђkr- ~ kR8+|^H|edhBI*w2e+l O0ERÎX沍1Ip vaXuޱ.92^:po1-<z:sA!;Qg}u^z8uz"ks?]-^fﰥ=aaq/mpȺhBZX<,O([E& +U;.[xU7:SK~3F?=w1_׫Jg!kL;i@W+v5kph@M0nb~]tV~8n?VY}~L.`x7o\/[=3}#[_|864)_KIh + +'XFXC`(4\QӣWSB_"DR Ѳnx +R +i­HMU{␙.Whv7|+-`Xl(q!WDCò((,=+DJ+8{*`a&<'?QZ7Eyէ3t9Xӥf:yp̩RF3 Gٺ?G!7>u[I;y6끅ſ r.̡K7x)@GdĿܶr0Yu%wkl#K ++|;{5Y]RMjfv׏V+Ҽ-QxhVLpy$!2^(e8K )_fQpcA;M +d +bϛaZ``Z@A]KG LVS {oϥ~Աkؒ=AOGV\IEA +Ui +&)67\n:-ZyPC0Cc6ISAdx!Βw9@@J`{?mT0jVEoyPɒ&rfHt@D `lˮ8WpzF ]٣pۉ7ۆ؆6iV2[¸zEP}[N-*bKpGx:SLL]`_C[^^iӍx*]i#43&b1#;GnmT$mjdLxYl&h'9gc[@oBlgf2OZ5/"Ҧ >6ysLDa=6/2i|k\F`ew`ĝgL%5 5'lfG'x:? UPC0^'\$lGɺ'vC+@lqs5WWsTXJip%R ACQ_OAa,1[Ό>m33tgX)87pa 4Ѩvz1|q䏑}z!Z . igk!^Oӷ<(t-Bmhuttu9m#@l]YHQ6ͦںGA{2çڿzZP0d=-LtQy)lZ7Ie +u +%d$ +endstream +endobj +1989 0 obj +<< +/Length1 1392 +/Length2 6093 +/Length3 0 +/Length 7485 +>> +stream +%!PS-AdobeFont-1.0: CMSY7 003.002 +%%Title: CMSY7 +%Version: 003.002 +%%CreationDate: Mon Jul 13 16:17:00 2009 +%%Creator: David M. Jones +%Copyright: Copyright (c) 1997, 2009 American Mathematical Society +%Copyright: (), with Reserved Font Name CMSY7. +% This Font Software is licensed under the SIL Open Font License, Version 1.1. +% This license is in the accompanying file OFL.txt, and is also +% available with a FAQ at: http://scripts.sil.org/OFL. +%%EndComments +FontDirectory/CMSY7 known{/CMSY7 findfont dup/UniqueID known{dup +/UniqueID get 5096648 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +11 dict begin +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def +/FontName /XNLILI+CMSY7 def +/FontBBox {-15 -951 1251 782 }readonly def +/PaintType 0 def +/FontInfo 9 dict dup begin +/version (003.002) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMSY7.) readonly def +/FullName (CMSY7) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 49 /infinity put +dup 0 /minus put +readonly def +currentdict end +currentfile eexec +oc;jAw-ᾉYň5t&נ{hLGqB`d˗Pة|*x\ޖHtEB-gedog7Q`[['W73sZ9 m !tAY!$tY\r[uTIUiBy[Ȝŗ3Kï6zJ!˒Js&B5C"m&m1$0m jAirOJϴ2&7.BbR{媀E S.9/wG<#/[ә4ػjzzq,I˂ڣzx b-NHa?C*֨i֕,'u?(y/$p셝srψSCo&ͰBZƎJV)Hɳqa?; j!8·'(zr>0t~@B7>tXv=ֻt*ch,߭y%bwbc2 +At5qm#O:JjݒcZ$4HPv-V[(a75feLԍ۱2_xgc^L|_ 7Bc콁1'mԂ W +o bKPfAOܑ`Ax2zl 6܄x}NܱǞ̖cv[^."cvc$#;a$3|4x߽ +(a@cRn6phؚZfzz?K $YJo/q.1f JBw'4?}D/& Z=Vͪ7E ɍ}ʜDtǪĿ!X96E'<m&)JSw4!3δͺϳVJq,UZÄ[JսQK *L8ⅳӣ@0g|ȰF`Tk2қ׍Ƈ#xb`Y@ ɞno{avXik$i='CPEs&>#MX6E!H5&Bc+.s1(R9 PZSIA H){y,䲚9Ө蠂ӎTs9hoqVa#ai$% +eq#*!24S"xSMGd+׼d.0rMVBhQzо;7XbGǀe4oxu$]'eU5 vi Un2\=6XF%d蛳F!@}}qEybaW!izsKB/)PȀ(eKϯXt-}V$3LygX4rG[~W 3d<Dit\_~/̦2a(V2ڼN5>DLduN7:~%Ǐ|4=R/X)$I՗- oZk~%E :A@%!&ѯ3f8ldMR-,0Fn'YGwu_*bXw=AYq>\;B *Ps: ykX`ƗX){qbudog6Ņ)Y>6!X ]|Vmby1\2=謫p@Bo=EpV5%CWTn*q 24L&}5V $10G^ZԖ,䴧yuUCFDcl|Nz Lj-w>O`"'ň"p= yz!ӡ >okkTeA\-UuC6blap !]/ikqU2ϡqGG5fW I2S56 kD6آ=rE1?t0_L4*+QAQ02|ۖ]IX۫Ջ ޜ* _R߉Y%N56_쾦fr[pSH1+ VsĤQ/yepԈ+ Zܐ50Z7sk{15ֈڒ _pƴz hN  kCJ LgNOM\2 g+<}?j|;Oz^h3ػ$68F~g?_8{uhx%4|BAij%Q8[7 gT{5p~ktGwԈ2O3 fXMEO ތPHb;'5 5AM#SShᘣ vq-DnZ;ڶϪMX_IѲOp5a B%9]Z!; vK4Pmb%ۦ{) sqH;jv{{-k+HOWͦO:G2y>q(94(kB^oR[/~C2 %k M{p5@ew?O|;䁾džyF1 N/hXjlhwTM^^meHa@lU"!ZkÄ>-=IJ-RA*P@!u)v]e$z_;Wr<E :L=uD I0CƜzǿ70vR[`)+:|ntsy1~u +|SYi`zrF{jGE^WH7(g}MV-*dqα[^ ׈/yđ 'Ti:yLieIFxpQ,iMNcgWK<UĭOr--t +c%WR?7PQ4R M6z^(?NJiw/Sf +~'|෕N5"~ 2H*/ ~/b=/j1>~Dg(ˉ^`evs $t=Eҝ;e.\-G k!*5vٿNPZKk^wc/B!co +ךkC96M­д1z.`CMkfQ9b}L&>}x^baљ0VOH:^jJ 7kwVD= I˪|΄ׄB| eJ+7lZMڳ7A4TPpMΩURf+1啿*wΫywf#Ά) }Tn$LXPY80m]-i)eS2oYlu[|0j\<<[@ w)8Áo ڿ()H)g={ѵ]?E~T(X'`Tʗ" A@a8S$S-U% +i!PVyZsuR}(t?i_a| h{ڹJ-س`xVD&`p + ıjO-N5VFG㝽*Kģ\k. lXSc|r[]͘Q&!aXt[rKR_4R {!%3.} +-B+ޙi~Ճh K*,/hPj{` DCw_h/p3eH/IA)ik#U ]`&o(k3>al=K +/3@A|G+TBR׃ 3OABl{sl"17 k_e-QNFQ +*i=F8*%=Mm[͡]7H/e/cEr\4tE>I28ݳT fL C#h +wBūdr|{T5Qo2?PmeЄ.-Ϭ]lƿ84c:üSR($t}< +H yY>f.RⅬj }+PjE.Xg8KG_0!ozW*4]xĪ 3m6 rj͘uv>lLWwPNqGލu2 p;ݐz Ih=IJ  +RX+%FR1z +D:g{Y}3>6 KQhl [Ć.^^c}.s^֜G>?WJXe і{*nxzv4y۫tQ/x`k4ٞvqK_<-k{怣;-fژ nοH̖c]rj N?HvlYng:W u"k%N6@ |^(̮Pr@̀ endstream endobj -1924 0 obj +1884 0 obj +<< +/Type /ObjStm +/N 100 +/First 989 +/Length 18652 +>> +stream +1879 0 1886 132 1888 250 561 309 1885 367 1892 473 1889 621 1890 767 1894 914 565 972 +1891 1029 1896 1135 1898 1253 569 1312 1895 1370 1903 1463 1899 1611 1900 1760 1905 1905 573 1963 +1906 2020 1907 2078 1908 2136 1909 2194 1902 2252 1915 2449 1901 2615 1911 2761 1912 2903 1913 3047 +1917 3192 1914 3251 1920 3370 1918 3509 1922 3653 1919 3711 1925 3817 1927 3935 1924 3994 1929 4061 +1931 4179 1932 4237 780 4295 1933 4352 831 4409 830 4466 786 4523 787 4580 803 4637 783 4694 +784 4751 1934 4808 779 4866 1935 4923 1928 4981 1937 5074 1939 5192 948 5251 818 5309 785 5367 +782 5425 778 5483 781 5541 1940 5599 1936 5658 1941 5751 1942 5796 1943 5935 1944 6122 1945 6616 +1946 6945 1947 7288 1948 7417 1949 7438 1950 7944 1951 7989 1952 8679 1953 9007 1954 9088 1955 9463 +1956 10100 1957 10759 1958 11387 1959 12031 1960 12316 1962 12964 1964 13394 1966 13821 1968 14070 1970 14312 +1972 14646 1974 14863 1976 15102 1978 15324 1980 15860 1982 16097 1984 16345 1986 16727 1988 17093 1990 17432 +% 1879 0 obj +<< +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R /F11 796 0 R /F14 813 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1886 0 obj +<< +/Type /Page +/Contents 1887 0 R +/Resources 1885 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1883 0 R +>> +% 1888 0 obj +<< +/D [1886 0 R /XYZ 149.705 753.953 null] +>> +% 561 0 obj +<< +/D [1886 0 R /XYZ 150.705 716.092 null] +>> +% 1885 0 obj +<< +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1892 0 obj +<< +/Type /Page +/Contents 1893 0 R +/Resources 1891 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1883 0 R +/Annots [ 1889 0 R 1890 0 R ] +>> +% 1889 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [321.343 574.94 388.401 586.065] +/A << /S /GoTo /D (precdata) >> +>> +% 1890 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [321.343 499.224 388.401 510.349] +/A << /S /GoTo /D (precdata) >> +>> +% 1894 0 obj +<< +/D [1892 0 R /XYZ 98.895 753.953 null] +>> +% 565 0 obj +<< +/D [1892 0 R /XYZ 99.895 716.092 null] +>> +% 1891 0 obj +<< +/Font << /F16 582 0 R /F30 810 0 R /F27 584 0 R /F8 585 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1896 0 obj +<< +/Type /Page +/Contents 1897 0 R +/Resources 1895 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1883 0 R +>> +% 1898 0 obj +<< +/D [1896 0 R /XYZ 149.705 753.953 null] +>> +% 569 0 obj +<< +/D [1896 0 R /XYZ 150.705 716.092 null] +>> +% 1895 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R /F30 810 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1903 0 obj +<< +/Type /Page +/Contents 1904 0 R +/Resources 1902 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1883 0 R +/Annots [ 1899 0 R 1900 0 R ] +>> +% 1899 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [333.769 276.229 340.23 288.268] +/A << /S /GoTo /D (Hfootnote.5) >> +>> +% 1900 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [294.721 134.549 372.239 145.674] +/A << /S /GoTo /D (spdata) >> +>> +% 1905 0 obj +<< +/D [1903 0 R /XYZ 98.895 753.953 null] +>> +% 573 0 obj +<< +/D [1903 0 R /XYZ 99.895 716.092 null] +>> +% 1906 0 obj +<< +/D [1903 0 R /XYZ 99.895 446.608 null] +>> +% 1907 0 obj +<< +/D [1903 0 R /XYZ 99.895 446.608 null] +>> +% 1908 0 obj +<< +/D [1903 0 R /XYZ 99.895 434.653 null] +>> +% 1909 0 obj +<< +/D [1903 0 R /XYZ 115.138 129.79 null] +>> +% 1902 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R /F27 584 0 R /F11 796 0 R /F14 813 0 R /F10 812 0 R /F7 811 0 R /F30 810 0 R /F32 814 0 R /F31 816 0 R /F33 1910 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1915 0 obj +<< +/Type /Page +/Contents 1916 0 R +/Resources 1914 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1883 0 R +/Annots [ 1901 0 R 1911 0 R 1912 0 R 1913 0 R ] +>> +% 1901 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.53 655.098 412.588 666.223] +/A << /S /GoTo /D (precdata) >> +>> +% 1911 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [398.111 585.075 474.165 596.2] +/A << /S /GoTo /D (vdata) >> +>> +% 1912 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [398.111 515.052 474.165 526.177] +/A << /S /GoTo /D (vdata) >> +>> +% 1913 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [345.53 375.006 412.588 386.13] +/A << /S /GoTo /D (descdata) >> +>> +% 1917 0 obj << -/Length1 1494 -/Length2 2555 -/Length3 0 -/Length 4049 +/D [1915 0 R /XYZ 149.705 753.953 null] >> -stream -%!PS-AdobeFont-1.0: CMTT8 003.002 -%%Title: CMTT8 -%Version: 003.002 -%%CreationDate: Mon Jul 13 16:17:00 2009 -%%Creator: David M. Jones -%Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMTT8. -% This Font Software is licensed under the SIL Open Font License, Version 1.1. -% This license is in the accompanying file OFL.txt, and is also -% available with a FAQ at: http://scripts.sil.org/OFL. -%%EndComments -FontDirectory/CMTT8 known{/CMTT8 findfont dup/UniqueID known{dup -/UniqueID get 5000830 eq exch/FontType get 1 eq and}{pop false}ifelse -{save true}{false}ifelse}{false}ifelse -11 dict begin -/FontType 1 def -/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /HZGQIC+CMTT8 def -/FontBBox {-5 -232 545 699 }readonly def -/PaintType 0 def -/FontInfo 9 dict dup begin -/version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMTT8.) readonly def -/FullName (CMTT8) readonly def -/FamilyName (Computer Modern) readonly def -/Weight (Medium) readonly def -/ItalicAngle 0 def -/isFixedPitch true def -/UnderlinePosition -100 def -/UnderlineThickness 50 def -end readonly def -/Encoding 256 array -0 1 255 {1 index exch /.notdef put} for -dup 98 /b put -dup 99 /c put -dup 101 /e put -dup 105 /i put -dup 108 /l put -dup 110 /n put -dup 112 /p put -dup 114 /r put -dup 115 /s put -dup 116 /t put -readonly def -currentdict end -currentfile eexec -oc;jAw-24 WEvQC<3A2kX0k^|:ٴfb,|=sLu2KZ`3ndgRw@),q՜G<&h'. ΍883 ABAԾI$s@F25ڪ,i pK>6K` %E((bsP,WKT"0KDǯҖkIUܨf/+WN/r4qW@d̍OG|Babhy52+2upa,-I"MC㉮0גv\G\% ؊Z\+;7tamJsXPc0NqL%tWtį, );b&L}NֲGi$߲:[<+s\6qGq %E~@kִ[iYKq[ Pvbr~1z6>)廄\oxobBin\![(;"0:7w yqMomD$cqKRXr c3mx]FЅ4_~n} VFuM;[)(6!^c0?;mXBeotnEyx<Pq;A >O8}yf2rDՒ%s}w` Ӱߒ/3x6& ?gى.\YEII~:I`ԉlWI1{6oy"ޤW[͗#@xs*宓d4]'oK荛%~%j{|FA1@*z}\13%u}jy<=/ޠ6l@CC\+F!} k9I F _Wڪ+̚~"'K["Ş 4]#) l'iӥjI:]e '{Ͳ}|+nгΙY0ܬsdu;?Dz~!3ȷgǯ^@exVa؉HaĎqO*K{ډ %8;'FJ`K!-%lR,ܽx!z CB!1@ K=\ßߪb(m4wPZh6?@LC@8uw1rǿ$BKń -&̡Y5<1B dla;9^'lHn,W{Y[v -endstream -endobj -1926 0 obj +% 1914 0 obj << -/Length1 1656 -/Length2 8404 -/Length3 0 -/Length 10060 +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R /F11 796 0 R /F14 813 0 R >> +/ProcSet [ /PDF /Text ] >> -stream -%!PS-AdobeFont-1.0: CMTT9 003.002 -%%Title: CMTT9 -%Version: 003.002 -%%CreationDate: Mon Jul 13 16:17:00 2009 -%%Creator: David M. Jones -%Copyright: Copyright (c) 1997, 2009 American Mathematical Society -%Copyright: (), with Reserved Font Name CMTT9. -% This Font Software is licensed under the SIL Open Font License, Version 1.1. -% This license is in the accompanying file OFL.txt, and is also -% available with a FAQ at: http://scripts.sil.org/OFL. -%%EndComments -FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup -/UniqueID get 5000831 eq exch/FontType get 1 eq and}{pop false}ifelse -{save true}{false}ifelse}{false}ifelse -11 dict begin -/FontType 1 def -/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def -/FontName /KMUHVJ+CMTT9 def -/FontBBox {-6 -233 542 698 }readonly def -/PaintType 0 def -/FontInfo 9 dict dup begin -/version (003.002) readonly def -/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMTT9.) readonly def -/FullName (CMTT9) readonly def -/FamilyName (Computer Modern) readonly def -/Weight (Medium) readonly def -/ItalicAngle 0 def -/isFixedPitch true def -/UnderlinePosition -100 def -/UnderlineThickness 50 def -end readonly def -/Encoding 256 array -0 1 255 {1 index exch /.notdef put} for -dup 84 /T put -dup 97 /a put -dup 98 /b put -dup 99 /c put -dup 58 /colon put -dup 44 /comma put -dup 100 /d put -dup 101 /e put -dup 108 /l put -dup 110 /n put -dup 111 /o put -dup 112 /p put -dup 40 /parenleft put -dup 41 /parenright put -dup 114 /r put -dup 115 /s put -dup 116 /t put -dup 95 /underscore put -dup 121 /y put -readonly def -currentdict end -currentfile eexec -oc;jAw-=%W)-{ru)rAE(@{빴Q|_R -ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ -}3{Z2zݬT2s$Z&{BJ{=מ0).nBd^/!2-G+~b7 N&lds%o53NPc9U,Y뱂0L+OAdN;[9!"k_ӆ$Rb՘g uxVMhL$3Py5,o"7'*E<Zcb8r$`Fާ/r]:BI\$~=ԑψȜȿ!ꖲQS*_LyXg*!#B;Fdy9 vF.x&W܀cK[龭j - T-hj:ֲbcӢx~gk0^Z]Ψ&33g3wm2pBÌ:~qF邉u<^IE=*J.Zwc38Y.1jKAs;Ļ`R^yCQ4y &{uQgF -vlP︩ -e=Gylw -x]v&o9fiQpymQrijF\UBu :sy7R'T{cr/bzfuy-_Kh~ sӭ>a(zfz!#vZuZ"VUEɟw-@ i aI+ R̿P;XC 6e+je[7-^j[ -g93 ÅD c% ؙyJC=z[t vʩ>V3m9=Wp+l֏nׇ3g#7:Q@P~-u@ӱDV\sS;x; -J 'p -y?^CI $HGYt` \Lj%fxSڌrܾ0;=l;ÀMI>o C" - m޳I^:O|u.^Nuwb`95>dJJ 0Xp[tu^%ئ`' -0T I{ 6j=w ɽډ7Ș:{?lH)8OfmXn,ߗ Pii]X&Bx{5ǬfEޮDtz9nyB t+ 4,p$@x&|Ĩ4H~4J7B<«CP}uz|gr-:u[D\; }bUIS{27= FBk' - .~"tOz-3RٷZ[&hD|AQGCH :\'`aу2{=o>u&0߻;e01]V2c`CJ1/LW Yckɲ }c8LC|g%Y9.?e+PҁI4,}#yE؇]%T>},S !*. vt7[ORYSSԪ5՞l+>͎l6UY'_p%=]^:k2 b3Ҳvu\k!n2̋@Q*v}5z3mؚ/_~GfG쪑4,=5%ڹ]EHfnۀxRL/' 7.eϽaG}r -~) ]<$2uo6){QBX[#CI3je/NUX+`"P[\AXa|i Hnk, ? J_y3^c}|at <;1v@{EҬ /E7+?`+7TɈ/~2Fe匊I5)SXvNe BҮmy‰_14tl0w -3Kq -Tύ\Ӽzl]%bpg7G)t[VN~O^ v`v`чm -ňXh>r:9e1SNC$c% $¦,TM2COVe=S7u_{x $:#Zi1ʇl y ö^|QLψc&Hn) Ϩ|he }IMǕW*+-Z,dުyfmvԛ]t ;`o]WHY}'PN`SuBf$,ՕL=wm0mV l TOnt6M"X˃qDf0ms9?Ğ_mnH`AAmҚ -ܭajfnUۙCat/vPqE$NP^_مdv"TC[ |wҁ1|7B%fW"d6QIaҝE.Z;eF{N#{}?7yg -hS `tZ" *QC&KsulJ|6i$rEFXggξ&vH_I)LR*QgXuV,В"%_L΄"4vܹ٩vûZ! -Y@L{vߺ+N*Y+qi]/^L)my1=K ~{it{n?'2d,佛rt߳-F܅Fl L yfF?M_*a5պӽŒ!d 2Λiw/";qfW"^0$goaWvm.͢B/c@{:d"Av]P}C*&kx;k6܆xɃ% ^X2Lg]VmMhxP&({g^֣ ĤԒ|(dk/ܺHԔqJ'wBtgO`Oc \K*/g9Z<0vBWK=Q]a9'ro+&w@^l2?JVSVB]G G Oڡ=wf X`No{PIlYdfoY L?! b'UL%l tdNXF;Mv&DEc#GK∂ _-LݟG'r )~O* -ƨ01S7<Qಸ*L"+lk:z@N_qNyF@UZW0bBk/h:p!L^9<,_,&_x^1;t,_ -Qn1:.>4S, -K2~GLU3]q/GѭFLmι?q9Or-s*|V;ٝQ>WaPy -!?9%%: f2h~췲VFI#Ov݌E4r +]a見3pbSi\)NLeImzGH)(8+PdTMN&Ц&C|_] -oqhoL7|.29*!AʆRiVi1qc8#BU9MKEVP'O|е= ; -l2YL|Zs͍d|*.K4˜m Xc{GdpHJx F4VMw/TƕS$E0}XZj$"#NJFF> -RֿbO]k;eE2ei0g©X} aU j†U*ܤ泔'[Ï I86>SѩjO&@;_ꛪ 1,0gd3 r(L]iRlWԒX.働aAeゅ~#~> v>x4],^f{koO\AY<|/d!nt*HNy*sk@@"JQx-mYw_M TnlY>(aO,QeJ ;ϙb١A\ڶR,݄?NU~S-!z׶$O҃'S;?;ba.% ӳ@˞X{٭V?-.=xM֚JmPP{#'ށٽiDLTI_}g [V, -)OЎK _̤VBE igd#A\&鐣D#JZcfWU^*WBl_AI-a )5|%X(VpQF07"Wue dDة R# 52"T&DmIJ1{@i6KQΝ>D[>2@']}Uopż\mG^tUpnoq;#[u -ex -cECk y9ڷ҇VVן/" C͗4*78*`1ީS2 Q8I&ʺ3f73us>Xg*#zi'$ZYH2|?c^2sKʇXcERNpev5E>y\1`ki~~B, ͐ -ga!.Θ:ܨ+. -endstream -endobj -1867 0 obj +% 1920 0 obj +<< +/Type /Page +/Contents 1921 0 R +/Resources 1919 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1923 0 R +/Annots [ 1918 0 R ] +>> +% 1918 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [347.301 555.472 423.355 566.597] +/A << /S /GoTo /D (vdata) >> +>> +% 1922 0 obj +<< +/D [1920 0 R /XYZ 98.895 753.953 null] +>> +% 1919 0 obj +<< +/Font << /F27 584 0 R /F8 585 0 R /F30 810 0 R /F11 796 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1925 0 obj +<< +/Type /Page +/Contents 1926 0 R +/Resources 1924 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1923 0 R +>> +% 1927 0 obj +<< +/D [1925 0 R /XYZ 149.705 753.953 null] +>> +% 1924 0 obj +<< +/Font << /F8 585 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1929 0 obj +<< +/Type /Page +/Contents 1930 0 R +/Resources 1928 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1923 0 R +>> +% 1931 0 obj +<< +/D [1929 0 R /XYZ 98.895 753.953 null] +>> +% 1932 0 obj +<< +/D [1929 0 R /XYZ 99.895 724.062 null] +>> +% 780 0 obj +<< +/D [1929 0 R /XYZ 99.895 699.619 null] +>> +% 1933 0 obj +<< +/D [1929 0 R /XYZ 99.895 643.15 null] +>> +% 831 0 obj +<< +/D [1929 0 R /XYZ 99.895 588.618 null] +>> +% 830 0 obj +<< +/D [1929 0 R /XYZ 99.895 534.087 null] +>> +% 786 0 obj +<< +/D [1929 0 R /XYZ 99.895 479.555 null] +>> +% 787 0 obj +<< +/D [1929 0 R /XYZ 99.895 436.978 null] +>> +% 803 0 obj +<< +/D [1929 0 R /XYZ 99.895 394.402 null] +>> +% 783 0 obj +<< +/D [1929 0 R /XYZ 99.895 351.272 null] +>> +% 784 0 obj +<< +/D [1929 0 R /XYZ 99.895 308.696 null] +>> +% 1934 0 obj +<< +/D [1929 0 R /XYZ 99.895 266.119 null] +>> +% 779 0 obj +<< +/D [1929 0 R /XYZ 99.895 223.543 null] +>> +% 1935 0 obj +<< +/D [1929 0 R /XYZ 99.895 180.966 null] +>> +% 1928 0 obj +<< +/Font << /F16 582 0 R /F8 585 0 R /F17 776 0 R >> +/ProcSet [ /PDF /Text ] +>> +% 1937 0 obj +<< +/Type /Page +/Contents 1938 0 R +/Resources 1936 0 R +/MediaBox [0 0 595.276 841.89] +/Parent 1923 0 R +>> +% 1939 0 obj +<< +/D [1937 0 R /XYZ 149.705 753.953 null] +>> +% 948 0 obj +<< +/D [1937 0 R /XYZ 150.705 716.092 null] +>> +% 818 0 obj << -/Type /ObjStm -/N 100 -/First 1034 -/Length 21732 +/D [1937 0 R /XYZ 150.705 688.251 null] >> -stream -1866 0 1862 59 1868 152 1869 197 1870 336 1871 523 1872 1017 1873 1346 1874 1689 1875 1818 -1876 1839 1877 2345 1878 2390 1879 3080 1880 3408 1881 3489 1882 3864 1883 4501 1884 5160 1885 5783 -1886 6427 1887 6712 1889 7360 1891 7790 1893 8217 1895 8466 1897 8708 1899 9036 1901 9253 1903 9492 -1905 9714 1907 10251 1909 10488 1911 10736 1913 11118 1915 11484 1917 11823 1919 12054 1921 12427 1923 12690 -1925 13169 1927 13401 572 13685 570 13826 1683 13967 1655 14108 770 14250 817 14391 786 14532 1840 14672 -573 14812 788 14952 785 15090 790 15228 1231 15367 787 15507 1144 15647 750 15786 571 15927 784 16068 -846 16209 986 16349 574 16489 751 16602 847 16715 902 16828 937 16941 966 17054 1008 17167 1064 17287 -1111 17407 1170 17527 1218 17647 1283 17767 1319 17887 1361 18007 1409 18127 1451 18247 1487 18367 1524 18487 -1568 18607 1601 18727 1630 18847 1667 18967 1731 19087 1770 19207 1809 19327 1848 19447 1928 19549 1929 19664 -1930 19785 1931 19906 1932 20027 1933 20112 1934 20208 562 20277 558 20337 554 20448 550 20522 546 20610 -% 1866 0 obj +% 785 0 obj << -/D [1863 0 R /XYZ 150.705 480.475 null] +/D [1937 0 R /XYZ 150.705 632.184 null] >> -% 1862 0 obj +% 782 0 obj +<< +/D [1937 0 R /XYZ 150.705 590.562 null] +>> +% 778 0 obj +<< +/D [1937 0 R /XYZ 150.705 544.789 null] +>> +% 781 0 obj +<< +/D [1937 0 R /XYZ 150.705 512.909 null] +>> +% 1940 0 obj +<< +/D [1937 0 R /XYZ 150.705 480.475 null] +>> +% 1936 0 obj << -/Font << /F8 573 0 R /F17 750 0 R /F30 784 0 R >> +/Font << /F8 585 0 R /F17 776 0 R /F30 810 0 R >> /ProcSet [ /PDF /Text ] >> -% 1868 0 obj +% 1941 0 obj [757.3 871.7 778.7 672.4 827.9] -% 1869 0 obj +% 1942 0 obj [575.2 657.4 525.9 657.4 543 361.6 591.7 657.4 328.7 361.6 624.5 328.7 986.1 657.4 591.7 657.4 624.5 488.1 466.8 460.2 657.4] -% 1870 0 obj +% 1943 0 obj [1444.5 1277.8 555.6 1111.1 1111.1 1111.1 1111.1 1111.1 944.5 1277.8 555.6 1000 1444.5 555.6 1000 1444.5 472.2 472.2 527.8 527.8 527.8 527.8 666.7 666.7 1000 1000 1000 1000] -% 1871 0 obj +% 1944 0 obj [285.5 399.7 399.7 513.9 799.4 285.5 342.6 285.5 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 285.5 285.5 285.5 799.4 485.3 485.3 799.4 770.7 727.9 742.3 785 699.4 670.8 806.5 770.7 371 528.1 799.2 642.3 942 770.7 799.4 699.4 799.4 756.5 571 742.3 770.7 770.7 1056.2 770.7 770.7 628.1 285.5 513.9 285.5 513.9 285.5 285.5 513.9 571 456.8 571 457.2 314 513.9 571 285.5 314 542.4 285.5 856.5 571 513.9 571 542.4 402 405.4 399.7 571 542.4 742.3 542.4 542.4 456.8] -% 1872 0 obj +% 1945 0 obj [892.9 339.3 892.9 585.3 892.9 585.3 892.9 892.9 892.9 892.9 892.9 892.9 892.9 1138.9 585.3 585.3 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 1138.9 1138.9 892.9 892.9 1138.9 1138.9 585.3 585.3 1138.9 1138.9 1138.9 892.9 1138.9 1138.9 708.3 708.3 1138.9 1138.9 1138.9 892.9 329.4 1138.9] -% 1873 0 obj +% 1946 0 obj [525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] -% 1874 0 obj +% 1947 0 obj [531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3] -% 1875 0 obj +% 1948 0 obj [533.6] -% 1876 0 obj +% 1949 0 obj [413.2 413.2 531.3 826.4 295.1 354.2 295.1 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 295.1 295.1 295.1 826.4 501.7 501.7 826.4 795.8 752.1 767.4 811.1 722.6 693.1 833.5 795.8 382.6 545.5 825.4 663.6 972.9 795.8 826.4 722.6 826.4 781.6 590.3 767.4 795.8 795.8 1091 795.8 795.8 649.3 295.1 531.3 295.1 531.3 295.1 295.1 531.3 590.3 472.2 590.3 472.2 324.7 531.3 590.3 295.1 324.7 560.8 295.1 885.4 590.3 531.3 590.3 560.8 414.1 419.1 413.2 590.3 560.8 767.4 560.8 560.8] -% 1877 0 obj +% 1950 0 obj [611.1 611.1 611.1 611.1 611.1] -% 1878 0 obj +% 1951 0 obj [777.8 277.8 777.8 500 777.8 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 500 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 1000 777.8 777.8 1000 1000 500 500 1000 1000 1000 777.8 1000 1000 611.1 611.1 1000 1000 1000 777.8 275 1000 666.7 666.7 888.9 888.9 0 0 555.6 555.6 666.7 500 722.2 722.2 777.8 777.8 611.1 798.5 656.8 526.5 771.4 527.8 718.7 594.9 844.5 544.5 677.8 762 689.7 1200.9 820.5 796.1 695.6 816.7 847.5 605.6 544.6 625.8 612.8 987.8 713.3 668.3 724.7 666.7 666.7 666.7 666.7 666.7 611.1 611.1 444.4 444.4 444.4 444.4 500 500 388.9 388.9 277.8 500 500 611.1 500 277.8 833.3 750 833.3 416.7 666.7 666.7 777.8 777.8 444.4] -% 1879 0 obj +% 1952 0 obj [339.3 892.9 585.3 892.9 585.3 610.1 859.1 863.2 819.4 934.1 838.7 724.5 889.4 935.6 506.3 632 959.9 783.7 1089.4 904.9 868.9 727.3 899.7 860.6 701.5 674.8 778.2 674.6 1074.4 936.9 671.5 778.4 462.3 462.3 462.3 1138.9 1138.9 478.2 619.7 502.4 510.5 594.7 542 557.1 557.3 668.8 404.2 472.7 607.3 361.3 1013.7 706.2] -% 1880 0 obj +% 1953 0 obj [569.5 569.5 569.5 569.5 569.5 569.5 569.5 569.5 569.5 569.5 323.4] -% 1881 0 obj +% 1954 0 obj [525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] -% 1882 0 obj +% 1955 0 obj [639.7 565.6 517.7 444.4 405.9 437.5 496.5 469.4 353.9 576.2 583.3 602.6 494 437.5 570 517 571.4 437.2 540.3 595.8 625.7 651.4 622.5 466.3 591.4 828.1 517 362.8 654.2 1000 1000 1000 1000 277.8 277.8 500 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 500 777.8 500 530.9 750 758.5 714.7 827.9 738.2 643.1 786.3 831.3 439.6 554.5 849.3 680.6 970.1 803.5 762.8 642 790.6 759.3 613.2 584.4 682.8 583.3 944.4 828.5 580.6 682.6 388.9 388.9 388.9 1000 1000 416.7 528.6 429.2 432.8 520.5 465.6 489.6 477 576.2 344.5 411.8 520.6 298.4 878 600.2 484.7 503.1 446.4 451.2 468.8 361.1 572.5 484.7 715.9 571.5 490.3 465.1] -% 1883 0 obj +% 1956 0 obj [613.3 562.2 587.8 881.7 894.4 306.7 332.2 511.1 511.1 511.1 511.1 511.1 831.3 460 536.7 715.6 715.6 511.1 882.8 985 766.7 255.6 306.7 514.4 817.8 769.1 817.8 766.7 306.7 408.9 408.9 511.1 766.7 306.7 357.8 306.7 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 306.7 306.7 306.7 766.7 511.1 511.1 766.7 743.3 703.9 715.6 755 678.3 652.8 773.6 743.3 385.6 525 768.9 627.2 896.7 743.3 766.7 678.3 766.7 729.4 562.2 715.6 743.3 743.3 998.9 743.3 743.3 613.3 306.7 514.4 306.7 511.1 306.7 306.7 511.1 460 460 511.1 460 306.7 460 511.1 306.7 306.7 460 255.6 817.8 562.2 511.1 511.1 460 421.7 408.9 332.2 536.7 460 664.4 463.9 485.6] -% 1884 0 obj -[583.3 555.6 555.6 833.3 833.3 277.8 305.6 500 500 500 500 500 750 444.4 500 722.2 777.8 500 902.8 1013.9 777.8 277.8 277.8 500 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 500 277.8 277.8 500 555.6 444.4 555.6 444.4 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.4 388.9 555.6 527.8 722.2 527.8 527.8 444.4 500] -% 1885 0 obj +% 1957 0 obj +[583.3 555.6 555.6 833.3 833.3 277.8 305.6 500 500 500 500 500 750 444.4 500 722.2 777.8 500 902.8 1013.9 777.8 277.8 277.8 500 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 500 277.8 277.8 500 555.6 444.4 555.6 444.4 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.4 388.9 555.6 527.8 722.2 527.8 527.8 444.4 500 1000] +% 1958 0 obj [670.8 638.9 638.9 958.3 958.3 319.4 351.4 575 575 575 575 575 869.4 511.1 597.2 830.6 894.4 575 1041.7 1169.4 894.4 319.4 350 602.8 958.3 575 958.3 894.4 319.4 447.2 447.2 575 894.4 319.4 383.3 319.4 575 575 575 575 575 575 575 575 575 575 575 319.4 319.4 350 894.4 543.1 543.1 894.4 869.4 818.1 830.6 881.9 755.6 723.6 904.2 900 436.1 594.4 901.4 691.7 1091.7 900 863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.4 602.8 319.4 575 319.4 319.4 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.4 351.4 606.9 319.4 958.3 638.9 575 638.9 606.9 473.6 453.6 447.2 638.9 606.9 830.6 606.9 606.9 511.1 575 1150] -% 1886 0 obj +% 1959 0 obj [726.9 688.4 700 738.4 663.4 638.4 756.7 726.9 376.9 513.4 751.9 613.4 876.9 726.9 750 663.4 750 713.4 550 700 726.9 726.9 976.9 726.9 726.9 600 300 500 300 500 300 300 500 450 450 500 450 300 450 500 300 300 450 250 800 550 500 500 450 412.5 400 325 525 450 650 450 475] -% 1887 0 obj +% 1960 0 obj [625 625 937.5 937.5 312.5 343.7 562.5 562.5 562.5 562.5 562.5 849.5 500 574.1 812.5 875 562.5 1018.5 1143.5 875 312.5 342.6 581 937.5 562.5 937.5 875 312.5 437.5 437.5 562.5 875 312.5 375 312.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 312.5 312.5 342.6 875 531.2 531.2 875 849.5 799.8 812.5 862.3 738.4 707.2 884.3 879.6 419 581 880.8 675.9 1067.1 879.6 844.9 768.5 844.9 839.1 625 782.4 864.6 849.5 1162 849.5 849.5 687.5 312.5 581 312.5 562.5 312.5 312.5 546.9 625 500 625 513.3 343.7 562.5 625 312.5 343.7 593.7 312.5 937.5 625 562.5 625 593.7 459.5 443.8 437.5 625 593.7 812.5 593.7 593.7 500 562.5 1125] -% 1889 0 obj +% 1962 0 obj << /Type /FontDescriptor /FontName /RAJOBS+CMBX10 @@ -26559,9 +27060,9 @@ stream /StemV 114 /XHeight 444 /CharSet (/A/B/C/D/E/F/G/H/I/J/L/M/N/O/P/R/S/T/U/V/Z/a/b/c/colon/comma/d/e/eight/emdash/endash/equal/f/ff/ffi/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/period/q/quoteright/r/s/seven/six/t/three/two/u/v/w/x/y/z/zero) -/FontFile 1888 0 R +/FontFile 1961 0 R >> -% 1891 0 obj +% 1964 0 obj << /Type /FontDescriptor /FontName /BWDLNI+CMBX12 @@ -26574,9 +27075,9 @@ stream /StemV 109 /XHeight 444 /CharSet (/A/B/C/D/E/F/G/H/I/K/L/M/N/O/P/Q/R/S/T/U/V/W/a/b/c/d/e/eight/emdash/endash/f/ffi/fi/five/four/g/h/hyphen/i/k/l/m/n/nine/o/one/p/parenleft/parenright/period/q/quoteright/r/s/seven/six/t/three/two/u/v/w/x/y/z/zero) -/FontFile 1890 0 R +/FontFile 1963 0 R >> -% 1893 0 obj +% 1966 0 obj << /Type /FontDescriptor /FontName /VUBHOM+CMBX9 @@ -26589,9 +27090,9 @@ stream /StemV 117 /XHeight 444 /CharSet (/a/b/c/d/e/f/g/h/i/l/n/o/q/r/s/t/u) -/FontFile 1892 0 R +/FontFile 1965 0 R >> -% 1895 0 obj +% 1968 0 obj << /Type /FontDescriptor /FontName /OUFNAH+CMEX10 @@ -26604,12 +27105,12 @@ stream /StemV 47 /XHeight 431 /CharSet (/radicalBigg/summationdisplay) -/FontFile 1894 0 R +/FontFile 1967 0 R >> -% 1897 0 obj +% 1970 0 obj << /Type /FontDescriptor -/FontName /PUWBWT+CMMI10 +/FontName /HKHZAC+CMMI10 /Flags 4 /FontBBox [-32 -250 1048 750] /Ascent 694 @@ -26618,10 +27119,10 @@ stream /ItalicAngle -14 /StemV 72 /XHeight 431 -/CharSet (/A/C/D/G/I/L/N/O/P/Q/T/U/X/a/alpha/b/beta/c/comma/d/e/f/g/greater/i/j/k/l/less/m/n/o/p/period/r/s/t/u/v/w/x/y/z) -/FontFile 1896 0 R +/CharSet (/A/C/D/G/I/L/N/O/P/Q/T/U/X/a/alpha/b/beta/c/comma/d/e/f/g/greater/i/j/k/l/less/m/n/o/p/period/r/s/slash/t/u/v/w/x/y/z) +/FontFile 1969 0 R >> -% 1899 0 obj +% 1972 0 obj << /Type /FontDescriptor /FontName /RVPZIX+CMMI5 @@ -26634,9 +27135,9 @@ stream /StemV 90 /XHeight 431 /CharSet (/i) -/FontFile 1898 0 R +/FontFile 1971 0 R >> -% 1901 0 obj +% 1974 0 obj << /Type /FontDescriptor /FontName /ZUYGVH+CMMI7 @@ -26649,9 +27150,9 @@ stream /StemV 81 /XHeight 431 /CharSet (/H/I/T/a/comma/i/j/k/m/n) -/FontFile 1900 0 R +/FontFile 1973 0 R >> -% 1903 0 obj +% 1976 0 obj << /Type /FontDescriptor /FontName /ZOAUSA+CMMI8 @@ -26664,12 +27165,12 @@ stream /StemV 78 /XHeight 431 /CharSet (/C/F/G) -/FontFile 1902 0 R +/FontFile 1975 0 R >> -% 1905 0 obj +% 1978 0 obj << /Type /FontDescriptor -/FontName /SEWPRR+CMR10 +/FontName /WUKOCR+CMR10 /Flags 4 /FontBBox [-40 -250 1009 750] /Ascent 694 @@ -26678,10 +27179,10 @@ stream /ItalicAngle 0 /StemV 69 /XHeight 431 -/CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/R/S/T/U/V/W/X/a/ampersand/b/bracketleft/bracketright/c/colon/comma/d/e/eight/endash/equal/f/ff/ffi/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/percent/period/plus/q/quotedblleft/quotedblright/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/z/zero) -/FontFile 1904 0 R +/CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/R/S/T/U/V/W/X/a/ampersand/b/bracketleft/bracketright/c/colon/comma/d/e/eight/emdash/endash/equal/f/ff/ffi/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/plus/q/quotedblleft/quotedblright/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/z/zero) +/FontFile 1977 0 R >> -% 1907 0 obj +% 1980 0 obj << /Type /FontDescriptor /FontName /UJRPBG+CMR6 @@ -26694,84 +27195,746 @@ stream /StemV 83 /XHeight 431 /CharSet (/five/four/one/three/two) -/FontFile 1906 0 R +/FontFile 1979 0 R >> -% 1909 0 obj +% 1982 0 obj +<< +/Type /FontDescriptor +/FontName /GIODUE+CMR7 +/Flags 4 +/FontBBox [-27 -250 1122 750] +/Ascent 694 +/CapHeight 683 +/Descent -194 +/ItalicAngle 0 +/StemV 79 +/XHeight 431 +/CharSet (/colon/five/four/one/three/two/zero) +/FontFile 1981 0 R +>> +% 1984 0 obj +<< +/Type /FontDescriptor +/FontName /HFTEUS+CMR8 +/Flags 4 +/FontBBox [-36 -250 1070 750] +/Ascent 694 +/CapHeight 683 +/Descent -194 +/ItalicAngle 0 +/StemV 76 +/XHeight 431 +/CharSet (/B/G/I/L/N/O/P/T/X/a/b/c/colon/comma/d/e/eight/f/five/four/g/h/hyphen/i/k/l/m/n/nine/o/one/p/parenleft/parenright/period/q/r/s/seven/six/slash/t/three/two/u/v/w/x/y/zero) +/FontFile 1983 0 R +>> +% 1986 0 obj +<< +/Type /FontDescriptor +/FontName /KKURMF+CMR9 +/Flags 4 +/FontBBox [-39 -250 1036 750] +/Ascent 694 +/CapHeight 683 +/Descent -194 +/ItalicAngle 0 +/StemV 74 +/XHeight 431 +/CharSet (/B/G/I/L/O/P/X/a/b/c/comma/d/e/eight/equal/f/five/four/g/h/i/m/n/nine/o/one/p/parenleft/parenright/period/quoteright/r/s/seven/six/t/three/two/u/x/z/zero) +/FontFile 1985 0 R +>> +% 1988 0 obj +<< +/Type /FontDescriptor +/FontName /IMOIOS+CMSY10 +/Flags 4 +/FontBBox [-29 -960 1116 775] +/Ascent 750 +/CapHeight 683 +/Descent -194 +/ItalicAngle -14 +/StemV 40 +/XHeight 431 +/CharSet (/B/H/I/arrowleft/bar/bardbl/braceleft/braceright/bullet/element/greaterequal/lessequal/minus/negationslash/radical/section) +/FontFile 1987 0 R +>> +% 1990 0 obj +<< +/Type /FontDescriptor +/FontName /XNLILI+CMSY7 +/Flags 4 +/FontBBox [-15 -951 1251 782] +/Ascent 750 +/CapHeight 683 +/Descent -194 +/ItalicAngle -14 +/StemV 49 +/XHeight 431 +/CharSet (/infinity/minus) +/FontFile 1989 0 R +>> + +endstream +endobj +1991 0 obj +<< +/Length1 2199 +/Length2 18119 +/Length3 0 +/Length 20318 +>> +stream +%!PS-AdobeFont-1.0: CMTI10 003.002 +%%Title: CMTI10 +%Version: 003.002 +%%CreationDate: Mon Jul 13 16:17:00 2009 +%%Creator: David M. Jones +%Copyright: Copyright (c) 1997, 2009 American Mathematical Society +%Copyright: (), with Reserved Font Name CMTI10. +% This Font Software is licensed under the SIL Open Font License, Version 1.1. +% This license is in the accompanying file OFL.txt, and is also +% available with a FAQ at: http://scripts.sil.org/OFL. +%%EndComments +FontDirectory/CMTI10 known{/CMTI10 findfont dup/UniqueID known{dup +/UniqueID get 5000828 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +11 dict begin +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def +/FontName /HBJLDT+CMTI10 def +/FontBBox {-35 -250 1124 750 }readonly def +/PaintType 0 def +/FontInfo 9 dict dup begin +/version (003.002) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMTI10.) readonly def +/FullName (CMTI10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 65 /A put +dup 66 /B put +dup 67 /C put +dup 68 /D put +dup 69 /E put +dup 70 /F put +dup 71 /G put +dup 73 /I put +dup 76 /L put +dup 77 /M put +dup 78 /N put +dup 79 /O put +dup 80 /P put +dup 82 /R put +dup 83 /S put +dup 84 /T put +dup 85 /U put +dup 86 /V put +dup 97 /a put +dup 98 /b put +dup 99 /c put +dup 58 /colon put +dup 100 /d put +dup 101 /e put +dup 102 /f put +dup 11 /ff put +dup 12 /fi put +dup 53 /five put +dup 103 /g put +dup 104 /h put +dup 45 /hyphen put +dup 105 /i put +dup 106 /j put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 57 /nine put +dup 111 /o put +dup 49 /one put +dup 112 /p put +dup 46 /period put +dup 113 /q put +dup 39 /quoteright put +dup 114 /r put +dup 115 /s put +dup 47 /slash put +dup 116 /t put +dup 51 /three put +dup 50 /two put +dup 117 /u put +dup 118 /v put +dup 119 /w put +dup 120 /x put +dup 121 /y put +dup 48 /zero put +readonly def +currentdict end +currentfile eexec +oc;jAw-24 WEvQC<3A2kX0k^|:ٴfb,|=sLu2KZ`3ndgRw@),q՜G<&h'. ΍883 ABAԾI$s@F25ڪ,i pK>6K` %E((bsS?#;IHIRgHŗC" Axb'^;*DٕTz35'«G=F F섲.K|Lђ^Tsә,˛PS{1c ˋri,BRjl_݂tUH %!#V|6G9i/'//do1Wˋ_G +‰a vL"paS-g綇}t@{&Y`I +|ۢsifˇ]<zilWUf }ϡq^c,@{6~?JSijv$i"$O +VQ?236u`}u~㣖9ñ#M=f.bȫ G 䁡"K aI\N*Q*;G40Z($Xv*WsPn hXU;.a7X5{~MzH Tj?^ +LhIt}e&,APRNy< 9MCfQx"c<~Nh%0`ڇD+qn ;/XM wZdi3V"+$(5|.R`G[xM9s&7q%*=׶%zJ3FA%@kd/]gā2Ǧ<\%ߓnW(5uI&dI fWt]]32b驞VS~O &`hXsGA"%͗"h*4Λh`:gQgatN9"#D*$Ǫyy\ 9OE{y"QAw/Ѧi,֗665:?Sr#2 +]vV=] U8~ 4"5;;jJ+عo!窧)y.^<^gNlV:H (j$.C>drYz3D^"(ݪy?ssDt45KqcV}PI'REhܺn!p}ilqH'>2AOl2 # [˚so DtaK:}9/M]fXlf-F| Y A1Qƕ/28 S廩/^dVB [aJzH0uSo/Y`'g)5ʪ:\hYrG!y 9rhcagzoϘ$@]8 REPWhͽz]FIءz۳L|"CEw}BŽ03&pv4Q:uKw+nC~vto:a, y\Y8L sϯ~dp=n?D( =>mzN5  ,$2/"f6%)R%b8j6mqEQ-C sKD\=R3d>!YΎ9MQΕ/Vd+BW&IIpAh* ,W_UkW2G&tk+hV<$_TgLضucz9?^y(;2-~7]r&Q0[AM]fX?x]inU>%ʸ(T?. a1L.wiaH#C-`g=f) +TEGeIuEo?Fg 5s9!GYrÂ$֡ L8h:ji Dc8k.l|l| /ܚ;'(2P]< nӱ +l\C؀:ጜ'|-sy5eDeEͲ3ڗ05nv>*!d p+2~Ͽr);J;шJ2y].1'e'0\Mt:gF+mr3*ttXKuRL˨B4Pmhel[b9ʸNRr%0K.㼎b8TC{,Pu9 %" +ƛ1غ^KUIzfs'FiwG&2bDX4&"t]vU3qekZb2mHj1}q_P2|a8~kP4o_== vԑ8U5[_ )e=mʂ:1ԍb D9}F`ֿ0cnR܃IpyiS?z5qeSdqei QJV6ᤙ>ot5&2ZW$MQ:Pϼ\w/v@j=_L@wNҸ}FdX;ʊw%aMcà/bbK+2qޫffQ`" +nLo/'w ^*Waol2)&e+شg !g 'f?qwtלKZt&,<#)Y,zzп榯%1!ǠW"pu maRr1r@C( ^ tR^0Kt{տgB"ߧDf!=|Q +:( [~GsvjʓkP g/=_]Uz T,$V9jZߵ5߷tQq̮ٙGkc{ |RL ]vCAh$(5y9>8A88o1ȉSO Av??߻㹑Vks=lvbϣ8|\_%{Ҩ>&&zIWVSiUAV+Ӓ$D} Ge=fL| +)o^E`Iv7fK+sDz2s4+:>AnpT/ٸ&XɥݡT,@T;w zȼӧzekc=zaH``$4 +ϋHG^/'tWWu5*b9N&ԯ}ڷ#* +7=/|CX2W!wAk'TM<@SтkP8f>? T2K/K\ >$ɊLSN 5F=)!#8e|͓g_NQ:\UAd<@_ʴݮ +V;M5ztMmiJر]wimL˧cMѠk>HI s__Y/H%Hf]_ "5+9E2T̸CO[ g=<@2L4^էn^83rABzSiܗyUO ZĠG?mѬLlPm۪p@n,y4s:xNKXa2# +utw( 7̥>چ,Fny]fH_^;NyHU/#")t.ˀ!ϛiwx{ yC Cb|о ;7kKS1Ja9zWs˔dDXH\d۝j)3x%n'l KOmR\I5piO~5>g@Y5+9׷0ɴk8@ ,qA“D뉹4NBuytz]pȧ".?̒ѯ/l[l&R~WwB!n]8+I5wY]Hvܲ;U"ǘN4*={ZU6o+L%= &vɃu}qs,QF?RGmai?y ybxfULWQ@U-6eٹ+Iƕt!WfwmAN̼LZYLOyJQ)P2$b?IO4o OJrD:8k2?T,QY I鄳BEJ&rZb ʰOS;~qF9c#cc֙dLǤb0Ɩ˿hZRJ >*G F{;C'elIcXm ,؇6֙&Emn.RGAeŤ2W| +K; >x! MA;NJ}b3 /2ۏs))^iދ1R (ŖƮg4Ѳ4l/XR+|Ifb{h E]5[n,|8]C,BV"*NZԷɗg*`?ېPC C)LEDSSotOb \T=/st?CPfF .a(C!Db̛Exj%YKW1ޖ/Ykt@.95wHFcNDCisㄶϯZ8A6KZMhmEGpXԠ_;u/t_& \゗>fwb]>|`FsGDԝ{zРEbf\){`Tf(lωtB?B<k#Mb8I]1pW=ﻬozmU#{ ؆rbM;-uDy6)vAE)RD!i{ݚ@S:(QS~- tG+\{ rcJϬڔӻ%(,"Ze<T5Z=F+I|=;icJKSA'&7&۱eb&qA <s.0vBAW@3Ǐ1fiUs(֧EqyIg2ewg )Tf $mޫymqqzoǫm'(>xn,g#~fvϊ=rش8޺SA(SV fcSjAqRǃLT Gۢpy6'ٌDh5|F)Ncj Wl囷T߀qYJgoivnJZP +& AH`-d abבYɹ_tHܼp-~QmSKΠ +gM_\P`I }^@u%!DfG%lQ<%  ]~CO+K\x;^z8?!7"F]~ tl'TјWpQ|IA;SSS?{U4 ps0W_. ҆GĚх/羥of4;~ {S=zRvn`(D؟B`3pZPY^ <ǡ91ֺ#X\AS/=ՑVamӄI#\(\t<&$2ToWFmb_(\emh(셆]OCA:|[I8egܺ'i=(CNڔ?US0kiK ov5lxeى$}o} ݛ[ϼq".&6 %.W:>[m1/BTuWarH0QELN=wJ%Ԑi_+"[,wx?ö5$eFvd*kp?ە9?ϬvU#Om&x+tG&wЏs'@}GW׿GwF*S-n^U֊yzt$WFdM캓[vZz sGRlyyZ0g.>UQ?kؚURYFd^,7;Pٯ!QͿ v\d)\05JDFPi3=cgwjwS,:u1/bM$b# !+6uQ!Fw06=11KLaU!h* +|։[fA( "<g4#]ݰ6"BBBZx|EKQY:^Ow(!چYO7%lX}zj )yRHe7u _+GGW8p a 1TޥF·Z7;֟p]%Z$%ekg0#:rM5.>\alQ:g67DpW1ib[F$ ?u !oySUʘH$V6pX c֭s^ՉI +b?=u}p3fꄟb!T1g!G \JNc8A&7$3zY/@ujG$Z'uTР\gm.a85WRۈgq}AXOFؤ@KA/a>YԺ+]hdWơ",BF`.]{*摐['_nZ +\1ۖ +gR)Sybn]qn)P>*xKV8>4u l!cx7'Z@-D^;}$zfO(<@%toer3{)SiM-ei8@ rXiK +!]{T bITaϦK0[뫙jviO3X!#2Y}CLWc^)vH]3B};b T"#y^[VR*I9#^Z|ۥe IF#iB7^b!pWE=l׏`,G + $yuʹ}At'9}\ЯZw`p[ +IVҦ_T+mz*`2 wnNPnt薢e44"!Y#}!3[$N5\ݻ~5+e_E޽-rok?dKvh>±ʐrhdjӏ g4OY׍vA!^Ԣ0:(ǽbF܈PAos;G[O&66"x)sA=zLޡM۠Qk@i#t%@&'M<*#i3o,J6zV`&ն8zs#ם龯$Y}^rgp*>$BmfAtw9hsu"C0NurpfX1wN_JcB;HN]y;>0Vܦ0*!VQ(!e<1{yINZXv$,KxD"޺i),p,h WW*8v~tˏl\١š +ɺYK(Y*/]̿h3uM.Gki@<`3VkG/7};BP;yA/m Yz +A'Ouk9)j+II={.*d̀VA)?Ԩw*ͅBCq^ΚkA4_]~ᓚvO<ڡ cɕ_ԁ=H:UM3_B9Pex]2I3F]h6t˝a Sߜ>ںk9y^*:>!nH*CtK<>NA+R0KA]%0%NuOMVg'B5Rn ;&g4taqӻgGL]A(|Ԉ: ! vJqcũ,DEm%KX徔]Uc0 :̼ p-x w3Y:Br໏8wtRbQc@_hb緮/^Qrwr?1҇${;D\5-B$#Z'iH'd>7x<"Y7\?cp擼=l~UhK>~ØkCO/ + |j>T:~I|J)10 ^ڻv!=ni#3@g KliOootC)SĔTFy5Jiµ9i"~PGz ]?!|CpU7('g\a_/uwA(!5  c\h5 +A/Pc +WE~-SF=X)=v9IS}by݋c zR\?~ 8ASd%ɜw^֜ȥFaD:ut!Gc(iȽ<5֗)G-OZki Gs$#f29'L62]\"`\ +=7{cW#{}%(m{!]攑[`KƼEQ&:΄Ac2|n7I]ks\`L9DW6\ ѭǢ}!}ϗzA҇Lu'n9YZ9h`EخfƗ) =B~_u:\ OUyp/ +.M9$OJo[O`;lR 2'2t9b'm5y7-E9H`-:H-E>o(ʿqIhRH݉uA_O-~m]{!Xj|0f%X]%8:e}b[camKf#_wT^6!Ƚ2d+ ȶS"Z>ѼQϏ#M[\+BE8 ASːɡ+ 9?B&)uLo,mãs&xMԣYn4ļ1ZH ] }^߫D*DT)]1 D/bHNW0gvXUuD,a]ac\ +(HwϘ$j$OQD32qP!1fxIL{$UT-v:Rj[u +9j|u*XQR>b +!9U^WTY{GOۇܖ%sh2!hir?;ԝ!ARS>9#|"Z q1pz Q"nEs-$R%6 W aRǒji*%Q9DKlPy<Űm sIbC#.*^%R - 1׽=:n|xɀ%Zpz;*wiL>-546+lYLU$EXax1kN1%;͹-JALoƄr 93mnvVl#ˤ:g4(c"i2|Qm>̂CD)qc]8i-`ҧݽ|e!耽 f!8P5WCUVzaeOsj:nbhWpȠNeUXIT?o`5zWfKUVervt*ŐBsg0y%7<升.XwP'S}˄pM8ָI:u?azi-#zTdY*l741nAר4>}O!b. !tL* +aB ekl#q2u^kw=P/Įt7uGS(Y`W߻źHM<o6OY*M6S2\ChfD@($9eHHZ~#`V{=PԇKk5^Pux'}%{xYml,X6:5Rbj2!5f7j%6e#-sL2, W@?uasK;Xp4XOOQ;s^| @ ѭd +%t*t!@MIް >4Qo9š'v^ƪ;)&z+gaܧUc+ߝMQ`>BE[w:9X_T ?dCu}ۗ"`ǡ+~{}\Y=@oF4>ly͔V!{'ykDT8POk* +V@zSq!18k@5u:#SR&ESusHi| ߇–2H rv 6n&!s e 6t͂^_<+$apC<=$0ҙ*\2CYCԻKRr` S.6|<)o)!Ys 53)2{H'MVIN6"N*f;p8ʞp^QTa9@Na@ײL[IP:.&Z0"Y,Ru%6rCӾ٩65O l;qNޤ퇕sZa]tJњNrjזUgkў;զcE9JcU,w%6ڊ> aD4KY? FDKWڪNWL(ʄ-꒼P^gRb&g{;#al +_ +rc34% vv"1v6kWb=ߨZ +psyqPI/s4hiPfus9WQ U3~]o gc|uʾXU)DEx51$AsFe$eyȎ7 +|VT㮟2}I3nO8j +dSF 7P|tK$I&`4bv5P?F`o;Ul5e rUn3WS' $ =V +bj@5& +"~ F,Qݑܲg뺲^'Nz,~yxek74bq\҄C$P;Rwg'2I"| 3ieR"(uq?e{G^>IH&RJ +`쐵T"O\^u,GVY-m;{?ls'HzG?% #@ q;91%7y3 2G@C3dh>/[Ro#[PIZ% pv)wD '&c1ٽC#yoݷX܁w8g۳ c F~'zbLDpQr>%E)DWtZf5Q=DKH!DX}F}Xg%#m3+61Ե($Г15C6э*5*:ީJy"u5<ɚ \?l 9$$2ު +d}bIbutȀ6HOlXKjd8o]DŽ2'㻺_ + ? yB `ԥOf?jK ?˞EQhK[M|H߅bt?3>\q Jj4s1-}p cRGa8* ~L6"nh-KLA[ 8xw=k'-ScZN%9&y,j[y~"6 qzl:S+w:x P9G|-(wAn/i/2w8H $ O#Pna+Qf7eV0eO/CnV+k0ͫ]B Q2BbEQ' +T ?OH2|V2/Ghl-k[VB}u",ؠH;#v?Jk[̡PWhzُ۱c>l ,ye㟧GC=+ďG.QfVsQrBN'TEoSqk)"cp&1ǹs2WDziD1~Dx\P>pS2*~!Y Mo~,o3H=X)|@3k7г%‚H[,>1,`Xx(DhbL>rg@BzV$Q1 +! I-9p{4~ۛ&pۼ,e3N@|@8~7Hpt%/TexۯsRۼH$ ؊kwϤRGqqoM}nV/Zg +w'a?=t=To5Mj^ߘ"NFCg#YDw^&f^ +mD].CQWzó-'Pf6).ZXzq=)'G=({|iA_N0dHaQaYhE+=YT'{;ѥ>?+,;"ҰOj釕)CS8_ +yU,ux)<ۿ)Z:\K#{T‘k*ծF7O=VXE+8*'. !$k9JN!up ד1hN?6\MF"1|kv1ĔӶb ZrS!ڨA{n|mnE=5E"ğ|39Pˠt٧fsy;d)`g4t$iwo:L|TJeuD7lpNJ3Qb-XQ_dazG^% z}!- mշ&5-$(LVG v??G(XP)-¡gk*!8]>7#S x'eMd~5d ؇=b{Hؙ7R9]ȷΫD}&ѲA'#b|s1vb/Q[.#@O}{HF%t; $ m-H +uU)>RU!`ƿ RK4dΟLq: +xruxriFp FTcg#SK +5dzO4*Rt9t|CxDC ZF}n*EP9v<ŮI(}^@GslO(fڧLf 16Dx,I 벞?͵Y p1ί+)Nw ~_-)ohH{@j`6D.Jd6Ǝ<|>QQY{a>"jԣ5^'Ed5|^iTD<آ4I:X=雹ؑR1XdKVW4(8ǺJHk~yO1Lgl\0Yz%>_ 4# ջPKNBĵKkC f.˿2-[dRK#%k Ͷf+,"Y*\11;wϺ27:*l'@J 0 ǏѮ2ONH@{7S4 +HZc$61i6848Ȅ߹Q8X:ᦗ.>ӍW V G|,WAg +9aL13[mP:_ 7@0w4vO6ҙ`Tﯮ-'0Fσ(FZq1*`-1\aais[}=ﺡJPca@O +qQO[16ddq̔':qak7qb3r@z|ϗg_{} 8^ !2m3kyO +*KXxU˵Mql,!?8Kr{ '_*M80ʈuZי]aDjŽ@#DS^ +8R^t`K`"gj oHw6 AОaXDM{*m&<i'<#:1'NUt,ĸ69o: ⲹܥ +g՚fI h""Z|L@d,^% m*% {dS:z~'"V _F:_O=ga6J8^qtf,+M3S$;D`Z +QqFSJ +sP#+ ݢp8bM԰ބLJ~5=(FS{ Sbp}Q5ŠwcD2X-I_fL>f:ŤcѸWh ُ?5S).XG'z9 F @_&%>k[&ޙc,ivaYibZdZ 2LTHR+yUwL (/DѺ6K +Xj?izDRusuaSTk;֧_+_2(*O+5HM膽A1IYl9%d~Qc,Ae[޻wIݢf('BTnng +endstream +endobj +1994 0 obj << -/Type /FontDescriptor -/FontName /GIODUE+CMR7 -/Flags 4 -/FontBBox [-27 -250 1122 750] -/Ascent 694 -/CapHeight 683 -/Descent -194 -/ItalicAngle 0 -/StemV 79 -/XHeight 431 -/CharSet (/colon/five/four/one/three/two/zero) -/FontFile 1908 0 R +/Length1 1699 +/Length2 10351 +/Length3 0 +/Length 12050 >> -% 1911 0 obj +stream +%!PS-AdobeFont-1.0: CMTI12 003.002 +%%Title: CMTI12 +%Version: 003.002 +%%CreationDate: Mon Jul 13 16:17:00 2009 +%%Creator: David M. Jones +%Copyright: Copyright (c) 1997, 2009 American Mathematical Society +%Copyright: (), with Reserved Font Name CMTI12. +% This Font Software is licensed under the SIL Open Font License, Version 1.1. +% This license is in the accompanying file OFL.txt, and is also +% available with a FAQ at: http://scripts.sil.org/OFL. +%%EndComments +FontDirectory/CMTI12 known{/CMTI12 findfont dup/UniqueID known{dup +/UniqueID get 5000829 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +11 dict begin +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def +/FontName /OZJPZO+CMTI12 def +/FontBBox {-36 -251 1103 750 }readonly def +/PaintType 0 def +/FontInfo 9 dict dup begin +/version (003.002) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMTI12.) readonly def +/FullName (CMTI12) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 65 /A put +dup 66 /B put +dup 76 /L put +dup 80 /P put +dup 83 /S put +dup 97 /a put +dup 98 /b put +dup 99 /c put +dup 100 /d put +dup 101 /e put +dup 102 /f put +dup 103 /g put +dup 104 /h put +dup 105 /i put +dup 108 /l put +dup 110 /n put +dup 111 /o put +dup 112 /p put +dup 114 /r put +dup 115 /s put +dup 116 /t put +dup 117 /u put +dup 121 /y put +readonly def +currentdict end +currentfile eexec +oc;jAw-24 WEvQC<3A2kX0k^|:ٴfb,|=sLu2KZ`3ndgRw@),q՜G<&h'. ΍883 ABAԾI$s@F25ڪ,i pK>6K` %E((bsSD;Uѓ"":!cQMq:(MO)|$~x!A7ux(ǻISG|IQԏY=9"i1B/?xI84HrxF-}S?geXhb'N'68^o ߑT݄j"_ u3S[3^G{Wsh"NWk#IQ9dxpY JJO(UMaKDpP=|#fLV<J#o)Z.$U(X=G-Jk%_HGM %4ߴ +DQjY1=KʧHZ̛wOȃDل6C!8]g,cAo?Ҟj?;IAGYPKKɧBs_W9AD2IEWKN*3iA%t  .ox #&ShD"5{nƋ%;{.=:ٯ}]AUi =.:wv6 <n~?V+Ɉ8R rmsri40XgJ~9H)G3TA3c<;k \" +"9WB7{YZu>]=h۶#׵N=8gkS^Z΂dxZ >B/ngH$1'F%!q\sg ,YKX]goRw~IipX4_ +A6)Ā_B&mVU=J9zkt 7n/N+u'br$T47.\I0Jh>)Q԰[]" ؐ MCŕ͆Upu k{nN'ghhs }Ng*t\/j4p'2/Z{{5kݟpݞP% ?C 9AVpzGI%ZXcJ +rxgYNrfcw~B?B&&tѥn^pDF&Ixe%ci +Ⅻ5<C0C'\F֡z[R 4]=)E`͞獨YI!Jfn:W]ŗknI#‹j"BBvvмuFGN;-lK΀i(sl}HGo1Lzǝ|S+xbs*e3>:FNƉUm +C']&`W V km&怷B@ϛ&Wϑ/4 Y^O `n>nRE_l6FYnnr%p7}%|UDrZ/,#N1Hۏ.CMn)7Q7!frɘkdfN\o-6Iʨ#Rw\CǛqd*~)]Z9TŪ;De=#RƬ4WĤ>L] +\g$2$m +q﮸ݣAqdu5B爜ǫJa)ҿ =['f R}]<N⽠zЁ)#0qG32'j g&geAna>I\Rʣ8߭u4't $qi"gE;I̶(ƭ8p} ó)^"rtS_V3Kh9"$a'm.}Ʌ9Yۖ~-iB*+dခXRI Z򂌧3FFNpC)1*RV +jm#XIz93&;vNTip qs+;2"cY>'N9sgէѤVK j_Eڍؘt$/Lڒb1pUG&%Yw毞|3 L[NFL]eE|eAzMնTZ<:,.$St=SjF_pEzr}BoN, y^`*3MeixgBpC @m ۂ;;u0-Qq3C?"˯sPBveb^~֫)Ze,˒[ +y*?ݳEҞ/_ZNdEc"{u3Jn5kuL;[~d("pMKKjuAbJ6vt-*fu&%XR5Kԩ~qB׭(E:& +O.VX@Oc`&_BtOgRn-bs),+{Umځ'nC)l,į&L UHuLU'Jl6t:h]A>aR[т8˿N{f? e=Y/wث#Ƿw;o6QlEs52p[ c$bPͳŋ3s91}$q"P҉bo+ՐFsv-@\4NmP)Xݢ}_4hohF 9C]X'p4|:aB7#K7˲n"81-{N;td *a"zj2aMO)BL# {jBT39Uth3~GRb8`7.A olT"D+,K8NJS덠M`'MXN4Уvj"'LO)CD)9{;IJ=i}ԱRoF81~Sٔ&E;9+ݓ,6JSó{2HWzIpW.u7p92QݪP2^AwrͣNEޏy|gqmWU˥s* f6.LK] 3>MoUs J77b,$y~ + ,hϖqztDFktQ!QBl(4>:hvqID*7W5zGsq\X7vmm)NkH7:T\Fn8!J +>ONZ + +a8"5n ZJd!b6`=Ԏ +m:3ڑYK)yhfghۥPAc'SU-|G8ȓ|/"MKkI ri^{jD<;pzjA#x;|#`'u䝈AEGn 4yhߠ}4ji׈)BAl@7BhyoBbf\8GS3ˏN޵dX,{4@&U.1l&PK ֬Q{m'c%usr6Ϻ#!Uv +.-@WͲEdq]VhR.fdݱogr3xlیqsŶ#ayi4mwLD&Y4@1w*Oҿ,=+ܾuʁU]2hv~L1- +Q}f`gEk`Tk%猲3*૏J]I\ӷ70aFj&lyzb&wG]ps4nv_$2^ 屽jQ)&#q)b~9춚氮Mh`8JV߅EBb|̩Ua_| 8 L~ҷVExwwżkif8gxm(Ÿ +> +=MlT?y=F .?$W!Ѡ3ZEIW~QijIo=uB\a|> 2 H9<ۚuRw9liYTV'g9j3e"ob +3yg7{6PZ9mT$/ /_`ɗ}p6V AH\ 0pw8L)R <b^89893.orX|IJ:ri}fx-b' Pqv4 ) oD)P,hw%>lCdZ(aβ &j7d`p2Z֠>yM&#_Tٻl. u/잦Ab+]P&CUIdWi^no@1q9a_ʢP%_X4b[wi5uS1WcVVqʺ2*1~lw(eFI~#:}G:AC?p$eTy3,HpjֱN2@E I'^Y ŗI)bN燩IVWھԛc!Bt:IY:=݁ڝ,; t8X9)U8)kPߺ6ڞ)ۧP|=vP՗KZN ߑ6];ϱJo $[5urFQ}XҼbp6) +lltmUuɩc[>n¢R%LJ#+]:) +Im|T`fo ?\$s_lh^8~ꈺnldiɿ@qע\^ظ':sL@hnb̽ o c:d:}EAT@0|ls`w) 7 q2ĆL%Y4:jXIoNJ/AZ{<&ίN2 !~brE)/ Na8C ?ǴS}K+qd y L^$SP(wq9^c9_Pjj3ړԦBZ֑[G!:L63sq +qO'wXWM%ct,Cp܈0Ӭ1: +TsQ GӇa`AɾxS5[qB͋b/9FN&W)r''h촞mѮ,3XhaZI&Uȝ CkOS1;|Gڡ' ݁:Xiz?zƜ>4bC%gly.saݶx!®k kY6lZt4h tZ^"1:`Y+u;AdPf( #5naMdve3PbrJ["?}I&ЩSE();5uC\n*]SW[B ʂh\V`A+"i)3'8kk`.fL8D%B y8^:N^cM-RL4WNTȰ!@vUnD"+!KsX _y۳UVs!60箔!,q!PuoZl K[EX%Ig.;- Ws$%o<@"w0&Gw#گ|innSФ|g*׏ʼn D&68 {Y;~_%0zh•EU{TӞ2tV*^&H J.#BH ]CIvJQ&2hGpy5@ ;剎e&fɆvV'&p3W +[NW&gۺwC)i>~JLB;$uJAbM@*s02~J%h*E>v`TZ,k륫),{Z\<Ǥ(y>ӫls +Ʀv:[c)uW`Pgu_UOպi>nrjJŶ6kIF6~ڌ[Zi/gt:GS$^-58.päHYʓm,!z8q cV}\%T)@,<.X Z{laK2>3  –hV\3)'f^qѢcqp뿯.V揟s?&$'ʡx̴G;U,\:A:9b³)fyCI0qTcʍxF@_jvWQbp,ΡB 'gY@3*aq{ۛտJ}jn6#o ^Ե$d蒒Kgb1r):_?NqIU&jިݵ!\kmLӫ/vW0>Ӿ{w{g* 'Q$ýD%`p^9'(=vxr0"E&Y-cH׬-* g@VX ]ӭj[mb5%D.αسAuc|ȴIwe釧 tb?g oPl'Z"jr*F)lOFܲpݭXftTYH< , cx׾1 bB%xlAu!%OG:0XךhroC!ɬYftXgzR/XH⬣L~ yf2*vAY]/m4Uf |/7oRz?25떵Fd/%}T [%kJs۸HzYb<!I`j5 wGH 4x"Ƃ;$I8E4 $+^t8׮1nľ3ud&l aax B=f*b뗅c&5{^6]W>2tKl].z+vBJ%=Wݔk 9g͈TJ~y@B?:])/]Sh?D,_BƏ8.C1A!fϝ9v<ٵ\[Xq[(i5&y +-djM6[o7KMT¦baPM\be+6g(͡,;L:|闛Nβ1S#(@>Q/$K]!dRffi[Pʇ?ÂQ-enB2Tߜj[nC % +X A StoCKr0E1O& \e;Hˁ lqάa]_i0y4 ^20 +endstream +endobj +1996 0 obj << -/Type /FontDescriptor -/FontName /HFTEUS+CMR8 -/Flags 4 -/FontBBox [-36 -250 1070 750] -/Ascent 694 -/CapHeight 683 -/Descent -194 -/ItalicAngle 0 -/StemV 76 -/XHeight 431 -/CharSet (/B/G/I/L/N/O/P/T/X/a/b/c/colon/comma/d/e/eight/f/five/four/g/h/hyphen/i/k/l/m/n/nine/o/one/p/parenleft/parenright/period/q/r/s/seven/six/slash/t/three/two/u/v/w/x/y/zero) -/FontFile 1910 0 R +/Length1 2460 +/Length2 17290 +/Length3 0 +/Length 19750 >> -% 1913 0 obj +stream +%!PS-AdobeFont-1.0: CMTT10 003.002 +%%Title: CMTT10 +%Version: 003.002 +%%CreationDate: Mon Jul 13 16:17:00 2009 +%%Creator: David M. Jones +%Copyright: Copyright (c) 1997, 2009 American Mathematical Society +%Copyright: (), with Reserved Font Name CMTT10. +% This Font Software is licensed under the SIL Open Font License, Version 1.1. +% This license is in the accompanying file OFL.txt, and is also +% available with a FAQ at: http://scripts.sil.org/OFL. +%%EndComments +FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup +/UniqueID get 5000832 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +11 dict begin +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def +/FontName /TJSMYH+CMTT10 def +/FontBBox {-4 -233 537 696 }readonly def +/PaintType 0 def +/FontInfo 9 dict dup begin +/version (003.002) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMTT10.) readonly def +/FullName (CMTT10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch true def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 65 /A put +dup 66 /B put +dup 67 /C put +dup 68 /D put +dup 69 /E put +dup 70 /F put +dup 73 /I put +dup 75 /K put +dup 76 /L put +dup 77 /M put +dup 78 /N put +dup 79 /O put +dup 80 /P put +dup 82 /R put +dup 83 /S put +dup 84 /T put +dup 85 /U put +dup 87 /W put +dup 89 /Y put +dup 97 /a put +dup 38 /ampersand put +dup 126 /asciitilde put +dup 42 /asterisk put +dup 98 /b put +dup 92 /backslash put +dup 91 /bracketleft put +dup 93 /bracketright put +dup 99 /c put +dup 58 /colon put +dup 44 /comma put +dup 100 /d put +dup 101 /e put +dup 61 /equal put +dup 102 /f put +dup 52 /four put +dup 103 /g put +dup 104 /h put +dup 45 /hyphen put +dup 105 /i put +dup 106 /j put +dup 107 /k put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 111 /o put +dup 49 /one put +dup 112 /p put +dup 40 /parenleft put +dup 41 /parenright put +dup 37 /percent put +dup 46 /period put +dup 43 /plus put +dup 113 /q put +dup 114 /r put +dup 115 /s put +dup 54 /six put +dup 47 /slash put +dup 116 /t put +dup 51 /three put +dup 50 /two put +dup 117 /u put +dup 95 /underscore put +dup 118 /v put +dup 119 /w put +dup 120 /x put +dup 121 /y put +dup 122 /z put +dup 48 /zero put +readonly def +currentdict end +currentfile eexec +oc;jAw-=%W)-{ru)rAE(@{빴Q|_R +ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ +}3{Z2zݬT2s$Z&{BJ{=מ0).|˿!:[LI0lr9G$}/X S`p*p+fwwFGO^ȇ r+dMvNy{YK[z[f +ܷBDq}M8|j${jpxxSƫEu +7%ɑ4\ 9b \)[FU.q4Z8KzwwylϦI5bjcZ,7ɪK:#@Jd@ѻFM_d#g+=>ZaWNH5Y/ .rpf{0D|6@;]/h|.RAɰKml^&W܀{mFՙ3FK~I7@T7AMOP.;ݐH+iX;}jYXEu5ǻpېBIᡊS 7pQ40cH4u[ wYÖ2[tʖڣ?hb*$ +dƥ`$ P :")|UƩfDtd§=5+j7%i@)шT/qUF1tEςҷݢ@ Ѣ1ãF^R?-¦q^!*1gw24/3@\7zaz1).ExY'Ȫ5Fc=nj2cw1 3bI]y: f֡ꋓfg%p^`('m K'K '>EPN,:M{S3G2R@6\?-^X'F.qhYlawNUpͧ`M9_Jgbw! ̼sāTҔDb:Wq!]iơw`褩'`h^ TTInHel䶢͒à`じ 'p(=Y1UѬ/OT +%`&{(K:.CiK9xH-vE4x_5叠ٺ,dl5'bbq,H. O8 NNnZGquDZMgd/.o~*ĽẾʿep˵ +1}oK({AsM`?  }|^ڧ(1vMXAj!Vk5=&Yiw|vCPezFލ`FJO!zơãE.)8At`+o z`!|a*dU ).tIhq*0q>NU 3ȏ7Ā9Ot[3|5r0p8ߕWqDLŽ{`dw|ׄ GJz/H'Z$MΤ8Z̈<7{LpV)%k3ToCn}4>ZrȰ{rUZ9EGu49>`oq/~x▏S|f9׬?X.uBxfGbE.wW;o, BLkkK{9fgg,l|&Ma*$v#ܶ>7Ucö'nNЙ1WƫV Nu+947yG( "zoO_|cZzB@ZAݾ@aexb?>"YTgBlٍ9UFJ?"[p] phU8Փz޾L?:K;W%X$؇:b9pF^dBJR(6[-T*4!yY`'M( MPA#fT"f"?eX&RE ]2L6 ?h)8&/Baf!0tM<ŋX0z1$6$}W<1ji76$4e L,vΡTuQo:=}E˨(S0.1) d#I;P]ɵR蕺I,"?bB8|GϞ\;H +nc2߯xX1!?:t#?%gSe[ze} h)D j-O6vzu@b ixc`r&r Iڹ_> 1SSdY$`)­:] R]FITkxjgbHd.(: +﫜.%pq>>^zx,{^c]r6oެtHTC O;q]8$yBoLr {=f$' F}*%*tdsCNzc5G~¸e 2d]bsz':aWA>4+ +5u=JTH8Yn{-t}PtJx8R.\{`u[%37\rnNJFk Oj+WesMV)JYV˛81d#JL1?M?"śbQᄍfcӟr ar4ד@dv5꺜5eDfR+c=PisX8mm;EL]H|S° #ȿl S6e!3BYTg}TTaΈfgX_+t12)A{ߨcװzP*Q˩SRd*lN؏bjɇwu_ŧ03_m=/Quf +'I N?qj) +ʎӲ+Ar⻩6&HДC9mr|7rG%:Jr<(gG^Ĵ~xP^KYYD˓"$?f7ښ}Xo3'+Te|7~x9Fʓ u +ih +9Nt9uicsJw +cZ|$C[ie ";3|AzFY4WSHʘJ᧞)~%b[O?;Rw߹E5?"W|;ծI6X'\dKs}2{QA)wJtXi3uR3Tq5b|~<27bA}LXO6/'`:8gI$G,M`y}Gꦜ?)c7K !8Bʽl. ouv +KS?0Z<M^oE "1\eάI SsBITve赡 Rkvl$|i0qp +QxroHQvzŃe4`eb?V'ax * ǡ~MCC0"rsSC=y [^ՔI1d#J9&I# g߶c*B+FWndM}RYubPvc?_gMk5Zoof~G>ص͈,gk]E8?`aN/`p22it (/[@|;C]ar6X W,COQY``J_Bhq8 !;.*ĿLMbMKa{boKInUowg3Ս|Rq?'SoIV\]iTgȋ[_Z_j5'N8wM%+E:v +"Ӫax;Y `m e"bsiq>,Znè3Œe(go =$Rܬ'J:cj3f2 +N:3CC;Ov"<ȳA?9=ԇa{M˻&}Lnu4۟V[+._b$t1.}c{<0PBW*ZCƛOS 0aS5Ε-}7-*IC{1ȹAZųrO(G n69i5bDN'wL ,j"WvyMbfv&,ՆHѶG[f&Px&I뤏i=(˗z:[} $>]IlvyPd[tzw;hc9X S8{՝YJ4ks'$r+t7))m&LWQ L7)g͑".f E* +M:7jm !'3x<[r n^s:^M{9Eŷ8Bt,wv0V\a4T2G+F],ٚ]z~a1CJUs/ 'ګœk[M#I8ߦ)qU$rCO>ŰtM>IV&Mi`o k P^\ m"e]VD7u\~&bO4tޡKLԁN\-vaKD­~2W^"ቍö 8YJBX2U[0lq߃>KH>sx[b۝%4ꅛ5Kʹ}97B~ڧ_'n"D|TS~[;o(O8lWJ(Hk"^W-etVc`z2_](:7ڎ_E%$!99 +^DlEڵ8 arx| 1?peW5}2OnP +"h/KU%K~0[ P`CU/ݘM3ʽuǂ&gk7XpMǟA{C%u%۩|V#GLߊb{%OY3]Za_W!l?vyf*8*l4]e> zf(Y`ۘ8?HPىJ'.dڰ?X𤄳*y!v48Iv 1Lnဝ?hF,CO +2fn_Z,HcO냹nҧcH; n7ZBM]%ǖ6v &<ˋ9ݖdžx}-`{yq.*Za}Bub}ڧaƓNh \WK#aB۳;yROF˩^2X1 <)4mTUdը4 ȵc3P1O\'(L?]J{||-UOjk\|<Ju!I59٩_;Mz>T>K1W^F:ÖR6&beˇM$/YETR䙕ļxsp iP/YLa5{ K +yo,F'=Cnxl;`%mwoh`o(A\=#TЇZްT6ԞPHvMcwVES"}G$6D>?gx6O+=|d2˟;l >ƫ9΅ʥ1v`Tb]^ެj-YOC=镹jQIOnu&$iVJsй^8!? +6.D>LSh $;zQ +}A,R:Tc7ǁq 3*.<VU5ܮ 8 zЩbtpt$2{DT2*KJwnlR8vAZo`DLok}f.wi а+hI)uxs٦@w&ڿئжIܭ}h +Ak(C1<BO$ݿ&8 9_LZXz.F ~!TMzd -ƻx^wSzwA)K9`Q^4[,.#M&,3"_;-SHHpF4kCwTJZ&~>nu +i1$mHL&X6|rH :C.O56 "ஸRyu(in;27KQ(9ZH kUi +f"fM `3ޘʚKd|Y&ƖPhg?LZ ?f|=Y r.rB)e$K"<2?8Aѫccܘ!Jl  r~tSTLu'M\Aj+Ƅi 5OG8go^'.l aG7{59عsK$L?2{0Tl述Yń~1k1{SkZXq,RmQ:gPTS{*8W2D]H}S?)iBV5ķ4):9Wfcs;*VzJ™A>dvrhqX cb&:jm+[16dtW1Nī}gNӴ?'RՄ۽dXlNn')[)<_$LoyT2x w Oo$‹]Ⱦ;F3Yo3 + " +?[mzlX- ޿R΅ QMo=Cm`!1 +YU#AyUZv8~ |3s&ˤJLn՟ǝ]?Zʺ}jF `i>{G A-& K }(x]d1 :dm~ dߊċMo׃v%ۿYsD 5xA8+I귩IIpYat!&XmE<.D`ьZ(gVB]-㺁tjc!k(匀JK'gc14cu?;oTo''E֣"xL_ =$Icĉb WU"HꢟĘsGo]k/{,]G+78&vXi:B,!ѐG"*qDŽQʨ!24_!/t"k?h0>u| zՖclŽ!uÍqsR5H$puYqXo#R_\5_?!IgF)/eau'AVdr}Y'kfVu9 !p죍e S`*kBkO}<|OA)C )ʝBങ(t* +l !2N/E>`S,RQ#bM,TYb}+`6kGe9!6$?]hJ.?Y @w԰dlptgURɡ-(r _,R‚nuX)"V@.2*I/`>/ {V97 >eŀMN\N#/ +L|$!d JKؐ}-T;0_, k>!:1OSt0J@uGXSBgc/ԃ N<^9 Ք\I4jՓ9;k a:EM +Ple+pkTl^,Xe_UJe@y}+blKWZ:,cyf0\0ZSE>˧=zpG\y+[[yZt3ߍ.xci^;'ArM;]=8?V6yʿUGF-m4@wc"VaU-#cHd#]EJ:I/ï]S0_Cٍm0 W,Di$yw*˕ck#:G hj-RXvtd?XKakZ|^2biBMd0F(glӆIcԙKYV:_g7. >i@3&үI~SMeBa򢳕=܇ O8Gq A;8alU`>v_#*A" (N?Yz{ZU'4."Qkoswa :7F{ *hw,btzdth.}_p:\lGo]v%J4 7Y=}`%WgE +GuEDԥ;d!/1kIfYYZ-Mi]$!r +LTV=o +۽P߸Bx=$-6){wk(@øOHUB ?rl6c>uҔIhկU}z$ߓ$j WB_= D#0 ExZiܤI}կjW|ƜڈMy-[؅٠ޥU$bxʄ&PznXAz^ |Y:˚pxSe9k +umޠDv +Ibף~)bX|O&g I'u!77X*() ݥ}iTl,Kͯl +ܹP/o=K5)k9 ,!P_"#A4얹l1CU_fEiNat u*H6VV F+D̙C~Zk+M + JT<5JŵE]+D>B8]8Th'/!7?TknG Ro7y>")Ɉ@aN J?$O@_,a4ƀy@+ ;`FZvǺֺeeG X~&eu`Oףehy@W)%u734T^vhά$ sv,$ 뷓xR| ,W]ץ#0*4>xf'FIc؋et7;e;˯y *R/r3}Ks9 6{W?i#UgeV}yݬLq#nʏƧWd1vۻEg]Èeq<RZ=~Wy4x*-%VVնQ -ЇMhaQdөy?fx>> QN[sv .Xpru -ݴ+I^DO ;6wۇQFoA8Oɻ)?A=+(*ajL2)㪼PR*C*(}syXq%+8x.Mڽ4cUb{3]*suSsr{AQ*k.V_a ;\rߒab2 :GO/>qF'R$5*:8~K[̟/Dh_%1}Vp}#\/9`S/ |Va؉s026,GWd=pHo6<2n^ibkʗu!sԳrb{vb)`7c<GN7%6$PB[N/f U@]k~'/_H7`"oNF^Jف}-c\žsY(A7,z*\֟_~ |O +hNN9vG'Ug4R1L}ݷ7Ar"s]D̜*f8>5#!]J@oxqrh߬ڹ jB  Jže)5薷71ӬQ^uܐ\#:<+1382ɜiB+WT^"a~J7Xi0`'_&Eg̦n3n eŃdTF<>p .2ĩ ?j٦} jXXcT7J B)Nc6+'d +Fm.]mD!]Yplk`J sTBVe졽. k90TʶņrKj,fh32zz9=d=ҡ9|4ophg\TI6Òҋ3ݪRT=$?ìAd`UƏ`ߌ${sѥ * .VlyƍK jfk yؒ:wi{zNكZ]d_"HJ?e`:0H-Q1vCt-T"w)׵{pδmF6gM_鴓0(K(m`Wkmy⯁+0ugIf>W +ƅϛ7-DiJG_)utU +",%ULڀbM!qxE~Als.4fH"\¸Ա _wgB8LMLUyasjҞӽ DȚ +7nOWHg~7I' +ȷ[MVw 7SMR4; J?jѿJ\덈7Kp (WcB3 @_zdxdUR .̺5msHIxIrt0Y"t/Y n.YUwAYʞa QI4sͷ`Zq{x73KS6FpJş`m,݊!iD'@).cAFkaG34Lkubu`wmS0-.)Z/ԥwhC +M-.Fx*Iw jO i㟧:eȶIſ:܊Hݧ-rh\'̒R_TgGP ZquSAA2,ᇉ^ϒO?靹Mw6BIxpDy,4ՓAG.WA'R(ZǏh8Ͽ?3']rmRKbw`wBSvgMqL&"d4E({qtf[A\ʻt1ǞRRy# dEtju Y*2?.T2>Gvwtj3^!E3廢XUZ _|lmE_r/-ϳٽ'ILRQd[a˴TC +,Ojʊb?כ:m~U]†^E_J ciG:OKá]QHqz2n_y#uB4oXL7:nT5Fˆ)L81C [bPN.u{2e$ ^%8=%I%u-^"m.۸~:k@jucd"kDmZTMc"Gtd$. $  */a+wz(SNN4jU@7Ku7$-椟xPU?v0&T t8'9==!E'рl>bd"}r hCAi\88;B8RpgFaT9%:$+Jhn ߢ&[K45?ۑR<~cLsoEpdអػTݰj\#2 ؚF)^ 5.6 +k4ݗي3J)bo߮k @I_wz +eHxw.=lO:Ї(=V{/k?Ib"9Rdxq+'ͺh'{1etb|ў!ݱ +s7M9-@ЮRB#:މףlV̌eUwJ"1 CW|M`/n$wΛ_7S `kssމo1,ؽII䝊s>9y U.&ˁ:.mQG-+NM91 +endstream +endobj +1998 0 obj << -/Type /FontDescriptor -/FontName /KKURMF+CMR9 -/Flags 4 -/FontBBox [-39 -250 1036 750] -/Ascent 694 -/CapHeight 683 -/Descent -194 -/ItalicAngle 0 -/StemV 74 -/XHeight 431 -/CharSet (/B/G/I/L/O/P/X/a/b/c/comma/d/e/eight/equal/f/five/four/g/h/i/m/n/nine/o/one/p/parenleft/parenright/period/quoteright/r/s/seven/six/t/three/two/u/x/z/zero) -/FontFile 1912 0 R +/Length1 1494 +/Length2 2555 +/Length3 0 +/Length 4049 >> -% 1915 0 obj +stream +%!PS-AdobeFont-1.0: CMTT8 003.002 +%%Title: CMTT8 +%Version: 003.002 +%%CreationDate: Mon Jul 13 16:17:00 2009 +%%Creator: David M. Jones +%Copyright: Copyright (c) 1997, 2009 American Mathematical Society +%Copyright: (), with Reserved Font Name CMTT8. +% This Font Software is licensed under the SIL Open Font License, Version 1.1. +% This license is in the accompanying file OFL.txt, and is also +% available with a FAQ at: http://scripts.sil.org/OFL. +%%EndComments +FontDirectory/CMTT8 known{/CMTT8 findfont dup/UniqueID known{dup +/UniqueID get 5000830 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +11 dict begin +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def +/FontName /HZGQIC+CMTT8 def +/FontBBox {-5 -232 545 699 }readonly def +/PaintType 0 def +/FontInfo 9 dict dup begin +/version (003.002) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMTT8.) readonly def +/FullName (CMTT8) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch true def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 98 /b put +dup 99 /c put +dup 101 /e put +dup 105 /i put +dup 108 /l put +dup 110 /n put +dup 112 /p put +dup 114 /r put +dup 115 /s put +dup 116 /t put +readonly def +currentdict end +currentfile eexec +oc;jAw-24 WEvQC<3A2kX0k^|:ٴfb,|=sLu2KZ`3ndgRw@),q՜G<&h'. ΍883 ABAԾI$s@F25ڪ,i pK>6K` %E((bsP,WKT"0KDǯҖkIUܨf/+WN/r4qW@d̍OG|Babhy52+2upa,-I"MC㉮0גv\G\% ؊Z\+;7tamJsXPc0NqL%tWtį, );b&L}NֲGi$߲:[<+s\6qGq %E~@kִ[iYKq[ Pvbr~1z6>)廄\oxobBin\![(;"0:7w yqMomD$cqKRXr c3mx]FЅ4_~n} VFuM;[)(6!^c0?;mXBeotnEyx<Pq;A >O8}yf2rDՒ%s}w` Ӱߒ/3x6& ?gى.\YEII~:I`ԉlWI1{6oy"ޤW[͗#@xs*宓d4]'oK荛%~%j{|FA1@*z}\13%u}jy<=/ޠ6l@CC\+F!} k9I F _Wڪ+̚~"'K["Ş 4]#) l'iӥjI:]e '{Ͳ}|+nгΙY0ܬsdu;?Dz~!3ȷgǯ^@exVa؉HaĎqO*K{ډ %8;'FJ`K!-%lR,ܽx!z CB!1@ K=\ßߪb(m4wPZh6?@LC@8uw1rǿ$BKń +&̡Y5<1B dla;9^'lHn,W{Y[v +endstream +endobj +2000 0 obj << -/Type /FontDescriptor -/FontName /IMOIOS+CMSY10 -/Flags 4 -/FontBBox [-29 -960 1116 775] -/Ascent 750 -/CapHeight 683 -/Descent -194 -/ItalicAngle -14 -/StemV 40 -/XHeight 431 -/CharSet (/B/H/I/arrowleft/bar/bardbl/braceleft/braceright/bullet/element/greaterequal/lessequal/minus/negationslash/radical/section) -/FontFile 1914 0 R +/Length1 1656 +/Length2 8404 +/Length3 0 +/Length 10060 >> -% 1917 0 obj +stream +%!PS-AdobeFont-1.0: CMTT9 003.002 +%%Title: CMTT9 +%Version: 003.002 +%%CreationDate: Mon Jul 13 16:17:00 2009 +%%Creator: David M. Jones +%Copyright: Copyright (c) 1997, 2009 American Mathematical Society +%Copyright: (), with Reserved Font Name CMTT9. +% This Font Software is licensed under the SIL Open Font License, Version 1.1. +% This license is in the accompanying file OFL.txt, and is also +% available with a FAQ at: http://scripts.sil.org/OFL. +%%EndComments +FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup +/UniqueID get 5000831 eq exch/FontType get 1 eq and}{pop false}ifelse +{save true}{false}ifelse}{false}ifelse +11 dict begin +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def +/FontName /KMUHVJ+CMTT9 def +/FontBBox {-6 -233 542 698 }readonly def +/PaintType 0 def +/FontInfo 9 dict dup begin +/version (003.002) readonly def +/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050\051, with Reserved Font Name CMTT9.) readonly def +/FullName (CMTT9) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch true def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 84 /T put +dup 97 /a put +dup 98 /b put +dup 99 /c put +dup 58 /colon put +dup 44 /comma put +dup 100 /d put +dup 101 /e put +dup 108 /l put +dup 110 /n put +dup 111 /o put +dup 112 /p put +dup 40 /parenleft put +dup 41 /parenright put +dup 114 /r put +dup 115 /s put +dup 116 /t put +dup 95 /underscore put +dup 121 /y put +readonly def +currentdict end +currentfile eexec +oc;jAw-=%W)-{ru)rAE(@{빴Q|_R +ϤA -T@|q|VkJ%qu8PwGxŪ̆Q6K -U\%b"t-*xJ+ +}3{Z2zݬT2s$Z&{BJ{=מ0).nBd^/!2-G+~b7 N&lds%o53NPc9U,Y뱂0L+OAdN;[9!"k_ӆ$Rb՘g uxVMhL$3Py5,o"7'*E<Zcb8r$`Fާ/r]:BI\$~=ԑψȜȿ!ꖲQS*_LyXg*!#B;Fdy9 vF.x&W܀cK[龭j + T-hj:ֲbcӢx~gk0^Z]Ψ&33g3wm2pBÌ:~qF邉u<^IE=*J.Zwc38Y.1jKAs;Ļ`R^yCQ4y &{uQgF +vlP︩ +e=Gylw +x]v&o9fiQpymQrijF\UBu :sy7R'T{cr/bzfuy-_Kh~ sӭ>a(zfz!#vZuZ"VUEɟw-@ i aI+ R̿P;XC 6e+je[7-^j[ +g93 ÅD c% ؙyJC=z[t vʩ>V3m9=Wp+l֏nׇ3g#7:Q@P~-u@ӱDV\sS;x; +J 'p +y?^CI $HGYt` \Lj%fxSڌrܾ0;=l;ÀMI>o C" + m޳I^:O|u.^Nuwb`95>dJJ 0Xp[tu^%ئ`' +0T I{ 6j=w ɽډ7Ș:{?lH)8OfmXn,ߗ Pii]X&Bx{5ǬfEޮDtz9nyB t+ 4,p$@x&|Ĩ4H~4J7B<«CP}uz|gr-:u[D\; }bUIS{27= FBk' + .~"tOz-3RٷZ[&hD|AQGCH :\'`aу2{=o>u&0߻;e01]V2c`CJ1/LW Yckɲ }c8LC|g%Y9.?e+PҁI4,}#yE؇]%T>},S !*. vt7[ORYSSԪ5՞l+>͎l6UY'_p%=]^:k2 b3Ҳvu\k!n2̋@Q*v}5z3mؚ/_~GfG쪑4,=5%ڹ]EHfnۀxRL/' 7.eϽaG}r +~) ]<$2uo6){QBX[#CI3je/NUX+`"P[\AXa|i Hnk, ? J_y3^c}|at <;1v@{EҬ /E7+?`+7TɈ/~2Fe匊I5)SXvNe BҮmy‰_14tl0w +3Kq +Tύ\Ӽzl]%bpg7G)t[VN~O^ v`v`чm +ňXh>r:9e1SNC$c% $¦,TM2COVe=S7u_{x $:#Zi1ʇl y ö^|QLψc&Hn) Ϩ|he }IMǕW*+-Z,dުyfmvԛ]t ;`o]WHY}'PN`SuBf$,ՕL=wm0mV l TOnt6M"X˃qDf0ms9?Ğ_mnH`AAmҚ +ܭajfnUۙCat/vPqE$NP^_مdv"TC[ |wҁ1|7B%fW"d6QIaҝE.Z;eF{N#{}?7yg +hS `tZ" *QC&KsulJ|6i$rEFXggξ&vH_I)LR*QgXuV,В"%_L΄"4vܹ٩vûZ! +Y@L{vߺ+N*Y+qi]/^L)my1=K ~{it{n?'2d,佛rt߳-F܅Fl L yfF?M_*a5պӽŒ!d 2Λiw/";qfW"^0$goaWvm.͢B/c@{:d"Av]P}C*&kx;k6܆xɃ% ^X2Lg]VmMhxP&({g^֣ ĤԒ|(dk/ܺHԔqJ'wBtgO`Oc \K*/g9Z<0vBWK=Q]a9'ro+&w@^l2?JVSVB]G G Oڡ=wf X`No{PIlYdfoY L?! b'UL%l tdNXF;Mv&DEc#GK∂ _-LݟG'r )~O* +ƨ01S7<Qಸ*L"+lk:z@N_qNyF@UZW0bBk/h:p!L^9<,_,&_x^1;t,_ +Qn1:.>4S, +K2~GLU3]q/GѭFLmι?q9Or-s*|V;ٝQ>WaPy +!?9%%: f2h~췲VFI#Ov݌E4r +]a見3pbSi\)NLeImzGH)(8+PdTMN&Ц&C|_] +oqhoL7|.29*!AʆRiVi1qc8#BU9MKEVP'O|е= ; +l2YL|Zs͍d|*.K4˜m Xc{GdpHJx F4VMw/TƕS$E0}XZj$"#NJFF> +RֿbO]k;eE2ei0g©X} aU j†U*ܤ泔'[Ï I86>SѩjO&@;_ꛪ 1,0gd3 r(L]iRlWԒX.働aAeゅ~#~> v>x4],^f{koO\AY<|/d!nt*HNy*sk@@"JQx-mYw_M TnlY>(aO,QeJ ;ϙb١A\ڶR,݄?NU~S-!z׶$O҃'S;?;ba.% ӳ@˞X{٭V?-.=xM֚JmPP{#'ށٽiDLTI_}g [V, +)OЎK _̤VBE igd#A\&鐣D#JZcfWU^*WBl_AI-a )5|%X(VpQF07"Wue dDة R# 52"T&DmIJ1{@i6KQΝ>D[>2@']}Uopż\mG^tUpnoq;#[u +ex +cECk y9ڷ҇VVן/" C͗4*78*`1ީS2 Q8I&ʺ3f73us>Xg*#zi'$ZYH2|?c^2sKʇXcERNpev5E>y\1`ki~~B, ͐ +ga!.Θ:ܨ+. +endstream +endobj +1993 0 obj << -/Type /FontDescriptor -/FontName /XNLILI+CMSY7 -/Flags 4 -/FontBBox [-15 -951 1251 782] -/Ascent 750 -/CapHeight 683 -/Descent -194 -/ItalicAngle -14 -/StemV 49 -/XHeight 431 -/CharSet (/infinity/minus) -/FontFile 1916 0 R +/Type /ObjStm +/N 100 +/First 956 +/Length 12939 >> -% 1919 0 obj +stream +1992 0 1995 373 1997 636 1999 1115 2001 1347 584 1631 582 1772 1752 1913 1725 2054 796 2196 +844 2337 812 2478 1910 2618 585 2758 814 2898 811 3036 816 3174 1300 3313 813 3453 1170 3593 +776 3732 583 3873 810 4014 872 4155 1012 4295 586 4436 777 4549 873 4662 928 4775 963 4888 +992 5001 1035 5118 1090 5238 1138 5358 1196 5478 1249 5598 1301 5718 1357 5838 1398 5958 1436 6078 +1485 6198 1527 6318 1561 6438 1601 6558 1642 6678 1674 6798 1706 6918 1743 7038 1805 7158 1846 7278 +1883 7398 1923 7518 2002 7620 2003 7735 2004 7856 2005 7977 2006 8098 2007 8192 2008 8288 574 8357 +570 8417 566 8528 562 8602 558 8690 554 8778 550 8866 546 8954 542 9028 538 9153 534 9227 +530 9315 526 9403 522 9491 518 9579 514 9653 510 9778 506 9852 502 9940 498 10028 494 10102 +490 10227 486 10301 482 10389 478 10477 474 10565 470 10653 466 10741 462 10829 458 10917 454 11005 +450 11093 446 11181 442 11269 438 11357 434 11445 430 11533 426 11621 422 11695 418 11821 414 11895 +% 1992 0 obj << /Type /FontDescriptor /FontName /HBJLDT+CMTI10 @@ -26784,9 +27947,9 @@ stream /StemV 68 /XHeight 431 /CharSet (/A/B/C/D/E/F/G/I/L/M/N/O/P/R/S/T/U/V/a/b/c/colon/d/e/f/ff/fi/five/g/h/hyphen/i/j/l/m/n/nine/o/one/p/period/q/quoteright/r/s/slash/t/three/two/u/v/w/x/y/zero) -/FontFile 1918 0 R +/FontFile 1991 0 R >> -% 1921 0 obj +% 1995 0 obj << /Type /FontDescriptor /FontName /OZJPZO+CMTI12 @@ -26799,9 +27962,9 @@ stream /StemV 63 /XHeight 431 /CharSet (/A/B/L/P/S/a/b/c/d/e/f/g/h/i/l/n/o/p/r/s/t/u/y) -/FontFile 1920 0 R +/FontFile 1994 0 R >> -% 1923 0 obj +% 1997 0 obj << /Type /FontDescriptor /FontName /TJSMYH+CMTT10 @@ -26814,9 +27977,9 @@ stream /StemV 69 /XHeight 431 /CharSet (/A/B/C/D/E/F/I/K/L/M/N/O/P/R/S/T/U/W/Y/a/ampersand/asciitilde/asterisk/b/backslash/bracketleft/bracketright/c/colon/comma/d/e/equal/f/four/g/h/hyphen/i/j/k/l/m/n/o/one/p/parenleft/parenright/percent/period/plus/q/r/s/six/slash/t/three/two/u/underscore/v/w/x/y/z/zero) -/FontFile 1922 0 R +/FontFile 1996 0 R >> -% 1925 0 obj +% 1999 0 obj << /Type /FontDescriptor /FontName /HZGQIC+CMTT8 @@ -26829,9 +27992,9 @@ stream /StemV 76 /XHeight 431 /CharSet (/b/c/e/i/l/n/p/r/s/t) -/FontFile 1924 0 R +/FontFile 1998 0 R >> -% 1927 0 obj +% 2001 0 obj << /Type /FontDescriptor /FontName /KMUHVJ+CMTT9 @@ -26844,466 +28007,497 @@ stream /StemV 74 /XHeight 431 /CharSet (/T/a/b/c/colon/comma/d/e/l/n/o/p/parenleft/parenright/r/s/t/underscore/y) -/FontFile 1926 0 R +/FontFile 2000 0 R >> -% 572 0 obj +% 584 0 obj << /Type /Font /Subtype /Type1 /BaseFont /RAJOBS+CMBX10 -/FontDescriptor 1889 0 R +/FontDescriptor 1962 0 R /FirstChar 11 /LastChar 124 -/Widths 1885 0 R +/Widths 1958 0 R >> -% 570 0 obj +% 582 0 obj << /Type /Font /Subtype /Type1 /BaseFont /BWDLNI+CMBX12 -/FontDescriptor 1891 0 R +/FontDescriptor 1964 0 R /FirstChar 12 /LastChar 124 -/Widths 1887 0 R +/Widths 1960 0 R >> -% 1683 0 obj +% 1752 0 obj << /Type /Font /Subtype /Type1 /BaseFont /VUBHOM+CMBX9 -/FontDescriptor 1893 0 R +/FontDescriptor 1966 0 R /FirstChar 97 /LastChar 117 -/Widths 1869 0 R +/Widths 1942 0 R >> -% 1655 0 obj +% 1725 0 obj << /Type /Font /Subtype /Type1 /BaseFont /OUFNAH+CMEX10 -/FontDescriptor 1895 0 R +/FontDescriptor 1968 0 R /FirstChar 88 /LastChar 115 -/Widths 1870 0 R +/Widths 1943 0 R >> -% 770 0 obj +% 796 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /PUWBWT+CMMI10 -/FontDescriptor 1897 0 R +/BaseFont /HKHZAC+CMMI10 +/FontDescriptor 1970 0 R /FirstChar 11 /LastChar 122 -/Widths 1882 0 R +/Widths 1955 0 R >> -% 817 0 obj +% 844 0 obj << /Type /Font /Subtype /Type1 /BaseFont /RVPZIX+CMMI5 -/FontDescriptor 1899 0 R +/FontDescriptor 1972 0 R /FirstChar 105 /LastChar 105 -/Widths 1875 0 R +/Widths 1948 0 R >> -% 786 0 obj +% 812 0 obj << /Type /Font /Subtype /Type1 /BaseFont /ZUYGVH+CMMI7 -/FontDescriptor 1901 0 R +/FontDescriptor 1974 0 R /FirstChar 59 /LastChar 110 -/Widths 1879 0 R +/Widths 1952 0 R >> -% 1840 0 obj +% 1910 0 obj << /Type /Font /Subtype /Type1 /BaseFont /ZOAUSA+CMMI8 -/FontDescriptor 1903 0 R +/FontDescriptor 1976 0 R /FirstChar 67 /LastChar 71 -/Widths 1868 0 R +/Widths 1941 0 R >> -% 573 0 obj +% 585 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /SEWPRR+CMR10 -/FontDescriptor 1905 0 R +/BaseFont /WUKOCR+CMR10 +/FontDescriptor 1978 0 R /FirstChar 11 -/LastChar 123 -/Widths 1884 0 R +/LastChar 124 +/Widths 1957 0 R >> -% 788 0 obj +% 814 0 obj << /Type /Font /Subtype /Type1 /BaseFont /UJRPBG+CMR6 -/FontDescriptor 1907 0 R +/FontDescriptor 1980 0 R /FirstChar 49 /LastChar 53 -/Widths 1877 0 R +/Widths 1950 0 R >> -% 785 0 obj +% 811 0 obj << /Type /Font /Subtype /Type1 /BaseFont /GIODUE+CMR7 -/FontDescriptor 1909 0 R +/FontDescriptor 1982 0 R /FirstChar 48 /LastChar 58 -/Widths 1880 0 R +/Widths 1953 0 R >> -% 790 0 obj +% 816 0 obj << /Type /Font /Subtype /Type1 /BaseFont /HFTEUS+CMR8 -/FontDescriptor 1911 0 R +/FontDescriptor 1984 0 R /FirstChar 40 /LastChar 121 -/Widths 1876 0 R +/Widths 1949 0 R >> -% 1231 0 obj +% 1300 0 obj << /Type /Font /Subtype /Type1 /BaseFont /KKURMF+CMR9 -/FontDescriptor 1913 0 R +/FontDescriptor 1986 0 R /FirstChar 39 /LastChar 122 -/Widths 1871 0 R +/Widths 1944 0 R >> -% 787 0 obj +% 813 0 obj << /Type /Font /Subtype /Type1 /BaseFont /IMOIOS+CMSY10 -/FontDescriptor 1915 0 R +/FontDescriptor 1988 0 R /FirstChar 0 /LastChar 120 -/Widths 1878 0 R +/Widths 1951 0 R >> -% 1144 0 obj +% 1170 0 obj << /Type /Font /Subtype /Type1 /BaseFont /XNLILI+CMSY7 -/FontDescriptor 1917 0 R +/FontDescriptor 1990 0 R /FirstChar 0 /LastChar 49 -/Widths 1872 0 R +/Widths 1945 0 R >> -% 750 0 obj +% 776 0 obj << /Type /Font /Subtype /Type1 /BaseFont /HBJLDT+CMTI10 -/FontDescriptor 1919 0 R +/FontDescriptor 1992 0 R /FirstChar 11 /LastChar 121 -/Widths 1883 0 R +/Widths 1956 0 R >> -% 571 0 obj +% 583 0 obj << /Type /Font /Subtype /Type1 /BaseFont /OZJPZO+CMTI12 -/FontDescriptor 1921 0 R +/FontDescriptor 1995 0 R /FirstChar 65 /LastChar 121 -/Widths 1886 0 R +/Widths 1959 0 R >> -% 784 0 obj +% 810 0 obj << /Type /Font /Subtype /Type1 /BaseFont /TJSMYH+CMTT10 -/FontDescriptor 1923 0 R +/FontDescriptor 1997 0 R /FirstChar 37 /LastChar 126 -/Widths 1881 0 R +/Widths 1954 0 R >> -% 846 0 obj +% 872 0 obj << /Type /Font /Subtype /Type1 /BaseFont /HZGQIC+CMTT8 -/FontDescriptor 1925 0 R +/FontDescriptor 1999 0 R /FirstChar 98 /LastChar 116 -/Widths 1874 0 R +/Widths 1947 0 R >> -% 986 0 obj +% 1012 0 obj << /Type /Font /Subtype /Type1 /BaseFont /KMUHVJ+CMTT9 -/FontDescriptor 1927 0 R +/FontDescriptor 2001 0 R /FirstChar 40 /LastChar 121 -/Widths 1873 0 R +/Widths 1946 0 R >> -% 574 0 obj +% 586 0 obj << /Type /Pages /Count 6 -/Parent 1928 0 R -/Kids [565 0 R 576 0 R 627 0 R 680 0 R 729 0 R 734 0 R] +/Parent 2002 0 R +/Kids [577 0 R 588 0 R 635 0 R 692 0 R 738 0 R 758 0 R] >> -% 751 0 obj +% 777 0 obj << /Type /Pages /Count 6 -/Parent 1928 0 R -/Kids [748 0 R 768 0 R 781 0 R 797 0 R 809 0 R 814 0 R] +/Parent 2002 0 R +/Kids [774 0 R 794 0 R 807 0 R 823 0 R 836 0 R 841 0 R] >> -% 847 0 obj +% 873 0 obj << /Type /Pages /Count 6 -/Parent 1928 0 R -/Kids [829 0 R 850 0 R 861 0 R 869 0 R 880 0 R 895 0 R] +/Parent 2002 0 R +/Kids [855 0 R 876 0 R 887 0 R 895 0 R 906 0 R 921 0 R] >> -% 902 0 obj +% 928 0 obj << /Type /Pages /Count 6 -/Parent 1928 0 R -/Kids [899 0 R 904 0 R 909 0 R 916 0 R 925 0 R 929 0 R] +/Parent 2002 0 R +/Kids [925 0 R 930 0 R 936 0 R 943 0 R 951 0 R 955 0 R] >> -% 937 0 obj +% 963 0 obj << /Type /Pages /Count 6 -/Parent 1928 0 R -/Kids [934 0 R 939 0 R 943 0 R 947 0 R 951 0 R 957 0 R] +/Parent 2002 0 R +/Kids [960 0 R 965 0 R 969 0 R 973 0 R 977 0 R 983 0 R] >> -% 966 0 obj +% 992 0 obj << /Type /Pages /Count 6 -/Parent 1928 0 R -/Kids [963 0 R 970 0 R 977 0 R 983 0 R 988 0 R 999 0 R] +/Parent 2002 0 R +/Kids [989 0 R 996 0 R 1003 0 R 1009 0 R 1014 0 R 1026 0 R] >> -% 1008 0 obj +% 1035 0 obj << /Type /Pages /Count 6 -/Parent 1929 0 R -/Kids [1005 0 R 1015 0 R 1022 0 R 1038 0 R 1043 0 R 1050 0 R] +/Parent 2003 0 R +/Kids [1032 0 R 1042 0 R 1048 0 R 1064 0 R 1069 0 R 1076 0 R] >> -% 1064 0 obj +% 1090 0 obj << /Type /Pages /Count 6 -/Parent 1929 0 R -/Kids [1055 0 R 1069 0 R 1077 0 R 1082 0 R 1095 0 R 1100 0 R] +/Parent 2003 0 R +/Kids [1081 0 R 1095 0 R 1103 0 R 1108 0 R 1121 0 R 1127 0 R] >> -% 1111 0 obj +% 1138 0 obj << /Type /Pages /Count 6 -/Parent 1929 0 R -/Kids [1107 0 R 1113 0 R 1127 0 R 1134 0 R 1141 0 R 1152 0 R] +/Parent 2003 0 R +/Kids [1134 0 R 1140 0 R 1153 0 R 1160 0 R 1167 0 R 1178 0 R] >> -% 1170 0 obj +% 1196 0 obj << /Type /Pages /Count 6 -/Parent 1929 0 R -/Kids [1167 0 R 1174 0 R 1185 0 R 1191 0 R 1196 0 R 1204 0 R] +/Parent 2003 0 R +/Kids [1193 0 R 1200 0 R 1211 0 R 1217 0 R 1228 0 R 1234 0 R] >> -% 1218 0 obj +% 1249 0 obj << /Type /Pages /Count 6 -/Parent 1929 0 R -/Kids [1214 0 R 1228 0 R 1237 0 R 1249 0 R 1257 0 R 1261 0 R] +/Parent 2003 0 R +/Kids [1245 0 R 1251 0 R 1260 0 R 1266 0 R 1274 0 R 1284 0 R] >> -% 1283 0 obj +% 1301 0 obj << /Type /Pages /Count 6 -/Parent 1929 0 R -/Kids [1276 0 R 1285 0 R 1291 0 R 1300 0 R 1304 0 R 1309 0 R] +/Parent 2003 0 R +/Kids [1297 0 R 1306 0 R 1318 0 R 1326 0 R 1330 0 R 1345 0 R] >> -% 1319 0 obj +% 1357 0 obj << /Type /Pages /Count 6 -/Parent 1930 0 R -/Kids [1315 0 R 1321 0 R 1331 0 R 1336 0 R 1345 0 R 1353 0 R] +/Parent 2004 0 R +/Kids [1354 0 R 1361 0 R 1370 0 R 1374 0 R 1379 0 R 1385 0 R] >> -% 1361 0 obj +% 1398 0 obj << /Type /Pages /Count 6 -/Parent 1930 0 R -/Kids [1358 0 R 1365 0 R 1369 0 R 1377 0 R 1385 0 R 1391 0 R] +/Parent 2004 0 R +/Kids [1390 0 R 1401 0 R 1406 0 R 1415 0 R 1422 0 R 1427 0 R] >> -% 1409 0 obj +% 1436 0 obj << /Type /Pages /Count 6 -/Parent 1930 0 R -/Kids [1400 0 R 1413 0 R 1417 0 R 1429 0 R 1435 0 R 1442 0 R] +/Parent 2004 0 R +/Kids [1433 0 R 1438 0 R 1446 0 R 1454 0 R 1460 0 R 1470 0 R] >> -% 1451 0 obj +% 1485 0 obj << /Type /Pages /Count 6 -/Parent 1930 0 R -/Kids [1448 0 R 1453 0 R 1463 0 R 1469 0 R 1473 0 R 1478 0 R] +/Parent 2004 0 R +/Kids [1482 0 R 1487 0 R 1499 0 R 1505 0 R 1512 0 R 1518 0 R] >> -% 1487 0 obj +% 1527 0 obj << /Type /Pages /Count 6 -/Parent 1930 0 R -/Kids [1482 0 R 1490 0 R 1495 0 R 1501 0 R 1507 0 R 1513 0 R] +/Parent 2004 0 R +/Kids [1522 0 R 1532 0 R 1538 0 R 1542 0 R 1547 0 R 1551 0 R] >> -% 1524 0 obj +% 1561 0 obj << /Type /Pages /Count 6 -/Parent 1930 0 R -/Kids [1519 0 R 1527 0 R 1534 0 R 1538 0 R 1548 0 R 1552 0 R] +/Parent 2004 0 R +/Kids [1558 0 R 1564 0 R 1571 0 R 1577 0 R 1583 0 R 1589 0 R] >> -% 1568 0 obj +% 1601 0 obj << /Type /Pages /Count 6 -/Parent 1931 0 R -/Kids [1556 0 R 1571 0 R 1575 0 R 1581 0 R 1587 0 R 1594 0 R] +/Parent 2005 0 R +/Kids [1596 0 R 1604 0 R 1608 0 R 1618 0 R 1622 0 R 1626 0 R] >> -% 1601 0 obj +% 1642 0 obj << /Type /Pages /Count 6 -/Parent 1931 0 R -/Kids [1598 0 R 1603 0 R 1607 0 R 1611 0 R 1615 0 R 1619 0 R] +/Parent 2005 0 R +/Kids [1639 0 R 1644 0 R 1650 0 R 1656 0 R 1663 0 R 1667 0 R] >> -% 1630 0 obj +% 1674 0 obj << /Type /Pages /Count 6 -/Parent 1931 0 R -/Kids [1625 0 R 1632 0 R 1638 0 R 1644 0 R 1650 0 R 1658 0 R] +/Parent 2005 0 R +/Kids [1671 0 R 1677 0 R 1681 0 R 1685 0 R 1689 0 R 1695 0 R] >> -% 1667 0 obj +% 1706 0 obj << /Type /Pages /Count 6 -/Parent 1931 0 R -/Kids [1663 0 R 1672 0 R 1678 0 R 1708 0 R 1714 0 R 1720 0 R] +/Parent 2005 0 R +/Kids [1701 0 R 1708 0 R 1714 0 R 1720 0 R 1728 0 R 1733 0 R] >> -% 1731 0 obj +% 1743 0 obj << /Type /Pages /Count 6 -/Parent 1931 0 R -/Kids [1726 0 R 1733 0 R 1738 0 R 1745 0 R 1752 0 R 1758 0 R] +/Parent 2005 0 R +/Kids [1740 0 R 1747 0 R 1777 0 R 1784 0 R 1790 0 R 1796 0 R] >> -% 1770 0 obj +% 1805 0 obj << /Type /Pages /Count 6 -/Parent 1931 0 R -/Kids [1765 0 R 1772 0 R 1779 0 R 1785 0 R 1794 0 R 1798 0 R] +/Parent 2005 0 R +/Kids [1802 0 R 1808 0 R 1815 0 R 1822 0 R 1828 0 R 1835 0 R] >> -% 1809 0 obj +% 1846 0 obj << /Type /Pages /Count 6 -/Parent 1932 0 R -/Kids [1806 0 R 1812 0 R 1816 0 R 1822 0 R 1826 0 R 1833 0 R] +/Parent 2006 0 R +/Kids [1841 0 R 1848 0 R 1854 0 R 1863 0 R 1867 0 R 1875 0 R] >> -% 1848 0 obj +% 1883 0 obj +<< +/Type /Pages +/Count 6 +/Parent 2006 0 R +/Kids [1880 0 R 1886 0 R 1892 0 R 1896 0 R 1903 0 R 1915 0 R] +>> +% 1923 0 obj << /Type /Pages /Count 4 -/Parent 1932 0 R -/Kids [1845 0 R 1851 0 R 1855 0 R 1863 0 R] +/Parent 2006 0 R +/Kids [1920 0 R 1925 0 R 1929 0 R 1937 0 R] >> -% 1928 0 obj +% 2002 0 obj << /Type /Pages /Count 36 -/Parent 1933 0 R -/Kids [574 0 R 751 0 R 847 0 R 902 0 R 937 0 R 966 0 R] +/Parent 2007 0 R +/Kids [586 0 R 777 0 R 873 0 R 928 0 R 963 0 R 992 0 R] >> -% 1929 0 obj +% 2003 0 obj << /Type /Pages /Count 36 -/Parent 1933 0 R -/Kids [1008 0 R 1064 0 R 1111 0 R 1170 0 R 1218 0 R 1283 0 R] +/Parent 2007 0 R +/Kids [1035 0 R 1090 0 R 1138 0 R 1196 0 R 1249 0 R 1301 0 R] >> -% 1930 0 obj +% 2004 0 obj << /Type /Pages /Count 36 -/Parent 1933 0 R -/Kids [1319 0 R 1361 0 R 1409 0 R 1451 0 R 1487 0 R 1524 0 R] +/Parent 2007 0 R +/Kids [1357 0 R 1398 0 R 1436 0 R 1485 0 R 1527 0 R 1561 0 R] >> -% 1931 0 obj +% 2005 0 obj << /Type /Pages /Count 36 -/Parent 1933 0 R -/Kids [1568 0 R 1601 0 R 1630 0 R 1667 0 R 1731 0 R 1770 0 R] +/Parent 2007 0 R +/Kids [1601 0 R 1642 0 R 1674 0 R 1706 0 R 1743 0 R 1805 0 R] >> -% 1932 0 obj +% 2006 0 obj << /Type /Pages -/Count 10 -/Parent 1933 0 R -/Kids [1809 0 R 1848 0 R] +/Count 16 +/Parent 2007 0 R +/Kids [1846 0 R 1883 0 R 1923 0 R] >> -% 1933 0 obj +% 2007 0 obj << /Type /Pages -/Count 154 -/Kids [1928 0 R 1929 0 R 1930 0 R 1931 0 R 1932 0 R] +/Count 160 +/Kids [2002 0 R 2003 0 R 2004 0 R 2005 0 R 2006 0 R] >> -% 1934 0 obj +% 2008 0 obj << /Type /Outlines /First 4 0 R /Last 4 0 R /Count 1 >> +% 574 0 obj +<< +/Title 575 0 R +/A 572 0 R +/Parent 570 0 R +>> +% 570 0 obj +<< +/Title 571 0 R +/A 568 0 R +/Parent 4 0 R +/Prev 542 0 R +/First 574 0 R +/Last 574 0 R +/Count -1 +>> +% 566 0 obj +<< +/Title 567 0 R +/A 564 0 R +/Parent 542 0 R +/Prev 562 0 R +>> % 562 0 obj << /Title 563 0 R /A 560 0 R -/Parent 558 0 R +/Parent 542 0 R +/Prev 558 0 R +/Next 566 0 R >> % 558 0 obj << /Title 559 0 R /A 556 0 R -/Parent 4 0 R -/Prev 530 0 R -/First 562 0 R -/Last 562 0 R -/Count -1 +/Parent 542 0 R +/Prev 554 0 R +/Next 562 0 R >> % 554 0 obj << /Title 555 0 R /A 552 0 R -/Parent 530 0 R +/Parent 542 0 R /Prev 550 0 R +/Next 558 0 R >> % 550 0 obj << /Title 551 0 R /A 548 0 R -/Parent 530 0 R +/Parent 542 0 R /Prev 546 0 R /Next 554 0 R >> @@ -27311,77 +28505,56 @@ stream << /Title 547 0 R /A 544 0 R -/Parent 530 0 R -/Prev 542 0 R +/Parent 542 0 R /Next 550 0 R >> - -endstream -endobj -1935 0 obj -<< -/Type /ObjStm -/N 100 -/First 886 -/Length 9742 ->> -stream -542 0 538 88 534 176 530 250 526 375 522 449 518 537 514 625 510 713 506 801 -502 875 498 1000 494 1074 490 1162 486 1250 482 1324 478 1449 474 1523 470 1611 466 1699 -462 1787 458 1875 454 1963 450 2051 446 2139 442 2227 438 2315 434 2403 430 2491 426 2579 -422 2667 418 2755 414 2843 410 2917 406 3043 401 3117 397 3205 393 3293 389 3381 385 3469 -381 3557 377 3645 373 3733 369 3821 365 3909 361 3997 357 4085 353 4173 349 4261 345 4349 -341 4437 337 4525 333 4613 329 4701 325 4789 321 4877 317 4965 313 5053 309 5141 305 5229 -301 5317 297 5391 293 5517 289 5591 285 5679 281 5767 277 5841 273 5966 269 6040 265 6128 -261 6216 257 6304 253 6392 249 6480 245 6568 241 6656 237 6744 233 6832 229 6920 225 7008 -221 7082 217 7207 213 7280 209 7367 205 7441 200 7529 196 7617 192 7705 188 7779 184 7878 -180 8004 176 8078 172 8152 168 8240 164 8328 160 8416 156 8504 152 8592 148 8680 144 8768 % 542 0 obj << /Title 543 0 R /A 540 0 R -/Parent 530 0 R -/Prev 538 0 R -/Next 546 0 R +/Parent 4 0 R +/Prev 514 0 R +/Next 570 0 R +/First 546 0 R +/Last 566 0 R +/Count -6 >> % 538 0 obj << /Title 539 0 R /A 536 0 R -/Parent 530 0 R +/Parent 514 0 R /Prev 534 0 R -/Next 542 0 R >> % 534 0 obj << /Title 535 0 R /A 532 0 R -/Parent 530 0 R +/Parent 514 0 R +/Prev 530 0 R /Next 538 0 R >> % 530 0 obj << /Title 531 0 R /A 528 0 R -/Parent 4 0 R -/Prev 502 0 R -/Next 558 0 R -/First 534 0 R -/Last 554 0 R -/Count -6 +/Parent 514 0 R +/Prev 526 0 R +/Next 534 0 R >> % 526 0 obj << /Title 527 0 R /A 524 0 R -/Parent 502 0 R +/Parent 514 0 R /Prev 522 0 R +/Next 530 0 R >> % 522 0 obj << /Title 523 0 R /A 520 0 R -/Parent 502 0 R +/Parent 514 0 R /Prev 518 0 R /Next 526 0 R >> @@ -27389,97 +28562,97 @@ stream << /Title 519 0 R /A 516 0 R -/Parent 502 0 R -/Prev 514 0 R +/Parent 514 0 R /Next 522 0 R >> % 514 0 obj << /Title 515 0 R /A 512 0 R -/Parent 502 0 R -/Prev 510 0 R -/Next 518 0 R +/Parent 4 0 R +/Prev 494 0 R +/Next 542 0 R +/First 518 0 R +/Last 538 0 R +/Count -6 >> % 510 0 obj << /Title 511 0 R /A 508 0 R -/Parent 502 0 R +/Parent 494 0 R /Prev 506 0 R -/Next 514 0 R >> % 506 0 obj << /Title 507 0 R /A 504 0 R -/Parent 502 0 R +/Parent 494 0 R +/Prev 502 0 R /Next 510 0 R >> % 502 0 obj << /Title 503 0 R /A 500 0 R -/Parent 4 0 R -/Prev 482 0 R -/Next 530 0 R -/First 506 0 R -/Last 526 0 R -/Count -6 +/Parent 494 0 R +/Prev 498 0 R +/Next 506 0 R >> % 498 0 obj << /Title 499 0 R /A 496 0 R -/Parent 482 0 R -/Prev 494 0 R +/Parent 494 0 R +/Next 502 0 R >> % 494 0 obj << /Title 495 0 R /A 492 0 R -/Parent 482 0 R -/Prev 490 0 R -/Next 498 0 R +/Parent 4 0 R +/Prev 422 0 R +/Next 514 0 R +/First 498 0 R +/Last 510 0 R +/Count -4 >> % 490 0 obj << /Title 491 0 R /A 488 0 R -/Parent 482 0 R +/Parent 422 0 R /Prev 486 0 R -/Next 494 0 R >> % 486 0 obj << /Title 487 0 R /A 484 0 R -/Parent 482 0 R +/Parent 422 0 R +/Prev 482 0 R /Next 490 0 R >> % 482 0 obj << /Title 483 0 R /A 480 0 R -/Parent 4 0 R -/Prev 410 0 R -/Next 502 0 R -/First 486 0 R -/Last 498 0 R -/Count -4 +/Parent 422 0 R +/Prev 478 0 R +/Next 486 0 R >> % 478 0 obj << /Title 479 0 R /A 476 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 474 0 R +/Next 482 0 R >> % 474 0 obj << /Title 475 0 R /A 472 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 470 0 R /Next 478 0 R >> @@ -27487,7 +28660,7 @@ stream << /Title 471 0 R /A 468 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 466 0 R /Next 474 0 R >> @@ -27495,7 +28668,7 @@ stream << /Title 467 0 R /A 464 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 462 0 R /Next 470 0 R >> @@ -27503,7 +28676,7 @@ stream << /Title 463 0 R /A 460 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 458 0 R /Next 466 0 R >> @@ -27511,7 +28684,7 @@ stream << /Title 459 0 R /A 456 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 454 0 R /Next 462 0 R >> @@ -27519,7 +28692,7 @@ stream << /Title 455 0 R /A 452 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 450 0 R /Next 458 0 R >> @@ -27527,7 +28700,7 @@ stream << /Title 451 0 R /A 448 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 446 0 R /Next 454 0 R >> @@ -27535,7 +28708,7 @@ stream << /Title 447 0 R /A 444 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 442 0 R /Next 450 0 R >> @@ -27543,7 +28716,7 @@ stream << /Title 443 0 R /A 440 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 438 0 R /Next 446 0 R >> @@ -27551,7 +28724,7 @@ stream << /Title 439 0 R /A 436 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 434 0 R /Next 442 0 R >> @@ -27559,7 +28732,7 @@ stream << /Title 435 0 R /A 432 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 430 0 R /Next 438 0 R >> @@ -27567,7 +28740,7 @@ stream << /Title 431 0 R /A 428 0 R -/Parent 410 0 R +/Parent 422 0 R /Prev 426 0 R /Next 434 0 R >> @@ -27575,56 +28748,77 @@ stream << /Title 427 0 R /A 424 0 R -/Parent 410 0 R -/Prev 422 0 R +/Parent 422 0 R /Next 430 0 R >> % 422 0 obj << /Title 423 0 R /A 420 0 R -/Parent 410 0 R -/Prev 418 0 R -/Next 426 0 R +/Parent 4 0 R +/Prev 309 0 R +/Next 494 0 R +/First 426 0 R +/Last 490 0 R +/Count -17 >> % 418 0 obj << /Title 419 0 R /A 416 0 R -/Parent 410 0 R +/Parent 309 0 R /Prev 414 0 R -/Next 422 0 R >> % 414 0 obj << /Title 415 0 R /A 412 0 R -/Parent 410 0 R +/Parent 309 0 R +/Prev 410 0 R /Next 418 0 R >> + +endstream +endobj +2009 0 obj +<< +/Type /ObjStm +/N 100 +/First 863 +/Length 9633 +>> +stream +410 0 406 88 401 176 397 264 393 352 389 440 385 528 381 616 377 704 373 792 +369 880 365 968 361 1056 357 1144 353 1232 349 1320 345 1408 341 1496 337 1584 333 1672 +329 1760 325 1848 321 1936 317 2024 313 2112 309 2186 305 2312 301 2386 297 2474 293 2562 +289 2636 285 2761 281 2835 277 2923 273 3011 269 3099 265 3187 261 3275 257 3363 253 3451 +249 3539 245 3627 241 3715 237 3803 233 3891 229 3979 225 4067 221 4141 217 4266 213 4339 +209 4426 205 4500 200 4588 196 4676 192 4764 188 4852 184 4926 180 5052 176 5126 172 5214 +168 5302 164 5390 160 5478 156 5566 152 5654 148 5742 144 5830 140 5918 136 6006 132 6094 +128 6182 124 6270 120 6358 116 6446 112 6534 108 6622 104 6696 100 6822 96 6893 92 6976 +88 7058 84 7140 80 7222 76 7304 72 7386 68 7468 64 7550 60 7632 56 7714 52 7796 +48 7878 44 7960 40 8029 36 8138 32 8258 28 8327 24 8383 20 8502 16 8584 12 8653 % 410 0 obj << /Title 411 0 R /A 408 0 R -/Parent 4 0 R -/Prev 297 0 R -/Next 482 0 R -/First 414 0 R -/Last 478 0 R -/Count -17 +/Parent 309 0 R +/Prev 406 0 R +/Next 414 0 R >> % 406 0 obj << /Title 407 0 R /A 403 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 401 0 R +/Next 410 0 R >> % 401 0 obj << /Title 402 0 R /A 399 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 397 0 R /Next 406 0 R >> @@ -27632,7 +28826,7 @@ stream << /Title 398 0 R /A 395 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 393 0 R /Next 401 0 R >> @@ -27640,7 +28834,7 @@ stream << /Title 394 0 R /A 391 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 389 0 R /Next 397 0 R >> @@ -27648,7 +28842,7 @@ stream << /Title 390 0 R /A 387 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 385 0 R /Next 393 0 R >> @@ -27656,7 +28850,7 @@ stream << /Title 386 0 R /A 383 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 381 0 R /Next 389 0 R >> @@ -27664,7 +28858,7 @@ stream << /Title 382 0 R /A 379 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 377 0 R /Next 385 0 R >> @@ -27672,7 +28866,7 @@ stream << /Title 378 0 R /A 375 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 373 0 R /Next 381 0 R >> @@ -27680,7 +28874,7 @@ stream << /Title 374 0 R /A 371 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 369 0 R /Next 377 0 R >> @@ -27688,7 +28882,7 @@ stream << /Title 370 0 R /A 367 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 365 0 R /Next 373 0 R >> @@ -27696,7 +28890,7 @@ stream << /Title 366 0 R /A 363 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 361 0 R /Next 369 0 R >> @@ -27704,7 +28898,7 @@ stream << /Title 362 0 R /A 359 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 357 0 R /Next 365 0 R >> @@ -27712,7 +28906,7 @@ stream << /Title 358 0 R /A 355 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 353 0 R /Next 361 0 R >> @@ -27720,7 +28914,7 @@ stream << /Title 354 0 R /A 351 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 349 0 R /Next 357 0 R >> @@ -27728,7 +28922,7 @@ stream << /Title 350 0 R /A 347 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 345 0 R /Next 353 0 R >> @@ -27736,7 +28930,7 @@ stream << /Title 346 0 R /A 343 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 341 0 R /Next 349 0 R >> @@ -27744,7 +28938,7 @@ stream << /Title 342 0 R /A 339 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 337 0 R /Next 345 0 R >> @@ -27752,7 +28946,7 @@ stream << /Title 338 0 R /A 335 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 333 0 R /Next 341 0 R >> @@ -27760,7 +28954,7 @@ stream << /Title 334 0 R /A 331 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 329 0 R /Next 337 0 R >> @@ -27768,7 +28962,7 @@ stream << /Title 330 0 R /A 327 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 325 0 R /Next 333 0 R >> @@ -27776,7 +28970,7 @@ stream << /Title 326 0 R /A 323 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 321 0 R /Next 329 0 R >> @@ -27784,7 +28978,7 @@ stream << /Title 322 0 R /A 319 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 317 0 R /Next 325 0 R >> @@ -27792,7 +28986,7 @@ stream << /Title 318 0 R /A 315 0 R -/Parent 297 0 R +/Parent 309 0 R /Prev 313 0 R /Next 321 0 R >> @@ -27800,84 +28994,83 @@ stream << /Title 314 0 R /A 311 0 R -/Parent 297 0 R -/Prev 309 0 R +/Parent 309 0 R /Next 317 0 R >> % 309 0 obj << /Title 310 0 R /A 307 0 R -/Parent 297 0 R -/Prev 305 0 R -/Next 313 0 R +/Parent 4 0 R +/Prev 289 0 R +/Next 422 0 R +/First 313 0 R +/Last 418 0 R +/Count -27 >> % 305 0 obj << /Title 306 0 R /A 303 0 R -/Parent 297 0 R +/Parent 289 0 R /Prev 301 0 R -/Next 309 0 R >> % 301 0 obj << /Title 302 0 R /A 299 0 R -/Parent 297 0 R +/Parent 289 0 R +/Prev 297 0 R /Next 305 0 R >> % 297 0 obj << /Title 298 0 R /A 295 0 R -/Parent 4 0 R -/Prev 277 0 R -/Next 410 0 R -/First 301 0 R -/Last 406 0 R -/Count -27 +/Parent 289 0 R +/Prev 293 0 R +/Next 301 0 R >> % 293 0 obj << /Title 294 0 R /A 291 0 R -/Parent 277 0 R -/Prev 289 0 R +/Parent 289 0 R +/Next 297 0 R >> % 289 0 obj << /Title 290 0 R /A 287 0 R -/Parent 277 0 R -/Prev 285 0 R -/Next 293 0 R +/Parent 4 0 R +/Prev 221 0 R +/Next 309 0 R +/First 293 0 R +/Last 305 0 R +/Count -4 >> % 285 0 obj << /Title 286 0 R /A 283 0 R -/Parent 277 0 R +/Parent 221 0 R /Prev 281 0 R -/Next 289 0 R >> % 281 0 obj << /Title 282 0 R /A 279 0 R -/Parent 277 0 R +/Parent 221 0 R +/Prev 277 0 R /Next 285 0 R >> % 277 0 obj << /Title 278 0 R /A 275 0 R -/Parent 4 0 R -/Prev 221 0 R -/Next 297 0 R -/First 281 0 R -/Last 293 0 R -/Count -4 +/Parent 221 0 R +/Prev 273 0 R +/Next 281 0 R >> % 273 0 obj << @@ -27885,6 +29078,7 @@ stream /A 271 0 R /Parent 221 0 R /Prev 269 0 R +/Next 277 0 R >> % 269 0 obj << @@ -27987,10 +29181,10 @@ stream /A 219 0 R /Parent 4 0 R /Prev 36 0 R -/Next 277 0 R +/Next 289 0 R /First 225 0 R -/Last 273 0 R -/Count -13 +/Last 285 0 R +/Count -16 >> % 217 0 obj << @@ -28011,14 +29205,14 @@ stream << /Title 210 0 R /A 207 0 R -/Parent 188 0 R +/Parent 184 0 R /Prev 205 0 R >> % 205 0 obj << /Title 206 0 R /A 202 0 R -/Parent 188 0 R +/Parent 184 0 R /Prev 200 0 R /Next 209 0 R >> @@ -28026,7 +29220,7 @@ stream << /Title 201 0 R /A 198 0 R -/Parent 188 0 R +/Parent 184 0 R /Prev 196 0 R /Next 205 0 R >> @@ -28034,7 +29228,7 @@ stream << /Title 197 0 R /A 194 0 R -/Parent 188 0 R +/Parent 184 0 R /Prev 192 0 R /Next 200 0 R >> @@ -28042,7 +29236,8 @@ stream << /Title 193 0 R /A 190 0 R -/Parent 188 0 R +/Parent 184 0 R +/Prev 188 0 R /Next 196 0 R >> % 188 0 obj @@ -28050,9 +29245,7 @@ stream /Title 189 0 R /A 186 0 R /Parent 184 0 R -/First 192 0 R -/Last 209 0 R -/Count -5 +/Next 192 0 R >> % 184 0 obj << @@ -28062,28 +29255,29 @@ stream /Prev 104 0 R /Next 213 0 R /First 188 0 R -/Last 188 0 R -/Count -1 +/Last 209 0 R +/Count -6 >> % 180 0 obj << /Title 181 0 R /A 178 0 R /Parent 104 0 R -/Prev 108 0 R +/Prev 176 0 R >> % 176 0 obj << /Title 177 0 R /A 174 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 172 0 R +/Next 180 0 R >> % 172 0 obj << /Title 173 0 R /A 170 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 168 0 R /Next 176 0 R >> @@ -28091,7 +29285,7 @@ stream << /Title 169 0 R /A 166 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 164 0 R /Next 172 0 R >> @@ -28099,7 +29293,7 @@ stream << /Title 165 0 R /A 162 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 160 0 R /Next 168 0 R >> @@ -28107,7 +29301,7 @@ stream << /Title 161 0 R /A 158 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 156 0 R /Next 164 0 R >> @@ -28115,7 +29309,7 @@ stream << /Title 157 0 R /A 154 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 152 0 R /Next 160 0 R >> @@ -28123,7 +29317,7 @@ stream << /Title 153 0 R /A 150 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 148 0 R /Next 156 0 R >> @@ -28131,7 +29325,7 @@ stream << /Title 149 0 R /A 146 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 144 0 R /Next 152 0 R >> @@ -28139,36 +29333,15 @@ stream << /Title 145 0 R /A 142 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 140 0 R /Next 148 0 R >> - -endstream -endobj -1936 0 obj -<< -/Type /ObjStm -/N 100 -/First 953 -/Length 16112 ->> -stream -140 0 136 88 132 176 128 264 124 352 120 440 116 528 112 616 108 690 104 804 -100 929 96 1000 92 1069 88 1151 84 1233 80 1315 76 1397 72 1479 68 1561 64 1643 -60 1725 56 1807 52 1889 48 1971 44 2040 40 2148 36 2256 32 2376 28 2445 24 2501 -20 2620 16 2702 12 2771 8 2888 4 2953 1937 3046 1938 3242 1939 3415 1940 3595 1941 3772 -1942 3949 1943 4129 1944 4302 1945 4467 1946 4633 1947 4798 1948 4964 1949 5130 1950 5302 1951 5472 -1952 5644 1953 5813 1954 5982 1955 6154 1956 6324 1957 6496 1958 6666 1959 6838 1960 7021 1961 7231 -1962 7445 1963 7649 1964 7834 1965 8022 1966 8250 1967 8477 1968 8697 1969 8925 1970 9161 1971 9393 -1972 9623 1973 9851 1974 10079 1975 10313 1976 10547 1977 10781 1978 11009 1979 11182 1980 11362 1981 11539 -1982 11716 1983 11896 1984 12074 1985 12254 1986 12432 1987 12612 1988 12781 1989 12945 1990 13109 1991 13281 -1992 13451 1993 13623 1994 13793 1995 13965 1996 14135 1997 14307 1998 14477 1999 14649 2000 14818 2001 14987 % 140 0 obj << /Title 141 0 R /A 138 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 136 0 R /Next 144 0 R >> @@ -28176,7 +29349,7 @@ stream << /Title 137 0 R /A 134 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 132 0 R /Next 140 0 R >> @@ -28184,7 +29357,7 @@ stream << /Title 133 0 R /A 130 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 128 0 R /Next 136 0 R >> @@ -28192,7 +29365,7 @@ stream << /Title 129 0 R /A 126 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 124 0 R /Next 132 0 R >> @@ -28200,7 +29373,7 @@ stream << /Title 125 0 R /A 122 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 120 0 R /Next 128 0 R >> @@ -28208,7 +29381,7 @@ stream << /Title 121 0 R /A 118 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 116 0 R /Next 124 0 R >> @@ -28216,7 +29389,7 @@ stream << /Title 117 0 R /A 114 0 R -/Parent 108 0 R +/Parent 104 0 R /Prev 112 0 R /Next 120 0 R >> @@ -28224,7 +29397,8 @@ stream << /Title 113 0 R /A 110 0 R -/Parent 108 0 R +/Parent 104 0 R +/Prev 108 0 R /Next 116 0 R >> % 108 0 obj @@ -28232,10 +29406,7 @@ stream /Title 109 0 R /A 106 0 R /Parent 104 0 R -/Next 180 0 R -/First 112 0 R -/Last 176 0 R -/Count -17 +/Next 112 0 R >> % 104 0 obj << @@ -28246,27 +29417,28 @@ stream /Next 184 0 R /First 108 0 R /Last 180 0 R -/Count -2 +/Count -19 >> % 100 0 obj << /Title 101 0 R /A 98 0 R /Parent 40 0 R -/Prev 44 0 R +/Prev 96 0 R >> % 96 0 obj << /Title 97 0 R /A 94 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 92 0 R +/Next 100 0 R >> % 92 0 obj << /Title 93 0 R /A 90 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 88 0 R /Next 96 0 R >> @@ -28274,7 +29446,7 @@ stream << /Title 89 0 R /A 86 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 84 0 R /Next 92 0 R >> @@ -28282,7 +29454,7 @@ stream << /Title 85 0 R /A 82 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 80 0 R /Next 88 0 R >> @@ -28290,7 +29462,7 @@ stream << /Title 81 0 R /A 78 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 76 0 R /Next 84 0 R >> @@ -28298,7 +29470,7 @@ stream << /Title 77 0 R /A 74 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 72 0 R /Next 80 0 R >> @@ -28306,7 +29478,7 @@ stream << /Title 73 0 R /A 70 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 68 0 R /Next 76 0 R >> @@ -28314,7 +29486,7 @@ stream << /Title 69 0 R /A 66 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 64 0 R /Next 72 0 R >> @@ -28322,7 +29494,7 @@ stream << /Title 65 0 R /A 62 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 60 0 R /Next 68 0 R >> @@ -28330,7 +29502,7 @@ stream << /Title 61 0 R /A 58 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 56 0 R /Next 64 0 R >> @@ -28338,7 +29510,7 @@ stream << /Title 57 0 R /A 54 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 52 0 R /Next 60 0 R >> @@ -28346,7 +29518,7 @@ stream << /Title 53 0 R /A 50 0 R -/Parent 44 0 R +/Parent 40 0 R /Prev 48 0 R /Next 56 0 R >> @@ -28354,7 +29526,8 @@ stream << /Title 49 0 R /A 46 0 R -/Parent 44 0 R +/Parent 40 0 R +/Prev 44 0 R /Next 52 0 R >> % 44 0 obj @@ -28362,10 +29535,7 @@ stream /Title 45 0 R /A 42 0 R /Parent 40 0 R -/Next 100 0 R -/First 48 0 R -/Last 96 0 R -/Count -13 +/Next 48 0 R >> % 40 0 obj << @@ -28375,7 +29545,7 @@ stream /Next 104 0 R /First 44 0 R /Last 100 0 R -/Count -2 +/Count -15 >> % 36 0 obj << @@ -28438,6 +29608,27 @@ stream /Last 32 0 R /Count -4 >> + +endstream +endobj +2010 0 obj +<< +/Type /ObjStm +/N 100 +/First 1030 +/Length 20272 +>> +stream +8 0 4 65 2011 158 2012 354 2013 527 2014 707 2015 884 2016 1061 2017 1241 2018 1414 +2019 1579 2020 1745 2021 1910 2022 2076 2023 2242 2024 2414 2025 2584 2026 2756 2027 2925 2028 3094 +2029 3266 2030 3436 2031 3608 2032 3778 2033 3950 2034 4133 2035 4343 2036 4557 2037 4761 2038 4946 +2039 5135 2040 5363 2041 5590 2042 5810 2043 6038 2044 6274 2045 6506 2046 6736 2047 6964 2048 7192 +2049 7426 2050 7660 2051 7894 2052 8122 2053 8295 2054 8475 2055 8652 2056 8829 2057 9009 2058 9187 +2059 9367 2060 9545 2061 9725 2062 9903 2063 10074 2064 10238 2065 10405 2066 10577 2067 10747 2068 10919 +2069 11089 2070 11261 2071 11431 2072 11603 2073 11773 2074 11945 2075 12114 2076 12283 2077 12455 2078 12624 +2079 12803 2080 12986 2081 13163 2082 13393 2083 13612 2084 13836 2085 14066 2086 14288 2087 14510 2088 14738 +2089 14966 2090 15196 2091 15421 2092 15646 2093 15876 2094 16098 2095 16320 2096 16542 2097 16803 2098 17062 +2099 17322 2100 17592 2101 17858 2102 18120 2103 18358 2104 18538 2105 18717 2106 18889 2107 19016 2108 19130 % 8 0 obj << /Title 9 0 R @@ -28449,673 +29640,679 @@ stream << /Title 5 0 R /A 1 0 R -/Parent 1934 0 R +/Parent 2008 0 R /First 8 0 R -/Last 558 0 R +/Last 570 0 R /Count -11 >> -% 1937 0 obj +% 2011 0 obj << -/Names [(Doc-Start) 569 0 R (Hfootnote.1) 789 0 R (Hfootnote.2) 791 0 R (Hfootnote.3) 845 0 R (Hfootnote.4) 1788 0 R (Hfootnote.5) 1839 0 R] +/Names [(Doc-Start) 581 0 R (Hfootnote.1) 815 0 R (Hfootnote.2) 817 0 R (Hfootnote.3) 871 0 R (Hfootnote.4) 1857 0 R (Hfootnote.5) 1909 0 R] /Limits [(Doc-Start) (Hfootnote.5)] >> -% 1938 0 obj +% 2012 0 obj << -/Names [(Item.1) 818 0 R (Item.10) 833 0 R (Item.100) 1561 0 R (Item.101) 1562 0 R (Item.102) 1563 0 R (Item.103) 1564 0 R] +/Names [(Item.1) 845 0 R (Item.10) 859 0 R (Item.100) 1631 0 R (Item.101) 1632 0 R (Item.102) 1633 0 R (Item.103) 1634 0 R] /Limits [(Item.1) (Item.103)] >> -% 1939 0 obj +% 2013 0 obj << -/Names [(Item.104) 1565 0 R (Item.105) 1566 0 R (Item.106) 1567 0 R (Item.107) 1578 0 R (Item.108) 1579 0 R (Item.109) 1584 0 R] +/Names [(Item.104) 1635 0 R (Item.105) 1636 0 R (Item.106) 1637 0 R (Item.107) 1647 0 R (Item.108) 1648 0 R (Item.109) 1653 0 R] /Limits [(Item.104) (Item.109)] >> -% 1940 0 obj +% 2014 0 obj << -/Names [(Item.11) 834 0 R (Item.110) 1585 0 R (Item.111) 1590 0 R (Item.112) 1591 0 R (Item.113) 1592 0 R (Item.114) 1622 0 R] +/Names [(Item.11) 860 0 R (Item.110) 1654 0 R (Item.111) 1659 0 R (Item.112) 1660 0 R (Item.113) 1661 0 R (Item.114) 1692 0 R] /Limits [(Item.11) (Item.114)] >> -% 1941 0 obj +% 2015 0 obj << -/Names [(Item.115) 1623 0 R (Item.116) 1628 0 R (Item.117) 1629 0 R (Item.118) 1635 0 R (Item.119) 1636 0 R (Item.12) 835 0 R] +/Names [(Item.115) 1693 0 R (Item.116) 1698 0 R (Item.117) 1699 0 R (Item.118) 1704 0 R (Item.119) 1705 0 R (Item.12) 861 0 R] /Limits [(Item.115) (Item.12)] >> -% 1942 0 obj +% 2016 0 obj << -/Names [(Item.120) 1641 0 R (Item.121) 1642 0 R (Item.122) 1647 0 R (Item.123) 1648 0 R (Item.124) 1653 0 R (Item.125) 1654 0 R] +/Names [(Item.120) 1711 0 R (Item.121) 1712 0 R (Item.122) 1717 0 R (Item.123) 1718 0 R (Item.124) 1723 0 R (Item.125) 1724 0 R] /Limits [(Item.120) (Item.125)] >> -% 1943 0 obj +% 2017 0 obj << -/Names [(Item.126) 1656 0 R (Item.127) 1661 0 R (Item.128) 1666 0 R (Item.13) 836 0 R (Item.14) 837 0 R (Item.15) 838 0 R] +/Names [(Item.126) 1726 0 R (Item.127) 1731 0 R (Item.128) 1736 0 R (Item.13) 862 0 R (Item.14) 863 0 R (Item.15) 864 0 R] /Limits [(Item.126) (Item.15)] >> -% 1944 0 obj +% 2018 0 obj << -/Names [(Item.16) 839 0 R (Item.17) 840 0 R (Item.18) 841 0 R (Item.19) 842 0 R (Item.2) 819 0 R (Item.20) 843 0 R] +/Names [(Item.16) 865 0 R (Item.17) 866 0 R (Item.18) 867 0 R (Item.19) 868 0 R (Item.2) 846 0 R (Item.20) 869 0 R] /Limits [(Item.16) (Item.20)] >> -% 1945 0 obj +% 2019 0 obj << -/Names [(Item.21) 844 0 R (Item.22) 853 0 R (Item.23) 854 0 R (Item.24) 855 0 R (Item.25) 856 0 R (Item.26) 857 0 R] +/Names [(Item.21) 870 0 R (Item.22) 879 0 R (Item.23) 880 0 R (Item.24) 881 0 R (Item.25) 882 0 R (Item.26) 883 0 R] /Limits [(Item.21) (Item.26)] >> -% 1946 0 obj +% 2020 0 obj << -/Names [(Item.27) 858 0 R (Item.28) 872 0 R (Item.29) 873 0 R (Item.3) 820 0 R (Item.30) 874 0 R (Item.31) 875 0 R] +/Names [(Item.27) 884 0 R (Item.28) 898 0 R (Item.29) 899 0 R (Item.3) 847 0 R (Item.30) 900 0 R (Item.31) 901 0 R] /Limits [(Item.27) (Item.31)] >> -% 1947 0 obj +% 2021 0 obj << -/Names [(Item.32) 876 0 R (Item.33) 883 0 R (Item.34) 884 0 R (Item.35) 885 0 R (Item.36) 886 0 R (Item.37) 887 0 R] +/Names [(Item.32) 902 0 R (Item.33) 909 0 R (Item.34) 910 0 R (Item.35) 911 0 R (Item.36) 912 0 R (Item.37) 913 0 R] /Limits [(Item.32) (Item.37)] >> -% 1948 0 obj +% 2022 0 obj << -/Names [(Item.38) 888 0 R (Item.39) 889 0 R (Item.4) 821 0 R (Item.40) 890 0 R (Item.41) 932 0 R (Item.42) 1025 0 R] +/Names [(Item.38) 914 0 R (Item.39) 915 0 R (Item.4) 848 0 R (Item.40) 916 0 R (Item.41) 958 0 R (Item.42) 1051 0 R] /Limits [(Item.38) (Item.42)] >> -% 1949 0 obj +% 2023 0 obj << -/Names [(Item.43) 1058 0 R (Item.44) 1085 0 R (Item.45) 1116 0 R (Item.46) 1252 0 R (Item.47) 1253 0 R (Item.48) 1254 0 R] +/Names [(Item.43) 1084 0 R (Item.44) 1111 0 R (Item.45) 1143 0 R (Item.46) 1321 0 R (Item.47) 1322 0 R (Item.48) 1323 0 R] /Limits [(Item.43) (Item.48)] >> -% 1950 0 obj +% 2024 0 obj << -/Names [(Item.49) 1312 0 R (Item.5) 822 0 R (Item.50) 1318 0 R (Item.51) 1324 0 R (Item.52) 1325 0 R (Item.53) 1326 0 R] +/Names [(Item.49) 1382 0 R (Item.5) 849 0 R (Item.50) 1388 0 R (Item.51) 1393 0 R (Item.52) 1394 0 R (Item.53) 1395 0 R] /Limits [(Item.49) (Item.53)] >> -% 1951 0 obj +% 2025 0 obj << -/Names [(Item.54) 1327 0 R (Item.55) 1328 0 R (Item.56) 1339 0 R (Item.57) 1340 0 R (Item.58) 1341 0 R (Item.59) 1348 0 R] +/Names [(Item.54) 1396 0 R (Item.55) 1397 0 R (Item.56) 1409 0 R (Item.57) 1410 0 R (Item.58) 1411 0 R (Item.59) 1418 0 R] /Limits [(Item.54) (Item.59)] >> -% 1952 0 obj +% 2026 0 obj << -/Names [(Item.6) 823 0 R (Item.60) 1372 0 R (Item.61) 1373 0 R (Item.62) 1380 0 R (Item.63) 1381 0 R (Item.64) 1382 0 R] +/Names [(Item.6) 850 0 R (Item.60) 1441 0 R (Item.61) 1442 0 R (Item.62) 1449 0 R (Item.63) 1450 0 R (Item.64) 1451 0 R] /Limits [(Item.6) (Item.64)] >> -% 1953 0 obj +% 2027 0 obj << -/Names [(Item.65) 1394 0 R (Item.66) 1395 0 R (Item.67) 1396 0 R (Item.68) 1397 0 R (Item.69) 1398 0 R (Item.7) 824 0 R] +/Names [(Item.65) 1463 0 R (Item.66) 1464 0 R (Item.67) 1465 0 R (Item.68) 1466 0 R (Item.69) 1467 0 R (Item.7) 851 0 R] /Limits [(Item.65) (Item.7)] >> -% 1954 0 obj +% 2028 0 obj << -/Names [(Item.70) 1403 0 R (Item.71) 1404 0 R (Item.72) 1405 0 R (Item.73) 1406 0 R (Item.74) 1407 0 R (Item.75) 1408 0 R] +/Names [(Item.70) 1473 0 R (Item.71) 1474 0 R (Item.72) 1475 0 R (Item.73) 1476 0 R (Item.74) 1477 0 R (Item.75) 1478 0 R] /Limits [(Item.70) (Item.75)] >> -% 1955 0 obj +% 2029 0 obj << -/Names [(Item.76) 1420 0 R (Item.77) 1421 0 R (Item.78) 1422 0 R (Item.79) 1423 0 R (Item.8) 825 0 R (Item.80) 1424 0 R] +/Names [(Item.76) 1490 0 R (Item.77) 1491 0 R (Item.78) 1492 0 R (Item.79) 1493 0 R (Item.8) 852 0 R (Item.80) 1494 0 R] /Limits [(Item.76) (Item.80)] >> -% 1956 0 obj +% 2030 0 obj << -/Names [(Item.81) 1425 0 R (Item.82) 1438 0 R (Item.83) 1456 0 R (Item.84) 1457 0 R (Item.85) 1485 0 R (Item.86) 1486 0 R] +/Names [(Item.81) 1495 0 R (Item.82) 1508 0 R (Item.83) 1525 0 R (Item.84) 1526 0 R (Item.85) 1554 0 R (Item.86) 1555 0 R] /Limits [(Item.81) (Item.86)] >> -% 1957 0 obj +% 2031 0 obj << -/Names [(Item.87) 1498 0 R (Item.88) 1504 0 R (Item.89) 1510 0 R (Item.9) 832 0 R (Item.90) 1516 0 R (Item.91) 1522 0 R] +/Names [(Item.87) 1567 0 R (Item.88) 1574 0 R (Item.89) 1580 0 R (Item.9) 858 0 R (Item.90) 1586 0 R (Item.91) 1592 0 R] /Limits [(Item.87) (Item.91)] >> -% 1958 0 obj +% 2032 0 obj << -/Names [(Item.92) 1523 0 R (Item.93) 1530 0 R (Item.94) 1531 0 R (Item.95) 1541 0 R (Item.96) 1542 0 R (Item.97) 1543 0 R] +/Names [(Item.92) 1593 0 R (Item.93) 1599 0 R (Item.94) 1600 0 R (Item.95) 1611 0 R (Item.96) 1612 0 R (Item.97) 1613 0 R] /Limits [(Item.92) (Item.97)] >> -% 1959 0 obj +% 2033 0 obj << -/Names [(Item.98) 1559 0 R (Item.99) 1560 0 R (cite.2007c) 804 0 R (cite.2007d) 805 0 R (cite.BLACS) 777 0 R (cite.BLAS1) 759 0 R] +/Names [(Item.98) 1629 0 R (Item.99) 1630 0 R (cite.2007c) 830 0 R (cite.2007d) 831 0 R (cite.BLACS) 803 0 R (cite.BLAS1) 785 0 R] /Limits [(Item.98) (cite.BLAS1)] >> -% 1960 0 obj +% 2034 0 obj << -/Names [(cite.BLAS2) 760 0 R (cite.BLAS3) 761 0 R (cite.DesPat:11) 754 0 R (cite.DesignPatterns) 921 0 R (cite.KIVA3PSBLAS) 1861 0 R (cite.METIS) 792 0 R] +/Names [(cite.BLAS2) 786 0 R (cite.BLAS3) 787 0 R (cite.DesPat:11) 780 0 R (cite.DesignPatterns) 948 0 R (cite.KIVA3PSBLAS) 1935 0 R (cite.METIS) 818 0 R] /Limits [(cite.BLAS2) (cite.METIS)] >> -% 1961 0 obj +% 2035 0 obj << -/Names [(cite.MPI1) 1866 0 R (cite.PARA04FOREST) 1859 0 R (cite.PSBLAS) 1860 0 R (cite.RouXiaXu:11) 755 0 R (cite.Sparse03) 753 0 R (cite.machiels) 756 0 R] +/Names [(cite.MPI1) 1940 0 R (cite.PARA04FOREST) 1933 0 R (cite.PSBLAS) 1934 0 R (cite.RouXiaXu:11) 781 0 R (cite.Sparse03) 779 0 R (cite.machiels) 782 0 R] /Limits [(cite.MPI1) (cite.machiels)] >> -% 1962 0 obj +% 2036 0 obj << -/Names [(cite.metcalf) 752 0 R (cite.sblas02) 758 0 R (cite.sblas97) 757 0 R (descdata) 864 0 R (equation.4.1) 1155 0 R (equation.4.2) 1156 0 R] +/Names [(cite.metcalf) 778 0 R (cite.sblas02) 784 0 R (cite.sblas97) 783 0 R (descdata) 890 0 R (equation.4.1) 1181 0 R (equation.4.2) 1182 0 R] /Limits [(cite.metcalf) (equation.4.2)] >> -% 1963 0 obj +% 2037 0 obj << -/Names [(equation.4.3) 1157 0 R (figure.1) 771 0 R (figure.10) 1676 0 R (figure.2) 800 0 R (figure.3) 891 0 R (figure.4) 922 0 R] +/Names [(equation.4.3) 1183 0 R (figure.1) 797 0 R (figure.10) 1745 0 R (figure.2) 826 0 R (figure.3) 917 0 R (figure.4) 949 0 R] /Limits [(equation.4.3) (figure.4)] >> -% 1964 0 obj +% 2038 0 obj << -/Names [(figure.5) 961 0 R (figure.6) 981 0 R (figure.7) 1217 0 R (figure.8) 1255 0 R (figure.9) 1675 0 R (lstlisting.-1) 1026 0 R] +/Names [(figure.5) 987 0 R (figure.6) 1007 0 R (figure.7) 1287 0 R (figure.8) 1324 0 R (figure.9) 1744 0 R (lstlisting.-1) 1052 0 R] /Limits [(figure.5) (lstlisting.-1)] >> -% 1965 0 obj +% 2039 0 obj << -/Names [(lstlisting.-10) 1711 0 R (lstlisting.-11) 1717 0 R (lstlisting.-12) 1723 0 R (lstlisting.-13) 1729 0 R (lstlisting.-14) 1741 0 R (lstlisting.-15) 1748 0 R] +/Names [(lstlisting.-10) 1780 0 R (lstlisting.-11) 1787 0 R (lstlisting.-12) 1793 0 R (lstlisting.-13) 1799 0 R (lstlisting.-14) 1811 0 R (lstlisting.-15) 1818 0 R] /Limits [(lstlisting.-10) (lstlisting.-15)] >> -% 1966 0 obj +% 2040 0 obj << -/Names [(lstlisting.-16) 1755 0 R (lstlisting.-17) 1761 0 R (lstlisting.-18) 1768 0 R (lstlisting.-19) 1775 0 R (lstlisting.-2) 1059 0 R (lstlisting.-20) 1836 0 R] +/Names [(lstlisting.-16) 1825 0 R (lstlisting.-17) 1831 0 R (lstlisting.-18) 1838 0 R (lstlisting.-19) 1844 0 R (lstlisting.-2) 1085 0 R (lstlisting.-20) 1906 0 R] /Limits [(lstlisting.-16) (lstlisting.-20)] >> -% 1967 0 obj +% 2041 0 obj << -/Names [(lstlisting.-3) 1086 0 R (lstlisting.-4) 1117 0 R (lstlisting.-5) 1208 0 R (lstlisting.-6) 1241 0 R (lstlisting.-7) 1280 0 R (lstlisting.-8) 1295 0 R] +/Names [(lstlisting.-3) 1112 0 R (lstlisting.-4) 1144 0 R (lstlisting.-5) 1278 0 R (lstlisting.-6) 1310 0 R (lstlisting.-7) 1349 0 R (lstlisting.-8) 1365 0 R] /Limits [(lstlisting.-3) (lstlisting.-8)] >> -% 1968 0 obj +% 2042 0 obj << -/Names [(lstlisting.-9) 1681 0 R (lstnumber.-1.1) 1027 0 R (lstnumber.-1.2) 1028 0 R (lstnumber.-1.3) 1029 0 R (lstnumber.-1.4) 1030 0 R (lstnumber.-10.1) 1712 0 R] +/Names [(lstlisting.-9) 1750 0 R (lstnumber.-1.1) 1053 0 R (lstnumber.-1.2) 1054 0 R (lstnumber.-1.3) 1055 0 R (lstnumber.-1.4) 1056 0 R (lstnumber.-10.1) 1781 0 R] /Limits [(lstlisting.-9) (lstnumber.-10.1)] >> -% 1969 0 obj +% 2043 0 obj << -/Names [(lstnumber.-11.1) 1718 0 R (lstnumber.-12.1) 1724 0 R (lstnumber.-13.1) 1730 0 R (lstnumber.-14.1) 1742 0 R (lstnumber.-15.1) 1749 0 R (lstnumber.-16.1) 1756 0 R] +/Names [(lstnumber.-11.1) 1788 0 R (lstnumber.-12.1) 1794 0 R (lstnumber.-13.1) 1800 0 R (lstnumber.-14.1) 1812 0 R (lstnumber.-15.1) 1819 0 R (lstnumber.-16.1) 1826 0 R] /Limits [(lstnumber.-11.1) (lstnumber.-16.1)] >> -% 1970 0 obj +% 2044 0 obj << -/Names [(lstnumber.-17.1) 1762 0 R (lstnumber.-18.1) 1769 0 R (lstnumber.-19.1) 1776 0 R (lstnumber.-2.1) 1060 0 R (lstnumber.-2.2) 1061 0 R (lstnumber.-2.3) 1062 0 R] +/Names [(lstnumber.-17.1) 1832 0 R (lstnumber.-18.1) 1839 0 R (lstnumber.-19.1) 1845 0 R (lstnumber.-2.1) 1086 0 R (lstnumber.-2.2) 1087 0 R (lstnumber.-2.3) 1088 0 R] /Limits [(lstnumber.-17.1) (lstnumber.-2.3)] >> -% 1971 0 obj +% 2045 0 obj << -/Names [(lstnumber.-2.4) 1063 0 R (lstnumber.-20.1) 1837 0 R (lstnumber.-20.2) 1838 0 R (lstnumber.-3.1) 1087 0 R (lstnumber.-3.2) 1088 0 R (lstnumber.-3.3) 1089 0 R] +/Names [(lstnumber.-2.4) 1089 0 R (lstnumber.-20.1) 1907 0 R (lstnumber.-20.2) 1908 0 R (lstnumber.-3.1) 1113 0 R (lstnumber.-3.2) 1114 0 R (lstnumber.-3.3) 1115 0 R] /Limits [(lstnumber.-2.4) (lstnumber.-3.3)] >> -% 1972 0 obj +% 2046 0 obj << -/Names [(lstnumber.-3.4) 1090 0 R (lstnumber.-4.1) 1118 0 R (lstnumber.-4.2) 1119 0 R (lstnumber.-4.3) 1120 0 R (lstnumber.-4.4) 1121 0 R (lstnumber.-5.1) 1209 0 R] +/Names [(lstnumber.-3.4) 1116 0 R (lstnumber.-4.1) 1145 0 R (lstnumber.-4.2) 1146 0 R (lstnumber.-4.3) 1147 0 R (lstnumber.-4.4) 1148 0 R (lstnumber.-5.1) 1279 0 R] /Limits [(lstnumber.-3.4) (lstnumber.-5.1)] >> -% 1973 0 obj +% 2047 0 obj << -/Names [(lstnumber.-5.2) 1210 0 R (lstnumber.-6.1) 1242 0 R (lstnumber.-6.2) 1243 0 R (lstnumber.-7.1) 1281 0 R (lstnumber.-7.2) 1282 0 R (lstnumber.-8.1) 1296 0 R] +/Names [(lstnumber.-5.2) 1280 0 R (lstnumber.-6.1) 1311 0 R (lstnumber.-6.2) 1312 0 R (lstnumber.-7.1) 1350 0 R (lstnumber.-7.2) 1351 0 R (lstnumber.-8.1) 1366 0 R] /Limits [(lstnumber.-5.2) (lstnumber.-8.1)] >> -% 1974 0 obj +% 2048 0 obj << -/Names [(lstnumber.-9.1) 1682 0 R (lstnumber.-9.10) 1692 0 R (lstnumber.-9.11) 1693 0 R (lstnumber.-9.12) 1694 0 R (lstnumber.-9.13) 1695 0 R (lstnumber.-9.14) 1696 0 R] +/Names [(lstnumber.-9.1) 1751 0 R (lstnumber.-9.10) 1761 0 R (lstnumber.-9.11) 1762 0 R (lstnumber.-9.12) 1763 0 R (lstnumber.-9.13) 1764 0 R (lstnumber.-9.14) 1765 0 R] /Limits [(lstnumber.-9.1) (lstnumber.-9.14)] >> -% 1975 0 obj +% 2049 0 obj << -/Names [(lstnumber.-9.15) 1697 0 R (lstnumber.-9.16) 1698 0 R (lstnumber.-9.17) 1699 0 R (lstnumber.-9.18) 1700 0 R (lstnumber.-9.19) 1701 0 R (lstnumber.-9.2) 1684 0 R] +/Names [(lstnumber.-9.15) 1766 0 R (lstnumber.-9.16) 1767 0 R (lstnumber.-9.17) 1768 0 R (lstnumber.-9.18) 1769 0 R (lstnumber.-9.19) 1770 0 R (lstnumber.-9.2) 1753 0 R] /Limits [(lstnumber.-9.15) (lstnumber.-9.2)] >> -% 1976 0 obj +% 2050 0 obj << -/Names [(lstnumber.-9.20) 1702 0 R (lstnumber.-9.21) 1703 0 R (lstnumber.-9.22) 1704 0 R (lstnumber.-9.23) 1705 0 R (lstnumber.-9.24) 1706 0 R (lstnumber.-9.3) 1685 0 R] +/Names [(lstnumber.-9.20) 1771 0 R (lstnumber.-9.21) 1772 0 R (lstnumber.-9.22) 1773 0 R (lstnumber.-9.23) 1774 0 R (lstnumber.-9.24) 1775 0 R (lstnumber.-9.3) 1754 0 R] /Limits [(lstnumber.-9.20) (lstnumber.-9.3)] >> -% 1977 0 obj +% 2051 0 obj << -/Names [(lstnumber.-9.4) 1686 0 R (lstnumber.-9.5) 1687 0 R (lstnumber.-9.6) 1688 0 R (lstnumber.-9.7) 1689 0 R (lstnumber.-9.8) 1690 0 R (lstnumber.-9.9) 1691 0 R] +/Names [(lstnumber.-9.4) 1755 0 R (lstnumber.-9.5) 1756 0 R (lstnumber.-9.6) 1757 0 R (lstnumber.-9.7) 1758 0 R (lstnumber.-9.8) 1759 0 R (lstnumber.-9.9) 1760 0 R] /Limits [(lstnumber.-9.4) (lstnumber.-9.9)] >> -% 1978 0 obj +% 2052 0 obj << -/Names [(page.1) 568 0 R (page.10) 871 0 R (page.100) 1540 0 R (page.101) 1550 0 R (page.102) 1554 0 R (page.103) 1558 0 R] +/Names [(page.1) 580 0 R (page.10) 897 0 R (page.100) 1579 0 R (page.101) 1585 0 R (page.102) 1591 0 R (page.103) 1598 0 R] /Limits [(page.1) (page.103)] >> -% 1979 0 obj +% 2053 0 obj << -/Names [(page.104) 1573 0 R (page.105) 1577 0 R (page.106) 1583 0 R (page.107) 1589 0 R (page.108) 1596 0 R (page.109) 1600 0 R] +/Names [(page.104) 1606 0 R (page.105) 1610 0 R (page.106) 1620 0 R (page.107) 1624 0 R (page.108) 1628 0 R (page.109) 1641 0 R] /Limits [(page.104) (page.109)] >> -% 1980 0 obj +% 2054 0 obj << -/Names [(page.11) 882 0 R (page.110) 1605 0 R (page.111) 1609 0 R (page.112) 1613 0 R (page.113) 1617 0 R (page.114) 1621 0 R] +/Names [(page.11) 908 0 R (page.110) 1646 0 R (page.111) 1652 0 R (page.112) 1658 0 R (page.113) 1665 0 R (page.114) 1669 0 R] /Limits [(page.11) (page.114)] >> -% 1981 0 obj +% 2055 0 obj << -/Names [(page.115) 1627 0 R (page.116) 1634 0 R (page.117) 1640 0 R (page.118) 1646 0 R (page.119) 1652 0 R (page.12) 897 0 R] +/Names [(page.115) 1673 0 R (page.116) 1679 0 R (page.117) 1683 0 R (page.118) 1687 0 R (page.119) 1691 0 R (page.12) 923 0 R] /Limits [(page.115) (page.12)] >> -% 1982 0 obj +% 2056 0 obj << -/Names [(page.120) 1660 0 R (page.121) 1665 0 R (page.122) 1674 0 R (page.123) 1680 0 R (page.124) 1710 0 R (page.125) 1716 0 R] +/Names [(page.120) 1697 0 R (page.121) 1703 0 R (page.122) 1710 0 R (page.123) 1716 0 R (page.124) 1722 0 R (page.125) 1730 0 R] /Limits [(page.120) (page.125)] >> -% 1983 0 obj +% 2057 0 obj << -/Names [(page.126) 1722 0 R (page.127) 1728 0 R (page.128) 1735 0 R (page.129) 1740 0 R (page.13) 901 0 R (page.130) 1747 0 R] +/Names [(page.126) 1735 0 R (page.127) 1742 0 R (page.128) 1749 0 R (page.129) 1779 0 R (page.13) 927 0 R (page.130) 1786 0 R] /Limits [(page.126) (page.130)] >> -% 1984 0 obj +% 2058 0 obj << -/Names [(page.131) 1754 0 R (page.132) 1760 0 R (page.133) 1767 0 R (page.134) 1774 0 R (page.135) 1781 0 R (page.136) 1787 0 R] +/Names [(page.131) 1792 0 R (page.132) 1798 0 R (page.133) 1804 0 R (page.134) 1810 0 R (page.135) 1817 0 R (page.136) 1824 0 R] /Limits [(page.131) (page.136)] >> -% 1985 0 obj +% 2059 0 obj << -/Names [(page.137) 1796 0 R (page.138) 1800 0 R (page.139) 1808 0 R (page.14) 906 0 R (page.140) 1814 0 R (page.141) 1818 0 R] +/Names [(page.137) 1830 0 R (page.138) 1837 0 R (page.139) 1843 0 R (page.14) 932 0 R (page.140) 1850 0 R (page.141) 1856 0 R] /Limits [(page.137) (page.141)] >> -% 1986 0 obj +% 2060 0 obj << -/Names [(page.142) 1824 0 R (page.143) 1828 0 R (page.144) 1835 0 R (page.145) 1847 0 R (page.146) 1853 0 R (page.147) 1857 0 R] +/Names [(page.142) 1865 0 R (page.143) 1869 0 R (page.144) 1877 0 R (page.145) 1882 0 R (page.146) 1888 0 R (page.147) 1894 0 R] /Limits [(page.142) (page.147)] >> -% 1987 0 obj +% 2061 0 obj << -/Names [(page.148) 1865 0 R (page.15) 911 0 R (page.16) 918 0 R (page.17) 927 0 R (page.18) 931 0 R (page.19) 936 0 R] -/Limits [(page.148) (page.19)] +/Names [(page.148) 1898 0 R (page.149) 1905 0 R (page.15) 938 0 R (page.150) 1917 0 R (page.151) 1922 0 R (page.152) 1927 0 R] +/Limits [(page.148) (page.152)] >> -% 1988 0 obj +% 2062 0 obj +<< +/Names [(page.153) 1931 0 R (page.154) 1939 0 R (page.16) 945 0 R (page.17) 953 0 R (page.18) 957 0 R (page.19) 962 0 R] +/Limits [(page.153) (page.19)] +>> +% 2063 0 obj << -/Names [(page.2) 578 0 R (page.20) 941 0 R (page.21) 945 0 R (page.22) 949 0 R (page.23) 953 0 R (page.24) 959 0 R] +/Names [(page.2) 590 0 R (page.20) 967 0 R (page.21) 971 0 R (page.22) 975 0 R (page.23) 979 0 R (page.24) 985 0 R] /Limits [(page.2) (page.24)] >> -% 1989 0 obj +% 2064 0 obj << -/Names [(page.25) 965 0 R (page.26) 972 0 R (page.27) 979 0 R (page.28) 985 0 R (page.29) 990 0 R (page.3) 783 0 R] +/Names [(page.25) 991 0 R (page.26) 998 0 R (page.27) 1005 0 R (page.28) 1011 0 R (page.29) 1016 0 R (page.3) 809 0 R] /Limits [(page.25) (page.3)] >> -% 1990 0 obj +% 2065 0 obj << -/Names [(page.30) 1001 0 R (page.31) 1007 0 R (page.32) 1017 0 R (page.33) 1024 0 R (page.34) 1040 0 R (page.35) 1045 0 R] +/Names [(page.30) 1028 0 R (page.31) 1034 0 R (page.32) 1044 0 R (page.33) 1050 0 R (page.34) 1066 0 R (page.35) 1071 0 R] /Limits [(page.30) (page.35)] >> -% 1991 0 obj +% 2066 0 obj << -/Names [(page.36) 1052 0 R (page.37) 1057 0 R (page.38) 1071 0 R (page.39) 1079 0 R (page.4) 799 0 R (page.40) 1084 0 R] +/Names [(page.36) 1078 0 R (page.37) 1083 0 R (page.38) 1097 0 R (page.39) 1105 0 R (page.4) 825 0 R (page.40) 1110 0 R] /Limits [(page.36) (page.40)] >> -% 1992 0 obj +% 2067 0 obj << -/Names [(page.41) 1097 0 R (page.42) 1102 0 R (page.43) 1109 0 R (page.44) 1115 0 R (page.45) 1129 0 R (page.46) 1136 0 R] +/Names [(page.41) 1123 0 R (page.42) 1129 0 R (page.43) 1136 0 R (page.44) 1142 0 R (page.45) 1155 0 R (page.46) 1162 0 R] /Limits [(page.41) (page.46)] >> -% 1993 0 obj +% 2068 0 obj << -/Names [(page.47) 1143 0 R (page.48) 1154 0 R (page.49) 1169 0 R (page.5) 811 0 R (page.50) 1176 0 R (page.51) 1187 0 R] +/Names [(page.47) 1169 0 R (page.48) 1180 0 R (page.49) 1195 0 R (page.5) 838 0 R (page.50) 1202 0 R (page.51) 1213 0 R] /Limits [(page.47) (page.51)] >> -% 1994 0 obj +% 2069 0 obj << -/Names [(page.52) 1193 0 R (page.53) 1198 0 R (page.54) 1206 0 R (page.55) 1216 0 R (page.56) 1230 0 R (page.57) 1239 0 R] +/Names [(page.52) 1219 0 R (page.53) 1230 0 R (page.54) 1236 0 R (page.55) 1247 0 R (page.56) 1253 0 R (page.57) 1262 0 R] /Limits [(page.52) (page.57)] >> -% 1995 0 obj +% 2070 0 obj << -/Names [(page.58) 1251 0 R (page.59) 1259 0 R (page.6) 816 0 R (page.60) 1263 0 R (page.61) 1278 0 R (page.62) 1287 0 R] +/Names [(page.58) 1268 0 R (page.59) 1276 0 R (page.6) 843 0 R (page.60) 1286 0 R (page.61) 1299 0 R (page.62) 1308 0 R] /Limits [(page.58) (page.62)] >> -% 1996 0 obj +% 2071 0 obj << -/Names [(page.63) 1293 0 R (page.64) 1302 0 R (page.65) 1306 0 R (page.66) 1311 0 R (page.67) 1317 0 R (page.68) 1323 0 R] +/Names [(page.63) 1320 0 R (page.64) 1328 0 R (page.65) 1332 0 R (page.66) 1347 0 R (page.67) 1356 0 R (page.68) 1363 0 R] /Limits [(page.63) (page.68)] >> -% 1997 0 obj +% 2072 0 obj << -/Names [(page.69) 1333 0 R (page.7) 831 0 R (page.70) 1338 0 R (page.71) 1347 0 R (page.72) 1355 0 R (page.73) 1360 0 R] +/Names [(page.69) 1372 0 R (page.7) 857 0 R (page.70) 1376 0 R (page.71) 1381 0 R (page.72) 1387 0 R (page.73) 1392 0 R] /Limits [(page.69) (page.73)] >> -% 1998 0 obj +% 2073 0 obj << -/Names [(page.74) 1367 0 R (page.75) 1371 0 R (page.76) 1379 0 R (page.77) 1387 0 R (page.78) 1393 0 R (page.79) 1402 0 R] +/Names [(page.74) 1403 0 R (page.75) 1408 0 R (page.76) 1417 0 R (page.77) 1424 0 R (page.78) 1429 0 R (page.79) 1435 0 R] /Limits [(page.74) (page.79)] >> -% 1999 0 obj +% 2074 0 obj << -/Names [(page.8) 852 0 R (page.80) 1415 0 R (page.81) 1419 0 R (page.82) 1431 0 R (page.83) 1437 0 R (page.84) 1444 0 R] +/Names [(page.8) 878 0 R (page.80) 1440 0 R (page.81) 1448 0 R (page.82) 1456 0 R (page.83) 1462 0 R (page.84) 1472 0 R] /Limits [(page.8) (page.84)] >> -% 2000 0 obj +% 2075 0 obj << -/Names [(page.85) 1450 0 R (page.86) 1455 0 R (page.87) 1465 0 R (page.88) 1471 0 R (page.89) 1475 0 R (page.9) 863 0 R] +/Names [(page.85) 1484 0 R (page.86) 1489 0 R (page.87) 1501 0 R (page.88) 1507 0 R (page.89) 1514 0 R (page.9) 889 0 R] /Limits [(page.85) (page.9)] >> -% 2001 0 obj +% 2076 0 obj << -/Names [(page.90) 1480 0 R (page.91) 1484 0 R (page.92) 1492 0 R (page.93) 1497 0 R (page.94) 1503 0 R (page.95) 1509 0 R] +/Names [(page.90) 1520 0 R (page.91) 1524 0 R (page.92) 1534 0 R (page.93) 1540 0 R (page.94) 1544 0 R (page.95) 1549 0 R] /Limits [(page.90) (page.95)] >> - -endstream -endobj -2054 0 obj -<< - /Title (Parallel Sparse BLAS V. 3.7.0) /Subject (Parallel Sparse Basic Linear Algebra Subroutines) /Keywords (Computer Science Linear Algebra Fluid Dynamics Parallel Linux MPI PSBLAS Iterative Solvers Preconditioners) /Creator (pdfLaTeX) /Producer ($Id$) /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.19)/Keywords() -/CreationDate (D:20191212173405Z) -/ModDate (D:20191212173405Z) -/Trapped /False -/PTEX.Fullbanner (This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018) kpathsea version 6.3.0) ->> -endobj -2003 0 obj +% 2077 0 obj << -/Type /ObjStm -/N 51 -/First 502 -/Length 8641 +/Names [(page.96) 1553 0 R (page.97) 1560 0 R (page.98) 1566 0 R (page.99) 1573 0 R (page.i) 637 0 R (page.ii) 694 0 R] +/Limits [(page.96) (page.ii)] >> -stream -2002 0 2004 169 2005 354 2006 560 2007 764 2008 966 2009 1163 2010 1358 2011 1553 2012 1751 -2013 1947 2014 2145 2015 2341 2016 2539 2017 2735 2018 2933 2019 3129 2020 3327 2021 3522 2022 3717 -2023 3915 2024 4107 2025 4289 2026 4478 2027 4696 2028 4940 2029 5149 2030 5327 2031 5499 2032 5626 -2033 5740 2034 5852 2035 5963 2036 6077 2037 6197 2038 6321 2039 6440 2040 6553 2041 6665 2042 6776 -2043 6887 2044 7003 2045 7122 2046 7240 2047 7367 2048 7470 2049 7590 2050 7712 2051 7807 2052 7891 -2053 7926 -% 2002 0 obj +% 2078 0 obj << -/Names [(page.96) 1515 0 R (page.97) 1521 0 R (page.98) 1529 0 R (page.99) 1536 0 R (page.i) 629 0 R (page.ii) 682 0 R] -/Limits [(page.96) (page.ii)] +/Names [(page.iii) 740 0 R (page.iv) 760 0 R (precdata) 1006 0 R (section*.1) 638 0 R (section*.2) 1932 0 R (section.1) 7 0 R] +/Limits [(page.iii) (section.1)] >> -% 2004 0 obj +% 2079 0 obj << -/Names [(page.iii) 731 0 R (page.iv) 736 0 R (precdata) 980 0 R (section*.1) 630 0 R (section*.10) 79 0 R (section*.100) 493 0 R] -/Limits [(page.iii) (section*.100)] +/Names [(section.10) 541 0 R (section.11) 569 0 R (section.2) 11 0 R (section.3) 35 0 R (section.4) 220 0 R (section.5) 288 0 R] +/Limits [(section.10) (section.5)] >> -% 2005 0 obj +% 2080 0 obj << -/Names [(section*.101) 497 0 R (section*.102) 505 0 R (section*.103) 509 0 R (section*.104) 513 0 R (section*.105) 517 0 R (section*.106) 521 0 R] -/Limits [(section*.101) (section*.106)] +/Names [(section.6) 308 0 R (section.7) 421 0 R (section.8) 493 0 R (section.9) 513 0 R (spbasedata) 947 0 R (spdata) 946 0 R] +/Limits [(section.6) (spdata)] >> -% 2006 0 obj +% 2081 0 obj << -/Names [(section*.107) 525 0 R (section*.108) 533 0 R (section*.109) 537 0 R (section*.11) 83 0 R (section*.110) 541 0 R (section*.111) 545 0 R] -/Limits [(section*.107) (section*.111)] +/Names [(subsection.10.1) 545 0 R (subsection.10.2) 549 0 R (subsection.10.3) 553 0 R (subsection.10.4) 557 0 R (subsection.10.5) 561 0 R (subsection.10.6) 565 0 R] +/Limits [(subsection.10.1) (subsection.10.6)] >> -% 2007 0 obj +% 2082 0 obj << -/Names [(section*.112) 549 0 R (section*.113) 553 0 R (section*.114) 561 0 R (section*.115) 1858 0 R (section*.12) 87 0 R (section*.13) 91 0 R] -/Limits [(section*.112) (section*.13)] +/Names [(subsection.11.1) 573 0 R (subsection.2.1) 15 0 R (subsection.2.2) 19 0 R (subsection.2.3) 23 0 R (subsection.2.4) 31 0 R (subsection.3.1) 39 0 R] +/Limits [(subsection.11.1) (subsection.3.1)] >> -% 2008 0 obj +% 2083 0 obj << -/Names [(section*.14) 95 0 R (section*.15) 111 0 R (section*.16) 115 0 R (section*.17) 119 0 R (section*.18) 123 0 R (section*.19) 127 0 R] -/Limits [(section*.14) (section*.19)] +/Names [(subsection.3.2) 103 0 R (subsection.3.3) 183 0 R (subsection.3.4) 212 0 R (subsection.3.5) 216 0 R (subsection.4.1) 224 0 R (subsection.4.10) 260 0 R] +/Limits [(subsection.3.2) (subsection.4.10)] >> -% 2009 0 obj +% 2084 0 obj << -/Names [(section*.2) 47 0 R (section*.20) 131 0 R (section*.21) 135 0 R (section*.22) 139 0 R (section*.23) 143 0 R (section*.24) 147 0 R] -/Limits [(section*.2) (section*.24)] +/Names [(subsection.4.11) 264 0 R (subsection.4.12) 268 0 R (subsection.4.13) 272 0 R (subsection.4.14) 276 0 R (subsection.4.15) 280 0 R (subsection.4.16) 284 0 R] +/Limits [(subsection.4.11) (subsection.4.16)] >> -% 2010 0 obj +% 2085 0 obj << -/Names [(section*.25) 151 0 R (section*.26) 155 0 R (section*.27) 159 0 R (section*.28) 163 0 R (section*.29) 167 0 R (section*.3) 51 0 R] -/Limits [(section*.25) (section*.3)] +/Names [(subsection.4.2) 228 0 R (subsection.4.3) 232 0 R (subsection.4.4) 236 0 R (subsection.4.5) 240 0 R (subsection.4.6) 244 0 R (subsection.4.7) 248 0 R] +/Limits [(subsection.4.2) (subsection.4.7)] >> -% 2011 0 obj +% 2086 0 obj << -/Names [(section*.30) 171 0 R (section*.31) 175 0 R (section*.32) 191 0 R (section*.33) 195 0 R (section*.34) 199 0 R (section*.35) 204 0 R] -/Limits [(section*.30) (section*.35)] +/Names [(subsection.4.8) 252 0 R (subsection.4.9) 256 0 R (subsection.5.1) 292 0 R (subsection.5.2) 296 0 R (subsection.5.3) 300 0 R (subsection.5.4) 304 0 R] +/Limits [(subsection.4.8) (subsection.5.4)] >> -% 2012 0 obj +% 2087 0 obj << -/Names [(section*.36) 208 0 R (section*.37) 224 0 R (section*.38) 228 0 R (section*.39) 232 0 R (section*.4) 55 0 R (section*.40) 236 0 R] -/Limits [(section*.36) (section*.40)] +/Names [(subsection.6.1) 312 0 R (subsection.6.10) 348 0 R (subsection.6.11) 352 0 R (subsection.6.12) 356 0 R (subsection.6.13) 360 0 R (subsection.6.14) 364 0 R] +/Limits [(subsection.6.1) (subsection.6.14)] >> -% 2013 0 obj +% 2088 0 obj << -/Names [(section*.41) 240 0 R (section*.42) 244 0 R (section*.43) 248 0 R (section*.44) 252 0 R (section*.45) 256 0 R (section*.46) 260 0 R] -/Limits [(section*.41) (section*.46)] +/Names [(subsection.6.15) 368 0 R (subsection.6.16) 372 0 R (subsection.6.17) 376 0 R (subsection.6.18) 380 0 R (subsection.6.19) 384 0 R (subsection.6.2) 316 0 R] +/Limits [(subsection.6.15) (subsection.6.2)] >> -% 2014 0 obj +% 2089 0 obj << -/Names [(section*.47) 264 0 R (section*.48) 268 0 R (section*.49) 272 0 R (section*.5) 59 0 R (section*.50) 280 0 R (section*.51) 284 0 R] -/Limits [(section*.47) (section*.51)] +/Names [(subsection.6.20) 388 0 R (subsection.6.21) 392 0 R (subsection.6.22) 396 0 R (subsection.6.23) 400 0 R (subsection.6.24) 405 0 R (subsection.6.25) 409 0 R] +/Limits [(subsection.6.20) (subsection.6.25)] >> -% 2015 0 obj +% 2090 0 obj << -/Names [(section*.52) 288 0 R (section*.53) 292 0 R (section*.54) 300 0 R (section*.55) 304 0 R (section*.56) 308 0 R (section*.57) 312 0 R] -/Limits [(section*.52) (section*.57)] +/Names [(subsection.6.26) 413 0 R (subsection.6.27) 417 0 R (subsection.6.3) 320 0 R (subsection.6.4) 324 0 R (subsection.6.5) 328 0 R (subsection.6.6) 332 0 R] +/Limits [(subsection.6.26) (subsection.6.6)] >> -% 2016 0 obj +% 2091 0 obj << -/Names [(section*.58) 316 0 R (section*.59) 320 0 R (section*.6) 63 0 R (section*.60) 324 0 R (section*.61) 328 0 R (section*.62) 332 0 R] -/Limits [(section*.58) (section*.62)] +/Names [(subsection.6.7) 336 0 R (subsection.6.8) 340 0 R (subsection.6.9) 344 0 R (subsection.7.1) 425 0 R (subsection.7.10) 461 0 R (subsection.7.11) 465 0 R] +/Limits [(subsection.6.7) (subsection.7.11)] >> -% 2017 0 obj +% 2092 0 obj << -/Names [(section*.63) 336 0 R (section*.64) 340 0 R (section*.65) 344 0 R (section*.66) 348 0 R (section*.67) 352 0 R (section*.68) 356 0 R] -/Limits [(section*.63) (section*.68)] +/Names [(subsection.7.12) 469 0 R (subsection.7.13) 473 0 R (subsection.7.14) 477 0 R (subsection.7.15) 481 0 R (subsection.7.16) 485 0 R (subsection.7.17) 489 0 R] +/Limits [(subsection.7.12) (subsection.7.17)] >> -% 2018 0 obj +% 2093 0 obj << -/Names [(section*.69) 360 0 R (section*.7) 67 0 R (section*.70) 364 0 R (section*.71) 368 0 R (section*.72) 372 0 R (section*.73) 376 0 R] -/Limits [(section*.69) (section*.73)] +/Names [(subsection.7.2) 429 0 R (subsection.7.3) 433 0 R (subsection.7.4) 437 0 R (subsection.7.5) 441 0 R (subsection.7.6) 445 0 R (subsection.7.7) 449 0 R] +/Limits [(subsection.7.2) (subsection.7.7)] >> -% 2019 0 obj +% 2094 0 obj << -/Names [(section*.74) 380 0 R (section*.75) 384 0 R (section*.76) 388 0 R (section*.77) 392 0 R (section*.78) 396 0 R (section*.79) 400 0 R] -/Limits [(section*.74) (section*.79)] +/Names [(subsection.7.8) 453 0 R (subsection.7.9) 457 0 R (subsection.8.1) 497 0 R (subsection.8.2) 501 0 R (subsection.8.3) 505 0 R (subsection.8.4) 509 0 R] +/Limits [(subsection.7.8) (subsection.8.4)] >> -% 2020 0 obj +% 2095 0 obj << -/Names [(section*.8) 71 0 R (section*.80) 405 0 R (section*.81) 413 0 R (section*.82) 417 0 R (section*.83) 421 0 R (section*.84) 425 0 R] -/Limits [(section*.8) (section*.84)] +/Names [(subsection.9.1) 517 0 R (subsection.9.2) 521 0 R (subsection.9.3) 525 0 R (subsection.9.4) 529 0 R (subsection.9.5) 533 0 R (subsection.9.6) 537 0 R] +/Limits [(subsection.9.1) (subsection.9.6)] >> -% 2021 0 obj +% 2096 0 obj << -/Names [(section*.85) 429 0 R (section*.86) 433 0 R (section*.87) 437 0 R (section*.88) 441 0 R (section*.89) 445 0 R (section*.9) 75 0 R] -/Limits [(section*.85) (section*.9)] +/Names [(subsubsection.2.3.1) 27 0 R (subsubsection.3.1.1) 43 0 R (subsubsection.3.1.10) 79 0 R (subsubsection.3.1.11) 83 0 R (subsubsection.3.1.12) 87 0 R (subsubsection.3.1.13) 91 0 R] +/Limits [(subsubsection.2.3.1) (subsubsection.3.1.13)] >> -% 2022 0 obj +% 2097 0 obj << -/Names [(section*.90) 449 0 R (section*.91) 453 0 R (section*.92) 457 0 R (section*.93) 461 0 R (section*.94) 465 0 R (section*.95) 469 0 R] -/Limits [(section*.90) (section*.95)] +/Names [(subsubsection.3.1.14) 95 0 R (subsubsection.3.1.15) 99 0 R (subsubsection.3.1.2) 47 0 R (subsubsection.3.1.3) 51 0 R (subsubsection.3.1.4) 55 0 R (subsubsection.3.1.5) 59 0 R] +/Limits [(subsubsection.3.1.14) (subsubsection.3.1.5)] >> -% 2023 0 obj +% 2098 0 obj << -/Names [(section*.96) 473 0 R (section*.97) 477 0 R (section*.98) 485 0 R (section*.99) 489 0 R (section.1) 7 0 R (section.10) 529 0 R] -/Limits [(section*.96) (section.10)] +/Names [(subsubsection.3.1.6) 63 0 R (subsubsection.3.1.7) 67 0 R (subsubsection.3.1.8) 71 0 R (subsubsection.3.1.9) 75 0 R (subsubsection.3.2.1) 107 0 R (subsubsection.3.2.10) 143 0 R] +/Limits [(subsubsection.3.1.6) (subsubsection.3.2.10)] >> -% 2024 0 obj +% 2099 0 obj << -/Names [(section.11) 557 0 R (section.2) 11 0 R (section.3) 35 0 R (section.4) 220 0 R (section.5) 276 0 R (section.6) 296 0 R] -/Limits [(section.11) (section.6)] +/Names [(subsubsection.3.2.11) 147 0 R (subsubsection.3.2.12) 151 0 R (subsubsection.3.2.13) 155 0 R (subsubsection.3.2.14) 159 0 R (subsubsection.3.2.15) 163 0 R (subsubsection.3.2.16) 167 0 R] +/Limits [(subsubsection.3.2.11) (subsubsection.3.2.16)] >> -% 2025 0 obj +% 2100 0 obj << -/Names [(section.7) 409 0 R (section.8) 481 0 R (section.9) 501 0 R (spbasedata) 920 0 R (spdata) 919 0 R (subsection.2.1) 15 0 R] -/Limits [(section.7) (subsection.2.1)] +/Names [(subsubsection.3.2.17) 171 0 R (subsubsection.3.2.18) 175 0 R (subsubsection.3.2.19) 179 0 R (subsubsection.3.2.2) 111 0 R (subsubsection.3.2.3) 115 0 R (subsubsection.3.2.4) 119 0 R] +/Limits [(subsubsection.3.2.17) (subsubsection.3.2.4)] >> -% 2026 0 obj +% 2101 0 obj << -/Names [(subsection.2.2) 19 0 R (subsection.2.3) 23 0 R (subsection.2.4) 31 0 R (subsection.3.1) 39 0 R (subsection.3.2) 103 0 R (subsection.3.3) 183 0 R] -/Limits [(subsection.2.2) (subsection.3.3)] +/Names [(subsubsection.3.2.5) 123 0 R (subsubsection.3.2.6) 127 0 R (subsubsection.3.2.7) 131 0 R (subsubsection.3.2.8) 135 0 R (subsubsection.3.2.9) 139 0 R (subsubsection.3.3.1) 187 0 R] +/Limits [(subsubsection.3.2.5) (subsubsection.3.3.1)] >> -% 2027 0 obj +% 2102 0 obj << -/Names [(subsection.3.4) 212 0 R (subsection.3.5) 216 0 R (subsubsection.2.3.1) 27 0 R (subsubsection.3.1.1) 43 0 R (subsubsection.3.1.2) 99 0 R (subsubsection.3.2.1) 107 0 R] -/Limits [(subsection.3.4) (subsubsection.3.2.1)] +/Names [(subsubsection.3.3.2) 191 0 R (subsubsection.3.3.3) 195 0 R (subsubsection.3.3.4) 199 0 R (subsubsection.3.3.5) 204 0 R (subsubsection.3.3.6) 208 0 R (table.1) 999 0 R] +/Limits [(subsubsection.3.3.2) (table.1)] >> -% 2028 0 obj +% 2103 0 obj << -/Names [(subsubsection.3.2.2) 179 0 R (subsubsection.3.3.1) 187 0 R (table.1) 973 0 R (table.10) 1137 0 R (table.11) 1145 0 R (table.12) 1158 0 R] -/Limits [(subsubsection.3.2.2) (table.12)] +/Names [(table.10) 1163 0 R (table.11) 1171 0 R (table.12) 1184 0 R (table.13) 1203 0 R (table.14) 1231 0 R (table.15) 1248 0 R] +/Limits [(table.10) (table.15)] >> -% 2029 0 obj +% 2104 0 obj << -/Names [(table.13) 1177 0 R (table.14) 1207 0 R (table.15) 1240 0 R (table.16) 1279 0 R (table.17) 1294 0 R (table.2) 1018 0 R] -/Limits [(table.13) (table.2)] +/Names [(table.16) 1263 0 R (table.17) 1277 0 R (table.18) 1309 0 R (table.19) 1348 0 R (table.2) 1045 0 R (table.20) 1364 0 R] +/Limits [(table.16) (table.20)] >> -% 2030 0 obj +% 2105 0 obj << -/Names [(table.3) 1041 0 R (table.4) 1053 0 R (table.5) 1072 0 R (table.6) 1080 0 R (table.7) 1098 0 R (table.8) 1110 0 R] +/Names [(table.3) 1067 0 R (table.4) 1079 0 R (table.5) 1098 0 R (table.6) 1106 0 R (table.7) 1124 0 R (table.8) 1137 0 R] /Limits [(table.3) (table.8)] >> -% 2031 0 obj +% 2106 0 obj << -/Names [(table.9) 1130 0 R (title.0) 3 0 R (vbasedata) 907 0 R (vdata) 960 0 R] +/Names [(table.9) 1156 0 R (title.0) 3 0 R (vbasedata) 933 0 R (vdata) 986 0 R] /Limits [(table.9) (vdata)] >> -% 2032 0 obj +% 2107 0 obj << -/Kids [1937 0 R 1938 0 R 1939 0 R 1940 0 R 1941 0 R 1942 0 R] +/Kids [2011 0 R 2012 0 R 2013 0 R 2014 0 R 2015 0 R 2016 0 R] /Limits [(Doc-Start) (Item.125)] >> -% 2033 0 obj +% 2108 0 obj << -/Kids [1943 0 R 1944 0 R 1945 0 R 1946 0 R 1947 0 R 1948 0 R] +/Kids [2017 0 R 2018 0 R 2019 0 R 2020 0 R 2021 0 R 2022 0 R] /Limits [(Item.126) (Item.42)] >> -% 2034 0 obj + +endstream +endobj +2130 0 obj +<< + /Title (Parallel Sparse BLAS V. 3.7.0) /Subject (Parallel Sparse Basic Linear Algebra Subroutines) /Keywords (Computer Science Linear Algebra Fluid Dynamics Parallel Linux MPI PSBLAS Iterative Solvers Preconditioners) /Creator (pdfLaTeX) /Producer ($Id$) /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.19)/Keywords() +/CreationDate (D:20191217192934Z) +/ModDate (D:20191217192934Z) +/Trapped /False +/PTEX.Fullbanner (This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018) kpathsea version 6.3.0) +>> +endobj +2110 0 obj +<< +/Type /ObjStm +/N 20 +/First 189 +/Length 2518 +>> +stream +2109 0 2111 111 2112 225 2113 345 2114 469 2115 588 2116 701 2117 812 2118 923 2119 1034 +2120 1152 2121 1277 2122 1403 2123 1533 2124 1654 2125 1774 2126 1899 2127 1997 2128 2081 2129 2116 +% 2109 0 obj << -/Kids [1949 0 R 1950 0 R 1951 0 R 1952 0 R 1953 0 R 1954 0 R] +/Kids [2023 0 R 2024 0 R 2025 0 R 2026 0 R 2027 0 R 2028 0 R] /Limits [(Item.43) (Item.75)] >> -% 2035 0 obj +% 2111 0 obj << -/Kids [1955 0 R 1956 0 R 1957 0 R 1958 0 R 1959 0 R 1960 0 R] +/Kids [2029 0 R 2030 0 R 2031 0 R 2032 0 R 2033 0 R 2034 0 R] /Limits [(Item.76) (cite.METIS)] >> -% 2036 0 obj +% 2112 0 obj << -/Kids [1961 0 R 1962 0 R 1963 0 R 1964 0 R 1965 0 R 1966 0 R] +/Kids [2035 0 R 2036 0 R 2037 0 R 2038 0 R 2039 0 R 2040 0 R] /Limits [(cite.MPI1) (lstlisting.-20)] >> -% 2037 0 obj +% 2113 0 obj << -/Kids [1967 0 R 1968 0 R 1969 0 R 1970 0 R 1971 0 R 1972 0 R] +/Kids [2041 0 R 2042 0 R 2043 0 R 2044 0 R 2045 0 R 2046 0 R] /Limits [(lstlisting.-3) (lstnumber.-5.1)] >> -% 2038 0 obj +% 2114 0 obj << -/Kids [1973 0 R 1974 0 R 1975 0 R 1976 0 R 1977 0 R 1978 0 R] +/Kids [2047 0 R 2048 0 R 2049 0 R 2050 0 R 2051 0 R 2052 0 R] /Limits [(lstnumber.-5.2) (page.103)] >> -% 2039 0 obj +% 2115 0 obj << -/Kids [1979 0 R 1980 0 R 1981 0 R 1982 0 R 1983 0 R 1984 0 R] +/Kids [2053 0 R 2054 0 R 2055 0 R 2056 0 R 2057 0 R 2058 0 R] /Limits [(page.104) (page.136)] >> -% 2040 0 obj +% 2116 0 obj << -/Kids [1985 0 R 1986 0 R 1987 0 R 1988 0 R 1989 0 R 1990 0 R] -/Limits [(page.137) (page.35)] +/Kids [2059 0 R 2060 0 R 2061 0 R 2062 0 R 2063 0 R 2064 0 R] +/Limits [(page.137) (page.3)] >> -% 2041 0 obj +% 2117 0 obj << -/Kids [1991 0 R 1992 0 R 1993 0 R 1994 0 R 1995 0 R 1996 0 R] -/Limits [(page.36) (page.68)] +/Kids [2065 0 R 2066 0 R 2067 0 R 2068 0 R 2069 0 R 2070 0 R] +/Limits [(page.30) (page.62)] >> -% 2042 0 obj +% 2118 0 obj << -/Kids [1997 0 R 1998 0 R 1999 0 R 2000 0 R 2001 0 R 2002 0 R] -/Limits [(page.69) (page.ii)] +/Kids [2071 0 R 2072 0 R 2073 0 R 2074 0 R 2075 0 R 2076 0 R] +/Limits [(page.63) (page.95)] >> -% 2043 0 obj +% 2119 0 obj << -/Kids [2004 0 R 2005 0 R 2006 0 R 2007 0 R 2008 0 R 2009 0 R] -/Limits [(page.iii) (section*.24)] +/Kids [2077 0 R 2078 0 R 2079 0 R 2080 0 R 2081 0 R 2082 0 R] +/Limits [(page.96) (subsection.3.1)] >> -% 2044 0 obj +% 2120 0 obj << -/Kids [2010 0 R 2011 0 R 2012 0 R 2013 0 R 2014 0 R 2015 0 R] -/Limits [(section*.25) (section*.57)] +/Kids [2083 0 R 2084 0 R 2085 0 R 2086 0 R 2087 0 R 2088 0 R] +/Limits [(subsection.3.2) (subsection.6.2)] >> -% 2045 0 obj +% 2121 0 obj << -/Kids [2016 0 R 2017 0 R 2018 0 R 2019 0 R 2020 0 R 2021 0 R] -/Limits [(section*.58) (section*.9)] +/Kids [2089 0 R 2090 0 R 2091 0 R 2092 0 R 2093 0 R 2094 0 R] +/Limits [(subsection.6.20) (subsection.8.4)] >> -% 2046 0 obj +% 2122 0 obj << -/Kids [2022 0 R 2023 0 R 2024 0 R 2025 0 R 2026 0 R 2027 0 R] -/Limits [(section*.90) (subsubsection.3.2.1)] +/Kids [2095 0 R 2096 0 R 2097 0 R 2098 0 R 2099 0 R 2100 0 R] +/Limits [(subsection.9.1) (subsubsection.3.2.4)] >> -% 2047 0 obj +% 2123 0 obj << -/Kids [2028 0 R 2029 0 R 2030 0 R 2031 0 R] -/Limits [(subsubsection.3.2.2) (vdata)] +/Kids [2101 0 R 2102 0 R 2103 0 R 2104 0 R 2105 0 R 2106 0 R] +/Limits [(subsubsection.3.2.5) (vdata)] >> -% 2048 0 obj +% 2124 0 obj << -/Kids [2032 0 R 2033 0 R 2034 0 R 2035 0 R 2036 0 R 2037 0 R] +/Kids [2107 0 R 2108 0 R 2109 0 R 2111 0 R 2112 0 R 2113 0 R] /Limits [(Doc-Start) (lstnumber.-5.1)] >> -% 2049 0 obj +% 2125 0 obj << -/Kids [2038 0 R 2039 0 R 2040 0 R 2041 0 R 2042 0 R 2043 0 R] -/Limits [(lstnumber.-5.2) (section*.24)] +/Kids [2114 0 R 2115 0 R 2116 0 R 2117 0 R 2118 0 R 2119 0 R] +/Limits [(lstnumber.-5.2) (subsection.3.1)] >> -% 2050 0 obj +% 2126 0 obj << -/Kids [2044 0 R 2045 0 R 2046 0 R 2047 0 R] -/Limits [(section*.25) (vdata)] +/Kids [2120 0 R 2121 0 R 2122 0 R 2123 0 R] +/Limits [(subsection.3.2) (vdata)] >> -% 2051 0 obj +% 2127 0 obj << -/Kids [2048 0 R 2049 0 R 2050 0 R] +/Kids [2124 0 R 2125 0 R 2126 0 R] /Limits [(Doc-Start) (vdata)] >> -% 2052 0 obj +% 2128 0 obj << -/Dests 2051 0 R +/Dests 2127 0 R >> -% 2053 0 obj +% 2129 0 obj << /Type /Catalog -/Pages 1933 0 R -/Outlines 1934 0 R -/Names 2052 0 R +/Pages 2007 0 R +/Outlines 2008 0 R +/Names 2128 0 R /URI (http://ce.uniroma2.it/psblas) /PageMode/UseOutlines/PageLabels<>2<>6<>]>> -/OpenAction 564 0 R +/OpenAction 576 0 R >> endstream endobj -2055 0 obj +2131 0 obj << /Type /XRef -/Index [0 2056] -/Size 2056 +/Index [0 2132] +/Size 2132 /W [1 3 1] -/Root 2053 0 R -/Info 2054 0 R -/ID [ ] -/Length 10280 +/Root 2129 0 R +/Info 2130 0 R +/ID [ ] +/Length 10660 >> stream -T"4!> FR  -[  : ::#:$:D:E:F:G:K:L :M!":Q#$:R%&:T'(:U)*:Y +,:Z -.:[ /0:b -12:c 3456789: ;<=>?@ABCDEFcGHbIJaKL"`MN#_OP$^QR(]ST.\UV/[WX0ZYZ1Y[\7X]^8W_`9Vab?UcDTESFRMQQP  -[O  N M'L8K@JQI\Hb GbFbE b D!"b4C#$bIB%&bPA'(@)*'?+,3>-.@=/0A<12X;34E:56E978E 89:E7;<E6=>E%5?@E?4ABEN3CDET2EFE[1GHEa0IJ /KL.MN-OP,QR"+ST'*UV-)WX3(YZ9'[\?&]^F%_`M$abZ#cl5^"! -!! !!  -!!  !% !)!-!1!5!9!?!E!K!Q !W!"!^#$!c%&'(()*. +,4 -.: /0@ -12E 34L56S78Y9:`;<=>?@ABCD"EF'KcGH+KbIJ1KaKL5K`MN;K_OPQU$RSK+K:K*K2K>XV'|WZ[\]^_`abcwwwwwwwwww w -w w w wwwwwwwwwwwwwwwwwww w!w"w#w(w&Y(w$w%w)w*w+w,w-w.w/w0w1w2w3w4w5w6w7w8w9w:w;w<w=w>w?w@wAwBwCwDwEwFwGwHwIwJwKwLwMwNwOwPwQwRwSwTwUwVwZwXw'wWw[w\w]w^w_w`wawbwc  -    !%&#wYT" #($_6'*+,-./01235)bK9K?bYOcaVW`ST;<=B@6K.?789:EUCDIAEK;K4K0K7K3GK5H_NOSJ̺PQKLMRQUVXTW::YZK/\]^_`abcV}:::U::::::: : -: : : ::::K<K@:::t::::::::!:&: r:":%:(:):*:1:':+:,:-:.:/:0:3:4:?:2ͥ:5:6:7:8:9:::;:<:=:>:A:B:H:@:C:N:I:JKA:V:O:P:S:\:W@:X:^:_:`:]2s:a^{ zd -  KBf% !)&'+,3*{-26:45KC<=@;#c>\BJHA2CGLNIDKK=ROSsPTUVWXY_]STLZ`ac^q"bKD   -  C!` #$%)" &(2*+,-./01KE456:3%79<=>B;>?AKCZ3DEFGHIJMNOSLiPRVTpUXYZ^W[]KFb_`abcbbbPFbbbb bbb -b bbb bbbbbbbK8bbbbbb'b%b$bb!b"b#b$b(b)b*b+b,b-b.b0b&A`b/KGb2b8b6b1\b3b5b9b:b;b<b=b>b@b7wb?bBbCbEbAJbDbGbJbFbHbLbMbNb]bUbKbObQbRbSbTԶb^babVb_b`KHbWbXbYbZb[b\bbDbcK6 ; g  - ʭ  !2K #$%,":R&()*+KI/-_;.1970e+2456:;=8<B>?DGCUEFILHyJKKJTMNOPQRSVYUW[`Z \]^_bcEa #EE -eQEEE E hEE EE - uE KKEEEE ~EEE EEEEEE"E cEEE E!E(E&E# E$E)E*E1E' ?E+E,E-E.E/E0E:E2 @E3E4E5E6E7E8E9KLE<E=E@E; PE>EIEA - EBECEDEEEFEGEHEKELEOEJ -EMEQEREVEP -!ESEUEXEYE\EW -1EZE^E_EbE] -EE`KMEc -`  - -    -0 - -J -KN # - !%)$ -&(+/* -,.150 h247;6 M8:=B< 3 ->@AKODIC B4EGHKNJ PLTO gPQRSVWX[U vHY_\ ]!` labc!!!!!!!KP ! ! }! !!  u! !!!! q!!!!! !!!!!"! ! !&!# '{!$KQ!*!' 58!(!.!+ :'!,!2!/ @0!0!6!3 E!4!<!7 W!8!:!;!B!= lK!>!@!AKR!H!C !D!F!G!N!I #!J!L!M!T!O !P!R!S![!U !V!X!YK-!Z!`!\ /!]!_!a e!bKS E %@#$% >  - K,   !"+& Z')*1, i-/072 op356=8 v 9;<KTA> ~?CHB DFGJOI KMNQVP RTU\W XZ[^c] Ÿ_abKU  (   - ! ?= #BI!KV%($Y]&,)e*./2-i,063t489B@7v:<=>?K1CDEGANFKWIKHZJ[LMNPXZK\{]K6KKKKKKKK K -K K K KKKKKKKKPKoKKKSKDzKbxKKPK K-K OK!zK"@K#K$K%fOK&K'QK(K)KXKYKZK[K\K]K^px#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abce  -    !"#$%&'()*+,-./0120 +ZHRcZb@a  +@ `  @+_ @2^@7]@8\@X[@YZ@ZY@[X@_W@`V @aU!"T#$S%&R'(Q)* P+, +O-. N/0M12L34K56J78I9: H;<"G=>&F?@'EAB(DCD,CEF-BGH1AIJ2@KL6?MN7>OP8=QR<<STB;UVC:WXD9YZE8[\K7]^L6_`M5abS4cRX3Y2Z1a0/  + .  - 0,;+L*T)e(e 'e&e$%e+$ e4#!"eH"#$ec!%&  '()*!+,(-.B/0c12H 34H56H78H09:H=;<HD=>HI?@HOABHZCDHaEFGH&IJ,KL3 MN9 OPE QRK +STO UVTWX^YZc[\ ]^ _` ab cs  % 2c 6b Fa  + J`   P_  V^ ]] a\[Z Y XWV U!"#T#$)S%&/R'(6Q)*;P+,BO-.N/0M12 L34K56J78I9:$H;<+G=>1F?@8EAB>DCDDCEFJBGHSAIJ^@KLc?MN\>OP\ =QR\ <ST\;UVW[2}XY ^\5]`abc  +    !"#$%&'().,_5*+/0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\`^-]abc  +   !"#%').,_+ $&(*e023456789:<-Y7;/1>?@ABCDEFGI=g\=\4\*\>\<\1\2\;\.\/OPQrVTJk SKLMN(\0WX]UY [\\:bc@^ҝ@@_`a\-\,(&@@@@*5@@@@ ?@ + +@ @ @@@@@@@(@&@a@@@@@@@@@@ @!@"@#@$@%@)@3@'9@*@,@-@.@/@0@1@5@:@4@6@9@<@=@>@E@;@?@@@A@B@C@D@G@H@S@F@I@J@K@L@M@N@O@P@Q@R@U@V@\@TO@W@b@]@^@cb K cX\9c#!)$%.*+3/2094ހ5=:;?@G>NAFJNH"IPQTO1wR V^\U@W[`b]S_cau   +z' !"#$%&)*+,-.2(/153=4789=6:<F>?@ABCDE HIJNG1KMPQRVOISU_Wf.XYZ[\]^abce`ueeBeeeee e +ee´e e !ee>eeeeeeeeeeeeeee!e"e&e e#e%e(e)e-e'e*e,e/e0e1e2e;e9e.2e3e5e6e7e8e<e=e>e?e@eAeBeDe:OyeC"eFeLeJeEkeGeIeMeNeOePeQeReTeKeSeVeWeYeUneXe[e\e]e^e_e`eaeZeb  +  #$*"H^ $%&5-#K&')*+,t69.g78/01234K<:;$>?@G= +ACDEFI8|JKPHsLMNO\SQ(R]T6[UVWXYZGz_`aH^!bHHHH +V1HHxH%H HHH dH +H H HHHHH #&HHH 3HHHH MHHH!H$H  gH"H#H,H% 4H&H'H(H)H*H+&H.H1H- H/H3H8H2 H4H5H6H7H:H;H?H9 °H<H>HAHBHEH@ <HCHGHJHF PHHHLHMHPHK ZHN'HUHQ +HRHSHTHWHXH^HV +3HYH[H\H]HbH_ +"H` Hc +9" r + +    +1(! +i #$'" +u%)*.( ++-014/ +Ι267:5 +8?; +<=>)ABCF@ iDHILG JPM $NRUQ 2QSZV L&WXY\_[ O$]*a ` eb      p      , +     (           !     + # & "  $ , '  ( ) * + . / 0 3 - Z 1 7 4 $ 5 C 8 ; 9 : ; < = > ? @ A B G D W E, M H X  I K L S N n O Q R Z T  U W X Y ^ [  \ b _ T ` c -  Ս + ۱  H  D   /.&! 0"$%,' E(*+3- ZL.01284 r57=9 %:<?@C> aA/_`aD EFGHIJKLMNOPQRSTUVWXYZ[\]^b c j + ++  P0 "'!.#%&).(C`*,-4/Q0236;5`79:A<qS=?@1EB~CGHLFIKNOPQTMRWUbVYZ[\_X]a\`b2\\\\\\ +\ \\\ \ \\\\\/\\\\\ \\\\\7\\!\#\ T\"3\&\$f\%\6\'g\(\)\+\3\5\@\7\8\?\A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T3\Us\V5\W]\X{6\Y\Z\[7\\ \]\^\_Z\` \aH\bpt\cN'VH456789:4  +    !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abc>>>>>>>>>> > +> > > >>>>>>l endstream endobj startxref -1309314 +1347795 %%EOF diff --git a/docs/src/Makefile b/docs/src/Makefile index f5f9985b..6c831422 100644 --- a/docs/src/Makefile +++ b/docs/src/Makefile @@ -113,6 +113,7 @@ DATE = $(shell date +%Y-%m-%d) # LATEX = latex LTX2HTML = latex2html -local_icons +LTX2HTML = htlatex PDFLATEX = pdflatex ACRO = evince XPDF = xpdf @@ -143,6 +144,7 @@ BASEHTML = $(patsubst %.tex,%,$(HTMLFILE)) HTML = $(join $(HTMLFILE),.html) HTMLDIR = ../html HTMLFLAGS = -noaddress +HTMLFLAGS = "html,3" FIGURES = $(sort $(wildcard $(FIGDIR)/*)) GLOFILES:= $(sort $(wildcard lib/*.gdf)) @@ -159,9 +161,9 @@ TEXLNFIL = $(addprefix $(PWD)/,$(TEXFILES)) #============================================================================ all: pdf html - + pdf: $(PDF) copypdf -html: $(HTML) +html: $(HTML) copyhtml $(PDF): $(TEXFILES) $(LIBFILES) $(FIGURES) Makefile $(header) @@ -184,19 +186,21 @@ copypdf: $(HTML): $(TEXFILES) $(LIBFILES) $(FIGURES) Makefile $(header) $(initialize) - $(latex-filter) + $(pdflatex-filter) ifneq ($(BIBFILES),) $(bibtex) - $(latex-filter) + $(pdflatex-filter) endif ifneq ($(GLOFILES),) $(glosstex) - $(latex-filter) + $(pdflatex-filter) endif # $(makeindex) - $(latex-filter) $(ltx2html-filter) +copyhtml: + $(ltx2html-cpy) + $(PS): $(PDF) $(PDF2PS) $< $(PS) @@ -328,7 +332,16 @@ define ltx2html-filter @echo "----- latex -------------------------------------------------------" @echo -n "Starting: "; date @echo - cd tmp; ($(LTX2HTML) $(HTMLFLAGS) -dir ../$(HTMLDIR) $(HTMLFILE) 2>&1) | $(FILTER) +# cd tmp; ($(LTX2HTML) $(HTMLFLAGS) -dir ../$(HTMLDIR) $(HTMLFILE) 2>&1) | $(FILTER) + cd tmp; ($(LTX2HTML) $(HTMLFILE) $(HTMLFLAGS) 2>&1) | $(FILTER) +endef + +define ltx2html-cpy + @echo + @echo "----- latex -------------------------------------------------------" + @echo -n "Starting: "; date + @echo + cd tmp; (cp *.css *.html *.png ../$(HTMLDIR)); (cp $(HTMLFILE) ../$(HTMLDIR)/index.html) endef #---------------------------------------------------------------------------- diff --git a/docs/src/commrout.tex b/docs/src/commrout.tex index 1c66b2fb..93a6102f 100644 --- a/docs/src/commrout.tex +++ b/docs/src/commrout.tex @@ -8,8 +8,7 @@ The routines in this chapter implement various global communication operators on vectors associated with a discretization mesh. For auxiliary communication routines not tied to a discretization space see~\ref{sec:toolsrout}. -\clearpage\subsection*{psb\_halo --- Halo Data Communication} -\addcontentsline{toc}{subsection}{psb\_halo} +\clearpage\subsection{psb\_halo --- Halo Data Communication} These subroutines gathers the values of the halo @@ -88,7 +87,7 @@ An integer value that contains an error code. \begin{figure}[h] \begin{center} \ifcase\pdfoutput -\includegraphics[scale=0.45]{figures/try8x8.eps} +\includegraphics[scale=0.45]{figures/try8x8.png} \or \includegraphics[scale=0.45]{figures/try8x8} \fi @@ -162,8 +161,7 @@ following: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_ovrl --- Overlap Update} -\addcontentsline{toc}{subsection}{psb\_ovrl} +\clearpage\subsection{psb\_ovrl --- Overlap Update} These subroutines applies an overlap operator to the input vector: @@ -267,7 +265,7 @@ their instances. \begin{figure}[h] \begin{center} \ifcase\pdfoutput -\includegraphics[scale=0.65]{figures/try8x8_ov.eps} +\includegraphics[scale=0.65]{figures/try8x8_ov.png} \or {\includegraphics[scale=0.65]{figures/try8x8_ov}} \fi @@ -354,8 +352,7 @@ following (showing a transition among the two subdomains) % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_gather --- Gather Global Dense Matrix} -\addcontentsline{toc}{subsection}{psb\_gather} +\clearpage\subsection{psb\_gather --- Gather Global Dense Matrix} These subroutines collect the portions of global dense matrix distributed over all process into one single array stored on one @@ -456,8 +453,7 @@ An integer value; 0 means no error has been detected. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_scatter --- Scatter Global Dense Matrix} -\addcontentsline{toc}{subsection}{psb\_scatter} +\clearpage\subsection{psb\_scatter --- Scatter Global Dense Matrix} These subroutines scatters the portions of global dense matrix owned by a process to all the processes in the processes grid. diff --git a/docs/src/datastruct.tex b/docs/src/datastruct.tex index 866a405d..72ee814b 100644 --- a/docs/src/datastruct.tex +++ b/docs/src/datastruct.tex @@ -182,8 +182,7 @@ state, which can take the following values: \subsubsection{Descriptor Methods} -\subsubsection*{get\_local\_rows --- Get number of local rows} -\addcontentsline{toc}{paragraph}{get\_local\_rows} +\subsubsection{get\_local\_rows --- Get number of local rows} \begin{verbatim} nr = desc%get_local_rows() @@ -208,8 +207,7 @@ Scope: {\bf local}.\\ \end{description} -\subsubsection*{get\_local\_cols --- Get number of local cols} -\addcontentsline{toc}{paragraph}{get\_local\_cols} +\subsubsection{get\_local\_cols --- Get number of local cols} \begin{verbatim} nc = desc%get_local_cols() @@ -235,8 +233,7 @@ Scope: {\bf local}.\\ \end{description} -\subsubsection*{get\_global\_rows --- Get number of global rows} -\addcontentsline{toc}{paragraph}{get\_global\_rows} +\subsubsection{get\_global\_rows --- Get number of global rows} \begin{verbatim} nr = desc%get_global_rows() @@ -258,8 +255,7 @@ Scope: {\bf local}.\\ global index space. \end{description} -\subsubsection*{get\_global\_cols --- Get number of global cols} -\addcontentsline{toc}{paragraph}{get\_global\_cols} +\subsubsection{get\_global\_cols --- Get number of global cols} \begin{verbatim} nr = desc%get_global_cols() @@ -282,8 +278,7 @@ Scope: {\bf local}.\\ \end{description} -\subsubsection*{get\_global\_indices --- Get vector of global indices} -\addcontentsline{toc}{paragraph}{get\_global\_indices} +\subsubsection{get\_global\_indices --- Get vector of global indices} \begin{verbatim} myidx = desc%get_global_indices([owned]) @@ -311,8 +306,7 @@ Type: {\bf optional}; default: \verb|.true.|.\\ -\subsubsection*{get\_context --- Get communication context} -\addcontentsline{toc}{paragraph}{get\_context} +\subsubsection{get\_context --- Get communication context} \begin{verbatim} ictxt = desc%get_context() @@ -333,8 +327,7 @@ Scope: {\bf local}.\\ \item[Function value] The communication context. \end{description} -\subsubsection*{Clone --- clone current object} -\addcontentsline{toc}{paragraph}{Clone} +\subsubsection{Clone --- clone current object} \begin{verbatim} call desc%clone(descout,info) @@ -357,8 +350,7 @@ Scope: {\bf local}.\\ \end{description} -\subsubsection*{CNV --- convert internal storage format} -\addcontentsline{toc}{paragraph}{CNV} +\subsubsection{CNV --- convert internal storage format} \begin{verbatim} call desc%cnv(mold) @@ -381,9 +373,8 @@ accelerators. -\subsubsection*{psb\_cd\_get\_large\_threshold --- Get threshold for +\subsubsection{psb\_cd\_get\_large\_threshold --- Get threshold for index mapping switch} -\addcontentsline{toc}{paragraph}{psb\_cd\_get\_large\_threshold} \begin{verbatim} ith = psb_cd_get_large_threshold() @@ -398,9 +389,9 @@ ith = psb_cd_get_large_threshold() -\subsubsection*{psb\_cd\_set\_large\_threshold --- Set threshold for +\subsubsection{psb\_cd\_set\_large\_threshold --- Set threshold for index mapping switch} -\addcontentsline{toc}{paragraph}{psb\_cd\_set\_large\_threshold} +%\addcontentsline{toc}{paragraph}{psb\_cd\_set\_large\_threshold} \begin{verbatim} call psb_cd_set_large_threshold(ith) @@ -422,8 +413,8 @@ initialized. Moreover the threshold must have the same value on all processes. -\subsubsection*{get\_p\_adjcncy --- Get process adjacency list} -\addcontentsline{toc}{paragraph}{get\_p\_adjcncy} +\subsubsection{get\_p\_adjcncy --- Get process adjacency list} +%\addcontentsline{toc}{paragraph}{get\_p\_adjcncy} \begin{verbatim} list = desc%get_p_adjcncy() @@ -438,8 +429,8 @@ list = desc%get_p_adjcncy() \end{description} -\subsubsection*{set\_p\_adjcncy --- Set process adjacency list} -\addcontentsline{toc}{paragraph}{set\_p\_adjcncy} +\subsubsection{set\_p\_adjcncy --- Set process adjacency list} +%\addcontentsline{toc}{paragraph}{set\_p\_adjcncy} \begin{verbatim} call desc%set_p_adjcncy(list) @@ -461,8 +452,8 @@ current process. The availability of this information may speed up the execution of the assembly call \verb|psb_cdasb|. -\subsubsection*{fnd\_owner --- Find the owner process of a set of indices} -\addcontentsline{toc}{paragraph}{fnd\_owner} +\subsubsection{fnd\_owner --- Find the owner process of a set of indices} +%\addcontentsline{toc}{paragraph}{fnd\_owner} \begin{verbatim} call desc%fnd_owner(idx,iprc,info) @@ -591,8 +582,8 @@ variants are obtained by conversion to/from it. \subsubsection{Sparse Matrix Methods} -\subsubsection*{get\_nrows --- Get number of rows in a sparse matrix} -\addcontentsline{toc}{paragraph}{get\_nrows} +\subsubsection{get\_nrows --- Get number of rows in a sparse matrix} +%\addcontentsline{toc}{paragraph}{get\_nrows} \begin{verbatim} nr = a%get_nrows() @@ -614,9 +605,9 @@ Scope: {\bf local}\\ \end{description} -\subsubsection*{get\_ncols --- Get number of columns in a sparse +\subsubsection{get\_ncols --- Get number of columns in a sparse matrix} -\addcontentsline{toc}{paragraph}{get\_ncols} +%\addcontentsline{toc}{paragraph}{get\_ncols} \begin{verbatim} nc = a%get_ncols() @@ -638,9 +629,9 @@ Scope: {\bf local}\\ \end{description} -\subsubsection*{get\_nnzeros --- Get number of nonzero elements +\subsubsection{get\_nnzeros --- Get number of nonzero elements in a sparse matrix} -\addcontentsline{toc}{paragraph}{get\_nnzeros} +%\addcontentsline{toc}{paragraph}{get\_nnzeros} \begin{verbatim} nz = a%get_nnzeros() @@ -668,9 +659,9 @@ Scope: {\bf local}\\ value for the same matrix may be different for different storage choices. \end{enumerate} -\subsubsection*{get\_size --- Get maximum number of nonzero elements +\subsubsection{get\_size --- Get maximum number of nonzero elements in a sparse matrix} -\addcontentsline{toc}{paragraph}{get\_size } +%\addcontentsline{toc}{paragraph}{get\_size } \begin{verbatim} maxnz = a%get_size() @@ -692,9 +683,9 @@ Scope: {\bf local}\\ be stored in sparse matrix \verb|a| using its current memory allocation. \end{description} -\subsubsection*{sizeof --- Get memory occupation in bytes +\subsubsection{sizeof --- Get memory occupation in bytes of a sparse matrix} -\addcontentsline{toc}{paragraph}{sizeof } +%\addcontentsline{toc}{paragraph}{sizeof } \begin{verbatim} memory_size = a%sizeof() @@ -716,8 +707,8 @@ Scope: {\bf local}\\ \end{description} -\subsubsection*{get\_fmt --- Short description of the dynamic type} -\addcontentsline{toc}{paragraph}{get\_fmt } +\subsubsection{get\_fmt --- Short description of the dynamic type} +%\addcontentsline{toc}{paragraph}{get\_fmt } \begin{verbatim} write(*,*) a%get_fmt() @@ -740,8 +731,8 @@ Scope: {\bf local}\\ \verb|CSR| and \verb|CSC|. \end{description} -\subsubsection*{is\_bld, is\_upd, is\_asb --- Status check} -\addcontentsline{toc}{paragraph}{is\_bld, is\_upd, is\_asb } +\subsubsection{is\_bld, is\_upd, is\_asb --- Status check} +%\addcontentsline{toc}{paragraph}{is\_bld, is\_upd, is\_asb } \begin{verbatim} if (a%is_bld()) then @@ -765,9 +756,9 @@ Scope: {\bf local}\\ matrix is in the Build, Update or Assembled state, respectively. \end{description} -\subsubsection*{is\_lower, is\_upper, is\_triangle, is\_unit --- +\subsubsection{is\_lower, is\_upper, is\_triangle, is\_unit --- Format check} -\addcontentsline{toc}{paragraph}{is\_lower, is\_upper, is\_triangle, is\_unit} +%\addcontentsline{toc}{paragraph}{is\_lower, is\_upper, is\_triangle, is\_unit} \begin{verbatim} if (a%is_triangle()) then @@ -795,8 +786,8 @@ Scope: {\bf local}\\ \end{description} -\subsubsection*{cscnv --- Convert to a different storage format} -\addcontentsline{toc}{paragraph}{cscnv} +\subsubsection{cscnv --- Convert to a different storage format} +%\addcontentsline{toc}{paragraph}{cscnv} \begin{verbatim} call a%cscnv(b,info [, type, mold, dupl]) @@ -828,8 +819,8 @@ employed to interface with special devices, such as GPUs and other accelerators. -\subsubsection*{csclip --- Reduce to a submatrix} -\addcontentsline{toc}{paragraph}{csclip} +\subsubsection{csclip --- Reduce to a submatrix} +%\addcontentsline{toc}{paragraph}{csclip} \begin{verbatim} call a%csclip(b,info[,& & imin,imax,jmin,jmax,rscale,cscale]) @@ -856,8 +847,8 @@ A variable of type \verb|psb_Tspmat_type|. \item[info] Return code. \end{description} -\subsubsection*{clean\_zeros --- Eliminate zero coefficients} -\addcontentsline{toc}{paragraph}{clean\_zeros} +\subsubsection{clean\_zeros --- Eliminate zero coefficients} +%\addcontentsline{toc}{paragraph}{clean\_zeros} \begin{verbatim} call a%clean_zeros(info) \end{verbatim} @@ -880,8 +871,8 @@ A variable of type \verb|psb_Tspmat_type|. \item[info] Return code. \end{description} -\subsubsection*{get\_diag --- Get main diagonal} -\addcontentsline{toc}{paragraph}{get\_diag} +\subsubsection{get\_diag --- Get main diagonal} +%\addcontentsline{toc}{paragraph}{get\_diag} \begin{verbatim} call a%get_diag(d,info) \end{verbatim} @@ -902,8 +893,8 @@ A one-dimensional array of the appropriate type. \end{description} -\subsubsection*{clip\_diag --- Cut out main diagonal} -\addcontentsline{toc}{paragraph}{clip\_diag} +\subsubsection{clip\_diag --- Cut out main diagonal} +%\addcontentsline{toc}{paragraph}{clip\_diag} \begin{verbatim} call a%clip_diag(b,info) \end{verbatim} @@ -924,8 +915,8 @@ A variable of type \verb|psb_Tspmat_type|. \end{description} -\subsubsection*{tril --- Return the lower triangle} -\addcontentsline{toc}{paragraph}{tril} +\subsubsection{tril --- Return the lower triangle} +%\addcontentsline{toc}{paragraph}{tril} \begin{verbatim} call a%tril(l,info[,& & diag,imin,imax,jmin,jmax,rscale,cscale,u]) @@ -958,8 +949,8 @@ A variable of type \verb|psb_Tspmat_type|. \item[info] Return code. \end{description} -\subsubsection*{triu --- Return the upper triangle} -\addcontentsline{toc}{paragraph}{triu} +\subsubsection{triu --- Return the upper triangle} +%\addcontentsline{toc}{paragraph}{triu} \begin{verbatim} call a%triu(u,info[,& & diag,imin,imax,jmin,jmax,rscale,cscale,l]) @@ -995,8 +986,8 @@ A variable of type \verb|psb_Tspmat_type|. -\subsubsection*{psb\_set\_mat\_default --- Set default storage format} -\addcontentsline{toc}{paragraph}{psb\_set\_mat\_default} +\subsubsection{psb\_set\_mat\_default --- Set default storage format} +%\addcontentsline{toc}{paragraph}{psb\_set\_mat\_default} \begin{verbatim} @@ -1015,8 +1006,8 @@ Type: required. -\subsubsection*{clone --- Clone current object} -\addcontentsline{toc}{paragraph}{clone} +\subsubsection{clone --- Clone current object} +%\addcontentsline{toc}{paragraph}{clone} \begin{verbatim} call a%clone(b,info) @@ -1112,8 +1103,8 @@ private memory. \end{figure} \subsubsection{Vector Methods} -\subsubsection*{get\_nrows --- Get number of rows in a dense vector} -\addcontentsline{toc}{paragraph}{get\_nrows} +\subsubsection{get\_nrows --- Get number of rows in a dense vector} +%\addcontentsline{toc}{paragraph}{get\_nrows} \begin{verbatim} nr = v%get_nrows() @@ -1135,9 +1126,9 @@ Scope: {\bf local}\\ \end{description} -\subsubsection*{sizeof --- Get memory occupation in bytes +\subsubsection{sizeof --- Get memory occupation in bytes of a dense vector} -\addcontentsline{toc}{paragraph}{sizeof } +%\addcontentsline{toc}{paragraph}{sizeof } \begin{verbatim} memory_size = v%sizeof() @@ -1159,8 +1150,8 @@ Scope: {\bf local}\\ \end{description} -\subsubsection*{set --- Set contents of the vector} -\addcontentsline{toc}{paragraph}{set } +\subsubsection{set --- Set contents of the vector} +%\addcontentsline{toc}{paragraph}{set } \begin{verbatim} call v%set(alpha[,first,last]) @@ -1197,8 +1188,8 @@ constant having the appropriate type and kind. Scope: {\bf local}\\ \end{description} -\subsubsection*{get\_vect --- Get a copy of the vector contents} -\addcontentsline{toc}{paragraph}{get\_vect } +\subsubsection{get\_vect --- Get a copy of the vector contents} +%\addcontentsline{toc}{paragraph}{get\_vect } \begin{verbatim} extv = v%get_vect([n]) @@ -1227,8 +1218,8 @@ Type: {\bf optional}; default: entire vector.\\ array is the same as the internal size of the vector. \end{description} -\subsubsection*{clone --- Clone current object} -\addcontentsline{toc}{paragraph}{clone} +\subsubsection{clone --- Clone current object} +%\addcontentsline{toc}{paragraph}{clone} \begin{verbatim} call x%clone(y,info) \end{verbatim} diff --git a/docs/src/error.tex b/docs/src/error.tex index bbef2da4..f1fbc3c6 100644 --- a/docs/src/error.tex +++ b/docs/src/error.tex @@ -119,9 +119,10 @@ Aborting... \end{figure} -\clearpage\subroutine{psb\_errpush}{Pushes an error code onto the error +\clearpage\subsection{psb\_errpush}{Pushes an error code onto the error stack} + \begin{lstlisting} call psb_errpush(err_c, r_name, i_err, a_err) \end{lstlisting} @@ -149,7 +150,7 @@ Type: {\bf optional}\\ Specified as: a string.\\ \end{description} -\clearpage\subroutine{psb\_error}{Prints the error stack content and aborts +\clearpage\subsection{psb\_error}{Prints the error stack content and aborts execution} \begin{lstlisting} @@ -168,8 +169,9 @@ Specified as: an integer. -\clearpage\subroutine{psb\_set\_errverbosity}{Sets the verbosity of error - messages.} +\clearpage\subsection{psb\_set\_errverbosity}{Sets the verbosity of error + messages} + \begin{lstlisting} call psb_set_errverbosity(v) @@ -185,9 +187,8 @@ Intent: {\bf in}.\\ Specified as: an integer. \end{description} -\clearpage\subroutine{psb\_set\_erraction}{Set the type of action to be - taken upon error condition.} - +\clearpage\subsection{psb\_set\_erraction}{Set the type of action to be + taken upon error condition} \begin{lstlisting} call psb_set_erraction(err_act) @@ -205,27 +206,6 @@ Specified as: an integer. Possible values: \verb|psb_act_ret|, \end{description} - -%% \clearpage\subroutine{psb\_errcomm}{Error communication routine} - -%% \begin{lstlisting} -%% call psb_errcomm(icontxt, err) -%% \end{lstlisting} - -%% \begin{description} -%% \item[\bf On Entry] -%% \item[icontxt] the communication context.\\ -%% Scope: {\bf global} \\ -%% Type: {\bf required}\\ -%% Intent: {\bf in}.\\ -%% Specified as: an integer. -%% \item[err] the error code to be communicated\\ -%% Scope: {\bf global} \\ -%% Type: {\bf required}\\ -%% Intent: {\bf inout}.\\ -%% Specified as: an integer.\\ -%% \end{description} - %%% Local Variables: %%% mode: latex %%% TeX-master: "userguide" diff --git a/docs/src/intro.tex b/docs/src/intro.tex index d0fb9b8c..16cdd969 100644 --- a/docs/src/intro.tex +++ b/docs/src/intro.tex @@ -101,7 +101,7 @@ further details on our communication layer see Sec.~\ref{sec:parenv}. \begin{figure}[h] \begin{center} \ifcase\pdfoutput -\includegraphics[scale=0.65]{figures/psblas.eps} +\includegraphics[scale=0.65]{figures/psblas.png} \or \includegraphics[scale=0.65]{figures/psblas} \fi @@ -218,7 +218,7 @@ local rows) is $|{\cal I}_i| + |{\cal B}_i| +|{\cal H}_i|$. \begin{center} \ifcase\pdfoutput %\rotatebox{-90}{ -\includegraphics[scale=0.65]{figures/points.eps}%} +\includegraphics[scale=0.65]{figures/points.png}%} \or \rotatebox{-90}{\includegraphics[scale=0.65]{figures/points}} \fi diff --git a/docs/src/methods.tex b/docs/src/methods.tex index 6a80f92c..4b2f8b66 100644 --- a/docs/src/methods.tex +++ b/docs/src/methods.tex @@ -11,9 +11,8 @@ the module \verb|psb_krylov_mod|. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_krylov \label{krylov} --- Krylov Methods Driver +\clearpage\subsection{psb\_krylov \label{krylov} --- Krylov Methods Driver Routine} -\addcontentsline{toc}{subsection}{psb\_krylov} This subroutine is a driver that provides a general interface for all the Krylov-Subspace family methods implemented in PSBLAS version 2. diff --git a/docs/src/penv.tex b/docs/src/penv.tex index b3ac90ac..9465c8b3 100644 --- a/docs/src/penv.tex +++ b/docs/src/penv.tex @@ -3,9 +3,8 @@ \section{Parallel environment routines} \label{sec:parenv} -\clearpage\subsection*{psb\_init --- Initializes PSBLAS parallel +\clearpage\subsection{psb\_init --- Initializes PSBLAS parallel environment} -\addcontentsline{toc}{subsection}{psb\_init} \begin{verbatim} call psb_init(icontxt, np, basectxt, ids) @@ -62,9 +61,8 @@ Specified as: an integer variable. \end{enumerate} -\clearpage\subsection*{psb\_info --- Return information about PSBLAS parallel +\clearpage\subsection{psb\_info --- Return information about PSBLAS parallel environment} -\addcontentsline{toc}{subsection}{psb\_info} \begin{verbatim} call psb_info(icontxt, iam, np) @@ -110,9 +108,8 @@ Specified as: an integer variable. \ \end{enumerate} -\clearpage\subsection*{psb\_exit --- Exit from PSBLAS parallel +\clearpage\subsection{psb\_exit --- Exit from PSBLAS parallel environment} -\addcontentsline{toc}{subsection}{psb\_exit} \begin{verbatim} call psb_exit(icontxt) @@ -154,8 +151,7 @@ Specified as: a logical variable, default value: true. \end{enumerate} -\clearpage\subsection*{psb\_get\_mpi\_comm --- Get the MPI communicator} -\addcontentsline{toc}{subsection}{psb\_get\_mpi\_comm} +\clearpage\subsection{psb\_get\_mpi\_comm --- Get the MPI communicator} \begin{verbatim} icomm = psb_get_mpi_comm(icontxt) @@ -185,8 +181,7 @@ Intent: {\bf out}.\\ The subroutine version \verb|psb_get_mpicomm| is still available but is deprecated. -\clearpage\subsection*{psb\_get\_mpi\_rank --- Get the MPI rank} -\addcontentsline{toc}{subsection}{psb\_get\_mpi\_rank} +\clearpage\subsection{psb\_get\_mpi\_rank --- Get the MPI rank} \begin{verbatim} rank = psb_get_mpi_rank(icontxt, id) @@ -223,8 +218,7 @@ deprecated. -\clearpage\subsection*{psb\_wtime --- Wall clock timing} -\addcontentsline{toc}{subsection}{psb\_wtime} +\clearpage\subsection{psb\_wtime --- Wall clock timing} \begin{verbatim} time = psb_wtime() @@ -240,9 +234,8 @@ Returned as: a \verb|real(psb_dpk_)| variable. \end{description} -\clearpage\subsection*{psb\_barrier --- Sinchronization point parallel +\clearpage\subsection{psb\_barrier --- Sinchronization point parallel environment} -\addcontentsline{toc}{subsection}{psb\_barrier} \begin{verbatim} call psb_barrier(icontxt) @@ -262,8 +255,7 @@ Specified as: an integer variable. \end{description} -\clearpage\subsection*{psb\_abort --- Abort a computation} -\addcontentsline{toc}{subsection}{psb\_abort} +\clearpage\subsection{psb\_abort --- Abort a computation} \begin{verbatim} call psb_abort(icontxt) @@ -285,8 +277,7 @@ Specified as: an integer variable. -\clearpage\subsection*{psb\_bcast --- Broadcast data} -\addcontentsline{toc}{subsection}{psb\_bcast} +\clearpage\subsection{psb\_bcast --- Broadcast data} \begin{verbatim} call psb_bcast(icontxt, dat, root) @@ -331,8 +322,7 @@ Type, kind, rank and size must agree on all processes. \end{description} -\clearpage\subsection*{psb\_sum --- Global sum} -\addcontentsline{toc}{subsection}{psb\_sum} +\clearpage\subsection{psb\_sum --- Global sum} \begin{verbatim} call psb_sum(icontxt, dat, root) @@ -386,8 +376,7 @@ Type, kind, rank and size must agree on all processes. -\clearpage\subsection*{psb\_max --- Global maximum} -\addcontentsline{toc}{subsection}{psb\_max} +\clearpage\subsection{psb\_max --- Global maximum} \begin{verbatim} call psb_max(icontxt, dat, root) @@ -440,8 +429,7 @@ Type, kind, rank and size must agree on all processes. \item The \verb|dat| argument may also be a long integer scalar. \end{enumerate} -\clearpage\subsection*{psb\_min --- Global minimum} -\addcontentsline{toc}{subsection}{psb\_min} +\clearpage\subsection{psb\_min --- Global minimum} \begin{verbatim} call psb_min(icontxt, dat, root) @@ -494,8 +482,7 @@ Type, kind, rank and size must agree on all processes. \item The \verb|dat| argument may also be a long integer scalar. \end{enumerate} -\clearpage\subsection*{psb\_amx --- Global maximum absolute value} -\addcontentsline{toc}{subsection}{psb\_amx} +\clearpage\subsection{psb\_amx --- Global maximum absolute value} \begin{verbatim} call psb_amx(icontxt, dat, root) @@ -548,8 +535,7 @@ Type, kind, rank and size must agree on all processes. \item The \verb|dat| argument may also be a long integer scalar. \end{enumerate} -\clearpage\subsection*{psb\_amn --- Global minimum absolute value} -\addcontentsline{toc}{subsection}{psb\_amn} +\clearpage\subsection{psb\_amn --- Global minimum absolute value} \begin{verbatim} call psb_amn(icontxt, dat, root) @@ -602,8 +588,7 @@ Type, kind, rank and size must agree on all processes. \item The \verb|dat| argument may also be a long integer scalar. \end{enumerate} -\clearpage\subsection*{psb\_nrm2 --- Global 2-norm reduction} -\addcontentsline{toc}{subsection}{psb\_nrm2} +\clearpage\subsection{psb\_nrm2 --- Global 2-norm reduction} \begin{verbatim} call psb_nrm2(icontxt, dat, root) @@ -663,8 +648,7 @@ Kind, rank and size must agree on all processes. -\clearpage\subsection*{psb\_snd --- Send data} -\addcontentsline{toc}{subsection}{psb\_snd} +\clearpage\subsection{psb\_snd --- Send data} \begin{verbatim} call psb_snd(icontxt, dat, dst, m) @@ -715,8 +699,7 @@ same value on sending and receiving processes. \end{enumerate} -\clearpage\subsection*{psb\_rcv --- Receive data} -\addcontentsline{toc}{subsection}{psb\_rcv} +\clearpage\subsection{psb\_rcv --- Receive data} \begin{verbatim} call psb_rcv(icontxt, dat, src, m) diff --git a/docs/src/precs.tex b/docs/src/precs.tex index 6c58bbc0..b976b7ad 100644 --- a/docs/src/precs.tex +++ b/docs/src/precs.tex @@ -23,9 +23,7 @@ backward compatibility %% package, which will characterize release 2.1 of our library. - -\clearpage\subsection*{init --- Initialize a preconditioner} -\addcontentsline{toc}{subsection}{prec\%init} +\clearpage\subsection{init --- Initialize a preconditioner} \begin{verbatim} call prec%init(icontxt,ptype, info) @@ -86,8 +84,7 @@ $ptype$ string as follows\footnote{The string is case-insensitive}: \end{description} -\clearpage\subsection*{build --- Builds a preconditioner} -\addcontentsline{toc}{subsection}{prec\%build} +\clearpage\subsection{build --- Builds a preconditioner} \begin{verbatim} call prec%build(a, desc_a, info[,amold,vmold,imold]) @@ -152,9 +149,8 @@ accelerators. -\clearpage\subsection*{apply --- Preconditioner application +\clearpage\subsection{apply --- Preconditioner application routine} -\addcontentsline{toc}{subsection}{prec\%apply} \begin{verbatim} call prec%apply(x,y,desc_a,info,trans,work) @@ -207,9 +203,8 @@ An integer value; 0 means no error has been detected. -\clearpage\subsection*{descr --- Prints a description of current +\clearpage\subsection{descr --- Prints a description of current preconditioner} -\addcontentsline{toc}{subsection}{prec\%descr} \begin{verbatim} call prec%descr() @@ -240,9 +235,8 @@ all processes will print. Default: 0. -\clearpage\subsection*{clone --- clone current +\clearpage\subsection{clone --- clone current preconditioner} -\addcontentsline{toc}{subsection}{clone} \begin{verbatim} call prec%clone(precout,info) \end{verbatim} @@ -264,8 +258,7 @@ Scope: {\bf local}.\\ \end{description} -\clearpage\subsection*{free --- Free a preconditioner} -\addcontentsline{toc}{subsection}{prec\%free} +\clearpage\subsection{free --- Free a preconditioner} \begin{verbatim} call prec%free(info) diff --git a/docs/src/psbrout.tex b/docs/src/psbrout.tex index d8288093..fbe0d3da 100644 --- a/docs/src/psbrout.tex +++ b/docs/src/psbrout.tex @@ -5,8 +5,7 @@ % DENSE MATRIX SUM % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_geaxpby --- General Dense Matrix Sum} -\addcontentsline{toc}{subsection}{psb\_geaxpby} +\clearpage\subsection{psb\_geaxpby --- General Dense Matrix Sum} This subroutine is an interface to the computational kernel for dense matrix sum: @@ -111,8 +110,7 @@ An integer value; 0 means no error has been detected. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_gedot --- Dot Product} -\addcontentsline{toc}{subsection}{psb\_gedot} +\clearpage\subsection{psb\_gedot --- Dot Product} This function computes dot product between two vectors $x$ and $y$.\\ @@ -229,8 +227,7 @@ An integer value; 0 means no error has been detected. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_gedots --- Generalized Dot Product} -\addcontentsline{toc}{subsection}{psb\_gedots} +\clearpage\subsection{psb\_gedots --- Generalized Dot Product} This subroutine computes a series of dot products among the columns of two dense matrices $x$ and $y$: @@ -303,8 +300,7 @@ An integer value; 0 means no error has been detected. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_normi --- Infinity-Norm of Vector} -\addcontentsline{toc}{subsection}{psb\_normi} +\clearpage\subsection{psb\_normi --- Infinity-Norm of Vector} This function computes the infinity-norm of a vector $x$.\\ @@ -407,8 +403,7 @@ An integer value; 0 means no error has been detected. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_geamaxs --- Generalized Infinity Norm} -\addcontentsline{toc}{subsection}{psb\_geamaxs} +\clearpage\subsection{psb\_geamaxs --- Generalized Infinity Norm} This subroutine computes a series of infinity norms on the columns of a dense matrix $x$: @@ -469,8 +464,7 @@ An integer value; 0 means no error has been detected. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_norm1 --- 1-Norm of Vector} -\addcontentsline{toc}{subsection}{psb\_norm1} +\clearpage\subsection{psb\_norm1 --- 1-Norm of Vector} This function computes the 1-norm of a vector $x$.\\ If $x$ is a real vector @@ -557,8 +551,7 @@ An integer value; 0 means no error has been detected. \end{enumerate} -\clearpage\subsection*{psb\_geasums --- Generalized 1-Norm of Vector} -\addcontentsline{toc}{subsection}{psb\_geasums} +\clearpage\subsection{psb\_geasums --- Generalized 1-Norm of Vector} This subroutine computes a series of 1-norms on the columns of a dense matrix $x$: @@ -631,8 +624,7 @@ An integer value; 0 means no error has been detected. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_norm2 --- 2-Norm of Vector} -\addcontentsline{toc}{subsection}{psb\_norm2} +\clearpage\subsection{psb\_norm2 --- 2-Norm of Vector} This function computes the 2-norm of a vector $x$.\\ If $x$ is a real vector @@ -730,8 +722,7 @@ An integer value; 0 means no error has been detected. -\clearpage\subsection*{psb\_genrm2s --- Generalized 2-Norm of Vector} -\addcontentsline{toc}{subsection}{psb\_genrm2s} +\clearpage\subsection{psb\_genrm2s --- Generalized 2-Norm of Vector} This subroutine computes a series of 2-norms on the columns of a dense matrix $x$: @@ -798,8 +789,7 @@ An integer value; 0 means no error has been detected. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_norm1 --- 1-Norm of Sparse Matrix} -\addcontentsline{toc}{subsection}{psb\_norm1} +\clearpage\subsection{psb\_norm1 --- 1-Norm of Sparse Matrix} This function computes the 1-norm of a matrix $A$:\\ @@ -863,8 +853,7 @@ An integer value; 0 means no error has been detected. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_normi --- Infinity Norm of Sparse Matrix} -\addcontentsline{toc}{subsection}{psb\_normi} +\clearpage\subsection{psb\_normi --- Infinity Norm of Sparse Matrix} This function computes the infinity-norm of a matrix $A$:\\ @@ -928,9 +917,8 @@ An integer value; 0 means no error has been detected. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_spmm --- Sparse Matrix by Dense Matrix +\clearpage\subsection{psb\_spmm --- Sparse Matrix by Dense Matrix Product} -\addcontentsline{toc}{subsection}{psb\_spmm} This subroutine computes the Sparse Matrix by Dense Matrix Product: @@ -1081,8 +1069,7 @@ An integer value; 0 means no error has been detected. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\clearpage\subsection*{psb\_spsm --- Triangular System Solve} -\addcontentsline{toc}{subsection}{psb\_spsm} +\clearpage\subsection{psb\_spsm --- Triangular System Solve} This subroutine computes the Triangular System Solve: @@ -1244,8 +1231,216 @@ Intent: {\bf out}.\\ An integer value; 0 means no error has been detected. \end{description} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% VECTOR VECTOR OPERATIONS +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +\clearpage\subsection{psb\_gemlt --- Entrywise Product} + +This function computes the entrywise product between two vectors $x$ and +$y$ +\[dot \leftarrow x(i) y(i).\] + +\begin{verbatim} +psb_gemlt(x, y, desc_a, info) +\end{verbatim} +%% \syntax*{psb\_gedot}{x, y, desc\_a, info, jx, jy} +\begin{table}[h] + \begin{center} + \begin{tabular}{ll} + \hline + $dot$, $x$, $y$ & {\bf Function}\\ + \hline + Short Precision Real & psb\_gemlt \\ + Long Precision Real & psb\_gemlt \\ + Short Precision Complex & psb\_gemlt \\ + Long Precision Complex & psb\_gemlt \\ + \hline + \end{tabular} + \end{center} + \caption{Data types\label{tab:f90mlt}} +\end{table} + +\begin{description} + \item[Type:] Synchronous. + \item[\bf On Entry] + \item[x] the local portion of global dense vector + $x$.\\ + %% This function computes the location of the first element of + %% local subarray used, based on $jx$ and the field $matrix\_data$ of $desc\_a$ . \\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf in}.\\ + Specified as: an object of type \vdata\ + containing numbers of type specified in + Table~\ref{tab:f90dot}. + \item[y] the local portion of global dense vector + $y$. \\ + %% This function computes the location of the first element of + %% local subarray used, based on $iy, jy$ and the field $matrix\_data$ of $desc\_a$ . \\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf in}.\\ + Specified as: an object of type \vdata\ + containing numbers of type specified in + Table~\ref{tab:f90dot}. + \item[desc\_a] contains data structures for communications.\\ + Scope: {\bf local} \\ + Type: {\bf required}\\ + Intent: {\bf in}.\\ + Specified as: an object of type \descdata. + \item[\bf On Return] + \item[y] the local portion of result submatrix $y$.\\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf inout}.\\ + Specified as: an object of type \vdata\ containing numbers of the type + indicated in Table~\ref{tab:f90mlt}. + \item[info] Error code.\\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf out}.\\ + An integer value; 0 means no error has been detected. +\end{description} + +\clearpage\subsection{psb\_gediv --- Entrywise Division} + +This function computes the entrywise division between two vectors $x$ and +$y$ +\[/ \leftarrow x(i)/y(i).\] +\begin{verbatim} +psb_gediv(x, y, desc_a, info, [flag) +\end{verbatim} +%% \syntax*{psb\_gedot}{x, y, desc\_a, info, jx, jy} +\begin{table}[h] + \begin{center} + \begin{tabular}{ll} + \hline + $/$, $x$, $y$ & {\bf Function}\\ + \hline + Short Precision Real & psb\_gediv \\ + Long Precision Real & psb\_gediv \\ + Short Precision Complex & psb\_gediv \\ + Long Precision Complex & psb\_gediv \\ + \hline + \end{tabular} + \end{center} + \caption{Data types\label{tab:f90div}} +\end{table} + +\begin{description} + \item[Type:] Synchronous. + \item[\bf On Entry] + \item[x] the local portion of global dense vector + $x$.\\ + %% This function computes the location of the first element of + %% local subarray used, based on $jx$ and the field $matrix\_data$ of $desc\_a$ . \\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf in}.\\ + Specified as: an object of type \vdata\ + containing numbers of type specified in + Table~\ref{tab:f90dot}. + \item[y] the local portion of global dense vector + $y$. \\ + %% This function computes the location of the first element of + %% local subarray used, based on $iy, jy$ and the field $matrix\_data$ of $desc\_a$ . \\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf in}.\\ + Specified as: an object of type \vdata\ + containing numbers of type specified in + Table~\ref{tab:f90dot}. + \item[desc\_a] contains data structures for communications.\\ + Scope: {\bf local} \\ + Type: {\bf required}\\ + Intent: {\bf in}.\\ + Specified as: an object of type \descdata. + \item[flag] check if any of the $y(i) = 0$, and in case returns error halting the computation.\\ + Scope: {\bf local} \\ + Type: {\bf optional} + Intent: {\bf in}.\\ + Specified as: the logical value \verb|flag=.true.| + \item[\bf On Return] + \item[x] the local portion of result submatrix $x$.\\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf inout}.\\ + Specified as: an object of type \vdata\ containing numbers of the type + indicated in Table~\ref{tab:f90mlt}. + \item[info] Error code.\\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf out}.\\ + An integer value; 0 means no error has been detected. +\end{description} + +\clearpage\subsection{psb\_geinv --- Entrywise Inversion} +This function computes the entrywise inverse of a vector $x$ and puts it into +$y$ +\[/ \leftarrow 1/x(i).\] + +\begin{verbatim} +psb_geinv(x, y, desc_a, info, [flag) +\end{verbatim} +%% \syntax*{psb\_gedot}{x, y, desc\_a, info, jx, jy} +\begin{table}[h] + \begin{center} + \begin{tabular}{ll} + \hline + $/$, $x$, $y$ & {\bf Function}\\ + \hline + Short Precision Real & psb\_geinv \\ + Long Precision Real & psb\_geinv \\ + Short Precision Complex & psb\_geinv \\ + Long Precision Complex & psb\_geinv \\ + \hline + \end{tabular} + \end{center} + \caption{Data types\label{tab:f90inv}} +\end{table} + +\begin{description} + \item[Type:] Synchronous. + \item[\bf On Entry] + \item[x] the local portion of global dense vector + $x$.\\ + %% This function computes the location of the first element of + %% local subarray used, based on $jx$ and the field $matrix\_data$ of $desc\_a$ . \\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf in}.\\ + Specified as: an object of type \vdata\ + containing numbers of type specified in + Table~\ref{tab:f90dot}. + \item[desc\_a] contains data structures for communications.\\ + Scope: {\bf local} \\ + Type: {\bf required}\\ + Intent: {\bf in}.\\ + Specified as: an object of type \descdata. + \item[flag] check if any of the $x(i) = 0$, and in case returns error halting the computation.\\ + Scope: {\bf local} \\ + Type: {\bf optional} + Intent: {\bf in}.\\ + Specified as: the logical value \verb|flag=.true.| + \item[\bf On Return] + \item[y] the local portion of result submatrix $x$.\\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf out}.\\ + Specified as: an object of type \vdata\ containing numbers of the type + indicated in Table~\ref{tab:f90inv}. + \item[info] Error code.\\ + Scope: {\bf local} \\ + Type: {\bf required} \\ + Intent: {\bf out}.\\ + An integer value; 0 means no error has been detected. +\end{description} %%% Local Variables: %%% mode: latex diff --git a/docs/src/toolsrout.tex b/docs/src/toolsrout.tex index ee490eec..95639b84 100644 --- a/docs/src/toolsrout.tex +++ b/docs/src/toolsrout.tex @@ -5,8 +5,7 @@ % %% psb_cdall %% % -\subsection*{psb\_cdall --- Allocates a communication descriptor} -\addcontentsline{toc}{subsection}{psb\_cdall} +\subsection{psb\_cdall --- Allocates a communication descriptor} \begin{verbatim} call psb_cdall(icontxt, desc_a, info,mg=mg,parts=parts) @@ -196,9 +195,8 @@ An integer value; 0 means no error has been detected. % %% psb_cdins %% % -\clearpage\subsection*{psb\_cdins --- Communication descriptor insert +\clearpage\subsection{psb\_cdins --- Communication descriptor insert routine} -\addcontentsline{toc}{subsection}{psb\_cdins} \begin{verbatim} call psb_cdins(nz, ia, ja, desc_a, info [,ila,jla]) @@ -292,9 +290,8 @@ nor the end vertex belong to the current process. % %% psb_cdasb %% % -\clearpage\subsection*{psb\_cdasb --- Communication descriptor assembly +\clearpage\subsection{psb\_cdasb --- Communication descriptor assembly routine} -\addcontentsline{toc}{subsection}{psb\_cdasb} \begin{verbatim} call psb_cdasb(desc_a, info [, mold]) @@ -347,8 +344,7 @@ speed up the subsequent call to \verb|psb_cdasb|. % %% psb_cdcpy %% % -\clearpage\subsection*{psb\_cdcpy --- Copies a communication descriptor} -\addcontentsline{toc}{subsection}{psb\_cdcpy} +\clearpage\subsection{psb\_cdcpy --- Copies a communication descriptor} \begin{verbatim} call psb_cdcpy(desc_in, desc_out, info) @@ -383,8 +379,7 @@ An integer value; 0 means no error has been detected. % %% psb_cdfree %% % -\clearpage\subsection*{psb\_cdfree --- Frees a communication descriptor} -\addcontentsline{toc}{subsection}{psb\_cdfree} +\clearpage\subsection{psb\_cdfree --- Frees a communication descriptor} \begin{verbatim} call psb_cdfree(desc_a, info) @@ -414,9 +409,8 @@ An integer value; 0 means no error has been detected. % %% psb_cdcpy %% % -\clearpage\subsection*{psb\_cdbldext --- Build an extended communication +\clearpage\subsection{psb\_cdbldext --- Build an extended communication descriptor} -\addcontentsline{toc}{subsection}{psb\_cdbldext} \begin{verbatim} call psb_cdbldext(a,desc_a,nl,desc_out, info, extype) @@ -484,9 +478,9 @@ An integer value; 0 means no error has been detected. %% % %% %% psb_cdren %% %% % -%% \subsection*{psb\_cdren --- Applies a renumeration to a +%% \subsection{psb\_cdren --- Applies a renumeration to a %% communication descriptor} -%% \addcontentsline{toc}{subsection}{psb\_cdren} +%%% \addcontentsline{toc}{subsection}{psb\_cdren} %% \syntax{call psb\_cdren}{trans, iperm, desc\_a, info} @@ -521,8 +515,7 @@ An integer value; 0 means no error has been detected. % %% psb_descprt %% % -%% \subsection*{psb\_cdprt --- Prints a descriptor} -%%\addcontentsline{toc}{subsection}{psb\_cdprt} +%% \subsection{psb\_cdprt --- Prints a descriptor} %% \syntax{call psb\_cdprt}{iout, desc\_a, glob, short} @@ -551,8 +544,7 @@ An integer value; 0 means no error has been detected. % %% psb_spalloc %% % -\clearpage\subsection*{psb\_spall --- Allocates a sparse matrix} -\addcontentsline{toc}{subsection}{psb\_spall} +\clearpage\subsection{psb\_spall --- Allocates a sparse matrix} \begin{verbatim} call psb_spall(a, desc_a, info, nnz) @@ -603,9 +595,8 @@ An integer value; 0 means no error has been detected. % %% psb_spins %% % -\clearpage\subsection*{psb\_spins --- Insert a set of coefficients into a sparse +\clearpage\subsection{psb\_spins --- Insert a set of coefficients into a sparse matrix} -\addcontentsline{toc}{subsection}{psb\_spins} \begin{verbatim} call psb_spins(nz, ia, ja, val, a, desc_a, info [,local]) @@ -730,8 +721,7 @@ An integer value; 0 means no error has been detected. % %% psb_spasb %% % -\clearpage\subsection*{psb\_spasb --- Sparse matrix assembly routine} -\addcontentsline{toc}{subsection}{psb\_spasb} +\clearpage\subsection{psb\_spasb --- Sparse matrix assembly routine} \begin{verbatim} call psb_spasb(a, desc_a, info, afmt, upd, dupl, mold) @@ -805,9 +795,8 @@ An integer value; 0 means no error has been detected. %% % %% %% psb_spcnv %% %% % -%% \subsection*{psb\_spcnv --- Converts a sparse matrix storage +%% \subsection{psb\_spcnv --- Converts a sparse matrix storage %% format} -%%\addcontentsline{toc}{subsection}{psb\_spcnv} %% \syntax{call psb\_spcnv}{a, b, desc\_a, info} @@ -840,8 +829,7 @@ An integer value; 0 means no error has been detected. % %% psb_spfree %% % -\clearpage\subsection*{psb\_spfree --- Frees a sparse matrix} -\addcontentsline{toc}{subsection}{psb\_spfree} +\clearpage\subsection{psb\_spfree --- Frees a sparse matrix} \begin{verbatim} call psb_spfree(a, desc_a, info) @@ -877,9 +865,8 @@ An integer value; 0 means no error has been detected. % %% psb_sprn %% % -\clearpage\subsection*{psb\_sprn --- Reinit sparse matrix structure for psblas +\clearpage\subsection{psb\_sprn --- Reinit sparse matrix structure for psblas routines.} -\addcontentsline{toc}{subsection}{psb\_sprn} \begin{verbatim} call psb_sprn(a, decsc_a, info, clear) @@ -921,8 +908,7 @@ An integer value; 0 means no error has been detected. % %% psb_spupdate %% % -%% \subsection*{psb\_spupdate --- Updates a sparse matrix.} -%%\addcontentsline{toc}{subsection}{psb\_spupdate} +%% \subsection{psb\_spupdate --- Updates a sparse matrix.} %% \syntax{call psb\_spupdate}{a, ia, ja, blck, desc\_a, info, ix, jx, updflag} @@ -936,9 +922,8 @@ An integer value; 0 means no error has been detected. %% % %% %% psb_csrp %% %% % -%% \subsection*{psb\_csrp --- Applies a right permutation to a sparse +%% \subsection{psb\_csrp --- Applies a right permutation to a sparse %% matrix} -%%\addcontentsline{toc}{subsection}{psb\_csrp} %% \syntax{call psb\_csrp}{trans, iperm, a, info} @@ -968,8 +953,8 @@ An integer value; 0 means no error has been detected. % %% psb_alloc %% % -\clearpage\subsection*{psb\_geall --- Allocates a dense matrix} -\addcontentsline{toc}{subsection}{psb\_geall} +\clearpage\subsection{psb\_geall --- Allocates a dense matrix} +%\addcontentsline{toc}{subsection}{psb\_geall} \begin{verbatim} call psb_geall(x, desc_a, info, n, lb) @@ -1016,8 +1001,8 @@ An integer value; 0 means no error has been detected. % %% psb_ins %% % -\clearpage\subsection*{psb\_geins --- Dense matrix insertion routine} -\addcontentsline{toc}{subsection}{psb\_geins} +\clearpage\subsection{psb\_geins --- Dense matrix insertion routine} +%\addcontentsline{toc}{subsection}{psb\_geins} \begin{verbatim} call psb_geins(m, irw, val, x, desc_a, info [,dupl,local]) @@ -1089,8 +1074,8 @@ An integer value; 0 means no error has been detected. % %% psb_asb %% % -\clearpage\subsection*{psb\_geasb --- Assembly a dense matrix} -\addcontentsline{toc}{subsection}{psb\_geasb} +\clearpage\subsection{psb\_geasb --- Assembly a dense matrix} +%\addcontentsline{toc}{subsection}{psb\_geasb} \begin{verbatim} call psb_geasb(x, desc_a, info, mold) @@ -1129,8 +1114,8 @@ An integer value; 0 means no error has been detected. % %% psb_free %% % -\clearpage\subsection*{psb\_gefree --- Frees a dense matrix} -\addcontentsline{toc}{subsection}{psb\_gefree} +\clearpage\subsection{psb\_gefree --- Frees a dense matrix} +%\addcontentsline{toc}{subsection}{psb\_gefree} \begin{verbatim} call psb_gefree(x, desc_a, info) @@ -1167,9 +1152,9 @@ An integer value; 0 means no error has been detected. % %% psb_gelp %% % -\clearpage\subsection*{psb\_gelp --- Applies a left permutation to a dense +\clearpage\subsection{psb\_gelp --- Applies a left permutation to a dense matrix} -\addcontentsline{toc}{subsection}{psb\_gelp} +%\addcontentsline{toc}{subsection}{psb\_gelp} \begin{verbatim} call psb_gelp(trans, iperm, x, info) @@ -1208,9 +1193,9 @@ An integer value; 0 means no error has been detected. % %% psb_glob_to_loc %% % -\clearpage\subsection*{psb\_glob\_to\_loc --- Global to local indices +\clearpage\subsection{psb\_glob\_to\_loc --- Global to local indices convertion} -\addcontentsline{toc}{subsection}{psb\_glob\_to\_loc} +%\addcontentsline{toc}{subsection}{psb\_glob\_to\_loc} \begin{verbatim} call psb_glob_to_loc(x, y, desc_a, info, iact,owned) @@ -1276,9 +1261,9 @@ An integer value; 0 means no error has been detected. \end{enumerate} -\clearpage\subsection*{psb\_loc\_to\_glob --- Local to global indices +\clearpage\subsection{psb\_loc\_to\_glob --- Local to global indices conversion} -\addcontentsline{toc}{subsection}{psb\_loc\_to\_glob} +%\addcontentsline{toc}{subsection}{psb\_loc\_to\_glob} \begin{verbatim} call psb_loc_to_glob(x, y, desc_a, info, iact) @@ -1333,8 +1318,8 @@ An integer value; 0 means no error has been detected. % %% psb_loc_to_glob %% % -\clearpage\subsection*{psb\_is\_owned --- } -\addcontentsline{toc}{subsection}{psb\_is\_owned } +\clearpage\subsection{psb\_is\_owned --- } +%\addcontentsline{toc}{subsection}{psb\_is\_owned } \begin{verbatim} call psb_is_owned(x, desc_a) @@ -1373,8 +1358,8 @@ Intent: {\bf out}.\\ \end{enumerate} -\clearpage\subsection*{psb\_owned\_index --- } -\addcontentsline{toc}{subsection}{psb\_owned\_index } +\clearpage\subsection{psb\_owned\_index --- } +%\addcontentsline{toc}{subsection}{psb\_owned\_index } \begin{verbatim} call psb_owned_index(y, x, desc_a, info) @@ -1425,8 +1410,8 @@ An integer value; 0 means no error has been detected. \end{enumerate} -\clearpage\subsection*{psb\_is\_local --- } -\addcontentsline{toc}{subsection}{psb\_is\_local } +\clearpage\subsection{psb\_is\_local --- } +%\addcontentsline{toc}{subsection}{psb\_is\_local } \begin{verbatim} call psb_is_local(x, desc_a) @@ -1464,8 +1449,8 @@ Intent: {\bf out}.\\ indices \end{enumerate} -\clearpage\subsection*{psb\_local\_index --- } -\addcontentsline{toc}{subsection}{psb\_local\_index } +\clearpage\subsection{psb\_local\_index --- } +%\addcontentsline{toc}{subsection}{psb\_local\_index } \begin{verbatim} call psb_local_index(y, x, desc_a, info) @@ -1520,9 +1505,9 @@ An integer value; 0 means no error has been detected. % %% psb_ins %% % -\clearpage\subsection*{psb\_get\_boundary --- Extract list of boundary +\clearpage\subsection{psb\_get\_boundary --- Extract list of boundary elements} -\addcontentsline{toc}{subsection}{psb\_get\_boundary} +%\addcontentsline{toc}{subsection}{psb\_get\_boundary} \begin{verbatim} call psb_get_boundary(bndel, desc, info) @@ -1563,9 +1548,9 @@ An integer value; 0 means no error has been detected. number of boundary elements. \end{enumerate} -\clearpage\subsection*{psb\_get\_overlap --- Extract list of overlap +\clearpage\subsection{psb\_get\_overlap --- Extract list of overlap elements} -\addcontentsline{toc}{subsection}{psb\_get\_overlap} +%\addcontentsline{toc}{subsection}{psb\_get\_overlap} \begin{verbatim} call psb_get_overlap(ovrel, desc, info) @@ -1607,9 +1592,9 @@ An integer value; 0 means no error has been detected. -\clearpage\subsection*{psb\_sp\_getrow --- Extract row(s) from a sparse +\clearpage\subsection{psb\_sp\_getrow --- Extract row(s) from a sparse matrix} -\addcontentsline{toc}{subsection}{psb\_sp\_getrow} +%\addcontentsline{toc}{subsection}{psb\_sp\_getrow} \begin{verbatim} call psb_sp_getrow(row, a, nz, ia, ja, val, info, & @@ -1701,8 +1686,8 @@ An integer value; 0 means no error has been detected. -\clearpage\subsection*{psb\_sizeof --- Memory occupation} -\addcontentsline{toc}{subsection}{psb\_sizeof} +\clearpage\subsection{psb\_sizeof --- Memory occupation} +%\addcontentsline{toc}{subsection}{psb\_sizeof} This function computes the memory occupation of a PSBLAS object. @@ -1740,8 +1725,8 @@ Returned as: an \verb|integer(psb_long_int_k_)| number. \end{description} -\clearpage\subsection*{Sorting utilities --- } -\addcontentsline{toc}{subsection}{Sorting utilities} +\clearpage\subsection{Sorting utilities --- } +%\addcontentsline{toc}{subsection}{Sorting utilities} {\par\noindent\large\bfseries psb\_msort --- Sorting by the Merge-sort algorithm} diff --git a/docs/src/userhtml.tex b/docs/src/userhtml.tex index d9d554dd..77f52d6f 100644 --- a/docs/src/userhtml.tex +++ b/docs/src/userhtml.tex @@ -8,7 +8,6 @@ bookmarksnumbered=true, bookmarksopen=false, plainpages=false, - pdfpagelabels, colorlinks, linkcolor=blue]{hyperref} \usepackage{ifthen} @@ -21,18 +20,6 @@ %\setboolean{mtc}{true} \pdfoutput=0 -% \relax -% \pdfcompresslevel=0 %-- 0 = none, 9 = best -% \pdfinfo{ %-- Info dictionary of PDF output /Author (Alfredo Buttari) -% /Title (Parallel Sparse BLAS V. 3.7.0) -% /Subject (Parallel Sparse Basic Linear Algebra Subroutines) -% /Keywords (Computer Science Linear Algebra Fluid Dynamics Parallel Linux MPI PSBLAS Iterative Solvers Preconditioners) -% /Creator (pdfLaTeX) -% /Producer ($Id: userguide.tex 1978 2007-10-19 14:51:12Z sfilippo $) -% } -% \pdfcatalog{ %-- Catalog dictionary of PDF output. -% /URI (http://ce.uniroma2.it/psblas) -% } \newcounter{subroutine}[subsection] \newcounter{example}[subroutine] diff --git a/docs/src/util.tex b/docs/src/util.tex index 4d1ba295..fdd7d01d 100644 --- a/docs/src/util.tex +++ b/docs/src/util.tex @@ -9,9 +9,8 @@ module \verb|psb_util_mod|. %\subroutine{PSB\_HBIO\_MOD}{Input/Output in Harwell-Boeing format} -\clearpage\subsection*{ hb\_read --- Read a sparse matrix from a file in the +\clearpage\subsection{ hb\_read --- Read a sparse matrix from a file in the Harwell--Boeing format} -\addcontentsline{toc}{subsection}{hb\_read} \begin{lstlisting} @@ -53,9 +52,8 @@ An integer value; 0 means no error has been detected. -\clearpage\subsection*{hb\_write --- Write a sparse matrix to a file +\clearpage\subsection{hb\_write --- Write a sparse matrix to a file in the Harwell--Boeing format} -\addcontentsline{toc}{subsection}{hb\_write} \begin{lstlisting} @@ -107,9 +105,8 @@ An integer value; 0 means no error has been detected. %\subroutine{PSB\_MMIO\_MOD}{Input/Output in MatrixMarket format} -\clearpage\subsection*{mm\_mat\_read --- Read a sparse matrix from a +\clearpage\subsection{mm\_mat\_read --- Read a sparse matrix from a file in the MatrixMarket format} -\addcontentsline{toc}{subsection}{mm\_mat\_read} \begin{lstlisting} call mm_mat_read(a, iret, iunit, filename) @@ -139,9 +136,8 @@ An integer value; 0 means no error has been detected. \end{description} -\clearpage\subsection*{mm\_array\_read --- Read a dense array from a +\clearpage\subsection{mm\_array\_read --- Read a dense array from a file in the MatrixMarket format} -\addcontentsline{toc}{subsection}{mm\_array\_read} \begin{lstlisting} call mm_array_read(b, iret, iunit, filename) @@ -174,9 +170,8 @@ An integer value; 0 means no error has been detected. -\clearpage\subsection*{mm\_mat\_write --- Write a sparse matrix to a +\clearpage\subsection{mm\_mat\_write --- Write a sparse matrix to a file in the MatrixMarket format} -\addcontentsline{toc}{subsection}{mm\_mat\_write} \begin{lstlisting} @@ -210,9 +205,8 @@ An integer value; 0 means no error has been detected. \end{description} -\clearpage\subsection*{mm\_array\_write --- Write a dense array from a +\clearpage\subsection{mm\_array\_write --- Write a dense array from a file in the MatrixMarket format} -\addcontentsline{toc}{subsection}{mm\_array\_write} \begin{lstlisting} call mm_array_write(b, iret, iunit, filename)