\hypertarget{namespaceee__mpi__module}{}\section{ee\+\_\+mpi\+\_\+module Module Reference}
\label{namespaceee__mpi__module}\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine, public \hyperlink{namespaceee__mpi__module_a7166f0ba9d60fa4b5db230b47799916d}{ee\+\_\+mpi\+\_\+initial} (i\+\_\+in, j\+\_\+in, k\+\_\+in, l\+\_\+in, xmin\+\_\+in, xmax\+\_\+in, ymin\+\_\+in, ymax\+\_\+in)
\item 
integer function, public \hyperlink{namespaceee__mpi__module_a0ff4e3c17a5558c57941e65d2abd1d9f}{kf\+\_\+k} (k)
\item 
real(8) function, dimension(\hyperlink{namespaceee__mpi__module_ace472c7108321ae019be08199c653df6}{js}(ip)\+:\hyperlink{namespaceee__mpi__module_a5a7c3fbb70b1d6c2e9b6496c1dec9a03}{je}(ip), 0\+:im-\/1), public \hyperlink{namespaceee__mpi__module_abfced6fc3168f60d28437307633948d2}{vx\+\_\+ef} (ef)
\item 
real(8) function, dimension(-\/lm\+:lm, 2 $\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public \hyperlink{namespaceee__mpi__module_a626e66d22ab08fa6e496136aebbab177}{ef\+\_\+vx} (vx)
\item 
real(8) function, dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip), 2, 0\+:im/2-\/1), public \hyperlink{namespaceee__mpi__module_a5086cffe1a54ccdfcc2432515a6c2e82}{vax\+\_\+fay} (fay)
\item 
real(8) function, dimension(\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip), 2, 0\+:jm-\/1), public \hyperlink{namespaceee__mpi__module_a7e9b58bc20b261dd7620a2c4e293feba}{fay\+\_\+vax} (vax)
\item 
real(8) function, dimension(-\/lm\+:lm, 2 $\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public \hyperlink{namespaceee__mpi__module_a621c3227c94119f1e1ea0ee7698bba3f}{ef\+\_\+lapla\+\_\+ef} (ef)
\item 
real(8) function, dimension(-\/lm\+:lm, 2 $\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public \hyperlink{namespaceee__mpi__module_a1f76e911c202b896315cb22436a4e8b9}{ef\+\_\+laplainv\+\_\+ef} (ef)
\item 
real(8) function, dimension(-\/lm\+:lm, 2 $\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public \hyperlink{namespaceee__mpi__module_a63a4346f89a50dc1972929350c5ca263}{ef\+\_\+dx\+\_\+ef} (ef)
\item 
real(8) function, dimension(-\/lm\+:lm, 2 $\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public \hyperlink{namespaceee__mpi__module_aa242c229b3a339709efcc54fb6a40581}{ef\+\_\+dy\+\_\+ef} (ef)
\item 
real(8) function, dimension(-\/lm\+:lm, 2 $\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public \hyperlink{namespaceee__mpi__module_ad3b2d8b14939e5958a53dd087b59b420}{ef\+\_\+jacobian\+\_\+ef\+\_\+ef} (ef\+\_\+a, ef\+\_\+b)
\item 
real(8) function, dimension(-\/lm\+:lm, 2 $\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public \hyperlink{namespaceee__mpi__module_a9ae980fa9570ba21f451cf6fbb5f9b3e}{ef\+\_\+jacobianz\+\_\+ef} (ef\+\_\+zeta)
\item 
real(8) function, public \hyperlink{namespaceee__mpi__module_a590ef0be1f8c8b1930eba8da28f0118a}{intyx\+\_\+vx} (vx)
\item 
real(8) function, dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip)), public \hyperlink{namespaceee__mpi__module_a5835128437ac3d59494a0ebb08a5bc2a}{v\+\_\+intx\+\_\+vx} (vx)
\item 
real(8) function, dimension(0\+:im-\/1), public \hyperlink{namespaceee__mpi__module_a2dda41756d7fea736e3a4ad44bc1c12b}{x\+\_\+inty\+\_\+vx} (vx)
\item 
real(8) function, public \hyperlink{namespaceee__mpi__module_a728ca744730ac7bbff84984bdc42bb34}{intx\+\_\+x} (x)
\item 
real(8) function, public \hyperlink{namespaceee__mpi__module_a5bd1ba359aa9d5c49d4a5db29f5a36d3}{inty\+\_\+v} (v)
\item 
real(8) function, public \hyperlink{namespaceee__mpi__module_af1b0e52604db38b2e5e68b1e10ccd693}{avryx\+\_\+vx} (vx)
\item 
real(8) function, dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip)), public \hyperlink{namespaceee__mpi__module_aee74c0c1f12c88f59064876e94ccae3b}{v\+\_\+avrx\+\_\+vx} (vx)
\item 
real(8) function, dimension(0\+:im-\/1), public \hyperlink{namespaceee__mpi__module_a135cfad45d00ee505bc501e2d63cf3d7}{x\+\_\+avry\+\_\+vx} (vx)
\item 
real(8) function, public \hyperlink{namespaceee__mpi__module_aff797cd9394fe32479e1c8b2e02b587d}{avrx\+\_\+x} (x)
\item 
real(8) function, public \hyperlink{namespaceee__mpi__module_aa86714a044f5712636fb8dcb0b7d6b49}{avry\+\_\+v} (v)
\item 
real(8) function, dimension(-\/lm\+:lm, 2 $\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public \hyperlink{namespaceee__mpi__module_ad24dd0151cf8767c991d0f6f420d6f33}{ef\+\_\+energyfromstreamfunc\+\_\+ef} (ef\+\_\+\+Str\+Func)
\item 
real(8) function, dimension(-\/lm\+:lm, 2 $\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public \hyperlink{namespaceee__mpi__module_a82ad43c493270870b5492170258ab08c}{ef\+\_\+enstrophyfromstreamfunc\+\_\+ef} (ef\+\_\+\+Str\+Func)
\item 
real(8) function, public \hyperlink{namespaceee__mpi__module_a2fab24c1c4b31cbcb26f671f8686e15e}{interpolate\+\_\+ef} (ef\+\_\+\+Data, x, y)
\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
integer, dimension(\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_a12518187ee4b7f5553ef28958f33cd7c}{ke}
\item 
integer, dimension(\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_aa0a1befded289dda93cfa4f55ea41c6a}{ks}
\item 
integer, dimension(\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}
\item 
integer, dimension(\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_a5a7c3fbb70b1d6c2e9b6496c1dec9a03}{je}
\item 
integer, dimension(\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_ace472c7108321ae019be08199c653df6}{js}
\item 
integer, dimension(\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}
\item 
real(8), dimension(\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_afb2e23f3bbdfecea3a9e85988ece575c}{x\+\_\+x}
\item 
real(8), dimension(\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_a65d08c8e04adee26adecf6a0736c55e3}{v\+\_\+y}
\item 
real(8), dimension(\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_a7eb6f389126e419ea852af05bf3da361}{x\+\_\+x\+\_\+weight}
\item 
real(8), dimension(\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_a69eb710cfe63554324142ce653baa4c2}{v\+\_\+y\+\_\+weight}
\item 
real(8), dimension(\+:,\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_aeb0cbc8b851f7d51af69cb710a9804a0}{vx\+\_\+x}
\item 
real(8), dimension(\+:,\+:), allocatable, save, public \hyperlink{namespaceee__mpi__module_aa97ee64ec5f21d749b677e644944248b}{vx\+\_\+y}
\end{DoxyCompactItemize}


\subsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{namespaceee__mpi__module_aff797cd9394fe32479e1c8b2e02b587d}\label{namespaceee__mpi__module_aff797cd9394fe32479e1c8b2e02b587d}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!avrx\+\_\+x@{avrx\+\_\+x}}
\index{avrx\+\_\+x@{avrx\+\_\+x}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{avrx\+\_\+x()}{avrx\_x()}}
{\footnotesize\ttfamily real(8) function, public ee\+\_\+mpi\+\_\+module\+::avrx\+\_\+x (\begin{DoxyParamCaption}\item[{real(8), dimension(0\+:im-\/1)}]{x }\end{DoxyParamCaption})}



Definition at line 903 of file ee\+\_\+mpi\+\_\+module.\+f90.



References intx\+\_\+x().


\begin{DoxyCode}
903     \textcolor{comment}{!}
904     \textcolor{comment}{! 1 次元(X)格子点データの X 方向平均}
905     \textcolor{comment}{!}
906     \textcolor{comment}{! 実際には格子点データ各点毎に x\_X\_Weight をかけた総和を計算し, }
907     \textcolor{comment}{! x\_X\_Weight の総和で割ることで平均している. }
908     \textcolor{comment}{!}
909     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(0:im-1)}   :: x          \textcolor{comment}{!(in)  1 次元格子点データ}
910     \textcolor{keywordtype}{real(8)}                      :: avrx\_x     \textcolor{comment}{!(out) 平均値}
911 
912     avrx\_x = intx\_x(x)/xl
913 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceee__mpi__module_aff797cd9394fe32479e1c8b2e02b587d_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceee__mpi__module_aa86714a044f5712636fb8dcb0b7d6b49}\label{namespaceee__mpi__module_aa86714a044f5712636fb8dcb0b7d6b49}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!avry\+\_\+v@{avry\+\_\+v}}
\index{avry\+\_\+v@{avry\+\_\+v}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{avry\+\_\+v()}{avry\_v()}}
{\footnotesize\ttfamily real(8) function, public ee\+\_\+mpi\+\_\+module\+::avry\+\_\+v (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip))}]{v }\end{DoxyParamCaption})}



Definition at line 917 of file ee\+\_\+mpi\+\_\+module.\+f90.



References inty\+\_\+v().


\begin{DoxyCode}
917     \textcolor{comment}{!}
918     \textcolor{comment}{! 1 次元(Y)格子点データの Y 方向平均}
919     \textcolor{comment}{!}
920     \textcolor{comment}{! 実際には格子点データ各点毎に y\_Y\_Weight をかけた総和を計算し, }
921     \textcolor{comment}{! y\_Y\_Weight の総和で割ることで平均している. }
922     \textcolor{comment}{!}
923     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip))} :: v          \textcolor{comment}{!(in)  1 次元格子点データ}
924     \textcolor{keywordtype}{real(8)}                    :: avry\_v     \textcolor{comment}{!(out) 平均値}
925 
926     avry\_v = inty\_v(v)/yl
927 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceee__mpi__module_aa86714a044f5712636fb8dcb0b7d6b49_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceee__mpi__module_af1b0e52604db38b2e5e68b1e10ccd693}\label{namespaceee__mpi__module_af1b0e52604db38b2e5e68b1e10ccd693}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!avryx\+\_\+vx@{avryx\+\_\+vx}}
\index{avryx\+\_\+vx@{avryx\+\_\+vx}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{avryx\+\_\+vx()}{avryx\_vx()}}
{\footnotesize\ttfamily real(8) function, public ee\+\_\+mpi\+\_\+module\+::avryx\+\_\+vx (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip),0\+:im-\/1)}]{vx }\end{DoxyParamCaption})}



