|
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
|
|
"http://www.w3.org/TR/html4/loose.dtd">
|
|
|
|
<html >
|
|
|
|
<head><title>psb_scatter — Scatter Global Dense Matrix</title>
|
|
|
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
|
|
|
<meta name="generator" content="TeX4ht (http://www.tug.org/tex4ht/)">
|
|
|
|
<meta name="originator" content="TeX4ht (http://www.tug.org/tex4ht/)">
|
|
|
|
<!-- html,3 -->
|
|
|
|
<meta name="src" content="userhtml.tex">
|
|
|
|
<link rel="stylesheet" type="text/css" href="userhtml.css">
|
|
|
|
</head><body
|
|
|
|
>
|
|
|
|
<!--l. 451--><div class="crosslinks"><p class="noindent">[<a
|
|
|
|
href="userhtmlsu28.html" >prev</a>] [<a
|
|
|
|
href="userhtmlsu28.html#tailuserhtmlsu28.html" >prev-tail</a>] [<a
|
|
|
|
href="userhtmlsu26.html#tailuserhtmlsu29.html">tail</a>] [<a
|
|
|
|
href="userhtmlsu28.html#userhtmlsu31.html" >up</a>] </p></div>
|
|
|
|
<h4 class="subsectionHead"><span class="titlemark">5.4 </span> <a
|
|
|
|
id="x39-760005.4"></a>psb_scatter — Scatter Global Dense Matrix</h4>
|
|
|
|
<!--l. 453--><p class="noindent" >These subroutines scatters the portions of global dense matrix owned by a process to
|
|
|
|
all the processes in the processes grid.
|
|
|
|
<center class="par-math-display" >
|
|
|
|
<img
|
|
|
|
src="userhtml28x.png" alt="loc-xi ← scatter(glob-x)
|
|
|
|
" class="par-math-display" ></center>
|
|
|
|
<!--l. 456--><p class="nopar" > where:
|
|
|
|
<dl class="description"><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmmi-10">glob</span>_<span
|
|
|
|
class="cmmi-10">x</span> </dt><dd
|
|
|
|
class="description">is the global matrix <span
|
|
|
|
class="cmmi-10">glob</span>_<span
|
|
|
|
class="cmmi-10">x</span><sub><span
|
|
|
|
class="cmr-7">1:</span><span
|
|
|
|
class="cmmi-7">m,</span><span
|
|
|
|
class="cmr-7">1:</span><span
|
|
|
|
class="cmmi-7">n</span></sub>
|
|
|
|
</dd><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmmi-10">loc</span>_<span
|
|
|
|
class="cmmi-10">x</span><sub><span
|
|
|
|
class="cmmi-7">i</span></sub> </dt><dd
|
|
|
|
class="description">is the local portion of global dense matrix on process <span
|
|
|
|
class="cmmi-10">i</span>.
|
|
|
|
</dd><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmmi-10">scatter</span> </dt><dd
|
|
|
|
class="description">is the scatter function.</dd></dl>
|
|
|
|
<div class="table">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!--l. 465--><p class="indent" > <a
|
|
|
|
id="x39-76001r20"></a><hr class="float"><div class="float"
|
|
|
|
>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="center"
|
|
|
|
>
|
|
|
|
<!--l. 466--><p class="noindent" >
|
|
|
|
<div class="tabular"> <table id="TBL-22" class="tabular"
|
|
|
|
cellspacing="0" cellpadding="0"
|
|
|
|
><colgroup id="TBL-22-1g"><col
|
|
|
|
id="TBL-22-1"><col
|
|
|
|
id="TBL-22-2"></colgroup><tr
|
|
|
|
class="hline"><td><hr></td><td><hr></td></tr><tr
|
|
|
|
style="vertical-align:baseline;" id="TBL-22-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-1-1"
|
|
|
|
class="td11"><span
|
|
|
|
class="cmmi-10">x</span><sub><span
|
|
|
|
class="cmmi-7">i</span></sub><span
|
|
|
|
class="cmmi-10">,y </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-22-1-2"
|
|
|
|
class="td11"><span
|
|
|
|
class="cmbx-10">Subroutine</span></td>
|
|
|
|
</tr><tr
|
|
|
|
class="hline"><td><hr></td><td><hr></td></tr><tr
|
|
|
|
style="vertical-align:baseline;" id="TBL-22-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-2-1"
|
|
|
|
class="td11">Integer </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-2-2"
|
|
|
|
class="td11">psb_scatter </td>
|
|
|
|
</tr><tr
|
|
|
|
style="vertical-align:baseline;" id="TBL-22-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-3-1"
|
|
|
|
class="td11">Short Precision Real </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-3-2"
|
|
|
|
class="td11">psb_scatter </td>
|
|
|
|
</tr><tr
|
|
|
|
style="vertical-align:baseline;" id="TBL-22-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-4-1"
|
|
|
|
class="td11">Long Precision Real </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-4-2"
|
|
|
|
class="td11">psb_scatter </td>
|
|
|
|
</tr><tr
|
|
|
|
style="vertical-align:baseline;" id="TBL-22-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-5-1"
|
|
|
|
class="td11">Short Precision Complex</td><td style="white-space:nowrap; text-align:left;" id="TBL-22-5-2"
|
|
|
|
class="td11">psb_scatter </td>
|
|
|
|
</tr><tr
|
|
|
|
style="vertical-align:baseline;" id="TBL-22-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-6-1"
|
|
|
|
class="td11">Long Precision Complex </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-6-2"
|
|
|
|
class="td11">psb_scatter </td>
|
|
|
|
</tr><tr
|
|
|
|
class="hline"><td><hr></td><td><hr></td></tr><tr
|
|
|
|
style="vertical-align:baseline;" id="TBL-22-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-7-1"
|
|
|
|
class="td11"> </td></tr></table></div></div>
|
|
|
|
<br /> <div class="caption"
|
|
|
|
><span class="id">Table 20: </span><span
|
|
|
|
class="content">Data types</span></div><!--tex4ht:label?: x39-76001r20 -->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div><hr class="endfloat" />
|
|
|
|
</div>
|
|
|
|
<!--l. 482--><p class="indent" > <span class="lstinline"></span><span
|
|
|
|
class="cmtt-10">call</span><span
|
|
|
|
class="cmtt-10"> </span><span
|
|
|
|
class="cmtt-10">psb_scatter</span><span
|
|
|
|
class="cmtt-10">(</span><span
|
|
|
|
class="cmtt-10">glob_x</span><span
|
|
|
|
class="cmtt-10">,</span><span
|
|
|
|
class="cmtt-10"> </span><span
|
|
|
|
class="cmtt-10">loc_x</span><span
|
|
|
|
class="cmtt-10">,</span><span
|
|
|
|
class="cmtt-10"> </span><span
|
|
|
|
class="cmtt-10">desc_a</span><span
|
|
|
|
class="cmtt-10">,</span><span
|
|
|
|
class="cmtt-10"> </span><span
|
|
|
|
class="cmtt-10">info</span><span
|
|
|
|
class="cmtt-10">,</span><span
|
|
|
|
class="cmtt-10"> </span><span
|
|
|
|
class="cmtt-10">root</span><span
|
|
|
|
class="cmtt-10">,</span><span
|
|
|
|
class="cmtt-10"> </span><span
|
|
|
|
class="cmtt-10">mold</span><span
|
|
|
|
class="cmtt-10">)</span>
|
|
|
|
<dl class="description"><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmbx-10">Type:</span> </dt><dd
|
|
|
|
class="description">Synchronous.
|
|
|
|
</dd><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmbx-10">On Entry</span> </dt><dd
|
|
|
|
class="description">
|
|
|
|
</dd><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmbx-10">glob</span><span
|
|
|
|
class="cmbx-10">_x</span> </dt><dd
|
|
|
|
class="description">The array that must be scattered into local pieces.<br
|
|
|
|
class="newline" />Scope: <span
|
|
|
|
class="cmbx-10">global </span><br
|
|
|
|
class="newline" />Type: <span
|
|
|
|
class="cmbx-10">required</span><br
|
|
|
|
class="newline" />Intent: <span
|
|
|
|
class="cmbx-10">in</span>.<br
|
|
|
|
class="newline" />Specified as: a rank one or two array.
|
|
|
|
</dd><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmbx-10">desc</span><span
|
|
|
|
class="cmbx-10">_a</span> </dt><dd
|
|
|
|
class="description">contains data structures for communications.<br
|
|
|
|
class="newline" />Scope: <span
|
|
|
|
class="cmbx-10">local </span><br
|
|
|
|
class="newline" />Type: <span
|
|
|
|
class="cmbx-10">required</span><br
|
|
|
|
class="newline" />Intent: <span
|
|
|
|
class="cmbx-10">in</span>.<br
|
|
|
|
class="newline" />Specified as: a structured data of type <a
|
|
|
|
href="userhtmlsu5.html#descdata"><span
|
|
|
|
class="cmtt-10">psb</span><span
|
|
|
|
class="cmtt-10">_desc</span><span
|
|
|
|
class="cmtt-10">_type</span></a>.
|
|
|
|
</dd><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmbx-10">root</span> </dt><dd
|
|
|
|
class="description">The process that holds the global copy. If <span
|
|
|
|
class="cmmi-10">root </span>= <span
|
|
|
|
class="cmsy-10">-</span>1 all the processes have
|
|
|
|
a copy of the global vector.<br
|
|
|
|
class="newline" />Scope: <span
|
|
|
|
class="cmbx-10">global </span><br
|
|
|
|
class="newline" />Type: <span
|
|
|
|
class="cmbx-10">optional</span><br
|
|
|
|
class="newline" />Intent: <span
|
|
|
|
class="cmbx-10">in</span>.<br
|
|
|
|
class="newline" />Specified as: an integer variable <span
|
|
|
|
class="cmsy-10">-</span>1 <span
|
|
|
|
class="cmsy-10">≤ </span><span
|
|
|
|
class="cmmi-10">root </span><span
|
|
|
|
class="cmsy-10">≤ </span><span
|
|
|
|
class="cmmi-10">np </span><span
|
|
|
|
class="cmsy-10">- </span>1, default <span class="lstinline"></span><span
|
|
|
|
class="cmtt-10">psb_root_</span>,
|
|
|
|
i.e. process 0.
|
|
|
|
</dd><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmbx-10">mold</span> </dt><dd
|
|
|
|
class="description">The desired dynamic type for the internal vector storage.<br
|
|
|
|
class="newline" />Scope: <span
|
|
|
|
class="cmbx-10">local</span>.<br
|
|
|
|
class="newline" />Type: <span
|
|
|
|
class="cmbx-10">optional</span>.<br
|
|
|
|
class="newline" />Intent: <span
|
|
|
|
class="cmbx-10">in</span>.<br
|
|
|
|
class="newline" />Specified as: an object of a class derived from <a
|
|
|
|
id="vbasedata"><span
|
|
|
|
class="cmtt-10">psb</span><span
|
|
|
|
class="cmtt-10">_T</span><span
|
|
|
|
class="cmtt-10">_base</span><span
|
|
|
|
class="cmtt-10">_vect</span><span
|
|
|
|
class="cmtt-10">_type</span></a>;
|
|
|
|
this is only allowed when loc_x is of type <a
|
|
|
|
href="userhtmlsu7.html#vdata"><span
|
|
|
|
class="cmtt-10">psb</span><span
|
|
|
|
class="cmtt-10">_T</span><span
|
|
|
|
class="cmtt-10">_vect</span><span
|
|
|
|
class="cmtt-10">_type</span></a>.
|
|
|
|
</dd><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmbx-10">On Return</span> </dt><dd
|
|
|
|
class="description">
|
|
|
|
</dd><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmbx-10">loc</span><span
|
|
|
|
class="cmbx-10">_x</span> </dt><dd
|
|
|
|
class="description">the local portion of global dense matrix <span
|
|
|
|
class="cmmi-10">glob</span>_<span
|
|
|
|
class="cmmi-10">x</span>. <br
|
|
|
|
class="newline" />Scope: <span
|
|
|
|
class="cmbx-10">local </span><br
|
|
|
|
class="newline" />Type: <span
|
|
|
|
class="cmbx-10">required</span><br
|
|
|
|
class="newline" />Intent: <span
|
|
|
|
class="cmbx-10">out</span>.<br
|
|
|
|
class="newline" />Specified as: a rank one or two ALLOCATABLE array or an object of type
|
|
|
|
<a
|
|
|
|
href="userhtmlsu7.html#vdata"><span
|
|
|
|
class="cmtt-10">psb</span><span
|
|
|
|
class="cmtt-10">_T</span><span
|
|
|
|
class="cmtt-10">_vect</span><span
|
|
|
|
class="cmtt-10">_type</span></a> containing numbers of the type indicated in Table <a
|
|
|
|
href="#x39-76001r20">20<!--tex4ht:ref: tab:scatter --></a>.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</dd><dt class="description">
|
|
|
|
<span
|
|
|
|
class="cmbx-10">info</span> </dt><dd
|
|
|
|
class="description">Error code.<br
|
|
|
|
class="newline" />Scope: <span
|
|
|
|
class="cmbx-10">local </span><br
|
|
|
|
class="newline" />Type: <span
|
|
|
|
class="cmbx-10">required </span><br
|
|
|
|
class="newline" />Intent: <span
|
|
|
|
class="cmbx-10">out</span>.<br
|
|
|
|
class="newline" />An integer value; 0 means no error has been detected.</dd></dl>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
|
|
|
|
href="userhtmlsu28.html" >prev</a>] [<a
|
|
|
|
href="userhtmlsu28.html#tailuserhtmlsu28.html" >prev-tail</a>] [<a
|
|
|
|
href="userhtmlsu29.html" >front</a>] [<a
|
|
|
|
href="userhtmlsu28.html#userhtmlsu31.html" >up</a>] </p></div>
|
|
|
|
<!--l. 1--><p class="indent" > <a
|
|
|
|
id="tailuserhtmlsu29.html"></a>
|
|
|
|
</body></html>
|