\hypertarget{namespaceua__mpi__module__base}{}\doxysection{ua\+\_\+mpi\+\_\+module\+\_\+base Module Reference}
\label{namespaceua__mpi__module__base}\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine, public \mbox{\hyperlink{namespaceua__mpi__module__base_a73f93133830708e2b96d2f2de767f3d8}{ua\+\_\+base\+\_\+mpi\+\_\+initial}} (n\+\_\+in, i\+\_\+in, j\+\_\+in, k\+\_\+in, npv, mpi\+\_\+comm)
\item 
subroutine \mbox{\hyperlink{namespaceua__mpi__module__base_aa4d8a8e5534bef6dcef295002581fc66}{mpidevide}} (mm, np, msp, mep, mcp)
\item 
integer function, public \mbox{\hyperlink{namespaceua__mpi__module__base_af035e99e3aa163554dc51f35491da867}{kp\+\_\+kl}} (kl)
\item 
integer function, public \mbox{\hyperlink{namespaceua__mpi__module__base_a2bbcdfcc788c671edcd8db1126b915a5}{lu\+\_\+nm}} (n, m)
\item 
integer function, dimension(2), public \mbox{\hyperlink{namespaceua__mpi__module__base_a9568b614728200201406fc7b37d36673}{nm\+\_\+lu}} (l)
\item 
real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_ae4a7d2b26521bc753c9495488d2f3cf6}{nc}}, \mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), public \mbox{\hyperlink{namespaceua__mpi__module__base_adefa40bc8541f3d74264807663e1e115}{wb\+\_\+ua}} (ua)
\item 
real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}}, \mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), public \mbox{\hyperlink{namespaceua__mpi__module__base_a4fa194094ac4cd8eb39ef68a1b4a6948}{ua\+\_\+wb}} (wb)
\item 
real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_ae4a7d2b26521bc753c9495488d2f3cf6}{nc}}, size(ua, 2)), public \mbox{\hyperlink{namespaceua__mpi__module__base_a83d2ad9b1de5fef2e510085d0ee28a52}{wa\+\_\+ua}} (ua)
\item 
real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}}, size(wa, 2)), public \mbox{\hyperlink{namespaceua__mpi__module__base_ada4da456cb3f9346815084e3264ac852}{ua\+\_\+wa}} (wa)
\item 
real(8) function, dimension(size(ab, 1), \mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), public \mbox{\hyperlink{namespaceua__mpi__module__base_ab7b2720f93f99e0f5c0578e08d8fceae}{aa\+\_\+ab}} (ab)
\item 
real(8) function, dimension(size(aa, 1), \mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), public \mbox{\hyperlink{namespaceua__mpi__module__base_ae2f8e298c1608fa7f39656efacbde06d}{ab\+\_\+aa}} (aa)
\item 
real(8) function, dimension(0\+:im-\/1, 1\+:jc, \mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), public \mbox{\hyperlink{namespaceua__mpi__module__base_aa03071a04e1aab34ca88460e839e17e4}{xvb\+\_\+ua}} (ua\+\_\+data, ipow, iflag)
\item 
real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}}, \mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), public \mbox{\hyperlink{namespaceua__mpi__module__base_aca15e3577ad16b46012ba226e91f80b6}{ua\+\_\+xvb}} (xvb\+\_\+data, ipow, iflag)
\item 
real(8) function, dimension(0\+:im-\/1, 1\+:jc), public \mbox{\hyperlink{namespaceua__mpi__module__base_aed8fcbc87108118fc3b9f23696a1c416}{xv\+\_\+u}} (u\+\_\+data, ipow, iflag)
\item 
real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}}), public \mbox{\hyperlink{namespaceua__mpi__module__base_ad841b698913367fb7af111df17143ec6}{u\+\_\+xv}} (xv\+\_\+data, ipow, iflag)
\item 
subroutine, public \mbox{\hyperlink{namespaceua__mpi__module__base_a0268a38f4a13aae8ef9f46bb579e3a23}{ua\+\_\+streampotential2vectormpi}} (ua\+\_\+\+Psi, ua\+\_\+\+Chi, xvb\+\_\+U, xvb\+\_\+V)
\item 
subroutine, public \mbox{\hyperlink{namespaceua__mpi__module__base_a0f16c53a0a285646c5fc615ea972d6ec}{ua\+\_\+vector2vordivmpi}} (xvb\+\_\+U, xvb\+\_\+V, ua\+\_\+\+Vor, ua\+\_\+\+Div)
\item 
subroutine, public \mbox{\hyperlink{namespaceua__mpi__module__base_ab365f91eba1e2a8bdc0e8ec0036bc219}{ua\+\_\+vectorcoslat2vordivmpi}} (xvb\+\_\+\+U\+Cos\+Lat, xvb\+\_\+\+V\+Cos\+Lat, ua\+\_\+\+Vor, ua\+\_\+\+Div)
\item 
subroutine, public \mbox{\hyperlink{namespaceua__mpi__module__base_ab5c7cc043ec4092ea95a60f62f818d9e}{ua\+\_\+base\+\_\+mpi\+\_\+finalize}}
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}} =16
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_add8f0bfad0998dadd2e218caad49712f}{nproc}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_a0a96bfc6aca39c79277b0d153e53e83f}{nproc\+\_\+h}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_ace8024e7d222f2079ebf63f149bbace5}{nproc\+\_\+v}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_a1669820d86642671e8ff6fc5f8f93a98}{iproc}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_a24117b9c8b0363bcea3fe8f50558e150}{iproc\+\_\+h}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_a44ce9518adedd383957c49b2b2657b28}{iproc\+\_\+v}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_ae4a7d2b26521bc753c9495488d2f3cf6}{nc}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_adb1aece196ee907eb087af66998b3109}{ks}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_a5d66bb05dec7b1d8073e532a70b37495}{ke}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}
\item 
integer, dimension(\+:), allocatable \mbox{\hyperlink{namespaceua__mpi__module__base_ac66f90697e4981b865410b98532ccaed}{ksp}}
\item 
integer, dimension(\+:), allocatable \mbox{\hyperlink{namespaceua__mpi__module__base_aa5d8e04344e2e129fd0a827245825f99}{kep}}
\item 
integer, dimension(\+:), allocatable \mbox{\hyperlink{namespaceua__mpi__module__base_aa830998d2ebc8eab491a51cc9d0e9541}{kcp}}
\item 
integer, public \mbox{\hyperlink{namespaceua__mpi__module__base_a99f5ba36beab9b7db0694b40f2232fb8}{nms}}
\item 
integer, public \mbox{\hyperlink{namespaceua__mpi__module__base_ae8bd02926fbbcb93e3bb6d1222b42982}{nme}}
\item 
integer, public \mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}}
\item 
integer, dimension(\+:), allocatable \mbox{\hyperlink{namespaceua__mpi__module__base_abc84ae6ef3894e0220af2872a137c750}{nmsp}}
\item 
integer, dimension(\+:), allocatable \mbox{\hyperlink{namespaceua__mpi__module__base_a590b2fb1fab7d778a3845476300feea0}{nmep}}
\item 
integer, dimension(\+:), allocatable \mbox{\hyperlink{namespaceua__mpi__module__base_a279b155688d69d1fd9de33b10cc457e4}{nmcp}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_aeb098e8d89b5cb2b760f323640cad26d}{mpi\+\_\+comm\+\_\+w}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_a8ecb710381425c07040b8357ac91be9b}{mpi\+\_\+comm\+\_\+h}}
\item 
integer, save, public \mbox{\hyperlink{namespaceua__mpi__module__base_af6afc50d091c0e9303c7c1aff0ace31f}{mpi\+\_\+comm\+\_\+v}}
\item 
logical, save \mbox{\hyperlink{namespaceua__mpi__module__base_a98562fcdd3daf35ee6de583c33f56b45}{first\+\_\+wb\+\_\+ua}} =.true.
\item 
logical, save \mbox{\hyperlink{namespaceua__mpi__module__base_a4c17e1576d50969d20a22a8d27ea606a}{first\+\_\+ua\+\_\+wb}} =.true.
\item 
logical, save \mbox{\hyperlink{namespaceua__mpi__module__base_ad28eb631ae22a1bd88b7e9fb6f1bdb63}{first\+\_\+wa\+\_\+ua}} =.true.
\item 
logical, save \mbox{\hyperlink{namespaceua__mpi__module__base_a8a6b6c1a0c381c74049f01735e3256c2}{first\+\_\+aa\+\_\+ab}} =.true.
\end{DoxyCompactItemize}


\doxysubsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{namespaceua__mpi__module__base_ab7b2720f93f99e0f5c0578e08d8fceae}\label{namespaceua__mpi__module__base_ab7b2720f93f99e0f5c0578e08d8fceae}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!aa\_ab@{aa\_ab}}
\index{aa\_ab@{aa\_ab}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{aa\_ab()}{aa\_ab()}}
{\footnotesize\ttfamily real(8) function, dimension(size(ab,1),\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::aa\+\_\+ab (\begin{DoxyParamCaption}\item[{real(8), dimension(\+:,\+:), intent(in)}]{ab }\end{DoxyParamCaption})}



Definition at line 589 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{589       \textcolor{comment}{!}}
\DoxyCodeLine{590       \textcolor{comment}{! 水平スペクトル・動径格子点データを集める.}}
\DoxyCodeLine{591       \textcolor{comment}{!}}
\DoxyCodeLine{592 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)} :: ab}
\DoxyCodeLine{593       \textcolor{comment}{!(in)  動径格子点データ(分割)}}
\DoxyCodeLine{594 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{dimension(size(ab,1),km)}   :: aa\_ab}
\DoxyCodeLine{595       \textcolor{comment}{!(out) 動径格子点データ}}
\DoxyCodeLine{596 }
\DoxyCodeLine{597       \textcolor{keywordtype}{integer} :: a\_size}
\DoxyCodeLine{598       \textcolor{keywordtype}{integer} :: IRQSTS}
\DoxyCodeLine{599       \textcolor{keywordtype}{integer} :: IST( MPI\_STATUS\_SIZE )}
\DoxyCodeLine{600 }
\DoxyCodeLine{601       \textcolor{keywordtype}{integer} :: ierr, ip\_v}
\DoxyCodeLine{602       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter} :: itag=111}
\DoxyCodeLine{603       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::snd\_rank\_v(:)}
\DoxyCodeLine{604       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::rcv\_rank\_v(:)}
\DoxyCodeLine{605       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::rcv\_idx(:)}
\DoxyCodeLine{606 }
\DoxyCodeLine{607       \textcolor{keywordtype}{save} snd\_rank\_v, rcv\_rank\_v, rcv\_idx}
\DoxyCodeLine{608 }
\DoxyCodeLine{609       \textcolor{keywordflow}{if} ( first\_aa\_ab ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{610          first\_aa\_ab = .false.}
\DoxyCodeLine{611          \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(snd\_rank\_v) ) \textcolor{keyword}{deallocate}(snd\_rank\_v)}
\DoxyCodeLine{612          \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(rcv\_rank\_v) ) \textcolor{keyword}{deallocate}(rcv\_rank\_v)}
\DoxyCodeLine{613          \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(rcv\_idx) )    \textcolor{keyword}{deallocate}(rcv\_idx)}
\DoxyCodeLine{614          \textcolor{keyword}{allocate}(snd\_rank\_v(1:nproc\_v-\/1))}
\DoxyCodeLine{615          \textcolor{keyword}{allocate}(rcv\_rank\_v(1:nproc\_v-\/1))}
\DoxyCodeLine{616          \textcolor{keyword}{allocate}(rcv\_idx(0:nproc\_v-\/1))}
\DoxyCodeLine{617 }
\DoxyCodeLine{618          \textcolor{keywordflow}{do} ip\_v=1,nproc\_v-\/1}
\DoxyCodeLine{619             rcv\_rank\_v(ip\_v) = mod(iproc\_v+ip\_v,nproc\_v)}
\DoxyCodeLine{620             snd\_rank\_v(ip\_v) = mod(iproc\_v-\/ip\_v+nproc\_v,nproc\_v)}
\DoxyCodeLine{621 \textcolor{keywordflow}{         enddo}}
\DoxyCodeLine{622 }
\DoxyCodeLine{623          rcv\_idx(0) = 0}
\DoxyCodeLine{624          \textcolor{keywordflow}{do} ip\_v=1,nproc\_v-\/1}
\DoxyCodeLine{625             rcv\_idx(ip\_v) = rcv\_idx(ip\_v-\/1)+kcp(ip\_v-\/1)}
\DoxyCodeLine{626 \textcolor{keywordflow}{         enddo}}
\DoxyCodeLine{627 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{628 }
\DoxyCodeLine{629       a\_size = \textcolor{keyword}{size}(ab,1)}
\DoxyCodeLine{630 }
\DoxyCodeLine{631       \textcolor{keyword}{call }mpi\_barrier(mpi\_comm\_v,ierr)}
\DoxyCodeLine{632       \textcolor{keywordflow}{do} ip\_v=1,nproc\_v-\/1}
\DoxyCodeLine{633          \textcolor{keyword}{call }mpi\_isend(ab, a\_size*kc, mpi\_real8, rcv\_rank\_v(ip\_v),\&}
\DoxyCodeLine{634               itag,mpi\_comm\_v,irqsts,ierr)}
\DoxyCodeLine{635          \textcolor{keyword}{call }mpi\_recv(aa\_ab(1,rcv\_idx(snd\_rank\_v(ip\_v))),\&}
\DoxyCodeLine{636               a\_size*kcp(snd\_rank\_v(ip\_v)), mpi\_real8,    \&}
\DoxyCodeLine{637               snd\_rank\_v(ip\_v), itag, mpi\_comm\_v, ist, ierr)}
\DoxyCodeLine{638          \textcolor{keyword}{CALL }mpi\_wait(irqsts,ist,ierr)}
\DoxyCodeLine{639 \textcolor{keywordflow}{      enddo}}
\DoxyCodeLine{640 }
\DoxyCodeLine{641       aa\_ab(:,rcv\_idx(iproc\_v):rcv\_idx(iproc\_v)+kcp(iproc\_v)-\/1) = ab}
\DoxyCodeLine{642 }

\end{DoxyCode}


References first\+\_\+aa\+\_\+ab, iproc\+\_\+v, kc, kcp, mpi\+\_\+comm\+\_\+v, and nproc\+\_\+v.

\mbox{\Hypertarget{namespaceua__mpi__module__base_ae2f8e298c1608fa7f39656efacbde06d}\label{namespaceua__mpi__module__base_ae2f8e298c1608fa7f39656efacbde06d}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ab\_aa@{ab\_aa}}
\index{ab\_aa@{ab\_aa}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ab\_aa()}{ab\_aa()}}
{\footnotesize\ttfamily real(8) function, dimension(size(aa,1),\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ab\+\_\+aa (\begin{DoxyParamCaption}\item[{real(8), dimension(\+:,\+:), intent(in)}]{aa }\end{DoxyParamCaption})}



Definition at line 646 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{646       \textcolor{comment}{!}}
\DoxyCodeLine{647       \textcolor{comment}{! 水平スペクトル・動径格子点データを分割する.}}
\DoxyCodeLine{648       \textcolor{comment}{!}}
\DoxyCodeLine{649 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)} :: aa}
\DoxyCodeLine{650       \textcolor{comment}{!(in)  動径格子点データ(:,0:km)}}
\DoxyCodeLine{651 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{dimension(size(aa,1),kc)}    :: ab\_aa}
\DoxyCodeLine{652       \textcolor{comment}{!(out) 動径格子点データ(分割)}}
\DoxyCodeLine{653 }
\DoxyCodeLine{654       ab\_aa = aa(:,ks:ke)}
\DoxyCodeLine{655 }

