Doc fixes

documentation
Salvatore Filippone 4 years ago
parent 859714ca70
commit 718b574519

Binary file not shown.

@ -63,113 +63,117 @@ class="cmr-12">Code Distribution</span></a></span>
class="cmr-12">&#x00A0;</span><span class="likesubsectionToc" ><a
href="userhtmlli3.html#x6-50002" id="QQ2-6-5"><span
class="cmr-12">Contributors</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="likesubsectionToc" ><a
href="userhtmlli4.html#x7-60002" id="QQ2-7-6"><span
class="cmr-12">Citing AMG4PSBLAS</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">3 </span><a
href="userhtmlse3.html#x7-60003" id="QQ2-7-6"><span
href="userhtmlse3.html#x8-70003" id="QQ2-8-7"><span
class="cmr-12">Configuring and Building AMG4PSBLAS</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.1 </span><a
href="userhtmlsu1.html#x8-70003.1" id="QQ2-8-7"><span
href="userhtmlsu1.html#x9-80003.1" id="QQ2-9-8"><span
class="cmr-12">Prerequisites</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.2 </span><a
href="userhtmlsu2.html#x9-80003.2" id="QQ2-9-8"><span
href="userhtmlsu2.html#x10-90003.2" id="QQ2-10-9"><span
class="cmr-12">Optional third party libraries</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.3 </span><a
href="userhtmlsu3.html#x10-90003.3" id="QQ2-10-9"><span
href="userhtmlsu3.html#x11-100003.3" id="QQ2-11-10"><span
class="cmr-12">Configuration options</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.4 </span><a
href="userhtmlsu4.html#x11-100003.4" id="QQ2-11-11"><span
href="userhtmlsu4.html#x12-110003.4" id="QQ2-12-12"><span
class="cmr-12">Bug reporting</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.5 </span><a
href="userhtmlsu5.html#x12-110003.5" id="QQ2-12-12"><span
href="userhtmlsu5.html#x13-120003.5" id="QQ2-13-13"><span
class="cmr-12">Example and test programs</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">4 </span><a
href="userhtmlse4.html#x13-120004" id="QQ2-13-13"><span
href="userhtmlse4.html#x14-130004" id="QQ2-14-14"><span
class="cmr-12">Getting Started</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">4.1 </span><a
href="userhtmlsu6.html#x14-130004.1" id="QQ2-14-15"><span
href="userhtmlsu6.html#x15-140004.1" id="QQ2-15-16"><span
class="cmr-12">Examples</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">5 </span><a
href="userhtmlse5.html#x15-140005" id="QQ2-15-20"><span
href="userhtmlse5.html#x16-150005" id="QQ2-16-21"><span
class="cmr-12">User Interface</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.1 </span><a
href="userhtmlsu7.html#x16-150005.1" id="QQ2-16-21"><span
href="userhtmlsu7.html#x17-160005.1" id="QQ2-17-22"><span
class="cmr-12">Method init</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.2 </span><a
href="userhtmlsu8.html#x17-160005.2" id="QQ2-17-22"><span
href="userhtmlsu8.html#x18-170005.2" id="QQ2-18-23"><span
class="cmr-12">Method set</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.3 </span><a
href="userhtmlsu9.html#x18-170005.3" id="QQ2-18-29"><span
href="userhtmlsu9.html#x19-180005.3" id="QQ2-19-30"><span
class="cmr-12">Method hierarchy</span><span
class="cmr-12">_build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.4 </span><a
href="userhtmlsu10.html#x19-180005.4" id="QQ2-19-30"><span
href="userhtmlsu10.html#x20-190005.4" id="QQ2-20-31"><span
class="cmr-12">Method smoothers</span><span
class="cmr-12">_build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.5 </span><a
href="userhtmlsu11.html#x20-190005.5" id="QQ2-20-31"><span
href="userhtmlsu11.html#x21-200005.5" id="QQ2-21-32"><span
class="cmr-12">Method build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.6 </span><a
href="userhtmlsu12.html#x21-200005.6" id="QQ2-21-32"><span
href="userhtmlsu12.html#x22-210005.6" id="QQ2-22-33"><span
class="cmr-12">Method apply</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.7 </span><a
href="userhtmlsu13.html#x22-210005.7" id="QQ2-22-33"><span
href="userhtmlsu13.html#x23-220005.7" id="QQ2-23-34"><span
class="cmr-12">Method free</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.8 </span><a
href="userhtmlsu14.html#x23-220005.8" id="QQ2-23-34"><span
href="userhtmlsu14.html#x24-230005.8" id="QQ2-24-35"><span
class="cmr-12">Method descr</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.9 </span><a
href="userhtmlsu15.html#x24-230005.9" id="QQ2-24-35"><span
href="userhtmlsu15.html#x25-240005.9" id="QQ2-25-36"><span
class="cmr-12">Auxiliary Methods</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">6 </span><a
href="userhtmlse6.html#x25-290006" id="QQ2-25-41"><span
href="userhtmlse6.html#x26-300006" id="QQ2-26-42"><span
class="cmr-12">Adding new smoother and solver objects to AMG4PSBLAS</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">7 </span><a
href="userhtmlse7.html#x26-300007" id="QQ2-26-42"><span
href="userhtmlse7.html#x27-310007" id="QQ2-27-43"><span
class="cmr-12">Error Handling</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">A </span><a
href="userhtmlse8.html#x27-31000A" id="QQ2-27-43"><span
href="userhtmlse8.html#x28-32000A" id="QQ2-28-44"><span
class="cmr-12">License</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">B </span><a
href="userhtmlse9.html#x28-32000B" id="QQ2-28-44"><span
href="userhtmlse9.html#x29-33000B" id="QQ2-29-45"><span
class="cmr-12">Contributor Covenant Code of Conduct</span></a></span>
<br /> <span class="likesectionToc" ><a
href="userhtmlli4.html#x29-37000B" id="QQ2-29-49"><span
href="userhtmlli5.html#x30-38000B" id="QQ2-30-50"><span
class="cmr-12">References</span></a></span>
</div>

@ -63,113 +63,117 @@ class="cmr-12">Code Distribution</span></a></span>
class="cmr-12">&#x00A0;</span><span class="likesubsectionToc" ><a
href="userhtmlli3.html#x6-50002" id="QQ2-6-5"><span
class="cmr-12">Contributors</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="likesubsectionToc" ><a
href="userhtmlli4.html#x7-60002" id="QQ2-7-6"><span
class="cmr-12">Citing AMG4PSBLAS</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">3 </span><a
href="userhtmlse3.html#x7-60003" id="QQ2-7-6"><span
href="userhtmlse3.html#x8-70003" id="QQ2-8-7"><span
class="cmr-12">Configuring and Building AMG4PSBLAS</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.1 </span><a
href="userhtmlsu1.html#x8-70003.1" id="QQ2-8-7"><span
href="userhtmlsu1.html#x9-80003.1" id="QQ2-9-8"><span
class="cmr-12">Prerequisites</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.2 </span><a
href="userhtmlsu2.html#x9-80003.2" id="QQ2-9-8"><span
href="userhtmlsu2.html#x10-90003.2" id="QQ2-10-9"><span
class="cmr-12">Optional third party libraries</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.3 </span><a
href="userhtmlsu3.html#x10-90003.3" id="QQ2-10-9"><span
href="userhtmlsu3.html#x11-100003.3" id="QQ2-11-10"><span
class="cmr-12">Configuration options</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.4 </span><a
href="userhtmlsu4.html#x11-100003.4" id="QQ2-11-11"><span
href="userhtmlsu4.html#x12-110003.4" id="QQ2-12-12"><span
class="cmr-12">Bug reporting</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.5 </span><a
href="userhtmlsu5.html#x12-110003.5" id="QQ2-12-12"><span
href="userhtmlsu5.html#x13-120003.5" id="QQ2-13-13"><span
class="cmr-12">Example and test programs</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">4 </span><a
href="userhtmlse4.html#x13-120004" id="QQ2-13-13"><span
href="userhtmlse4.html#x14-130004" id="QQ2-14-14"><span
class="cmr-12">Getting Started</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">4.1 </span><a
href="userhtmlsu6.html#x14-130004.1" id="QQ2-14-15"><span
href="userhtmlsu6.html#x15-140004.1" id="QQ2-15-16"><span
class="cmr-12">Examples</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">5 </span><a
href="userhtmlse5.html#x15-140005" id="QQ2-15-20"><span
href="userhtmlse5.html#x16-150005" id="QQ2-16-21"><span
class="cmr-12">User Interface</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.1 </span><a
href="userhtmlsu7.html#x16-150005.1" id="QQ2-16-21"><span
href="userhtmlsu7.html#x17-160005.1" id="QQ2-17-22"><span
class="cmr-12">Method init</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.2 </span><a
href="userhtmlsu8.html#x17-160005.2" id="QQ2-17-22"><span
href="userhtmlsu8.html#x18-170005.2" id="QQ2-18-23"><span
class="cmr-12">Method set</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.3 </span><a
href="userhtmlsu9.html#x18-170005.3" id="QQ2-18-29"><span
href="userhtmlsu9.html#x19-180005.3" id="QQ2-19-30"><span
class="cmr-12">Method hierarchy</span><span
class="cmr-12">_build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.4 </span><a
href="userhtmlsu10.html#x19-180005.4" id="QQ2-19-30"><span
href="userhtmlsu10.html#x20-190005.4" id="QQ2-20-31"><span
class="cmr-12">Method smoothers</span><span
class="cmr-12">_build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.5 </span><a
href="userhtmlsu11.html#x20-190005.5" id="QQ2-20-31"><span
href="userhtmlsu11.html#x21-200005.5" id="QQ2-21-32"><span
class="cmr-12">Method build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.6 </span><a
href="userhtmlsu12.html#x21-200005.6" id="QQ2-21-32"><span
href="userhtmlsu12.html#x22-210005.6" id="QQ2-22-33"><span
class="cmr-12">Method apply</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.7 </span><a
href="userhtmlsu13.html#x22-210005.7" id="QQ2-22-33"><span
href="userhtmlsu13.html#x23-220005.7" id="QQ2-23-34"><span
class="cmr-12">Method free</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.8 </span><a
href="userhtmlsu14.html#x23-220005.8" id="QQ2-23-34"><span
href="userhtmlsu14.html#x24-230005.8" id="QQ2-24-35"><span
class="cmr-12">Method descr</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.9 </span><a
href="userhtmlsu15.html#x24-230005.9" id="QQ2-24-35"><span
href="userhtmlsu15.html#x25-240005.9" id="QQ2-25-36"><span
class="cmr-12">Auxiliary Methods</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">6 </span><a
href="userhtmlse6.html#x25-290006" id="QQ2-25-41"><span
href="userhtmlse6.html#x26-300006" id="QQ2-26-42"><span
class="cmr-12">Adding new smoother and solver objects to AMG4PSBLAS</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">7 </span><a
href="userhtmlse7.html#x26-300007" id="QQ2-26-42"><span
href="userhtmlse7.html#x27-310007" id="QQ2-27-43"><span
class="cmr-12">Error Handling</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">A </span><a
href="userhtmlse8.html#x27-31000A" id="QQ2-27-43"><span
href="userhtmlse8.html#x28-32000A" id="QQ2-28-44"><span
class="cmr-12">License</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">B </span><a
href="userhtmlse9.html#x28-32000B" id="QQ2-28-44"><span
href="userhtmlse9.html#x29-33000B" id="QQ2-29-45"><span
class="cmr-12">Contributor Covenant Code of Conduct</span></a></span>
<br /> <span class="likesectionToc" ><a
href="userhtmlli4.html#x29-37000B" id="QQ2-29-49"><span
href="userhtmlli5.html#x30-38000B" id="QQ2-30-50"><span
class="cmr-12">References</span></a></span>
</div>

@ -79,17 +79,17 @@ class="cmr-12">of a software development project started in 2007, named MLD2P4,
class="cmr-12">implemented a multilevel version of some domain decomposition preconditioners of</span>
<span
class="cmr-12">additive-Schwarz type and was based on a parallel decoupled version of the well known</span>
<span
class="cmr-12">smoothed aggregation method to generate the multilevel hierarchy of coarser</span>
<span
class="cmr-12">smoothed aggregation method to generate the multilevel hierarchy of coarser</span>
<span
class="cmr-12">matrices. In the last years, within the context of the EU-H2020 EoCoE project</span>
<span
class="cmr-12">(Energy Oriented Center of Excellence), the package is being extended for</span>
class="cmr-12">(Energy Oriented Center of Excellence), the package was extended for including</span>
<span
class="cmr-12">including new algorithms and functionalities to setup and apply new AMG</span>
class="cmr-12">new algorithms and functionalities for the setup and application new AMG</span>
<span
class="cmr-12">preconditioners with the final aims of improving efficiency and scalability when tens of</span>
<span
@ -101,23 +101,23 @@ class="cmr-12">of changes and the increase in scope, we decided to rename the pa
<span
class="cmr-12">AMG4PSBLAS.</span>
<!--l. 16--><p class="indent" > <span
class="cmr-12">AMG4PSBLAS is designed to provide scalable and easy-to-use preconditioners in</span>
class="cmr-12">AMG4PSBLAS has been designed to provide scalable and easy-to-use</span>
<span
class="cmr-12">the context of the PSBLAS (Parallel Sparse Basic Linear Algebra Subprograms)</span>
class="cmr-12">preconditioners in the context of the PSBLAS (Parallel Sparse Basic Linear Algebra</span>
<span
class="cmr-12">computational framework and can be used in conjuction with the Krylov solvers</span>
class="cmr-12">Subprograms) computational framework and can be used in conjuction with the Krylov</span>
<span
class="cmr-12">available in this framework. Our package is based on a completely algebraic approach</span>
class="cmr-12">solvers available in this framework. Our package is based on a completely</span>
<span
class="cmr-12">and users level interfaces assume that the system matrix and preconditioners are</span>
class="cmr-12">algebraic approach; therefore users level interfaces assume that the system matrix</span>
<span
class="cmr-12">represented as PSBLAS distributed sparse matrices. AMG4PSBLAS enables the user</span>
class="cmr-12">and preconditioners are represented as PSBLAS distributed sparse matrices.</span>
<span
class="cmr-12">to easily specify different features of an algebraic multilevel preconditioner, thus</span>
class="cmr-12">AMG4PSBLAS enables the user to easily specify different features of an algebraic</span>
<span
class="cmr-12">allowing to experiment with different preconditioners for the problem and parallel</span>
class="cmr-12">multilevel preconditioner, thus allowing to experiment with different preconditioners for</span>
<span
class="cmr-12">computers at hand.</span>
class="cmr-12">the problem and parallel computers at hand.</span>
<!--l. 27--><p class="indent" > <span
class="cmr-12">The package employs object-oriented design techniques in Fortran</span><span
class="cmr-12">&#x00A0;2003, with</span>

@ -41,140 +41,140 @@ href="userhtmlse2.html#x5-40002"><span
class="cmr-12">Code Distribution</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">3 </span><a
href="userhtmlse3.html#x7-60003"><span
href="userhtmlse3.html#x8-70003"><span
class="cmr-12">Configuring and Building AMG4PSBLAS</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.1 </span><a
href="userhtmlsu1.html#x8-70003.1"><span
href="userhtmlsu1.html#x9-80003.1"><span
class="cmr-12">Prerequisites</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.2 </span><a
href="userhtmlsu2.html#x9-80003.2"><span
href="userhtmlsu2.html#x10-90003.2"><span
class="cmr-12">Optional third party libraries</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.3 </span><a
href="userhtmlsu3.html#x10-90003.3"><span
href="userhtmlsu3.html#x11-100003.3"><span
class="cmr-12">Configuration options</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.4 </span><a
href="userhtmlsu4.html#x11-100003.4"><span
href="userhtmlsu4.html#x12-110003.4"><span
class="cmr-12">Bug reporting</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.5 </span><a
href="userhtmlsu5.html#x12-110003.5"><span
href="userhtmlsu5.html#x13-120003.5"><span
class="cmr-12">Example and test programs</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">4 </span><a
href="userhtmlse4.html#x13-120004"><span
href="userhtmlse4.html#x14-130004"><span
class="cmr-12">Getting Started</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">4.1 </span><a
href="userhtmlsu6.html#x14-130004.1"><span
href="userhtmlsu6.html#x15-140004.1"><span
class="cmr-12">Examples</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">5 </span><a
href="userhtmlse5.html#x15-140005"><span
href="userhtmlse5.html#x16-150005"><span
class="cmr-12">User Interface</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.1 </span><a
href="userhtmlsu7.html#x16-150005.1"><span
href="userhtmlsu7.html#x17-160005.1"><span
class="cmr-12">Method init</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.2 </span><a
href="userhtmlsu8.html#x17-160005.2"><span
href="userhtmlsu8.html#x18-170005.2"><span
class="cmr-12">Method set</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.3 </span><a
href="userhtmlsu9.html#x18-170005.3"><span
href="userhtmlsu9.html#x19-180005.3"><span
class="cmr-12">Method hierarchy</span><span
class="cmr-12">_build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.4 </span><a
href="userhtmlsu10.html#x19-180005.4"><span
href="userhtmlsu10.html#x20-190005.4"><span
class="cmr-12">Method smoothers</span><span
class="cmr-12">_build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.5 </span><a
href="userhtmlsu11.html#x20-190005.5"><span
href="userhtmlsu11.html#x21-200005.5"><span
class="cmr-12">Method build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.6 </span><a
href="userhtmlsu12.html#x21-200005.6"><span
href="userhtmlsu12.html#x22-210005.6"><span
class="cmr-12">Method apply</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.7 </span><a
href="userhtmlsu13.html#x22-210005.7"><span
href="userhtmlsu13.html#x23-220005.7"><span
class="cmr-12">Method free</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.8 </span><a
href="userhtmlsu14.html#x23-220005.8"><span
href="userhtmlsu14.html#x24-230005.8"><span
class="cmr-12">Method descr</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.9 </span><a
href="userhtmlsu15.html#x24-230005.9"><span
href="userhtmlsu15.html#x25-240005.9"><span
class="cmr-12">Auxiliary Methods</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span class="subsubsectionToc" ><span
class="cmr-12">5.9.1 </span><a
href="userhtmlsu15.html#x24-240005.9.1" id="QQ2-24-36"><span
href="userhtmlsu15.html#x25-250005.9.1" id="QQ2-25-37"><span
class="cmr-12">Method: dump</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span class="subsubsectionToc" ><span
class="cmr-12">5.9.2 </span><a
href="userhtmlsu15.html#x24-250005.9.2" id="QQ2-24-37"><span
href="userhtmlsu15.html#x25-260005.9.2" id="QQ2-25-38"><span
class="cmr-12">Method: clone</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span class="subsubsectionToc" ><span
class="cmr-12">5.9.3 </span><a
href="userhtmlsu15.html#x24-260005.9.3" id="QQ2-24-38"><span
href="userhtmlsu15.html#x25-270005.9.3" id="QQ2-25-39"><span
class="cmr-12">Method: sizeof</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span class="subsubsectionToc" ><span
class="cmr-12">5.9.4 </span><a
href="userhtmlsu15.html#x24-270005.9.4" id="QQ2-24-39"><span
href="userhtmlsu15.html#x25-280005.9.4" id="QQ2-25-40"><span
class="cmr-12">Method: allocate</span><span
class="cmr-12">_wrk</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span class="subsubsectionToc" ><span
class="cmr-12">5.9.5 </span><a
href="userhtmlsu15.html#x24-280005.9.5" id="QQ2-24-40"><span
href="userhtmlsu15.html#x25-290005.9.5" id="QQ2-25-41"><span
class="cmr-12">Method: free</span><span
class="cmr-12">_wrk</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">6 </span><a
href="userhtmlse6.html#x25-290006"><span
href="userhtmlse6.html#x26-300006"><span
class="cmr-12">Adding new smoother and solver objects to AMG4PSBLAS</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">7 </span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">Error Handling</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">A </span><a
href="userhtmlse8.html#x27-31000A"><span
href="userhtmlse8.html#x28-32000A"><span
class="cmr-12">License</span></a></span>
<br /> <span class="sectionToc" ><span
class="cmr-12">B </span><a
href="userhtmlse9.html#x28-32000B"><span
href="userhtmlse9.html#x29-33000B"><span
class="cmr-12">Contributor Covenant Code of Conduct</span></a></span>
</div>

