\hypertarget{namespacew__mpi__module__integral}{}\section{w\+\_\+mpi\+\_\+module\+\_\+integral Module Reference}
\label{namespacew__mpi__module__integral}\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}


\hyperlink{namespacew__mpi__module}{w\+\_\+mpi\+\_\+module} の下部モジュール\+: 積分・平均  


\subsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
real(dp) function, public \hyperlink{namespacew__mpi__module__integral_ac5af87b417884be2b5cb2999284b1306}{intlonlat\+\_\+xv} (xv\+\_\+data)
\begin{DoxyCompactList}\small\item\em 2 次元緯度経度格子点データの全領域積分(1 層用). \end{DoxyCompactList}\item 
real(dp) function, dimension(0\+:im-\/1), public \hyperlink{namespacew__mpi__module__integral_a71b75e471c8cdb91d0ae71087710cafa}{x\+\_\+intlat\+\_\+xv} (xv\+\_\+data)
\begin{DoxyCompactList}\small\item\em 2 次元緯度経度格子点データの緯度(\+Y)方向積分(1 層用). \end{DoxyCompactList}\item 
real(dp) function, dimension(jc), public \hyperlink{namespacew__mpi__module__integral_ab648eb7e4753d7bef778f73ba59f44f9}{v\+\_\+intlon\+\_\+xv} (xv\+\_\+data)
\begin{DoxyCompactList}\small\item\em 2 次元緯度経度格子点データの経度(\+X)方向積分(1 層用). \end{DoxyCompactList}\item 
real(dp) function, public \hyperlink{namespacew__mpi__module__integral_a6a200156a354cde87981a5995db3bbbd}{intlon\+\_\+x} (x\+\_\+data)
\begin{DoxyCompactList}\small\item\em 1 次元経度(\+X)格子点データの X 方向積分(1 層用). \end{DoxyCompactList}\item 
real(dp) function, public \hyperlink{namespacew__mpi__module__integral_af757b3b5cc28c759991c14504b75f2d2}{intlat\+\_\+v} (v\+\_\+data)
\begin{DoxyCompactList}\small\item\em 1 次元緯度(\+Y)格子点データの Y 方向積分(1 層用). \end{DoxyCompactList}\item 
real(dp) function, public \hyperlink{namespacew__mpi__module__integral_a700c19629d80b3fe18a9cb6e938da5ad}{avrlonlat\+\_\+xv} (xv\+\_\+data)
\begin{DoxyCompactList}\small\item\em 2 次元緯度経度格子点データの全領域平均(1 層用). \end{DoxyCompactList}\item 
real(dp) function, dimension(im), public \hyperlink{namespacew__mpi__module__integral_ac6285d0af7ec095f2e01357e51d27ea2}{x\+\_\+avrlat\+\_\+xv} (xv\+\_\+data)
\begin{DoxyCompactList}\small\item\em 2 次元緯度経度格子点データの緯度(\+Y)方向平均(1 層用). \end{DoxyCompactList}\item 
real(dp) function, dimension(jc), public \hyperlink{namespacew__mpi__module__integral_a2aae0ec7dfbaa01ac333543cb077d3fd}{v\+\_\+avrlon\+\_\+xv} (xv\+\_\+data)
\begin{DoxyCompactList}\small\item\em 2 次元緯度経度格子点データの経度(\+X)方向平均(1 層用). \end{DoxyCompactList}\item 
real(dp) function, public \hyperlink{namespacew__mpi__module__integral_a52546cfced200f8a9a3c605d79af7824}{avrlon\+\_\+x} (x\+\_\+data)
\begin{DoxyCompactList}\small\item\em 1 次元(\+X)格子点データの経度(\+X)方向平均(1 層用). \end{DoxyCompactList}\item 
real(dp) function, public \hyperlink{namespacew__mpi__module__integral_a58d3350d84b1507c0acb6ac596717eae}{avrlat\+\_\+v} (v\+\_\+data)
\begin{DoxyCompactList}\small\item\em 1 次元(\+Y)格子点データの緯度(\+Y)方向平均(1 層用). \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
\hyperlink{namespacew__mpi__module}{w\+\_\+mpi\+\_\+module} の下部モジュール\+: 積分・平均 