Definition at line 852 of file ee\+\_\+mpi\+\_\+module.\+f90.



References intyx\+\_\+vx().


\begin{DoxyCode}
852     \textcolor{comment}{!}
853     \textcolor{comment}{! 2 次元格子点データの全領域平均}
854     \textcolor{comment}{!}
855     \textcolor{comment}{! 実際には格子点データ各点毎に x\_X\_Weight, y\_Y\_Weight をかけた}
856     \textcolor{comment}{! 総和を計算し, x\_X\_Weight*y\_Y\_Weight の総和で割ることで平均している. }
857     \textcolor{comment}{!}
858     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip),0:im-1)}   :: vx
859     \textcolor{comment}{!(in)  2 次元格子点データ}
860 
861     \textcolor{keywordtype}{real(8)}                             :: avryx\_vx    
862     \textcolor{comment}{!(out) 平均値}
863 
864     avryx\_vx = intyx\_vx(vx)/(xl*yl)
865 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceee__mpi__module_af1b0e52604db38b2e5e68b1e10ccd693_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceee__mpi__module_a7166f0ba9d60fa4b5db230b47799916d}\label{namespaceee__mpi__module_a7166f0ba9d60fa4b5db230b47799916d}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ee\+\_\+mpi\+\_\+initial@{ee\+\_\+mpi\+\_\+initial}}
\index{ee\+\_\+mpi\+\_\+initial@{ee\+\_\+mpi\+\_\+initial}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ee\+\_\+mpi\+\_\+initial()}{ee\_mpi\_initial()}}
{\footnotesize\ttfamily subroutine, public ee\+\_\+mpi\+\_\+module\+::ee\+\_\+mpi\+\_\+initial (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{i\+\_\+in,  }\item[{integer, intent(in)}]{j\+\_\+in,  }\item[{integer, intent(in)}]{k\+\_\+in,  }\item[{integer, intent(in)}]{l\+\_\+in,  }\item[{real(8), intent(in)}]{xmin\+\_\+in,  }\item[{real(8), intent(in)}]{xmax\+\_\+in,  }\item[{real(8), intent(in)}]{ymin\+\_\+in,  }\item[{real(8), intent(in)}]{ymax\+\_\+in }\end{DoxyParamCaption})}



Definition at line 233 of file ee\+\_\+mpi\+\_\+module.\+f90.



References jc, je, js, kc, ke, ks, v\+\_\+y, v\+\_\+y\+\_\+weight, vx\+\_\+x, vx\+\_\+y, x\+\_\+x, and x\+\_\+x\+\_\+weight.


\begin{DoxyCode}
233     \textcolor{comment}{!}
234     \textcolor{comment}{! スペクトル変換の格子点数, 波数を設定する.}
235     \textcolor{comment}{! 領域の範囲は [0,2pi]x[0,2pi] に決め打ち}
236     \textcolor{comment}{!}
237     \textcolor{comment}{! 他の関数や変数を呼ぶ前に, 最初にこのサブルーチンを呼んで}
238     \textcolor{comment}{! 初期設定をしなければならない.}
239     \textcolor{comment}{!}
240     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: i\_in           \textcolor{comment}{! 格子点数(X)}
241     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: j\_in           \textcolor{comment}{! 格子点数(Y)}
242     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: k\_in           \textcolor{comment}{! 切断波数(X)}
243     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: l\_in           \textcolor{comment}{! 切断波数(Y)}
244 
245     \textcolor{keywordtype}{real(8)},\textcolor{keywordtype}{intent(in)} :: xmin\_in, xmax\_in     \textcolor{comment}{! X 座標範囲}
246     \textcolor{keywordtype}{real(8)},\textcolor{keywordtype}{intent(in)} :: ymin\_in, ymax\_in     \textcolor{comment}{! Y 座標範囲}
247  
248     \textcolor{keywordtype}{integer} :: ii, jj
249     \textcolor{keywordtype}{integer} :: iip
250     \textcolor{keywordtype}{integer} :: kp, jp
251     \textcolor{keywordtype}{integer} :: kint, kmod
252     \textcolor{keywordtype}{integer} :: jint, jmod
253     \textcolor{keywordtype}{integer} :: ierr
254 
255     im = i\_in         ; jm = j\_in
256     km = k\_in         ; lm = l\_in
257 
258     xmin = xmin\_in    ; xmax = xmax\_in
259     ymin = ymin\_in    ; ymax = ymax\_in
260     xl = xmax-xmin    ; yl = ymax-ymin
261 
262     \textcolor{keyword}{CALL }mpi\_comm\_rank(mpi\_comm\_world,ip,ierr)
263     \textcolor{keyword}{CALL }mpi\_comm\_size(mpi\_comm\_world,np,ierr)
264 
265     \textcolor{comment}{! x 波数 MPI分割情報}
266     \textcolor{keyword}{allocate}(ks(0:np-1))
267     \textcolor{keyword}{allocate}(ke(0:np-1))
268     \textcolor{keyword}{allocate}(kc(0:np-1))
269     
270     kint = km/np
271     kmod = mod(km,np)
272     kc   = kint
273     \textcolor{keywordflow}{do} iip=0,kmod
274        kc(iip) = kc(iip) + 1
275 \textcolor{keywordflow}{    end do}
276 
277     ks(0)=0 ; ke(0) = ks(0) + kc(0) -1
278     \textcolor{keywordflow}{do} iip=1,np-1
279        ks(iip) = ks(iip-1) + kc(iip-1)
280        ke(iip) = ks(iip) + kc(iip) - 1
281 \textcolor{keywordflow}{    end do}
282 
283     \textcolor{comment}{! Y 軸 MPI分割情報}
284     \textcolor{keyword}{allocate}(js(0:np-1))
285     \textcolor{keyword}{allocate}(je(0:np-1))
286     \textcolor{keyword}{allocate}(jc(0:np-1))
287 
288     jint = jm/np
289     jmod = mod(jm,np)
290     jc   = jint
291     \textcolor{keywordflow}{do} iip=0,jmod-1
292        jc(iip) = jc(iip) + 1
293 \textcolor{keywordflow}{    end do}
294 
295     js(0)=0 ; je(0) = js(0) + jc(0) -1
296     \textcolor{keywordflow}{do} iip=1,np-1
297        js(iip) = js(iip-1) + jc(iip-1)
298        je(iip) = js(iip) + jc(iip) - 1
299 \textcolor{keywordflow}{    end do}
300     
301     \textcolor{keyword}{allocate}(itj(jm))
302     \textcolor{keyword}{allocate}(iti(im/2))
303     \textcolor{keyword}{allocate}(tj(jm*2))
304     \textcolor{keyword}{allocate}(ti(im*3/2))
305 
306     \textcolor{keyword}{allocate}(x\_x(0:im-1))
307     \textcolor{keyword}{allocate}(x\_x\_weight(0:im-1))
308     \textcolor{keyword}{allocate}(v\_y(jc(ip)))
309     \textcolor{keyword}{allocate}(v\_y\_weight(jc(ip)))
310     \textcolor{keyword}{allocate}(vx\_x(jc(ip),0:im-1))
311     \textcolor{keyword}{allocate}(vx\_y(jc(ip),0:im-1))
312 
313     \textcolor{keyword}{call }fxrini(int(im,8),iti,ti)
314     \textcolor{keyword}{call }fxzini(int(jm,8),itj,tj)
315 
316 
317     \textcolor{keywordflow}{do} ii=0,im-1
318        x\_x(ii) = xmin + xl/im*ii
319 \textcolor{keywordflow}{    enddo}
320     x\_x\_weight = xl/im
321 
322     \textcolor{keywordflow}{do} jj=1,jc(ip)
323        v\_y(jj) = ymin + yl/jm*(js(ip)+jj-1)
324 \textcolor{keywordflow}{    enddo}
325     v\_y\_weight = yl/jm
326 
327     vx\_x = spread(x\_x,1,jc(ip))
328     vx\_y = spread(v\_y,2,im)
329 
330     \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'M'},\textcolor{stringliteral}{'ee\_mpi\_initial'}, &
331          \textcolor{stringliteral}{'ee\_mpi\_module (2021/04/27) is initialized'})
332 
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a63a4346f89a50dc1972929350c5ca263}\label{namespaceee__mpi__module_a63a4346f89a50dc1972929350c5ca263}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ef\+\_\+dx\+\_\+ef@{ef\+\_\+dx\+\_\+ef}}
\index{ef\+\_\+dx\+\_\+ef@{ef\+\_\+dx\+\_\+ef}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ef\+\_\+dx\+\_\+ef()}{ef\_dx\_ef()}}
{\footnotesize\ttfamily real(8) function, dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public ee\+\_\+mpi\+\_\+module\+::ef\+\_\+dx\+\_\+ef (\begin{DoxyParamCaption}\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef }\end{DoxyParamCaption})}



Definition at line 627 of file ee\+\_\+mpi\+\_\+module.\+f90.



References kc, and ks.


