\hypertarget{namespacew__wave__module__base}{}\section{w\+\_\+wave\+\_\+module\+\_\+base Module Reference}
\label{namespacew__wave__module__base}\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine, public \hyperlink{namespacew__wave__module__base_a4c1841507e104d898b01de89d85798aa}{w\+\_\+base\+\_\+initial} (n\+\_\+in, m\+\_\+in, i\+\_\+in, j\+\_\+in)
\item 
real(8) function, dimension(2 $\ast$(\hyperlink{namespacew__wave__module__base_a4f0ad9176b9ad8a80a4150bab609a4b8}{nn}-\/\hyperlink{namespacew__wave__module__base_ab7bdea121451afa27c9c64b8352409c9}{m}+1)), public \hyperlink{namespacew__wave__module__base_a60b9ab677ea2ee9e90f1a8da5f35cefe}{w\+\_\+dlon\+\_\+w} (w\+\_\+data)
\item 
real(8) function, dimension(0\+:\hyperlink{namespacew__wave__module__base_a6870254e7842db15ea012008d1e52029}{im}-\/1, 1\+:\hyperlink{namespacew__wave__module__base_a266550741733139369a88b70321afd9c}{jm}), public \hyperlink{namespacew__wave__module__base_a51d54c16fefe048ec93ceb39900b1272}{xy\+\_\+w} (w\+\_\+data, ipow, iflag)
\item 
real(8) function, dimension(2 $\ast$(\hyperlink{namespacew__wave__module__base_a4f0ad9176b9ad8a80a4150bab609a4b8}{nn}-\/\hyperlink{namespacew__wave__module__base_ab7bdea121451afa27c9c64b8352409c9}{m}+1)), public \hyperlink{namespacew__wave__module__base_abc68aeb37550ee385e731c2b3495c2d0}{w\+\_\+xy} (xy\+\_\+data, ipow, iflag)
\item 
subroutine, public \hyperlink{namespacew__wave__module__base_a2e9225ff65feeafffea6712d0a678533}{w\+\_\+base\+\_\+finalize}
\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
integer(8), save, public \hyperlink{namespacew__wave__module__base_a6870254e7842db15ea012008d1e52029}{im} =2
\item 
integer(8), save, public \hyperlink{namespacew__wave__module__base_a266550741733139369a88b70321afd9c}{jm} =32
\item 
integer(8), save, public \hyperlink{namespacew__wave__module__base_aa4eff16fbe827e65614de529af67fe4d}{nm} =21
\item 
integer(8), save, public \hyperlink{namespacew__wave__module__base_a4f0ad9176b9ad8a80a4150bab609a4b8}{nn} =22
\item 
integer(8), save, public \hyperlink{namespacew__wave__module__base_ab91dfff9c933d6cac4640285ecdce791}{mm} =21
\item 
integer(8), save, public \hyperlink{namespacew__wave__module__base_ab7bdea121451afa27c9c64b8352409c9}{m} = 1
\item 
integer(8), save \hyperlink{namespacew__wave__module__base_a5d7a40a5ee11b0db2ddbe7265c7f8ed7}{ig} =1
\item 
real(8), dimension(\+:,\+:), allocatable, save, public \hyperlink{namespacew__wave__module__base_a21a30e7aabea7be5e955da2c4c08b6eb}{pz}
\item 
real(8), dimension(\+:,\+:), allocatable, save, public \hyperlink{namespacew__wave__module__base_a72a103d298d7d47115e08788d8ddfbbe}{pm}
\item 
real(8), dimension(\+:), allocatable, save, public \hyperlink{namespacew__wave__module__base_acdbfa9c3d659c21ca84f5605414ab70d}{rm}
\item 
integer(8), dimension(\+:), allocatable, save \hyperlink{namespacew__wave__module__base_a60a447221a86225f4a24405763e04fe7}{jc}
\item 
real(8), dimension(\+:), allocatable, save, public \hyperlink{namespacew__wave__module__base_af8a40630dd1431726578a315ae78fd48}{cm}
\item 
real(8), dimension(\+:), allocatable, public \hyperlink{namespacew__wave__module__base_ab84221c3a163bfa347aaec5fb52262e3}{y\+\_\+lat}
\item 
real(8), dimension(\+:), allocatable, public \hyperlink{namespacew__wave__module__base_a56d71fd1c02f37406894f9c99d3011a0}{y\+\_\+lat\+\_\+weight}
\item 
real(8), dimension(\+:,\+:), allocatable, public \hyperlink{namespacew__wave__module__base_afeee0e1079b63953d47381f89ddf875b}{xy\+\_\+lat}
\item 
logical, save \hyperlink{namespacew__wave__module__base_a2778b40b9c2362a8090cbc916a48bd55}{w\+\_\+wave\+\_\+base\+\_\+initialize} =.false.
\item 
real(8), parameter \hyperlink{namespacew__wave__module__base_a42db43f44148dce2f03cee8965407a18}{pi} =3.\+1415926535897932385\+D0
\end{DoxyCompactItemize}


\subsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{namespacew__wave__module__base_a2e9225ff65feeafffea6712d0a678533}\label{namespacew__wave__module__base_a2e9225ff65feeafffea6712d0a678533}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!w\+\_\+base\+\_\+finalize@{w\+\_\+base\+\_\+finalize}}
\index{w\+\_\+base\+\_\+finalize@{w\+\_\+base\+\_\+finalize}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{w\+\_\+base\+\_\+finalize()}{w\_base\_finalize()}}
{\footnotesize\ttfamily subroutine, public w\+\_\+wave\+\_\+module\+\_\+base\+::w\+\_\+base\+\_\+finalize (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Definition at line 564 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.



References cm, jc, pm, pz, rm, w\+\_\+wave\+\_\+base\+\_\+initialize, xy\+\_\+lat, y\+\_\+lat, and y\+\_\+lat\+\_\+weight.


\begin{DoxyCode}
564     \textcolor{comment}{!}
565     \textcolor{comment}{! モジュールの終了処理(割り付け配列の解放)をおこなう. }
566     \textcolor{comment}{!}
567     \textcolor{comment}{! 実際の使用には上位サブルーチン w\_Finalize を用いること.}
568     \textcolor{comment}{!}
569     \textcolor{keywordflow}{if} ( .not. w\_wave\_base\_initialize ) \textcolor{keywordflow}{then}
570        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'w\_base\_Finalize'},&
571             \textcolor{stringliteral}{'w\_wave\_base\_module not initialized yet'})
572        \textcolor{keywordflow}{return}
573 \textcolor{keywordflow}{    endif}
574 
575     \textcolor{keyword}{deallocate}(pz)                  \textcolor{comment}{! 変換用配列}
576     \textcolor{keyword}{deallocate}(pm)                  \textcolor{comment}{! 変換用配列}
577     \textcolor{keyword}{deallocate}(rm)                  \textcolor{comment}{! 変換用配列}
578     \textcolor{keyword}{deallocate}(jc)                  \textcolor{comment}{! 変換用作業配列}
579     \textcolor{keyword}{deallocate}(cm)                  \textcolor{comment}{! 変換用作業配列      }
580 
581     \textcolor{keyword}{deallocate}(y\_lat)
582     \textcolor{keyword}{deallocate}(y\_lat\_weight)       \textcolor{comment}{! 格子点座標格納配列}
583     \textcolor{keyword}{deallocate}(xy\_lat)             \textcolor{comment}{! 格子点座標格納配列}
584 
585     w\_wave\_base\_initialize = .false.
586 
587     \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'M'},\textcolor{stringliteral}{'w\_base\_Finalize'},&
588          \textcolor{stringliteral}{'w\_wave\_base\_module\_svpack (2020/11/24) is finalized'})
589 
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a4c1841507e104d898b01de89d85798aa}\label{namespacew__wave__module__base_a4c1841507e104d898b01de89d85798aa}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!w\+\_\+base\+\_\+initial@{w\+\_\+base\+\_\+initial}}
\index{w\+\_\+base\+\_\+initial@{w\+\_\+base\+\_\+initial}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{w\+\_\+base\+\_\+initial()}{w\_base\_initial()}}
{\footnotesize\ttfamily subroutine, public w\+\_\+wave\+\_\+module\+\_\+base\+::w\+\_\+base\+\_\+initial (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{n\+\_\+in,  }\item[{integer, intent(in)}]{m\+\_\+in,  }\item[{integer, intent(in)}]{i\+\_\+in,  }\item[{integer, intent(in)}]{j\+\_\+in }\end{DoxyParamCaption})}



Definition at line 107 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.



References cm, ig, im, jc, jm, m, mm, nm, nn, pm, pz, rm, w\+\_\+wave\+\_\+base\+\_\+initialize, xy\+\_\+lat, y\+\_\+lat, and y\+\_\+lat\+\_\+weight.