\begin{DoxyCopyright}{Copyright}
Copyright (C) S\+P\+M\+O\+D\+EL Development Group, 2019. License is M\+I\+T/\+X11. see \hyperlink{COPYRIGHT}{C\+O\+P\+Y\+R\+I\+G\+HT} in detail 
\end{DoxyCopyright}
\begin{DoxyAuthor}{Author}
Shin-\/ichi Takehiro, Youhei S\+A\+S\+A\+KI 
\end{DoxyAuthor}
\begin{DoxyWarning}{Warning}
本モジュールを直接呼ぶ事は想定されていないことに注意されたい． ユーザは \hyperlink{namespacew__mpi__module}{w\+\_\+mpi\+\_\+module} を呼ぶこと． 
\end{DoxyWarning}


\subsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{namespacew__mpi__module__integral_a58d3350d84b1507c0acb6ac596717eae}\label{namespacew__mpi__module__integral_a58d3350d84b1507c0acb6ac596717eae}} 
\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}!avrlat\+\_\+v@{avrlat\+\_\+v}}
\index{avrlat\+\_\+v@{avrlat\+\_\+v}!w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}
\subsubsection{\texorpdfstring{avrlat\+\_\+v()}{avrlat\_v()}}
{\footnotesize\ttfamily real(dp) function, public w\+\_\+mpi\+\_\+module\+\_\+integral\+::avrlat\+\_\+v (\begin{DoxyParamCaption}\item[{real(dp), dimension(jc), intent(in)}]{v\+\_\+data }\end{DoxyParamCaption})}



1 次元(\+Y)格子点データの緯度(\+Y)方向平均(1 層用). 

実際には格子点データ各点毎に v\+\_\+\+Y\+\_\+\+Weight をかけた総和を計算し, v\+\_\+\+Y\+\_\+\+Weight の総和で割ることで平均している.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em v\+\_\+data} & 1 次元緯度格子点データ\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
平均値 
\end{DoxyReturn}


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



References w\+\_\+mpi\+\_\+module\+\_\+base\+::icom, intlat\+\_\+v(), and w\+\_\+mpi\+\_\+module\+\_\+base\+::v\+\_\+lat\+\_\+weight.


\begin{DoxyCode}
216 
217     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)} :: v\_data(jc)
219     \textcolor{keywordtype}{real(DP)}             :: avrlat\_v
220 
221     \textcolor{keywordtype}{real(DP)}             :: tmp
222     \textcolor{keywordtype}{real(DP)}             :: lat\_weight\_sum
223 
224     tmp = sum(v\_lat\_weight)
225     \textcolor{keyword}{CALL }mpi\_allreduce(tmp, lat\_weight\_sum, 1, mpi\_real8, &
226       & mpi\_sum, int(icom), ierr)
227     avrlat\_v = intlat\_v(v\_data)/lat\_weight\_sum
228 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespacew__mpi__module__integral_a58d3350d84b1507c0acb6ac596717eae_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespacew__mpi__module__integral_a52546cfced200f8a9a3c605d79af7824}\label{namespacew__mpi__module__integral_a52546cfced200f8a9a3c605d79af7824}} 
\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}!avrlon\+\_\+x@{avrlon\+\_\+x}}
\index{avrlon\+\_\+x@{avrlon\+\_\+x}!w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}
\subsubsection{\texorpdfstring{avrlon\+\_\+x()}{avrlon\_x()}}
{\footnotesize\ttfamily real(dp) function, public w\+\_\+mpi\+\_\+module\+\_\+integral\+::avrlon\+\_\+x (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:im-\/1), intent(in)}]{x\+\_\+data }\end{DoxyParamCaption})}



1 次元(\+X)格子点データの経度(\+X)方向平均(1 層用). 

実際には格子点データ各点毎に x\+\_\+\+X\+\_\+\+Weight をかけた総和を計算し, x\+\_\+\+X\+\_\+\+Weight の総和で割ることで平均している.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em x\+\_\+data} & 1 次元経度(\+X)格子点データ\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
平均値 
\end{DoxyReturn}


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



References intlon\+\_\+x(), and w\+\_\+mpi\+\_\+module\+\_\+base\+::x\+\_\+lon\+\_\+weight.