\begin{DoxyCode}
627     \textcolor{comment}{!}
628     \textcolor{comment}{! 入力スペクトルデータに X 微分(∂x)を作用する.}
629     \textcolor{comment}{!}
630     \textcolor{comment}{! スペクトルデータの X 微分とは, 対応する格子点データに X 微分を}
631     \textcolor{comment}{! 作用させたデータのスペクトル変換のことである.}
632     \textcolor{comment}{!}
633     \textcolor{comment}{! 実際にはスペクトルデータに X 方向波数 k をかけて}
634     \textcolor{comment}{! sin(kx) <-> cos(kx) 成分に入れ換える計算を行っている.}
635     \textcolor{comment}{!}
636     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}              :: ef\_dx\_ef
637     \textcolor{comment}{!(out) スペクトルデータの X 微分}
638 
639     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}, \textcolor{keywordtype}{intent(in)}  :: ef
640     \textcolor{comment}{!(in) 入力スペクトルデータ}
641 
642     \textcolor{keywordtype}{integer} kf, k, l
643     \textcolor{comment}{! 作業変数}
644 
645     \textcolor{keywordflow}{do} kf=1,kc(ip)
646        k = ks(ip) + kf - 1
647        \textcolor{keywordflow}{do} l=-lm,lm
648           ef\_dx\_ef(l,kf) = -(2*pi*k/xl)*ef(-l,2*kc(ip)-kf+1)
649           ef\_dx\_ef(l,2*kc(ip)-kf+1) = -(2*pi*(-k)/xl)*ef(-l,kf)
650 \textcolor{keywordflow}{       enddo}
651 \textcolor{keywordflow}{    enddo}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_aa242c229b3a339709efcc54fb6a40581}\label{namespaceee__mpi__module_aa242c229b3a339709efcc54fb6a40581}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ef\+\_\+dy\+\_\+ef@{ef\+\_\+dy\+\_\+ef}}
\index{ef\+\_\+dy\+\_\+ef@{ef\+\_\+dy\+\_\+ef}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ef\+\_\+dy\+\_\+ef()}{ef\_dy\_ef()}}
{\footnotesize\ttfamily real(8) function, dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public ee\+\_\+mpi\+\_\+module\+::ef\+\_\+dy\+\_\+ef (\begin{DoxyParamCaption}\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef }\end{DoxyParamCaption})}



Definition at line 655 of file ee\+\_\+mpi\+\_\+module.\+f90.



References kc.


\begin{DoxyCode}
655     \textcolor{comment}{!}
656     \textcolor{comment}{! 入力スペクトルデータに Y 微分(∂y)を作用する.}
657     \textcolor{comment}{!}
658     \textcolor{comment}{! スペクトルデータの X 微分とは, 対応する格子点データに Y 微分を}
659     \textcolor{comment}{! 作用させたデータのスペクトル変換のことである.}
660     \textcolor{comment}{!}
661     \textcolor{comment}{! 実際にはスペクトルデータに X 方向波数 l をかけて}
662     \textcolor{comment}{! sin(ky) <-> cos(ky) 成分に入れ換える計算を行っている.}
663     \textcolor{comment}{!}
664     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}              :: ef\_dy\_ef
665     \textcolor{comment}{!(out) スペクトルデータの Y 微分}
666 
667     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}, \textcolor{keywordtype}{intent(in)}  :: ef
668     \textcolor{comment}{!(in) 入力スペクトルデータ}
669 
670     \textcolor{keywordtype}{integer} kf,l
671     \textcolor{comment}{! 作業変数}
672 
673     \textcolor{keywordflow}{do} kf=1,kc(ip)
674        \textcolor{keywordflow}{if} ( ip == 0 .AND. kf == 1 ) \textcolor{keywordflow}{then}
675           \textcolor{keywordflow}{do} l=-lm,lm
676              ef\_dy\_ef(l,kf) = -(2*pi*l/yl)*ef(-l,kf)
677              ef\_dy\_ef(l,2*kc(ip)-kf+1) = 0.0d0
678 \textcolor{keywordflow}{          enddo}
679        \textcolor{keywordflow}{else}
680           \textcolor{keywordflow}{do} l=-lm,lm
681              ef\_dy\_ef(l,kf) = -(2*pi*l/yl)*ef(-l,2*kc(ip)-kf+1)
682              ef\_dy\_ef(l,2*kc(ip)-kf+1) = -(2*pi*l/yl)*ef(-l,kf)   
683 \textcolor{keywordflow}{          enddo}
684 \textcolor{keywordflow}{       endif}
685 \textcolor{keywordflow}{    enddo}
686     
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_ad24dd0151cf8767c991d0f6f420d6f33}\label{namespaceee__mpi__module_ad24dd0151cf8767c991d0f6f420d6f33}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ef\+\_\+energyfromstreamfunc\+\_\+ef@{ef\+\_\+energyfromstreamfunc\+\_\+ef}}
\index{ef\+\_\+energyfromstreamfunc\+\_\+ef@{ef\+\_\+energyfromstreamfunc\+\_\+ef}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ef\+\_\+energyfromstreamfunc\+\_\+ef()}{ef\_energyfromstreamfunc\_ef()}}
{\footnotesize\ttfamily real(8) function, dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public ee\+\_\+mpi\+\_\+module\+::ef\+\_\+energyfromstreamfunc\+\_\+ef (\begin{DoxyParamCaption}\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef\+\_\+\+Str\+Func }\end{DoxyParamCaption})}



Definition at line 933 of file ee\+\_\+mpi\+\_\+module.\+f90.



References kc, and ks.


\begin{DoxyCode}
933     \textcolor{comment}{!}
934     \textcolor{comment}{! 流線関数からエネルギースペクトルを計算する. }
935     \textcolor{comment}{!}
936     \textcolor{comment}{!   E\_kl = (1/2)(k^2+l^2)|\(\backslash\)psi\_kl|^2}
937     \textcolor{comment}{!}
938     \textcolor{comment}{! * E\_kl の総和が場の平均運動エネルギーとなる. }
939     \textcolor{comment}{! * それに領域の面積をかけると全運動エネルギーとなる. }
940     \textcolor{comment}{!}
941     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}    :: ef\_energyfromstreamfunc\_ef
942     \textcolor{comment}{! エネルギースペクトル}
943 
944     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}, \textcolor{keywordtype}{intent(in)} :: ef\_strfunc
945     \textcolor{comment}{! 流線関数}
946 
947     \textcolor{keywordtype}{integer} kf, k,l
948     \textcolor{comment}{! 作業変数}
949 
950     \textcolor{keywordflow}{do} kf=1,kc(ip)
951        k = ks(ip) + kf -1
952        \textcolor{keywordflow}{do} l=-lm,lm
953           ef\_energyfromstreamfunc\_ef(l,kf) &
954                = 0.5 * ( (2*pi*k/xl)**2 + (2*pi*l/yl)**2 ) & 
955                * (ef\_strfunc(l,kf)**2 + ef\_strfunc(-l,2*kc(ip)-kf+1)**2)
956           ef\_energyfromstreamfunc\_ef(l,2*kc(ip)-kf+1) &
957                = ef\_energyfromstreamfunc\_ef(l,kf)
958 \textcolor{keywordflow}{       enddo}
959 \textcolor{keywordflow}{    enddo}
960 
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a82ad43c493270870b5492170258ab08c}\label{namespaceee__mpi__module_a82ad43c493270870b5492170258ab08c}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ef\+\_\+enstrophyfromstreamfunc\+\_\+ef@{ef\+\_\+enstrophyfromstreamfunc\+\_\+ef}}
\index{ef\+\_\+enstrophyfromstreamfunc\+\_\+ef@{ef\+\_\+enstrophyfromstreamfunc\+\_\+ef}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ef\+\_\+enstrophyfromstreamfunc\+\_\+ef()}{ef\_enstrophyfromstreamfunc\_ef()}}
{\footnotesize\ttfamily real(8) function, dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public ee\+\_\+mpi\+\_\+module\+::ef\+\_\+enstrophyfromstreamfunc\+\_\+ef (\begin{DoxyParamCaption}\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef\+\_\+\+Str\+Func }\end{DoxyParamCaption})}



Definition at line 964 of file ee\+\_\+mpi\+\_\+module.\+f90.



References kc, and ks.


\begin{DoxyCode}
964     \textcolor{comment}{!}
965     \textcolor{comment}{! 流線関数からエンストロフィースペクトルを計算する. }
966     \textcolor{comment}{!}
967     \textcolor{comment}{!   Q\_kl = (1/2)(k^2+l^2)^2|\(\backslash\)psi\_kl|^2}
968     \textcolor{comment}{!}
969     \textcolor{comment}{! * Q\_kl の総和が場の平均エンストロフィーとなる. }
970     \textcolor{comment}{! * それに領域の面積をかけると全エンストロフィーとなる. }
971     \textcolor{comment}{!}
972 
973     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}    :: ef\_enstrophyfromstreamfunc\_ef
974     \textcolor{comment}{! エンストロフィーースペクトル}
975 
976     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}, \textcolor{keywordtype}{intent(in)} :: ef\_strfunc
977     \textcolor{comment}{! 流線関数}
978 
979     \textcolor{keywordtype}{integer} kf, k,l
980     \textcolor{comment}{! 作業変数}
981 
982     \textcolor{keywordflow}{do} kf=1,kc(ip)
983        k = ks(ip) + kf -1
984        \textcolor{keywordflow}{do} l=-lm,lm
985           ef\_enstrophyfromstreamfunc\_ef(l,kf) &
986                = 0.5 * ( (2*pi*k/xl)**2 + (2*pi*l/yl)**2 )**2 & 
987                * (ef\_strfunc(l,kf)**2 + ef\_strfunc(-l,2*kc(ip)-kf+1)**2)
988           ef\_enstrophyfromstreamfunc\_ef(l,2*kc(ip)-kf+1) &
989                = ef\_enstrophyfromstreamfunc\_ef(l,kf)
990 \textcolor{keywordflow}{       enddo}
991 \textcolor{keywordflow}{    enddo}
992 
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_ad3b2d8b14939e5958a53dd087b59b420}\label{namespaceee__mpi__module_ad3b2d8b14939e5958a53dd087b59b420}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ef\+\_\+jacobian\+\_\+ef\+\_\+ef@{ef\+\_\+jacobian\+\_\+ef\+\_\+ef}}
\index{ef\+\_\+jacobian\+\_\+ef\+\_\+ef@{ef\+\_\+jacobian\+\_\+ef\+\_\+ef}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ef\+\_\+jacobian\+\_\+ef\+\_\+ef()}{ef\_jacobian\_ef\_ef()}}
{\footnotesize\ttfamily real(8) function, dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public ee\+\_\+mpi\+\_\+module\+::ef\+\_\+jacobian\+\_\+ef\+\_\+ef (\begin{DoxyParamCaption}\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef\+\_\+a,  }\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef\+\_\+b }\end{DoxyParamCaption})}



Definition at line 690 of file ee\+\_\+mpi\+\_\+module.\+f90.



References ef\+\_\+dx\+\_\+ef(), ef\+\_\+dy\+\_\+ef(), ef\+\_\+vx(), and vx\+\_\+ef().