@ -12,6 +12,9 @@
>
<!--l. 23--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlli4.html" ><span
class="cmr-12">next</span></a><span
class="cmr-12">] [</span><a
href="#tailuserhtmlli3.html"><span
class="cmr-12">tail</span></a><span
class="cmr-12">] [</span><a
@ -27,20 +30,26 @@ class="cmr-12">Pasqua D&#8217;Ambra, IAC-CNR, IT;</span>
</li>
<li class="itemize"><span
class="cmr-12">Fabio Durastante, University of Pisa and IAC-CNR, IT;</span>
</li>
<li class="itemize"><span
class="cmr-12">Salvatore Filippone, University of Rome Tor-Vergata and IAC-CNR, IT;</span></li></ul>
<!--l. 1--><div class="crosslinks"><p class="noindent"><span
<!--l. 30--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlli4.html" ><span
class="cmr-12">next</span></a><span
class="cmr-12">] [</span><a
href="userhtmlli3.html" ><span
class="cmr-12">front</span></a><span
class="cmr-12">] [</span><a
href="userhtmlse2.html#userhtmlli3.html" ><span
class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<!--l. 1--><p class="indent" > <a
<!--l. 30--><p class="indent" > <a
id="tailuserhtmlli3.html"></a>
</body></html>

@ -1,7 +1,7 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html >
<head><title>References</title>
<head><title>Citing AMG4PSBLAS</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="generator" content="TeX4ht (https://tug.org/tex4ht/)">
<meta name="originator" content="TeX4ht (https://tug.org/tex4ht/)">
@ -10,686 +10,66 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 2--><div class="crosslinks"><p class="noindent"><span
<!--l. 30--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlse9.html" ><span
href="userhtmlli3.html" ><span
class="cmr-12">prev</span></a><span
class="cmr-12">] [</span><a
href="userhtmlse9.html#tailuserhtmlse9.html" ><span
href="userhtmlli3.html#tailuserhtmlli3.html" ><span
class="cmr-12">prev-tail</span></a><span
class="cmr-12">] [</span><a
href="#tailuserhtmlli4.html"><span
class="cmr-12">tail</span></a><span
class="cmr-12">] [</span><a
href="userhtml.html#userhtmlli4.html" ><span
href="userhtmlse2.html#userhtmlli4.html" ><span
class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h3 class="likesectionHead"><a
id="x29-37000B"></a><span
class="cmr-12">References</span></h3>
<!--l. 2--><p class="noindent" >
<div class="thebibliography">
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[1]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XMUMPS"></a><span
class="cmr-12">P.</span><span
class="cmr-12">&#x00A0;R.</span><span
class="cmr-12">&#x00A0;Amestoy, C.</span><span
class="cmr-12">&#x00A0;Ashcraft, O.</span><span
class="cmr-12">&#x00A0;Boiteau, A.</span><span
class="cmr-12">&#x00A0;Buttari, J.</span><span
class="cmr-12">&#x00A0;L&#8217;Excellent,</span>
<span
class="cmr-12">C.</span><span
class="cmr-12">&#x00A0;Weisbecker, </span><span
class="cmti-12">Improving multifrontal methods by means of block low-rank</span>
<span
class="cmti-12">representations</span><span
class="cmr-12">, SIAM Journal on Scientific Computing, volume 37 (3), 2015,</span>
<span
class="cmr-12">A1452&#8211;A1474. See also </span><span
class="cmtt-12">http://mumps.enseeiht.fr</span><span
class="cmr-12">.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[2]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XBERTACCINIFILIPPONE"></a><span
class="cmr-12">D. Bertaccini</span><span
class="cmr-12">&#x00A0;and</span><span
class="cmr-12">&#x00A0;S. Filippone, </span><span
class="cmti-12">Sparse approximate inverse</span>
<span
class="cmti-12">preconditioners on high performance GPU platforms</span><span
class="cmr-12">, Comput. Math. Appl.</span>
<span
class="cmbx-12">71 </span><span
class="cmr-12">(2016), no.</span><span
class="cmr-12">&#x00A0;3, 693&#8211;711.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[3]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XBREZINA_VANEK"></a><span
class="cmr-12">M.</span><span
class="cmr-12">&#x00A0;Brezina, P.</span><span
class="cmr-12">&#x00A0;Van</span><span
class="cmr-12">&#x011B;k, </span><span
class="cmti-12">A Black-Box Iterative Solver Based on a</span>
<span
class="cmti-12">Two-Level Schwarz Method</span><span
class="cmr-12">, Computing, 63, 1999, 233&#8211;263.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[4]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XBriggs2000"></a><span
class="cmr-12">W.</span><span
class="cmr-12">&#x00A0;L.</span><span
class="cmr-12">&#x00A0;Briggs, V.</span><span
class="cmr-12">&#x00A0;E.</span><span
class="cmr-12">&#x00A0;Henson, S.</span><span
class="cmr-12">&#x00A0;F.</span><span
class="cmr-12">&#x00A0;McCormick, </span><span
class="cmti-12">A Multigrid Tutorial,</span>
<span
class="cmti-12">Second Edition</span><span
class="cmr-12">, SIAM, 2000.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[5]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="Xpara_04"></a><span
class="cmr-12">A.</span><span
class="cmr-12">&#x00A0;Buttari, P.</span><span
class="cmr-12">&#x00A0;D&#8217;Ambra, D.</span><span
class="cmr-12">&#x00A0;di Serafino, S.</span><span
class="cmr-12">&#x00A0;Filippone, </span><span
class="cmti-12">Extending</span>
<span
class="cmti-12">PSBLAS to Build Parallel Schwarz Preconditioners</span><span
class="cmr-12">, in J.</span><span
class="cmr-12">&#x00A0;Dongarra,</span>
<span
class="cmr-12">K.</span><span
class="cmr-12">&#x00A0;Madsen, J.</span><span
class="cmr-12">&#x00A0;Wasniewski, editors, Proceedings of PARA</span><span
class="cmr-12">&#x00A0;04 Workshop on</span>
<span
class="cmr-12">State of the Art in Scientific Computing, Lecture Notes in Computer Science,</span>
<span
class="cmr-12">Springer, 2005, 593&#8211;602.</span>
</p>
<h4 class="likesubsectionHead"><a
id="x7-60002"></a><span
class="cmr-12">Citing AMG4PSBLAS</span></h4>
<!--l. 31--><p class="noindent" ><span
class="cmr-12">When use the library, please cite the following:</span>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[6]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="Xaaecc_07"></a><span
class="cmr-12">A.</span><span
class="cmr-12">&#x00A0;Buttari, P.</span><span
class="cmr-12">&#x00A0;D&#8217;Ambra, D.</span><span
class="cmr-12">&#x00A0;di</span><span
class="cmr-12">&#x00A0;Serafino, S.</span><span
class="cmr-12">&#x00A0;Filippone, </span><span
class="cmti-12">2LEV-D2P4: a</span>
<span
class="cmti-12">package of high-performance preconditioners for scientific and engineering</span>
<span
class="cmti-12">applications</span><span
class="cmr-12">, Applicable Algebra in Engineering, Communications and</span>
<span
class="cmr-12">Computing, 18 (3) 2007, 223&#8211;239.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[7]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XCAI_SARKIS"></a><span
class="cmr-12">X.</span><span
class="cmr-12">&#x00A0;C.</span><span
class="cmr-12">&#x00A0;Cai, M.</span><span
class="cmr-12">&#x00A0;Sarkis, </span><span
class="cmti-12">A Restricted Additive Schwarz Preconditioner for</span>
<span
class="cmti-12">General Sparse Linear Systems</span><span
class="cmr-12">, SIAM Journal on Scientific Computing, 21</span>
<span
class="cmr-12">(2), 1999, 792&#8211;797.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[8]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XMatchBoxP"></a><span
class="cmr-12">U..</span><span
class="cmr-12">&#x00A0;V.</span><span
class="cmr-12">&#x00A0;Catalyurek, F.</span><span
class="cmr-12">&#x00A0;Dobrian, A.</span><span
class="cmr-12">&#x00A0;Gebremedhin, M.</span><span
class="cmr-12">&#x00A0;Halappanavar,</span>
<span
class="cmr-12">and A.</span><span
class="cmr-12">&#x00A0;Pothen, </span><span
class="cmti-12">Distributed-memory parallel algorithms for matching and</span>
<span
class="cmti-12">coloring</span><span
class="cmr-12">, in PCO&#8217;11 New Trends in Parallel Computing and Optimization,</span>
<span
class="cmr-12">IEEE International Symposium on Parallel and Distributed Processing</span>
<span
class="cmr-12">Workshops, IEEE CS, 2011.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[9]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="Xapnum_07"></a><span
class="cmr-12">P.</span><span
class="cmr-12">&#x00A0;D&#8217;Ambra, S.</span><span
class="cmr-12">&#x00A0;Filippone,</span>
<span
class="cmr-12">D.</span><span
class="cmr-12">&#x00A0;di</span><span
class="cmr-12">&#x00A0;Serafino, </span><span
class="cmti-12">On the Development of PSBLAS-based Parallel Two-level</span>
<span
class="cmti-12">Schwarz Preconditioners</span><span
class="cmr-12">, Applied Numerical Mathematics, Elsevier Science,</span>
<span
class="cmr-12">57 (11-12), 2007, 1181-1196.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[10]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XMLD2P4_TOMS"></a><span
class="cmr-12">P.</span><span
class="cmr-12">&#x00A0;D&#8217;Ambra, D.</span><span
class="cmr-12">&#x00A0;di</span><span
class="cmr-12">&#x00A0;Serafino, S.</span><span
class="cmr-12">&#x00A0;Filippone, </span><span
class="cmti-12">MLD2P4: a Package of</span>
<span
class="cmti-12">Parallel Multilevel Algebraic Domain Decomposition Preconditioners in</span>
<span
class="cmti-12">Fortran 95</span><span
class="cmr-12">, ACM Trans. Math. Softw., 37(3), 2010, art. 30.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[11]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XBDDF2007"></a><span
class="cmr-12">A.</span><span
class="cmr-12">&#x00A0;Buttari, P.</span><span
class="cmr-12">&#x00A0;D&#8217;Ambra, D.</span><span
class="cmr-12">&#x00A0;di Serafino, S.</span><span
class="cmr-12">&#x00A0;Filippone, </span><span
class="cmti-12">2LEV-D2P4: a</span>
<span
class="cmti-12">Package of High-Performance Preconditioners for Scientific and Engineering</span>
<span
class="cmti-12">Applications</span><span
class="cmr-12">, Appl. Algebra Engrg. Comm. Comput., 18(3), 2007, 223&#8211;239.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[12]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XDDF2020"></a><span
class="cmr-12">P.</span><span
class="cmr-12">&#x00A0;D&#8217;Ambra, F</span><span
class="cmr-12">&#x00A0;Durastante, S.</span><span
class="cmr-12">&#x00A0;Filippone, </span><span
class="cmti-12">AMG preconditioners for</span>
<span
class="cmti-12">Linear Solvers towards Extreme Scale</span><span
class="cmr-12">, 2020, </span><a
href="https://arxiv.org/abs/2006.16147v3arXiv:2006.16147v2" ><span
class="cmr-12">arXiv:2006.16147v3</span></a><span
class="cmr-12">.</span>
<pre class="verbatim" id="verbatim-1">
@article{DDF2021,
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;author&#x00A0;=&#x00A0;{D&#8217;Ambra,&#x00A0;Pasqua&#x00A0;and&#x00A0;Durastante,&#x00A0;Fabio&#x00A0;and&#x00A0;Filippone,&#x00A0;Salvatore},
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;title&#x00A0;=&#x00A0;{{{AMG&#x00A0;Preconditioners&#x00A0;for&#x00A0;Linear&#x00A0;Solvers&#x00A0;towards&#x00A0;Extreme&#x00A0;Scale}},
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;journal&#x00A0;=&#x00A0;{arXiv&#x00A0;e-preprints},
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;eprint&#x00A0;=&#x00A0;{2006.16147v3},
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;archivePrefix&#x00A0;=&#x00A0;{arXiv},
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;year={2021}
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;}
@Misc{psctoolkit-web-page,
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;author&#x00A0;=&#x00A0;{D&#8217;Ambra,&#x00A0;Pasqua&#x00A0;and&#x00A0;Durastante,&#x00A0;Fabio&#x00A0;and&#x00A0;Filippone,&#x00A0;Salvatore},
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;title&#x00A0;=&#x00A0;&#x00A0;{{PSCToolkit}&#x00A0;{W}eb&#x00A0;page},
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;url&#x00A0;=&#x00A0;&#x00A0;&#x00A0;&#x00A0;{https://psctoolkit.github.io/},
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;howpublished&#x00A0;=&#x00A0;{\url{https://psctoolkit.github.io/}},
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;year&#x00A0;=&#x00A0;{2021}
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;}
</pre>
<!--l. 50--><p class="nopar" >
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[13]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XUMFPACK"></a><span
class="cmr-12">T.</span><span
class="cmr-12">&#x00A0;A.</span><span
class="cmr-12">&#x00A0;Davis, </span><span
class="cmti-12">Algorithm 832: UMFPACK</span>
<span
class="cmti-12">- an Unsymmetric-pattern Multifrontal Method with a Column Pre-ordering</span>
<span
class="cmti-12">Strategy</span><span
class="cmr-12">, ACM Transactions on Mathematical Software, 30, 2004, 196&#8211;199.</span>
<span
class="cmr-12">(See also </span><span
class="cmtt-12">http://www.cise.ufl.edu/~davis/</span><span
class="cmr-12">)</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[14]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XSUPERLU"></a><span
class="cmr-12">J.</span><span
class="cmr-12">&#x00A0;W.</span><span
class="cmr-12">&#x00A0;Demmel, S.</span><span
class="cmr-12">&#x00A0;C.</span><span
class="cmr-12">&#x00A0;Eisenstat, J.</span><span
class="cmr-12">&#x00A0;R.</span><span
class="cmr-12">&#x00A0;Gilbert,</span>
<span
class="cmr-12">X.</span><span
class="cmr-12">&#x00A0;S.</span><span
class="cmr-12">&#x00A0;Li, J.</span><span
class="cmr-12">&#x00A0;W.</span><span
class="cmr-12">&#x00A0;H.</span><span
class="cmr-12">&#x00A0;Liu, </span><span
class="cmti-12">A supernodal approach to sparse partial pivoting</span><span
class="cmr-12">,</span>
<span
class="cmr-12">SIAM Journal on Matrix Analysis and Applications, 20 (3), 1999, 720&#8211;755.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[15]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="Xblas3"></a><span
class="cmr-12">J.</span><span
class="cmr-12">&#x00A0;J.</span><span
class="cmr-12">&#x00A0;Dongarra, J.</span><span
class="cmr-12">&#x00A0;Du Croz, I.</span><span
class="cmr-12">&#x00A0;S.</span><span
class="cmr-12">&#x00A0;Duff, S.</span><span
class="cmr-12">&#x00A0;Hammarling, </span><span
class="cmti-12">A set of Level</span>
<span
class="cmti-12">3 Basic Linear Algebra Subprograms</span><span
class="cmr-12">, ACM Transactions on Mathematical</span>
<span
class="cmr-12">Software, 16 (1) 1990, 1&#8211;17.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[16]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="Xblas2"></a><span
class="cmr-12">J.</span><span
class="cmr-12">&#x00A0;J.</span><span
class="cmr-12">&#x00A0;Dongarra, J.</span><span
class="cmr-12">&#x00A0;Du Croz, S.</span><span
class="cmr-12">&#x00A0;Hammarling, R.</span><span
class="cmr-12">&#x00A0;J.</span><span
class="cmr-12">&#x00A0;Hanson, </span><span
class="cmti-12">An</span>
<span
class="cmti-12">extended set of FORTRAN Basic Linear Algebra Subprograms</span><span
class="cmr-12">, ACM</span>
<span
class="cmr-12">Transactions on Mathematical Software, 14 (1) 1988, 1&#8211;17.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[17]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XPSBLASGUIDE"></a><span
class="cmr-12">S.</span><span
class="cmr-12">&#x00A0;Filippone, A.</span><span
class="cmr-12">&#x00A0;Buttari, </span><span
class="cmti-12">PSBLAS 3.5.0 User&#8217;s Guide. A Reference</span>
<span
class="cmti-12">Guide for the Parallel Sparse BLAS Library</span><span
class="cmr-12">, 2012, available from</span>
<span
class="cmtt-12">https://github.com/sfilippone/psblas3/tree/master/docs</span><span
class="cmr-12">.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[18]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XPSBLAS3"></a><span
class="cmr-12">S.</span><span
class="cmr-12">&#x00A0;Filippone, A.</span><span
class="cmr-12">&#x00A0;Buttari, </span><span
class="cmti-12">Object-Oriented Techniques for Sparse Matrix</span>
<span
class="cmti-12">Computations in Fortran 2003</span><span
class="cmr-12">. ACM Transactions on on Mathematical</span>
<span
class="cmr-12">Software, 38 (4), 2012, art.</span><span
class="cmr-12">&#x00A0;23.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[19]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="Xpsblas_00"></a><span
class="cmr-12">S.</span><span
class="cmr-12">&#x00A0;Filippone, M.</span><span
class="cmr-12">&#x00A0;Colajanni, </span><span
class="cmti-12">PSBLAS: A</span>
<span
class="cmti-12">Library for Parallel Linear Algebra Computation on Sparse Matrices</span><span
class="cmr-12">, ACM</span>
<span
class="cmr-12">Transactions on Mathematical Software, 26 (4), 2000, 527&#8211;550.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[20]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XGrHeJi:16"></a><span
class="cmr-12">S. Gratton, P. Henon, P. Jiranek and X. Vasseur, </span><span
class="cmti-12">Reducing complexity of</span>
<span
class="cmti-12">algebraic multigrid by aggregation</span><span
class="cmr-12">, Numerical Lin. Algebra with Applications,</span>
<span
class="cmr-12">2016, 23:501-518</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[21]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XMPI2"></a><span
class="cmr-12">W.</span><span
class="cmr-12">&#x00A0;Gropp, S.</span><span
class="cmr-12">&#x00A0;Huss-Lederman, A.</span><span
class="cmr-12">&#x00A0;Lumsdaine, E.</span><span
class="cmr-12">&#x00A0;Lusk, B.</span><span
class="cmr-12">&#x00A0;Nitzberg,</span>
<span
class="cmr-12">W.</span><span
class="cmr-12">&#x00A0;Saphir, M.</span><span
class="cmr-12">&#x00A0;Snir, </span><span
class="cmti-12">MPI: The Complete Reference. Volume 2 - The MPI-2</span>
<span
class="cmti-12">Extensions</span><span
class="cmr-12">, MIT Press, 1998.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[22]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="Xblas1"></a><span
class="cmr-12">C.</span><span
class="cmr-12">&#x00A0;L.</span><span
class="cmr-12">&#x00A0;Lawson, R.</span><span
class="cmr-12">&#x00A0;J.</span><span
class="cmr-12">&#x00A0;Hanson, D.</span><span
class="cmr-12">&#x00A0;Kincaid, F.</span><span
class="cmr-12">&#x00A0;T.</span><span
class="cmr-12">&#x00A0;Krogh, </span><span
class="cmti-12">Basic Linear</span>
<span
class="cmti-12">Algebra Subprograms for FORTRAN usage</span><span
class="cmr-12">, ACM Transactions on</span>
<span
class="cmr-12">Mathematical Software, 5 (3), 1979, 308&#8211;323.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[23]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XSUPERLUDIST"></a><span
class="cmr-12">X.</span><span
class="cmr-12">&#x00A0;S.</span><span
class="cmr-12">&#x00A0;Li, J.</span><span
class="cmr-12">&#x00A0;W.</span><span
class="cmr-12">&#x00A0;Demmel, </span><span
class="cmti-12">SuperLU</span><span
class="cmti-12">_DIST: A Scalable</span>
<span
class="cmti-12">Distributed-memory Sparse Direct Solver for Unsymmetric Linear Systems</span><span
class="cmr-12">,</span>
<span
class="cmr-12">ACM Transactions on Mathematical Software, 29 (2), 2003, 110&#8211;140.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[24]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XNotay2008"></a><span
class="cmr-12">Y.</span><span
class="cmr-12">&#x00A0;Notay, P.</span><span
class="cmr-12">&#x00A0;S.</span><span
class="cmr-12">&#x00A0;Vassilevski, </span><span
class="cmti-12">Recursive Krylov-based multigrid cycles</span><span
class="cmr-12">,</span>
<span
class="cmr-12">Numerical Linear Algebra with Applications, 15 (5), 2008, 473&#8211;487.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[25]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XSaad_book"></a><span
class="cmr-12">Y.</span><span
class="cmr-12">&#x00A0;Saad, </span><span
class="cmti-12">Iterative methods for sparse linear systems</span><span
class="cmr-12">, 2nd edition, SIAM,</span>
<span
class="cmr-12">2003.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[26]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="Xdd2_96"></a><span
class="cmr-12">B.</span><span
class="cmr-12">&#x00A0;Smith, P.</span><span
class="cmr-12">&#x00A0;Bjorstad, W.</span><span
class="cmr-12">&#x00A0;Gropp, </span><span
class="cmti-12">Domain Decomposition: Parallel</span>
<span
class="cmti-12">Multilevel Methods for Elliptic Partial Differential Equations</span><span
class="cmr-12">, Cambridge</span>
<span
class="cmr-12">University Press, 1996.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[27]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XMPI1"></a><span
class="cmr-12">M.</span><span
class="cmr-12">&#x00A0;Snir, S.</span><span
class="cmr-12">&#x00A0;Otto, S.</span><span
class="cmr-12">&#x00A0;Huss-Lederman, D.</span><span
class="cmr-12">&#x00A0;Walker, J.</span><span
class="cmr-12">&#x00A0;Dongarra, </span><span
class="cmti-12">MPI:</span>
<span
class="cmti-12">The Complete Reference. Volume 1 - The MPI Core</span><span
class="cmr-12">, second edition, MIT</span>
<span
class="cmr-12">Press, 1998.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[28]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XStuben_01"></a><span
class="cmr-12">K.</span><span
class="cmr-12">&#x00A0;St</span><span
class="cmr-12">üben, </span><span
class="cmti-12">An Introduction to Algebraic Multigrid</span><span
class="cmr-12">, in A.</span><span
class="cmr-12">&#x00A0;Sch</span><span
class="cmr-12">üller,</span>
<span
class="cmr-12">U.</span><span
class="cmr-12">&#x00A0;Trottenberg, C.</span><span
class="cmr-12">&#x00A0;Oosterlee, Multigrid, Academic Press, 2001.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[29]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XTUMINARO_TONG"></a><span
class="cmr-12">R.</span><span
class="cmr-12">&#x00A0;S.</span><span
class="cmr-12">&#x00A0;Tuminaro, C.</span><span
class="cmr-12">&#x00A0;Tong, </span><span
class="cmti-12">Parallel Smoothed Aggregation Multigrid:</span>
<span
class="cmti-12">Aggregation Strategies on Massively Parallel Machines</span><span
class="cmr-12">, in J. Donnelley,</span>
<span
class="cmr-12">editor, Proceedings of SuperComputing 2000, Dallas, 2000.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[30]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XVANEK_MANDEL_BREZINA"></a><span
class="cmr-12">P.</span><span
class="cmr-12">&#x00A0;Van</span><span
class="cmr-12">&#x011B;k, J.</span><span
class="cmr-12">&#x00A0;Mandel, M.</span><span
class="cmr-12">&#x00A0;Brezina, </span><span
class="cmti-12">Algebraic Multigrid by Smoothed</span>
<span
class="cmti-12">Aggregation for Second and Fourth Order Elliptic Problems</span><span
class="cmr-12">, Computing, 56</span>
<span
class="cmr-12">(3) 1996, 179&#8211;196.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[31]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XDV2013"></a><span
class="cmr-12">P.</span><span
class="cmr-12">&#x00A0;D&#8217;Ambra and P. S.</span><span
class="cmr-12">&#x00A0;Vassilevski, </span><span
class="cmti-12">Adaptive AMG with coarsening based</span>
<span
class="cmti-12">on compatible weighted matching</span><span
class="cmr-12">, Computing and Visualization in Science,</span>
<span
class="cmr-12">16, (2013) 59&#8211;76.</span>
</p>
<p class="bibitem" ><span class="biblabel">
<span
class="cmr-12">[32]</span><span class="bibsp"><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span></span></span><a
id="XDFV2018"></a><span
class="cmr-12">P.</span><span
class="cmr-12">&#x00A0;D&#8217;Ambra, S.</span><span
class="cmr-12">&#x00A0;Filippone and P. S.</span><span
class="cmr-12">&#x00A0;Vassilevski, </span><span
class="cmti-12">BootCMatch: a software</span>
<span
class="cmti-12">package for bootstrap AMG based on graph weighted matching</span><span
class="cmr-12">, ACM</span>
<span
class="cmr-12">Transactions on Mathematical Software, 44, (2018) 39:1&#8211;39:25.</span></p></div>
<!--l. 156--><div class="crosslinks"><p class="noindent"><span
<!--l. 1--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlse9.html" ><span
href="userhtmlli3.html" ><span
class="cmr-12">prev</span></a><span
class="cmr-12">] [</span><a
href="userhtmlse9.html#tailuserhtmlse9.html" ><span
href="userhtmlli3.html#tailuserhtmlli3.html" ><span
class="cmr-12">prev-tail</span></a><span
class="cmr-12">] [</span><a
href="userhtmlli4.html" ><span
class="cmr-12">front</span></a><span
class="cmr-12">] [</span><a
href="userhtml.html#userhtmlli4.html" ><span
href="userhtmlse2.html#userhtmlli4.html" ><span
class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<!--l. 156--><p class="indent" > <a
<!--l. 1--><p class="indent" > <a
id="tailuserhtmlli4.html"></a>
</body></html>

@ -83,11 +83,11 @@ class="cmr-12">) provides parallel Algebraic MultiGrid (AMG) preconditioners (se
<span
class="cmr-12">e.g., </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XBriggs2000"><span
href="userhtmlli5.html#XBriggs2000"><span
class="cmr-12">4</span></a><span
class="cmr-12">,</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlli4.html#XStuben_01"><span
href="userhtmlli5.html#XStuben_01"><span
class="cmr-12">28</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">), to be used in the iterative solution of linear systems,</span>
@ -116,11 +116,11 @@ class="cmr-12">multigrid cycles include the V-, W-, and a version of a Krylov-ty
class="cmr-12">(K-cycle)</span><span
class="cmr-12">&#x00A0;</span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XBriggs2000"><span
href="userhtmlli5.html#XBriggs2000"><span
class="cmr-12">4</span></a><span
class="cmr-12">,</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlli4.html#XNotay2008"><span
href="userhtmlli5.html#XNotay2008"><span
class="cmr-12">24</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">; they can be combined with Jacobi hybrid forward/backward</span>
@ -144,22 +144,22 @@ class="cmr-12">strategies, based on aggregation, are available:</span>
class="cmr-12">a decoupled version of the smoothed aggregation procedure proposed in</span><span
class="cmr-12">&#x00A0;</span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XBREZINA_VANEK"><span
href="userhtmlli5.html#XBREZINA_VANEK"><span
class="cmr-12">3</span></a><span
class="cmr-12">,</span>
<span
class="cmr-12">&#x00A0;</span><a
href="userhtmlli4.html#XVANEK_MANDEL_BREZINA"><span
href="userhtmlli5.html#XVANEK_MANDEL_BREZINA"><span
class="cmr-12">30</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">, and already included in the previous versions of the package</span><span
class="cmr-12">&#x00A0;</span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XBDDF2007"><span
href="userhtmlli5.html#XBDDF2007"><span
class="cmr-12">11</span></a><span
class="cmr-12">,</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlli4.html#XMLD2P4_TOMS"><span
href="userhtmlli5.html#XMLD2P4_TOMS"><span
class="cmr-12">10</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">;</span>
@ -170,17 +170,17 @@ class="cmr-12">a coupled, parallel implementation of the Coarsening based on Com
class="cmr-12">Weighted Matching introduced in</span><span
class="cmr-12">&#x00A0;</span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XDV2013"><span
href="userhtmlli5.html#XDV2013"><span
class="cmr-12">31</span></a><span
class="cmr-12">,</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlli4.html#XDFV2018"><span
href="userhtmlli5.html#XDFV2018"><span
class="cmr-12">32</span></a><span
class="cmr-12">]</span></span> <span
class="cmr-12">and described in detail in</span><span
class="cmr-12">&#x00A0;</span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XDDF2020"><span
href="userhtmlli5.html#XDDF2020"><span
class="cmr-12">12</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">;</span></li></ul>
@ -220,11 +220,11 @@ class="cmr-12">multilevel preconditioners in the context of the PSBLAS (Parallel
class="cmr-12">computational framework</span><span
class="cmr-12">&#x00A0;</span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#Xpsblas_00"><span
href="userhtmlli5.html#Xpsblas_00"><span
class="cmr-12">19</span></a><span
class="cmr-12">,</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlli4.html#XPSBLAS3"><span
href="userhtmlli5.html#XPSBLAS3"><span
class="cmr-12">18</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">. PSBLAS provides basic linear algebra operators</span>
@ -288,7 +288,7 @@ class="cmr-12">smoothers and solvers for building new versions of the preconditi
<span
class="cmr-12">Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse6.html#x25-290006"><span
href="userhtmlse6.html#x26-300006"><span
class="cmr-12">6</span><!--tex4ht:ref: sec:adding --></a><span
class="cmr-12">).</span>
<!--l. 95--><p class="indent" > <span
@ -302,7 +302,7 @@ class="cmr-12">, while details on the configuration and installation</span>
<span
class="cmr-12">of the package are given in Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse3.html#x7-60003"><span
href="userhtmlse3.html#x8-70003"><span
class="cmr-12">3</span><!--tex4ht:ref: sec:building --></a><span
class="cmr-12">. The basics for building and applying the</span>
<span
@ -311,13 +311,13 @@ class="cmr-12">preconditioners with the Krylov solvers implemented in PSBLAS are
class="cmr-12">in</span><span
class="cmr-12">&#x00A0;Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse4.html#x13-120004"><span
href="userhtmlse4.html#x14-130004"><span
class="cmr-12">4</span><!--tex4ht:ref: sec:started --></a><span
class="cmr-12">, where the Fortran codes of a few sample programs are also shown.</span>
<span
class="cmr-12">A reference guide for the user interface routines is provided in Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse5.html#x15-140005"><span
href="userhtmlse5.html#x16-150005"><span
class="cmr-12">5</span><!--tex4ht:ref: sec:userinterface --></a><span
class="cmr-12">.</span>
<span
@ -325,13 +325,13 @@ class="cmr-12">Information on the extension of the package through the addition
<span
class="cmr-12">smoothers and solvers is reported in Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse6.html#x25-290006"><span
href="userhtmlse6.html#x26-300006"><span
class="cmr-12">6</span><!--tex4ht:ref: sec:adding --></a><span
class="cmr-12">. The error handling mechanism</span>
<span
class="cmr-12">used by the package is briefly described in Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a><span
class="cmr-12">. The copyright terms</span>
<span
@ -339,7 +339,7 @@ class="cmr-12">concerning the distribution and modification of AMG4PSBLAS are re
<span
class="cmr-12">Appendix</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse8.html#x27-31000A"><span
href="userhtmlse8.html#x28-32000A"><span
class="cmr-12">A</span><!--tex4ht:ref: sec:license --></a><span
class="cmr-12">.</span>