\begin{DoxyCode}
107     \textcolor{comment}{!}
108     \textcolor{comment}{! スペクトル変換の格子点数, 波数を設定する.}
109     \textcolor{comment}{!}
110     \textcolor{comment}{! 実際の使用には上位サブルーチン w\_wave\_Initial を用いること.}
111     \textcolor{comment}{!}
112     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: i\_in              \textcolor{comment}{!(in) 格子点数(東西), 2の巾乗(<=2048)}
113     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: j\_in              \textcolor{comment}{!(in) 格子点数(南北), 4 の倍数}
114     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: n\_in              \textcolor{comment}{!(in) 切断全波数}
115     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: m\_in              \textcolor{comment}{!(in) 東西波数}
116 
117     \textcolor{keywordtype}{integer} :: i, j
118 
119     \textcolor{keywordflow}{if} ( m <= 0 ) \textcolor{keywordflow}{then}
120        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'w\_wave\_base\_module\_initial'}, &
121             \textcolor{stringliteral}{'longitudinal wavenumber m must be positive'})
122 \textcolor{keywordflow}{    endif}
123 
124     im = i\_in   ; jm = j\_in
125     nn = n\_in   ; nm = n\_in+1 ;  mm = n\_in      \textcolor{comment}{! default は三角波数切断}
126     m  = m\_in                                   \textcolor{comment}{! 東西波数は 1 成分}
127 
128     \textcolor{keyword}{allocate}(y\_lat(1:jm))
129     \textcolor{keyword}{allocate}(y\_lat\_weight(1:jm))              \textcolor{comment}{! 格子点座標格納配列}
130     \textcolor{keyword}{allocate}(xy\_lat(0:im-1,1:jm))             \textcolor{comment}{! 格子点座標格納配列}
131 
132     \textcolor{keyword}{allocate}(pz(jm/2,5))                      \textcolor{comment}{! 変換用配列}
133     \textcolor{keyword}{allocate}(rm((nm-m)/2*3+nm-m+1))           \textcolor{comment}{! 変換用配列}
134     \textcolor{keyword}{allocate}(jc((nm-m)/8+1))                  \textcolor{comment}{! 変換用配列}
135     \textcolor{keyword}{allocate}(pm(jm/2,2))                      \textcolor{comment}{! 変換用配列}
136     \textcolor{keyword}{allocate}(cm(2*(nn-m)+1))                  \textcolor{comment}{! 変換用配列      }
137 
138 
139     \textcolor{keyword}{call }lxinig(jm,pz,ig)
140     \textcolor{keyword}{call }lxinir(nm,m,rm)
141     \textcolor{keyword}{call }lxiniw(nm,jm,m,pz,pm,rm,jc)
142     \textcolor{keyword}{call }lxinic(nn,m,cm)
143 
144     \textcolor{keywordflow}{do} j=1,jm/2
145        y\_lat(jm/2+j)   =  asin(pz(j,1))        \textcolor{comment}{! 緯度座標}
146        y\_lat(jm/2-j+1) = -asin(pz(j,1))        \textcolor{comment}{! 緯度座標}
147        y\_lat\_weight(jm/2+j)   = 2*pz(j,2)      \textcolor{comment}{! 緯度重み(Gauss grid)}
148        y\_lat\_weight(jm/2-j+1) = 2*pz(j,2)      \textcolor{comment}{! 緯度重み(Gauss grid)}
149 \textcolor{keywordflow}{    enddo}
150 
151     \textcolor{keywordflow}{do} i=0,im-1
152        xy\_lat(i,:) = y\_lat
153 \textcolor{keywordflow}{    enddo}
154 
155     w\_wave\_base\_initialize = .true.
156 
157     \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'M'},\textcolor{stringliteral}{'w\_wave\_module\_base\_initial'},&
158          \textcolor{stringliteral}{'w\_wave\_module\_base (2020/11/24) is initialized'})
159 
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a60b9ab677ea2ee9e90f1a8da5f35cefe}\label{namespacew__wave__module__base_a60b9ab677ea2ee9e90f1a8da5f35cefe}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!w\+\_\+dlon\+\_\+w@{w\+\_\+dlon\+\_\+w}}
\index{w\+\_\+dlon\+\_\+w@{w\+\_\+dlon\+\_\+w}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{w\+\_\+dlon\+\_\+w()}{w\_dlon\_w()}}
{\footnotesize\ttfamily real(8) function, dimension(2$\ast$(\hyperlink{namespacew__wave__module__base_a4f0ad9176b9ad8a80a4150bab609a4b8}{nn}-\/\hyperlink{namespacew__wave__module__base_ab7bdea121451afa27c9c64b8352409c9}{m}+1)), public w\+\_\+wave\+\_\+module\+\_\+base\+::w\+\_\+dlon\+\_\+w (\begin{DoxyParamCaption}\item[{real(8), dimension(2$\ast$(\hyperlink{namespacew__wave__module__base_a4f0ad9176b9ad8a80a4150bab609a4b8}{nn}-\/\hyperlink{namespacew__wave__module__base_ab7bdea121451afa27c9c64b8352409c9}{m}+1)), intent(in)}]{w\+\_\+data }\end{DoxyParamCaption})}



