1 | \hypertarget{namespacemod__oasis__mpi}{}\section{mod\+\_\+oasis\+\_\+mpi Module Reference} |
---|
2 | \label{namespacemod__oasis__mpi}\index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
3 | |
---|
4 | |
---|
5 | Provides a generic and simpler interface into M\+PI calls for O\+A\+S\+IS. |
---|
6 | |
---|
7 | |
---|
8 | \subsection*{Data Types} |
---|
9 | \begin{DoxyCompactItemize} |
---|
10 | \item |
---|
11 | interface \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__bcast}{oasis\+\_\+mpi\+\_\+bcast} |
---|
12 | \begin{DoxyCompactList}\small\item\em Generic overloaded interface into M\+PI broadcast. \end{DoxyCompactList}\item |
---|
13 | interface \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__gatherv}{oasis\+\_\+mpi\+\_\+gatherv} |
---|
14 | \begin{DoxyCompactList}\small\item\em Generic interfaces into an M\+PI vector gather. \end{DoxyCompactList}\item |
---|
15 | interface \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__gathscatvinit}{oasis\+\_\+mpi\+\_\+gathscatvinit} |
---|
16 | \begin{DoxyCompactList}\small\item\em Generic interface to oasis\+\_\+mpi\+\_\+gath\+Scat\+V\+Init. \end{DoxyCompactList}\item |
---|
17 | interface \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__max}{oasis\+\_\+mpi\+\_\+max} |
---|
18 | \begin{DoxyCompactList}\small\item\em Generic overloaded interface into M\+PI max reduction. \end{DoxyCompactList}\item |
---|
19 | interface \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__min}{oasis\+\_\+mpi\+\_\+min} |
---|
20 | \begin{DoxyCompactList}\small\item\em Generic overloaded interface into M\+PI min reduction. \end{DoxyCompactList}\item |
---|
21 | interface \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__recv}{oasis\+\_\+mpi\+\_\+recv} |
---|
22 | \begin{DoxyCompactList}\small\item\em Generic overloaded interface into M\+PI receive. \end{DoxyCompactList}\item |
---|
23 | interface \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__scatterv}{oasis\+\_\+mpi\+\_\+scatterv} |
---|
24 | \begin{DoxyCompactList}\small\item\em Generic interfaces into an M\+PI vector scatter. \end{DoxyCompactList}\item |
---|
25 | interface \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__send}{oasis\+\_\+mpi\+\_\+send} |
---|
26 | \begin{DoxyCompactList}\small\item\em Generic overloaded interface into M\+PI send. \end{DoxyCompactList}\item |
---|
27 | interface \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__sum}{oasis\+\_\+mpi\+\_\+sum} |
---|
28 | \begin{DoxyCompactList}\small\item\em Generic overloaded interface into M\+PI sum reduction. \end{DoxyCompactList}\end{DoxyCompactItemize} |
---|
29 | \subsection*{Functions/\+Subroutines} |
---|
30 | \begin{DoxyCompactItemize} |
---|
31 | \item |
---|
32 | subroutine, public \hyperlink{namespacemod__oasis__mpi_a15ba68764a1f4dd07d403e46afae824c}{oasis\+\_\+mpi\+\_\+chkerr} (rcode, string) |
---|
33 | \begin{DoxyCompactList}\small\item\em Checks M\+PI error codes and aborts. \end{DoxyCompactList}\item |
---|
34 | subroutine \hyperlink{namespacemod__oasis__mpi_aa5078962eee157f52878f711c0a29afb}{oasis\+\_\+mpi\+\_\+sendi0} (lvec, pid, tag, comm, string) |
---|
35 | \begin{DoxyCompactList}\small\item\em Send a scalar integer. \end{DoxyCompactList}\item |
---|
36 | subroutine \hyperlink{namespacemod__oasis__mpi_aab4cc0d2b50e8e73697e6d88d23b03cd}{oasis\+\_\+mpi\+\_\+sendi1} (lvec, pid, tag, comm, string) |
---|
37 | \begin{DoxyCompactList}\small\item\em Send an array of 1D integers. \end{DoxyCompactList}\item |
---|
38 | subroutine \hyperlink{namespacemod__oasis__mpi_ab38f15fbce57555ea66ccbc1aa477dd1}{oasis\+\_\+mpi\+\_\+sendr0} (lvec, pid, tag, comm, string) |
---|
39 | \begin{DoxyCompactList}\small\item\em Send a scalar double. \end{DoxyCompactList}\item |
---|
40 | subroutine \hyperlink{namespacemod__oasis__mpi_a948cd001c0955ae19f4b410d4cca9f9b}{oasis\+\_\+mpi\+\_\+sendr1} (lvec, pid, tag, comm, string) |
---|
41 | \begin{DoxyCompactList}\small\item\em Send an array of 1D doubles. \end{DoxyCompactList}\item |
---|
42 | subroutine \hyperlink{namespacemod__oasis__mpi_ac8809a8b29b3ffa246612b9c25cd05eb}{oasis\+\_\+mpi\+\_\+sendr3} (array, pid, tag, comm, string) |
---|
43 | \begin{DoxyCompactList}\small\item\em Send an array of 3D doubles. \end{DoxyCompactList}\item |
---|
44 | subroutine \hyperlink{namespacemod__oasis__mpi_ad89796f10a2225d4930cdec65546cf98}{oasis\+\_\+mpi\+\_\+recvi0} (lvec, pid, tag, comm, string) |
---|
45 | \begin{DoxyCompactList}\small\item\em Receive a scalar integer. \end{DoxyCompactList}\item |
---|
46 | subroutine \hyperlink{namespacemod__oasis__mpi_acf13ea626ed09fe98123f23d0990879d}{oasis\+\_\+mpi\+\_\+recvi1} (lvec, pid, tag, comm, string) |
---|
47 | \begin{DoxyCompactList}\small\item\em Receive an array of 1D integers. \end{DoxyCompactList}\item |
---|
48 | subroutine \hyperlink{namespacemod__oasis__mpi_a2578d560c80d608340b5a49b327642ba}{oasis\+\_\+mpi\+\_\+recvr0} (lvec, pid, tag, comm, string) |
---|
49 | \begin{DoxyCompactList}\small\item\em Receive a scalar double. \end{DoxyCompactList}\item |
---|
50 | subroutine \hyperlink{namespacemod__oasis__mpi_a2bbd8de453167b4c73aa09c3c44c0ca8}{oasis\+\_\+mpi\+\_\+recvr1} (lvec, pid, tag, comm, string) |
---|
51 | \begin{DoxyCompactList}\small\item\em Receive an array of 1D doubles. \end{DoxyCompactList}\item |
---|
52 | subroutine \hyperlink{namespacemod__oasis__mpi_a2c3b82d2346a69cd20be3d35c5e70be6}{oasis\+\_\+mpi\+\_\+recvr3} (array, pid, tag, comm, string) |
---|
53 | \begin{DoxyCompactList}\small\item\em Receive an array of 3D doubles. \end{DoxyCompactList}\item |
---|
54 | subroutine \hyperlink{namespacemod__oasis__mpi_af8bc029a22d59f1188b7f8a1a2645c40}{oasis\+\_\+mpi\+\_\+bcasti0} (vec, comm, string, pebcast) |
---|
55 | \begin{DoxyCompactList}\small\item\em Broadcast a scalar integer. \end{DoxyCompactList}\item |
---|
56 | subroutine \hyperlink{namespacemod__oasis__mpi_a1426590a36b24f1770381b9c35563cff}{oasis\+\_\+mpi\+\_\+bcastl0} (vec, comm, string, pebcast) |
---|
57 | \begin{DoxyCompactList}\small\item\em Broadcast a scalar logical. \end{DoxyCompactList}\item |
---|
58 | subroutine \hyperlink{namespacemod__oasis__mpi_a6d10e1673748a91dc7ec955ef16d771a}{oasis\+\_\+mpi\+\_\+bcastc0} (vec, comm, string, pebcast) |
---|
59 | \begin{DoxyCompactList}\small\item\em Broadcast a character string. \end{DoxyCompactList}\item |
---|
60 | subroutine \hyperlink{namespacemod__oasis__mpi_a99b3a1ab4c7617b5bc83d3c6360aaef3}{oasis\+\_\+mpi\+\_\+bcastc1} (vec, comm, string, pebcast) |
---|
61 | \begin{DoxyCompactList}\small\item\em Broadcast an array of 1D character strings. \end{DoxyCompactList}\item |
---|
62 | subroutine \hyperlink{namespacemod__oasis__mpi_a3b21bebef1b56b31bd6d07e83d7a59a6}{oasis\+\_\+mpi\+\_\+bcastr0} (vec, comm, string, pebcast) |
---|
63 | \begin{DoxyCompactList}\small\item\em Broadcast a scalar double. \end{DoxyCompactList}\item |
---|
64 | subroutine \hyperlink{namespacemod__oasis__mpi_a6f9140637f29d3939dc9c53930101e2e}{oasis\+\_\+mpi\+\_\+bcasti1} (vec, comm, string, pebcast) |
---|
65 | \begin{DoxyCompactList}\small\item\em Broadcast an array of 1D integers. \end{DoxyCompactList}\item |
---|
66 | subroutine \hyperlink{namespacemod__oasis__mpi_a8b03787549fba5faff499c946d521db0}{oasis\+\_\+mpi\+\_\+bcastl1} (vec, comm, string, pebcast) |
---|
67 | \begin{DoxyCompactList}\small\item\em Broadcast an array of 1D logicals. \end{DoxyCompactList}\item |
---|
68 | subroutine \hyperlink{namespacemod__oasis__mpi_a6f12178b027ff30cb87f9f8313b459d5}{oasis\+\_\+mpi\+\_\+bcastr1} (vec, comm, string, pebcast) |
---|
69 | \begin{DoxyCompactList}\small\item\em Broadcast an array of 1D doubles. \end{DoxyCompactList}\item |
---|
70 | subroutine \hyperlink{namespacemod__oasis__mpi_ab14018fe59cd737067e4f4202a3eeb39}{oasis\+\_\+mpi\+\_\+bcastr2} (arr, comm, string, pebcast) |
---|
71 | \begin{DoxyCompactList}\small\item\em Broadcast an array of 2D doubles. \end{DoxyCompactList}\item |
---|
72 | subroutine \hyperlink{namespacemod__oasis__mpi_ad6918adccdd62a278066f41b0b8edf57}{oasis\+\_\+mpi\+\_\+bcasti2} (arr, comm, string, pebcast) |
---|
73 | \begin{DoxyCompactList}\small\item\em Broadcast an array of 2D integers. \end{DoxyCompactList}\item |
---|
74 | subroutine \hyperlink{namespacemod__oasis__mpi_ac01edbda3e33b1feff9b797f83f82e8c}{oasis\+\_\+mpi\+\_\+bcastr3} (arr, comm, string, pebcast) |
---|
75 | \begin{DoxyCompactList}\small\item\em Broadcast an array of 3D doubles. \end{DoxyCompactList}\item |
---|
76 | subroutine \hyperlink{namespacemod__oasis__mpi_a68afb4ab4136545faeaa2c37a1eb294a}{oasis\+\_\+mpi\+\_\+gathscatvinitr1} (comm, rootid, loc\+Arr, glob1\+D\+Arr, glob\+Size, displs, string) |
---|
77 | \begin{DoxyCompactList}\small\item\em Initialize variables for \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__gatherv}{oasis\+\_\+mpi\+\_\+gatherv} and \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__scatterv}{oasis\+\_\+mpi\+\_\+scatterv}. \end{DoxyCompactList}\item |
---|
78 | subroutine \hyperlink{namespacemod__oasis__mpi_a88a13ea3b4f96074669fdc872fe41728}{oasis\+\_\+mpi\+\_\+gathervr1} (locarr, loc\+Size, glob1\+D\+Arr, glob\+Size, displs, rootid, comm, string) |
---|
79 | \begin{DoxyCompactList}\small\item\em Gather a vector of distributed data to a rootid. \end{DoxyCompactList}\item |
---|
80 | subroutine \hyperlink{namespacemod__oasis__mpi_a9d0d807b92d39c9789eea4744d331612}{oasis\+\_\+mpi\+\_\+scattervr1} (locarr, loc\+Size, glob1\+Darr, glob\+Size, displs, rootid, comm, string) |
---|
81 | \begin{DoxyCompactList}\small\item\em Scatter a vector of global data from a rootid. \end{DoxyCompactList}\item |
---|
82 | subroutine \hyperlink{namespacemod__oasis__mpi_adbb3963310e45ac012e5e28f13d5781e}{oasis\+\_\+mpi\+\_\+sumi0} (lvec, gvec, comm, string, all) |
---|
83 | \begin{DoxyCompactList}\small\item\em Compute a global Sum for a scalar integer. \end{DoxyCompactList}\item |
---|
84 | subroutine \hyperlink{namespacemod__oasis__mpi_a507bb5e0ae088d68bb68c566e8965bef}{oasis\+\_\+mpi\+\_\+sumi1} (lvec, gvec, comm, string, all) |
---|
85 | \begin{DoxyCompactList}\small\item\em Compute a 1D array of global sums for an array of 1D integers. \end{DoxyCompactList}\item |
---|
86 | subroutine \hyperlink{namespacemod__oasis__mpi_ae4d2818f21f445e594aad97598f49d8e}{oasis\+\_\+mpi\+\_\+sumb0} (lvec, gvec, comm, string, all) |
---|
87 | \begin{DoxyCompactList}\small\item\em Compute a global sum for a scalar 8 byte integer. \end{DoxyCompactList}\item |
---|
88 | subroutine \hyperlink{namespacemod__oasis__mpi_a3f32594b15b9ae3629969839ab952012}{oasis\+\_\+mpi\+\_\+sumb1} (lvec, gvec, comm, string, all) |
---|
89 | \begin{DoxyCompactList}\small\item\em Compute a 1D array of global sums for an array of 1D 8 byte integers. \end{DoxyCompactList}\item |
---|
90 | subroutine \hyperlink{namespacemod__oasis__mpi_a02b0555479a3d54e1c3d42219af9b991}{oasis\+\_\+mpi\+\_\+sumr0} (lvec, gvec, comm, string, all) |
---|
91 | \begin{DoxyCompactList}\small\item\em Compute a global sum for a scalar double. \end{DoxyCompactList}\item |
---|
92 | subroutine \hyperlink{namespacemod__oasis__mpi_aac62148bc912b158aff769572f27b8d3}{oasis\+\_\+mpi\+\_\+sumr1} (lvec, gvec, comm, string, all) |
---|
93 | \begin{DoxyCompactList}\small\item\em Compute a 1D array of global sums for an array of 1D doubles. \end{DoxyCompactList}\item |
---|
94 | subroutine \hyperlink{namespacemod__oasis__mpi_afbc665ae71c97d0b0467323cd86a5973}{oasis\+\_\+mpi\+\_\+sumr2} (lvec, gvec, comm, string, all) |
---|
95 | \begin{DoxyCompactList}\small\item\em Compute a 2D array of global sums for an array of 2D doubles. \end{DoxyCompactList}\item |
---|
96 | subroutine \hyperlink{namespacemod__oasis__mpi_a41836fe23aeb81e65b4d24f6f0c90953}{oasis\+\_\+mpi\+\_\+sumr3} (lvec, gvec, comm, string, all) |
---|
97 | \begin{DoxyCompactList}\small\item\em Compute a 3D array of global sums for an array of 3D doubles. \end{DoxyCompactList}\item |
---|
98 | subroutine \hyperlink{namespacemod__oasis__mpi_a2901cf7eaf807b4df7bd82aefadfeed9}{oasis\+\_\+mpi\+\_\+sumq0} (lvec, gvec, comm, string, all) |
---|
99 | \begin{DoxyCompactList}\small\item\em Compute a global sum for a scalar quad. \end{DoxyCompactList}\item |
---|
100 | subroutine \hyperlink{namespacemod__oasis__mpi_a4a81062f1345805cdd828552272670c8}{oasis\+\_\+mpi\+\_\+sumq1} (lvec, gvec, comm, string, all) |
---|
101 | \begin{DoxyCompactList}\small\item\em Compute a 1D array of global sums for an array of 1D quads. \end{DoxyCompactList}\item |
---|
102 | subroutine \hyperlink{namespacemod__oasis__mpi_aa9a5264e64523ff85ffb37ddc3b405ae}{oasis\+\_\+mpi\+\_\+sumq2} (lvec, gvec, comm, string, all) |
---|
103 | \begin{DoxyCompactList}\small\item\em Compute a 2D array of global sums for an array of 2D quads. \end{DoxyCompactList}\item |
---|
104 | subroutine \hyperlink{namespacemod__oasis__mpi_a3f989a76dbe1896764d73ffea933130d}{oasis\+\_\+mpi\+\_\+sumq3} (lvec, gvec, comm, string, all) |
---|
105 | \begin{DoxyCompactList}\small\item\em Compute a 3D array of global sums for an array of 3D quads. \end{DoxyCompactList}\item |
---|
106 | subroutine \hyperlink{namespacemod__oasis__mpi_a2832568cd4d34db40cdcc39ffa876474}{oasis\+\_\+mpi\+\_\+mini0} (lvec, gvec, comm, string, all) |
---|
107 | \begin{DoxyCompactList}\small\item\em Compute a global minimum for a scalar integer. \end{DoxyCompactList}\item |
---|
108 | subroutine \hyperlink{namespacemod__oasis__mpi_aed0c20d56fdab764f0ad8e48e3a7209f}{oasis\+\_\+mpi\+\_\+mini1} (lvec, gvec, comm, string, all) |
---|
109 | \begin{DoxyCompactList}\small\item\em Compute an array of global minimums for an array of 1D integers. \end{DoxyCompactList}\item |
---|
110 | subroutine \hyperlink{namespacemod__oasis__mpi_af3628ad005b1a21e8f33e3dc2be38635}{oasis\+\_\+mpi\+\_\+minr0} (lvec, gvec, comm, string, all) |
---|
111 | \begin{DoxyCompactList}\small\item\em Compute an global minimum for a scalar double. \end{DoxyCompactList}\item |
---|
112 | subroutine \hyperlink{namespacemod__oasis__mpi_a29c460b836ae9ad77ee1ac21f684d188}{oasis\+\_\+mpi\+\_\+minr1} (lvec, gvec, comm, string, all) |
---|
113 | \begin{DoxyCompactList}\small\item\em Compute an array of global minimums for an array of 1D doubles. \end{DoxyCompactList}\item |
---|
114 | subroutine \hyperlink{namespacemod__oasis__mpi_a0b469347d40c78c317042fa069d9baa5}{oasis\+\_\+mpi\+\_\+maxi0} (lvec, gvec, comm, string, all) |
---|
115 | \begin{DoxyCompactList}\small\item\em Compute a global maximum for a scalar integer. \end{DoxyCompactList}\item |
---|
116 | subroutine \hyperlink{namespacemod__oasis__mpi_a2ba8d76b016ddde4013aecc2ca0b1d9f}{oasis\+\_\+mpi\+\_\+maxi1} (lvec, gvec, comm, string, all) |
---|
117 | \begin{DoxyCompactList}\small\item\em Compute an array of global maximums for an array of 1D integers. \end{DoxyCompactList}\item |
---|
118 | subroutine \hyperlink{namespacemod__oasis__mpi_a7f46e23956ff948e039c5c1cdde0f6f3}{oasis\+\_\+mpi\+\_\+maxr0} (lvec, gvec, comm, string, all) |
---|
119 | \begin{DoxyCompactList}\small\item\em Compute a global maximum for a scalar double. \end{DoxyCompactList}\item |
---|
120 | subroutine \hyperlink{namespacemod__oasis__mpi_ae57151fc4714e33d7e0e1cf0aa65ae64}{oasis\+\_\+mpi\+\_\+maxr1} (lvec, gvec, comm, string, all) |
---|
121 | \begin{DoxyCompactList}\small\item\em Compute an array of global maximums for an array of 1D doubles. \end{DoxyCompactList}\item |
---|
122 | subroutine, public \hyperlink{namespacemod__oasis__mpi_adac784196d7af85611752214137dd4db}{oasis\+\_\+mpi\+\_\+commsize} (comm, size, string) |
---|
123 | \begin{DoxyCompactList}\small\item\em Get the total number of tasks associated with a communicator. \end{DoxyCompactList}\item |
---|
124 | subroutine, public \hyperlink{namespacemod__oasis__mpi_a2690a841a331f4398cc4b5a244bbc52e}{oasis\+\_\+mpi\+\_\+commrank} (comm, rank, string) |
---|
125 | \begin{DoxyCompactList}\small\item\em Get the rank (task ID) for a task in a communicator. \end{DoxyCompactList}\item |
---|
126 | subroutine, public \hyperlink{namespacemod__oasis__mpi_a384f170e63ac03f25d3bd549245b43f3}{oasis\+\_\+mpi\+\_\+initialized} (flag, string) |
---|
127 | \begin{DoxyCompactList}\small\item\em Check whether M\+PI has been initialized. \end{DoxyCompactList}\item |
---|
128 | subroutine, public \hyperlink{namespacemod__oasis__mpi_aa3786c2cab131c3834583e7943ba28c8}{oasis\+\_\+mpi\+\_\+wtime} (wtime) |
---|
129 | \begin{DoxyCompactList}\small\item\em Return a timestamp from M\+P\+I\+\_\+\+W\+T\+I\+ME. \end{DoxyCompactList}\item |
---|
130 | subroutine, public \hyperlink{namespacemod__oasis__mpi_a5b21b6d8732d5f7b70d8b20cefe0072f}{oasis\+\_\+mpi\+\_\+abort} (string, rcode) |
---|
131 | \begin{DoxyCompactList}\small\item\em Write error messages and Call M\+P\+I\+\_\+\+A\+B\+O\+RT. \end{DoxyCompactList}\item |
---|
132 | subroutine, public \hyperlink{namespacemod__oasis__mpi_aaf477847380fbbbc1341520b0b3e66da}{oasis\+\_\+mpi\+\_\+barrier} (comm, string) |
---|
133 | \begin{DoxyCompactList}\small\item\em Call M\+P\+I\+\_\+\+B\+A\+R\+R\+I\+ER for a particular communicator. \end{DoxyCompactList}\item |
---|
134 | subroutine, public \hyperlink{namespacemod__oasis__mpi_aaf45f20e0000b32e71ec9ea8e806f57c}{oasis\+\_\+mpi\+\_\+init} (string) |
---|
135 | \begin{DoxyCompactList}\small\item\em Call M\+P\+I\+\_\+\+I\+N\+IT. \end{DoxyCompactList}\item |
---|
136 | subroutine, public \hyperlink{namespacemod__oasis__mpi_a0a601a3f718c0704db99a21b2c43fbcd}{oasis\+\_\+mpi\+\_\+finalize} (string) |
---|
137 | \begin{DoxyCompactList}\small\item\em Call M\+P\+I\+\_\+\+F\+I\+N\+A\+L\+ZE. \end{DoxyCompactList}\item |
---|
138 | subroutine, public \hyperlink{namespacemod__oasis__mpi_a95f6540150f7ab4e64697d2eabc2bf79}{oasis\+\_\+mpi\+\_\+reducelists} (linp1, comm, cntout, lout1, callstr, fastcheck, fastcheckout, linp2, lout2, spval2, linp3, lout3, spval3, linp4, lout4, spval4) |
---|
139 | \begin{DoxyCompactList}\small\item\em Custom method for reducing M\+PI lists across pes for O\+A\+S\+IS. \end{DoxyCompactList}\end{DoxyCompactItemize} |
---|
140 | |
---|
141 | |
---|
142 | \subsection{Detailed Description} |
---|
143 | Provides a generic and simpler interface into M\+PI calls for O\+A\+S\+IS. |
---|
144 | |
---|
145 | \subsection{Function/\+Subroutine Documentation} |
---|
146 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a5b21b6d8732d5f7b70d8b20cefe0072f}\label{namespacemod__oasis__mpi_a5b21b6d8732d5f7b70d8b20cefe0072f}} |
---|
147 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+abort@{oasis\+\_\+mpi\+\_\+abort}} |
---|
148 | \index{oasis\+\_\+mpi\+\_\+abort@{oasis\+\_\+mpi\+\_\+abort}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
149 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+abort()}{oasis\_mpi\_abort()}} |
---|
150 | {\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+abort (\begin{DoxyParamCaption}\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer, intent(in), optional}]{rcode }\end{DoxyParamCaption})} |
---|
151 | |
---|
152 | |
---|
153 | |
---|
154 | Write error messages and Call M\+P\+I\+\_\+\+A\+B\+O\+RT. |
---|
155 | |
---|
156 | |
---|
157 | \begin{DoxyParams}[1]{Parameters} |
---|
158 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
159 | \hline |
---|
160 | \mbox{\tt in} & {\em rcode} & optional code \\ |
---|
161 | \hline |
---|
162 | \end{DoxyParams} |
---|
163 | |
---|
164 | |
---|
165 | Definition at line 2654 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
166 | |
---|
167 | \mbox{\Hypertarget{namespacemod__oasis__mpi_aaf477847380fbbbc1341520b0b3e66da}\label{namespacemod__oasis__mpi_aaf477847380fbbbc1341520b0b3e66da}} |
---|
168 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+barrier@{oasis\+\_\+mpi\+\_\+barrier}} |
---|
169 | \index{oasis\+\_\+mpi\+\_\+barrier@{oasis\+\_\+mpi\+\_\+barrier}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
170 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+barrier()}{oasis\_mpi\_barrier()}} |
---|
171 | {\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+barrier (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})} |
---|
172 | |
---|
173 | |
---|
174 | |
---|
175 | Call M\+P\+I\+\_\+\+B\+A\+R\+R\+I\+ER for a particular communicator. |
---|
176 | |
---|
177 | |
---|
178 | \begin{DoxyParams}[1]{Parameters} |
---|
179 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
180 | \hline |
---|
181 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
182 | \hline |
---|
183 | \end{DoxyParams} |
---|
184 | |
---|
185 | |
---|
186 | Definition at line 2697 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
187 | |
---|
188 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a6d10e1673748a91dc7ec955ef16d771a}\label{namespacemod__oasis__mpi_a6d10e1673748a91dc7ec955ef16d771a}} |
---|
189 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcastc0@{oasis\+\_\+mpi\+\_\+bcastc0}} |
---|
190 | \index{oasis\+\_\+mpi\+\_\+bcastc0@{oasis\+\_\+mpi\+\_\+bcastc0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
191 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcastc0()}{oasis\_mpi\_bcastc0()}} |
---|
192 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcastc0 (\begin{DoxyParamCaption}\item[{character(len=$\ast$), intent(inout)}]{vec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
193 | |
---|
194 | |
---|
195 | |
---|
196 | Broadcast a character string. |
---|
197 | |
---|
198 | |
---|
199 | \begin{DoxyParams}[1]{Parameters} |
---|
200 | \mbox{\tt in,out} & {\em vec} & values to broadcast\\ |
---|
201 | \hline |
---|
202 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
203 | \hline |
---|
204 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
205 | \hline |
---|
206 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
207 | \hline |
---|
208 | \end{DoxyParams} |
---|
209 | |
---|
210 | |
---|
211 | Definition at line 659 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
212 | |
---|
213 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a99b3a1ab4c7617b5bc83d3c6360aaef3}\label{namespacemod__oasis__mpi_a99b3a1ab4c7617b5bc83d3c6360aaef3}} |
---|
214 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcastc1@{oasis\+\_\+mpi\+\_\+bcastc1}} |
---|
215 | \index{oasis\+\_\+mpi\+\_\+bcastc1@{oasis\+\_\+mpi\+\_\+bcastc1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
216 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcastc1()}{oasis\_mpi\_bcastc1()}} |
---|
217 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcastc1 (\begin{DoxyParamCaption}\item[{character(len=$\ast$), dimension(\+:), intent(inout)}]{vec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
218 | |
---|
219 | |
---|
220 | |
---|
221 | Broadcast an array of 1D character strings. |
---|
222 | |
---|
223 | |
---|
224 | \begin{DoxyParams}[1]{Parameters} |
---|
225 | \mbox{\tt in,out} & {\em vec} & values to broadcast\\ |
---|
226 | \hline |
---|
227 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
228 | \hline |
---|
229 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
230 | \hline |
---|
231 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
232 | \hline |
---|
233 | \end{DoxyParams} |
---|
234 | |
---|
235 | |
---|
236 | Definition at line 701 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
237 | |
---|
238 | \mbox{\Hypertarget{namespacemod__oasis__mpi_af8bc029a22d59f1188b7f8a1a2645c40}\label{namespacemod__oasis__mpi_af8bc029a22d59f1188b7f8a1a2645c40}} |
---|
239 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcasti0@{oasis\+\_\+mpi\+\_\+bcasti0}} |
---|
240 | \index{oasis\+\_\+mpi\+\_\+bcasti0@{oasis\+\_\+mpi\+\_\+bcasti0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
241 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcasti0()}{oasis\_mpi\_bcasti0()}} |
---|
242 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcasti0 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(inout)}]{vec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
243 | |
---|
244 | |
---|
245 | |
---|
246 | Broadcast a scalar integer. |
---|
247 | |
---|
248 | |
---|
249 | \begin{DoxyParams}[1]{Parameters} |
---|
250 | \mbox{\tt in,out} & {\em vec} & values to broadcast\\ |
---|
251 | \hline |
---|
252 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
253 | \hline |
---|
254 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
255 | \hline |
---|
256 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
257 | \hline |
---|
258 | \end{DoxyParams} |
---|
259 | |
---|
260 | |
---|
261 | Definition at line 575 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
262 | |
---|
263 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a6f9140637f29d3939dc9c53930101e2e}\label{namespacemod__oasis__mpi_a6f9140637f29d3939dc9c53930101e2e}} |
---|
264 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcasti1@{oasis\+\_\+mpi\+\_\+bcasti1}} |
---|
265 | \index{oasis\+\_\+mpi\+\_\+bcasti1@{oasis\+\_\+mpi\+\_\+bcasti1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
266 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcasti1()}{oasis\_mpi\_bcasti1()}} |
---|
267 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcasti1 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(inout)}]{vec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
268 | |
---|
269 | |
---|
270 | |
---|
271 | Broadcast an array of 1D integers. |
---|
272 | |
---|
273 | |
---|
274 | \begin{DoxyParams}[1]{Parameters} |
---|
275 | \mbox{\tt in,out} & {\em vec} & values to broadcast\\ |
---|
276 | \hline |
---|
277 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
278 | \hline |
---|
279 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
280 | \hline |
---|
281 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
282 | \hline |
---|
283 | \end{DoxyParams} |
---|
284 | |
---|
285 | |
---|
286 | Definition at line 785 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
287 | |
---|
288 | \mbox{\Hypertarget{namespacemod__oasis__mpi_ad6918adccdd62a278066f41b0b8edf57}\label{namespacemod__oasis__mpi_ad6918adccdd62a278066f41b0b8edf57}} |
---|
289 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcasti2@{oasis\+\_\+mpi\+\_\+bcasti2}} |
---|
290 | \index{oasis\+\_\+mpi\+\_\+bcasti2@{oasis\+\_\+mpi\+\_\+bcasti2}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
291 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcasti2()}{oasis\_mpi\_bcasti2()}} |
---|
292 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcasti2 (\begin{DoxyParamCaption}\item[{integer, dimension(\+:,\+:), intent(inout)}]{arr, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
293 | |
---|
294 | |
---|
295 | |
---|
296 | Broadcast an array of 2D integers. |
---|
297 | |
---|
298 | |
---|
299 | \begin{DoxyParams}[1]{Parameters} |
---|
300 | \mbox{\tt in,out} & {\em arr} & values to broadcast\\ |
---|
301 | \hline |
---|
302 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
303 | \hline |
---|
304 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
305 | \hline |
---|
306 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
307 | \hline |
---|
308 | \end{DoxyParams} |
---|
309 | |
---|
310 | |
---|
311 | Definition at line 955 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
312 | |
---|
313 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a1426590a36b24f1770381b9c35563cff}\label{namespacemod__oasis__mpi_a1426590a36b24f1770381b9c35563cff}} |
---|
314 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcastl0@{oasis\+\_\+mpi\+\_\+bcastl0}} |
---|
315 | \index{oasis\+\_\+mpi\+\_\+bcastl0@{oasis\+\_\+mpi\+\_\+bcastl0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
316 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcastl0()}{oasis\_mpi\_bcastl0()}} |
---|
317 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcastl0 (\begin{DoxyParamCaption}\item[{logical, intent(inout)}]{vec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
318 | |
---|
319 | |
---|
320 | |
---|
321 | Broadcast a scalar logical. |
---|
322 | |
---|
323 | |
---|
324 | \begin{DoxyParams}[1]{Parameters} |
---|
325 | \mbox{\tt in,out} & {\em vec} & values to broadcast\\ |
---|
326 | \hline |
---|
327 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
328 | \hline |
---|
329 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
330 | \hline |
---|
331 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
332 | \hline |
---|
333 | \end{DoxyParams} |
---|
334 | |
---|
335 | |
---|
336 | Definition at line 617 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
337 | |
---|
338 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a8b03787549fba5faff499c946d521db0}\label{namespacemod__oasis__mpi_a8b03787549fba5faff499c946d521db0}} |
---|
339 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcastl1@{oasis\+\_\+mpi\+\_\+bcastl1}} |
---|
340 | \index{oasis\+\_\+mpi\+\_\+bcastl1@{oasis\+\_\+mpi\+\_\+bcastl1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
341 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcastl1()}{oasis\_mpi\_bcastl1()}} |
---|
342 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcastl1 (\begin{DoxyParamCaption}\item[{logical, dimension(\+:), intent(inout)}]{vec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
343 | |
---|
344 | |
---|
345 | |
---|
346 | Broadcast an array of 1D logicals. |
---|
347 | |
---|
348 | |
---|
349 | \begin{DoxyParams}[1]{Parameters} |
---|
350 | \mbox{\tt in,out} & {\em vec} & values to broadcast\\ |
---|
351 | \hline |
---|
352 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
353 | \hline |
---|
354 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
355 | \hline |
---|
356 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
357 | \hline |
---|
358 | \end{DoxyParams} |
---|
359 | |
---|
360 | |
---|
361 | Definition at line 827 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
362 | |
---|
363 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a3b21bebef1b56b31bd6d07e83d7a59a6}\label{namespacemod__oasis__mpi_a3b21bebef1b56b31bd6d07e83d7a59a6}} |
---|
364 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcastr0@{oasis\+\_\+mpi\+\_\+bcastr0}} |
---|
365 | \index{oasis\+\_\+mpi\+\_\+bcastr0@{oasis\+\_\+mpi\+\_\+bcastr0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
366 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcastr0()}{oasis\_mpi\_bcastr0()}} |
---|
367 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcastr0 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), intent(inout)}]{vec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
368 | |
---|
369 | |
---|
370 | |
---|
371 | Broadcast a scalar double. |
---|
372 | |
---|
373 | |
---|
374 | \begin{DoxyParams}[1]{Parameters} |
---|
375 | \mbox{\tt in,out} & {\em vec} & values to broadcast\\ |
---|
376 | \hline |
---|
377 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
378 | \hline |
---|
379 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
380 | \hline |
---|
381 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
382 | \hline |
---|
383 | \end{DoxyParams} |
---|
384 | |
---|
385 | |
---|
386 | Definition at line 743 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
387 | |
---|
388 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a6f12178b027ff30cb87f9f8313b459d5}\label{namespacemod__oasis__mpi_a6f12178b027ff30cb87f9f8313b459d5}} |
---|
389 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcastr1@{oasis\+\_\+mpi\+\_\+bcastr1}} |
---|
390 | \index{oasis\+\_\+mpi\+\_\+bcastr1@{oasis\+\_\+mpi\+\_\+bcastr1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
391 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcastr1()}{oasis\_mpi\_bcastr1()}} |
---|
392 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcastr1 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(inout)}]{vec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
393 | |
---|
394 | |
---|
395 | |
---|
396 | Broadcast an array of 1D doubles. |
---|
397 | |
---|
398 | |
---|
399 | \begin{DoxyParams}[1]{Parameters} |
---|
400 | \mbox{\tt in,out} & {\em vec} & values to broadcast\\ |
---|
401 | \hline |
---|
402 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
403 | \hline |
---|
404 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
405 | \hline |
---|
406 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
407 | \hline |
---|
408 | \end{DoxyParams} |
---|
409 | |
---|
410 | |
---|
411 | Definition at line 869 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
412 | |
---|
413 | \mbox{\Hypertarget{namespacemod__oasis__mpi_ab14018fe59cd737067e4f4202a3eeb39}\label{namespacemod__oasis__mpi_ab14018fe59cd737067e4f4202a3eeb39}} |
---|
414 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcastr2@{oasis\+\_\+mpi\+\_\+bcastr2}} |
---|
415 | \index{oasis\+\_\+mpi\+\_\+bcastr2@{oasis\+\_\+mpi\+\_\+bcastr2}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
416 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcastr2()}{oasis\_mpi\_bcastr2()}} |
---|
417 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcastr2 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:,\+:), intent(inout)}]{arr, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
418 | |
---|
419 | |
---|
420 | |
---|
421 | Broadcast an array of 2D doubles. |
---|
422 | |
---|
423 | |
---|
424 | \begin{DoxyParams}[1]{Parameters} |
---|
425 | \mbox{\tt in,out} & {\em arr} & values to broadcast\\ |
---|
426 | \hline |
---|
427 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
428 | \hline |
---|
429 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
430 | \hline |
---|
431 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
432 | \hline |
---|
433 | \end{DoxyParams} |
---|
434 | |
---|
435 | |
---|
436 | Definition at line 911 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
437 | |
---|
438 | \mbox{\Hypertarget{namespacemod__oasis__mpi_ac01edbda3e33b1feff9b797f83f82e8c}\label{namespacemod__oasis__mpi_ac01edbda3e33b1feff9b797f83f82e8c}} |
---|
439 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+bcastr3@{oasis\+\_\+mpi\+\_\+bcastr3}} |
---|
440 | \index{oasis\+\_\+mpi\+\_\+bcastr3@{oasis\+\_\+mpi\+\_\+bcastr3}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
441 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+bcastr3()}{oasis\_mpi\_bcastr3()}} |
---|
442 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+bcastr3 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:,\+:,\+:), intent(inout)}]{arr, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in), optional}]{pebcast }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
443 | |
---|
444 | |
---|
445 | |
---|
446 | Broadcast an array of 3D doubles. |
---|
447 | |
---|
448 | |
---|
449 | \begin{DoxyParams}[1]{Parameters} |
---|
450 | \mbox{\tt in,out} & {\em arr} & values to broadcast\\ |
---|
451 | \hline |
---|
452 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
453 | \hline |
---|
454 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
455 | \hline |
---|
456 | \mbox{\tt in} & {\em pebcast} & bcast pe, default is task 0 \\ |
---|
457 | \hline |
---|
458 | \end{DoxyParams} |
---|
459 | |
---|
460 | |
---|
461 | Definition at line 999 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
462 | |
---|
463 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a15ba68764a1f4dd07d403e46afae824c}\label{namespacemod__oasis__mpi_a15ba68764a1f4dd07d403e46afae824c}} |
---|
464 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+chkerr@{oasis\+\_\+mpi\+\_\+chkerr}} |
---|
465 | \index{oasis\+\_\+mpi\+\_\+chkerr@{oasis\+\_\+mpi\+\_\+chkerr}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
466 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+chkerr()}{oasis\_mpi\_chkerr()}} |
---|
467 | {\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+chkerr (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{rcode, }\item[{character($\ast$), intent(in)}]{string }\end{DoxyParamCaption})} |
---|
468 | |
---|
469 | |
---|
470 | |
---|
471 | Checks M\+PI error codes and aborts. |
---|
472 | |
---|
473 | This method compares rcode to M\+P\+I\+\_\+\+S\+U\+C\+C\+E\+SS. If rcode is an error, it queries M\+P\+I\+\_\+\+E\+R\+R\+O\+R\+\_\+\+S\+T\+R\+I\+NG for the error string associated with rcode, writes it out, and aborts with the string passed through the interface. |
---|
474 | |
---|
475 | |
---|
476 | \begin{DoxyParams}[1]{Parameters} |
---|
477 | \mbox{\tt in} & {\em rcode} & M\+PI error code\\ |
---|
478 | \hline |
---|
479 | \mbox{\tt in} & {\em string} & abort message \\ |
---|
480 | \hline |
---|
481 | \end{DoxyParams} |
---|
482 | |
---|
483 | |
---|
484 | Definition at line 135 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
485 | |
---|
486 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a2690a841a331f4398cc4b5a244bbc52e}\label{namespacemod__oasis__mpi_a2690a841a331f4398cc4b5a244bbc52e}} |
---|
487 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+commrank@{oasis\+\_\+mpi\+\_\+commrank}} |
---|
488 | \index{oasis\+\_\+mpi\+\_\+commrank@{oasis\+\_\+mpi\+\_\+commrank}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
489 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+commrank()}{oasis\_mpi\_commrank()}} |
---|
490 | {\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+commrank (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{comm, }\item[{integer, intent(out)}]{rank, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})} |
---|
491 | |
---|
492 | |
---|
493 | |
---|
494 | Get the rank (task ID) for a task in a communicator. |
---|
495 | |
---|
496 | |
---|
497 | \begin{DoxyParams}[1]{Parameters} |
---|
498 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
499 | \hline |
---|
500 | \mbox{\tt out} & {\em rank} & output task ID\\ |
---|
501 | \hline |
---|
502 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
503 | \hline |
---|
504 | \end{DoxyParams} |
---|
505 | |
---|
506 | |
---|
507 | Definition at line 2558 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
508 | |
---|
509 | \mbox{\Hypertarget{namespacemod__oasis__mpi_adac784196d7af85611752214137dd4db}\label{namespacemod__oasis__mpi_adac784196d7af85611752214137dd4db}} |
---|
510 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+commsize@{oasis\+\_\+mpi\+\_\+commsize}} |
---|
511 | \index{oasis\+\_\+mpi\+\_\+commsize@{oasis\+\_\+mpi\+\_\+commsize}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
512 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+commsize()}{oasis\_mpi\_commsize()}} |
---|
513 | {\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+commsize (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{comm, }\item[{integer, intent(out)}]{size, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})} |
---|
514 | |
---|
515 | |
---|
516 | |
---|
517 | Get the total number of tasks associated with a communicator. |
---|
518 | |
---|
519 | |
---|
520 | \begin{DoxyParams}[1]{Parameters} |
---|
521 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
522 | \hline |
---|
523 | \mbox{\tt out} & {\em size} & output comm size\\ |
---|
524 | \hline |
---|
525 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
526 | \hline |
---|
527 | \end{DoxyParams} |
---|
528 | |
---|
529 | |
---|
530 | Definition at line 2523 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
531 | |
---|
532 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a0a601a3f718c0704db99a21b2c43fbcd}\label{namespacemod__oasis__mpi_a0a601a3f718c0704db99a21b2c43fbcd}} |
---|
533 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+finalize@{oasis\+\_\+mpi\+\_\+finalize}} |
---|
534 | \index{oasis\+\_\+mpi\+\_\+finalize@{oasis\+\_\+mpi\+\_\+finalize}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
535 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+finalize()}{oasis\_mpi\_finalize()}} |
---|
536 | {\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+finalize (\begin{DoxyParamCaption}\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})} |
---|
537 | |
---|
538 | |
---|
539 | |
---|
540 | Call M\+P\+I\+\_\+\+F\+I\+N\+A\+L\+ZE. |
---|
541 | |
---|
542 | |
---|
543 | \begin{DoxyParams}[1]{Parameters} |
---|
544 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
545 | \hline |
---|
546 | \end{DoxyParams} |
---|
547 | |
---|
548 | |
---|
549 | Definition at line 2764 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
550 | |
---|
551 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a88a13ea3b4f96074669fdc872fe41728}\label{namespacemod__oasis__mpi_a88a13ea3b4f96074669fdc872fe41728}} |
---|
552 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+gathervr1@{oasis\+\_\+mpi\+\_\+gathervr1}} |
---|
553 | \index{oasis\+\_\+mpi\+\_\+gathervr1@{oasis\+\_\+mpi\+\_\+gathervr1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
554 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+gathervr1()}{oasis\_mpi\_gathervr1()}} |
---|
555 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+gathervr1 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(in)}]{locarr, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{loc\+Size, }\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(inout)}]{glob1\+D\+Arr, }\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(in)}]{glob\+Size, }\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(in)}]{displs, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{rootid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
556 | |
---|
557 | |
---|
558 | |
---|
559 | Gather a vector of distributed data to a rootid. |
---|
560 | |
---|
561 | This method passes in glob1\+D\+Arr, glob\+Size, and displs computed in the \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__gathscatvinit}{oasis\+\_\+mpi\+\_\+gathscatvinit} routine and uses that information to gather the loc\+Arr into the glob1\+Darr on processor rootid in communicator comm. |
---|
562 | |
---|
563 | |
---|
564 | \begin{DoxyParams}[1]{Parameters} |
---|
565 | \mbox{\tt in} & {\em locarr} & Local array\\ |
---|
566 | \hline |
---|
567 | \mbox{\tt in,out} & {\em glob1darr} & Global 1D array to receive in on\\ |
---|
568 | \hline |
---|
569 | \mbox{\tt in} & {\em locsize} & Number to send from this PE\\ |
---|
570 | \hline |
---|
571 | \mbox{\tt in} & {\em globsize} & Number to receive from each PE\\ |
---|
572 | \hline |
---|
573 | \mbox{\tt in} & {\em displs} & Displacements for receives\\ |
---|
574 | \hline |
---|
575 | \mbox{\tt in} & {\em rootid} & M\+PI task to gather on\\ |
---|
576 | \hline |
---|
577 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
578 | \hline |
---|
579 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
580 | \hline |
---|
581 | \end{DoxyParams} |
---|
582 | |
---|
583 | |
---|
584 | Definition at line 1142 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
585 | |
---|
586 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a68afb4ab4136545faeaa2c37a1eb294a}\label{namespacemod__oasis__mpi_a68afb4ab4136545faeaa2c37a1eb294a}} |
---|
587 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+gathscatvinitr1@{oasis\+\_\+mpi\+\_\+gathscatvinitr1}} |
---|
588 | \index{oasis\+\_\+mpi\+\_\+gathscatvinitr1@{oasis\+\_\+mpi\+\_\+gathscatvinitr1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
589 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+gathscatvinitr1()}{oasis\_mpi\_gathscatvinitr1()}} |
---|
590 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+gathscatvinitr1 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{rootid, }\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(in)}]{loc\+Arr, }\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), pointer}]{glob1\+D\+Arr, }\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), pointer}]{glob\+Size, }\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), pointer}]{displs, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
591 | |
---|
592 | |
---|
593 | |
---|
594 | Initialize variables for \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__gatherv}{oasis\+\_\+mpi\+\_\+gatherv} and \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__scatterv}{oasis\+\_\+mpi\+\_\+scatterv}. |
---|
595 | |
---|
596 | This method initializes glob1\+D\+Arr, glob\+Size, and displs for use in the \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__gatherv}{oasis\+\_\+mpi\+\_\+gatherv} and \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__scatterv}{oasis\+\_\+mpi\+\_\+scatterv} routines. loc\+Arr is the distributed array to gather from or scatter to. |
---|
597 | |
---|
598 | |
---|
599 | \begin{DoxyParams}[1]{Parameters} |
---|
600 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
601 | \hline |
---|
602 | \mbox{\tt in} & {\em rootid} & M\+PI task to gather/scatter on\\ |
---|
603 | \hline |
---|
604 | \mbox{\tt in} & {\em locarr} & Local array of distributed data\\ |
---|
605 | \hline |
---|
606 | & {\em glob1darr} & Global 1D array of gathered data\\ |
---|
607 | \hline |
---|
608 | & {\em globsize} & Size of each distributed piece\\ |
---|
609 | \hline |
---|
610 | & {\em displs} & Displacements for receive\\ |
---|
611 | \hline |
---|
612 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
613 | \hline |
---|
614 | \end{DoxyParams} |
---|
615 | |
---|
616 | |
---|
617 | Definition at line 1048 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
618 | |
---|
619 | \mbox{\Hypertarget{namespacemod__oasis__mpi_aaf45f20e0000b32e71ec9ea8e806f57c}\label{namespacemod__oasis__mpi_aaf45f20e0000b32e71ec9ea8e806f57c}} |
---|
620 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+init@{oasis\+\_\+mpi\+\_\+init}} |
---|
621 | \index{oasis\+\_\+mpi\+\_\+init@{oasis\+\_\+mpi\+\_\+init}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
622 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+init()}{oasis\_mpi\_init()}} |
---|
623 | {\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+init (\begin{DoxyParamCaption}\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})} |
---|
624 | |
---|
625 | |
---|
626 | |
---|
627 | Call M\+P\+I\+\_\+\+I\+N\+IT. |
---|
628 | |
---|
629 | |
---|
630 | \begin{DoxyParams}[1]{Parameters} |
---|
631 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
632 | \hline |
---|
633 | \end{DoxyParams} |
---|
634 | |
---|
635 | |
---|
636 | Definition at line 2731 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
637 | |
---|
638 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a384f170e63ac03f25d3bd549245b43f3}\label{namespacemod__oasis__mpi_a384f170e63ac03f25d3bd549245b43f3}} |
---|
639 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+initialized@{oasis\+\_\+mpi\+\_\+initialized}} |
---|
640 | \index{oasis\+\_\+mpi\+\_\+initialized@{oasis\+\_\+mpi\+\_\+initialized}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
641 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+initialized()}{oasis\_mpi\_initialized()}} |
---|
642 | {\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+initialized (\begin{DoxyParamCaption}\item[{logical, intent(out)}]{flag, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})} |
---|
643 | |
---|
644 | |
---|
645 | |
---|
646 | Check whether M\+PI has been initialized. |
---|
647 | |
---|
648 | |
---|
649 | \begin{DoxyParams}[1]{Parameters} |
---|
650 | \mbox{\tt out} & {\em flag} & true if M\+P\+I\+\_\+\+I\+N\+I\+T\+I\+A\+L\+I\+Z\+ED has been called\\ |
---|
651 | \hline |
---|
652 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
653 | \hline |
---|
654 | \end{DoxyParams} |
---|
655 | |
---|
656 | |
---|
657 | Definition at line 2593 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
658 | |
---|
659 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a0b469347d40c78c317042fa069d9baa5}\label{namespacemod__oasis__mpi_a0b469347d40c78c317042fa069d9baa5}} |
---|
660 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+maxi0@{oasis\+\_\+mpi\+\_\+maxi0}} |
---|
661 | \index{oasis\+\_\+mpi\+\_\+maxi0@{oasis\+\_\+mpi\+\_\+maxi0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
662 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+maxi0()}{oasis\_mpi\_maxi0()}} |
---|
663 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+maxi0 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
664 | |
---|
665 | |
---|
666 | |
---|
667 | Compute a global maximum for a scalar integer. |
---|
668 | |
---|
669 | |
---|
670 | \begin{DoxyParams}[1]{Parameters} |
---|
671 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
672 | \hline |
---|
673 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
674 | \hline |
---|
675 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
676 | \hline |
---|
677 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
678 | \hline |
---|
679 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
680 | \hline |
---|
681 | \end{DoxyParams} |
---|
682 | |
---|
683 | |
---|
684 | Definition at line 2271 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
685 | |
---|
686 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a2ba8d76b016ddde4013aecc2ca0b1d9f}\label{namespacemod__oasis__mpi_a2ba8d76b016ddde4013aecc2ca0b1d9f}} |
---|
687 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+maxi1@{oasis\+\_\+mpi\+\_\+maxi1}} |
---|
688 | \index{oasis\+\_\+mpi\+\_\+maxi1@{oasis\+\_\+mpi\+\_\+maxi1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
689 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+maxi1()}{oasis\_mpi\_maxi1()}} |
---|
690 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+maxi1 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
691 | |
---|
692 | |
---|
693 | |
---|
694 | Compute an array of global maximums for an array of 1D integers. |
---|
695 | |
---|
696 | |
---|
697 | \begin{DoxyParams}[1]{Parameters} |
---|
698 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
699 | \hline |
---|
700 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
701 | \hline |
---|
702 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
703 | \hline |
---|
704 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
705 | \hline |
---|
706 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
707 | \hline |
---|
708 | \end{DoxyParams} |
---|
709 | |
---|
710 | |
---|
711 | Definition at line 2334 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
712 | |
---|
713 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a7f46e23956ff948e039c5c1cdde0f6f3}\label{namespacemod__oasis__mpi_a7f46e23956ff948e039c5c1cdde0f6f3}} |
---|
714 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+maxr0@{oasis\+\_\+mpi\+\_\+maxr0}} |
---|
715 | \index{oasis\+\_\+mpi\+\_\+maxr0@{oasis\+\_\+mpi\+\_\+maxr0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
716 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+maxr0()}{oasis\_mpi\_maxr0()}} |
---|
717 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+maxr0 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), intent(in)}]{lvec, }\item[{real(ip\+\_\+double\+\_\+p), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
718 | |
---|
719 | |
---|
720 | |
---|
721 | Compute a global maximum for a scalar double. |
---|
722 | |
---|
723 | |
---|
724 | \begin{DoxyParams}[1]{Parameters} |
---|
725 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
726 | \hline |
---|
727 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
728 | \hline |
---|
729 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
730 | \hline |
---|
731 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
732 | \hline |
---|
733 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
734 | \hline |
---|
735 | \end{DoxyParams} |
---|
736 | |
---|
737 | |
---|
738 | Definition at line 2397 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
739 | |
---|
740 | \mbox{\Hypertarget{namespacemod__oasis__mpi_ae57151fc4714e33d7e0e1cf0aa65ae64}\label{namespacemod__oasis__mpi_ae57151fc4714e33d7e0e1cf0aa65ae64}} |
---|
741 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+maxr1@{oasis\+\_\+mpi\+\_\+maxr1}} |
---|
742 | \index{oasis\+\_\+mpi\+\_\+maxr1@{oasis\+\_\+mpi\+\_\+maxr1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
743 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+maxr1()}{oasis\_mpi\_maxr1()}} |
---|
744 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+maxr1 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(in)}]{lvec, }\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
745 | |
---|
746 | |
---|
747 | |
---|
748 | Compute an array of global maximums for an array of 1D doubles. |
---|
749 | |
---|
750 | |
---|
751 | \begin{DoxyParams}[1]{Parameters} |
---|
752 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
753 | \hline |
---|
754 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
755 | \hline |
---|
756 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
757 | \hline |
---|
758 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
759 | \hline |
---|
760 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
761 | \hline |
---|
762 | \end{DoxyParams} |
---|
763 | |
---|
764 | |
---|
765 | Definition at line 2460 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
766 | |
---|
767 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a2832568cd4d34db40cdcc39ffa876474}\label{namespacemod__oasis__mpi_a2832568cd4d34db40cdcc39ffa876474}} |
---|
768 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+mini0@{oasis\+\_\+mpi\+\_\+mini0}} |
---|
769 | \index{oasis\+\_\+mpi\+\_\+mini0@{oasis\+\_\+mpi\+\_\+mini0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
770 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+mini0()}{oasis\_mpi\_mini0()}} |
---|
771 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+mini0 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
772 | |
---|
773 | |
---|
774 | |
---|
775 | Compute a global minimum for a scalar integer. |
---|
776 | |
---|
777 | |
---|
778 | \begin{DoxyParams}[1]{Parameters} |
---|
779 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
780 | \hline |
---|
781 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
782 | \hline |
---|
783 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
784 | \hline |
---|
785 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
786 | \hline |
---|
787 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
788 | \hline |
---|
789 | \end{DoxyParams} |
---|
790 | |
---|
791 | |
---|
792 | Definition at line 2019 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
793 | |
---|
794 | \mbox{\Hypertarget{namespacemod__oasis__mpi_aed0c20d56fdab764f0ad8e48e3a7209f}\label{namespacemod__oasis__mpi_aed0c20d56fdab764f0ad8e48e3a7209f}} |
---|
795 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+mini1@{oasis\+\_\+mpi\+\_\+mini1}} |
---|
796 | \index{oasis\+\_\+mpi\+\_\+mini1@{oasis\+\_\+mpi\+\_\+mini1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
797 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+mini1()}{oasis\_mpi\_mini1()}} |
---|
798 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+mini1 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
799 | |
---|
800 | |
---|
801 | |
---|
802 | Compute an array of global minimums for an array of 1D integers. |
---|
803 | |
---|
804 | |
---|
805 | \begin{DoxyParams}[1]{Parameters} |
---|
806 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
807 | \hline |
---|
808 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
809 | \hline |
---|
810 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
811 | \hline |
---|
812 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
813 | \hline |
---|
814 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
815 | \hline |
---|
816 | \end{DoxyParams} |
---|
817 | |
---|
818 | |
---|
819 | Definition at line 2082 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
820 | |
---|
821 | \mbox{\Hypertarget{namespacemod__oasis__mpi_af3628ad005b1a21e8f33e3dc2be38635}\label{namespacemod__oasis__mpi_af3628ad005b1a21e8f33e3dc2be38635}} |
---|
822 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+minr0@{oasis\+\_\+mpi\+\_\+minr0}} |
---|
823 | \index{oasis\+\_\+mpi\+\_\+minr0@{oasis\+\_\+mpi\+\_\+minr0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
824 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+minr0()}{oasis\_mpi\_minr0()}} |
---|
825 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+minr0 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), intent(in)}]{lvec, }\item[{real(ip\+\_\+double\+\_\+p), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
826 | |
---|
827 | |
---|
828 | |
---|
829 | Compute an global minimum for a scalar double. |
---|
830 | |
---|
831 | |
---|
832 | \begin{DoxyParams}[1]{Parameters} |
---|
833 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
834 | \hline |
---|
835 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
836 | \hline |
---|
837 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
838 | \hline |
---|
839 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
840 | \hline |
---|
841 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
842 | \hline |
---|
843 | \end{DoxyParams} |
---|
844 | |
---|
845 | |
---|
846 | Definition at line 2145 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
847 | |
---|
848 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a29c460b836ae9ad77ee1ac21f684d188}\label{namespacemod__oasis__mpi_a29c460b836ae9ad77ee1ac21f684d188}} |
---|
849 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+minr1@{oasis\+\_\+mpi\+\_\+minr1}} |
---|
850 | \index{oasis\+\_\+mpi\+\_\+minr1@{oasis\+\_\+mpi\+\_\+minr1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
851 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+minr1()}{oasis\_mpi\_minr1()}} |
---|
852 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+minr1 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(in)}]{lvec, }\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
853 | |
---|
854 | |
---|
855 | |
---|
856 | Compute an array of global minimums for an array of 1D doubles. |
---|
857 | |
---|
858 | |
---|
859 | \begin{DoxyParams}[1]{Parameters} |
---|
860 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
861 | \hline |
---|
862 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
863 | \hline |
---|
864 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
865 | \hline |
---|
866 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
867 | \hline |
---|
868 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
869 | \hline |
---|
870 | \end{DoxyParams} |
---|
871 | |
---|
872 | |
---|
873 | Definition at line 2208 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
874 | |
---|
875 | \mbox{\Hypertarget{namespacemod__oasis__mpi_ad89796f10a2225d4930cdec65546cf98}\label{namespacemod__oasis__mpi_ad89796f10a2225d4930cdec65546cf98}} |
---|
876 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+recvi0@{oasis\+\_\+mpi\+\_\+recvi0}} |
---|
877 | \index{oasis\+\_\+mpi\+\_\+recvi0@{oasis\+\_\+mpi\+\_\+recvi0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
878 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+recvi0()}{oasis\_mpi\_recvi0()}} |
---|
879 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+recvi0 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(out)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{pid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{tag, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
880 | |
---|
881 | |
---|
882 | |
---|
883 | Receive a scalar integer. |
---|
884 | |
---|
885 | |
---|
886 | \begin{DoxyParams}[1]{Parameters} |
---|
887 | \mbox{\tt out} & {\em lvec} & receive values\\ |
---|
888 | \hline |
---|
889 | \mbox{\tt in} & {\em pid} & pid to recv from\\ |
---|
890 | \hline |
---|
891 | \mbox{\tt in} & {\em tag} & mpi tag\\ |
---|
892 | \hline |
---|
893 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
894 | \hline |
---|
895 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
896 | \hline |
---|
897 | \end{DoxyParams} |
---|
898 | |
---|
899 | |
---|
900 | Definition at line 370 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
901 | |
---|
902 | \mbox{\Hypertarget{namespacemod__oasis__mpi_acf13ea626ed09fe98123f23d0990879d}\label{namespacemod__oasis__mpi_acf13ea626ed09fe98123f23d0990879d}} |
---|
903 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+recvi1@{oasis\+\_\+mpi\+\_\+recvi1}} |
---|
904 | \index{oasis\+\_\+mpi\+\_\+recvi1@{oasis\+\_\+mpi\+\_\+recvi1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
905 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+recvi1()}{oasis\_mpi\_recvi1()}} |
---|
906 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+recvi1 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(out)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{pid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{tag, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
907 | |
---|
908 | |
---|
909 | |
---|
910 | Receive an array of 1D integers. |
---|
911 | |
---|
912 | |
---|
913 | \begin{DoxyParams}[1]{Parameters} |
---|
914 | \mbox{\tt out} & {\em lvec} & receive values\\ |
---|
915 | \hline |
---|
916 | \mbox{\tt in} & {\em pid} & pid to recv from\\ |
---|
917 | \hline |
---|
918 | \mbox{\tt in} & {\em tag} & mpi tag\\ |
---|
919 | \hline |
---|
920 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
921 | \hline |
---|
922 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
923 | \hline |
---|
924 | \end{DoxyParams} |
---|
925 | |
---|
926 | |
---|
927 | Definition at line 411 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
928 | |
---|
929 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a2578d560c80d608340b5a49b327642ba}\label{namespacemod__oasis__mpi_a2578d560c80d608340b5a49b327642ba}} |
---|
930 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+recvr0@{oasis\+\_\+mpi\+\_\+recvr0}} |
---|
931 | \index{oasis\+\_\+mpi\+\_\+recvr0@{oasis\+\_\+mpi\+\_\+recvr0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
932 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+recvr0()}{oasis\_mpi\_recvr0()}} |
---|
933 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+recvr0 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), intent(out)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{pid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{tag, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
934 | |
---|
935 | |
---|
936 | |
---|
937 | Receive a scalar double. |
---|
938 | |
---|
939 | |
---|
940 | \begin{DoxyParams}[1]{Parameters} |
---|
941 | \mbox{\tt out} & {\em lvec} & receive values\\ |
---|
942 | \hline |
---|
943 | \mbox{\tt in} & {\em pid} & pid to recv from\\ |
---|
944 | \hline |
---|
945 | \mbox{\tt in} & {\em tag} & mpi tag\\ |
---|
946 | \hline |
---|
947 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
948 | \hline |
---|
949 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
950 | \hline |
---|
951 | \end{DoxyParams} |
---|
952 | |
---|
953 | |
---|
954 | Definition at line 452 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
955 | |
---|
956 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a2bbd8de453167b4c73aa09c3c44c0ca8}\label{namespacemod__oasis__mpi_a2bbd8de453167b4c73aa09c3c44c0ca8}} |
---|
957 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+recvr1@{oasis\+\_\+mpi\+\_\+recvr1}} |
---|
958 | \index{oasis\+\_\+mpi\+\_\+recvr1@{oasis\+\_\+mpi\+\_\+recvr1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
959 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+recvr1()}{oasis\_mpi\_recvr1()}} |
---|
960 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+recvr1 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(out)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{pid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{tag, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
961 | |
---|
962 | |
---|
963 | |
---|
964 | Receive an array of 1D doubles. |
---|
965 | |
---|
966 | |
---|
967 | \begin{DoxyParams}[1]{Parameters} |
---|
968 | \mbox{\tt out} & {\em lvec} & receive values\\ |
---|
969 | \hline |
---|
970 | \mbox{\tt in} & {\em pid} & pid to recv from\\ |
---|
971 | \hline |
---|
972 | \mbox{\tt in} & {\em tag} & mpi tag\\ |
---|
973 | \hline |
---|
974 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
975 | \hline |
---|
976 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
977 | \hline |
---|
978 | \end{DoxyParams} |
---|
979 | |
---|
980 | |
---|
981 | Definition at line 493 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
982 | |
---|
983 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a2c3b82d2346a69cd20be3d35c5e70be6}\label{namespacemod__oasis__mpi_a2c3b82d2346a69cd20be3d35c5e70be6}} |
---|
984 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+recvr3@{oasis\+\_\+mpi\+\_\+recvr3}} |
---|
985 | \index{oasis\+\_\+mpi\+\_\+recvr3@{oasis\+\_\+mpi\+\_\+recvr3}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
986 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+recvr3()}{oasis\_mpi\_recvr3()}} |
---|
987 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+recvr3 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:,\+:,\+:), intent(out)}]{array, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{pid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{tag, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
988 | |
---|
989 | |
---|
990 | |
---|
991 | Receive an array of 3D doubles. |
---|
992 | |
---|
993 | |
---|
994 | \begin{DoxyParams}[1]{Parameters} |
---|
995 | \mbox{\tt out} & {\em array} & receive values\\ |
---|
996 | \hline |
---|
997 | \mbox{\tt in} & {\em pid} & pid to recv from\\ |
---|
998 | \hline |
---|
999 | \mbox{\tt in} & {\em tag} & mpi tag\\ |
---|
1000 | \hline |
---|
1001 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1002 | \hline |
---|
1003 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
1004 | \hline |
---|
1005 | \end{DoxyParams} |
---|
1006 | |
---|
1007 | |
---|
1008 | Definition at line 534 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1009 | |
---|
1010 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a95f6540150f7ab4e64697d2eabc2bf79}\label{namespacemod__oasis__mpi_a95f6540150f7ab4e64697d2eabc2bf79}} |
---|
1011 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+reducelists@{oasis\+\_\+mpi\+\_\+reducelists}} |
---|
1012 | \index{oasis\+\_\+mpi\+\_\+reducelists@{oasis\+\_\+mpi\+\_\+reducelists}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1013 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+reducelists()}{oasis\_mpi\_reducelists()}} |
---|
1014 | {\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+reducelists (\begin{DoxyParamCaption}\item[{character($\ast$), dimension(\+:), intent(in), pointer}]{linp1, }\item[{integer, intent(in)}]{comm, }\item[{integer, intent(out)}]{cntout, }\item[{character($\ast$), dimension(\+:), intent(inout), pointer}]{lout1, }\item[{character($\ast$), intent(in)}]{callstr, }\item[{logical, intent(in), optional}]{fastcheck, }\item[{logical, intent(out), optional}]{fastcheckout, }\item[{character($\ast$), dimension(\+:), intent(in), optional, pointer}]{linp2, }\item[{character($\ast$), dimension(\+:), intent(inout), optional, pointer}]{lout2, }\item[{character($\ast$), intent(in), optional}]{spval2, }\item[{integer, dimension(\+:), intent(in), optional, pointer}]{linp3, }\item[{integer, dimension(\+:), intent(inout), optional, pointer}]{lout3, }\item[{integer, intent(in), optional}]{spval3, }\item[{integer, dimension(\+:), intent(in), optional, pointer}]{linp4, }\item[{integer, dimension(\+:), intent(inout), optional, pointer}]{lout4, }\item[{integer, intent(in), optional}]{spval4 }\end{DoxyParamCaption})} |
---|
1015 | |
---|
1016 | |
---|
1017 | |
---|
1018 | Custom method for reducing M\+PI lists across pes for O\+A\+S\+IS. |
---|
1019 | |
---|
1020 | |
---|
1021 | \begin{DoxyParams}[1]{Parameters} |
---|
1022 | \mbox{\tt in} & {\em linp1} & input list on each task\\ |
---|
1023 | \hline |
---|
1024 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1025 | \hline |
---|
1026 | \mbox{\tt out} & {\em cntout} & size of lout1 list\\ |
---|
1027 | \hline |
---|
1028 | \mbox{\tt in,out} & {\em lout1} & reduced output list, same on all tasks\\ |
---|
1029 | \hline |
---|
1030 | \mbox{\tt in} & {\em callstr} & to identify caller\\ |
---|
1031 | \hline |
---|
1032 | \mbox{\tt in} & {\em fastcheck} & run a fastcheck first\\ |
---|
1033 | \hline |
---|
1034 | \mbox{\tt out} & {\em fastcheckout} & true if fastcheck worked\\ |
---|
1035 | \hline |
---|
1036 | \mbox{\tt in} & {\em linp2} & input list on each task\\ |
---|
1037 | \hline |
---|
1038 | \mbox{\tt in,out} & {\em lout2} & reduced output list, same on all tasks\\ |
---|
1039 | \hline |
---|
1040 | \mbox{\tt in} & {\em spval2} & unset value for linp2\\ |
---|
1041 | \hline |
---|
1042 | \mbox{\tt in} & {\em linp3} & input list on each task\\ |
---|
1043 | \hline |
---|
1044 | \mbox{\tt in,out} & {\em lout3} & reduced output list, same on all tasks\\ |
---|
1045 | \hline |
---|
1046 | \mbox{\tt in} & {\em spval3} & unset value for linp3\\ |
---|
1047 | \hline |
---|
1048 | \mbox{\tt in} & {\em linp4} & input list on each task\\ |
---|
1049 | \hline |
---|
1050 | \mbox{\tt in,out} & {\em lout4} & reduced output list, same on all tasks\\ |
---|
1051 | \hline |
---|
1052 | \mbox{\tt in} & {\em spval4} & unset value for linp4 \\ |
---|
1053 | \hline |
---|
1054 | \end{DoxyParams} |
---|
1055 | |
---|
1056 | \begin{DoxyItemize} |
---|
1057 | \item Check argument consistency |
---|
1058 | \item Fast compare on all tasks |
---|
1059 | \item Generate initial unique local name list |
---|
1060 | \item Log2 reduction of linp over tasks to root |
---|
1061 | \begin{DoxyItemize} |
---|
1062 | \item Send list |
---|
1063 | \item Recv list |
---|
1064 | \item Determine the unique list |
---|
1065 | \end{DoxyItemize} |
---|
1066 | \item Broadcast the list information to all tasks from root |
---|
1067 | \end{DoxyItemize} |
---|
1068 | |
---|
1069 | Definition at line 2798 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1070 | |
---|
1071 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a9d0d807b92d39c9789eea4744d331612}\label{namespacemod__oasis__mpi_a9d0d807b92d39c9789eea4744d331612}} |
---|
1072 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+scattervr1@{oasis\+\_\+mpi\+\_\+scattervr1}} |
---|
1073 | \index{oasis\+\_\+mpi\+\_\+scattervr1@{oasis\+\_\+mpi\+\_\+scattervr1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1074 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+scattervr1()}{oasis\_mpi\_scattervr1()}} |
---|
1075 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+scattervr1 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(out)}]{locarr, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{loc\+Size, }\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(in)}]{glob1\+Darr, }\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(in)}]{glob\+Size, }\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(in)}]{displs, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{rootid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1076 | |
---|
1077 | |
---|
1078 | |
---|
1079 | Scatter a vector of global data from a rootid. |
---|
1080 | |
---|
1081 | This method passes in glob1\+D\+Arr, glob\+Size, and displs computed in the \hyperlink{interfacemod__oasis__mpi_1_1oasis__mpi__gathscatvinit}{oasis\+\_\+mpi\+\_\+gathscatvinit} routine and uses that information to scatter glob1\+Darr on processor rootid in communicator comm to locarr on other processors. |
---|
1082 | |
---|
1083 | |
---|
1084 | \begin{DoxyParams}[1]{Parameters} |
---|
1085 | \mbox{\tt out} & {\em locarr} & Local array\\ |
---|
1086 | \hline |
---|
1087 | \mbox{\tt in} & {\em glob1darr} & Global 1D array to send from\\ |
---|
1088 | \hline |
---|
1089 | \mbox{\tt in} & {\em locsize} & Number to receive this PE\\ |
---|
1090 | \hline |
---|
1091 | \mbox{\tt in} & {\em globsize} & Number to send to each PE\\ |
---|
1092 | \hline |
---|
1093 | \mbox{\tt in} & {\em displs} & Displacements for send\\ |
---|
1094 | \hline |
---|
1095 | \mbox{\tt in} & {\em rootid} & M\+PI task to scatter on\\ |
---|
1096 | \hline |
---|
1097 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1098 | \hline |
---|
1099 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
1100 | \hline |
---|
1101 | \end{DoxyParams} |
---|
1102 | |
---|
1103 | |
---|
1104 | Definition at line 1191 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1105 | |
---|
1106 | \mbox{\Hypertarget{namespacemod__oasis__mpi_aa5078962eee157f52878f711c0a29afb}\label{namespacemod__oasis__mpi_aa5078962eee157f52878f711c0a29afb}} |
---|
1107 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sendi0@{oasis\+\_\+mpi\+\_\+sendi0}} |
---|
1108 | \index{oasis\+\_\+mpi\+\_\+sendi0@{oasis\+\_\+mpi\+\_\+sendi0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1109 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sendi0()}{oasis\_mpi\_sendi0()}} |
---|
1110 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sendi0 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{pid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{tag, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1111 | |
---|
1112 | |
---|
1113 | |
---|
1114 | Send a scalar integer. |
---|
1115 | |
---|
1116 | |
---|
1117 | \begin{DoxyParams}[1]{Parameters} |
---|
1118 | \mbox{\tt in} & {\em lvec} & send value\\ |
---|
1119 | \hline |
---|
1120 | \mbox{\tt in} & {\em pid} & pid to send to\\ |
---|
1121 | \hline |
---|
1122 | \mbox{\tt in} & {\em tag} & mpi tag\\ |
---|
1123 | \hline |
---|
1124 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1125 | \hline |
---|
1126 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
1127 | \hline |
---|
1128 | \end{DoxyParams} |
---|
1129 | |
---|
1130 | |
---|
1131 | Definition at line 170 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1132 | |
---|
1133 | \mbox{\Hypertarget{namespacemod__oasis__mpi_aab4cc0d2b50e8e73697e6d88d23b03cd}\label{namespacemod__oasis__mpi_aab4cc0d2b50e8e73697e6d88d23b03cd}} |
---|
1134 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sendi1@{oasis\+\_\+mpi\+\_\+sendi1}} |
---|
1135 | \index{oasis\+\_\+mpi\+\_\+sendi1@{oasis\+\_\+mpi\+\_\+sendi1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1136 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sendi1()}{oasis\_mpi\_sendi1()}} |
---|
1137 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sendi1 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{pid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{tag, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1138 | |
---|
1139 | |
---|
1140 | |
---|
1141 | Send an array of 1D integers. |
---|
1142 | |
---|
1143 | |
---|
1144 | \begin{DoxyParams}[1]{Parameters} |
---|
1145 | \mbox{\tt in} & {\em lvec} & send values\\ |
---|
1146 | \hline |
---|
1147 | \mbox{\tt in} & {\em pid} & pid to send to\\ |
---|
1148 | \hline |
---|
1149 | \mbox{\tt in} & {\em tag} & mpi tag\\ |
---|
1150 | \hline |
---|
1151 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1152 | \hline |
---|
1153 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
1154 | \hline |
---|
1155 | \end{DoxyParams} |
---|
1156 | |
---|
1157 | |
---|
1158 | Definition at line 210 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1159 | |
---|
1160 | \mbox{\Hypertarget{namespacemod__oasis__mpi_ab38f15fbce57555ea66ccbc1aa477dd1}\label{namespacemod__oasis__mpi_ab38f15fbce57555ea66ccbc1aa477dd1}} |
---|
1161 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sendr0@{oasis\+\_\+mpi\+\_\+sendr0}} |
---|
1162 | \index{oasis\+\_\+mpi\+\_\+sendr0@{oasis\+\_\+mpi\+\_\+sendr0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1163 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sendr0()}{oasis\_mpi\_sendr0()}} |
---|
1164 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sendr0 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{pid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{tag, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1165 | |
---|
1166 | |
---|
1167 | |
---|
1168 | Send a scalar double. |
---|
1169 | |
---|
1170 | |
---|
1171 | \begin{DoxyParams}[1]{Parameters} |
---|
1172 | \mbox{\tt in} & {\em lvec} & send values\\ |
---|
1173 | \hline |
---|
1174 | \mbox{\tt in} & {\em pid} & pid to send to\\ |
---|
1175 | \hline |
---|
1176 | \mbox{\tt in} & {\em tag} & mpi tag\\ |
---|
1177 | \hline |
---|
1178 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1179 | \hline |
---|
1180 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
1181 | \hline |
---|
1182 | \end{DoxyParams} |
---|
1183 | |
---|
1184 | |
---|
1185 | Definition at line 250 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1186 | |
---|
1187 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a948cd001c0955ae19f4b410d4cca9f9b}\label{namespacemod__oasis__mpi_a948cd001c0955ae19f4b410d4cca9f9b}} |
---|
1188 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sendr1@{oasis\+\_\+mpi\+\_\+sendr1}} |
---|
1189 | \index{oasis\+\_\+mpi\+\_\+sendr1@{oasis\+\_\+mpi\+\_\+sendr1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1190 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sendr1()}{oasis\_mpi\_sendr1()}} |
---|
1191 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sendr1 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{pid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{tag, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1192 | |
---|
1193 | |
---|
1194 | |
---|
1195 | Send an array of 1D doubles. |
---|
1196 | |
---|
1197 | |
---|
1198 | \begin{DoxyParams}[1]{Parameters} |
---|
1199 | \mbox{\tt in} & {\em lvec} & send values\\ |
---|
1200 | \hline |
---|
1201 | \mbox{\tt in} & {\em pid} & pid to send to\\ |
---|
1202 | \hline |
---|
1203 | \mbox{\tt in} & {\em tag} & mpi tag\\ |
---|
1204 | \hline |
---|
1205 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1206 | \hline |
---|
1207 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
1208 | \hline |
---|
1209 | \end{DoxyParams} |
---|
1210 | |
---|
1211 | |
---|
1212 | Definition at line 290 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1213 | |
---|
1214 | \mbox{\Hypertarget{namespacemod__oasis__mpi_ac8809a8b29b3ffa246612b9c25cd05eb}\label{namespacemod__oasis__mpi_ac8809a8b29b3ffa246612b9c25cd05eb}} |
---|
1215 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sendr3@{oasis\+\_\+mpi\+\_\+sendr3}} |
---|
1216 | \index{oasis\+\_\+mpi\+\_\+sendr3@{oasis\+\_\+mpi\+\_\+sendr3}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1217 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sendr3()}{oasis\_mpi\_sendr3()}} |
---|
1218 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sendr3 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:,\+:,\+:), intent(in)}]{array, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{pid, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{tag, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1219 | |
---|
1220 | |
---|
1221 | |
---|
1222 | Send an array of 3D doubles. |
---|
1223 | |
---|
1224 | |
---|
1225 | \begin{DoxyParams}[1]{Parameters} |
---|
1226 | \mbox{\tt in} & {\em array} & send values\\ |
---|
1227 | \hline |
---|
1228 | \mbox{\tt in} & {\em pid} & pid to send to\\ |
---|
1229 | \hline |
---|
1230 | \mbox{\tt in} & {\em tag} & mpi tag\\ |
---|
1231 | \hline |
---|
1232 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1233 | \hline |
---|
1234 | \mbox{\tt in} & {\em string} & to identify caller \\ |
---|
1235 | \hline |
---|
1236 | \end{DoxyParams} |
---|
1237 | |
---|
1238 | |
---|
1239 | Definition at line 330 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1240 | |
---|
1241 | \mbox{\Hypertarget{namespacemod__oasis__mpi_ae4d2818f21f445e594aad97598f49d8e}\label{namespacemod__oasis__mpi_ae4d2818f21f445e594aad97598f49d8e}} |
---|
1242 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumb0@{oasis\+\_\+mpi\+\_\+sumb0}} |
---|
1243 | \index{oasis\+\_\+mpi\+\_\+sumb0@{oasis\+\_\+mpi\+\_\+sumb0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1244 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumb0()}{oasis\_mpi\_sumb0()}} |
---|
1245 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumb0 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i8\+\_\+p), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i8\+\_\+p), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1246 | |
---|
1247 | |
---|
1248 | |
---|
1249 | Compute a global sum for a scalar 8 byte integer. |
---|
1250 | |
---|
1251 | |
---|
1252 | \begin{DoxyParams}[1]{Parameters} |
---|
1253 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1254 | \hline |
---|
1255 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1256 | \hline |
---|
1257 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1258 | \hline |
---|
1259 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1260 | \hline |
---|
1261 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1262 | \hline |
---|
1263 | \end{DoxyParams} |
---|
1264 | |
---|
1265 | |
---|
1266 | Definition at line 1364 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1267 | |
---|
1268 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a3f32594b15b9ae3629969839ab952012}\label{namespacemod__oasis__mpi_a3f32594b15b9ae3629969839ab952012}} |
---|
1269 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumb1@{oasis\+\_\+mpi\+\_\+sumb1}} |
---|
1270 | \index{oasis\+\_\+mpi\+\_\+sumb1@{oasis\+\_\+mpi\+\_\+sumb1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1271 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumb1()}{oasis\_mpi\_sumb1()}} |
---|
1272 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumb1 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i8\+\_\+p), dimension(\+:), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i8\+\_\+p), dimension(\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1273 | |
---|
1274 | |
---|
1275 | |
---|
1276 | Compute a 1D array of global sums for an array of 1D 8 byte integers. |
---|
1277 | |
---|
1278 | This sums an array of local integers to an array of summed integers. This does not reduce the array to a scalar. |
---|
1279 | |
---|
1280 | |
---|
1281 | \begin{DoxyParams}[1]{Parameters} |
---|
1282 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1283 | \hline |
---|
1284 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1285 | \hline |
---|
1286 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1287 | \hline |
---|
1288 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1289 | \hline |
---|
1290 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1291 | \hline |
---|
1292 | \end{DoxyParams} |
---|
1293 | |
---|
1294 | |
---|
1295 | Definition at line 1430 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1296 | |
---|
1297 | \mbox{\Hypertarget{namespacemod__oasis__mpi_adbb3963310e45ac012e5e28f13d5781e}\label{namespacemod__oasis__mpi_adbb3963310e45ac012e5e28f13d5781e}} |
---|
1298 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumi0@{oasis\+\_\+mpi\+\_\+sumi0}} |
---|
1299 | \index{oasis\+\_\+mpi\+\_\+sumi0@{oasis\+\_\+mpi\+\_\+sumi0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1300 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumi0()}{oasis\_mpi\_sumi0()}} |
---|
1301 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumi0 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1302 | |
---|
1303 | |
---|
1304 | |
---|
1305 | Compute a global Sum for a scalar integer. |
---|
1306 | |
---|
1307 | |
---|
1308 | \begin{DoxyParams}[1]{Parameters} |
---|
1309 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1310 | \hline |
---|
1311 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1312 | \hline |
---|
1313 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1314 | \hline |
---|
1315 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1316 | \hline |
---|
1317 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1318 | \hline |
---|
1319 | \end{DoxyParams} |
---|
1320 | |
---|
1321 | |
---|
1322 | Definition at line 1235 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1323 | |
---|
1324 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a507bb5e0ae088d68bb68c566e8965bef}\label{namespacemod__oasis__mpi_a507bb5e0ae088d68bb68c566e8965bef}} |
---|
1325 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumi1@{oasis\+\_\+mpi\+\_\+sumi1}} |
---|
1326 | \index{oasis\+\_\+mpi\+\_\+sumi1@{oasis\+\_\+mpi\+\_\+sumi1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1327 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumi1()}{oasis\_mpi\_sumi1()}} |
---|
1328 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumi1 (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(in)}]{lvec, }\item[{integer(ip\+\_\+i4\+\_\+p), dimension(\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1329 | |
---|
1330 | |
---|
1331 | |
---|
1332 | Compute a 1D array of global sums for an array of 1D integers. |
---|
1333 | |
---|
1334 | This sums an array of local integers to an array of summed integers. This does not reduce the array to a scalar. |
---|
1335 | |
---|
1336 | |
---|
1337 | \begin{DoxyParams}[1]{Parameters} |
---|
1338 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1339 | \hline |
---|
1340 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1341 | \hline |
---|
1342 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1343 | \hline |
---|
1344 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1345 | \hline |
---|
1346 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1347 | \hline |
---|
1348 | \end{DoxyParams} |
---|
1349 | |
---|
1350 | |
---|
1351 | Definition at line 1301 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1352 | |
---|
1353 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a2901cf7eaf807b4df7bd82aefadfeed9}\label{namespacemod__oasis__mpi_a2901cf7eaf807b4df7bd82aefadfeed9}} |
---|
1354 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumq0@{oasis\+\_\+mpi\+\_\+sumq0}} |
---|
1355 | \index{oasis\+\_\+mpi\+\_\+sumq0@{oasis\+\_\+mpi\+\_\+sumq0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1356 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumq0()}{oasis\_mpi\_sumq0()}} |
---|
1357 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumq0 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+quad\+\_\+p), intent(in)}]{lvec, }\item[{real(ip\+\_\+quad\+\_\+p), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1358 | |
---|
1359 | |
---|
1360 | |
---|
1361 | Compute a global sum for a scalar quad. |
---|
1362 | |
---|
1363 | |
---|
1364 | \begin{DoxyParams}[1]{Parameters} |
---|
1365 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1366 | \hline |
---|
1367 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1368 | \hline |
---|
1369 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1370 | \hline |
---|
1371 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1372 | \hline |
---|
1373 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1374 | \hline |
---|
1375 | \end{DoxyParams} |
---|
1376 | |
---|
1377 | |
---|
1378 | Definition at line 1756 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1379 | |
---|
1380 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a4a81062f1345805cdd828552272670c8}\label{namespacemod__oasis__mpi_a4a81062f1345805cdd828552272670c8}} |
---|
1381 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumq1@{oasis\+\_\+mpi\+\_\+sumq1}} |
---|
1382 | \index{oasis\+\_\+mpi\+\_\+sumq1@{oasis\+\_\+mpi\+\_\+sumq1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1383 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumq1()}{oasis\_mpi\_sumq1()}} |
---|
1384 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumq1 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+quad\+\_\+p), dimension(\+:), intent(in)}]{lvec, }\item[{real(ip\+\_\+quad\+\_\+p), dimension(\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1385 | |
---|
1386 | |
---|
1387 | |
---|
1388 | Compute a 1D array of global sums for an array of 1D quads. |
---|
1389 | |
---|
1390 | This sums an array of local quads to an array of summed quads. This does not reduce the array to a scalar. |
---|
1391 | |
---|
1392 | |
---|
1393 | \begin{DoxyParams}[1]{Parameters} |
---|
1394 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1395 | \hline |
---|
1396 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1397 | \hline |
---|
1398 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1399 | \hline |
---|
1400 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1401 | \hline |
---|
1402 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1403 | \hline |
---|
1404 | \end{DoxyParams} |
---|
1405 | |
---|
1406 | |
---|
1407 | Definition at line 1822 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1408 | |
---|
1409 | \mbox{\Hypertarget{namespacemod__oasis__mpi_aa9a5264e64523ff85ffb37ddc3b405ae}\label{namespacemod__oasis__mpi_aa9a5264e64523ff85ffb37ddc3b405ae}} |
---|
1410 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumq2@{oasis\+\_\+mpi\+\_\+sumq2}} |
---|
1411 | \index{oasis\+\_\+mpi\+\_\+sumq2@{oasis\+\_\+mpi\+\_\+sumq2}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1412 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumq2()}{oasis\_mpi\_sumq2()}} |
---|
1413 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumq2 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+quad\+\_\+p), dimension(\+:,\+:), intent(in)}]{lvec, }\item[{real(ip\+\_\+quad\+\_\+p), dimension(\+:,\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1414 | |
---|
1415 | |
---|
1416 | |
---|
1417 | Compute a 2D array of global sums for an array of 2D quads. |
---|
1418 | |
---|
1419 | This sums an array of local quads to an array of summed quads. This does not reduce the array to a scalar. |
---|
1420 | |
---|
1421 | |
---|
1422 | \begin{DoxyParams}[1]{Parameters} |
---|
1423 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1424 | \hline |
---|
1425 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1426 | \hline |
---|
1427 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1428 | \hline |
---|
1429 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1430 | \hline |
---|
1431 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1432 | \hline |
---|
1433 | \end{DoxyParams} |
---|
1434 | |
---|
1435 | |
---|
1436 | Definition at line 1888 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1437 | |
---|
1438 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a3f989a76dbe1896764d73ffea933130d}\label{namespacemod__oasis__mpi_a3f989a76dbe1896764d73ffea933130d}} |
---|
1439 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumq3@{oasis\+\_\+mpi\+\_\+sumq3}} |
---|
1440 | \index{oasis\+\_\+mpi\+\_\+sumq3@{oasis\+\_\+mpi\+\_\+sumq3}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1441 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumq3()}{oasis\_mpi\_sumq3()}} |
---|
1442 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumq3 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+quad\+\_\+p), dimension(\+:,\+:,\+:), intent(in)}]{lvec, }\item[{real(ip\+\_\+quad\+\_\+p), dimension(\+:,\+:,\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1443 | |
---|
1444 | |
---|
1445 | |
---|
1446 | Compute a 3D array of global sums for an array of 3D quads. |
---|
1447 | |
---|
1448 | This sums an array of local quads to an array of summed quads. This does not reduce the array to a scalar. |
---|
1449 | |
---|
1450 | |
---|
1451 | \begin{DoxyParams}[1]{Parameters} |
---|
1452 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1453 | \hline |
---|
1454 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1455 | \hline |
---|
1456 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1457 | \hline |
---|
1458 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1459 | \hline |
---|
1460 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1461 | \hline |
---|
1462 | \end{DoxyParams} |
---|
1463 | |
---|
1464 | |
---|
1465 | Definition at line 1954 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1466 | |
---|
1467 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a02b0555479a3d54e1c3d42219af9b991}\label{namespacemod__oasis__mpi_a02b0555479a3d54e1c3d42219af9b991}} |
---|
1468 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumr0@{oasis\+\_\+mpi\+\_\+sumr0}} |
---|
1469 | \index{oasis\+\_\+mpi\+\_\+sumr0@{oasis\+\_\+mpi\+\_\+sumr0}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1470 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumr0()}{oasis\_mpi\_sumr0()}} |
---|
1471 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumr0 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), intent(in)}]{lvec, }\item[{real(ip\+\_\+double\+\_\+p), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1472 | |
---|
1473 | |
---|
1474 | |
---|
1475 | Compute a global sum for a scalar double. |
---|
1476 | |
---|
1477 | |
---|
1478 | \begin{DoxyParams}[1]{Parameters} |
---|
1479 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1480 | \hline |
---|
1481 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1482 | \hline |
---|
1483 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1484 | \hline |
---|
1485 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1486 | \hline |
---|
1487 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1488 | \hline |
---|
1489 | \end{DoxyParams} |
---|
1490 | |
---|
1491 | |
---|
1492 | Definition at line 1493 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1493 | |
---|
1494 | \mbox{\Hypertarget{namespacemod__oasis__mpi_aac62148bc912b158aff769572f27b8d3}\label{namespacemod__oasis__mpi_aac62148bc912b158aff769572f27b8d3}} |
---|
1495 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumr1@{oasis\+\_\+mpi\+\_\+sumr1}} |
---|
1496 | \index{oasis\+\_\+mpi\+\_\+sumr1@{oasis\+\_\+mpi\+\_\+sumr1}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1497 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumr1()}{oasis\_mpi\_sumr1()}} |
---|
1498 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumr1 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(in)}]{lvec, }\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1499 | |
---|
1500 | |
---|
1501 | |
---|
1502 | Compute a 1D array of global sums for an array of 1D doubles. |
---|
1503 | |
---|
1504 | This sums an array of local doubles to an array of summed doubles. This does not reduce the array to a scalar. |
---|
1505 | |
---|
1506 | |
---|
1507 | \begin{DoxyParams}[1]{Parameters} |
---|
1508 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1509 | \hline |
---|
1510 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1511 | \hline |
---|
1512 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1513 | \hline |
---|
1514 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1515 | \hline |
---|
1516 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1517 | \hline |
---|
1518 | \end{DoxyParams} |
---|
1519 | |
---|
1520 | |
---|
1521 | Definition at line 1559 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1522 | |
---|
1523 | \mbox{\Hypertarget{namespacemod__oasis__mpi_afbc665ae71c97d0b0467323cd86a5973}\label{namespacemod__oasis__mpi_afbc665ae71c97d0b0467323cd86a5973}} |
---|
1524 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumr2@{oasis\+\_\+mpi\+\_\+sumr2}} |
---|
1525 | \index{oasis\+\_\+mpi\+\_\+sumr2@{oasis\+\_\+mpi\+\_\+sumr2}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1526 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumr2()}{oasis\_mpi\_sumr2()}} |
---|
1527 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumr2 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:,\+:), intent(in)}]{lvec, }\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:,\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1528 | |
---|
1529 | |
---|
1530 | |
---|
1531 | Compute a 2D array of global sums for an array of 2D doubles. |
---|
1532 | |
---|
1533 | This sums an array of local doubles to an array of summed doubles. This does not reduce the array to a scalar. |
---|
1534 | |
---|
1535 | |
---|
1536 | \begin{DoxyParams}[1]{Parameters} |
---|
1537 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1538 | \hline |
---|
1539 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1540 | \hline |
---|
1541 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1542 | \hline |
---|
1543 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1544 | \hline |
---|
1545 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1546 | \hline |
---|
1547 | \end{DoxyParams} |
---|
1548 | |
---|
1549 | |
---|
1550 | Definition at line 1625 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1551 | |
---|
1552 | \mbox{\Hypertarget{namespacemod__oasis__mpi_a41836fe23aeb81e65b4d24f6f0c90953}\label{namespacemod__oasis__mpi_a41836fe23aeb81e65b4d24f6f0c90953}} |
---|
1553 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+sumr3@{oasis\+\_\+mpi\+\_\+sumr3}} |
---|
1554 | \index{oasis\+\_\+mpi\+\_\+sumr3@{oasis\+\_\+mpi\+\_\+sumr3}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1555 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+sumr3()}{oasis\_mpi\_sumr3()}} |
---|
1556 | {\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+sumr3 (\begin{DoxyParamCaption}\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:,\+:,\+:), intent(in)}]{lvec, }\item[{real(ip\+\_\+double\+\_\+p), dimension(\+:,\+:,\+:), intent(out)}]{gvec, }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{comm, }\item[{character($\ast$), intent(in), optional}]{string, }\item[{logical, intent(in), optional}]{all }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}} |
---|
1557 | |
---|
1558 | |
---|
1559 | |
---|
1560 | Compute a 3D array of global sums for an array of 3D doubles. |
---|
1561 | |
---|
1562 | This sums an array of local doubles to an array of summed doubles. This does not reduce the array to a scalar. |
---|
1563 | |
---|
1564 | |
---|
1565 | \begin{DoxyParams}[1]{Parameters} |
---|
1566 | \mbox{\tt in} & {\em lvec} & local values\\ |
---|
1567 | \hline |
---|
1568 | \mbox{\tt out} & {\em gvec} & global values\\ |
---|
1569 | \hline |
---|
1570 | \mbox{\tt in} & {\em comm} & mpi communicator\\ |
---|
1571 | \hline |
---|
1572 | \mbox{\tt in} & {\em string} & to identify caller\\ |
---|
1573 | \hline |
---|
1574 | \mbox{\tt in} & {\em all} & if true call allreduce, otherwise reduce to task 0 \\ |
---|
1575 | \hline |
---|
1576 | \end{DoxyParams} |
---|
1577 | |
---|
1578 | |
---|
1579 | Definition at line 1691 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1580 | |
---|
1581 | \mbox{\Hypertarget{namespacemod__oasis__mpi_aa3786c2cab131c3834583e7943ba28c8}\label{namespacemod__oasis__mpi_aa3786c2cab131c3834583e7943ba28c8}} |
---|
1582 | \index{mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}!oasis\+\_\+mpi\+\_\+wtime@{oasis\+\_\+mpi\+\_\+wtime}} |
---|
1583 | \index{oasis\+\_\+mpi\+\_\+wtime@{oasis\+\_\+mpi\+\_\+wtime}!mod\+\_\+oasis\+\_\+mpi@{mod\+\_\+oasis\+\_\+mpi}} |
---|
1584 | \subsubsection{\texorpdfstring{oasis\+\_\+mpi\+\_\+wtime()}{oasis\_mpi\_wtime()}} |
---|
1585 | {\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+mpi\+::oasis\+\_\+mpi\+\_\+wtime (\begin{DoxyParamCaption}\item[{real(ip\+\_\+r8\+\_\+p), intent(out)}]{wtime }\end{DoxyParamCaption})} |
---|
1586 | |
---|
1587 | |
---|
1588 | |
---|
1589 | Return a timestamp from M\+P\+I\+\_\+\+W\+T\+I\+ME. |
---|
1590 | |
---|
1591 | |
---|
1592 | \begin{DoxyParams}[1]{Parameters} |
---|
1593 | \mbox{\tt out} & {\em wtime} & time in M\+P\+I\+\_\+\+W\+T\+I\+ME units \\ |
---|
1594 | \hline |
---|
1595 | \end{DoxyParams} |
---|
1596 | |
---|
1597 | |
---|
1598 | Definition at line 2627 of file mod\+\_\+oasis\+\_\+mpi.\+F90. |
---|
1599 | |
---|