@ -42,7 +42,7 @@ class="cmr-12">where contact points for further information can be also found.</
<!--l. 12--><p class="indent" > <span
class="cmr-12">The software is available under a modified BSD license, as specified in Appendix</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse8.html#x27-31000A"><span
href="userhtmlse8.html#x28-32000A"><span
class="cmr-12">A</span><!--tex4ht:ref: sec:license --></a><span
class="cmr-12">;</span>
<span
@ -67,7 +67,16 @@ class="cmr-12">.</span>
class="cmr-12">&#x00A0;</span><span class="likesubsectionToc" ><a
href="userhtmlli3.html#x6-50002"><span
class="cmr-12">Contributors</span></a></span>
</div><!--l. 1--><div class="crosslinks"><p class="noindent"><span
<br /> <span
class="cmr-12">&#x00A0;</span><span class="likesubsectionToc" ><a
href="userhtmlli4.html#x7-60002"><span
class="cmr-12">Citing AMG4PSBLAS</span></a></span>
</div>
<!--l. 1--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlse3.html" ><span
class="cmr-12">next</span></a><span

@ -29,7 +29,7 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h3 class="sectionHead"><span class="titlemark"><span
class="cmr-12">3 </span></span> <a
id="x7-60003"></a><span
id="x8-70003"></a><span
class="cmr-12">Configuring and Building AMG4PSBLAS</span></h3>
<!--l. 4--><p class="noindent" ><span
class="cmr-12">In order to build AMG4PSBLAS it is necessary to set up a Makefile with appropriate</span>
@ -64,7 +64,7 @@ class="cmr-12">in both single and double precision.</span>
<!--l. 20--><p class="indent" > <span
class="cmr-12">Building AMG4PSBLAS requires some base libraries (see Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu1.html#x8-70003.1"><span
href="userhtmlsu1.html#x9-80003.1"><span
class="cmr-12">3.1</span><!--tex4ht:ref: sec:prerequisites --></a><span
class="cmr-12">); interfaces to</span>
<span
@ -72,7 +72,7 @@ class="cmr-12">optional third-party libraries, which extend the functionalities
<span
class="cmr-12">Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu2.html#x9-80003.2"><span
href="userhtmlsu2.html#x10-90003.2"><span
class="cmr-12">3.2</span><!--tex4ht:ref: sec:third-party --></a><span
class="cmr-12">), are also available. A number of Linux distributions (e.g., Ubuntu,</span>
<span
@ -90,27 +90,27 @@ class="cmr-12">sections.</span>
<span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.1 </span><a
href="userhtmlsu1.html#x8-70003.1"><span
href="userhtmlsu1.html#x9-80003.1"><span
class="cmr-12">Prerequisites</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.2 </span><a
href="userhtmlsu2.html#x9-80003.2"><span
href="userhtmlsu2.html#x10-90003.2"><span
class="cmr-12">Optional third party libraries</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.3 </span><a
href="userhtmlsu3.html#x10-90003.3"><span
href="userhtmlsu3.html#x11-100003.3"><span
class="cmr-12">Configuration options</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.4 </span><a
href="userhtmlsu4.html#x11-100003.4"><span
href="userhtmlsu4.html#x12-110003.4"><span
class="cmr-12">Bug reporting</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">3.5 </span><a
href="userhtmlsu5.html#x12-110003.5"><span
href="userhtmlsu5.html#x13-120003.5"><span
class="cmr-12">Example and test programs</span></a></span>
</div>

@ -29,7 +29,7 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h3 class="sectionHead"><span class="titlemark"><span
class="cmr-12">4 </span></span> <a
id="x13-120004"></a><span
id="x14-130004"></a><span
class="cmr-12">Getting Started</span></h3>
<!--l. 5--><p class="noindent" ><span
class="cmr-12">This section describes the basics for building and applying AMG4PSBLAS one-level</span>
@ -38,7 +38,7 @@ class="cmr-12">and multilevel (i.e., AMG) preconditioners with the Krylov solver
<span
class="cmr-12">PSBLAS </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span>
@ -46,7 +46,7 @@ class="cmr-12">.</span>
class="cmr-12">The following steps are required:</span>
<ol class="enumerate1" >
<li
class="enumerate" id="x13-12002x1"><span
class="enumerate" id="x14-13002x1"><span
class="cmti-12">Declare the preconditioner data structure</span><span
class="cmr-12">. It is a derived data type,</span>
<span class="obeylines-h"><span class="verb"><span
@ -82,7 +82,7 @@ class="cmr-12">structure is accessed by the user only through the AMG4PSBLAS rou
class="cmr-12">following an object-oriented approach.</span>
</li>
<li
class="enumerate" id="x13-12004x2"><span
class="enumerate" id="x14-13004x2"><span
class="cmti-12">Allocate and initialize the preconditioner data structure, according to a</span>
<span
class="cmti-12">preconditioner type chosen by the user</span><span
@ -95,7 +95,7 @@ class="cmr-12">the user. The preconditioner types and the defaults associated wi
<span
class="cmr-12">are given in Table</span><span
class="cmr-12">&#x00A0;</span><a
href="#x13-12015r1"><span
href="#x14-13015r1"><span
class="cmr-12">1</span><!--tex4ht:ref: tab:precinit --></a><span
class="cmr-12">, where the strings used by </span><span class="lstinline"></span><span
class="cmtt-12">init</span> <span
@ -106,7 +106,7 @@ class="cmr-12">preconditioner types are also given. Note that these strings are
class="cmr-12">uppercase letters are substituted by corresponding lowercase ones.</span>
</li>
<li
class="enumerate" id="x13-12006x3"><span
class="enumerate" id="x14-13006x3"><span
class="cmti-12">Modify the selected preconditioner type, by properly setting preconditioner</span>
<span
class="cmti-12">parameters. </span><span
@ -122,7 +122,7 @@ class="cmr-12">preconditioner. Examples of use of </span><span class="lstinline"
class="cmtt-12">set</span> <span
class="cmr-12">are given in Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu6.html#x14-130004.1"><span
href="userhtmlsu6.html#x15-140004.1"><span
class="cmr-12">4.1</span><!--tex4ht:ref: sec:examples --></a><span
class="cmr-12">; a complete</span>
<span
@ -130,19 +130,19 @@ class="cmr-12">list of all the preconditioner parameters and their allowed and d
<span
class="cmr-12">is provided in Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse5.html#x15-140005"><span
href="userhtmlse5.html#x16-150005"><span
class="cmr-12">5</span><!--tex4ht:ref: sec:userinterface --></a><span
class="cmr-12">, Tables</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu8.html#x17-16009r2"><span
href="userhtmlsu8.html#x18-17009r2"><span
class="cmr-12">2</span><!--tex4ht:ref: tab:p_cycle --></a><span
class="cmr-12">-</span><a
href="userhtmlsu8.html#x17-16014r7"><span
href="userhtmlsu8.html#x18-17014r7"><span
class="cmr-12">7</span><!--tex4ht:ref: tab:p_smoother_1 --></a><span
class="cmr-12">.</span>
</li>
<li
class="enumerate" id="x13-12008x4"><span
class="enumerate" id="x14-13008x4"><span
class="cmti-12">Build the preconditioner for a given matrix</span><span
class="cmr-12">. If the selected preconditioner is</span>
<span
@ -152,7 +152,7 @@ class="cmr-12">multilevel, then two steps must be performed, as specified next.<
<ol class="enumerate2" >
<li
class="enumerate" id="x13-12009x0"><span
class="enumerate" id="x14-13009x0"><span
class="cmti-12">Build the AMG hierarchy for a given matrix. </span><span
class="cmr-12">This is performed by the</span>
<span
@ -161,7 +161,7 @@ class="cmtt-12">hierarchy_build</span><span
class="cmr-12">.</span>
</li>
<li
class="enumerate" id="x13-12010x0"><span
class="enumerate" id="x14-13010x0"><span
class="cmti-12">Build the preconditioner for a given matrix. </span><span
class="cmr-12">This is performed by the</span>
<span
@ -176,7 +176,7 @@ class="cmtt-12">bld</span><span
class="cmr-12">.</span>
</li>
<li
class="enumerate" id="x13-12012x5"><span
class="enumerate" id="x14-13012x5"><span
class="cmti-12">Apply the preconditioner at each iteration of a Krylov solver. </span><span
class="cmr-12">This is performed by</span>
<span
@ -193,7 +193,7 @@ class="cmtt-12">psb_krylov</span><span
class="cmr-12">).</span>
</li>
<li
class="enumerate" id="x13-12014x6"><span
class="enumerate" id="x14-13014x6"><span
class="cmti-12">Free the preconditioner data structure</span><span
class="cmr-12">. This is performed by the routine </span><span class="lstinline"></span><span
class="cmtt-12">free</span><span
@ -207,13 +207,13 @@ class="cmr-12">All the previous routines are available as methods of the precond
<span
class="cmr-12">detailed description of them is given in Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse5.html#x15-140005"><span
href="userhtmlse5.html#x16-150005"><span
class="cmr-12">5</span><!--tex4ht:ref: sec:userinterface --></a><span
class="cmr-12">. Examples showing the basic use of</span>
<span
class="cmr-12">AMG4PSBLAS are reported in Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu6.html#x14-130004.1"><span
href="userhtmlsu6.html#x15-140004.1"><span
class="cmr-12">4.1</span><!--tex4ht:ref: sec:examples --></a><span
class="cmr-12">.</span>
<div class="table">
@ -221,7 +221,7 @@ class="cmr-12">.</span>
<!--l. 63--><p class="indent" > <a
id="x13-12015r1"></a><hr class="float"><div class="float"
id="x14-13015r1"></a><hr class="float"><div class="float"
>
@ -381,8 +381,8 @@ smoothed aggregation as coarsening
algorithm, and LU (plus triangular solve)
as coarsest-level solver. See the default
values in Tables&#x00A0;<a
href="userhtmlsu8.html#x17-16009r2">2<!--tex4ht:ref: tab:p_cycle --></a>-<a
href="userhtmlsu8.html#x17-16014r7">7<!--tex4ht:ref: tab:p_smoother_1 --></a> for further details of
href="userhtmlsu8.html#x18-17009r2">2<!--tex4ht:ref: tab:p_cycle --></a>-<a
href="userhtmlsu8.html#x18-17014r7">7<!--tex4ht:ref: tab:p_smoother_1 --></a> for further details of
the preconditioner. </td>
</tr><tr
class="hline"><td><hr></td><td><hr></td><td><hr></td></tr><tr
@ -390,7 +390,7 @@ class="hline"><td><hr></td><td><hr></td><td><hr></td></tr><tr
class="td11"> </td></tr></table></div>
<br /> <div class="caption"
><span class="id">Table&#x00A0;1: </span><span
class="content">Preconditioner types, corresponding strings and default choices. </span></div><!--tex4ht:label?: x13-12015r1 -->
class="content">Preconditioner types, corresponding strings and default choices. </span></div><!--tex4ht:label?: x14-13015r1 -->
</div>
@ -414,7 +414,7 @@ class="cmr-12">,</span>
<span
class="cmr-12">for interfacing with the Krylov solvers, must be also used (see Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu6.html#x14-130004.1"><span
href="userhtmlsu6.html#x15-140004.1"><span
class="cmr-12">4.1</span><!--tex4ht:ref: sec:examples --></a><span
class="cmr-12">).</span>
<br
@ -437,7 +437,7 @@ class="cmr-12">on parallel computers.</span>
<span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">4.1 </span><a
href="userhtmlsu6.html#x14-130004.1"><span
href="userhtmlsu6.html#x15-140004.1"><span
class="cmr-12">Examples</span></a></span>
</div>