\begin{DoxyCode}
200 
201     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)} :: x\_data(0:im-1)
203     \textcolor{keywordtype}{real(DP)}             :: avrlon\_x
204 
205     avrlon\_x = intlon\_x(x\_data)/sum(x\_lon\_weight)
206 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespacew__mpi__module__integral_a52546cfced200f8a9a3c605d79af7824_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespacew__mpi__module__integral_a700c19629d80b3fe18a9cb6e938da5ad}\label{namespacew__mpi__module__integral_a700c19629d80b3fe18a9cb6e938da5ad}} 
\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}!avrlonlat\+\_\+xv@{avrlonlat\+\_\+xv}}
\index{avrlonlat\+\_\+xv@{avrlonlat\+\_\+xv}!w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}
\subsubsection{\texorpdfstring{avrlonlat\+\_\+xv()}{avrlonlat\_xv()}}
{\footnotesize\ttfamily real(dp) function, public w\+\_\+mpi\+\_\+module\+\_\+integral\+::avrlonlat\+\_\+xv (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:im-\/1,jc), intent(in)}]{xv\+\_\+data }\end{DoxyParamCaption})}



2 次元緯度経度格子点データの全領域平均(1 層用). 

実際には格子点データ各点毎に x\+\_\+\+X\+\_\+\+Weight, v\+\_\+\+Y\+\_\+\+Weight をかけた 総和を計算し, x\+\_\+\+X\+\_\+\+Weight$\ast$v\+\_\+\+Y\+\_\+\+Weight の総和で割ることで平均している.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em xv\+\_\+data} & 2 次元経度緯度格子点データ(0\+:im-\/1,jc)\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
平均値 
\end{DoxyReturn}


Definition at line 145 of file w\+\_\+mpi\+\_\+module\+\_\+integral.\+f90.



References avrlon\+\_\+x(), and x\+\_\+avrlat\+\_\+xv().


\begin{DoxyCode}
145 
146     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}   :: xv\_data(0:im-1,jc)
148     \textcolor{keywordtype}{real(DP)} :: avrlonlat\_xv
149 
150     avrlonlat\_xv = avrlon\_x(x\_avrlat\_xv(xv\_data))
151 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespacew__mpi__module__integral_a700c19629d80b3fe18a9cb6e938da5ad_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespacew__mpi__module__integral_af757b3b5cc28c759991c14504b75f2d2}\label{namespacew__mpi__module__integral_af757b3b5cc28c759991c14504b75f2d2}} 
\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}!intlat\+\_\+v@{intlat\+\_\+v}}
\index{intlat\+\_\+v@{intlat\+\_\+v}!w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}
\subsubsection{\texorpdfstring{intlat\+\_\+v()}{intlat\_v()}}
{\footnotesize\ttfamily real(dp) function, public w\+\_\+mpi\+\_\+module\+\_\+integral\+::intlat\+\_\+v (\begin{DoxyParamCaption}\item[{real(dp), dimension(jc), intent(in)}]{v\+\_\+data }\end{DoxyParamCaption})}



1 次元緯度(\+Y)格子点データの Y 方向積分(1 層用). 

実際には格子点データ各点毎に v\+\_\+\+Y\+\_\+\+Weight をかけた総和を計算している.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em v\+\_\+data} & 1 次元緯度(\+Y)格子点データ\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
積分値 
\end{DoxyReturn}


Definition at line 124 of file w\+\_\+mpi\+\_\+module\+\_\+integral.\+f90.



References w\+\_\+mpi\+\_\+module\+\_\+base\+::icom, and w\+\_\+mpi\+\_\+module\+\_\+base\+::v\+\_\+lat\+\_\+weight.