Definition at line 416 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.



References m, and nn.


\begin{DoxyCode}
416     \textcolor{comment}{!}
417     \textcolor{comment}{! 入力スペクトルデータに経度微分∂/∂λを作用する. }
418     \textcolor{comment}{!}
419     \textcolor{comment}{! スペクトルデータの経度微分とは, 対応する格子点データに}
420     \textcolor{comment}{! 経度微分を作用させたデータのスペクトル変換のことである. }
421     \textcolor{comment}{!}
422     \textcolor{keywordtype}{real(8)}              :: w\_dlon\_w(2*(nn-m+1))
423     \textcolor{comment}{!(out) 入力スペクトルデータのラプラシアン}
424 
425     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{intent(in)}  :: w\_data(2*(nn-m+1))
426     \textcolor{comment}{!(in) 入力スペクトルデータ}
427 
428     \textcolor{keywordtype}{integer} :: n, n1, n2
429 
430     \textcolor{keywordflow}{do} n=m,nn
431        n1 = 2*(n-m+1)-1
432        n2 = 2*(n-m+1)
433        w\_dlon\_w(n2) =   m * w\_data(n1)
434        w\_dlon\_w(n1) = - m * w\_data(n2)
435 \textcolor{keywordflow}{    end do}
436 
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_abc68aeb37550ee385e731c2b3495c2d0}\label{namespacew__wave__module__base_abc68aeb37550ee385e731c2b3495c2d0}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!w\+\_\+xy@{w\+\_\+xy}}
\index{w\+\_\+xy@{w\+\_\+xy}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{w\+\_\+xy()}{w\_xy()}}
{\footnotesize\ttfamily real(8) function, dimension(2$\ast$(\hyperlink{namespacew__wave__module__base_a4f0ad9176b9ad8a80a4150bab609a4b8}{nn}-\/\hyperlink{namespacew__wave__module__base_ab7bdea121451afa27c9c64b8352409c9}{m}+1)), public w\+\_\+wave\+\_\+module\+\_\+base\+::w\+\_\+xy (\begin{DoxyParamCaption}\item[{real(8), dimension(0\+:\hyperlink{namespacew__wave__module__base_a6870254e7842db15ea012008d1e52029}{im}-\/1,1\+:\hyperlink{namespacew__wave__module__base_a266550741733139369a88b70321afd9c}{jm}), intent(in)}]{xy\+\_\+data,  }\item[{integer, intent(in), optional}]{ipow,  }\item[{integer, intent(in), optional}]{iflag }\end{DoxyParamCaption})}



Definition at line 502 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.



References cm, jc, jm, m, nm, nn, pm, pz, rm, w\+\_\+dlon\+\_\+w(), w\+\_\+wave\+\_\+base\+\_\+initialize, and xy\+\_\+lat.