@ -29,7 +29,7 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h3 class="sectionHead"><span class="titlemark"><span
class="cmr-12">5 </span></span> <a
id="x15-140005"></a><span
id="x16-150005"></a><span
class="cmr-12">User Interface</span></h3>
<!--l. 5--><p class="noindent" ><span
class="cmr-12">The basic user interface of AMG4PBLAS consists of eight methods. The six methods</span>
@ -151,7 +151,7 @@ class="cmr-12">the precision of the sparse matrix and preconditioner data struct
<span
class="cmr-12">Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu8.html#x17-160005.2"><span
href="userhtmlsu8.html#x18-170005.2"><span
class="cmr-12">5.2</span><!--tex4ht:ref: sec:precset --></a><span
class="cmr-12">).</span></li></ul>
<!--l. 38--><p class="noindent" ><span
@ -163,80 +163,80 @@ class="cmr-12">A description of each method is given in the remainder of this se
<span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.1 </span><a
href="userhtmlsu7.html#x16-150005.1"><span
href="userhtmlsu7.html#x17-160005.1"><span
class="cmr-12">Method init</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.2 </span><a
href="userhtmlsu8.html#x17-160005.2"><span
href="userhtmlsu8.html#x18-170005.2"><span
class="cmr-12">Method set</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.3 </span><a
href="userhtmlsu9.html#x18-170005.3"><span
href="userhtmlsu9.html#x19-180005.3"><span
class="cmr-12">Method hierarchy</span><span
class="cmr-12">_build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.4 </span><a
href="userhtmlsu10.html#x19-180005.4"><span
href="userhtmlsu10.html#x20-190005.4"><span
class="cmr-12">Method smoothers</span><span
class="cmr-12">_build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.5 </span><a
href="userhtmlsu11.html#x20-190005.5"><span
href="userhtmlsu11.html#x21-200005.5"><span
class="cmr-12">Method build</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.6 </span><a
href="userhtmlsu12.html#x21-200005.6"><span
href="userhtmlsu12.html#x22-210005.6"><span
class="cmr-12">Method apply</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.7 </span><a
href="userhtmlsu13.html#x22-210005.7"><span
href="userhtmlsu13.html#x23-220005.7"><span
class="cmr-12">Method free</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.8 </span><a
href="userhtmlsu14.html#x23-220005.8"><span
href="userhtmlsu14.html#x24-230005.8"><span
class="cmr-12">Method descr</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span class="subsectionToc" ><span
class="cmr-12">5.9 </span><a
href="userhtmlsu15.html#x24-230005.9"><span
href="userhtmlsu15.html#x25-240005.9"><span
class="cmr-12">Auxiliary Methods</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span class="subsubsectionToc" ><span
class="cmr-12">5.9.1 </span><a
href="userhtmlsu15.html#x24-240005.9.1"><span
href="userhtmlsu15.html#x25-250005.9.1"><span
class="cmr-12">Method: dump</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span class="subsubsectionToc" ><span
class="cmr-12">5.9.2 </span><a
href="userhtmlsu15.html#x24-250005.9.2"><span
href="userhtmlsu15.html#x25-260005.9.2"><span
class="cmr-12">Method: clone</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span class="subsubsectionToc" ><span
class="cmr-12">5.9.3 </span><a
href="userhtmlsu15.html#x24-260005.9.3"><span
href="userhtmlsu15.html#x25-270005.9.3"><span
class="cmr-12">Method: sizeof</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span class="subsubsectionToc" ><span
class="cmr-12">5.9.4 </span><a
href="userhtmlsu15.html#x24-270005.9.4"><span
href="userhtmlsu15.html#x25-280005.9.4"><span
class="cmr-12">Method: allocate</span><span
class="cmr-12">_wrk</span></a></span>
<br /> <span
class="cmr-12">&#x00A0;</span><span
class="cmr-12">&#x00A0;</span><span class="subsubsectionToc" ><span
class="cmr-12">5.9.5 </span><a
href="userhtmlsu15.html#x24-280005.9.5"><span
href="userhtmlsu15.html#x25-290005.9.5"><span
class="cmr-12">Method: free</span><span
class="cmr-12">_wrk</span></a></span>
</div>

@ -29,7 +29,7 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h3 class="sectionHead"><span class="titlemark"><span
class="cmr-12">6 </span></span> <a
id="x25-290006"></a><span
id="x26-300006"></a><span
class="cmr-12">Adding new smoother and solver objects to AMG4PSBLAS</span></h3>
<!--l. 6--><p class="noindent" ><span
class="cmr-12">Developers can add completely new smoother and/or solver classes derived from the</span>
@ -37,7 +37,7 @@ class="cmr-12">Developers can add completely new smoother and/or solver classes
class="cmr-12">base objects in the library (see Remark</span><span
class="cmr-12">&#x00A0;2 in Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu8.html#x17-160005.2"><span
href="userhtmlsu8.html#x18-170005.2"><span
class="cmr-12">5.2</span><!--tex4ht:ref: sec:precset --></a><span
class="cmr-12">), without recompiling the</span>
<span
@ -202,7 +202,7 @@ class="cmr-12">The user-defined new solver to be employed in the preconditioner.
<!--l. 66--><p class="noindent" ><span
class="cmr-12">The other arguments are defined in the way described in Sec.</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu8.html#x17-160005.2"><span
href="userhtmlsu8.html#x18-170005.2"><span
class="cmr-12">5.2</span><!--tex4ht:ref: sec:precset --></a><span
class="cmr-12">. As an example, in the</span>
<span class="obeylines-h"><span class="verb"><span
@ -215,7 +215,7 @@ class="cmr-12">pass it as follows:</span>
<pre class="verbatim" id="verbatim-9">
<pre class="verbatim" id="verbatim-10">
&#x00A0;&#x00A0;!&#x00A0;sparse&#x00A0;matrix&#x00A0;and&#x00A0;preconditioner
&#x00A0;&#x00A0;type(psb_dspmat_type)&#x00A0;::&#x00A0;a
&#x00A0;&#x00A0;type(amg_dprec_type)&#x00A0;&#x00A0;::&#x00A0;prec

@ -29,7 +29,7 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h3 class="sectionHead"><span class="titlemark"><span
class="cmr-12">7 </span></span> <a
id="x26-300007"></a><span
id="x27-310007"></a><span
class="cmr-12">Error Handling</span></h3>
<!--l. 5--><p class="noindent" ><span
class="cmr-12">The error handling in AMG4PSBLAS is based on the PSBLAS error handling. Error</span>
@ -51,7 +51,7 @@ class="cmr-12">an error message should be printed. These options may be set by u
class="cmr-12">PSBLAS error handling routines; for further details see the PSBLAS User&#8217;s Guide</span>
<span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span>
@ -61,6 +61,10 @@ class="cmr-12">.</span>
<!--l. 148--><p class="indent" >

@ -29,14 +29,14 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h3 class="sectionHead"><span class="titlemark"><span
class="cmr-12">A </span></span> <a
id="x27-31000A"></a><span
id="x28-32000A"></a><span
class="cmr-12">License</span></h3>
<!--l. 6--><p class="noindent" ><span
class="cmr-12">AMG4PSBLAS is freely distributable under the following copyright terms:</span>
<pre class="verbatim" id="verbatim-10">
<pre class="verbatim" id="verbatim-11">
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;AMG4PSBLAS&#x00A0;&#x00A0;version&#x00A0;1.0
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;Algebraic&#x00A0;MultiGrid&#x00A0;Preconditioners&#x00A0;Package
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;based&#x00A0;on&#x00A0;PSBLAS&#x00A0;(Parallel&#x00A0;Sparse&#x00A0;BLAS&#x00A0;version&#x00A0;3.7)
@ -78,7 +78,7 @@ class="cmr-12">abide by its terms:</span>
<pre class="verbatim" id="verbatim-11">
<pre class="verbatim" id="verbatim-12">
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;MLD2P4&#x00A0;&#x00A0;version&#x00A0;2.2
&#x00A0;&#x00A0;MultiLevel&#x00A0;Domain&#x00A0;Decomposition&#x00A0;Parallel&#x00A0;Preconditioners&#x00A0;Package
&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;based&#x00A0;on&#x00A0;PSBLAS&#x00A0;(Parallel&#x00A0;Sparse&#x00A0;BLAS&#x00A0;version&#x00A0;3.5)