\begin{DoxyCode}
690     \textcolor{comment}{!}
691     \textcolor{comment}{!  2 つのスペクトルデータからヤコビアン}
692     \textcolor{comment}{!}
693     \textcolor{comment}{!     J(A,B)=(∂xA)(∂yB)-(∂yA)(∂xB)}
694     \textcolor{comment}{!}
695     \textcolor{comment}{!  を計算する.}
696     \textcolor{comment}{!}
697     \textcolor{comment}{!  2 つのスペクトルデータのヤコビアンとは, 対応する 2 つの}
698     \textcolor{comment}{!  格子点データのヤコビアンのスペクトル変換のことである.}
699     \textcolor{comment}{!}
700     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}              :: ef\_jacobian\_ef\_ef
701     \textcolor{comment}{!(out) 2 つのスペクトルデータのヤコビアン}
702 
703     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}, \textcolor{keywordtype}{intent(in)}  :: ef\_a
704     \textcolor{comment}{!(in) 1つ目の入力スペクトルデータ}
705 
706     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}, \textcolor{keywordtype}{intent(in)}  :: ef\_b
707     \textcolor{comment}{!(in) 2つ目の入力スペクトルデータ}
708 
709     ef\_jacobian\_ef\_ef = ef\_vx(   vx\_ef(ef\_dx\_ef(ef\_a))*vx\_ef(ef\_dy\_ef(ef\_b)) &
710                                - vx\_ef(ef\_dy\_ef(ef\_a))*vx\_ef(ef\_dx\_ef(ef\_b)) )
711 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceee__mpi__module_ad3b2d8b14939e5958a53dd087b59b420_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceee__mpi__module_a9ae980fa9570ba21f451cf6fbb5f9b3e}\label{namespaceee__mpi__module_a9ae980fa9570ba21f451cf6fbb5f9b3e}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ef\+\_\+jacobianz\+\_\+ef@{ef\+\_\+jacobianz\+\_\+ef}}
\index{ef\+\_\+jacobianz\+\_\+ef@{ef\+\_\+jacobianz\+\_\+ef}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ef\+\_\+jacobianz\+\_\+ef()}{ef\_jacobianz\_ef()}}
{\footnotesize\ttfamily real(8) function, dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public ee\+\_\+mpi\+\_\+module\+::ef\+\_\+jacobianz\+\_\+ef (\begin{DoxyParamCaption}\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef\+\_\+zeta }\end{DoxyParamCaption})}



Definition at line 715 of file ee\+\_\+mpi\+\_\+module.\+f90.



References ef\+\_\+dx\+\_\+ef(), ef\+\_\+dy\+\_\+ef(), ef\+\_\+laplainv\+\_\+ef(), ef\+\_\+vx(), and vx\+\_\+ef().


\begin{DoxyCode}
715     \textcolor{comment}{!}
716     \textcolor{comment}{! 渦度スペクトルデータ ζ から流線関数と渦度のヤコビアン}
717     \textcolor{comment}{!}
718     \textcolor{comment}{!     -J(ψ,ζ)=-[(∂xψ)(∂yζ)-(∂yψ)(∂xζ)]}
719     \textcolor{comment}{!}
720     \textcolor{comment}{!  を計算する. ただしψ は (∂xx+∂yy)ψ=ζ を満たす流線関数である.}
721     \textcolor{comment}{!}
722     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}              :: ef\_jacobianz\_ef
723     \textcolor{comment}{!(out) 流線関数と渦度のヤコビアン}
724 
725     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}, \textcolor{keywordtype}{intent(in)}  :: ef\_zeta
726     \textcolor{comment}{!(in) 渦度スペクトルデータ}
727 
728     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip),0:im-1)}   :: vx\_u    \textcolor{comment}{! 速度 X 成分}
729     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip),0:im-1)}   :: vx\_v    \textcolor{comment}{! 速度 Y 成分}
730     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))} :: ef\_uv   \textcolor{comment}{! }
731 
732     vx\_u = - vx\_ef(ef\_dy\_ef(ef\_laplainv\_ef(ef\_zeta)))
733     vx\_v =   vx\_ef(ef\_dx\_ef(ef\_laplainv\_ef(ef\_zeta)))
734     ef\_uv = ef\_vx(vx\_u*vx\_v)
735     
736     ef\_jacobianz\_ef = - ( ef\_dx\_ef(ef\_dx\_ef(ef\_uv))-ef\_dy\_ef(ef\_dy\_ef(ef\_uv)) )&
737                       - ef\_dx\_ef(ef\_dy\_ef(ef\_vx(vx\_v**2 - vx\_u**2)))
738 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceee__mpi__module_a9ae980fa9570ba21f451cf6fbb5f9b3e_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceee__mpi__module_a621c3227c94119f1e1ea0ee7698bba3f}\label{namespaceee__mpi__module_a621c3227c94119f1e1ea0ee7698bba3f}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ef\+\_\+lapla\+\_\+ef@{ef\+\_\+lapla\+\_\+ef}}
\index{ef\+\_\+lapla\+\_\+ef@{ef\+\_\+lapla\+\_\+ef}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ef\+\_\+lapla\+\_\+ef()}{ef\_lapla\_ef()}}
{\footnotesize\ttfamily real(8) function, dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public ee\+\_\+mpi\+\_\+module\+::ef\+\_\+lapla\+\_\+ef (\begin{DoxyParamCaption}\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef }\end{DoxyParamCaption})}



Definition at line 564 of file ee\+\_\+mpi\+\_\+module.\+f90.



References kc, and ks.


\begin{DoxyCode}
564     \textcolor{comment}{!}
565     \textcolor{comment}{! 入力スペクトルデータにラプラシアン(∂xx+∂yy)を作用する.}
566     \textcolor{comment}{!}
567     \textcolor{comment}{! スペクトルデータのラプラシアンとは, 対応する格子点データに}
568     \textcolor{comment}{! ラプラシアンを作用させたデータのスペクトル変換のことである.}
569     \textcolor{comment}{!}
570     \textcolor{comment}{! 実際にはスペクトルデータに全波数 (k**2 + l**2) をかける}
571     \textcolor{comment}{! 計算を行っている. }
572     \textcolor{comment}{!}
573     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}              :: ef\_lapla\_ef
574     \textcolor{comment}{!(out) スペクトルデータのラプラシアン}
575 
576     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}, \textcolor{keywordtype}{intent(in)}  :: ef
577     \textcolor{comment}{!(in) 入力スペクトルデータ}
578 
579     \textcolor{keywordtype}{integer} kf, k,l
580     \textcolor{comment}{! 作業変数}
581 
582     ef\_lapla\_ef = 0.0d0
583     \textcolor{keywordflow}{do} kf=1,kc(ip)
584        k = ks(ip) + kf - 1
585        \textcolor{keywordflow}{do} l=-lm,lm
586           ef\_lapla\_ef(l,kf) = -((2*pi*k/xl)**2+(2*pi*l/yl)**2)*ef(l,kf)
587           ef\_lapla\_ef(l,2*kc(ip)-kf+1) &
588                = -((2*pi*k/xl)**2+(2*pi*l/yl)**2)*ef(l,2*kc(ip)-kf+1)
589 \textcolor{keywordflow}{       enddo}
590 \textcolor{keywordflow}{    enddo}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a1f76e911c202b896315cb22436a4e8b9}\label{namespaceee__mpi__module_a1f76e911c202b896315cb22436a4e8b9}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ef\+\_\+laplainv\+\_\+ef@{ef\+\_\+laplainv\+\_\+ef}}
\index{ef\+\_\+laplainv\+\_\+ef@{ef\+\_\+laplainv\+\_\+ef}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ef\+\_\+laplainv\+\_\+ef()}{ef\_laplainv\_ef()}}
{\footnotesize\ttfamily real(8) function, dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public ee\+\_\+mpi\+\_\+module\+::ef\+\_\+laplainv\+\_\+ef (\begin{DoxyParamCaption}\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef }\end{DoxyParamCaption})}



Definition at line 594 of file ee\+\_\+mpi\+\_\+module.\+f90.



References kc, and ks.


\begin{DoxyCode}
594     \textcolor{comment}{!}
595     \textcolor{comment}{! 入力スペクトルデータに逆ラプラシアン(∂xx+∂yy)**(-1)を作用する.}
596     \textcolor{comment}{!}
597     \textcolor{comment}{! スペクトルデータの逆ラプラシアンとは, 対応する格子点データに}
598     \textcolor{comment}{! 逆ラプラシアンを作用させたデータのスペクトル変換のことである.}
599     \textcolor{comment}{!}
600     \textcolor{comment}{! 実際にはスペクトルデータに全波数 (k**2 + l**2) で割る}
601     \textcolor{comment}{! 計算を行っている. k=l=0 成分には 0 を代入している. }
602     \textcolor{comment}{!}
603     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}             :: ef\_laplainv\_ef
604     \textcolor{comment}{!(out) スペクトルデータの逆ラプラシアン}
605 
606     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}, \textcolor{keywordtype}{intent(in)} :: ef
607     \textcolor{comment}{!(in) スペクトルデータ}
608 
609     \textcolor{keywordtype}{integer} kf, k, l
610 
611     ef\_laplainv\_ef = 0.0d0
612     \textcolor{keywordflow}{do} kf=1,kc(ip)
613        k = ks(ip) + kf - 1
614        \textcolor{keywordflow}{do} l=-lm,lm
615           \textcolor{keywordflow}{if} ( k == 0 .AND. l == 0 ) \textcolor{keywordflow}{then}
616              ef\_laplainv\_ef(l,kf) = 0.0
617           \textcolor{keywordflow}{else}
618              ef\_laplainv\_ef(l,kf) = -ef(l,kf)/((2*pi*k/xl)**2+(2*pi*l/yl)**2)
619              ef\_laplainv\_ef(l,2*kc(ip)-kf+1) &
620                   = -ef(l,2*kc(ip)-kf+1)/((2*pi*k/xl)**2+(2*pi*l/yl)**2)
621 \textcolor{keywordflow}{          endif}
622 \textcolor{keywordflow}{       enddo}
623 \textcolor{keywordflow}{    enddo}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a626e66d22ab08fa6e496136aebbab177}\label{namespaceee__mpi__module_a626e66d22ab08fa6e496136aebbab177}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ef\+\_\+vx@{ef\+\_\+vx}}
\index{ef\+\_\+vx@{ef\+\_\+vx}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ef\+\_\+vx()}{ef\_vx()}}
{\footnotesize\ttfamily real(8) function, dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), public ee\+\_\+mpi\+\_\+module\+::ef\+\_\+vx (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_ace472c7108321ae019be08199c653df6}{js}(ip)\+:\hyperlink{namespaceee__mpi__module_a5a7c3fbb70b1d6c2e9b6496c1dec9a03}{je}(ip),0\+:im-\/1), intent(in)}]{vx }\end{DoxyParamCaption})}



Definition at line 408 of file ee\+\_\+mpi\+\_\+module.\+f90.