\begin{DoxyCode}
502     \textcolor{comment}{!}
503     \textcolor{comment}{! 格子データからスペクトルデータへ(正)変換する(1 層用).}
504     \textcolor{comment}{!}
505     \textcolor{keywordtype}{real(8)}               :: w\_xy(2*(nn-m+1))
506     \textcolor{comment}{!(out) スペクトルデータ}
507 
508     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{intent(in)}   :: xy\_data(0:im-1,1:jm)
509     \textcolor{comment}{!(in) 格子点データ}
510 
511     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: ipow
512     \textcolor{comment}{!(in) 変換時に同時に作用させる 1/cosφ の次数. 省略時は 0.}
513 
514     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: iflag
515     \textcolor{comment}{! 変換の種類}
516     \textcolor{comment}{!    0 : 通常の正変換}
517     \textcolor{comment}{!   -1 : 経度微分を作用させた正変換 }
518     \textcolor{comment}{!    1 : 緯度微分 1/cosφ・∂(f cos^2φ)/∂φ を作用させた正変換}
519     \textcolor{comment}{!    2 : sinφを作用させた正変換}
520     \textcolor{comment}{!  省略時は 0.}
521 
522 
523     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: ipow\_default  = 0    \textcolor{comment}{! スイッチデフォルト値}
524     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: iflag\_default = 0    \textcolor{comment}{! スイッチデフォルト値}
525 
526     \textcolor{keywordtype}{integer(8)} ipval, ifval
527 
528     \textcolor{keywordtype}{real(8)}             :: w\_ydata(2*(nn-m+2))
529     \textcolor{comment}{! 作業用スペクトルデータ(LXCYWS 出力用)}
530 
531     \textcolor{keywordflow}{if} ( .not. w\_wave\_base\_initialize ) \textcolor{keywordflow}{then}
532        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'xy\_w'},&
533             \textcolor{stringliteral}{'w\_wave\_base\_module not initialize yet.'})
534 \textcolor{keywordflow}{    endif}
535 
536     \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(ipow)) \textcolor{keywordflow}{then}
537        ipval = ipow
538     \textcolor{keywordflow}{else}
539        ipval = ipow\_default
540 \textcolor{keywordflow}{    endif}
541 
542     \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(iflag)) \textcolor{keywordflow}{then}
543        ifval = iflag
544     \textcolor{keywordflow}{else}
545        ifval = iflag\_default
546 \textcolor{keywordflow}{    endif}
547 
548     \textcolor{keywordflow}{if} ( ifval == 0 ) \textcolor{keywordflow}{then}
549        \textcolor{keyword}{call }lxtgws(nm,nn,jm,m,w\_xy,xy\_data,pz,pm,rm,jc,ipval)
550     \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} ( ifval == -1 ) \textcolor{keywordflow}{then}
551        \textcolor{keyword}{call }lxtgws(nm,nn,jm,m,w\_xy,xy\_data,pz,pm,rm,jc,ipval)
552        w\_xy = w\_dlon\_w(w\_xy)
553     \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} ( ifval == 1 ) \textcolor{keywordflow}{then}
554        \textcolor{keyword}{call }lxtgws(nm,nm,jm,m,w\_ydata,xy\_data,pz,pm,rm,jc,ipval)
555        \textcolor{keyword}{call }lxcyws(nn,m,w\_ydata,w\_xy,cm)
556     \textcolor{keywordflow}{else} \textcolor{keywordflow}{if} ( ifval == 2 ) \textcolor{keywordflow}{then}
557        \textcolor{keyword}{call }lxtgws(nm,nn,jm,m,w\_xy,xy\_data*sin(xy\_lat),pz,pm,rm,jc,ipval)
558 \textcolor{keywordflow}{    end if}
559 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=348pt]{namespacew__wave__module__base_abc68aeb37550ee385e731c2b3495c2d0_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespacew__wave__module__base_a51d54c16fefe048ec93ceb39900b1272}\label{namespacew__wave__module__base_a51d54c16fefe048ec93ceb39900b1272}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!xy\+\_\+w@{xy\+\_\+w}}
\index{xy\+\_\+w@{xy\+\_\+w}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{xy\+\_\+w()}{xy\_w()}}
{\footnotesize\ttfamily real(8) function, dimension(0\+:\hyperlink{namespacew__wave__module__base_a6870254e7842db15ea012008d1e52029}{im}-\/1,1\+:\hyperlink{namespacew__wave__module__base_a266550741733139369a88b70321afd9c}{jm}), public w\+\_\+wave\+\_\+module\+\_\+base\+::xy\+\_\+w (\begin{DoxyParamCaption}\item[{real(8), dimension(2$\ast$(\hyperlink{namespacew__wave__module__base_a4f0ad9176b9ad8a80a4150bab609a4b8}{nn}-\/\hyperlink{namespacew__wave__module__base_ab7bdea121451afa27c9c64b8352409c9}{m}+1)), intent(in)}]{w\+\_\+data,  }\item[{integer, intent(in), optional}]{ipow,  }\item[{integer, intent(in), optional}]{iflag }\end{DoxyParamCaption})}



Definition at line 440 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.



References cm, jc, jm, m, nm, nn, pm, pz, rm, w\+\_\+dlon\+\_\+w(), w\+\_\+wave\+\_\+base\+\_\+initialize, and xy\+\_\+lat.