\end{DoxyCode}


References ke, and ks.

\mbox{\Hypertarget{namespaceua__mpi__module__base_af035e99e3aa163554dc51f35491da867}\label{namespaceua__mpi__module__base_af035e99e3aa163554dc51f35491da867}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!kp\_kl@{kp\_kl}}
\index{kp\_kl@{kp\_kl}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{kp\_kl()}{kp\_kl()}}
{\footnotesize\ttfamily integer function, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::kp\+\_\+kl (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{kl }\end{DoxyParamCaption})}



Definition at line 283 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{283       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(IN)} :: kl             \textcolor{comment}{! 層番号(全体)}}
\DoxyCodeLine{284       \textcolor{keywordtype}{integer}             :: kp\_kl          \textcolor{comment}{! 層番号(分割プロセス中)}}
\DoxyCodeLine{285 }
\DoxyCodeLine{286       \textcolor{keywordflow}{if} ( ks .le. kl .AND. kl .le. ke ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{287          kp\_kl = kl -\/ ks + 1}
\DoxyCodeLine{288       \textcolor{keywordflow}{else}}
\DoxyCodeLine{289          kp\_kl = 0}
\DoxyCodeLine{290 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{291 }

\end{DoxyCode}


References ke, and ks.

\mbox{\Hypertarget{namespaceua__mpi__module__base_a2bbcdfcc788c671edcd8db1126b915a5}\label{namespaceua__mpi__module__base_a2bbcdfcc788c671edcd8db1126b915a5}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!lu\_nm@{lu\_nm}}
\index{lu\_nm@{lu\_nm}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{lu\_nm()}{lu\_nm()}}
{\footnotesize\ttfamily integer function, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::lu\+\_\+nm (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{n,  }\item[{integer, intent(in)}]{m }\end{DoxyParamCaption})}



Definition at line 295 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{295       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(IN)} :: n              \textcolor{comment}{! 全波数}}
\DoxyCodeLine{296       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(IN)} :: m              \textcolor{comment}{! 帯状波数}}
\DoxyCodeLine{297       \textcolor{keywordtype}{integer}             :: lu\_nm          \textcolor{comment}{! 位置情報(分割プロセス中)}}
\DoxyCodeLine{298 }
\DoxyCodeLine{299       \textcolor{keywordtype}{integer} :: ll                         \textcolor{comment}{! 位置情報(全体)}}
\DoxyCodeLine{300 }
\DoxyCodeLine{301       ll = l\_nm(n,m)}
\DoxyCodeLine{302       \textcolor{keywordflow}{if} ( nms .le. ll .AND. ll .le. nme ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{303          lu\_nm = ll-\/nms+1}
\DoxyCodeLine{304       \textcolor{keywordflow}{else}}
\DoxyCodeLine{305          lu\_nm = 0}
\DoxyCodeLine{306 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{307 }

\end{DoxyCode}


References nme, and nms.

\mbox{\Hypertarget{namespaceua__mpi__module__base_aa4d8a8e5534bef6dcef295002581fc66}\label{namespaceua__mpi__module__base_aa4d8a8e5534bef6dcef295002581fc66}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!mpidevide@{mpidevide}}
\index{mpidevide@{mpidevide}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{mpidevide()}{mpidevide()}}
{\footnotesize\ttfamily subroutine ua\+\_\+mpi\+\_\+module\+\_\+base\+::mpidevide (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{mm,  }\item[{integer, intent(in)}]{np,  }\item[{integer, dimension(0\+:np-\/1), intent(out)}]{msp,  }\item[{integer, dimension(0\+:np-\/1), intent(out)}]{mep,  }\item[{integer, dimension(0\+:np-\/1), intent(out)}]{mcp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 255 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{255       \textcolor{comment}{!}}
\DoxyCodeLine{256       \textcolor{comment}{! 鉛直分割情報}}
\DoxyCodeLine{257       \textcolor{comment}{!}}
\DoxyCodeLine{258       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(IN)}  :: mm              \textcolor{comment}{! 全格子点数}}
\DoxyCodeLine{259       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(IN)}  :: np              \textcolor{comment}{! 分割プロセス数}}
\DoxyCodeLine{260       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(OUT)} :: msp(0:np-\/1)     \textcolor{comment}{! 分割開始インデックス}}
\DoxyCodeLine{261       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(OUT)} :: mep(0:np-\/1)     \textcolor{comment}{! 分割終了インデックス}}
\DoxyCodeLine{262       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(OUT)} :: mcp(0:np-\/1)     \textcolor{comment}{! 分割インデックス数}}
\DoxyCodeLine{263 }
\DoxyCodeLine{264       \textcolor{keywordtype}{integer} :: i, mint, mmod}
\DoxyCodeLine{265 }
\DoxyCodeLine{266       mint = mm/np}
\DoxyCodeLine{267       mmod = mod(mm,np)}
\DoxyCodeLine{268       mcp  = mint}
\DoxyCodeLine{269       \textcolor{keywordflow}{do} i = 0,mmod-\/1}
\DoxyCodeLine{270          mcp(i) = mcp(i)+1}
\DoxyCodeLine{271 \textcolor{keywordflow}{      enddo}}
\DoxyCodeLine{272 }
\DoxyCodeLine{273       msp(0)=1 ; mep(0) = msp(0) + mcp(0) -\/1}
\DoxyCodeLine{274       \textcolor{keywordflow}{do} i = 1,np-\/1}
\DoxyCodeLine{275          msp(i) = msp(i-\/1) + mcp(i-\/1)}
\DoxyCodeLine{276          mep(i) = msp(i) + mcp(i) -\/ 1}
\DoxyCodeLine{277 \textcolor{keywordflow}{      end do}}
\DoxyCodeLine{278 }

\end{DoxyCode}


Referenced by ua\+\_\+base\+\_\+mpi\+\_\+initial().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_aa4d8a8e5534bef6dcef295002581fc66_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_a9568b614728200201406fc7b37d36673}\label{namespaceua__mpi__module__base_a9568b614728200201406fc7b37d36673}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nm\_lu@{nm\_lu}}
\index{nm\_lu@{nm\_lu}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nm\_lu()}{nm\_lu()}}
{\footnotesize\ttfamily integer function, dimension(2), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::nm\+\_\+lu (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{l }\end{DoxyParamCaption})}



Definition at line 311 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{311       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(IN)} :: l              \textcolor{comment}{! 位置情報(分割プロセス中)}}
\DoxyCodeLine{312       \textcolor{keywordtype}{integer}             :: nm\_lu(2)        \textcolor{comment}{! 全波数, 帯状波数}}
\DoxyCodeLine{313 }
\DoxyCodeLine{314       nm\_lu = nm\_l(l+nms-\/1)}
\DoxyCodeLine{315 }

\end{DoxyCode}


References nms.

\mbox{\Hypertarget{namespaceua__mpi__module__base_ad841b698913367fb7af111df17143ec6}\label{namespaceua__mpi__module__base_ad841b698913367fb7af111df17143ec6}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!u\_xv@{u\_xv}}
\index{u\_xv@{u\_xv}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{u\_xv()}{u\_xv()}}
{\footnotesize\ttfamily real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}}), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::u\+\_\+xv (\begin{DoxyParamCaption}\item[{real(8), dimension(0\+:im-\/1,jc), intent(in)}]{xv\+\_\+data,  }\item[{integer, intent(in), optional}]{ipow,  }\item[{integer, intent(in), optional}]{iflag }\end{DoxyParamCaption})}