References fay\+\_\+vax(), jc, and kc.


\begin{DoxyCode}
408     \textcolor{comment}{!}
409     \textcolor{comment}{! 格子データからスペクトルデータへ変換する.}
410     \textcolor{comment}{!}
411     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}                  :: ef\_vx
412                                                       \textcolor{comment}{!(out)  スペクトルデータ}
413     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(js(ip):je(ip),0:im-1)}, \textcolor{keywordtype}{intent(in)} :: vx
414                                                       \textcolor{comment}{!(in) 格子点データ}
415     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(js(ip):je(ip),2,0:im/2-1)} :: vax\_work
416     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(kc(ip),2,0:jm-1)}          :: fay\_work
417     \textcolor{keywordtype}{integer} :: k, l
418 
419     vax\_work = reshape(vx,(/jc(ip),2,im/2/))
420 
421     \textcolor{keyword}{call }fxrtfa(int(jc(ip),8),int(im,8),vax\_work,iti,ti)
422 
423     fay\_work = fay\_vax(vax\_work)
424 
425     \textcolor{keywordflow}{if} ( ip == 0 ) fay\_work(1,2,:) = 0.0d0
426 
427     \textcolor{keyword}{call }fxztfa(int(kc(ip),8),int(jm,8),fay\_work,itj,tj)
428 
429     \textcolor{keywordflow}{do} k=1,kc(ip)
430        \textcolor{keywordflow}{do} l=1,lm
431           ef\_vx(l,k)             = fay\_work(k,1,l)
432           ef\_vx(-l,2*kc(ip)-k+1) = fay\_work(k,2,l)
433           ef\_vx(-l,k)            = fay\_work(k,1,jm-l)
434           ef\_vx(l,2*kc(ip)-k+1)  = fay\_work(k,2,jm-l)
435 \textcolor{keywordflow}{       enddo}
436 \textcolor{keywordflow}{    enddo}
437 
438     \textcolor{keywordflow}{do} k=1,kc(ip)
439        ef\_vx(0,k)            = fay\_work(k,1,0)
440        ef\_vx(0,2*kc(ip)-k+1) = fay\_work(k,2,0)
441 \textcolor{keywordflow}{    enddo}
442 
443     \textcolor{keywordflow}{if} ( ip == 0 ) \textcolor{keywordflow}{then}
444        \textcolor{keywordflow}{do} l=1,lm
445           ef\_vx(l,1)  = fay\_work(1,1,l)
446           ef\_vx(-l,1) = fay\_work(1,2,l)
447           ef\_vx(l,2*kc(0))  = 0.0d0
448           ef\_vx(-l,2*kc(0)) = 0.0d0
449 \textcolor{keywordflow}{       end do}
450        ef\_vx(0,1) = fay\_work(1,1,0)
451        ef\_vx(0,2*kc(0)) = 0.0d0
452 \textcolor{keywordflow}{    endif}
453 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceee__mpi__module_a626e66d22ab08fa6e496136aebbab177_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceee__mpi__module_a7e9b58bc20b261dd7620a2c4e293feba}\label{namespaceee__mpi__module_a7e9b58bc20b261dd7620a2c4e293feba}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!fay\+\_\+vax@{fay\+\_\+vax}}
\index{fay\+\_\+vax@{fay\+\_\+vax}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{fay\+\_\+vax()}{fay\_vax()}}
{\footnotesize\ttfamily real(8) function, dimension(\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip),2,0\+:jm-\/1), public ee\+\_\+mpi\+\_\+module\+::fay\+\_\+vax (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip),2,0\+:im/2-\/1), intent(in)}]{vax }\end{DoxyParamCaption})}



Definition at line 510 of file ee\+\_\+mpi\+\_\+module.\+f90.



References jc, js, and kc.


\begin{DoxyCode}
510     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip),2,0:im/2-1)},\textcolor{keywordtype}{intent(IN)} :: vax
511     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(kc(ip),2,0:jm-1)}              :: fay\_vax
512     
513     \textcolor{keywordtype}{integer} :: j, k, iip
514     \textcolor{keywordtype}{integer} :: ierr
515     \textcolor{keywordtype}{integer} :: isndc(0:np-1)
516     \textcolor{keywordtype}{integer} :: isdsp(0:np-1)
517     \textcolor{keywordtype}{integer} :: ircvc(0:np-1)
518     \textcolor{keywordtype}{integer} :: irdsp(0:np-1)
519     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{allocatable} :: aa\_work(:,:)
520 \textcolor{comment}{!!$    real(8), allocatable :: vafa\_work(:,:,:,:)}
521     \textcolor{keywordtype}{integer} :: jcm
522     \textcolor{keywordtype}{integer} :: ind1, ind2
523 
524     fay\_vax = 0.0d0
525 
526     jcm = maxval(jc)
527     \textcolor{keyword}{allocate}(aa\_work(jcm*2*kc(ip),0:np-1))
528     aa\_work = 0.0d0
529 \textcolor{comment}{!!$    allocate(vafa\_work(jcm,2,kc(ip),0:np-1))}
530 \textcolor{comment}{!!$    vafa\_work = 0.0D0}
531 
532     isndc = jc(ip)*2*kc
533     ircvc = kc(ip)*2*jc
534     \textcolor{keywordflow}{do} iip=0,np-1
535        isdsp(iip) = sum(isndc(0:iip-1))
536        irdsp(iip) = jcm*2*kc(ip)*iip
537 \textcolor{keywordflow}{    end do}
538 
539     \textcolor{keyword}{call }mpi\_alltoallv(vax,isndc,isdsp,mpi\_real8,&
540          aa\_work,ircvc,irdsp,mpi\_real8,mpi\_comm\_world,ierr)
541 \textcolor{comment}{!!$    call MPI\_AlltoAllV(vax,isndc,isdsp,MPI\_REAL8,&}
542 \textcolor{comment}{!!$         vafa\_work,ircvc,irdsp,MPI\_REAL8,MPI\_COMM\_WORLD,IERR)}
543 
544     \textcolor{keywordflow}{do} iip=0,np-1
545        \textcolor{keywordflow}{do} j=1,jc(iip)
546           \textcolor{keywordflow}{do} k=1,kc(ip)
547              ind1 = j           + jc(iip)*2*(k-1)
548              ind2 = j + jc(iip) + jc(iip)*2*(k-1)
549              fay\_vax(k,1,js(iip)+j-1) = aa\_work(ind1,iip)
550              fay\_vax(k,2,js(iip)+j-1) = aa\_work(ind2,iip)
551 \textcolor{comment}{!!$             fay\_vax(k,:,js(iip)+j-1) = vafa\_work(j,:,k,iip)}
552 \textcolor{keywordflow}{          end do}
553 \textcolor{keywordflow}{       end do}
554 \textcolor{keywordflow}{    end do}
555 
556     \textcolor{keyword}{deallocate}(aa\_work)
557 \textcolor{comment}{!!$    deallocate(vafa\_work)}
558 
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a2fab24c1c4b31cbcb26f671f8686e15e}\label{namespaceee__mpi__module_a2fab24c1c4b31cbcb26f671f8686e15e}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!interpolate\+\_\+ef@{interpolate\+\_\+ef}}
\index{interpolate\+\_\+ef@{interpolate\+\_\+ef}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{interpolate\+\_\+ef()}{interpolate\_ef()}}
{\footnotesize\ttfamily real(8) function, public ee\+\_\+mpi\+\_\+module\+::interpolate\+\_\+ef (\begin{DoxyParamCaption}\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef\+\_\+\+Data,  }\item[{real(8), intent(in)}]{x,  }\item[{real(8), intent(in)}]{y }\end{DoxyParamCaption})}



Definition at line 998 of file ee\+\_\+mpi\+\_\+module.\+f90.



References kc, kf\+\_\+k(), and ks.