@ -12,7 +12,7 @@
>
<!--l. 1--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlli4.html" ><span
href="userhtmlli5.html" ><span
class="cmr-12">next</span></a><span
class="cmr-12">] [</span><a
href="userhtmlse8.html" ><span
@ -29,12 +29,12 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h3 class="sectionHead"><span class="titlemark"><span
class="cmr-12">B </span></span> <a
id="x28-32000B"></a><span
id="x29-33000B"></a><span
class="cmr-12">Contributor Covenant Code of Conduct</span></h3>
<div class="paragraphTOCS">
</div>
<!--l. 5--><p class="noindent" ><span class="paragraphHead"><a
id="x28-33000B"></a><span
id="x29-34000B"></a><span
class="cmbx-12">Our Pledge</span></span>
<span
class="cmr-12">We as members, contributors, and leaders pledge to make participation in</span>
@ -100,7 +100,7 @@ class="cmr-12">Other conduct which could reasonably be considered inappro
<span
class="cmr-12">professional setting</span></li></ul>
<!--l. 38--><p class="noindent" ><span class="paragraphHead"><a
id="x28-34000B"></a><span
id="x29-35000B"></a><span
class="cmbx-12">Enforcement Responsibilities</span></span>
<span
class="cmr-12">Community leaders are responsible for clarifying and enforcing our standards of</span>
@ -138,7 +138,7 @@ class="cmr-12">leaders are obligated to respect the privacy and security of the
<span
class="cmr-12">incident.</span>
<!--l. 61--><p class="noindent" ><span class="paragraphHead"><a
id="x28-35000B"></a><span
id="x29-36000B"></a><span
class="cmbx-12">Enforcement Guidelines</span></span>
<span
class="cmr-12">Community leaders will follow these Community Impact Guidelines in</span>
@ -148,7 +148,7 @@ class="cmr-12">determining the consequences for any action they deem in violatio
class="cmr-12">Conduct:</span>
<ol class="enumerate1" >
<li
class="enumerate" id="x28-35002x1"><span
class="enumerate" id="x29-36002x1"><span
class="cmr-12">Correction</span>
<!--l. 67--><p class="noindent" ><span
class="cmti-12">Community Impact: </span><span
@ -167,7 +167,7 @@ class="cmr-12">clarity around the nature of the violation and an explanation of
class="cmr-12">behavior was inappropriate. A public apology may be requested.</span>
</li>
<li
class="enumerate" id="x28-35004x2"><span
class="enumerate" id="x29-36004x2"><span
class="cmr-12">Warning</span>
<!--l. 75--><p class="noindent" ><span
class="cmti-12">Community Impact: </span><span
@ -187,7 +187,7 @@ class="cmr-12">channels like social media. Violating these terms may lead to a t
class="cmr-12">or permanent ban.</span>
</li>
<li
class="enumerate" id="x28-35006x3"><span
class="enumerate" id="x29-36006x3"><span
class="cmr-12">Temporary Ban</span>
<!--l. 86--><p class="noindent" ><span
class="cmti-12">Community Impact: </span><span
@ -207,7 +207,7 @@ class="cmr-12">interaction with those enforcing the Code of Conduct, is allowed
class="cmr-12">period. Violating these terms may lead to a permanent ban.</span>
</li>
<li
class="enumerate" id="x28-35008x4"><span
class="enumerate" id="x29-36008x4"><span
class="cmr-12">Permanent Ban</span>
<!--l. 96--><p class="noindent" ><span
class="cmti-12">Community Impact: </span><span
@ -222,7 +222,7 @@ class="cmr-12">A permanent ban from any sort of public interaction within</span>
<span
class="cmr-12">the community.</span></li></ol>
<!--l. 104--><p class="noindent" ><span class="paragraphHead"><a
id="x28-36000B"></a><span
id="x29-37000B"></a><span
class="cmbx-12">Attribution</span></span>
<span
class="cmr-12">This Code of Conduct is adapted from the Contributor Covenant, version 2.0,</span>
@ -260,7 +260,7 @@ class="cmr-12">.</span>
<!--l. 2--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlli4.html" ><span
href="userhtmlli5.html" ><span
class="cmr-12">next</span></a><span
class="cmr-12">] [</span><a
href="userhtmlse8.html" ><span

@ -23,7 +23,7 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">3.1 </span></span> <a
id="x8-70003.1"></a><span
id="x9-80003.1"></a><span
class="cmr-12">Prerequisites</span></h4>
<!--l. 32--><p class="noindent" ><span
class="cmr-12">The following base libraries are needed:</span>
@ -35,15 +35,15 @@ class="cmr-12">The following base libraries are needed:</span>
class="cmbx-12">BLAS</span> </dt><dd
class="description"><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#Xblas3"><span
href="userhtmlli5.html#Xblas3"><span
class="cmr-12">15</span></a><span
class="cmr-12">,</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlli4.html#Xblas2"><span
href="userhtmlli5.html#Xblas2"><span
class="cmr-12">16</span></a><span
class="cmr-12">,</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlli4.html#Xblas1"><span
href="userhtmlli5.html#Xblas1"><span
class="cmr-12">22</span></a><span
class="cmr-12">]</span></span> <span
class="cmr-12">Many vendors provide optimized versions of BLAS; if no</span>
@ -89,11 +89,11 @@ class="cmr-12">library.</span>
class="cmbx-12">MPI</span> </dt><dd
class="description"><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XMPI2"><span
href="userhtmlli5.html#XMPI2"><span
class="cmr-12">21</span></a><span
class="cmr-12">,</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlli4.html#XMPI1"><span
href="userhtmlli5.html#XMPI1"><span
class="cmr-12">27</span></a><span
class="cmr-12">]</span></span> <span
class="cmr-12">A version of MPI is available on most high-performance computing</span>
@ -104,11 +104,11 @@ class="cmr-12">systems.</span>
class="cmbx-12">PSBLAS</span> </dt><dd
class="description"><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">,</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlli4.html#Xpsblas_00"><span
href="userhtmlli5.html#Xpsblas_00"><span
class="cmr-12">19</span></a><span
class="cmr-12">]</span></span> <span
class="cmr-12">Parallel Sparse BLAS (PSBLAS) is available from</span>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 625--><div class="crosslinks"><p class="noindent"><span
<!--l. 640--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu11.html" ><span
class="cmr-12">next</span></a><span
@ -29,13 +29,13 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">5.4 </span></span> <a
id="x19-180005.4"></a><span
id="x20-190005.4"></a><span
class="cmr-12">Method smoothers</span><span
class="cmr-12">_build</span></h4>
<div class="center"
>
<!--l. 628--><p class="noindent" >
<!--l. 629--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 643--><p class="noindent" >
<!--l. 644--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">call</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">p</span><span
@ -57,7 +57,7 @@ class="cmtt-12">,</span><span
class="cmtt-12">imold</span><span
class="cmtt-12">])</span><br />
</div>
<!--l. 632--><p class="noindent" ><span
<!--l. 647--><p class="noindent" ><span
class="cmr-12">This method builds the smoothers and the coarsest-level solvers for the multilevel</span>
<span
class="cmr-12">preconditioner </span><span class="lstinline"></span><span
@ -72,10 +72,10 @@ class="cmr-12">, and based on the aggregation hierarchy produced by a previous c
class="cmtt-12">hierarchy_build</span> <span
class="cmr-12">(see Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu9.html#x18-170005.3"><span
href="userhtmlsu9.html#x19-180005.3"><span
class="cmr-12">5.3</span><!--tex4ht:ref: sec:hier_bld --></a><span
class="cmr-12">).</span>
<!--l. 639--><p class="noindent" ><span
<!--l. 654--><p class="noindent" ><span
class="cmbx-12">Arguments</span>
<div class="tabular"> <table id="TBL-11" class="tabular"
cellspacing="0" cellpadding="0"
@ -83,9 +83,9 @@ cellspacing="0" cellpadding="0"
id="TBL-11-1"><col
id="TBL-11-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-11-1-"><td style="white-space:normal; text-align:left;" id="TBL-11-1-1"
class="td11"><!--l. 642--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 657--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">a</span> </td><td style="white-space:normal; text-align:left;" id="TBL-11-1-2"
class="td11"><!--l. 642--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 657--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">type</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_</span><span
@ -100,8 +100,8 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-2-"><td style="white-space:normal; text-align:left;" id="TBL-11-2-1"
class="td11"><!--l. 643--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-2-2"
class="td11"><!--l. 643--><p class="noindent" ><span
class="td11"><!--l. 658--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-2-2"
class="td11"><!--l. 658--><p class="noindent" ><span
class="cmr-12">The sparse matrix structure containing the local part of the matrix</span>
<span
class="cmr-12">to be preconditioned. Note that </span><span
@ -115,15 +115,15 @@ class="cmr-12">, single/double precision version of AMG4PSBLAS</span>
<span
class="cmr-12">under use. See the PSBLAS User&#8217;s Guide for details </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-3-"><td style="white-space:normal; text-align:left;" id="TBL-11-3-1"
class="td11"><!--l. 647--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 662--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">desc_a</span></td><td style="white-space:normal; text-align:left;" id="TBL-11-3-2"
class="td11"><!--l. 647--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 662--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">type</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_desc_type</span><span
@ -136,23 +136,23 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-4-"><td style="white-space:normal; text-align:left;" id="TBL-11-4-1"
class="td11"><!--l. 648--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-4-2"
class="td11"><!--l. 648--><p class="noindent" ><span
class="td11"><!--l. 663--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-4-2"
class="td11"><!--l. 663--><p class="noindent" ><span
class="cmr-12">The communication descriptor of </span><span class="lstinline"></span><span
class="cmtt-12">a</span><span
class="cmr-12">. See the PSBLAS User&#8217;s Guide</span>
<span
class="cmr-12">for details </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-5-"><td style="white-space:normal; text-align:left;" id="TBL-11-5-1"
class="td11"><!--l. 650--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 665--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">info</span> </td><td style="white-space:normal; text-align:left;" id="TBL-11-5-2"
class="td11"><!--l. 650--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 665--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -163,18 +163,18 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-6-"><td style="white-space:normal; text-align:left;" id="TBL-11-6-1"
class="td11"><!--l. 651--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-6-2"
class="td11"><!--l. 651--><p class="noindent" ><span
class="td11"><!--l. 666--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-6-2"
class="td11"><!--l. 666--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for details.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-7-"><td style="white-space:normal; text-align:left;" id="TBL-11-7-1"
class="td11"><!--l. 652--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 667--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">amold</span> </td><td style="white-space:normal; text-align:left;" id="TBL-11-7-2"
class="td11"><!--l. 652--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 667--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">class</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_</span><span
@ -191,23 +191,23 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-8-"><td style="white-space:normal; text-align:left;" id="TBL-11-8-1"
class="td11"><!--l. 653--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-8-2"
class="td11"><!--l. 653--><p class="noindent" ><span
class="td11"><!--l. 668--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-8-2"
class="td11"><!--l. 668--><p class="noindent" ><span
class="cmr-12">The desired dynamic type for internal matrix components; this</span>
<span
class="cmr-12">allows e.g. running on GPUs; it needs not be the same on all</span>
<span
class="cmr-12">processes. See the PSBLAS User&#8217;s Guide for details </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-9-"><td style="white-space:normal; text-align:left;" id="TBL-11-9-1"
class="td11"><!--l. 657--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 672--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">vmold</span> </td><td style="white-space:normal; text-align:left;" id="TBL-11-9-2"
class="td11"><!--l. 657--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 672--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">class</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_</span><span
@ -224,16 +224,16 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-10-"><td style="white-space:normal; text-align:left;" id="TBL-11-10-1"
class="td11"><!--l. 658--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-10-2"
class="td11"><!--l. 658--><p class="noindent" ><span
class="td11"><!--l. 673--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-10-2"
class="td11"><!--l. 673--><p class="noindent" ><span
class="cmr-12">The desired dynamic type for internal vector components; this</span>
<span
class="cmr-12">allows e.g. running on GPUs.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-11-"><td style="white-space:normal; text-align:left;" id="TBL-11-11-1"
class="td11"><!--l. 660--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 675--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">imold</span> </td><td style="white-space:normal; text-align:left;" id="TBL-11-11-2"
class="td11"><!--l. 660--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 675--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">class</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_i_base_vect_type</span><span
@ -248,8 +248,8 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-11-12-"><td style="white-space:normal; text-align:left;" id="TBL-11-12-1"
class="td11"><!--l. 661--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-12-2"
class="td11"><!--l. 661--><p class="noindent" ><span
class="td11"><!--l. 676--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-11-12-2"
class="td11"><!--l. 676--><p class="noindent" ><span
class="cmr-12">The desired dynamic type for internal integer vector components;</span>
<span
class="cmr-12">this allows e.g. running on GPUs.</span> </td>
@ -262,7 +262,7 @@ class="td11"> </td> </tr></table></div>
<!--l. 667--><div class="crosslinks"><p class="noindent"><span
<!--l. 682--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu11.html" ><span
class="cmr-12">next</span></a><span
@ -279,6 +279,6 @@ class="cmr-12">] [</span><a
href="userhtmlse5.html#userhtmlsu10.html" ><span
class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<!--l. 667--><p class="indent" > <a
<!--l. 682--><p class="indent" > <a
id="tailuserhtmlsu10.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 667--><div class="crosslinks"><p class="noindent"><span
<!--l. 682--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu12.html" ><span
class="cmr-12">next</span></a><span
@ -29,12 +29,12 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">5.5 </span></span> <a
id="x20-190005.5"></a><span
id="x21-200005.5"></a><span
class="cmr-12">Method build</span></h4>
<div class="center"
>
<!--l. 669--><p class="noindent" >
<!--l. 670--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 684--><p class="noindent" >
<!--l. 685--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">call</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">p</span><span
@ -54,7 +54,7 @@ class="cmtt-12">,</span><span
class="cmtt-12">imold</span><span
class="cmtt-12">])</span><br />
</div>
<!--l. 673--><p class="noindent" ><span
<!--l. 688--><p class="noindent" ><span
class="cmr-12">This method builds the preconditioner </span><span class="lstinline"></span><span
class="cmtt-12">p</span> <span
class="cmr-12">according to the requirements made by the</span>
@ -65,11 +65,11 @@ class="cmr-12">and </span><span class="lstinline"></span><span
class="cmtt-12">set</span> <span
class="cmr-12">(see Sections</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu9.html#x18-170005.3"><span
href="userhtmlsu9.html#x19-180005.3"><span
class="cmr-12">5.3</span><!--tex4ht:ref: sec:hier_bld --></a> <span
class="cmr-12">and</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu10.html#x19-180005.4"><span
href="userhtmlsu10.html#x20-190005.4"><span
class="cmr-12">5.4</span><!--tex4ht:ref: sec:smooth_bld --></a> <span
class="cmr-12">for multilevel</span>
<span
@ -83,7 +83,7 @@ class="cmtt-12">smoothers_build</span><span
class="cmr-12">, whose nomenclature would however be somewhat unnatural when</span>
<span
class="cmr-12">dealing with simple one-level preconditioners.</span>
<!--l. 683--><p class="noindent" ><span
<!--l. 698--><p class="noindent" ><span
class="cmbx-12">Arguments</span>
<div class="tabular"> <table id="TBL-12" class="tabular"
cellspacing="0" cellpadding="0"
@ -91,9 +91,9 @@ cellspacing="0" cellpadding="0"
id="TBL-12-1"><col
id="TBL-12-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-12-1-"><td style="white-space:normal; text-align:left;" id="TBL-12-1-1"
class="td11"><!--l. 686--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 701--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">a</span> </td><td style="white-space:normal; text-align:left;" id="TBL-12-1-2"
class="td11"><!--l. 686--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 701--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">type</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_</span><span
@ -108,8 +108,8 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-2-"><td style="white-space:normal; text-align:left;" id="TBL-12-2-1"
class="td11"><!--l. 687--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-2-2"
class="td11"><!--l. 687--><p class="noindent" ><span
class="td11"><!--l. 702--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-2-2"
class="td11"><!--l. 702--><p class="noindent" ><span
class="cmr-12">The sparse matrix structure containing the local part of the matrix</span>
<span
class="cmr-12">to be preconditioned. Note that </span><span
@ -123,15 +123,15 @@ class="cmr-12">, single/double precision version of AMG4PSBLAS</span>
<span
class="cmr-12">under use. See the PSBLAS User&#8217;s Guide for details </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-3-"><td style="white-space:normal; text-align:left;" id="TBL-12-3-1"
class="td11"><!--l. 691--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 706--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">desc_a</span></td><td style="white-space:normal; text-align:left;" id="TBL-12-3-2"
class="td11"><!--l. 691--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 706--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">type</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_desc_type</span><span
@ -144,23 +144,23 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-4-"><td style="white-space:normal; text-align:left;" id="TBL-12-4-1"
class="td11"><!--l. 692--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-4-2"
class="td11"><!--l. 692--><p class="noindent" ><span
class="td11"><!--l. 707--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-4-2"
class="td11"><!--l. 707--><p class="noindent" ><span
class="cmr-12">The communication descriptor of </span><span class="lstinline"></span><span
class="cmtt-12">a</span><span
class="cmr-12">. See the PSBLAS User&#8217;s Guide</span>
<span
class="cmr-12">for details </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-5-"><td style="white-space:normal; text-align:left;" id="TBL-12-5-1"
class="td11"><!--l. 694--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 709--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">info</span> </td><td style="white-space:normal; text-align:left;" id="TBL-12-5-2"
class="td11"><!--l. 694--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 709--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -171,18 +171,18 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-6-"><td style="white-space:normal; text-align:left;" id="TBL-12-6-1"
class="td11"><!--l. 695--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-6-2"
class="td11"><!--l. 695--><p class="noindent" ><span
class="td11"><!--l. 710--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-6-2"
class="td11"><!--l. 710--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for details.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-7-"><td style="white-space:normal; text-align:left;" id="TBL-12-7-1"
class="td11"><!--l. 696--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 711--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">amold</span> </td><td style="white-space:normal; text-align:left;" id="TBL-12-7-2"
class="td11"><!--l. 696--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 711--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">class</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_</span><span
@ -199,23 +199,23 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-8-"><td style="white-space:normal; text-align:left;" id="TBL-12-8-1"
class="td11"><!--l. 697--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-8-2"
class="td11"><!--l. 697--><p class="noindent" ><span
class="td11"><!--l. 712--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-8-2"
class="td11"><!--l. 712--><p class="noindent" ><span
class="cmr-12">The desired dynamic type for internal matrix components; this</span>
<span
class="cmr-12">allows e.g. running on GPUs; it needs not be the same on all</span>
<span
class="cmr-12">processes. See the PSBLAS User&#8217;s Guide for details </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-9-"><td style="white-space:normal; text-align:left;" id="TBL-12-9-1"
class="td11"><!--l. 701--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 716--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">vmold</span> </td><td style="white-space:normal; text-align:left;" id="TBL-12-9-2"
class="td11"><!--l. 701--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 716--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">class</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_</span><span
@ -232,16 +232,16 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-10-"><td style="white-space:normal; text-align:left;" id="TBL-12-10-1"
class="td11"><!--l. 702--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-10-2"
class="td11"><!--l. 702--><p class="noindent" ><span
class="td11"><!--l. 717--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-10-2"
class="td11"><!--l. 717--><p class="noindent" ><span
class="cmr-12">The desired dynamic type for internal vector components; this</span>
<span
class="cmr-12">allows e.g. running on GPUs.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-11-"><td style="white-space:normal; text-align:left;" id="TBL-12-11-1"
class="td11"><!--l. 704--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 719--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">imold</span> </td><td style="white-space:normal; text-align:left;" id="TBL-12-11-2"
class="td11"><!--l. 704--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 719--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">class</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_i_base_vect_type</span><span
@ -256,15 +256,15 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-12-"><td style="white-space:normal; text-align:left;" id="TBL-12-12-1"
class="td11"><!--l. 705--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-12-2"
class="td11"><!--l. 705--><p class="noindent" ><span
class="td11"><!--l. 720--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-12-12-2"
class="td11"><!--l. 720--><p class="noindent" ><span
class="cmr-12">The desired dynamic type for internal integer vector components;</span>
<span
class="cmr-12">this allows e.g. running on GPUs.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-12-13-"><td style="white-space:normal; text-align:left;" id="TBL-12-13-1"
class="td11"> </td> </tr></table></div>
<!--l. 710--><p class="noindent" ><span
<!--l. 725--><p class="noindent" ><span
class="cmr-12">The method can be used to build multilevel preconditioners too.</span>
@ -272,7 +272,7 @@ class="cmr-12">The method can be used to build multilevel preconditioners too.</
<!--l. 715--><div class="crosslinks"><p class="noindent"><span
<!--l. 730--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu12.html" ><span
class="cmr-12">next</span></a><span
@ -289,6 +289,6 @@ class="cmr-12">] [</span><a
href="userhtmlse5.html#userhtmlsu11.html" ><span
class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<!--l. 715--><p class="indent" > <a
<!--l. 730--><p class="indent" > <a
id="tailuserhtmlsu11.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 715--><div class="crosslinks"><p class="noindent"><span
<!--l. 730--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu13.html" ><span
class="cmr-12">next</span></a><span
@ -29,12 +29,12 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">5.6 </span></span> <a
id="x21-200005.6"></a><span
id="x22-210005.6"></a><span
class="cmr-12">Method apply</span></h4>
<div class="center"
>
<!--l. 717--><p class="noindent" >
<!--l. 718--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 732--><p class="noindent" >
<!--l. 733--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">call</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">p</span><span
@ -55,7 +55,7 @@ class="cmtt-12">,</span><span
class="cmtt-12">work</span><span
class="cmtt-12">])</span><br />
</div>
<!--l. 721--><p class="noindent" ><span
<!--l. 736--><p class="noindent" ><span
class="cmr-12">This method computes </span><span
class="cmmi-12">y </span><span
class="cmr-12">= </span><span
@ -89,7 +89,7 @@ class="cmtt-12">psb_krylov</span> <span
class="cmr-12">and hence it is</span>
<span
class="cmr-12">completely transparent to the user.</span>
<!--l. 730--><p class="noindent" ><span
<!--l. 745--><p class="noindent" ><span
class="cmbx-12">Arguments</span>
<div class="tabular"> <table id="TBL-13" class="tabular"
cellspacing="0" cellpadding="0"
@ -97,9 +97,9 @@ cellspacing="0" cellpadding="0"
id="TBL-13-1"><col
id="TBL-13-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-13-1-"><td style="white-space:normal; text-align:left;" id="TBL-13-1-1"
class="td11"><!--l. 733--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 748--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">x</span> </td><td style="white-space:normal; text-align:left;" id="TBL-13-1-2"
class="td11"><!--l. 733--><p class="noindent" ><span
class="td11"><!--l. 748--><p class="noindent" ><span
class="cmti-12">type</span><span class="lstinline"></span><span
class="cmtt-12">(</span><span
class="cmtt-12">kind_parameter</span><span
@ -107,8 +107,8 @@ class="cmtt-12">)</span><span
class="cmr-12">, dimension(:), intent(in)&#8212;.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-2-"><td style="white-space:normal; text-align:left;" id="TBL-13-2-1"
class="td11"><!--l. 734--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-2-2"
class="td11"><!--l. 734--><p class="noindent" ><span
class="td11"><!--l. 749--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-2-2"
class="td11"><!--l. 749--><p class="noindent" ><span
class="cmr-12">The local part of the vector </span><span
class="cmmi-12">x</span><span
class="cmr-12">. Note that </span><span
@ -126,9 +126,9 @@ class="cmr-12">, single/double</span>
class="cmr-12">precision version of AMG4PSBLAS under use.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-3-"><td style="white-space:normal; text-align:left;" id="TBL-13-3-1"
class="td11"><!--l. 737--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 752--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">y</span> </td><td style="white-space:normal; text-align:left;" id="TBL-13-3-2"
class="td11"><!--l. 737--><p class="noindent" ><span
class="td11"><!--l. 752--><p class="noindent" ><span
class="cmti-12">type</span><span class="lstinline"></span><span
class="cmtt-12">(</span><span
class="cmtt-12">kind_parameter</span><span
@ -136,8 +136,8 @@ class="cmtt-12">)</span><span
class="cmr-12">, dimension(:), intent(out)&#8212;.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-4-"><td style="white-space:normal; text-align:left;" id="TBL-13-4-1"
class="td11"><!--l. 738--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-4-2"
class="td11"><!--l. 738--><p class="noindent" ><span
class="td11"><!--l. 753--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-4-2"
class="td11"><!--l. 753--><p class="noindent" ><span
class="cmr-12">The local part of the vector </span><span
class="cmmi-12">y</span><span
class="cmr-12">. Note that </span><span
@ -155,9 +155,9 @@ class="cmr-12">, single/double</span>
class="cmr-12">precision version of AMG4PSBLAS under use.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-5-"><td style="white-space:normal; text-align:left;" id="TBL-13-5-1"
class="td11"><!--l. 741--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 756--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">desc_a</span></td><td style="white-space:normal; text-align:left;" id="TBL-13-5-2"
class="td11"><!--l. 741--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 756--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">type</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_desc_type</span><span
@ -170,16 +170,16 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-6-"><td style="white-space:normal; text-align:left;" id="TBL-13-6-1"
class="td11"><!--l. 742--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-6-2"
class="td11"><!--l. 742--><p class="noindent" ><span
class="td11"><!--l. 757--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-6-2"
class="td11"><!--l. 757--><p class="noindent" ><span
class="cmr-12">The communication descriptor associated to the matrix to be</span>
<span
class="cmr-12">preconditioned.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-7-"><td style="white-space:normal; text-align:left;" id="TBL-13-7-1"
class="td11"><!--l. 744--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 759--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">info</span> </td><td style="white-space:normal; text-align:left;" id="TBL-13-7-2"
class="td11"><!--l. 744--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 759--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -190,18 +190,18 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-8-"><td style="white-space:normal; text-align:left;" id="TBL-13-8-1"
class="td11"><!--l. 745--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-8-2"
class="td11"><!--l. 745--><p class="noindent" ><span
class="td11"><!--l. 760--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-8-2"
class="td11"><!--l. 760--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for details.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-9-"><td style="white-space:normal; text-align:left;" id="TBL-13-9-1"
class="td11"><!--l. 746--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 761--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">trans</span> </td><td style="white-space:normal; text-align:left;" id="TBL-13-9-2"
class="td11"><!--l. 746--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 761--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">character</span><span
class="cmtt-12">(</span><span
class="cmtt-12">len</span><span
@ -216,8 +216,8 @@ class="cmtt-12">in</span><span
class="cmtt-12">).</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-10-"><td style="white-space:normal; text-align:left;" id="TBL-13-10-1"
class="td11"><!--l. 747--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-10-2"
class="td11"><!--l. 747--><p class="noindent" ><span
class="td11"><!--l. 762--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-10-2"
class="td11"><!--l. 762--><p class="noindent" ><span
class="cmr-12">If </span><span class="lstinline"></span><span
class="cmtt-12">trans</span> <span
class="cmr-12">= </span><span class="lstinline"></span><span
@ -291,9 +291,9 @@ class="cmr-8">1</span></sup><span
class="cmr-12">).</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-11-"><td style="white-space:normal; text-align:left;" id="TBL-13-11-1"
class="td11"><!--l. 751--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 766--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">work</span> </td><td style="white-space:normal; text-align:left;" id="TBL-13-11-2"
class="td11"><!--l. 751--><p class="noindent" ><span
class="td11"><!--l. 766--><p class="noindent" ><span
class="cmti-12">type</span><span class="lstinline"></span><span
class="cmtt-12">(</span><span
class="cmtt-12">kind_parameter</span><span
@ -301,8 +301,8 @@ class="cmtt-12">)</span><span
class="cmr-12">, dimension(:), optional, target&#8212;.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-13-12-"><td style="white-space:normal; text-align:left;" id="TBL-13-12-1"
class="td11"><!--l. 752--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-12-2"
class="td11"><!--l. 752--><p class="noindent" ><span
class="td11"><!--l. 767--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-13-12-2"
class="td11"><!--l. 767--><p class="noindent" ><span
class="cmr-12">Workspace. Its size should be at least </span><span class="lstinline"></span><span
class="cmtt-12">4</span><span
class="cmtt-12">&#x00A0;</span><span
@ -339,7 +339,7 @@ class="td11"> </td> </tr></table></div>
<!--l. 761--><div class="crosslinks"><p class="noindent"><span
<!--l. 776--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu13.html" ><span
class="cmr-12">next</span></a><span
@ -356,6 +356,6 @@ class="cmr-12">] [</span><a
href="userhtmlse5.html#userhtmlsu12.html" ><span
class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<!--l. 761--><p class="indent" > <a
<!--l. 776--><p class="indent" > <a
id="tailuserhtmlsu12.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 761--><div class="crosslinks"><p class="noindent"><span
<!--l. 776--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu14.html" ><span
class="cmr-12">next</span></a><span
@ -29,12 +29,12 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">5.7 </span></span> <a
id="x22-210005.7"></a><span
id="x23-220005.7"></a><span
class="cmr-12">Method free</span></h4>
<div class="center"
>
<!--l. 763--><p class="noindent" >
<!--l. 764--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 778--><p class="noindent" >
<!--l. 779--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">call</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">p</span><span
@ -46,11 +46,11 @@ class="cmtt-12">,</span><span
class="cmtt-12">info</span><span
class="cmtt-12">)</span><br />
</div>
<!--l. 767--><p class="noindent" ><span
<!--l. 782--><p class="noindent" ><span
class="cmr-12">This method deallocates the preconditioner data structure </span><span class="lstinline"></span><span
class="cmtt-12">p</span><span
class="cmr-12">.</span>
<!--l. 770--><p class="noindent" ><span
<!--l. 785--><p class="noindent" ><span
class="cmbx-12">Arguments</span>
<div class="tabular"> <table id="TBL-14" class="tabular"
cellspacing="0" cellpadding="0"
@ -58,9 +58,9 @@ cellspacing="0" cellpadding="0"
id="TBL-14-1"><col
id="TBL-14-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-14-1-"><td style="white-space:normal; text-align:left;" id="TBL-14-1-1"
class="td11"><!--l. 773--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 788--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">info</span> </td><td style="white-space:normal; text-align:left;" id="TBL-14-1-2"
class="td11"><!--l. 773--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 788--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -71,11 +71,11 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-14-2-"><td style="white-space:normal; text-align:left;" id="TBL-14-2-1"
class="td11"><!--l. 774--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-14-2-2"
class="td11"><!--l. 774--><p class="noindent" ><span
class="td11"><!--l. 789--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-14-2-2"
class="td11"><!--l. 789--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for</span>
<span
@ -89,7 +89,7 @@ class="td11"> </td> </tr></table></div>
<!--l. 780--><div class="crosslinks"><p class="noindent"><span
<!--l. 795--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu14.html" ><span
class="cmr-12">next</span></a><span
@ -106,6 +106,6 @@ class="cmr-12">] [</span><a
href="userhtmlse5.html#userhtmlsu13.html" ><span
class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<!--l. 780--><p class="indent" > <a
<!--l. 795--><p class="indent" > <a
id="tailuserhtmlsu13.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 780--><div class="crosslinks"><p class="noindent"><span
<!--l. 795--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu15.html" ><span
class="cmr-12">next</span></a><span
@ -29,12 +29,12 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">5.8 </span></span> <a
id="x23-220005.8"></a><span
id="x24-230005.8"></a><span
class="cmr-12">Method descr</span></h4>
<div class="center"
>
<!--l. 782--><p class="noindent" >
<!--l. 783--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 797--><p class="noindent" >
<!--l. 798--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">call</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">p</span><span
@ -54,7 +54,7 @@ class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">verbosity</span><span
class="cmtt-12">])</span><br />
</div>
<!--l. 786--><p class="noindent" ><span
<!--l. 801--><p class="noindent" ><span
class="cmr-12">This method prints a description of the preconditioner </span><span class="lstinline"></span><span
class="cmtt-12">p</span> <span
class="cmr-12">to the standard output or to a</span>
@ -68,7 +68,7 @@ class="cmtt-12">build</span><span
class="cmr-12">, have</span>
<span
class="cmr-12">been called.</span>
<!--l. 791--><p class="noindent" ><span
<!--l. 806--><p class="noindent" ><span
class="cmbx-12">Arguments</span>
<div class="tabular"> <table id="TBL-15" class="tabular"
cellspacing="0" cellpadding="0"
@ -76,9 +76,9 @@ cellspacing="0" cellpadding="0"
id="TBL-15-1"><col
id="TBL-15-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-15-1-"><td style="white-space:normal; text-align:left;" id="TBL-15-1-1"
class="td11"><!--l. 794--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 809--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">info</span> </td><td style="white-space:normal; text-align:left;" id="TBL-15-1-2"
class="td11"><!--l. 794--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 809--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -89,18 +89,18 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-15-2-"><td style="white-space:normal; text-align:left;" id="TBL-15-2-1"
class="td11"><!--l. 795--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-15-2-2"
class="td11"><!--l. 795--><p class="noindent" ><span
class="td11"><!--l. 810--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-15-2-2"
class="td11"><!--l. 810--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for details.</span></td>
</tr><tr
style="vertical-align:baseline;" id="TBL-15-3-"><td style="white-space:normal; text-align:left;" id="TBL-15-3-1"
class="td11"><!--l. 796--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 811--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">iout</span> </td><td style="white-space:normal; text-align:left;" id="TBL-15-3-2"
class="td11"><!--l. 796--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 811--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -113,16 +113,16 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-15-4-"><td style="white-space:normal; text-align:left;" id="TBL-15-4-1"
class="td11"><!--l. 797--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-15-4-2"
class="td11"><!--l. 797--><p class="noindent" ><span
class="td11"><!--l. 812--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-15-4-2"
class="td11"><!--l. 812--><p class="noindent" ><span
class="cmr-12">The id of the file where the preconditioner description will be</span>
<span
class="cmr-12">printed; the default is the standard output.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-15-5-"><td style="white-space:normal; text-align:left;" id="TBL-15-5-1"
class="td11"><!--l. 799--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 814--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">root</span> </td><td style="white-space:normal; text-align:left;" id="TBL-15-5-2"
class="td11"><!--l. 799--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 814--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -135,8 +135,8 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-15-6-"><td style="white-space:normal; text-align:left;" id="TBL-15-6-1"
class="td11"><!--l. 800--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-15-6-2"
class="td11"><!--l. 800--><p class="noindent" ><span
class="td11"><!--l. 815--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-15-6-2"
class="td11"><!--l. 815--><p class="noindent" ><span
class="cmr-12">The id of the process where the preconditioner description</span>
<span
class="cmr-12">will be printed; the default is </span><span class="lstinline"></span><span
@ -144,9 +144,9 @@ class="cmtt-12">psb_root_</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-15-7-"><td style="white-space:normal; text-align:left;" id="TBL-15-7-1"
class="td11"><!--l. 802--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 817--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">verbosity</span> </td><td style="white-space:normal; text-align:left;" id="TBL-15-7-2"
class="td11"><!--l. 802--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 817--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -159,8 +159,8 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-15-8-"><td style="white-space:normal; text-align:left;" id="TBL-15-8-1"
class="td11"><!--l. 803--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-15-8-2"
class="td11"><!--l. 803--><p class="noindent" ><span
class="td11"><!--l. 818--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-15-8-2"
class="td11"><!--l. 818--><p class="noindent" ><span
class="cmr-12">The verbosity level of the description. Default value is 0. For</span>
<span
class="cmr-12">values higher than 0, it prints out further information, e.g., for</span>
@ -174,7 +174,7 @@ class="td11"> </td> </tr></table></div>
<!--l. 810--><div class="crosslinks"><p class="noindent"><span
<!--l. 825--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu15.html" ><span
class="cmr-12">next</span></a><span
@ -191,6 +191,6 @@ class="cmr-12">] [</span><a
href="userhtmlse5.html#userhtmlsu14.html" ><span
class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<!--l. 810--><p class="indent" > <a
<!--l. 825--><p class="indent" > <a
id="tailuserhtmlsu14.html"></a>
</body></html>

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 810--><div class="crosslinks"><p class="noindent"><span
<!--l. 825--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu14.html" ><span
class="cmr-12">prev</span></a><span
@ -26,21 +26,21 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">5.9 </span></span> <a
id="x24-230005.9"></a><span
id="x25-240005.9"></a><span
class="cmr-12">Auxiliary Methods</span></h4>
<!--l. 811--><p class="noindent" ><span
<!--l. 826--><p class="noindent" ><span
class="cmr-12">Various functionalities are implemented as additional methods of the preconditioner</span>
<span
class="cmr-12">object.</span>
<!--l. 814--><p class="noindent" >
<!--l. 829--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark"><span
class="cmr-12">5.9.1 </span></span> <a
id="x24-240005.9.1"></a><span
id="x25-250005.9.1"></a><span
class="cmr-12">Method: dump</span></h5>
<div class="center"
>
<!--l. 816--><p class="noindent" >
<!--l. 817--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 831--><p class="noindent" >
<!--l. 832--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">call</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">p</span><span
@ -68,9 +68,9 @@ class="cmtt-12">,</span><span
class="cmtt-12">global_num</span><span
class="cmtt-12">])</span><br />
</div>
<!--l. 820--><p class="noindent" ><span
<!--l. 835--><p class="noindent" ><span
class="cmr-12">Dump on file.</span>
<!--l. 823--><p class="noindent" ><span
<!--l. 838--><p class="noindent" ><span
class="cmbx-12">Arguments</span>
<div class="tabular"> <table id="TBL-16" class="tabular"
cellspacing="0" cellpadding="0"
@ -78,9 +78,9 @@ cellspacing="0" cellpadding="0"
id="TBL-16-1"><col
id="TBL-16-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-16-1-"><td style="white-space:normal; text-align:left;" id="TBL-16-1-1"
class="td11"><!--l. 826--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 841--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">info</span> </td><td style="white-space:normal; text-align:left;" id="TBL-16-1-2"
class="td11"><!--l. 826--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 841--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -91,18 +91,18 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-16-2-"><td style="white-space:normal; text-align:left;" id="TBL-16-2-1"
class="td11"><!--l. 827--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-16-2-2"
class="td11"><!--l. 827--><p class="noindent" ><span
class="td11"><!--l. 842--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-16-2-2"
class="td11"><!--l. 842--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for details.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-16-3-"><td style="white-space:normal; text-align:left;" id="TBL-16-3-1"
class="td11"><!--l. 828--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 843--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">amold</span> </td><td style="white-space:normal; text-align:left;" id="TBL-16-3-2"
class="td11"><!--l. 828--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 843--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">class</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_</span><span
@ -119,30 +119,30 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-16-4-"><td style="white-space:normal; text-align:left;" id="TBL-16-4-1"
class="td11"><!--l. 829--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-16-4-2"
class="td11"><!--l. 829--><p class="noindent" ><span
class="td11"><!--l. 844--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-16-4-2"
class="td11"><!--l. 844--><p class="noindent" ><span
class="cmr-12">The desired dynamic type for internal matrix components; this</span>
<span
class="cmr-12">allows e.g. running on GPUs; it needs not be the same on all</span>
<span
class="cmr-12">processes. See the PSBLAS User&#8217;s Guide for details </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-16-5-"><td style="white-space:normal; text-align:left;" id="TBL-16-5-1"
class="td11"> </td> </tr></table></div>
<!--l. 836--><p class="noindent" >
<!--l. 851--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark"><span
class="cmr-12">5.9.2 </span></span> <a
id="x24-250005.9.2"></a><span
id="x25-260005.9.2"></a><span
class="cmr-12">Method: clone</span></h5>
<div class="center"
>
<!--l. 838--><p class="noindent" >
<!--l. 839--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 853--><p class="noindent" >
<!--l. 854--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">call</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">p</span><span
@ -157,9 +157,9 @@ class="cmtt-12">)</span><br />
<!--l. 842--><p class="noindent" ><span
<!--l. 857--><p class="noindent" ><span
class="cmr-12">Create a (deep) copy of the preconditioner object.</span>
<!--l. 845--><p class="noindent" ><span
<!--l. 860--><p class="noindent" ><span
class="cmbx-12">Arguments</span>
<div class="tabular"> <table id="TBL-17" class="tabular"
cellspacing="0" cellpadding="0"
@ -167,9 +167,9 @@ cellspacing="0" cellpadding="0"
id="TBL-17-1"><col
id="TBL-17-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-17-1-"><td style="white-space:normal; text-align:left;" id="TBL-17-1-1"
class="td11"><!--l. 848--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 863--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">pout</span> </td><td style="white-space:normal; text-align:left;" id="TBL-17-1-2"
class="td11"><!--l. 848--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 863--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">type</span><span
class="cmtt-12">(</span><span
class="cmtt-12">amg_</span><span
@ -184,8 +184,8 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-17-2-"><td style="white-space:normal; text-align:left;" id="TBL-17-2-1"
class="td11"><!--l. 849--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-17-2-2"
class="td11"><!--l. 849--><p class="noindent" ><span
class="td11"><!--l. 864--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-17-2-2"
class="td11"><!--l. 864--><p class="noindent" ><span
class="cmr-12">The copy of the preconditioner data structure. Note that </span><span
class="cmti-12">x </span><span
class="cmr-12">must</span>
@ -199,9 +199,9 @@ class="cmr-12">, single/double precision</span>
class="cmr-12">version of AMG4PSBLAS under use.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-17-3-"><td style="white-space:normal; text-align:left;" id="TBL-17-3-1"
class="td11"><!--l. 852--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 867--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">info</span> </td><td style="white-space:normal; text-align:left;" id="TBL-17-3-2"
class="td11"><!--l. 852--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 867--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -212,25 +212,25 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-17-4-"><td style="white-space:normal; text-align:left;" id="TBL-17-4-1"
class="td11"><!--l. 853--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-17-4-2"
class="td11"><!--l. 853--><p class="noindent" ><span
class="td11"><!--l. 868--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-17-4-2"
class="td11"><!--l. 868--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for details.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-17-5-"><td style="white-space:normal; text-align:left;" id="TBL-17-5-1"
class="td11"> </td> </tr></table></div>
<!--l. 858--><p class="noindent" >
<!--l. 873--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark"><span
class="cmr-12">5.9.3 </span></span> <a
id="x24-260005.9.3"></a><span
id="x25-270005.9.3"></a><span
class="cmr-12">Method: sizeof</span></h5>
<div class="center"
>
<!--l. 860--><p class="noindent" >
<!--l. 861--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 875--><p class="noindent" >
<!--l. 876--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">sz</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">=</span><span
@ -248,9 +248,9 @@ cellspacing="0" cellpadding="0"
id="TBL-18-1"><col
id="TBL-18-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-18-1-"><td style="white-space:normal; text-align:left;" id="TBL-18-1-1"
class="td11"><!--l. 865--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 880--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">global</span> </td> <td style="white-space:normal; text-align:left;" id="TBL-18-1-2"
class="td11"><!--l. 865--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 880--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">logical</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -258,8 +258,8 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-18-2-"><td style="white-space:normal; text-align:left;" id="TBL-18-2-1"
class="td11"><!--l. 866--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-18-2-2"
class="td11"><!--l. 866--><p class="noindent" ><span
class="td11"><!--l. 881--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-18-2-2"
class="td11"><!--l. 881--><p class="noindent" ><span
class="cmr-12">Whether the global or local preconditioner memory occupatio is</span>
<span
class="cmr-12">desired. Default: </span><span class="lstinline"></span><span
@ -272,16 +272,16 @@ class="cmr-12">.</span> </td
class="td11"> </td> </tr></table>
</div> <span
class="cmr-12">Return memory footprint in bytes.</span>
<!--l. 873--><p class="noindent" >
<!--l. 888--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark"><span
class="cmr-12">5.9.4 </span></span> <a
id="x24-270005.9.4"></a><span
id="x25-280005.9.4"></a><span
class="cmr-12">Method: allocate</span><span
class="cmr-12">_wrk</span></h5>
<div class="center"
>
<!--l. 875--><p class="noindent" >
<!--l. 876--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 890--><p class="noindent" >
<!--l. 891--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">call</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">p</span><span
@ -294,7 +294,7 @@ class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">vmold</span><span
class="cmtt-12">])</span><br />
</div>
<!--l. 878--><p class="noindent" ><span
<!--l. 893--><p class="noindent" ><span
class="cmr-12">n Allocate internal work vectors. Each application of the preconditioner uses a number of</span>
<span
class="cmr-12">work vectors which are allocated internally as necessary; therefore allocation and</span>
@ -326,7 +326,7 @@ class="cmr-12">argument to the </span><span class="lstinline"></span><span
class="cmtt-12">apply</span>
<span
class="cmr-12">method.</span>
<!--l. 895--><p class="noindent" ><span
<!--l. 910--><p class="noindent" ><span
class="cmbx-12">Arguments</span>
<div class="tabular"> <table id="TBL-19" class="tabular"
cellspacing="0" cellpadding="0"
@ -334,9 +334,9 @@ cellspacing="0" cellpadding="0"
id="TBL-19-1"><col
id="TBL-19-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-19-1-"><td style="white-space:normal; text-align:left;" id="TBL-19-1-1"
class="td11"><!--l. 898--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 913--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">info</span> </td><td style="white-space:normal; text-align:left;" id="TBL-19-1-2"
class="td11"><!--l. 898--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 913--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -347,18 +347,18 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-19-2-"><td style="white-space:normal; text-align:left;" id="TBL-19-2-1"
class="td11"><!--l. 899--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-19-2-2"
class="td11"><!--l. 899--><p class="noindent" ><span
class="td11"><!--l. 914--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-19-2-2"
class="td11"><!--l. 914--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for details.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-19-3-"><td style="white-space:normal; text-align:left;" id="TBL-19-3-1"
class="td11"><!--l. 900--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 915--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">vmold</span> </td><td style="white-space:normal; text-align:left;" id="TBL-19-3-2"
class="td11"><!--l. 900--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 915--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">class</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_</span><span
@ -375,24 +375,24 @@ class="cmtt-12">optional</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-19-4-"><td style="white-space:normal; text-align:left;" id="TBL-19-4-1"
class="td11"><!--l. 901--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-19-4-2"
class="td11"><!--l. 901--><p class="noindent" ><span
class="td11"><!--l. 916--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-19-4-2"
class="td11"><!--l. 916--><p class="noindent" ><span
class="cmr-12">The desired dynamic type for internal vector components; this</span>
<span
class="cmr-12">allows e.g. running on GPUs.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-19-5-"><td style="white-space:normal; text-align:left;" id="TBL-19-5-1"
class="td11"> </td> </tr></table></div>
<!--l. 907--><p class="noindent" >
<!--l. 922--><p class="noindent" >
<h5 class="subsubsectionHead"><span class="titlemark"><span
class="cmr-12">5.9.5 </span></span> <a
id="x24-280005.9.5"></a><span
id="x25-290005.9.5"></a><span
class="cmr-12">Method: free</span><span
class="cmr-12">_wrk</span></h5>
<div class="center"
>
<!--l. 909--><p class="noindent" >
<!--l. 910--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 924--><p class="noindent" >
<!--l. 925--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">call</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">p</span><span
@ -402,9 +402,9 @@ class="cmtt-12">(</span><span
class="cmtt-12">info</span><span
class="cmtt-12">)</span><br />
</div>
<!--l. 913--><p class="noindent" ><span
<!--l. 928--><p class="noindent" ><span
class="cmr-12">Deallocate internal work vectors.</span>
<!--l. 916--><p class="noindent" ><span
<!--l. 931--><p class="noindent" ><span
class="cmbx-12">Arguments</span>
<div class="tabular"> <table id="TBL-20" class="tabular"
cellspacing="0" cellpadding="0"
@ -412,9 +412,9 @@ cellspacing="0" cellpadding="0"
id="TBL-20-1"><col
id="TBL-20-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-20-1-"><td style="white-space:normal; text-align:left;" id="TBL-20-1-1"
class="td11"><!--l. 919--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 934--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">info</span> </td><td style="white-space:normal; text-align:left;" id="TBL-20-1-2"
class="td11"><!--l. 919--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 934--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -425,11 +425,11 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-20-2-"><td style="white-space:normal; text-align:left;" id="TBL-20-2-1"
class="td11"><!--l. 920--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-20-2-2"
class="td11"><!--l. 920--><p class="noindent" ><span
class="td11"><!--l. 935--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-20-2-2"
class="td11"><!--l. 935--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for details.</span> </td>
</tr><tr