Definition at line 803 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{803       \textcolor{comment}{!}}
\DoxyCodeLine{804       \textcolor{comment}{! 格子データからスペクトルデータへ(正)変換する(多層用).}}
\DoxyCodeLine{805       \textcolor{comment}{!}}
\DoxyCodeLine{806 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(in)}   :: xv\_data(0:im-\/1,jc)}
\DoxyCodeLine{807       \textcolor{comment}{!(in) 格子点データ}}
\DoxyCodeLine{808 }
\DoxyCodeLine{809 \textcolor{keywordtype}{      real}(8)               :: u\_xv(nmc)}
\DoxyCodeLine{810       \textcolor{comment}{!(out) スペクトルデータ}}
\DoxyCodeLine{811 }
\DoxyCodeLine{812       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: ipow}
\DoxyCodeLine{813       \textcolor{comment}{!(in) 変換時に同時に作用させる 1/cosφ の次数. 省略時は 0.}}
\DoxyCodeLine{814 }
\DoxyCodeLine{815       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: iflag}
\DoxyCodeLine{816       \textcolor{comment}{! 変換の種類}}
\DoxyCodeLine{817       \textcolor{comment}{!    0 : 通常の正変換}}
\DoxyCodeLine{818       \textcolor{comment}{!   -\/1 : 経度微分を作用させた正変換}}
\DoxyCodeLine{819       \textcolor{comment}{!    1 : 緯度微分 1/cosφ・∂(f cos\string^2φ)/∂φ を作用させた正変換}}
\DoxyCodeLine{820       \textcolor{comment}{!    2 : sinφを作用させた正変換}}
\DoxyCodeLine{821       \textcolor{comment}{!  省略時は 0.}}
\DoxyCodeLine{822       \textcolor{comment}{!}}
\DoxyCodeLine{823       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: ipow\_default  = 0      \textcolor{comment}{! スイッチデフォルト値}}
\DoxyCodeLine{824       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: iflag\_default = 0      \textcolor{comment}{! スイッチデフォルト値}}
\DoxyCodeLine{825 }
\DoxyCodeLine{826       \textcolor{keywordtype}{integer} ipval, ifval}
\DoxyCodeLine{827 }
\DoxyCodeLine{828 \textcolor{keywordtype}{      real}(8) :: ua\_data(nmc,1)}
\DoxyCodeLine{829 \textcolor{keywordtype}{      real}(8) :: wa\_data(nc,1)}
\DoxyCodeLine{830       \textcolor{keywordtype}{integer} k}
\DoxyCodeLine{831 }
\DoxyCodeLine{832       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(ipow)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{833          ipval = ipow}
\DoxyCodeLine{834       \textcolor{keywordflow}{else}}
\DoxyCodeLine{835          ipval = ipow\_default}
\DoxyCodeLine{836 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{837 }
\DoxyCodeLine{838       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(iflag)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{839          ifval = iflag}
\DoxyCodeLine{840       \textcolor{keywordflow}{else}}
\DoxyCodeLine{841          ifval = iflag\_default}
\DoxyCodeLine{842 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{843 }
\DoxyCodeLine{844       wa\_data(:,1) = w\_xv(xv\_data,iflag=ifval,ipow=ipval)}
\DoxyCodeLine{845       ua\_data = ua\_wa(wa\_data)}
\DoxyCodeLine{846       u\_xv = ua\_data(:,1)}
\DoxyCodeLine{847 }

\end{DoxyCode}


References ua\+\_\+wa(), and w\+\_\+mpi\+\_\+module\+\_\+base\+::w\+\_\+xv().



Referenced by ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::u\+\_\+divlambda\+\_\+xv(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::u\+\_\+divlat\+\_\+xv(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::u\+\_\+divlon\+\_\+xv(), and ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::u\+\_\+divmu\+\_\+xv().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_ad841b698913367fb7af111df17143ec6_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_ad841b698913367fb7af111df17143ec6_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_ab5c7cc043ec4092ea95a60f62f818d9e}\label{namespaceua__mpi__module__base_ab5c7cc043ec4092ea95a60f62f818d9e}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ua\_base\_mpi\_finalize@{ua\_base\_mpi\_finalize}}
\index{ua\_base\_mpi\_finalize@{ua\_base\_mpi\_finalize}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ua\_base\_mpi\_finalize()}{ua\_base\_mpi\_finalize()}}
{\footnotesize\ttfamily subroutine, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ua\+\_\+base\+\_\+mpi\+\_\+finalize (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Definition at line 966 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{966       \textcolor{comment}{!}}
\DoxyCodeLine{967       \textcolor{comment}{!}}
\DoxyCodeLine{968       \textcolor{comment}{! このサブルーチンを単独で用いるのでなく,}}
\DoxyCodeLine{969       \textcolor{comment}{! 上位サブルーチン wa\_Finalize を使用すること.}}
\DoxyCodeLine{970       \textcolor{comment}{!}}
\DoxyCodeLine{971       \textcolor{keyword}{deallocate}(ksp)}
\DoxyCodeLine{972       \textcolor{keyword}{deallocate}(kep)}
\DoxyCodeLine{973       \textcolor{keyword}{deallocate}(kcp)}
\DoxyCodeLine{974       \textcolor{keyword}{deallocate}(nmsp)}
\DoxyCodeLine{975       \textcolor{keyword}{deallocate}(nmep)}
\DoxyCodeLine{976       \textcolor{keyword}{deallocate}(nmcp)}
\DoxyCodeLine{977 }
\DoxyCodeLine{978       \textcolor{keyword}{call }w\_base\_mpi\_finalize}
\DoxyCodeLine{979 }
\DoxyCodeLine{980       first\_wb\_ua=.true.}
\DoxyCodeLine{981       first\_ua\_wb=.true.}
\DoxyCodeLine{982       first\_wa\_ua=.true.}
\DoxyCodeLine{983       first\_aa\_ab=.true.}
\DoxyCodeLine{984 }
\DoxyCodeLine{985       \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'M'},     \&}
\DoxyCodeLine{986         \& \textcolor{stringliteral}{'ua\_base\_mpi\_finalize'}, \&}
\DoxyCodeLine{987         \& \textcolor{stringliteral}{'ua\_mpi\_module\_base is finalized (2020/01/25) '})}
\DoxyCodeLine{988 }

\end{DoxyCode}


References first\+\_\+aa\+\_\+ab, first\+\_\+ua\+\_\+wb, first\+\_\+wa\+\_\+ua, first\+\_\+wb\+\_\+ua, kcp, kep, ksp, nmcp, nmep, nmsp, and w\+\_\+mpi\+\_\+module\+\_\+base\+::w\+\_\+base\+\_\+mpi\+\_\+finalize().



Referenced by ua\+\_\+mpi\+\_\+module\+::ua\+\_\+mpi\+\_\+finalize().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=346pt]{namespaceua__mpi__module__base_ab5c7cc043ec4092ea95a60f62f818d9e_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_ab5c7cc043ec4092ea95a60f62f818d9e_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_a73f93133830708e2b96d2f2de767f3d8}\label{namespaceua__mpi__module__base_a73f93133830708e2b96d2f2de767f3d8}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ua\_base\_mpi\_initial@{ua\_base\_mpi\_initial}}
\index{ua\_base\_mpi\_initial@{ua\_base\_mpi\_initial}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ua\_base\_mpi\_initial()}{ua\_base\_mpi\_initial()}}
{\footnotesize\ttfamily subroutine, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ua\+\_\+base\+\_\+mpi\+\_\+initial (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{n\+\_\+in,  }\item[{integer, intent(in)}]{i\+\_\+in,  }\item[{integer, intent(in)}]{j\+\_\+in,  }\item[{integer, intent(in)}]{k\+\_\+in,  }\item[{integer, intent(in), optional}]{npv,  }\item[{integer, intent(in), optional}]{mpi\+\_\+comm }\end{DoxyParamCaption})}



Definition at line 128 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{128       \textcolor{comment}{!}}
\DoxyCodeLine{129       \textcolor{comment}{! ua\_mpi\_module\_base 初期化}}
\DoxyCodeLine{130       \textcolor{comment}{!}}
\DoxyCodeLine{131       \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: n\_in                \textcolor{comment}{!(in) 切断波数}}
\DoxyCodeLine{132       \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: i\_in                \textcolor{comment}{!(in) 格子点数(東西)}}
\DoxyCodeLine{133       \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: j\_in                \textcolor{comment}{!(in) 格子点数(南北)}}
\DoxyCodeLine{134       \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: k\_in                \textcolor{comment}{!(in) 最大データ数(層数)}}
\DoxyCodeLine{135       \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: npv        \textcolor{comment}{!(in) 層方向分割数}}
\DoxyCodeLine{136       \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: mpi\_comm   \textcolor{comment}{!(in) 全体コミュニケーター}}
\DoxyCodeLine{137 }
\DoxyCodeLine{138       \textcolor{keywordtype}{integer} :: ierr, iv}
\DoxyCodeLine{139 }
\DoxyCodeLine{140       km = k\_in}
\DoxyCodeLine{141 }
\DoxyCodeLine{142       \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(npv) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{143          nproc\_v = npv}
\DoxyCodeLine{144       \textcolor{keywordflow}{else}}
\DoxyCodeLine{145          nproc\_v = 1}
\DoxyCodeLine{146 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{147 }
\DoxyCodeLine{148       \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(mpi\_comm) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{149          mpi\_comm\_w = mpi\_comm}
\DoxyCodeLine{150       \textcolor{keywordflow}{else}}
\DoxyCodeLine{151          mpi\_comm\_w = mpi\_comm\_world}
\DoxyCodeLine{152 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{153 }
\DoxyCodeLine{154       \textcolor{keyword}{CALL }mpi\_comm\_size(mpi\_comm\_w,nproc,ierr)}
\DoxyCodeLine{155       \textcolor{keyword}{CALL }mpi\_comm\_rank(mpi\_comm\_w,iproc,ierr)}
\DoxyCodeLine{156 }
\DoxyCodeLine{157       nproc\_h = nproc/nproc\_v}
\DoxyCodeLine{158       iproc\_v = iproc/nproc\_h}
\DoxyCodeLine{159       iproc\_h = mod(iproc,nproc\_h)}
\DoxyCodeLine{160 }
\DoxyCodeLine{161       \textcolor{keyword}{CALL }mpi\_comm\_split(mpi\_comm\_w, iproc\_v, iproc\_h, mpi\_comm\_h, ierr )}
\DoxyCodeLine{162       \textcolor{keyword}{CALL }mpi\_comm\_split(mpi\_comm\_w, iproc\_h, iproc\_v, mpi\_comm\_v, ierr )}
\DoxyCodeLine{163 }
\DoxyCodeLine{164 \textcolor{comment}{!!\$  CALL MPI\_COMM\_RANK( MPIA\_COMM\_H, MYID\_H\_TMP , NERR )}}
\DoxyCodeLine{165 \textcolor{comment}{!!\$  CALL MPI\_COMM\_SIZE( MPIA\_COMM\_H, NPROC\_H\_TMP, NERR )}}
\DoxyCodeLine{166 \textcolor{comment}{!!\$}}
\DoxyCodeLine{167 \textcolor{comment}{!!\$  CALL MPI\_COMM\_RANK( MPIA\_COMM\_V, MYID\_V\_TMP , NERR )}}
\DoxyCodeLine{168 \textcolor{comment}{!!\$  CALL MPI\_COMM\_SIZE( MPIA\_COMM\_V, NPROC\_V\_TMP, NERR )}}
\DoxyCodeLine{169 }
\DoxyCodeLine{170 }
\DoxyCodeLine{171 \textcolor{comment}{!!\$      call set\_layerdiv(npv,iproc\_v,ks,ke)}}
\DoxyCodeLine{172 \textcolor{comment}{!!\$      kc = ke-\/ks+1                              ! 分散多層データの大きさ}}
\DoxyCodeLine{173 }
\DoxyCodeLine{174       \textcolor{keyword}{call }w\_base\_mpi\_initial(n\_in,i\_in,j\_in,mpi\_comm\_h)}
\DoxyCodeLine{175       nc = ncc}
\DoxyCodeLine{176 }
\DoxyCodeLine{177       \textcolor{keyword}{allocate}(ksp(0:nproc\_v-\/1))}
\DoxyCodeLine{178       \textcolor{keyword}{allocate}(kep(0:nproc\_v-\/1))}
\DoxyCodeLine{179       \textcolor{keyword}{allocate}(kcp(0:nproc\_v-\/1))}
\DoxyCodeLine{180       \textcolor{keyword}{call }mpidevide(km,nproc\_v,ksp,kep,kcp)}
\DoxyCodeLine{181       ksp = ksp ; kep = kep}
\DoxyCodeLine{182       ks = ksp(iproc\_v) ; ke = kep(iproc\_v) ; kc = kcp(iproc\_v)}
\DoxyCodeLine{183 }
\DoxyCodeLine{184       \textcolor{keywordflow}{IF}(iproc.EQ.0)\textcolor{keywordflow}{THEN}}
\DoxyCodeLine{185          \textcolor{keyword}{WRITE}(6,*)\textcolor{stringliteral}{'   RANK  KSTART  KEND    KC '}}
\DoxyCodeLine{186          \textcolor{keyword}{WRITE}(6,*)\textcolor{stringliteral}{'-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/'}}
\DoxyCodeLine{187          \textcolor{keywordflow}{DO} iv=0,nproc\_v-\/1}
\DoxyCodeLine{188             \textcolor{keyword}{WRITE}(6,\textcolor{stringliteral}{'(4i7)'}) iv, ksp(iv), kep(iv), kcp(iv)}
\DoxyCodeLine{189 \textcolor{keywordflow}{         ENDDO}}
\DoxyCodeLine{190          \textcolor{keyword}{WRITE}(6,*)\textcolor{stringliteral}{''}}
\DoxyCodeLine{191 \textcolor{keywordflow}{      END IF}}
\DoxyCodeLine{192 }
\DoxyCodeLine{193       \textcolor{keyword}{allocate}(nmsp(0:nproc\_v-\/1))}
\DoxyCodeLine{194       \textcolor{keyword}{allocate}(nmep(0:nproc\_v-\/1))}
\DoxyCodeLine{195       \textcolor{keyword}{allocate}(nmcp(0:nproc\_v-\/1))}
\DoxyCodeLine{196       \textcolor{keyword}{call }mpidevide(nc,nproc\_v,nmsp,nmep,nmcp)}
\DoxyCodeLine{197       nms = nmsp(iproc\_v) ; nme = nmep(iproc\_v) ; nmc = nmcp(iproc\_v)}
\DoxyCodeLine{198 }
\DoxyCodeLine{199       \textcolor{keywordflow}{IF}(iproc.EQ.0)\textcolor{keywordflow}{THEN}}
\DoxyCodeLine{200          \textcolor{keyword}{WRITE}(6,*)\textcolor{stringliteral}{'   RANK  NSTART  NEND    NC '}}
\DoxyCodeLine{201          \textcolor{keyword}{WRITE}(6,*)\textcolor{stringliteral}{'-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/'}}
\DoxyCodeLine{202          \textcolor{keywordflow}{DO} iv=0,nproc\_v-\/1}
\DoxyCodeLine{203             \textcolor{keyword}{WRITE}(6,\textcolor{stringliteral}{'(4i7)'}) iv, nmsp(iv), nmep(iv), nmcp(iv)}
\DoxyCodeLine{204 \textcolor{keywordflow}{         ENDDO}}
\DoxyCodeLine{205          \textcolor{keyword}{WRITE}(6,*)\textcolor{stringliteral}{''}}
\DoxyCodeLine{206 \textcolor{keywordflow}{      ENDIF}}
\DoxyCodeLine{207 }
\DoxyCodeLine{208       \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'M'},\textcolor{stringliteral}{'ua\_base\_mpi\_initial'}, \&}
\DoxyCodeLine{209           \textcolor{stringliteral}{'ua\_mpi\_module\_base (2020/01/25) is initialized'})}
\DoxyCodeLine{210 }

\end{DoxyCode}


References iproc, iproc\+\_\+h, iproc\+\_\+v, kc, kcp, ke, kep, km, ks, ksp, mpi\+\_\+comm\+\_\+h, mpi\+\_\+comm\+\_\+v, mpi\+\_\+comm\+\_\+w, mpidevide(), nc, nmc, nmcp, nme, nmep, nms, nmsp, nproc, nproc\+\_\+h, nproc\+\_\+v, and w\+\_\+mpi\+\_\+module\+\_\+base\+::w\+\_\+base\+\_\+mpi\+\_\+initial().



Referenced by ua\+\_\+mpi\+\_\+module\+::ua\+\_\+mpi\+\_\+initial().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_a73f93133830708e2b96d2f2de767f3d8_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_a73f93133830708e2b96d2f2de767f3d8_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_a0268a38f4a13aae8ef9f46bb579e3a23}\label{namespaceua__mpi__module__base_a0268a38f4a13aae8ef9f46bb579e3a23}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ua\_streampotential2vectormpi@{ua\_streampotential2vectormpi}}
\index{ua\_streampotential2vectormpi@{ua\_streampotential2vectormpi}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ua\_streampotential2vectormpi()}{ua\_streampotential2vectormpi()}}
{\footnotesize\ttfamily subroutine, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ua\+\_\+streampotential2vectormpi (\begin{DoxyParamCaption}\item[{real(8), dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), intent(in)}]{ua\+\_\+\+Psi,  }\item[{real(8), dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), intent(in)}]{ua\+\_\+\+Chi,  }\item[{real(8), dimension(0\+:im-\/1,jc,\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), intent(out)}]{xvb\+\_\+U,  }\item[{real(8), dimension(0\+:im-\/1,jc,\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), intent(out)}]{xvb\+\_\+V }\end{DoxyParamCaption})}