\begin{DoxyCode}
440     \textcolor{comment}{!}
441     \textcolor{comment}{! スペクトルデータから格子データへ変換する(1 層用).}
442     \textcolor{comment}{!}
443     \textcolor{keywordtype}{real(8)}               :: xy\_w(0:im-1,1:jm)
444     \textcolor{comment}{!(out) 格子点データ}
445 
446     \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{intent(in)}   :: w\_data(2*(nn-m+1))
447     \textcolor{comment}{!(in) スペクトルデータ}
448 
449     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: ipow      
450     \textcolor{comment}{!(in) 作用させる 1/cosφ の次数. 省略時は 0. }
451 
452     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: iflag
453     \textcolor{comment}{!(in) 変換の種類}
454     \textcolor{comment}{!    0 : 通常の正変換}
455     \textcolor{comment}{!   -1 : 経度微分を作用させた逆変換}
456     \textcolor{comment}{!    1 : 緯度微分 cosφ・∂/∂φ を作用させた逆変換}
457     \textcolor{comment}{!    2 : sinφを作用させた逆変換}
458     \textcolor{comment}{!    省略時は 0.}
459     \textcolor{comment}{!}
460     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: ipow\_default  = 0
461     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}  :: iflag\_default = 0
462 
463     \textcolor{keywordtype}{integer(8)} ipval, ifval
464 
465     \textcolor{keywordtype}{real(8)}             :: w\_ydata(2*(nn-m+2))
466     \textcolor{comment}{! 作業用スペクトルデータ(LXCSWY 出力用)}
467 
468     \textcolor{keywordflow}{if} ( .not. w\_wave\_base\_initialize ) \textcolor{keywordflow}{then}
469        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'xy\_w'},&
470             \textcolor{stringliteral}{'w\_wave\_base\_module\_svpack not initialize yet.'})
471 \textcolor{keywordflow}{    endif}
472 
473     \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(ipow)) \textcolor{keywordflow}{then}
474        ipval = ipow
475     \textcolor{keywordflow}{else}
476        ipval = ipow\_default
477 \textcolor{keywordflow}{    endif}
478 
479     \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(iflag)) \textcolor{keywordflow}{then}
480        ifval = iflag
481     \textcolor{keywordflow}{else}
482        ifval = iflag\_default
483 \textcolor{keywordflow}{    endif}
484 
485     \textcolor{keywordflow}{if} ( ifval==0 ) \textcolor{keywordflow}{then}
486        \textcolor{keyword}{call }lxtswg(nm,nn,jm,m,w\_data,xy\_w,pz,pm,rm,jc,ipval)
487     \textcolor{keywordflow}{else} \textcolor{keywordflow}{if}( ifval==-1 ) \textcolor{keywordflow}{then}
488        \textcolor{keyword}{call }lxtswg(nm,nn,jm,m,w\_dlon\_w(w\_data),xy\_w,pz,pm,rm,jc,ipval)
489     \textcolor{keywordflow}{else} \textcolor{keywordflow}{if}( ifval==1 ) \textcolor{keywordflow}{then}
490        \textcolor{keyword}{call }lxcswy(nn,m,w\_data,w\_ydata,cm)
491        \textcolor{keyword}{call }lxtswg(nm,nm,jm,m,w\_ydata,xy\_w,pz,pm,rm,jc,ipval)
492     \textcolor{keywordflow}{else} \textcolor{keywordflow}{if}( ifval==2 ) \textcolor{keywordflow}{then}
493        \textcolor{keyword}{call }lxtswg(nm,nn,jm,m,w\_data,xy\_w,pm,pm,rm,jc,ipval)
494        xy\_w = xy\_w * sin(xy\_lat)
495     \textcolor{keywordflow}{else}
496        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'xy\_w'},\textcolor{stringliteral}{'invalid value of iflag'})
497 \textcolor{keywordflow}{    endif}
498 
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=348pt]{namespacew__wave__module__base_a51d54c16fefe048ec93ceb39900b1272_cgraph}
\end{center}
\end{figure}


\subsection{Variable Documentation}
\mbox{\Hypertarget{namespacew__wave__module__base_af8a40630dd1431726578a315ae78fd48}\label{namespacew__wave__module__base_af8a40630dd1431726578a315ae78fd48}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!cm@{cm}}
\index{cm@{cm}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{cm}{cm}}
{\footnotesize\ttfamily real(8), dimension(\+:), allocatable, save, public w\+\_\+wave\+\_\+module\+\_\+base\+::cm}



Definition at line 55 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
55   \textcolor{keywordtype}{real(8)},    \textcolor{keywordtype}{allocatable}  :: cm(:)            \textcolor{comment}{! 作業配列}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a5d7a40a5ee11b0db2ddbe7265c7f8ed7}\label{namespacew__wave__module__base_a5d7a40a5ee11b0db2ddbe7265c7f8ed7}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!ig@{ig}}
\index{ig@{ig}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{ig}{ig}}
{\footnotesize\ttfamily integer(8), save w\+\_\+wave\+\_\+module\+\_\+base\+::ig =1}