\begin{DoxyCode}
124 
125     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)} :: v\_data(jc)
127     \textcolor{keywordtype}{real(DP)}             :: intlat\_v
128 
129     \textcolor{keywordtype}{real(DP)}             :: intlattmp
130 
131     intlat\_v = sum(v\_data * v\_lat\_weight)
132     intlattmp=intlat\_v
133     \textcolor{keyword}{CALL }mpi\_allreduce(intlattmp, intlat\_v, 1, mpi\_real8, &
134       & mpi\_sum, int(icom), ierr)
135 
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__mpi__module__integral_a6a200156a354cde87981a5995db3bbbd}\label{namespacew__mpi__module__integral_a6a200156a354cde87981a5995db3bbbd}} 
\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}!intlon\+\_\+x@{intlon\+\_\+x}}
\index{intlon\+\_\+x@{intlon\+\_\+x}!w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}
\subsubsection{\texorpdfstring{intlon\+\_\+x()}{intlon\_x()}}
{\footnotesize\ttfamily real(dp) function, public w\+\_\+mpi\+\_\+module\+\_\+integral\+::intlon\+\_\+x (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:im-\/1), intent(in)}]{x\+\_\+data }\end{DoxyParamCaption})}



1 次元経度(\+X)格子点データの X 方向積分(1 層用). 

実際には格子点データ各点毎に x\+\_\+\+X\+\_\+\+Weight をかけた総和を計算している.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em x\+\_\+data} & 1 次元経度(\+X)格子点データ\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
積分値 
\end{DoxyReturn}


Definition at line 109 of file w\+\_\+mpi\+\_\+module\+\_\+integral.\+f90.



References w\+\_\+mpi\+\_\+module\+\_\+base\+::x\+\_\+lon\+\_\+weight.


\begin{DoxyCode}
109 
110     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)} :: x\_data(0:im-1)
112     \textcolor{keywordtype}{real(DP)}             :: intlon\_x
113 
114     intlon\_x = sum(x\_data * x\_lon\_weight)
115 
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__mpi__module__integral_ac5af87b417884be2b5cb2999284b1306}\label{namespacew__mpi__module__integral_ac5af87b417884be2b5cb2999284b1306}} 
\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}!intlonlat\+\_\+xv@{intlonlat\+\_\+xv}}
\index{intlonlat\+\_\+xv@{intlonlat\+\_\+xv}!w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}
\subsubsection{\texorpdfstring{intlonlat\+\_\+xv()}{intlonlat\_xv()}}
{\footnotesize\ttfamily real(dp) function, public w\+\_\+mpi\+\_\+module\+\_\+integral\+::intlonlat\+\_\+xv (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:im-\/1,jc), intent(in)}]{xv\+\_\+data }\end{DoxyParamCaption})}



2 次元緯度経度格子点データの全領域積分(1 層用). 

実際には格子点データ各点毎に x\+\_\+\+X\+\_\+\+Weight, v\+\_\+\+V\+\_\+\+Weight をかけた 総和を計算している.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em xv\+\_\+data} & 2 次元経度緯度格子点データ(0\+:im-\/1,jc)\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
積分値 
\end{DoxyReturn}


Definition at line 50 of file w\+\_\+mpi\+\_\+module\+\_\+integral.\+f90.



References intlon\+\_\+x(), and x\+\_\+intlat\+\_\+xv().


\begin{DoxyCode}
50 
51     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}   :: xv\_data(0:im-1,jc)
53     \textcolor{keywordtype}{real(DP)} :: intlonlat\_xv
54 
55     intlonlat\_xv = intlon\_x(x\_intlat\_xv(xv\_data))
56 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespacew__mpi__module__integral_ac5af87b417884be2b5cb2999284b1306_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespacew__mpi__module__integral_a2aae0ec7dfbaa01ac333543cb077d3fd}\label{namespacew__mpi__module__integral_a2aae0ec7dfbaa01ac333543cb077d3fd}} 
\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}!v\+\_\+avrlon\+\_\+xv@{v\+\_\+avrlon\+\_\+xv}}
\index{v\+\_\+avrlon\+\_\+xv@{v\+\_\+avrlon\+\_\+xv}!w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}
\subsubsection{\texorpdfstring{v\+\_\+avrlon\+\_\+xv()}{v\_avrlon\_xv()}}
{\footnotesize\ttfamily real(dp) function, dimension(jc), public w\+\_\+mpi\+\_\+module\+\_\+integral\+::v\+\_\+avrlon\+\_\+xv (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:im-\/1,jc), intent(in)}]{xv\+\_\+data }\end{DoxyParamCaption})}



2 次元緯度経度格子点データの経度(\+X)方向平均(1 層用). 