@ -29,7 +29,7 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">3.2 </span></span> <a
id="x9-80003.2"></a><span
id="x10-90003.2"></a><span
class="cmr-12">Optional third party libraries</span></h4>
<!--l. 66--><p class="noindent" ><span
class="cmr-12">We provide interfaces to the following third-party software libraries; note that these are</span>
@ -43,7 +43,7 @@ class="cmr-12">change to reflect their presence.</span>
class="cmbx-12">UMFPACK</span> </dt><dd
class="description"><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XUMFPACK"><span
href="userhtmlli5.html#XUMFPACK"><span
class="cmr-12">13</span></a><span
class="cmr-12">]</span></span> <span
class="cmr-12">A sparse LU factorization package included in the SuiteSparse</span>
@ -68,7 +68,7 @@ class="cmr-12">file.</span>
class="cmbx-12">MUMPS</span> </dt><dd
class="description"><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XMUMPS"><span
href="userhtmlli5.html#XMUMPS"><span
class="cmr-12">1</span></a><span
class="cmr-12">]</span></span> <span
class="cmr-12">A sparse LU factorization package available from</span>
@ -85,7 +85,7 @@ class="cmr-12">data. We tested versions 4.10.0 and 5.0.1.</span>
class="cmbx-12">SuperLU</span> </dt><dd
class="description"><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XSUPERLU"><span
href="userhtmlli5.html#XSUPERLU"><span
class="cmr-12">14</span></a><span
class="cmr-12">]</span></span> <span
class="cmr-12">A sparse LU factorization package available from</span>
@ -107,7 +107,7 @@ class="cmbx-12">SuperLU</span><span
class="cmbx-12">_Dist</span> </dt><dd
class="description"><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XSUPERLUDIST"><span
href="userhtmlli5.html#XSUPERLUDIST"><span
class="cmr-12">23</span></a><span
class="cmr-12">]</span></span> <span
class="cmr-12">A sparse LU factorization package available from the same</span>