Definition at line 853 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{853       \textcolor{comment}{!}}
\DoxyCodeLine{854       \textcolor{comment}{! 流線・ポテンシャル(スペクトルデータ)から速度場(格子データ)に}}
\DoxyCodeLine{855       \textcolor{comment}{! (逆)変換する(多層用)}}
\DoxyCodeLine{856       \textcolor{comment}{!}}
\DoxyCodeLine{857       \textcolor{comment}{! スペクトル変換を用いず微分を計算するために, 変換回数が 2 回ですむ.}}
\DoxyCodeLine{858       \textcolor{comment}{!}}
\DoxyCodeLine{859       \textcolor{comment}{!   u cosφ =      ∂χ/∂λ -\/ cosφ∂ψ/∂φ,}}
\DoxyCodeLine{860       \textcolor{comment}{!   v cosφ = cosφ∂χ/∂φ +      ∂ψ/∂λ}}
\DoxyCodeLine{861       \textcolor{comment}{!}}
\DoxyCodeLine{862 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(in)}    :: ua\_Psi(nmc,km)}
\DoxyCodeLine{863       \textcolor{comment}{!(in) 流線関数((nm+1)*(nm+1),:)}}
\DoxyCodeLine{864 }
\DoxyCodeLine{865 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(in)}    :: ua\_Chi(nmc,km)}
\DoxyCodeLine{866       \textcolor{comment}{!(in) 速度ポテンシャル((nm+1)*(nm+1),:)}}
\DoxyCodeLine{867 }
\DoxyCodeLine{868 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(out)}   :: xvb\_U(0:im-\/1,jc,kc)}
\DoxyCodeLine{869       \textcolor{comment}{!(out) 速度経度成分(0:im-\/1,1:jm,:)}}
\DoxyCodeLine{870 }
\DoxyCodeLine{871 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(out)}   :: xvb\_V(0:im-\/1,jc,kc)}
\DoxyCodeLine{872       \textcolor{comment}{!(out) 速度緯度成分(0:im-\/1,1:jm,:)}}
\DoxyCodeLine{873 }
\DoxyCodeLine{874 \textcolor{keywordtype}{      real}(8) :: wb\_Psi(nc,kc)}
\DoxyCodeLine{875       \textcolor{comment}{!(in) 流線関数((nm+1)*(nm+1),:)}}
\DoxyCodeLine{876 }
\DoxyCodeLine{877 \textcolor{keywordtype}{      real}(8) :: wb\_Chi(nc,kc)}
\DoxyCodeLine{878       \textcolor{comment}{!(in) 速度ポテンシャル((nm+1)*(nm+1),:)}}
\DoxyCodeLine{879 }
\DoxyCodeLine{880       \textcolor{keywordtype}{integer} :: k}
\DoxyCodeLine{881 }
\DoxyCodeLine{882       wb\_psi = wb\_ua(ua\_psi)}
\DoxyCodeLine{883       wb\_chi = wb\_ua(ua\_chi)}
\DoxyCodeLine{884 }
\DoxyCodeLine{885       \textcolor{keywordflow}{do} k=1,kc}
\DoxyCodeLine{886          \textcolor{keyword}{call }w\_streampotential2vectormpi \&}
\DoxyCodeLine{887               ( wb\_psi(:,k), wb\_chi(:,k), xvb\_u(:,:,k), xvb\_v(:,:,k) )}
\DoxyCodeLine{888 \textcolor{keywordflow}{      enddo}}
\DoxyCodeLine{889 }

\end{DoxyCode}


References kc, w\+\_\+mpi\+\_\+module\+\_\+base\+::w\+\_\+streampotential2vectormpi(), and wb\+\_\+ua().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_a0268a38f4a13aae8ef9f46bb579e3a23_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_a0f16c53a0a285646c5fc615ea972d6ec}\label{namespaceua__mpi__module__base_a0f16c53a0a285646c5fc615ea972d6ec}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ua\_vector2vordivmpi@{ua\_vector2vordivmpi}}
\index{ua\_vector2vordivmpi@{ua\_vector2vordivmpi}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ua\_vector2vordivmpi()}{ua\_vector2vordivmpi()}}
{\footnotesize\ttfamily subroutine, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ua\+\_\+vector2vordivmpi (\begin{DoxyParamCaption}\item[{real(8), dimension(0\+:im-\/1,jc,\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), intent(in)}]{xvb\+\_\+U,  }\item[{real(8), dimension(0\+:im-\/1,jc,\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), intent(in)}]{xvb\+\_\+V,  }\item[{real(8), dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), intent(out)}]{ua\+\_\+\+Vor,  }\item[{real(8), dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), intent(out)}]{ua\+\_\+\+Div }\end{DoxyParamCaption})}



Definition at line 893 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{893       \textcolor{comment}{!}}
\DoxyCodeLine{894       \textcolor{comment}{! 速度場(格子データ)から渦度・発散(スペクトルデータ)に}}
\DoxyCodeLine{895       \textcolor{comment}{! (正)変換する(多層用)}}
\DoxyCodeLine{896       \textcolor{comment}{!}}
\DoxyCodeLine{897       \textcolor{comment}{! スペクトル変換を用いず微分を計算するために, 変換回数が 2 回ですむ.}}
\DoxyCodeLine{898       \textcolor{comment}{!}}
\DoxyCodeLine{899       \textcolor{comment}{!   ζ = 1/cosφ∂v/∂λ -\/ 1/cosφ ∂(u cosφ)/∂φ}}
\DoxyCodeLine{900       \textcolor{comment}{!    D = 1/cosφ∂u/∂λ + 1/cosφ ∂(v cosφ)/∂φ}}
\DoxyCodeLine{901       \textcolor{comment}{!}}
\DoxyCodeLine{902 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(in)}   :: xvb\_U(0:im-\/1,jc,kc)}
\DoxyCodeLine{903       \textcolor{comment}{!(in) 速度経度成分(0:im-\/1,1:jm,:)}}
\DoxyCodeLine{904 }
\DoxyCodeLine{905 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(in)}   :: xvb\_V(0:im-\/1,jc,kc)}
\DoxyCodeLine{906       \textcolor{comment}{!(in) 速度緯度成分(0:im-\/1,1:jm,:)}}
\DoxyCodeLine{907 }
\DoxyCodeLine{908 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(out)}   :: ua\_Vor(nmc,km)}
\DoxyCodeLine{909       \textcolor{comment}{!(out) 渦度}}
\DoxyCodeLine{910 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(out)}   :: ua\_Div(nmc,km)}
\DoxyCodeLine{911       \textcolor{comment}{!(out) 発散}}
\DoxyCodeLine{912 }
\DoxyCodeLine{913 \textcolor{keywordtype}{      real}(8)  :: wb\_Vor(nc,kc)  \textcolor{comment}{! 渦度}}
\DoxyCodeLine{914 \textcolor{keywordtype}{      real}(8)  :: wb\_Div(nc,kc)  \textcolor{comment}{! 発散}}
\DoxyCodeLine{915 }
\DoxyCodeLine{916       \textcolor{keywordtype}{integer} :: k}
\DoxyCodeLine{917 }
\DoxyCodeLine{918       \textcolor{keywordflow}{do} k=1,kc}
\DoxyCodeLine{919          \textcolor{keyword}{call }w\_vector2vordivmpi \&}
\DoxyCodeLine{920                (xvb\_u(:,:,k), xvb\_v(:,:,k), wb\_vor(:,k), wb\_div(:,k))}
\DoxyCodeLine{921 \textcolor{keywordflow}{      enddo}}
\DoxyCodeLine{922 }
\DoxyCodeLine{923       ua\_vor = ua\_wb(wb\_vor)}
\DoxyCodeLine{924       ua\_div = ua\_wb(wb\_div)}
\DoxyCodeLine{925 }

\end{DoxyCode}


References kc, ua\+\_\+wb(), and w\+\_\+mpi\+\_\+module\+\_\+base\+::w\+\_\+vector2vordivmpi().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=343pt]{namespaceua__mpi__module__base_a0f16c53a0a285646c5fc615ea972d6ec_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_ab365f91eba1e2a8bdc0e8ec0036bc219}\label{namespaceua__mpi__module__base_ab365f91eba1e2a8bdc0e8ec0036bc219}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ua\_vectorcoslat2vordivmpi@{ua\_vectorcoslat2vordivmpi}}
\index{ua\_vectorcoslat2vordivmpi@{ua\_vectorcoslat2vordivmpi}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ua\_vectorcoslat2vordivmpi()}{ua\_vectorcoslat2vordivmpi()}}
{\footnotesize\ttfamily subroutine, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ua\+\_\+vectorcoslat2vordivmpi (\begin{DoxyParamCaption}\item[{real(8), dimension(0\+:im-\/1,jc,\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), intent(in)}]{xvb\+\_\+\+U\+Cos\+Lat,  }\item[{real(8), dimension(0\+:im-\/1,jc,\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), intent(in)}]{xvb\+\_\+\+V\+Cos\+Lat,  }\item[{real(8), dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), intent(out)}]{ua\+\_\+\+Vor,  }\item[{real(8), dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), intent(out)}]{ua\+\_\+\+Div }\end{DoxyParamCaption})}



Definition at line 929 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{929       \textcolor{comment}{!}}
\DoxyCodeLine{930       \textcolor{comment}{! 速度場(格子データ)から渦度・発散(スペクトルデータ)に}}
\DoxyCodeLine{931       \textcolor{comment}{! (正)変換する(多層用)}}
\DoxyCodeLine{932       \textcolor{comment}{!}}
\DoxyCodeLine{933       \textcolor{comment}{! スペクトル変換を用いず微分を計算するために, 変換回数が 2 回ですむ.}}
\DoxyCodeLine{934       \textcolor{comment}{!}}
\DoxyCodeLine{935       \textcolor{comment}{!   ζ = 1/cosφ∂v/∂λ -\/ 1/cosφ ∂(u cosφ)/∂φ}}
\DoxyCodeLine{936       \textcolor{comment}{!    D = 1/cosφ∂u/∂λ + 1/cosφ ∂(v cosφ)/∂φ}}
\DoxyCodeLine{937       \textcolor{comment}{!}}
\DoxyCodeLine{938 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(in)}   :: xvb\_UCosLat(0:im-\/1,jc,kc)}
\DoxyCodeLine{939       \textcolor{comment}{!(in) 速度経度成分 * cos(lat) (0:im-\/1,1:jm,:)}}
\DoxyCodeLine{940 }
\DoxyCodeLine{941 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(in)}   :: xvb\_VCosLat(0:im-\/1,jc,kc)}
\DoxyCodeLine{942       \textcolor{comment}{!(in) 速度緯度成分 * cos(lat) (0:im-\/1,1:jm,:)}}
\DoxyCodeLine{943 }
\DoxyCodeLine{944 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(out)}   :: ua\_Vor(nmc,km)}
\DoxyCodeLine{945       \textcolor{comment}{!(out) 流線関数}}
\DoxyCodeLine{946 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(out)}   :: ua\_Div(nmc,km)}
\DoxyCodeLine{947       \textcolor{comment}{!(out) 速度ポテンシャル}}
\DoxyCodeLine{948 }
\DoxyCodeLine{949 \textcolor{keywordtype}{      real}(8)  :: wb\_Vor(nc,kc)  \textcolor{comment}{! 渦度}}
\DoxyCodeLine{950 \textcolor{keywordtype}{      real}(8)  :: wb\_Div(nc,kc)  \textcolor{comment}{! 発散}}
\DoxyCodeLine{951 }
\DoxyCodeLine{952       \textcolor{keywordtype}{integer} :: k}
\DoxyCodeLine{953 }
\DoxyCodeLine{954       \textcolor{keywordflow}{do} k=1,kc}
\DoxyCodeLine{955          \textcolor{keyword}{call }w\_vectorcoslat2vordivmpi \&}
\DoxyCodeLine{956                (xvb\_ucoslat(:,:,k), xvb\_vcoslat(:,:,k), wb\_vor(:,k), wb\_div(:,k))}
\DoxyCodeLine{957 \textcolor{keywordflow}{      enddo}}
\DoxyCodeLine{958 }
\DoxyCodeLine{959       ua\_vor = ua\_wb(wb\_vor)}
\DoxyCodeLine{960       ua\_div = ua\_wb(wb\_div)}
\DoxyCodeLine{961 }

\end{DoxyCode}