実際には格子点データ各点毎に x\+\_\+\+X\+\_\+\+Weight をかけた総和を計算し, x\+\_\+\+X\+\_\+\+Weight の総和で割ることで平均している.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em xv\+\_\+data} & 2 次元経度緯度格子点データ(0\+:im-\/1,jc)\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
平均された 1 次元緯度(\+Y)格子点 
\end{DoxyReturn}


Definition at line 184 of file w\+\_\+mpi\+\_\+module\+\_\+integral.\+f90.



References v\+\_\+intlon\+\_\+xv(), and w\+\_\+mpi\+\_\+module\+\_\+base\+::x\+\_\+lon\+\_\+weight.


\begin{DoxyCode}
184 
185     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)} :: xv\_data(0:im-1,jc)
187     \textcolor{keywordtype}{real(DP)}             :: v\_avrlon\_xv(jc)
188 
189     v\_avrlon\_xv = v\_intlon\_xv(xv\_data)/sum(x\_lon\_weight)
190 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespacew__mpi__module__integral_a2aae0ec7dfbaa01ac333543cb077d3fd_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespacew__mpi__module__integral_ab648eb7e4753d7bef778f73ba59f44f9}\label{namespacew__mpi__module__integral_ab648eb7e4753d7bef778f73ba59f44f9}} 
\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}!v\+\_\+intlon\+\_\+xv@{v\+\_\+intlon\+\_\+xv}}
\index{v\+\_\+intlon\+\_\+xv@{v\+\_\+intlon\+\_\+xv}!w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}
\subsubsection{\texorpdfstring{v\+\_\+intlon\+\_\+xv()}{v\_intlon\_xv()}}
{\footnotesize\ttfamily real(dp) function, dimension(jc), public w\+\_\+mpi\+\_\+module\+\_\+integral\+::v\+\_\+intlon\+\_\+xv (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:im-\/1,jc), intent(in)}]{xv\+\_\+data }\end{DoxyParamCaption})}



2 次元緯度経度格子点データの経度(\+X)方向積分(1 層用). 

実際には格子点データ各点毎に x\+\_\+\+X\+\_\+\+Weight をかけた総和を計算している.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em xv\+\_\+data} & 2 次元経度緯度格子点データ(0\+:im-\/1,jc)\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
積分された 1 次元緯度(\+Y)格子点データ 
\end{DoxyReturn}


Definition at line 89 of file w\+\_\+mpi\+\_\+module\+\_\+integral.\+f90.



References w\+\_\+mpi\+\_\+module\+\_\+base\+::im, and w\+\_\+mpi\+\_\+module\+\_\+base\+::x\+\_\+lon\+\_\+weight.


\begin{DoxyCode}
89 
90     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)} :: xv\_data(0:im-1,jc)
92     \textcolor{keywordtype}{real(DP)}             :: v\_intlon\_xv(jc)
93 
94     \textcolor{keywordtype}{integer} :: i
95 
96     v\_intlon\_xv = 0.0d0
97     \textcolor{keywordflow}{do} i=0,int(im)-1
98       v\_intlon\_xv = v\_intlon\_xv + xv\_data(i,:) * x\_lon\_weight(i)
99 \textcolor{keywordflow}{    enddo}
100 
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__mpi__module__integral_ac6285d0af7ec095f2e01357e51d27ea2}\label{namespacew__mpi__module__integral_ac6285d0af7ec095f2e01357e51d27ea2}} 
\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}!x\+\_\+avrlat\+\_\+xv@{x\+\_\+avrlat\+\_\+xv}}
\index{x\+\_\+avrlat\+\_\+xv@{x\+\_\+avrlat\+\_\+xv}!w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}
\subsubsection{\texorpdfstring{x\+\_\+avrlat\+\_\+xv()}{x\_avrlat\_xv()}}
{\footnotesize\ttfamily real(dp) function, dimension(im), public w\+\_\+mpi\+\_\+module\+\_\+integral\+::x\+\_\+avrlat\+\_\+xv (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:im-\/1,jc), intent(in)}]{xv\+\_\+data }\end{DoxyParamCaption})}



2 次元緯度経度格子点データの緯度(\+Y)方向平均(1 層用). 