File diff suppressed because it is too large Load Diff

@ -29,7 +29,7 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">3.4 </span></span> <a
id="x11-100003.4"></a><span
id="x12-110003.4"></a><span
class="cmr-12">Bug reporting</span></h4>
<!--l. 179--><p class="noindent" ><span
class="cmr-12">If you find any bugs in our codes, please report them through our issues page</span>

@ -26,7 +26,7 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">3.5 </span></span> <a
id="x12-110003.5"></a><span
id="x13-120003.5"></a><span
class="cmr-12">Example and test programs</span></h4>
<!--l. 188--><p class="noindent" ><span
class="cmr-12">The package contains the </span><span class="obeylines-h"><span class="verb"><span

@ -20,12 +20,12 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">4.1 </span></span> <a
id="x14-130004.1"></a><span
id="x15-140004.1"></a><span
class="cmr-12">Examples</span></h4>
<!--l. 116--><p class="noindent" ><span
class="cmr-12">The code reported in Figure</span><span
class="cmr-12">&#x00A0;</span><a
href="#x14-13001r1"><span
href="#x15-14001r1"><span
class="cmr-12">1</span><!--tex4ht:ref: fig:ex1 --></a> <span
class="cmr-12">shows how to set and apply the default multilevel</span>
<span
@ -33,7 +33,7 @@ class="cmr-12">preconditioner available in the real double precision version of
<span
class="cmr-12">(see Table</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse4.html#x13-12015r1"><span
href="userhtmlse4.html#x14-13015r1"><span
class="cmr-12">1</span><!--tex4ht:ref: tab:precinit --></a><span
class="cmr-12">). This preconditioner is chosen by simply specifying </span><span class="lstinline"></span><span
class="cmtt-12">&#8217;</span><span
@ -80,7 +80,7 @@ class="cmr-12">of</span>
<span
class="cmr-12">the AMG4PSBLAS implementation (see Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlsu5.html#x12-110003.5"><span
href="userhtmlsu5.html#x13-120003.5"><span
class="cmr-12">3.5</span><!--tex4ht:ref: sec:ex_and_test --></a><span
class="cmr-12">). A sample test problem along</span>
<span
@ -91,7 +91,7 @@ class="cmr-12">. For details on</span>
class="cmr-12">the use of the PSBLAS routines, see the PSBLAS User&#8217;s Guide</span><span
class="cmr-12">&#x00A0;</span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span>
@ -105,7 +105,7 @@ class="cmr-12">precision and the complex, single and double precision, versions
<span
class="cmr-12">with straightforward modifications of the previous example (see Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse5.html#x15-140005"><span
href="userhtmlse5.html#x16-150005"><span
class="cmr-12">5</span><!--tex4ht:ref: sec:userinterface --></a> <span
class="cmr-12">for</span>
<span
@ -117,7 +117,7 @@ class="cmr-12">.</span>
<!--l. 144--><p class="indent" > <a
id="x14-13001r1"></a><hr class="float"><div class="float"
id="x15-14001r1"></a><hr class="float"><div class="float"
>
@ -128,7 +128,7 @@ class="cmr-12">.</span>
<div class="minipage"><pre class="verbatim" id="verbatim-5">
<div class="minipage"><pre class="verbatim" id="verbatim-6">
&#x00A0;&#x00A0;use&#x00A0;psb_base_mod
&#x00A0;&#x00A0;use&#x00A0;amg_prec_mod
&#x00A0;&#x00A0;use&#x00A0;psb_krylov_mod
@ -187,7 +187,7 @@ class="cmr-12">.</span>
<br /> <div class="caption"
><span class="id">Listing 1: </span><span
class="content">setup and application of the default multilevel preconditioner (example 1).
</span></div><!--tex4ht:label?: x14-13001r1 -->
</span></div><!--tex4ht:label?: x15-14001r1 -->
</div>
@ -198,7 +198,7 @@ class="cmr-12">Different versions of the multilevel preconditioner can be obtain
<span
class="cmr-12">default values of the preconditioner parameters. The code reported in Figure</span><span
class="cmr-12">&#x00A0;</span><a
href="#x14-13002r2"><span
href="#x15-14002r2"><span
class="cmr-12">2</span><!--tex4ht:ref: fig:ex2 --></a> <span
class="cmr-12">shows</span>
<span
@ -221,7 +221,7 @@ class="cmr-12">solver implies that the coarsest-level matrix is distributed amon
<span
class="cmr-12">Figure</span><span
class="cmr-12">&#x00A0;</span><a
href="#x14-13003r3"><span
href="#x15-14003r3"><span
class="cmr-12">3</span><!--tex4ht:ref: fig:ex3 --></a> <span
class="cmr-12">shows how to set a W-cycle preconditioner using the Coarsening</span>
<span
@ -237,10 +237,10 @@ class="cmr-12">distributed matrices, and by default it is used on replicated one
<span
class="cmr-12">fragments shown in Figures</span><span
class="cmr-12">&#x00A0;</span><a
href="#x14-13002r2"><span
href="#x15-14002r2"><span
class="cmr-12">2</span><!--tex4ht:ref: fig:ex2 --></a> <span
class="cmr-12">and </span><a
href="#x14-13003r3"><span
href="#x15-14003r3"><span
class="cmr-12">3</span><!--tex4ht:ref: fig:ex3 --></a> <span
class="cmr-12">are included in the example program file</span>
<span class="obeylines-h"><span class="verb"><span
@ -252,7 +252,7 @@ class="cmbx-12">3</span>
<!--l. 288--><p class="indent" > <span
class="cmr-12">Finally, Figure</span><span
class="cmr-12">&#x00A0;</span><a
href="#x14-13004r4"><span
href="#x15-14004r4"><span
class="cmr-12">4</span><!--tex4ht:ref: fig:ex4 --></a> <span
class="cmr-12">shows the setup of a one-level additive Schwarz preconditioner,</span>
<span
@ -276,7 +276,7 @@ class="cmr-12">.</span>
<!--l. 298--><p class="indent" > <a
id="x14-13002r2"></a><hr class="float"><div class="float"
id="x15-14002r2"></a><hr class="float"><div class="float"
>
@ -284,7 +284,7 @@ class="cmr-12">.</span>
<div class="center"
>
<!--l. 312--><p class="noindent" >
<div class="minipage"><pre class="verbatim" id="verbatim-6">
<div class="minipage"><pre class="verbatim" id="verbatim-7">
...&#x00A0;...
!&#x00A0;build&#x00A0;a&#x00A0;V-cycle&#x00A0;preconditioner&#x00A0;with&#x00A0;1&#x00A0;block-Jacobi&#x00A0;sweep&#x00A0;(with
!&#x00A0;ILU(0)&#x00A0;on&#x00A0;the&#x00A0;blocks)&#x00A0;as&#x00A0;pre-&#x00A0;and&#x00A0;post-smoother,&#x00A0;and&#x00A0;8&#x00A0;&#x00A0;block-Jacobi
@ -300,7 +300,7 @@ class="cmr-12">.</span>
<!--l. 327--><p class="nopar" ></div></div>
<br /><div class="caption"
><span class="id">Listing 2: </span><span
class="content">setup of a multilevel preconditioner based on the default decoupled coarsening</span></div><!--tex4ht:label?: x14-13002r2 -->
class="content">setup of a multilevel preconditioner based on the default decoupled coarsening</span></div><!--tex4ht:label?: x15-14002r2 -->
@ -309,7 +309,7 @@ class="content">setup of a multilevel preconditioner based on the default decoup
<!--l. 334--><p class="indent" > <a
id="x14-13003r3"></a><hr class="float"><div class="float"
id="x15-14003r3"></a><hr class="float"><div class="float"
>
@ -317,7 +317,7 @@ class="content">setup of a multilevel preconditioner based on the default decoup
<div class="center"
>
<!--l. 351--><p class="noindent" >
<div class="minipage"><pre class="verbatim" id="verbatim-7">
<div class="minipage"><pre class="verbatim" id="verbatim-8">
...&#x00A0;...
!&#x00A0;build&#x00A0;a&#x00A0;W-cycle&#x00A0;preconditioner&#x00A0;with&#x00A0;2&#x00A0;hybrid&#x00A0;Gauss-Seidel&#x00A0;sweeps
!&#x00A0;as&#x00A0;pre-&#x00A0;and&#x00A0;post-smoother,&#x00A0;a&#x00A0;distributed&#x00A0;coarsest
@ -337,7 +337,7 @@ class="content">setup of a multilevel preconditioner based on the default decoup
<br /> <div class="caption"
><span class="id">Listing 3: </span><span
class="content">setup of a multilevel preconditioner based on the coupled coarsening based
on weighted matching</span></div><!--tex4ht:label?: x14-13003r3 -->
on weighted matching</span></div><!--tex4ht:label?: x15-14003r3 -->
@ -346,7 +346,7 @@ on weighted matching</span></div><!--tex4ht:label?: x14-13003r3 -->
<!--l. 376--><p class="indent" > <a
id="x14-13004r4"></a><hr class="float"><div class="float"
id="x15-14004r4"></a><hr class="float"><div class="float"
>
@ -354,7 +354,7 @@ on weighted matching</span></div><!--tex4ht:label?: x14-13003r3 -->
<div class="center"
>
<!--l. 393--><p class="noindent" >
<div class="minipage"><pre class="verbatim" id="verbatim-8">
<div class="minipage"><pre class="verbatim" id="verbatim-9">
...&#x00A0;...
!&#x00A0;set&#x00A0;RAS&#x00A0;with&#x00A0;overlap&#x00A0;2&#x00A0;and&#x00A0;ILU(0)&#x00A0;on&#x00A0;the&#x00A0;local&#x00A0;blocks
&#x00A0;&#x00A0;call&#x00A0;P%init(&#8217;AS&#8217;,info)
@ -367,7 +367,7 @@ on weighted matching</span></div><!--tex4ht:label?: x14-13003r3 -->
<!--l. 405--><p class="nopar" ></div></div>
<br /> <div class="caption"
><span class="id">Listing 4: </span><span
class="content">setup of a one-level Schwarz preconditioner.</span></div><!--tex4ht:label?: x14-13004r4 -->
class="content">setup of a one-level Schwarz preconditioner.</span></div><!--tex4ht:label?: x15-14004r4 -->

@ -23,7 +23,7 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">5.1 </span></span> <a
id="x16-150005.1"></a><span
id="x17-160005.1"></a><span
class="cmr-12">Method init</span></h4>
<div class="center"
>
@ -93,7 +93,7 @@ class="td11"><!--l. 59--><p class="noindent" > </td><td style="white-space
class="td11"><!--l. 59--><p class="noindent" ><span
class="cmr-12">The type of preconditioner. Its values are specified in Table</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse4.html#x13-12015r1"><span
href="userhtmlse4.html#x14-13015r1"><span
class="cmr-12">1</span><!--tex4ht:ref: tab:precinit --></a><span
class="cmr-12">.</span> </td>
</tr><tr
@ -120,7 +120,7 @@ class="td11"><!--l. 63--><p class="noindent" > </td><td style="white-space
class="td11"><!--l. 63--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for details.</span> </td>
</tr><tr

File diff suppressed because it is too large Load Diff

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="userhtml.css">
</head><body
>
<!--l. 595--><div class="crosslinks"><p class="noindent"><span
<!--l. 610--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu10.html" ><span
class="cmr-12">next</span></a><span
@ -29,13 +29,13 @@ class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<h4 class="subsectionHead"><span class="titlemark"><span
class="cmr-12">5.3 </span></span> <a
id="x18-170005.3"></a><span
id="x19-180005.3"></a><span
class="cmr-12">Method hierarchy</span><span
class="cmr-12">_build</span></h4>
<div class="center"
>
<!--l. 597--><p class="noindent" >
<!--l. 598--><p class="noindent" ><span class="lstinline"></span><span
<!--l. 612--><p class="noindent" >
<!--l. 613--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">call</span><span
class="cmtt-12">&#x00A0;</span><span
class="cmtt-12">p</span><span
@ -49,7 +49,7 @@ class="cmtt-12">,</span><span
class="cmtt-12">info</span><span
class="cmtt-12">)</span><br />
</div>
<!--l. 601--><p class="noindent" ><span
<!--l. 616--><p class="noindent" ><span
class="cmr-12">This method builds the hierarchy of matrices and restriction/prolongation operators for</span>
<span
class="cmr-12">the multilevel preconditioner </span><span class="lstinline"></span><span
@ -61,7 +61,7 @@ class="cmtt-12">init</span> <span
class="cmr-12">and </span><span class="lstinline"></span><span
class="cmtt-12">set</span><span
class="cmr-12">.</span>
<!--l. 606--><p class="noindent" ><span
<!--l. 621--><p class="noindent" ><span
class="cmbx-12">Arguments</span>
<div class="tabular"> <table id="TBL-10" class="tabular"
cellspacing="0" cellpadding="0"
@ -69,9 +69,9 @@ cellspacing="0" cellpadding="0"
id="TBL-10-1"><col
id="TBL-10-2"></colgroup><tr
style="vertical-align:baseline;" id="TBL-10-1-"><td style="white-space:normal; text-align:left;" id="TBL-10-1-1"
class="td11"><!--l. 609--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 624--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">a</span> </td><td style="white-space:normal; text-align:left;" id="TBL-10-1-2"
class="td11"><!--l. 609--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 624--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">type</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_</span><span
@ -86,8 +86,8 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-10-2-"><td style="white-space:normal; text-align:left;" id="TBL-10-2-1"
class="td11"><!--l. 610--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-10-2-2"
class="td11"><!--l. 610--><p class="noindent" ><span
class="td11"><!--l. 625--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-10-2-2"
class="td11"><!--l. 625--><p class="noindent" ><span
class="cmr-12">The sparse matrix structure containing the local part of the matrix</span>
<span
class="cmr-12">to be preconditioned. Note that </span><span
@ -101,15 +101,15 @@ class="cmr-12">, single/double precision version of AMG4PSBLAS</span>
<span
class="cmr-12">under use. See the PSBLAS User&#8217;s Guide for details </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-10-3-"><td style="white-space:normal; text-align:left;" id="TBL-10-3-1"
class="td11"><!--l. 615--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 630--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">desc_a</span></td><td style="white-space:normal; text-align:left;" id="TBL-10-3-2"
class="td11"><!--l. 615--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 630--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">type</span><span
class="cmtt-12">(</span><span
class="cmtt-12">psb_desc_type</span><span
@ -122,23 +122,23 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-10-4-"><td style="white-space:normal; text-align:left;" id="TBL-10-4-1"
class="td11"><!--l. 616--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-10-4-2"
class="td11"><!--l. 616--><p class="noindent" ><span
class="td11"><!--l. 631--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-10-4-2"
class="td11"><!--l. 631--><p class="noindent" ><span
class="cmr-12">The communication descriptor of </span><span class="lstinline"></span><span
class="cmtt-12">a</span><span
class="cmr-12">. See the PSBLAS User&#8217;s Guide</span>
<span
class="cmr-12">for details </span><span class="cite"><span
class="cmr-12">[</span><a
href="userhtmlli4.html#XPSBLASGUIDE"><span
href="userhtmlli5.html#XPSBLASGUIDE"><span
class="cmr-12">17</span></a><span
class="cmr-12">]</span></span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-10-5-"><td style="white-space:normal; text-align:left;" id="TBL-10-5-1"
class="td11"><!--l. 618--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 633--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">info</span> </td><td style="white-space:normal; text-align:left;" id="TBL-10-5-2"
class="td11"><!--l. 618--><p class="noindent" ><span class="lstinline"></span><span
class="td11"><!--l. 633--><p class="noindent" ><span class="lstinline"></span><span
class="cmtt-12">integer</span><span
class="cmtt-12">,</span><span
class="cmtt-12">&#x00A0;</span><span
@ -149,11 +149,11 @@ class="cmtt-12">)</span><span
class="cmr-12">.</span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-10-6-"><td style="white-space:normal; text-align:left;" id="TBL-10-6-1"
class="td11"><!--l. 619--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-10-6-2"
class="td11"><!--l. 619--><p class="noindent" ><span
class="td11"><!--l. 634--><p class="noindent" > </td><td style="white-space:normal; text-align:left;" id="TBL-10-6-2"
class="td11"><!--l. 634--><p class="noindent" ><span
class="cmr-12">Error code. If no error, 0 is returned. See Section</span><span
class="cmr-12">&#x00A0;</span><a
href="userhtmlse7.html#x26-300007"><span
href="userhtmlse7.html#x27-310007"><span
class="cmr-12">7</span><!--tex4ht:ref: sec:errors --></a> <span
class="cmr-12">for details.</span> </td>
</tr><tr
@ -165,7 +165,7 @@ class="td11"> </td> </tr></table></div>
<!--l. 625--><div class="crosslinks"><p class="noindent"><span
<!--l. 640--><div class="crosslinks"><p class="noindent"><span
class="cmr-12">[</span><a
href="userhtmlsu10.html" ><span
class="cmr-12">next</span></a><span
@ -182,6 +182,6 @@ class="cmr-12">] [</span><a
href="userhtmlse5.html#userhtmlsu9.html" ><span
class="cmr-12">up</span></a><span
class="cmr-12">] </span></p></div>
<!--l. 625--><p class="indent" > <a
<!--l. 640--><p class="indent" > <a
id="tailuserhtmlsu9.html"></a>
</body></html>