References kc, ua\+\_\+wb(), and w\+\_\+mpi\+\_\+module\+\_\+base\+::w\+\_\+vectorcoslat2vordivmpi().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_ab365f91eba1e2a8bdc0e8ec0036bc219_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_ada4da456cb3f9346815084e3264ac852}\label{namespaceua__mpi__module__base_ada4da456cb3f9346815084e3264ac852}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ua\_wa@{ua\_wa}}
\index{ua\_wa@{ua\_wa}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ua\_wa()}{ua\_wa()}}
{\footnotesize\ttfamily real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},size(wa,2)), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ua\+\_\+wa (\begin{DoxyParamCaption}\item[{real(8), dimension(\+:,\+:), intent(in)}]{wa }\end{DoxyParamCaption})}



Definition at line 504 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{504      \textcolor{comment}{!}}
\DoxyCodeLine{505      \textcolor{comment}{! 水平スペクトルデータを再分割する}}
\DoxyCodeLine{506      \textcolor{comment}{!}}
\DoxyCodeLine{507 \textcolor{keywordtype}{     real}(8), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)} :: wa}
\DoxyCodeLine{508      \textcolor{comment}{!(in) 2 次元球面調和函数データ (nc,:)}}
\DoxyCodeLine{509 \textcolor{keywordtype}{     real}(8), \textcolor{keywordtype}{dimension(nmc,size(wa,2))}  :: ua\_wa}
\DoxyCodeLine{510      \textcolor{comment}{!(out) 2 次元球面調和函数データ(水平再分割)}}
\DoxyCodeLine{511 }
\DoxyCodeLine{512      ua\_wa = wa(nms:nme,:)}
\DoxyCodeLine{513 }

\end{DoxyCode}


References nme, and nms.



Referenced by ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::u\+\_\+jacobianmpi\+\_\+u\+\_\+u(), and u\+\_\+xv().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_ada4da456cb3f9346815084e3264ac852_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_a4fa194094ac4cd8eb39ef68a1b4a6948}\label{namespaceua__mpi__module__base_a4fa194094ac4cd8eb39ef68a1b4a6948}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ua\_wb@{ua\_wb}}
\index{ua\_wb@{ua\_wb}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ua\_wb()}{ua\_wb()}}
{\footnotesize\ttfamily real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ua\+\_\+wb (\begin{DoxyParamCaption}\item[{real(8), dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_ae4a7d2b26521bc753c9495488d2f3cf6}{nc}},\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), intent(in)}]{wb }\end{DoxyParamCaption})}



Definition at line 379 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{379       \textcolor{comment}{!}}
\DoxyCodeLine{380       \textcolor{comment}{! 水平スペクトル・層分割データを集める.}}
\DoxyCodeLine{381       \textcolor{comment}{!}}
\DoxyCodeLine{382 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{dimension(nc,kc)}, \textcolor{keywordtype}{intent(in)} :: wb}
\DoxyCodeLine{383       \textcolor{comment}{!(in)  動径格子点データ(分割)}}
\DoxyCodeLine{384 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{dimension(nmc,km)} :: ua\_wb}
\DoxyCodeLine{385       \textcolor{comment}{!(out) 動径格子点データ}}
\DoxyCodeLine{386 }
\DoxyCodeLine{387 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{allocatable} :: wb\_send(:,:)}
\DoxyCodeLine{388 }
\DoxyCodeLine{389       \textcolor{keywordtype}{integer} :: IRQSTS}
\DoxyCodeLine{390       \textcolor{keywordtype}{integer} :: IST( MPI\_STATUS\_SIZE )}
\DoxyCodeLine{391 }
\DoxyCodeLine{392       \textcolor{keywordtype}{integer} :: ierr, iv}
\DoxyCodeLine{393       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter} :: itag=111}
\DoxyCodeLine{394       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::snd\_rank\_v(:)}
\DoxyCodeLine{395       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::rcv\_rank\_v(:)}
\DoxyCodeLine{396       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::rcv\_idx(:)}
\DoxyCodeLine{397 }
\DoxyCodeLine{398       \textcolor{keywordtype}{save} snd\_rank\_v, rcv\_rank\_v, rcv\_idx}
\DoxyCodeLine{399 }
\DoxyCodeLine{400       \textcolor{keywordflow}{if} ( first\_ua\_wb ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{401          first\_ua\_wb = .false.}
\DoxyCodeLine{402          \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(snd\_rank\_v) ) \textcolor{keyword}{deallocate}(snd\_rank\_v)}
\DoxyCodeLine{403          \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(rcv\_rank\_v) ) \textcolor{keyword}{deallocate}(rcv\_rank\_v)}
\DoxyCodeLine{404          \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(rcv\_idx) ) \textcolor{keyword}{deallocate}(rcv\_idx)}
\DoxyCodeLine{405          \textcolor{keyword}{allocate}(snd\_rank\_v(1:nproc\_v-\/1))}
\DoxyCodeLine{406          \textcolor{keyword}{allocate}(rcv\_rank\_v(1:nproc\_v-\/1))}
\DoxyCodeLine{407          \textcolor{keyword}{allocate}(rcv\_idx(0:nproc\_v-\/1))}
\DoxyCodeLine{408 }
\DoxyCodeLine{409          \textcolor{keywordflow}{do} iv=1,nproc\_v-\/1}
\DoxyCodeLine{410             rcv\_rank\_v(iv) = mod(iproc\_v+iv,nproc\_v)}
\DoxyCodeLine{411             snd\_rank\_v(iv) = mod(iproc\_v-\/iv+nproc\_v,nproc\_v)}
\DoxyCodeLine{412 \textcolor{keywordflow}{         enddo}}
\DoxyCodeLine{413 }
\DoxyCodeLine{414          rcv\_idx(0) = 1}
\DoxyCodeLine{415          \textcolor{keywordflow}{do} iv=1,nproc\_v-\/1}
\DoxyCodeLine{416             rcv\_idx(iv) = rcv\_idx(iv-\/1)+kcp(iv-\/1)}
\DoxyCodeLine{417 \textcolor{keywordflow}{         enddo}}
\DoxyCodeLine{418 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{419 }
\DoxyCodeLine{420       \textcolor{keyword}{call }mpi\_barrier(mpi\_comm\_v,ierr)}
\DoxyCodeLine{421       \textcolor{keywordflow}{do} iv=1,nproc\_v-\/1}
\DoxyCodeLine{422          \textcolor{keyword}{allocate}(wb\_send(nmcp(rcv\_rank\_v(iv)),kc))}
\DoxyCodeLine{423          wb\_send = wb(nmsp(rcv\_rank\_v(iv)):nmep(rcv\_rank\_v(iv)),:)}
\DoxyCodeLine{424          \textcolor{keyword}{call }mpi\_isend(wb\_send, nmcp(rcv\_rank\_v(iv))*kc,\&}
\DoxyCodeLine{425               mpi\_real8, rcv\_rank\_v(iv),\&}
\DoxyCodeLine{426               itag,mpi\_comm\_v,irqsts,ierr)}
\DoxyCodeLine{427          \textcolor{keyword}{deallocate}(wb\_send)}
\DoxyCodeLine{428          \textcolor{keyword}{call }mpi\_recv(ua\_wb(1,rcv\_idx(snd\_rank\_v(iv))),\&}
\DoxyCodeLine{429               nmc*kcp(snd\_rank\_v(iv)), mpi\_real8,    \&}
\DoxyCodeLine{430               snd\_rank\_v(iv), itag, mpi\_comm\_v, ist, ierr)}
\DoxyCodeLine{431          \textcolor{keyword}{CALL }mpi\_wait(irqsts,ist,ierr)}
\DoxyCodeLine{432 \textcolor{keywordflow}{      enddo}}
\DoxyCodeLine{433 }
\DoxyCodeLine{434       ua\_wb(:,ks:ke) = wb(nms:nme,:)}
\DoxyCodeLine{435 }

\end{DoxyCode}


References first\+\_\+ua\+\_\+wb, iproc\+\_\+v, kc, kcp, ke, ks, mpi\+\_\+comm\+\_\+v, nmc, nmcp, nme, nmep, nms, nmsp, and nproc\+\_\+v.



Referenced by ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+dlon\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+jacobianmpi\+\_\+ua\+\_\+ua(), ua\+\_\+vector2vordivmpi(), ua\+\_\+vectorcoslat2vordivmpi(), and ua\+\_\+xvb().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_a4fa194094ac4cd8eb39ef68a1b4a6948_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_aca15e3577ad16b46012ba226e91f80b6}\label{namespaceua__mpi__module__base_aca15e3577ad16b46012ba226e91f80b6}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ua\_xvb@{ua\_xvb}}
\index{ua\_xvb@{ua\_xvb}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ua\_xvb()}{ua\_xvb()}}
{\footnotesize\ttfamily real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ua\+\_\+xvb (\begin{DoxyParamCaption}\item[{real(8), dimension(0\+:im-\/1,jc,\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), intent(in)}]{xvb\+\_\+data,  }\item[{integer, intent(in), optional}]{ipow,  }\item[{integer, intent(in), optional}]{iflag }\end{DoxyParamCaption})}