\begin{DoxyCode}
998     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{intent(IN)}  :: ef\_data(-lm:lm,2*kc(ip))  \textcolor{comment}{! スペクトルデータ}
999     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{intent(IN)}  :: x                         \textcolor{comment}{! 補間する点の x 座標 }
1000     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{intent(IN)}  :: y                         \textcolor{comment}{! 補間する点の y 座標 }
1001     \textcolor{keywordtype}{real(8)}              :: interpolate\_ef            \textcolor{comment}{! 補間した値}
1002     \textcolor{keywordtype}{real(8)}              :: interpolatetmp            \textcolor{comment}{! 作業変数}
1003 
1004     \textcolor{keywordtype}{integer} :: kf, k, l, ierr
1005     \textcolor{keywordtype}{real(8)} :: xx, yy
1006 
1007     xx =(2*pi/xl)*(x - xmin)
1008     yy =(2*pi/yl)*(y - ymin)
1009 
1010     \textcolor{keywordflow}{if} ( ip == 0 ) \textcolor{keywordflow}{then}
1011        interpolatetmp = ef\_data(0,1)
1012     \textcolor{keywordflow}{else}
1013        interpolatetmp = 0.0d0
1014 \textcolor{keywordflow}{    endif}
1015     
1016     \textcolor{comment}{! l=0}
1017     \textcolor{keywordflow}{if} ( ip == 0 ) \textcolor{keywordflow}{then}
1018        \textcolor{keywordflow}{do} kf=2,kc(ip)
1019           k = ks(ip) + kf -1
1020           interpolatetmp = interpolatetmp &
1021                + 2*( ef\_data(0,kf)*cos(k*xx) - ef\_data(0,kf\_k(-k))*sin(k*xx) )
1022 \textcolor{keywordflow}{       end do}
1023     \textcolor{keywordflow}{else}
1024        \textcolor{keywordflow}{do} kf=1,kc(ip)
1025           k = ks(ip) + kf -1
1026           interpolatetmp = interpolatetmp &
1027                + 2*( ef\_data(0,kf)*cos(k*xx) - ef\_data(0,kf\_k(-k))*sin(k*xx) )
1028 \textcolor{keywordflow}{       end do}
1029 \textcolor{keywordflow}{    endif}
1030        
1031     \textcolor{comment}{! k=0}
1032     \textcolor{keywordflow}{if} ( ip == 0 ) \textcolor{keywordflow}{then}
1033        \textcolor{keywordflow}{do} l=1,lm
1034           interpolatetmp = interpolatetmp &
1035             + 2*( ef\_data(l,kf\_k(0))*cos(l*yy) - ef\_data(-l,kf\_k(0))*sin(l*yy) )
1036 \textcolor{keywordflow}{       end do}
1037 \textcolor{keywordflow}{    end if}
1038 
1039     \textcolor{comment}{! k*l > 0}
1040     \textcolor{keywordflow}{do} l=1,lm
1041        \textcolor{keywordflow}{if} ( ip == 0 ) \textcolor{keywordflow}{then}
1042           \textcolor{keywordflow}{do} kf=2,kc(ip)
1043              k = ks(ip) + kf -1
1044              interpolatetmp = interpolatetmp &
1045                   + 2*(  ef\_data(l,kf)*(   cos(k*xx)*cos(l*yy)   &
1046                                          - sin(k*xx)*sin(l*yy) ) &
1047                         -ef\_data(-l,kf\_k(-k))*(   sin(k*xx)*cos(l*yy)   &
1048                                                 + cos(k*xx)*sin(l*yy) ) )
1049 \textcolor{keywordflow}{          end do}
1050        \textcolor{keywordflow}{else}
1051           \textcolor{keywordflow}{do} kf=1,kc(ip)
1052              k = ks(ip) + kf - 1
1053              interpolatetmp = interpolatetmp &
1054                   + 2*(  ef\_data(l,kf)*(   cos(k*xx)*cos(l*yy)   &
1055                                          - sin(k*xx)*sin(l*yy) ) &
1056                         -ef\_data(-l,kf\_k(-k))*(   sin(k*xx)*cos(l*yy)   &
1057                                                 + cos(k*xx)*sin(l*yy) ) )
1058 \textcolor{keywordflow}{          end do}
1059 \textcolor{keywordflow}{       endif}
1060 \textcolor{keywordflow}{    end do}
1061 
1062     \textcolor{comment}{! k*l < 0}
1063     \textcolor{keywordflow}{do} l=1,lm
1064        \textcolor{keywordflow}{if} ( ip == 0 ) \textcolor{keywordflow}{then}
1065           \textcolor{keywordflow}{do} kf=2,kc(ip)
1066              k = ks(ip) + kf - 1
1067              interpolatetmp = interpolatetmp &
1068                   + 2*(  ef\_data(-l,kf)*(   cos(k*xx)*cos(l*yy)   &
1069                                           + sin(k*xx)*sin(l*yy) ) &
1070                         -ef\_data(l,kf\_k(-k))*(   sin(k*xx)*cos(l*yy)   &
1071                                                - cos(k*xx)*sin(l*yy) ) )
1072 \textcolor{keywordflow}{          end do}
1073        \textcolor{keywordflow}{else}
1074           \textcolor{keywordflow}{do} kf=1,kc(ip)
1075              k = ks(ip) + kf - 1
1076              interpolatetmp = interpolatetmp &
1077                   + 2*(  ef\_data(-l,kf)*(   cos(k*xx)*cos(l*yy)   &
1078                                           + sin(k*xx)*sin(l*yy) ) &
1079                         -ef\_data(l,kf\_k(-k))*(   sin(k*xx)*cos(l*yy)   &
1080                                                - cos(k*xx)*sin(l*yy) ) )
1081 \textcolor{keywordflow}{          end do}
1082 \textcolor{keywordflow}{       endif}
1083 \textcolor{keywordflow}{    end do}
1084 
1085     \textcolor{keyword}{CALL }mpi\_allreduce(interpolatetmp,interpolate\_ef,1,mpi\_real8, &
1086                        mpi\_sum,mpi\_comm\_world,ierr)
1087 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceee__mpi__module_a2fab24c1c4b31cbcb26f671f8686e15e_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceee__mpi__module_a728ca744730ac7bbff84984bdc42bb34}\label{namespaceee__mpi__module_a728ca744730ac7bbff84984bdc42bb34}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!intx\+\_\+x@{intx\+\_\+x}}
\index{intx\+\_\+x@{intx\+\_\+x}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{intx\+\_\+x()}{intx\_x()}}
{\footnotesize\ttfamily real(8) function, public ee\+\_\+mpi\+\_\+module\+::intx\+\_\+x (\begin{DoxyParamCaption}\item[{real(8), dimension(0\+:im-\/1)}]{x }\end{DoxyParamCaption})}



Definition at line 820 of file ee\+\_\+mpi\+\_\+module.\+f90.



References x\+\_\+x\+\_\+weight.


\begin{DoxyCode}
820     \textcolor{comment}{!}
821     \textcolor{comment}{! 1 次元(X)格子点データの X 方向積分}
822     \textcolor{comment}{!}
823     \textcolor{comment}{! 実際には格子点データ各点毎に x\_X\_Weight をかけた総和を計算している. }
824     \textcolor{comment}{!}
825     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(0:im-1)}   :: x          \textcolor{comment}{!(in)  1 次元格子点データ}
826     \textcolor{keywordtype}{real(8)}                      :: intx\_x     \textcolor{comment}{!(out) 積分値}
827 
828     intx\_x = sum(x*x\_x\_weight)
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a5bd1ba359aa9d5c49d4a5db29f5a36d3}\label{namespaceee__mpi__module_a5bd1ba359aa9d5c49d4a5db29f5a36d3}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!inty\+\_\+v@{inty\+\_\+v}}
\index{inty\+\_\+v@{inty\+\_\+v}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{inty\+\_\+v()}{inty\_v()}}
{\footnotesize\ttfamily real(8) function, public ee\+\_\+mpi\+\_\+module\+::inty\+\_\+v (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip))}]{v }\end{DoxyParamCaption})}



Definition at line 832 of file ee\+\_\+mpi\+\_\+module.\+f90.



References v\+\_\+y\+\_\+weight.


\begin{DoxyCode}
832     \textcolor{comment}{!}
833     \textcolor{comment}{! 1 次元(Y)格子点データの Y 方向積分}
834     \textcolor{comment}{!}
835     \textcolor{comment}{! 実際には格子点データ各点毎に y\_Y\_Weight をかけた総和を計算している. }
836     \textcolor{comment}{!}
837     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip))}   :: v          \textcolor{comment}{!(in)  1 次元格子点データ}
838     \textcolor{keywordtype}{real(8)}                      :: inty\_v     \textcolor{comment}{!(out) 積分値}
839 
840     \textcolor{keywordtype}{real(8)}                      :: intytmp     \textcolor{comment}{!(out) 積分値}
841     \textcolor{keywordtype}{integer} :: ierr
842     
843     intytmp = sum(v*v\_y\_weight)
844 
845     \textcolor{keyword}{CALL }mpi\_allreduce(intytmp,inty\_v,1,mpi\_real8, &
846                        mpi\_sum,mpi\_comm\_world,ierr)
847     
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a590ef0be1f8c8b1930eba8da28f0118a}\label{namespaceee__mpi__module_a590ef0be1f8c8b1930eba8da28f0118a}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!intyx\+\_\+vx@{intyx\+\_\+vx}}
\index{intyx\+\_\+vx@{intyx\+\_\+vx}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{intyx\+\_\+vx()}{intyx\_vx()}}
{\footnotesize\ttfamily real(8) function, public ee\+\_\+mpi\+\_\+module\+::intyx\+\_\+vx (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip),0\+:im-\/1)}]{vx }\end{DoxyParamCaption})}



Definition at line 744 of file ee\+\_\+mpi\+\_\+module.\+f90.



References jc, v\+\_\+y\+\_\+weight, and x\+\_\+x\+\_\+weight.


\begin{DoxyCode}
744     \textcolor{comment}{!}
745     \textcolor{comment}{! 2 次元格子点データの全領域積分および平均.}
746     \textcolor{comment}{!}
747     \textcolor{comment}{! 実際には格子点データ各点毎に x\_X\_Weight, y\_Y\_Weight をかけた}
748     \textcolor{comment}{! 総和を計算している. }
749     \textcolor{comment}{!}
750     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip),0:im-1)}   :: vx          
751     \textcolor{comment}{!(in)  2 次元格子点データ}
752 
753     \textcolor{keywordtype}{real(8)}                             :: intyx\_vx
754     \textcolor{comment}{!(out) 積分値}
755 
756     \textcolor{keywordtype}{real(8)} :: intyxtmp
757     \textcolor{keywordtype}{integer} :: i, j, ierr
758     \textcolor{comment}{! 作業変数}
759 
760     intyxtmp = 0.0d0
761     \textcolor{keywordflow}{do} i=0,im-1
762        \textcolor{keywordflow}{do} j=1,jc(ip)
763           intyxtmp = intyxtmp + vx(j,i) * v\_y\_weight(j) * x\_x\_weight(i)
764 \textcolor{keywordflow}{       enddo}
765 \textcolor{keywordflow}{    enddo}
766 
767     \textcolor{keyword}{CALL }mpi\_allreduce(intyxtmp,intyx\_vx,1,mpi\_real8, &
768                        mpi\_sum,mpi\_comm\_world,ierr)
769     
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a0ff4e3c17a5558c57941e65d2abd1d9f}\label{namespaceee__mpi__module_a0ff4e3c17a5558c57941e65d2abd1d9f}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!kf\+\_\+k@{kf\+\_\+k}}
\index{kf\+\_\+k@{kf\+\_\+k}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{kf\+\_\+k()}{kf\_k()}}
{\footnotesize\ttfamily integer function, public ee\+\_\+mpi\+\_\+module\+::kf\+\_\+k (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{k }\end{DoxyParamCaption})}



Definition at line 337 of file ee\+\_\+mpi\+\_\+module.\+f90.



References kc, ke, and ks.


\begin{DoxyCode}
337     \textcolor{comment}{!}
338     \textcolor{comment}{! スペクトルデータ eef(-lm,lm,2*kc) での}
339     \textcolor{comment}{! X 方向波数 L の位置情報(第 2 添え字)を調べる.}
340     \textcolor{comment}{!}
341     \textcolor{comment}{! X 方向波数については ls,ls+1,... le, -le,-le+1,...,-ls}
342     \textcolor{comment}{! の順に格納されている.}
343     \textcolor{comment}{!}
344     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(IN)}  ::  k        \textcolor{comment}{! X 方向波数}
345     \textcolor{keywordtype}{integer}              ::  kf\_k     \textcolor{comment}{! スペクトルデータ第 2 添え字}
346 
347     \textcolor{keywordflow}{if} ( abs(k) < ks(ip) .OR. ke(ip) < abs(k) ) \textcolor{keywordflow}{then}
348        kf\_k = -1
349     \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} ( k >= 0 ) \textcolor{keywordflow}{then}
350        kf\_k = k-ks(ip)+1
351     \textcolor{keywordflow}{else}
352        kf\_k = ks(ip)+2*kc(ip)-abs(k)
353 \textcolor{keywordflow}{    endif}
354 
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_aee74c0c1f12c88f59064876e94ccae3b}\label{namespaceee__mpi__module_aee74c0c1f12c88f59064876e94ccae3b}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!v\+\_\+avrx\+\_\+vx@{v\+\_\+avrx\+\_\+vx}}
\index{v\+\_\+avrx\+\_\+vx@{v\+\_\+avrx\+\_\+vx}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{v\+\_\+avrx\+\_\+vx()}{v\_avrx\_vx()}}
{\footnotesize\ttfamily real(8) function, dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip)), public ee\+\_\+mpi\+\_\+module\+::v\+\_\+avrx\+\_\+vx (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip),0\+:im-\/1)}]{vx }\end{DoxyParamCaption})}