@ -8,18 +8,18 @@ based on PSBLAS}) is a package of parallel algebraic multilevel preconditioners
It is a progress of a software development project started in 2007, named MLD2P4, which originally implemented a
multilevel version of some domain decomposition preconditioners of additive-Schwarz type and was based on a parallel decoupled version of the well known smoothed
aggregation method to generate the multilevel hierarchy of coarser matrices.
In the last years, within the context of the EU-H2020 EoCoE project (Energy Oriented Center of Excellence), the package is being extended for including new algorithms and
functionalities to setup and apply new AMG preconditioners with the final aims of improving efficiency and scalability when tens of thousands cores are
In the last years, within the context of the EU-H2020 EoCoE project (Energy Oriented Center of Excellence), the package was extended for including new algorithms and
functionalities for the setup and application new AMG preconditioners with the final aims of improving efficiency and scalability when tens of thousands cores are
used and of boosting reliability in dealing with general symmetric positive definite linear systems.
Due to the significant number of changes and the increase in scope, we decided to rename the package as AMG4PSBLAS.
AMG4PSBLAS is designed to provide scalable and easy-to-use preconditioners
AMG4PSBLAS has been designed to provide scalable and easy-to-use preconditioners
in the context of the PSBLAS (Parallel Sparse Basic Linear Algebra Subprograms)
computational framework and can be used in conjuction with the Krylov solvers
available in this framework.
Our package is based on a completely algebraic approach and users level interfaces
assume that the system matrix and preconditioners are represented as PSBLAS
distributed sparse matrices.
Our package is based on a completely algebraic approach; therefore
users level interfaces assume that the system matrix and
preconditioners are represented as PSBLAS distributed sparse matrices.
AMG4PSBLAS enables the user to easily specify different
features of an algebraic multilevel preconditioner, thus allowing to experiment
with different preconditioners for the problem and parallel computers at hand.

@ -25,4 +25,26 @@ whose current value is \verb|1.0|.
\item Pasqua D'Ambra, IAC-CNR, IT;
\item Fabio Durastante, University of Pisa and IAC-CNR, IT;
\item Salvatore Filippone, University of Rome Tor-Vergata and IAC-CNR, IT;
\end{itemize}
\end{itemize}
\subsection*{Citing AMG4PSBLAS}
When use the library, please cite the following:
\begin{verbatim}
@article{DDF2021,
author = {D'Ambra, Pasqua and Durastante, Fabio and Filippone, Salvatore},
title = {{{AMG Preconditioners for Linear Solvers towards Extreme Scale}},
journal = {arXiv e-preprints},
eprint = {2006.16147v3},
archivePrefix = {arXiv},
year={2021}
}
@Misc{psctoolkit-web-page,
author = {D'Ambra, Pasqua and Durastante, Fabio and Filippone, Salvatore},
title = {{PSCToolkit} {W}eb page},
url = {https://psctoolkit.github.io/},
howpublished = {\url{https://psctoolkit.github.io/}},
year = {2021}
}
\end{verbatim}

@ -224,7 +224,7 @@ See also Sec.~\ref{sec:adding}.
& \fortinline|'VCYCLE'| \par \fortinline|'WCYCLE'| \par \fortinline|'KCYCLE'| \par \fortinline|'ADD'|
& \fortinline|'VCYCLE'|
&Multilevel cycle: V-cycle, W-cycle, K-cycle, and additive composition. \\ \hline
\fortinline|'OUTER_SWEEPS'| & \fortinline|integer| &
\fortinline|'CYCLE_SWEEPS'| & \fortinline|integer| &
Any integer \par number $\ge 1$ & 1 &
Number of multilevel cycles. \\ \hline
@ -325,7 +325,7 @@ aggregate larger than $8$ we recommend the use of smoothed prolongators.
\multicolumn{5}{|l|}{{\bfseries Note.} The aggregation algorithm stops when
at least one of the following criteria is met:
the coarse size threshold, } \\
\multicolumn{5}{|l|}{the coarse size threshold per process, the minimum coarsening ratio, or the maximum number
\multicolumn{5}{|l|}{the minimum coarsening ratio, or the maximum number
of levels is reached.} \\
\multicolumn{5}{|l|}{Therefore, the actual number of levels may be smaller than the specified maximum number
of levels. } \\
@ -394,19 +394,21 @@ the parameter \texttt{ilev}.} \\
\fortinline|'COARSE_SOLVE'| & \fortinline|character(len=*)|
& \fortinline|'MUMPS'| \par \fortinline|'UMF'| \par
\fortinline|'SLU'| \par \fortinline|'SLUDIST'| \par
\fortinline|'JACOBI'| \par \fortinline|'GS'| \par \fortinline|'BJAC'| \par \fortinline|'RKR'|
\fortinline|'JACOBI'| \par \fortinline|'GS'| \par \fortinline|'BJAC'| \par \fortinline|'KRM'|
& See~Note.
& Solver used at the coarsest level: sequential
LU from MUMPS, UMFPACK, or SuperLU
(plus tri\-an\-gular solve);
distributed LU from MUMPS or SuperLU\_Dist
(plus triangular solve);
point-Jacobi, hybrid Gauss-Seidel or block-Jacobi and related $\ell_1$-versions;
{\bf preconditioned Conjugate Gradient coupled with the block-Jacobi preconditioner
with ILU(0) on the blocks}.
point-Jacobi, hybrid Gauss-Seidel or
block-Jacobi and related $\ell_1$-versions;
Krylov Method (Flexible Conjugate Gradient) coupled with
the block-Jacobi preconditioner
with ILU(0) on the blocks.
Note that \texttt{UMF} and \texttt{SLU} require the coarsest
matrix to be replicated, \texttt{SLUDIST}, \texttt{JACOBI},
\texttt{GS}, \texttt{BJAC} and \texttt{PCG} require it to be
\texttt{GS}, \texttt{BJAC} and \texttt{KRM} require it to be
distributed, \texttt{MUMPS} can be used with either
a replicated or a distributed matrix. When any of the previous
solvers is specified, the matrix layout is set to a default
@ -433,9 +435,11 @@ the parameter \texttt{ilev}.} \\
in case the block Jacobi solver
is chosen as coarsest-level solver: ILU($p$), ILU($p,t$),
MILU($p$), LU from MUMPS, SuperLU or UMFPACK
(plus triangular solve). Suitable for GPUs (no triangular solve)
approximate inverse solvers INVK($p,q$), INVT($p_1,p2,t_1,t_2$) and
AINV($t$), see~\cite{BERTACCINIFILIPPONE}.
(plus triangular solve), Approximate
Inverses INVK($p,q$), INVT($p_1,p2,t_1,t_2$) and
AINV($t$); note that approximate inverses
are specifically suited for GPUs since they
do not employ triangular system solve kernels, see~\cite{BERTACCINIFILIPPONE}.
Note that UMFPACK and SuperLU\_Dist
are available only in double precision. \\
\hline
@ -468,12 +472,14 @@ the parameter \texttt{ilev}.} \\
\fortinline|'COARSE_FILLIN'| & \fortinline|integer|
& Any integer \par number $\ge 0$
& 0
& Fill-in level $p$ of the ILU factorizations. \\ \hline
& Fill-in level $p$ of the ILU factorizations
and first fill-in for the approximate inverses. \\ \hline
\fortinline|'COARSE_ILUTHRS'|
& \fortinline|real(kind_parameter)|
& Any real \par number $\ge 0$
& 0
& Drop tolerance $t$ in the ILU($p,t$) factorization. \\
& Drop tolerance $t$ in the ILU($p,t$)
factorization and first drop-tolerance for the approximate inverses. \\
\hline
\end{tabular}
\end{center}
@ -502,7 +508,9 @@ level (continued).\label{tab:p_coarse_1}}
& \fortinline|'JACOBI'| \par
\fortinline|'GS'| \par \texttt{'BGS'} \par \fortinline|'ILU'| \par
\fortinline|'ILUT'| \par \fortinline|'MILU'| \par
\par \fortinline|'MUMPS'| \par \fortinline|'SLU'| \par \fortinline|'UMF'|
\par \fortinline|'MUMPS'| \par
\fortinline|'SLU'| \par \fortinline|'UMF'|
\par \fortinline|'INVT'| \par \fortinline|'INVK'| \par \fortinline|'AINV'|
& \texttt{GS} and \texttt{BGS} for pre- and post-smoothers
of multilevel preconditioners, respectively \par
\texttt{ILU} for block-Jacobi and Additive Schwarz
@ -513,7 +521,14 @@ level (continued).\label{tab:p_coarse_1}}
hybrid (forward) Gauss-Seidel, hybrid backward
Gauss-Seidel, ILU($p$), ILU($p,t$), MILU($p$),
LU from MUMPS, SuperLU or UMFPACK
(plus triangular solve). See Note for details on hybrid
(plus triangular solve), Approximate
Inverses INVK($p,q$), INVT($p_1,p2,t_1,t_2$) and
AINV($t$); note that approximate inverses
are specifically suited for GPUs since they
do not employ triangular system solve
kernels,
see~\cite{BERTACCINIFILIPPONE}. See Note
for details on hybrid
Gauss-Seidel. \\ \hline
\fortinline|'SMOOTHER_SWEEPS'| & \fortinline|integer|
& Any integer \par number~$\ge 0$

Loading…
Cancel
Save