Definition at line 708 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{708       \textcolor{comment}{!}}
\DoxyCodeLine{709       \textcolor{comment}{! 格子データからスペクトルデータへ(正)変換する(多層用).}}
\DoxyCodeLine{710       \textcolor{comment}{!}}
\DoxyCodeLine{711 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(in)}   :: xvb\_data(0:im-\/1,jc,kc)}
\DoxyCodeLine{712       \textcolor{comment}{!(in) 格子点データ}}
\DoxyCodeLine{713 }
\DoxyCodeLine{714 \textcolor{keywordtype}{      real}(8)               :: ua\_xvb(nmc,km)}
\DoxyCodeLine{715       \textcolor{comment}{!(out) スペクトルデータ}}
\DoxyCodeLine{716 }
\DoxyCodeLine{717       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: ipow}
\DoxyCodeLine{718       \textcolor{comment}{!(in) 変換時に同時に作用させる 1/cosφ の次数. 省略時は 0.}}
\DoxyCodeLine{719 }
\DoxyCodeLine{720       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: iflag}
\DoxyCodeLine{721       \textcolor{comment}{! 変換の種類}}
\DoxyCodeLine{722       \textcolor{comment}{!    0 : 通常の正変換}}
\DoxyCodeLine{723       \textcolor{comment}{!   -\/1 : 経度微分を作用させた正変換}}
\DoxyCodeLine{724       \textcolor{comment}{!    1 : 緯度微分 1/cosφ・∂(f cos\string^2φ)/∂φ を作用させた正変換}}
\DoxyCodeLine{725       \textcolor{comment}{!    2 : sinφを作用させた正変換}}
\DoxyCodeLine{726       \textcolor{comment}{!  省略時は 0.}}
\DoxyCodeLine{727       \textcolor{comment}{!}}
\DoxyCodeLine{728       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: ipow\_default  = 0      \textcolor{comment}{! スイッチデフォルト値}}
\DoxyCodeLine{729       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: iflag\_default = 0      \textcolor{comment}{! スイッチデフォルト値}}
\DoxyCodeLine{730 }
\DoxyCodeLine{731       \textcolor{keywordtype}{integer} ipval, ifval}
\DoxyCodeLine{732 }
\DoxyCodeLine{733 \textcolor{keywordtype}{      real}(8) :: wb\_data(nc,kc)}
\DoxyCodeLine{734       \textcolor{keywordtype}{integer} k}
\DoxyCodeLine{735 }
\DoxyCodeLine{736       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(ipow)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{737          ipval = ipow}
\DoxyCodeLine{738       \textcolor{keywordflow}{else}}
\DoxyCodeLine{739          ipval = ipow\_default}
\DoxyCodeLine{740 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{741 }
\DoxyCodeLine{742       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(iflag)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{743          ifval = iflag}
\DoxyCodeLine{744       \textcolor{keywordflow}{else}}
\DoxyCodeLine{745          ifval = iflag\_default}
\DoxyCodeLine{746 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{747 }
\DoxyCodeLine{748       \textcolor{keywordflow}{do} k=1,kc}
\DoxyCodeLine{749          wb\_data(:,k) = w\_xv(xvb\_data(:,:,k),iflag=ifval,ipow=ipval)}
\DoxyCodeLine{750 \textcolor{keywordflow}{      enddo}}
\DoxyCodeLine{751 }
\DoxyCodeLine{752       ua\_xvb = ua\_wb(wb\_data)}
\DoxyCodeLine{753 }

\end{DoxyCode}


References kc, ua\+\_\+wb(), and w\+\_\+mpi\+\_\+module\+\_\+base\+::w\+\_\+xv().



Referenced by ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+divlambda\+\_\+xvb(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+divlat\+\_\+xvb(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+divlon\+\_\+xvb(), and ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+divmu\+\_\+xvb().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_aca15e3577ad16b46012ba226e91f80b6_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_aca15e3577ad16b46012ba226e91f80b6_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_a83d2ad9b1de5fef2e510085d0ee28a52}\label{namespaceua__mpi__module__base_a83d2ad9b1de5fef2e510085d0ee28a52}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!wa\_ua@{wa\_ua}}
\index{wa\_ua@{wa\_ua}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{wa\_ua()}{wa\_ua()}}
{\footnotesize\ttfamily real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_ae4a7d2b26521bc753c9495488d2f3cf6}{nc}},size(ua,2)), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::wa\+\_\+ua (\begin{DoxyParamCaption}\item[{real(8), dimension(\+:,\+:), intent(in)}]{ua }\end{DoxyParamCaption})}



Definition at line 439 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{439      \textcolor{comment}{!}}
\DoxyCodeLine{440      \textcolor{comment}{! 水平スペクトル・動径格子点データからスペクトルデータへ(正)変換する.}}
\DoxyCodeLine{441      \textcolor{comment}{!}}
\DoxyCodeLine{442 \textcolor{keywordtype}{     real}(8), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}       :: ua}
\DoxyCodeLine{443      \textcolor{comment}{!(in) 2 次元球面調和函数(水平再分割) (nc,:)}}
\DoxyCodeLine{444 \textcolor{keywordtype}{     real}(8), \textcolor{keywordtype}{dimension(nc,size(ua,2))}   :: wa\_ua}
\DoxyCodeLine{445      \textcolor{comment}{!(out) 2 次元球面調和函数チェビシェフスペクトルデータ}}
\DoxyCodeLine{446 }
\DoxyCodeLine{447 \textcolor{keywordtype}{     real}(8), \textcolor{keywordtype}{dimension(size(ua,2),nmc)}  :: au}
\DoxyCodeLine{448 \textcolor{keywordtype}{     real}(8), \textcolor{keywordtype}{dimension(size(ua,2),nc)}   :: aw}
\DoxyCodeLine{449 }
\DoxyCodeLine{450      \textcolor{keywordtype}{integer} :: a\_size}
\DoxyCodeLine{451      \textcolor{keywordtype}{integer} :: IRQSTS}
\DoxyCodeLine{452      \textcolor{keywordtype}{integer} :: IST( MPI\_STATUS\_SIZE )}
\DoxyCodeLine{453 }
\DoxyCodeLine{454      \textcolor{keywordtype}{integer} :: ierr, ip\_v}
\DoxyCodeLine{455      \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter} :: itag=110}
\DoxyCodeLine{456      \textcolor{comment}{! integer, allocatable ::snd\_rank(:)}}
\DoxyCodeLine{457      \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::snd\_rank\_v(:)}
\DoxyCodeLine{458      \textcolor{comment}{! integer, allocatable ::rcv\_rank(:)}}
\DoxyCodeLine{459      \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::rcv\_rank\_v(:)}
\DoxyCodeLine{460      \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::rcv\_idx(:)}
\DoxyCodeLine{461 }
\DoxyCodeLine{462      \textcolor{keywordtype}{save} snd\_rank\_v, rcv\_rank\_v, rcv\_idx \textcolor{comment}{!, snd\_rank, rcv\_rank}}
\DoxyCodeLine{463 }
\DoxyCodeLine{464      \textcolor{keywordflow}{if} ( first\_wa\_ua ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{465         first\_wa\_ua = .false.}
\DoxyCodeLine{466         \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(snd\_rank\_v) ) \textcolor{keyword}{deallocate}(snd\_rank\_v)}
\DoxyCodeLine{467         \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(rcv\_rank\_v) ) \textcolor{keyword}{deallocate}(rcv\_rank\_v)}
\DoxyCodeLine{468         \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(rcv\_idx)    ) \textcolor{keyword}{deallocate}(rcv\_idx)}
\DoxyCodeLine{469         \textcolor{keyword}{allocate}(snd\_rank\_v(1:nproc\_v-\/1))}
\DoxyCodeLine{470         \textcolor{keyword}{allocate}(rcv\_rank\_v(1:nproc\_v-\/1))}
\DoxyCodeLine{471         \textcolor{keyword}{allocate}(rcv\_idx(0:nproc\_v-\/1))}
\DoxyCodeLine{472 }
\DoxyCodeLine{473         \textcolor{keywordflow}{do} ip\_v=1,nproc\_v-\/1}
\DoxyCodeLine{474            rcv\_rank\_v(ip\_v) = mod(iproc\_v+ip\_v,nproc\_v)}
\DoxyCodeLine{475            snd\_rank\_v(ip\_v) = mod(iproc\_v-\/ip\_v+nproc\_v,nproc\_v)}
\DoxyCodeLine{476 \textcolor{keywordflow}{        enddo}}
\DoxyCodeLine{477 }
\DoxyCodeLine{478         rcv\_idx(0) = 1}
\DoxyCodeLine{479         \textcolor{keywordflow}{do} ip\_v=1,nproc\_v-\/1}
\DoxyCodeLine{480            rcv\_idx(ip\_v) = rcv\_idx(ip\_v-\/1)+nmcp(ip\_v-\/1)}
\DoxyCodeLine{481 \textcolor{keywordflow}{        enddo}}
\DoxyCodeLine{482 \textcolor{keywordflow}{     endif}}
\DoxyCodeLine{483 }
\DoxyCodeLine{484      au = transpose(ua)}
\DoxyCodeLine{485      a\_size = \textcolor{keyword}{size}(ua,2)}
\DoxyCodeLine{486 }
\DoxyCodeLine{487      \textcolor{keyword}{call }mpi\_barrier(mpi\_comm\_v,ierr)}
\DoxyCodeLine{488      \textcolor{keywordflow}{do} ip\_v=1,nproc\_v-\/1}
\DoxyCodeLine{489         \textcolor{keyword}{call }mpi\_isend(au, a\_size*nmc, mpi\_real8, rcv\_rank\_v(ip\_v),\&}
\DoxyCodeLine{490              itag,mpi\_comm\_v,irqsts,ierr)}
\DoxyCodeLine{491         \textcolor{keyword}{call }mpi\_recv(aw(1,rcv\_idx(snd\_rank\_v(ip\_v))),  \&}
\DoxyCodeLine{492              a\_size*nmcp(snd\_rank\_v(ip\_v)), mpi\_real8,   \&}
\DoxyCodeLine{493              snd\_rank\_v(ip\_v), itag, mpi\_comm\_v, ist, ierr)}
\DoxyCodeLine{494         \textcolor{keyword}{CALL }mpi\_wait(irqsts,ist,ierr)}
\DoxyCodeLine{495 \textcolor{keywordflow}{     enddo}}
\DoxyCodeLine{496 }
\DoxyCodeLine{497      aw(:,rcv\_idx(iproc\_v):rcv\_idx(iproc\_v)+nmcp(iproc\_v)-\/1) = au}
\DoxyCodeLine{498 }
\DoxyCodeLine{499      wa\_ua = transpose(aw)}
\DoxyCodeLine{500 }

\end{DoxyCode}


References first\+\_\+wa\+\_\+ua, iproc\+\_\+v, mpi\+\_\+comm\+\_\+v, nmc, nmcp, and nproc\+\_\+v.



Referenced by ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::u\+\_\+jacobianmpi\+\_\+u\+\_\+u(), and xv\+\_\+u().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_a83d2ad9b1de5fef2e510085d0ee28a52_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_adefa40bc8541f3d74264807663e1e115}\label{namespaceua__mpi__module__base_adefa40bc8541f3d74264807663e1e115}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!wb\_ua@{wb\_ua}}
\index{wb\_ua@{wb\_ua}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{wb\_ua()}{wb\_ua()}}
{\footnotesize\ttfamily real(8) function, dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_ae4a7d2b26521bc753c9495488d2f3cf6}{nc}},\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::wb\+\_\+ua (\begin{DoxyParamCaption}\item[{real(8), dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), intent(in)}]{ua }\end{DoxyParamCaption})}



Definition at line 320 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{320       \textcolor{comment}{!}}
\DoxyCodeLine{321       \textcolor{comment}{! 水平スペクトル・動径格子点データからスペクトルデータへ(正)変換する.}}
\DoxyCodeLine{322       \textcolor{comment}{!}}
\DoxyCodeLine{323 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{dimension(nmc,km)}, \textcolor{keywordtype}{intent(in)}       :: ua}
\DoxyCodeLine{324       \textcolor{comment}{!(in) 2 次元球面調和函数(水平再分割) (nc,:)}}
\DoxyCodeLine{325 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{dimension(nc,kc)}                    :: wb\_ua}
\DoxyCodeLine{326       \textcolor{comment}{!(out) 2 次元球面調和函数チェビシェフスペクトルデータ}}
\DoxyCodeLine{327 }
\DoxyCodeLine{328 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{allocatable} :: ua\_recv(:,:)}
\DoxyCodeLine{329 }
\DoxyCodeLine{330       \textcolor{keywordtype}{integer} :: IRQSTS}
\DoxyCodeLine{331       \textcolor{keywordtype}{integer} :: IST( MPI\_STATUS\_SIZE )}
\DoxyCodeLine{332 }
\DoxyCodeLine{333       \textcolor{keywordtype}{integer} :: ierr, iv}
\DoxyCodeLine{334       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter} :: itag=110}
\DoxyCodeLine{335       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::snd\_rank\_v(:)}
\DoxyCodeLine{336       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::rcv\_rank\_v(:)}
\DoxyCodeLine{337       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} ::rcv\_idx(:)}
\DoxyCodeLine{338 }
\DoxyCodeLine{339       \textcolor{keywordtype}{save} snd\_rank\_v, rcv\_rank\_v, rcv\_idx}
\DoxyCodeLine{340 }
\DoxyCodeLine{341       \textcolor{keywordflow}{if} ( first\_wb\_ua ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{342          first\_wb\_ua = .false.}
\DoxyCodeLine{343          \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(snd\_rank\_v) ) \textcolor{keyword}{deallocate}(snd\_rank\_v)}
\DoxyCodeLine{344          \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(rcv\_rank\_v) ) \textcolor{keyword}{deallocate}(rcv\_rank\_v)}
\DoxyCodeLine{345          \textcolor{keywordflow}{if} ( \textcolor{keyword}{allocated}(rcv\_idx) ) \textcolor{keyword}{deallocate}(rcv\_idx)}
\DoxyCodeLine{346          \textcolor{keyword}{allocate}(snd\_rank\_v(1:nproc\_v-\/1))}
\DoxyCodeLine{347          \textcolor{keyword}{allocate}(rcv\_rank\_v(1:nproc\_v-\/1))}
\DoxyCodeLine{348          \textcolor{keyword}{allocate}(rcv\_idx(0:nproc\_v-\/1))}
\DoxyCodeLine{349 }
\DoxyCodeLine{350          \textcolor{keywordflow}{do} iv=1,nproc\_v-\/1}
\DoxyCodeLine{351             rcv\_rank\_v(iv) = mod(iproc\_v+iv,nproc\_v)}
\DoxyCodeLine{352             snd\_rank\_v(iv) = mod(iproc\_v-\/iv+nproc\_v,nproc\_v)}
\DoxyCodeLine{353 \textcolor{keywordflow}{         enddo}}
\DoxyCodeLine{354 }
\DoxyCodeLine{355          rcv\_idx(0) = 1}
\DoxyCodeLine{356          \textcolor{keywordflow}{do} iv=1,nproc\_v-\/1}
\DoxyCodeLine{357             rcv\_idx(iv) = rcv\_idx(iv-\/1)+nmcp(iv-\/1)}
\DoxyCodeLine{358 \textcolor{keywordflow}{         enddo}}
\DoxyCodeLine{359 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{360 }
\DoxyCodeLine{361       \textcolor{keyword}{call }mpi\_barrier(mpi\_comm\_v,ierr)}
\DoxyCodeLine{362       \textcolor{keywordflow}{do} iv=1,nproc\_v-\/1}
\DoxyCodeLine{363          \textcolor{keyword}{call }mpi\_isend(ua(1,ksp(rcv\_rank\_v(iv))),nmc*kcp(rcv\_rank\_v(iv)), \&}
\DoxyCodeLine{364               mpi\_real8, rcv\_rank\_v(iv),\&}
\DoxyCodeLine{365               itag,mpi\_comm\_v,irqsts,ierr)}
\DoxyCodeLine{366          \textcolor{keyword}{allocate}(ua\_recv(nmcp(snd\_rank\_v(iv)),kc))}
\DoxyCodeLine{367          \textcolor{keyword}{call }mpi\_recv(ua\_recv,kc*nmcp(snd\_rank\_v(iv)), mpi\_real8,\&}
\DoxyCodeLine{368               snd\_rank\_v(iv), itag, mpi\_comm\_v, ist, ierr)}
\DoxyCodeLine{369          wb\_ua(nmsp(snd\_rank\_v(iv)):nmep(snd\_rank\_v(iv)),:) = ua\_recv}
\DoxyCodeLine{370          \textcolor{keyword}{deallocate}(ua\_recv)}
\DoxyCodeLine{371          \textcolor{keyword}{CALL }mpi\_wait(irqsts,ist,ierr)}
\DoxyCodeLine{372 \textcolor{keywordflow}{      enddo}}
\DoxyCodeLine{373 }
\DoxyCodeLine{374       wb\_ua(nms:nme,:) = ua(:,ks:ke)}
\DoxyCodeLine{375 }

\end{DoxyCode}


References first\+\_\+wb\+\_\+ua, iproc\+\_\+v, kc, kcp, ke, ks, ksp, mpi\+\_\+comm\+\_\+v, nmc, nmcp, nme, nmep, nms, nmsp, and nproc\+\_\+v.



Referenced by ua\+\_\+mpi\+\_\+module\+\_\+interpolate\+::b\+\_\+interpolate\+\_\+array00\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+dlon\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+jacobianmpi\+\_\+ua\+\_\+ua(), ua\+\_\+streampotential2vectormpi(), and xvb\+\_\+ua().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_adefa40bc8541f3d74264807663e1e115_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_aed8fcbc87108118fc3b9f23696a1c416}\label{namespaceua__mpi__module__base_aed8fcbc87108118fc3b9f23696a1c416}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!xv\_u@{xv\_u}}
\index{xv\_u@{xv\_u}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{xv\_u()}{xv\_u()}}
{\footnotesize\ttfamily real(8) function, dimension(0\+:im-\/1,1\+:jc), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::xv\+\_\+u (\begin{DoxyParamCaption}\item[{real(8), dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}}), intent(in)}]{u\+\_\+data,  }\item[{integer, intent(in), optional}]{ipow,  }\item[{integer, intent(in), optional}]{iflag }\end{DoxyParamCaption})}