Definition at line 50 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
50   \textcolor{keywordtype}{integer(8)}            :: ig=1             \textcolor{comment}{! 緯度格子点種類}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a6870254e7842db15ea012008d1e52029}\label{namespacew__wave__module__base_a6870254e7842db15ea012008d1e52029}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!im@{im}}
\index{im@{im}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{im}{im}}
{\footnotesize\ttfamily integer(8), save, public w\+\_\+wave\+\_\+module\+\_\+base\+::im =2}



Definition at line 44 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
44   \textcolor{keywordtype}{integer(8)}            :: im=2             \textcolor{comment}{! 東西波数成分}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a60a447221a86225f4a24405763e04fe7}\label{namespacew__wave__module__base_a60a447221a86225f4a24405763e04fe7}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!jc@{jc}}
\index{jc@{jc}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{jc}{jc}}
{\footnotesize\ttfamily integer(8), dimension(\+:), allocatable, save w\+\_\+wave\+\_\+module\+\_\+base\+::jc}



Definition at line 54 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
54   \textcolor{keywordtype}{integer(8)}, \textcolor{keywordtype}{allocatable}  :: jc(:)            \textcolor{comment}{! 変換用配列}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a266550741733139369a88b70321afd9c}\label{namespacew__wave__module__base_a266550741733139369a88b70321afd9c}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!jm@{jm}}
\index{jm@{jm}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{jm}{jm}}
{\footnotesize\ttfamily integer(8), save, public w\+\_\+wave\+\_\+module\+\_\+base\+::jm =32}



Definition at line 45 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
45   \textcolor{keywordtype}{integer(8)}            :: jm=32            \textcolor{comment}{! 格子点の設定(南北)}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_ab7bdea121451afa27c9c64b8352409c9}\label{namespacew__wave__module__base_ab7bdea121451afa27c9c64b8352409c9}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!m@{m}}
\index{m@{m}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{m}{m}}
{\footnotesize\ttfamily integer(8), save, public w\+\_\+wave\+\_\+module\+\_\+base\+::m = 1}



Definition at line 49 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
49   \textcolor{keywordtype}{integer(8)}            :: m = 1            \textcolor{comment}{! 東西波数の設定}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_ab91dfff9c933d6cac4640285ecdce791}\label{namespacew__wave__module__base_ab91dfff9c933d6cac4640285ecdce791}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!mm@{mm}}
\index{mm@{mm}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{mm}{mm}}
{\footnotesize\ttfamily integer(8), save, public w\+\_\+wave\+\_\+module\+\_\+base\+::mm =21}



Definition at line 48 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
48   \textcolor{keywordtype}{integer(8)}            :: mm=21            \textcolor{comment}{! 切断波数(東西波数)の設定}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_aa4eff16fbe827e65614de529af67fe4d}\label{namespacew__wave__module__base_aa4eff16fbe827e65614de529af67fe4d}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!nm@{nm}}
\index{nm@{nm}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{nm}{nm}}
{\footnotesize\ttfamily integer(8), save, public w\+\_\+wave\+\_\+module\+\_\+base\+::nm =21}



Definition at line 46 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
46   \textcolor{keywordtype}{integer(8)}            :: nm=21            \textcolor{comment}{! 計算する最大の全波数の設定}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a4f0ad9176b9ad8a80a4150bab609a4b8}\label{namespacew__wave__module__base_a4f0ad9176b9ad8a80a4150bab609a4b8}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!nn@{nn}}
\index{nn@{nn}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{nn}{nn}}
{\footnotesize\ttfamily integer(8), save, public w\+\_\+wave\+\_\+module\+\_\+base\+::nn =22}



Definition at line 47 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
47   \textcolor{keywordtype}{integer(8)}            :: nn=22            \textcolor{comment}{! 切断波数(全波数)の設定}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a42db43f44148dce2f03cee8965407a18}\label{namespacew__wave__module__base_a42db43f44148dce2f03cee8965407a18}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!pi@{pi}}
\index{pi@{pi}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{pi}{pi}}
{\footnotesize\ttfamily real(8), parameter w\+\_\+wave\+\_\+module\+\_\+base\+::pi =3.\+1415926535897932385\+D0}



Definition at line 63 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
63   \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{parameter}    :: pi=3.1415926535897932385d0
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a72a103d298d7d47115e08788d8ddfbbe}\label{namespacew__wave__module__base_a72a103d298d7d47115e08788d8ddfbbe}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!pm@{pm}}
\index{pm@{pm}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{pm}{pm}}
{\footnotesize\ttfamily real(8), dimension(\+:,\+:), allocatable, save, public w\+\_\+wave\+\_\+module\+\_\+base\+::pm}



Definition at line 52 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.