実際には格子点データ各点毎に v\+\_\+\+Lat\+\_\+\+Weight をかけた総和を計算し, y\+\_\+\+Lat\+\_\+\+Weight の総和で割ることで平均している.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em xv\+\_\+data} & 2 次元経度緯度格子点データ(0\+:im-\/1,jc)\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
平均された 1 次元経度(\+X)格子点データ 
\end{DoxyReturn}


Definition at line 161 of file w\+\_\+mpi\+\_\+module\+\_\+integral.\+f90.



References w\+\_\+mpi\+\_\+module\+\_\+base\+::icom, w\+\_\+mpi\+\_\+module\+\_\+base\+::v\+\_\+lat\+\_\+weight, and x\+\_\+intlat\+\_\+xv().


\begin{DoxyCode}
161 
162     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)} :: xv\_data(0:im-1,jc)
164     \textcolor{keywordtype}{real(DP)}             :: x\_avrlat\_xv(im)
165 
166     \textcolor{keywordtype}{real(DP)}             :: tmp
167     \textcolor{keywordtype}{real(DP)}             :: lat\_weight\_sum
168 
169     tmp = sum(v\_lat\_weight)
170     \textcolor{keyword}{CALL }mpi\_allreduce(tmp, lat\_weight\_sum, 1, mpi\_real8, &
171       & mpi\_sum, int(icom), ierr)
172 
173     x\_avrlat\_xv = x\_intlat\_xv(xv\_data)/lat\_weight\_sum
174 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespacew__mpi__module__integral_ac6285d0af7ec095f2e01357e51d27ea2_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespacew__mpi__module__integral_a71b75e471c8cdb91d0ae71087710cafa}\label{namespacew__mpi__module__integral_a71b75e471c8cdb91d0ae71087710cafa}} 
\index{w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}!x\+\_\+intlat\+\_\+xv@{x\+\_\+intlat\+\_\+xv}}
\index{x\+\_\+intlat\+\_\+xv@{x\+\_\+intlat\+\_\+xv}!w\+\_\+mpi\+\_\+module\+\_\+integral@{w\+\_\+mpi\+\_\+module\+\_\+integral}}
\subsubsection{\texorpdfstring{x\+\_\+intlat\+\_\+xv()}{x\_intlat\_xv()}}
{\footnotesize\ttfamily real(dp) function, dimension(0\+:im-\/1), public w\+\_\+mpi\+\_\+module\+\_\+integral\+::x\+\_\+intlat\+\_\+xv (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:im-\/1,jc), intent(in)}]{xv\+\_\+data }\end{DoxyParamCaption})}



2 次元緯度経度格子点データの緯度(\+Y)方向積分(1 層用). 

実際には格子点データ各点毎に v\+\_\+\+Y\+\_\+\+Weight をかけた総和を計算している.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em xv\+\_\+data} & 2 次元経度緯度格子点データ(0\+:im-\/1,jc)\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
積分された 1 次元経度(\+X)格子点データ 
\end{DoxyReturn}


Definition at line 65 of file w\+\_\+mpi\+\_\+module\+\_\+integral.\+f90.



References w\+\_\+mpi\+\_\+module\+\_\+base\+::icom, w\+\_\+mpi\+\_\+module\+\_\+base\+::im, w\+\_\+mpi\+\_\+module\+\_\+base\+::jc, and w\+\_\+mpi\+\_\+module\+\_\+base\+::v\+\_\+lat\+\_\+weight.


\begin{DoxyCode}
65 
66     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)} :: xv\_data(0:im-1,jc)
68     \textcolor{keywordtype}{real(DP)}             :: x\_intlat\_xv(0:im-1)
69 
70     \textcolor{keywordtype}{real(DP)}             :: x\_intlattmp(0:im-1)
71     \textcolor{keywordtype}{integer} :: j
72 
73     x\_intlat\_xv = 0.0d0
74     \textcolor{keywordflow}{do} j=1,jc
75       x\_intlat\_xv = x\_intlat\_xv + xv\_data(:,j) * v\_lat\_weight(j)
76 \textcolor{keywordflow}{    enddo}
77 
78     x\_intlattmp=x\_intlat\_xv
79     \textcolor{keyword}{CALL }mpi\_allreduce(x\_intlattmp, x\_intlat\_xv, int(im), mpi\_real8, &
80       & mpi\_sum, int(icom), ierr)
\end{DoxyCode}