Definition at line 757 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{757       \textcolor{comment}{!}}
\DoxyCodeLine{758       \textcolor{comment}{! スペクトルデータから格子データへ変換する(多層用).}}
\DoxyCodeLine{759       \textcolor{comment}{!}}
\DoxyCodeLine{760 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(in)}   :: u\_data(nmc)}
\DoxyCodeLine{761       \textcolor{comment}{!(in) スペクトルデータ}}
\DoxyCodeLine{762       \textcolor{comment}{!}}
\DoxyCodeLine{763 \textcolor{keywordtype}{      real}(8)               :: xv\_u(0:im-\/1,1:jc)}
\DoxyCodeLine{764       \textcolor{comment}{!(out) 格子点データ}}
\DoxyCodeLine{765       \textcolor{comment}{!}}
\DoxyCodeLine{766       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: ipow}
\DoxyCodeLine{767       \textcolor{comment}{!(in) 作用させる 1/cosφ の次数. 省略時は 0.}}
\DoxyCodeLine{768       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: iflag}
\DoxyCodeLine{769       \textcolor{comment}{!(in) 変換の種類}}
\DoxyCodeLine{770       \textcolor{comment}{!    0 : 通常の正変換}}
\DoxyCodeLine{771       \textcolor{comment}{!   -\/1 : 経度微分を作用させた逆変換}}
\DoxyCodeLine{772       \textcolor{comment}{!    1 : 緯度微分 cosφ・∂/∂φ を作用させた逆変換}}
\DoxyCodeLine{773       \textcolor{comment}{!    2 : sinφを作用させた逆変換}}
\DoxyCodeLine{774       \textcolor{comment}{!    省略時は 0.}}
\DoxyCodeLine{775       \textcolor{comment}{!}}
\DoxyCodeLine{776       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: ipow\_default  = 0}
\DoxyCodeLine{777       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: iflag\_default = 0}
\DoxyCodeLine{778       \textcolor{keywordtype}{integer} ipval, ifval}
\DoxyCodeLine{779 }
\DoxyCodeLine{780 \textcolor{keywordtype}{      real}(8) :: ua\_data(nmc,1)}
\DoxyCodeLine{781 \textcolor{keywordtype}{      real}(8) :: wa\_data(nc,1)}
\DoxyCodeLine{782       \textcolor{keywordtype}{integer} :: k}
\DoxyCodeLine{783 }
\DoxyCodeLine{784       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(ipow)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{785          ipval = ipow}
\DoxyCodeLine{786       \textcolor{keywordflow}{else}}
\DoxyCodeLine{787          ipval = ipow\_default}
\DoxyCodeLine{788 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{789 }
\DoxyCodeLine{790       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(iflag)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{791          ifval = iflag}
\DoxyCodeLine{792       \textcolor{keywordflow}{else}}
\DoxyCodeLine{793          ifval = iflag\_default}
\DoxyCodeLine{794 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{795 }
\DoxyCodeLine{796       ua\_data(:,1) = u\_data}
\DoxyCodeLine{797       wa\_data = wa\_ua(ua\_data)}
\DoxyCodeLine{798       xv\_u = xv\_w(wa\_data(:,1),iflag=ifval,ipow=ipval)}
\DoxyCodeLine{799 }

\end{DoxyCode}


References wa\+\_\+ua(), and w\+\_\+mpi\+\_\+module\+\_\+base\+::xv\+\_\+w().



Referenced by ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::u\+\_\+div\+\_\+xv\+\_\+xv(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::xv\+\_\+gradlambda\+\_\+u(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::xv\+\_\+gradlat\+\_\+u(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::xv\+\_\+gradlon\+\_\+u(), and ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::xv\+\_\+gradmu\+\_\+u().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_aed8fcbc87108118fc3b9f23696a1c416_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=338pt]{namespaceua__mpi__module__base_aed8fcbc87108118fc3b9f23696a1c416_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceua__mpi__module__base_aa03071a04e1aab34ca88460e839e17e4}\label{namespaceua__mpi__module__base_aa03071a04e1aab34ca88460e839e17e4}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!xvb\_ua@{xvb\_ua}}
\index{xvb\_ua@{xvb\_ua}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{xvb\_ua()}{xvb\_ua()}}
{\footnotesize\ttfamily real(8) function, dimension(0\+:im-\/1,1\+:jc,\mbox{\hyperlink{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}{kc}}), public ua\+\_\+mpi\+\_\+module\+\_\+base\+::xvb\+\_\+ua (\begin{DoxyParamCaption}\item[{real(8), dimension(\mbox{\hyperlink{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}{nmc}},\mbox{\hyperlink{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}{km}}), intent(in)}]{ua\+\_\+data,  }\item[{integer, intent(in), optional}]{ipow,  }\item[{integer, intent(in), optional}]{iflag }\end{DoxyParamCaption})}



Definition at line 661 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{661       \textcolor{comment}{!}}
\DoxyCodeLine{662       \textcolor{comment}{! スペクトルデータから格子データへ変換する(多層用).}}
\DoxyCodeLine{663       \textcolor{comment}{!}}
\DoxyCodeLine{664 \textcolor{keywordtype}{      real}(8), \textcolor{keywordtype}{intent(in)}   :: ua\_data(nmc,km)}
\DoxyCodeLine{665       \textcolor{comment}{!(in) スペクトルデータ}}
\DoxyCodeLine{666       \textcolor{comment}{!}}
\DoxyCodeLine{667 \textcolor{keywordtype}{      real}(8)               :: xvb\_ua(0:im-\/1,1:jc,kc)}
\DoxyCodeLine{668       \textcolor{comment}{!(out) 格子点データ}}
\DoxyCodeLine{669       \textcolor{comment}{!}}
\DoxyCodeLine{670       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: ipow}
\DoxyCodeLine{671       \textcolor{comment}{!(in) 作用させる 1/cosφ の次数. 省略時は 0.}}
\DoxyCodeLine{672       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: iflag}
\DoxyCodeLine{673       \textcolor{comment}{!(in) 変換の種類}}
\DoxyCodeLine{674       \textcolor{comment}{!    0 : 通常の正変換}}
\DoxyCodeLine{675       \textcolor{comment}{!   -\/1 : 経度微分を作用させた逆変換}}
\DoxyCodeLine{676       \textcolor{comment}{!    1 : 緯度微分 cosφ・∂/∂φ を作用させた逆変換}}
\DoxyCodeLine{677       \textcolor{comment}{!    2 : sinφを作用させた逆変換}}
\DoxyCodeLine{678       \textcolor{comment}{!    省略時は 0.}}
\DoxyCodeLine{679       \textcolor{comment}{!}}
\DoxyCodeLine{680       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: ipow\_default  = 0}
\DoxyCodeLine{681       \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: iflag\_default = 0}
\DoxyCodeLine{682       \textcolor{keywordtype}{integer} ipval, ifval}
\DoxyCodeLine{683 }
\DoxyCodeLine{684 \textcolor{keywordtype}{      real}(8) :: wb\_data(nc,kc)}
\DoxyCodeLine{685       \textcolor{keywordtype}{integer} :: k}
\DoxyCodeLine{686 }
\DoxyCodeLine{687       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(ipow)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{688          ipval = ipow}
\DoxyCodeLine{689       \textcolor{keywordflow}{else}}
\DoxyCodeLine{690          ipval = ipow\_default}
\DoxyCodeLine{691 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{692 }
\DoxyCodeLine{693       \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(iflag)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{694          ifval = iflag}
\DoxyCodeLine{695       \textcolor{keywordflow}{else}}
\DoxyCodeLine{696          ifval = iflag\_default}
\DoxyCodeLine{697 \textcolor{keywordflow}{      endif}}
\DoxyCodeLine{698 }
\DoxyCodeLine{699       wb\_data = wb\_ua(ua\_data)}
\DoxyCodeLine{700 }
\DoxyCodeLine{701       \textcolor{keywordflow}{do} k=1,kc}
\DoxyCodeLine{702         xvb\_ua(:,:,k) = xv\_w(wb\_data(:,k),iflag=ifval,ipow=ipval)}
\DoxyCodeLine{703 \textcolor{keywordflow}{      enddo}}
\DoxyCodeLine{704 }

\end{DoxyCode}


References kc, wb\+\_\+ua(), and w\+\_\+mpi\+\_\+module\+\_\+base\+::xv\+\_\+w().



Referenced by ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::xvb\+\_\+gradlambda\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::xvb\+\_\+gradlat\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::xvb\+\_\+gradlon\+\_\+ua(), and ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::xvb\+\_\+gradmu\+\_\+ua().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceua__mpi__module__base_aa03071a04e1aab34ca88460e839e17e4_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=338pt]{namespaceua__mpi__module__base_aa03071a04e1aab34ca88460e839e17e4_icgraph}
\end{center}
\end{figure}


\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{namespaceua__mpi__module__base_a8a6b6c1a0c381c74049f01735e3256c2}\label{namespaceua__mpi__module__base_a8a6b6c1a0c381c74049f01735e3256c2}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!first\_aa\_ab@{first\_aa\_ab}}
\index{first\_aa\_ab@{first\_aa\_ab}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{first\_aa\_ab}{first\_aa\_ab}}
{\footnotesize\ttfamily logical, save ua\+\_\+mpi\+\_\+module\+\_\+base\+::first\+\_\+aa\+\_\+ab =.true.}



Definition at line 85 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{85   \textcolor{keywordtype}{logical}              :: first\_aa\_ab=.true.}

\end{DoxyCode}


Referenced by aa\+\_\+ab(), and ua\+\_\+base\+\_\+mpi\+\_\+finalize().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a4c17e1576d50969d20a22a8d27ea606a}\label{namespaceua__mpi__module__base_a4c17e1576d50969d20a22a8d27ea606a}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!first\_ua\_wb@{first\_ua\_wb}}
\index{first\_ua\_wb@{first\_ua\_wb}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{first\_ua\_wb}{first\_ua\_wb}}
{\footnotesize\ttfamily logical, save ua\+\_\+mpi\+\_\+module\+\_\+base\+::first\+\_\+ua\+\_\+wb =.true.}



Definition at line 83 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{83   \textcolor{keywordtype}{logical}              :: first\_ua\_wb=.true.}

\end{DoxyCode}


Referenced by ua\+\_\+base\+\_\+mpi\+\_\+finalize(), and ua\+\_\+wb().

\mbox{\Hypertarget{namespaceua__mpi__module__base_ad28eb631ae22a1bd88b7e9fb6f1bdb63}\label{namespaceua__mpi__module__base_ad28eb631ae22a1bd88b7e9fb6f1bdb63}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!first\_wa\_ua@{first\_wa\_ua}}
\index{first\_wa\_ua@{first\_wa\_ua}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{first\_wa\_ua}{first\_wa\_ua}}
{\footnotesize\ttfamily logical, save ua\+\_\+mpi\+\_\+module\+\_\+base\+::first\+\_\+wa\+\_\+ua =.true.}



Definition at line 84 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{84   \textcolor{keywordtype}{logical}              :: first\_wa\_ua=.true.}

\end{DoxyCode}


Referenced by ua\+\_\+base\+\_\+mpi\+\_\+finalize(), and wa\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a98562fcdd3daf35ee6de583c33f56b45}\label{namespaceua__mpi__module__base_a98562fcdd3daf35ee6de583c33f56b45}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!first\_wb\_ua@{first\_wb\_ua}}
\index{first\_wb\_ua@{first\_wb\_ua}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{first\_wb\_ua}{first\_wb\_ua}}
{\footnotesize\ttfamily logical, save ua\+\_\+mpi\+\_\+module\+\_\+base\+::first\+\_\+wb\+\_\+ua =.true.}



Definition at line 82 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{82   \textcolor{keywordtype}{logical}              :: first\_wb\_ua=.true.}

\end{DoxyCode}


Referenced by ua\+\_\+base\+\_\+mpi\+\_\+finalize(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a1669820d86642671e8ff6fc5f8f93a98}\label{namespaceua__mpi__module__base_a1669820d86642671e8ff6fc5f8f93a98}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!iproc@{iproc}}
\index{iproc@{iproc}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{iproc}{iproc}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::iproc}



Definition at line 69 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{69   \textcolor{keywordtype}{integer}              :: iproc, iproc\_h, iproc\_v}

\end{DoxyCode}


Referenced by ua\+\_\+base\+\_\+mpi\+\_\+initial().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a24117b9c8b0363bcea3fe8f50558e150}\label{namespaceua__mpi__module__base_a24117b9c8b0363bcea3fe8f50558e150}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!iproc\_h@{iproc\_h}}
\index{iproc\_h@{iproc\_h}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{iproc\_h}{iproc\_h}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::iproc\+\_\+h}