Definition at line 869 of file ee\+\_\+mpi\+\_\+module.\+f90.



References v\+\_\+intx\+\_\+vx().


\begin{DoxyCode}
869     \textcolor{comment}{!}
870     \textcolor{comment}{! 2 次元格子点データの X 方向平均}
871     \textcolor{comment}{!}
872     \textcolor{comment}{! 実際には格子点データ各点毎に x\_X\_Weight をかけた総和を計算し, }
873     \textcolor{comment}{! x\_X\_Weight の総和で割ることで平均している. }
874     \textcolor{comment}{!}
875     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip),0:im-1)}   :: vx
876     \textcolor{comment}{!(in) 2 次元格子点データ}
877 
878     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip))}          :: v\_avrx\_vx
879     \textcolor{comment}{!(out) 平均された 1 次元(Y)格子点データ}
880 
881     v\_avrx\_vx = v\_intx\_vx(vx)/xl
882 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceee__mpi__module_aee74c0c1f12c88f59064876e94ccae3b_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceee__mpi__module_a5835128437ac3d59494a0ebb08a5bc2a}\label{namespaceee__mpi__module_a5835128437ac3d59494a0ebb08a5bc2a}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!v\+\_\+intx\+\_\+vx@{v\+\_\+intx\+\_\+vx}}
\index{v\+\_\+intx\+\_\+vx@{v\+\_\+intx\+\_\+vx}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{v\+\_\+intx\+\_\+vx()}{v\_intx\_vx()}}
{\footnotesize\ttfamily real(8) function, dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip)), public ee\+\_\+mpi\+\_\+module\+::v\+\_\+intx\+\_\+vx (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip),0\+:im-\/1)}]{vx }\end{DoxyParamCaption})}



Definition at line 773 of file ee\+\_\+mpi\+\_\+module.\+f90.



References x\+\_\+x\+\_\+weight.


\begin{DoxyCode}
773     \textcolor{comment}{!}
774     \textcolor{comment}{! 2 次元格子点データの X 方向積分}
775     \textcolor{comment}{!}
776     \textcolor{comment}{! 実際には格子点データ各点毎に x\_X\_Weight をかけた総和を計算している. }
777     \textcolor{comment}{!}
778     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip),0:im-1)}   :: vx
779     \textcolor{comment}{!(in) 2 次元格子点データ}
780 
781     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip))}          :: v\_intx\_vx
782     \textcolor{comment}{!(out) 積分された 1 次元(Y)格子点データ}
783 
784     \textcolor{keywordtype}{integer} :: i
785     \textcolor{comment}{! 作業変数}
786 
787     v\_intx\_vx = 0.0d0
788     \textcolor{keywordflow}{do} i=0,im-1
789        v\_intx\_vx(:) = v\_intx\_vx(:) + vx(:,i) * x\_x\_weight(i)
790 \textcolor{keywordflow}{    enddo}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a5086cffe1a54ccdfcc2432515a6c2e82}\label{namespaceee__mpi__module_a5086cffe1a54ccdfcc2432515a6c2e82}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!vax\+\_\+fay@{vax\+\_\+fay}}
\index{vax\+\_\+fay@{vax\+\_\+fay}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{vax\+\_\+fay()}{vax\_fay()}}
{\footnotesize\ttfamily real(8) function, dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip),2,0\+:im/2-\/1), public ee\+\_\+mpi\+\_\+module\+::vax\+\_\+fay (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip),2,0\+:jm-\/1), intent(in)}]{fay }\end{DoxyParamCaption})}



Definition at line 457 of file ee\+\_\+mpi\+\_\+module.\+f90.



References jc, kc, and ks.


\begin{DoxyCode}
457     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(kc(ip),2,0:jm-1)},\textcolor{keywordtype}{intent(IN)} :: fay
458     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip),2,0:im/2-1)}          :: vax\_fay
459 
460     \textcolor{keywordtype}{integer} :: j, k, iip
461     \textcolor{keywordtype}{integer} :: ierr
462     \textcolor{keywordtype}{integer} :: isndc(0:np-1)
463     \textcolor{keywordtype}{integer} :: isdsp(0:np-1)
464     \textcolor{keywordtype}{integer} :: ircvc(0:np-1)
465     \textcolor{keywordtype}{integer} :: irdsp(0:np-1)
466     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{allocatable} :: aa\_work(:,:)
467 \textcolor{comment}{!!$    real(8), allocatable :: xava\_work(:,:,:,:)}
468     \textcolor{keywordtype}{integer} :: kcm
469     \textcolor{keywordtype}{integer} :: ind1, ind2
470     
471     vax\_fay = 0.0d0
472 
473     kcm = maxval(kc)
474     \textcolor{keyword}{allocate}(aa\_work(kcm*2*jc(ip),0:np-1))
475     aa\_work = 0.0d0
476 \textcolor{comment}{!!$    kcm = maxval(kc)}
477 \textcolor{comment}{!!$    allocate(xava\_work(kcm,2,jc(ip),0:np-1))}
478 \textcolor{comment}{!!$    xava\_work = 0.0D0}
479 
480     isndc = kc(ip)*2*jc
481     ircvc = jc(ip)*2*kc
482     \textcolor{keywordflow}{do} iip=0,np-1
483        isdsp(iip) = sum(isndc(0:iip-1))
484        irdsp(iip) = kcm*2*jc(ip)*iip
485 \textcolor{keywordflow}{    end do}
486 
487     \textcolor{keyword}{call }mpi\_alltoallv(fay,isndc,isdsp,mpi\_real8,&
488          aa\_work,ircvc,irdsp,mpi\_real8,mpi\_comm\_world,ierr)
489 \textcolor{comment}{!!$    call MPI\_AlltoAllV(fay,isndc,isdsp,MPI\_REAL8,&}
490 \textcolor{comment}{!!$         xava\_work,ircvc,irdsp,MPI\_REAL8,MPI\_COMM\_WORLD,IERR)}
491 
492     \textcolor{keywordflow}{do} iip=0,np-1
493        \textcolor{keywordflow}{do} k=1,kc(iip)
494           \textcolor{keywordflow}{do} j=1,jc(ip)
495              ind1 = k           + kc(iip)*2*(j-1)
496              ind2 = k + kc(iip) + kc(iip)*2*(j-1)
497              vax\_fay(j,1,ks(iip)-1+k) = aa\_work(ind1,iip)
498              vax\_fay(j,2,ks(iip)-1+k) = aa\_work(ind2,iip)
499 \textcolor{comment}{!!$             vax\_fay(j,:,ks(iip)-1+k) = xava\_work(k,:,j,iip)}
500 \textcolor{keywordflow}{          end do}
501 \textcolor{keywordflow}{       end do}
502 \textcolor{keywordflow}{    end do}
503 
504     \textcolor{keyword}{deallocate}(aa\_work)
505 \textcolor{comment}{!!$    deallocate(xava\_work)}
506 
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_abfced6fc3168f60d28437307633948d2}\label{namespaceee__mpi__module_abfced6fc3168f60d28437307633948d2}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!vx\+\_\+ef@{vx\+\_\+ef}}
\index{vx\+\_\+ef@{vx\+\_\+ef}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{vx\+\_\+ef()}{vx\_ef()}}
{\footnotesize\ttfamily real(8) function, dimension(\hyperlink{namespaceee__mpi__module_ace472c7108321ae019be08199c653df6}{js}(ip)\+:\hyperlink{namespaceee__mpi__module_a5a7c3fbb70b1d6c2e9b6496c1dec9a03}{je}(ip),0\+:im-\/1), public ee\+\_\+mpi\+\_\+module\+::vx\+\_\+ef (\begin{DoxyParamCaption}\item[{real(8), dimension(-\/lm\+:lm,2$\ast$\hyperlink{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}{kc}(ip)), intent(in)}]{ef }\end{DoxyParamCaption})}



Definition at line 359 of file ee\+\_\+mpi\+\_\+module.\+f90.



References jc, kc, and vax\+\_\+fay().


\begin{DoxyCode}
359     \textcolor{comment}{!}
360     \textcolor{comment}{! スペクトルデータから格子データへ変換する.}
361     \textcolor{comment}{!}
362     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(js(ip):je(ip),0:im-1)}        :: vx\_ef
363                                                         \textcolor{comment}{!(out) 格子点データ}
364     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(-lm:lm,2*kc(ip))}, \textcolor{keywordtype}{intent(in)} :: ef
365                                                         \textcolor{comment}{!(in)  スペクトルデータ}
366     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(js(ip):je(ip),2,0:im/2-1)} :: vax\_work
367     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(kc(ip),2,0:jm-1)}          :: fay\_work
368  
369     \textcolor{keywordtype}{integer} :: k, l
370 
371     fay\_work = 0.0d0
372 
373     \textcolor{keywordflow}{do} k=1,kc(ip)
374        \textcolor{keywordflow}{do} l=1,lm
375           fay\_work(k,1,l)    = ef(l,k)
376           fay\_work(k,2,l)    = ef(-l,2*kc(ip)-k+1)
377           fay\_work(k,1,jm-l) = ef(-l,k)
378           fay\_work(k,2,jm-l) = ef(l,2*kc(ip)-k+1)
379 \textcolor{keywordflow}{       enddo}
380 \textcolor{keywordflow}{    enddo}
381 
382     \textcolor{keywordflow}{do} k=1,kc(ip)
383        fay\_work(k,1,0) = ef(0,k)
384        fay\_work(k,2,0) = ef(0,2*kc(ip)-k+1)
385 \textcolor{keywordflow}{    enddo}
386 
387     \textcolor{keywordflow}{if} ( ip == 0 ) \textcolor{keywordflow}{then}
388        \textcolor{keywordflow}{do} l=1,lm
389           fay\_work(1,1,l) = ef(l,1)
390           fay\_work(1,2,l) = ef(-l,1)
391           fay\_work(1,1,jm-l) = ef(l,1)
392           fay\_work(1,2,jm-l) = -ef(-l,1)
393 \textcolor{keywordflow}{       end do}
394        fay\_work(1,1,0) = ef(0,1)
395 \textcolor{keywordflow}{    endif}
396 
397     \textcolor{keyword}{call }fxztba(int(kc(ip),8),int(jm,8),fay\_work,itj,tj)
398 
399     vax\_work = vax\_fay(fay\_work)
400 
401     \textcolor{keyword}{call }fxrtba(int(jc(ip),8),int(im,8),vax\_work,iti,ti)
402 
403     vx\_ef = reshape(vax\_work,(/jc(ip),im/))
404     
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceee__mpi__module_abfced6fc3168f60d28437307633948d2_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceee__mpi__module_a135cfad45d00ee505bc501e2d63cf3d7}\label{namespaceee__mpi__module_a135cfad45d00ee505bc501e2d63cf3d7}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!x\+\_\+avry\+\_\+vx@{x\+\_\+avry\+\_\+vx}}
\index{x\+\_\+avry\+\_\+vx@{x\+\_\+avry\+\_\+vx}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{x\+\_\+avry\+\_\+vx()}{x\_avry\_vx()}}
{\footnotesize\ttfamily real(8) function, dimension(0\+:im-\/1), public ee\+\_\+mpi\+\_\+module\+::x\+\_\+avry\+\_\+vx (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip),0\+:im-\/1)}]{vx }\end{DoxyParamCaption})}