\mbox{\Hypertarget{namespacew__wave__module__base_a21a30e7aabea7be5e955da2c4c08b6eb}\label{namespacew__wave__module__base_a21a30e7aabea7be5e955da2c4c08b6eb}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!pz@{pz}}
\index{pz@{pz}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{pz}{pz}}
{\footnotesize\ttfamily real(8), dimension(\+:,\+:), allocatable, save, public w\+\_\+wave\+\_\+module\+\_\+base\+::pz}



Definition at line 52 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
52   \textcolor{keywordtype}{real(8)},    \textcolor{keywordtype}{allocatable}  :: pz(:,:), pm(:,:) \textcolor{comment}{! 変換用配列}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_acdbfa9c3d659c21ca84f5605414ab70d}\label{namespacew__wave__module__base_acdbfa9c3d659c21ca84f5605414ab70d}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!rm@{rm}}
\index{rm@{rm}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{rm}{rm}}
{\footnotesize\ttfamily real(8), dimension(\+:), allocatable, save, public w\+\_\+wave\+\_\+module\+\_\+base\+::rm}



Definition at line 53 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
53   \textcolor{keywordtype}{real(8)},    \textcolor{keywordtype}{allocatable}  :: rm(:)            \textcolor{comment}{! 変換用配列}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a2778b40b9c2362a8090cbc916a48bd55}\label{namespacew__wave__module__base_a2778b40b9c2362a8090cbc916a48bd55}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!w\+\_\+wave\+\_\+base\+\_\+initialize@{w\+\_\+wave\+\_\+base\+\_\+initialize}}
\index{w\+\_\+wave\+\_\+base\+\_\+initialize@{w\+\_\+wave\+\_\+base\+\_\+initialize}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{w\+\_\+wave\+\_\+base\+\_\+initialize}{w\_wave\_base\_initialize}}
{\footnotesize\ttfamily logical, save w\+\_\+wave\+\_\+module\+\_\+base\+::w\+\_\+wave\+\_\+base\+\_\+initialize =.false.}



Definition at line 61 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
61   \textcolor{keywordtype}{logical}               :: w\_wave\_base\_initialize=.false.   \textcolor{comment}{! 初期化フラッグ}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_afeee0e1079b63953d47381f89ddf875b}\label{namespacew__wave__module__base_afeee0e1079b63953d47381f89ddf875b}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!xy\+\_\+lat@{xy\+\_\+lat}}
\index{xy\+\_\+lat@{xy\+\_\+lat}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{xy\+\_\+lat}{xy\_lat}}
{\footnotesize\ttfamily real(8), dimension(\+:,\+:), allocatable, public w\+\_\+wave\+\_\+module\+\_\+base\+::xy\+\_\+lat}



Definition at line 59 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
59   \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{allocatable}  :: xy\_lat(:,:)
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_ab84221c3a163bfa347aaec5fb52262e3}\label{namespacew__wave__module__base_ab84221c3a163bfa347aaec5fb52262e3}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!y\+\_\+lat@{y\+\_\+lat}}
\index{y\+\_\+lat@{y\+\_\+lat}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{y\+\_\+lat}{y\_lat}}
{\footnotesize\ttfamily real(8), dimension(\+:), allocatable, public w\+\_\+wave\+\_\+module\+\_\+base\+::y\+\_\+lat}



Definition at line 57 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
57   \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{allocatable}  :: y\_lat(:)         \textcolor{comment}{! 緯度経度}
\end{DoxyCode}
\mbox{\Hypertarget{namespacew__wave__module__base_a56d71fd1c02f37406894f9c99d3011a0}\label{namespacew__wave__module__base_a56d71fd1c02f37406894f9c99d3011a0}} 
\index{w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}!y\+\_\+lat\+\_\+weight@{y\+\_\+lat\+\_\+weight}}
\index{y\+\_\+lat\+\_\+weight@{y\+\_\+lat\+\_\+weight}!w\+\_\+wave\+\_\+module\+\_\+base@{w\+\_\+wave\+\_\+module\+\_\+base}}
\subsubsection{\texorpdfstring{y\+\_\+lat\+\_\+weight}{y\_lat\_weight}}
{\footnotesize\ttfamily real(8), dimension(\+:), allocatable, public w\+\_\+wave\+\_\+module\+\_\+base\+::y\+\_\+lat\+\_\+weight}



Definition at line 58 of file w\+\_\+wave\+\_\+module\+\_\+base.\+f90.


\begin{DoxyCode}
58   \textcolor{keywordtype}{real(8)}, \textcolor{keywordtype}{allocatable}  :: y\_lat\_weight(:)  \textcolor{comment}{! 座標重み}
\end{DoxyCode}