Definition at line 69 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by ua\+\_\+base\+\_\+mpi\+\_\+initial().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a44ce9518adedd383957c49b2b2657b28}\label{namespaceua__mpi__module__base_a44ce9518adedd383957c49b2b2657b28}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!iproc\_v@{iproc\_v}}
\index{iproc\_v@{iproc\_v}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{iproc\_v}{iproc\_v}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::iproc\+\_\+v}



Definition at line 69 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by aa\+\_\+ab(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+wb(), wa\+\_\+ua(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}\label{namespaceua__mpi__module__base_aeb926dc98ccf5fd35d7818316c3f5bc2}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!kc@{kc}}
\index{kc@{kc}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{kc}{kc}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::kc}



Definition at line 72 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by aa\+\_\+ab(), ua\+\_\+mpi\+\_\+module\+\_\+interpolate\+::b\+\_\+interpolate\+\_\+array00\+\_\+ua(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+dlon\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+jacobianmpi\+\_\+ua\+\_\+ua(), ua\+\_\+streampotential2vectormpi(), ua\+\_\+vector2vordivmpi(), ua\+\_\+vectorcoslat2vordivmpi(), ua\+\_\+wb(), ua\+\_\+xvb(), wb\+\_\+ua(), and xvb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_aa830998d2ebc8eab491a51cc9d0e9541}\label{namespaceua__mpi__module__base_aa830998d2ebc8eab491a51cc9d0e9541}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!kcp@{kcp}}
\index{kcp@{kcp}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{kcp}{kcp}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable ua\+\_\+mpi\+\_\+module\+\_\+base\+::kcp}



Definition at line 73 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by aa\+\_\+ab(), ua\+\_\+base\+\_\+mpi\+\_\+finalize(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+wb(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a5d66bb05dec7b1d8073e532a70b37495}\label{namespaceua__mpi__module__base_a5d66bb05dec7b1d8073e532a70b37495}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ke@{ke}}
\index{ke@{ke}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ke}{ke}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ke}



Definition at line 72 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by ab\+\_\+aa(), kp\+\_\+kl(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+wb(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_aa5d8e04344e2e129fd0a827245825f99}\label{namespaceua__mpi__module__base_aa5d8e04344e2e129fd0a827245825f99}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!kep@{kep}}
\index{kep@{kep}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{kep}{kep}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable ua\+\_\+mpi\+\_\+module\+\_\+base\+::kep}



Definition at line 73 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by ua\+\_\+base\+\_\+mpi\+\_\+finalize(), and ua\+\_\+base\+\_\+mpi\+\_\+initial().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}\label{namespaceua__mpi__module__base_a53995322618c20bb22b2888fb8a6067d}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!km@{km}}
\index{km@{km}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{km}{km}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::km =16}



Definition at line 66 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{66   \textcolor{keywordtype}{integer}              :: km=16         \textcolor{comment}{! 同時に処理する最大データ数(層の数).}}

\end{DoxyCode}


Referenced by ua\+\_\+base\+\_\+mpi\+\_\+initial().

\mbox{\Hypertarget{namespaceua__mpi__module__base_adb1aece196ee907eb087af66998b3109}\label{namespaceua__mpi__module__base_adb1aece196ee907eb087af66998b3109}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ks@{ks}}
\index{ks@{ks}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ks}{ks}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::ks}



Definition at line 72 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{72   \textcolor{keywordtype}{integer}              :: ks, ke, kc}

\end{DoxyCode}


Referenced by ab\+\_\+aa(), kp\+\_\+kl(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+wb(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_ac66f90697e4981b865410b98532ccaed}\label{namespaceua__mpi__module__base_ac66f90697e4981b865410b98532ccaed}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!ksp@{ksp}}
\index{ksp@{ksp}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{ksp}{ksp}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable ua\+\_\+mpi\+\_\+module\+\_\+base\+::ksp}



Definition at line 73 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{73   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} :: ksp(:), kep(:), kcp(:)}

\end{DoxyCode}


Referenced by ua\+\_\+base\+\_\+mpi\+\_\+finalize(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a8ecb710381425c07040b8357ac91be9b}\label{namespaceua__mpi__module__base_a8ecb710381425c07040b8357ac91be9b}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!mpi\_comm\_h@{mpi\_comm\_h}}
\index{mpi\_comm\_h@{mpi\_comm\_h}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{mpi\_comm\_h}{mpi\_comm\_h}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::mpi\+\_\+comm\+\_\+h}



Definition at line 79 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{79   \textcolor{keywordtype}{integer}              :: MPI\_COMM\_H}

\end{DoxyCode}


Referenced by ua\+\_\+mpi\+\_\+module\+\_\+integral\+::b\+\_\+avrlat\+\_\+vb(), ua\+\_\+mpi\+\_\+module\+\_\+integral\+::b\+\_\+intlat\+\_\+vb(), ut\+\_\+mpi\+\_\+module\+::nmz\+\_\+poloidalenergyspectrum\+\_\+ut(), ut\+\_\+mpi\+\_\+module\+::nmz\+\_\+toroidalenergyspectrum\+\_\+ut(), ut\+\_\+mpi\+\_\+module\+::nz\+\_\+poloidalenergyspectrum\+\_\+ut(), ut\+\_\+mpi\+\_\+module\+::nz\+\_\+toroidalenergyspectrum\+\_\+ut(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+mpi\+\_\+module\+\_\+integral\+::xb\+\_\+avrlat\+\_\+xvb(), and ua\+\_\+mpi\+\_\+module\+\_\+integral\+::xb\+\_\+intlat\+\_\+xvb().

\mbox{\Hypertarget{namespaceua__mpi__module__base_af6afc50d091c0e9303c7c1aff0ace31f}\label{namespaceua__mpi__module__base_af6afc50d091c0e9303c7c1aff0ace31f}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!mpi\_comm\_v@{mpi\_comm\_v}}
\index{mpi\_comm\_v@{mpi\_comm\_v}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{mpi\_comm\_v}{mpi\_comm\_v}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::mpi\+\_\+comm\+\_\+v}



Definition at line 80 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{80   \textcolor{keywordtype}{integer}              :: MPI\_COMM\_V}

\end{DoxyCode}


Referenced by aa\+\_\+ab(), ut\+\_\+mpi\+\_\+module\+::intrad\+\_\+h(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+wb(), wa\+\_\+ua(), wb\+\_\+ua(), and ut\+\_\+mpi\+\_\+module\+::xv\+\_\+intrad\+\_\+xvh().

\mbox{\Hypertarget{namespaceua__mpi__module__base_aeb098e8d89b5cb2b760f323640cad26d}\label{namespaceua__mpi__module__base_aeb098e8d89b5cb2b760f323640cad26d}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!mpi\_comm\_w@{mpi\_comm\_w}}
\index{mpi\_comm\_w@{mpi\_comm\_w}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{mpi\_comm\_w}{mpi\_comm\_w}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::mpi\+\_\+comm\+\_\+w}



Definition at line 78 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{78   \textcolor{keywordtype}{integer}              :: MPI\_COMM\_W}

\end{DoxyCode}


Referenced by ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::na\+\_\+energyfromstreamfunc\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::na\+\_\+enstrophyfromstreamfunc\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::nma\+\_\+energyfromstreamfunc\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::nma\+\_\+enstrophyfromstreamfunc\+\_\+ua(), and ua\+\_\+base\+\_\+mpi\+\_\+initial().

\mbox{\Hypertarget{namespaceua__mpi__module__base_ae4a7d2b26521bc753c9495488d2f3cf6}\label{namespaceua__mpi__module__base_ae4a7d2b26521bc753c9495488d2f3cf6}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nc@{nc}}
\index{nc@{nc}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nc}{nc}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::nc}



Definition at line 71 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{71   \textcolor{keywordtype}{integer}              :: nc}

\end{DoxyCode}


Referenced by ua\+\_\+base\+\_\+mpi\+\_\+initial().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}\label{namespaceua__mpi__module__base_a64e1ffc6a583a817d7c4af09dbd042b0}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nmc@{nmc}}
\index{nmc@{nmc}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nmc}{nmc}}
{\footnotesize\ttfamily integer, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::nmc}



Definition at line 75 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::na\+\_\+energyfromstreamfunc\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::na\+\_\+enstrophyfromstreamfunc\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::nma\+\_\+energyfromstreamfunc\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::nma\+\_\+enstrophyfromstreamfunc\+\_\+ua(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+deriv\+\_\+mpi\+\_\+initial(), ua\+\_\+wb(), wa\+\_\+ua(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a279b155688d69d1fd9de33b10cc457e4}\label{namespaceua__mpi__module__base_a279b155688d69d1fd9de33b10cc457e4}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nmcp@{nmcp}}
\index{nmcp@{nmcp}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nmcp}{nmcp}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable ua\+\_\+mpi\+\_\+module\+\_\+base\+::nmcp}



Definition at line 76 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by ua\+\_\+base\+\_\+mpi\+\_\+finalize(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+wb(), wa\+\_\+ua(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_ae8bd02926fbbcb93e3bb6d1222b42982}\label{namespaceua__mpi__module__base_ae8bd02926fbbcb93e3bb6d1222b42982}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nme@{nme}}
\index{nme@{nme}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nme}{nme}}
{\footnotesize\ttfamily integer, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::nme}



Definition at line 75 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by lu\+\_\+nm(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+deriv\+\_\+mpi\+\_\+initial(), ua\+\_\+wa(), ua\+\_\+wb(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a590b2fb1fab7d778a3845476300feea0}\label{namespaceua__mpi__module__base_a590b2fb1fab7d778a3845476300feea0}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nmep@{nmep}}
\index{nmep@{nmep}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nmep}{nmep}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable ua\+\_\+mpi\+\_\+module\+\_\+base\+::nmep}



Definition at line 76 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by ua\+\_\+base\+\_\+mpi\+\_\+finalize(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+wb(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a99f5ba36beab9b7db0694b40f2232fb8}\label{namespaceua__mpi__module__base_a99f5ba36beab9b7db0694b40f2232fb8}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nms@{nms}}
\index{nms@{nms}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nms}{nms}}
{\footnotesize\ttfamily integer, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::nms}



Definition at line 75 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{75   \textcolor{keywordtype}{integer}              :: nms, nme, nmc}

\end{DoxyCode}


Referenced by lu\+\_\+nm(), ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::na\+\_\+energyfromstreamfunc\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::na\+\_\+enstrophyfromstreamfunc\+\_\+ua(), nm\+\_\+lu(), ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::nma\+\_\+energyfromstreamfunc\+\_\+ua(), ua\+\_\+mpi\+\_\+module\+\_\+spectrum\+::nma\+\_\+enstrophyfromstreamfunc\+\_\+ua(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+mpi\+\_\+module\+\_\+deriv\+::ua\+\_\+deriv\+\_\+mpi\+\_\+initial(), ua\+\_\+wa(), ua\+\_\+wb(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_abc84ae6ef3894e0220af2872a137c750}\label{namespaceua__mpi__module__base_abc84ae6ef3894e0220af2872a137c750}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nmsp@{nmsp}}
\index{nmsp@{nmsp}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nmsp}{nmsp}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable ua\+\_\+mpi\+\_\+module\+\_\+base\+::nmsp}



Definition at line 76 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{76   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{allocatable} :: nmsp(:), nmep(:), nmcp(:)}

\end{DoxyCode}


Referenced by ua\+\_\+base\+\_\+mpi\+\_\+finalize(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+wb(), and wb\+\_\+ua().

\mbox{\Hypertarget{namespaceua__mpi__module__base_add8f0bfad0998dadd2e218caad49712f}\label{namespaceua__mpi__module__base_add8f0bfad0998dadd2e218caad49712f}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nproc@{nproc}}
\index{nproc@{nproc}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nproc}{nproc}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::nproc}



Definition at line 68 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{68   \textcolor{keywordtype}{integer}              :: nproc, nproc\_h, nproc\_v}

\end{DoxyCode}


Referenced by ua\+\_\+base\+\_\+mpi\+\_\+initial().

\mbox{\Hypertarget{namespaceua__mpi__module__base_a0a96bfc6aca39c79277b0d153e53e83f}\label{namespaceua__mpi__module__base_a0a96bfc6aca39c79277b0d153e53e83f}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nproc\_h@{nproc\_h}}
\index{nproc\_h@{nproc\_h}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nproc\_h}{nproc\_h}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::nproc\+\_\+h}



Definition at line 68 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by ua\+\_\+base\+\_\+mpi\+\_\+initial().

\mbox{\Hypertarget{namespaceua__mpi__module__base_ace8024e7d222f2079ebf63f149bbace5}\label{namespaceua__mpi__module__base_ace8024e7d222f2079ebf63f149bbace5}} 
\index{ua\_mpi\_module\_base@{ua\_mpi\_module\_base}!nproc\_v@{nproc\_v}}
\index{nproc\_v@{nproc\_v}!ua\_mpi\_module\_base@{ua\_mpi\_module\_base}}
\doxysubsubsection{\texorpdfstring{nproc\_v}{nproc\_v}}
{\footnotesize\ttfamily integer, save, public ua\+\_\+mpi\+\_\+module\+\_\+base\+::nproc\+\_\+v}



Definition at line 68 of file ua\+\_\+mpi\+\_\+module\+\_\+base.\+f90.



Referenced by aa\+\_\+ab(), ua\+\_\+base\+\_\+mpi\+\_\+initial(), ua\+\_\+wb(), wa\+\_\+ua(), and wb\+\_\+ua().