Definition at line 886 of file ee\+\_\+mpi\+\_\+module.\+f90.



References x\+\_\+inty\+\_\+vx().


\begin{DoxyCode}
886     \textcolor{comment}{!}
887     \textcolor{comment}{! 2 次元格子点データの Y 方向平均}
888     \textcolor{comment}{!}
889     \textcolor{comment}{! 実際には格子点データ各点毎に y\_Y\_Weight をかけた総和を計算し, }
890     \textcolor{comment}{! y\_Y\_Weight の総和で割ることで平均している. }
891     \textcolor{comment}{!}
892     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip),0:im-1)}   :: vx
893     \textcolor{comment}{!(in) 2 次元格子点データ}
894 
895     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(0:im-1)}          :: x\_avry\_vx
896     \textcolor{comment}{!(out) 平均された 1 次元(X)格子点データ}
897 
898     x\_avry\_vx = x\_inty\_vx(vx)/yl
899 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceee__mpi__module_a135cfad45d00ee505bc501e2d63cf3d7_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceee__mpi__module_a2dda41756d7fea736e3a4ad44bc1c12b}\label{namespaceee__mpi__module_a2dda41756d7fea736e3a4ad44bc1c12b}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!x\+\_\+inty\+\_\+vx@{x\+\_\+inty\+\_\+vx}}
\index{x\+\_\+inty\+\_\+vx@{x\+\_\+inty\+\_\+vx}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{x\+\_\+inty\+\_\+vx()}{x\_inty\_vx()}}
{\footnotesize\ttfamily real(8) function, dimension(0\+:im-\/1), public ee\+\_\+mpi\+\_\+module\+::x\+\_\+inty\+\_\+vx (\begin{DoxyParamCaption}\item[{real(8), dimension(\hyperlink{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}{jc}(ip),0\+:im-\/1)}]{vx }\end{DoxyParamCaption})}



Definition at line 794 of file ee\+\_\+mpi\+\_\+module.\+f90.



References jc, and v\+\_\+y\+\_\+weight.


\begin{DoxyCode}
794     \textcolor{comment}{!}
795     \textcolor{comment}{! 2 次元格子点データの Y 方向積分}
796     \textcolor{comment}{!}
797     \textcolor{comment}{! 実際には格子点データ各点毎に y\_Y\_Weight をかけた総和を計算している. }
798     \textcolor{comment}{!}
799     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(jc(ip),0:im-1)}   :: vx      
800     \textcolor{comment}{!(in)  2 次元格子点データ}
801 
802     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(0:im-1)}        :: x\_inty\_vx 
803     \textcolor{comment}{!(out) 積分された 1 次元(X)格子点データ}
804 
805     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(0:im-1)}        :: x\_intytmp
806     \textcolor{keywordtype}{integer} :: j, ierr
807     \textcolor{comment}{! 作業変数}
808 
809     x\_intytmp = 0.0d0
810     \textcolor{keywordflow}{do} j=1,jc(ip)
811        x\_intytmp(:) = x\_intytmp(:) + vx(j,:) * v\_y\_weight(j)
812 \textcolor{keywordflow}{    enddo}
813 
814     \textcolor{keyword}{CALL }mpi\_allreduce(x\_intytmp,x\_inty\_vx,im,mpi\_real8, &
815                        mpi\_sum,mpi\_comm\_world,ierr)
816 
\end{DoxyCode}


\subsection{Variable Documentation}
\mbox{\Hypertarget{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}\label{namespaceee__mpi__module_a563ed35307b8f068d284f2ea9acef9fc}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!jc@{jc}}
\index{jc@{jc}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{jc}{jc}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::jc}



Definition at line 201 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
201   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable} :: jc              \textcolor{comment}{! Y 座標格子点数}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a5a7c3fbb70b1d6c2e9b6496c1dec9a03}\label{namespaceee__mpi__module_a5a7c3fbb70b1d6c2e9b6496c1dec9a03}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!je@{je}}
\index{je@{je}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{je}{je}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::je}



Definition at line 199 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
199   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable} :: je              \textcolor{comment}{! Y 座標最大格子点}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_ace472c7108321ae019be08199c653df6}\label{namespaceee__mpi__module_ace472c7108321ae019be08199c653df6}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!js@{js}}
\index{js@{js}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{js}{js}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::js}



Definition at line 200 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
200   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable} :: js              \textcolor{comment}{! Y 座標最小格子点}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}\label{namespaceee__mpi__module_a59d44df4078dcb5c046a569402fabc8d}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!kc@{kc}}
\index{kc@{kc}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{kc}{kc}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::kc}



Definition at line 198 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
198   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable} :: kc              \textcolor{comment}{! X 波数の数}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a12518187ee4b7f5553ef28958f33cd7c}\label{namespaceee__mpi__module_a12518187ee4b7f5553ef28958f33cd7c}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ke@{ke}}
\index{ke@{ke}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ke}{ke}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::ke}



Definition at line 196 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
196   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable} :: ke              \textcolor{comment}{! X 最大波数}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_aa0a1befded289dda93cfa4f55ea41c6a}\label{namespaceee__mpi__module_aa0a1befded289dda93cfa4f55ea41c6a}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!ks@{ks}}
\index{ks@{ks}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{ks}{ks}}
{\footnotesize\ttfamily integer, dimension(\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::ks}



Definition at line 197 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
197   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable} :: ks              \textcolor{comment}{! X 最小波数}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a65d08c8e04adee26adecf6a0736c55e3}\label{namespaceee__mpi__module_a65d08c8e04adee26adecf6a0736c55e3}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!v\+\_\+y@{v\+\_\+y}}
\index{v\+\_\+y@{v\+\_\+y}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{v\+\_\+y}{v\_y}}
{\footnotesize\ttfamily real(8), dimension(\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::v\+\_\+y}



Definition at line 211 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
211   \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable} :: v\_y             \textcolor{comment}{! 格子点座標(Y)}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a69eb710cfe63554324142ce653baa4c2}\label{namespaceee__mpi__module_a69eb710cfe63554324142ce653baa4c2}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!v\+\_\+y\+\_\+weight@{v\+\_\+y\+\_\+weight}}
\index{v\+\_\+y\+\_\+weight@{v\+\_\+y\+\_\+weight}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{v\+\_\+y\+\_\+weight}{v\_y\_weight}}
{\footnotesize\ttfamily real(8), dimension(\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::v\+\_\+y\+\_\+weight}



Definition at line 214 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
214   \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable} :: v\_y\_weight      \textcolor{comment}{! 格子点重み(Y)}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_aeb0cbc8b851f7d51af69cb710a9804a0}\label{namespaceee__mpi__module_aeb0cbc8b851f7d51af69cb710a9804a0}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!vx\+\_\+x@{vx\+\_\+x}}
\index{vx\+\_\+x@{vx\+\_\+x}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{vx\+\_\+x}{vx\_x}}
{\footnotesize\ttfamily real(8), dimension(\+:,\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::vx\+\_\+x}



Definition at line 216 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
216   \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{allocatable} :: vx\_x          \textcolor{comment}{! 格子点(X)座標(2 次元)}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_aa97ee64ec5f21d749b677e644944248b}\label{namespaceee__mpi__module_aa97ee64ec5f21d749b677e644944248b}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!vx\+\_\+y@{vx\+\_\+y}}
\index{vx\+\_\+y@{vx\+\_\+y}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{vx\+\_\+y}{vx\_y}}
{\footnotesize\ttfamily real(8), dimension(\+:,\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::vx\+\_\+y}



Definition at line 217 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
217   \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{allocatable} :: vx\_y          \textcolor{comment}{! 格子点(Y)座標(2 次元)}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_afb2e23f3bbdfecea3a9e85988ece575c}\label{namespaceee__mpi__module_afb2e23f3bbdfecea3a9e85988ece575c}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!x\+\_\+x@{x\+\_\+x}}
\index{x\+\_\+x@{x\+\_\+x}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{x\+\_\+x}{x\_x}}
{\footnotesize\ttfamily real(8), dimension(\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::x\+\_\+x}



Definition at line 210 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
210   \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable} :: x\_x             \textcolor{comment}{! 格子点座標(X)}
\end{DoxyCode}
\mbox{\Hypertarget{namespaceee__mpi__module_a7eb6f389126e419ea852af05bf3da361}\label{namespaceee__mpi__module_a7eb6f389126e419ea852af05bf3da361}} 
\index{ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}!x\+\_\+x\+\_\+weight@{x\+\_\+x\+\_\+weight}}
\index{x\+\_\+x\+\_\+weight@{x\+\_\+x\+\_\+weight}!ee\+\_\+mpi\+\_\+module@{ee\+\_\+mpi\+\_\+module}}
\subsubsection{\texorpdfstring{x\+\_\+x\+\_\+weight}{x\_x\_weight}}
{\footnotesize\ttfamily real(8), dimension(\+:), allocatable, save, public ee\+\_\+mpi\+\_\+module\+::x\+\_\+x\+\_\+weight}



Definition at line 213 of file ee\+\_\+mpi\+\_\+module.\+f90.


\begin{DoxyCode}
213   \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable} :: x\_x\_weight      \textcolor{comment}{! 格子点重み(X)}
\end{DoxyCode}
