%表題   MATH2 数学処理上位パッケージ
%
%履歴
%\Drireki{
%         original 石岡圭一
%         94/04/14 石岡圭一, 塩谷雅人
%        }
%
\section{サブルーチンの説明}

\newcommand{\re}{\mbox{Re}}
\newcommand{\im}{\mbox{Im}}

\subsection{SHTINT}

\begin{enumerate}

\item 機能
\begin{quote}
SHTLIB の初期化ルーチン.
SHTLIB の他のサブルーチンを使用する前に必ず一度呼ばねばならない.
\end{quote}

\item 定義
\begin{quote}
切断波数$M$, 東西分割数$I$, 南北分割数$J$については概要を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTINT(MM,JM,IM,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt WORK} & {\tt (R)} & 出力. SHTLIBの他のルーチンで用いられる作業領域. \\
 & & 長さ{\tt (JM+1)*(4*JM+5*MM+14)+(MM+1)*(MM+1)+MM+2+6*IM+15}の一次元配列.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt JM}$\ge${\tt (MM+1)/2}, {\tt IM}$\ge${\tt MM+1}でなければなら
ない.
\item SHTLIB を使用している間, 配列{\tt WORK}の内容を変更してはなら
ない.
\end{enumerate}

\end{enumerate}

\subsection{SHTNML}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトルデータの格納位置を求める.
\end{quote}

\item 定義
\begin{quote}
{\tt SHTLIB}において, スペクトルデータ($S^m_n$)は概要に述べた制限をも
とに, 独立な$(M+1)^2$個の成分;
$S^0_0,S^0_1,\cdots,S^0_M$, $\re(S^1_1),\re(S^1_2),\cdots,\re(S^1_M)$,
$\im(S^1_1),\im(S^1_2),\cdots,\im(S^1_M)$, $\cdots,\re(S^M_M),\im(S^M_M)$
がこの順序で(長さ{\tt (MM+1)**2}の配列に)格納されている.
ここに, Re( )は実数部を, Im( )は虚数部を表す.
このサブルーチンは切断波数$M$, $S^m_n$の全波数$n$, および帯状波数$m$か
ら$\re(S^m_n)$と$\im(S^m_n)$の配列中の格納位置を求めるものである.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTNML(MM,N,M,LR,LI)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt N} & {\tt (I)} & 入力. 全波数($n$)\\
{\tt M} & {\tt (I)} & 入力. 帯状波数($m$)\\
{\tt LR} & {\tt (I)} & 出力. $\re(S^m_n)$の格納位置. \\
{\tt LI} & {\tt (I)} & 出力. $\im(S^m_n)$の格納位置.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item $\im(S^0_n)$成分は存在しないので, {\tt M=0}の場合は{\tt LI}には
{\tt LR}と同じ値が返される.
\end{enumerate}

\end{enumerate}

\subsection{SHTLAP}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトルデータに対してラプラシアンを演算する.
\end{quote}

\item 定義
\begin{quote}
球面調和関数展開
\begin{equation}
G(\lambda,\varphi)=\sum^M_{n=0}\sum^n_{m=-n}
A^m_nP^m_n(\sin\varphi)e^{im\lambda}.
\end{equation}
に対して、水平Laplacian
\begin{equation}
\nabla^2\equiv
\frac{\partial^2}{\cos^2\varphi\partial\lambda^2}
+\frac{\partial}{\cos\varphi\partial\varphi}\left(\cos\varphi\frac{\partial}{\partial\varphi}\right)
\end{equation}
を作用させると, 球面調和関数の性質から,
\begin{equation}
\nabla^2 G(\lambda,\varphi)
=\sum^M_{n=0}\sum^n_{m=-n}-n(n+1)A^m_nP^m_n(\sin\varphi)e^{im\lambda}.
\end{equation}
となる. そこで,
\begin{equation}
B^m_n\equiv -n(n+1)A^m_n
\end{equation}
を導入すると,
\begin{equation}
\nabla^2 G(\lambda,\varphi)
=\sum^M_{n=0}\sum^n_{m=-n}B^m_nP^m_n(\sin\varphi)e^{im\lambda}.
\end{equation}
と表せる.
また, 逆に
\begin{equation}
\nabla^2 G(\lambda,\varphi)
=\sum^M_{n=0}\sum^n_{m=-n}A^m_nP^m_n(\sin\varphi)e^{im\lambda}.
\end{equation}
であるとき,
\begin{equation}
B^m_n\equiv -\frac1{n(n+1)}A^m_n
\end{equation}
を導入すると,
\begin{equation}
G(\lambda,\varphi)
=\sum^M_{n=0}\sum^n_{m=-n}B^m_nP^m_n(\sin\varphi)e^{im\lambda}.
\end{equation}
と表せる.
\vspace{1em}

本サブルーチンは,
{\tt IND=1}の場合は$A^m_n$から$B^m_n\equiv -n(n+1)A^m_n$を,
{\tt IND=-1}の場合は$A^m_n$から$B^m_n\equiv -A^m_n/\{n(n+1)\}$を
計算するものである。
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTLAP(MM,IND,A,B)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt IND} & {\tt (I)} & 入力. ラプラシアンの演算形式を指定する(上記定
義を参照). \\
{\tt A} & {\tt (R)} & 入力. $A^m_n$が格納されている配列(長さおよび並び
方は{\tt SHTNML}を参照).\\
{\tt B} & {\tt (R)} & 出力. $B^m_n$が格納る配列(長さおよび並び
方は{\tt SHTNML}を参照).
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt IND=-1}の場合, $B^0_0=0$が代入される.
\end{enumerate}

\end{enumerate}

\subsection{SHTS2W}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル逆変換の前半部分であるルジャンドル逆変換を行う.
\end{quote}

\item 定義
\begin{quote}
{\tt ISW=0}の場合, 通常のルジャンドル逆変換;
\begin{equation}
W^m(\varphi)\equiv\sum^M_{n=|m|}S^m_nP^m_n(\sin\varphi)
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=1}の場合, 緯度微分のルジャンドル逆変換;
\begin{equation}
W^m(\varphi)\equiv\frac{d}{d\varphi}\sum^M_{n=|m|}S^m_nP^m_n(\sin\varphi)
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=-1}の場合, 経度微分のルジャンドル逆変換;
\begin{equation}
W^m(\varphi)\equiv\frac{im}{\cos\varphi}\sum^M_{n=|m|}S^m_nP^m_n(\sin\varphi)
\end{equation}
を行う.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTS2W(MM,JM,ISW,S,W,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定(上記定義を参照)\\
{\tt S} & {\tt (R)} & 入力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照. \\
{\tt W} & {\tt (R)} & 出力. ウエーブデータ.\\
  & & 長さ{\tt (2*JM+1)*(2*MM+1)}の配列(並び方は以下の備考を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt W(-JM:JM,-MM:MM)}と宣言しておけば, {\tt W(J,M) (M>0)}には
$\re(W^m(\varphi_j))$が, {\tt W(J,-M) (M>0)}には$\im(W^m(\varphi_j))$
がそれぞれ格納され, {\tt W(J,0)}には$(W^0(\varphi_j))$が格納される.
\end{enumerate}

\end{enumerate}

\subsection{SHTW2G}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル逆変換の後半部分であるフーリエ逆変換を行う.
\end{quote}

\item 定義
\begin{quote}
{\tt SHTS2W}によって作成されたウエーブデータに対して, フーリエ逆変換;
\begin{equation}
G(\lambda,\varphi)=\sum^M_{m=-M}W^m(\varphi)e^{im\lambda}
\end{equation}
を行う.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTW2G(MM,JM,IM,W,G,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt W} & {\tt (R)} & 入力. ウエーブデータ.
(長さおよび並び方は{\tt SHTS2W}を参照). \\
{\tt G} & {\tt (R)} & 出力. グリッドデータ\\
  & & 長さ{\tt (2*IM+1)*(2*JM+1)}の配列(並び方は以下の備考を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt G(-IM:IM,-JM:JM)}と宣言しておけば, {\tt G(I,J)}には
$G(\lambda_i,\varphi_j)$が格納される($\lambda_i,\varphi_j$の定義につい
ては概要を参照).
\item {\tt M1=0, M2=MM}と指定すれば{\tt SHTS2W}を呼ぶのと全く同様になる.
\end{enumerate}

\end{enumerate}

\subsection{SHTS2G}

\begin{enumerate}

\item 機能
\begin{quote}
{\tt SHTS2W}, {\tt SHTW2G}を連続して行うことにより,
スペクトル逆変換を行う.
\end{quote}

\item 定義
\begin{quote}
{\tt ISW}および配列{\tt S}, {\tt W}, {\tt G}の意味は
{\tt SHTS2W}および{\tt SHTW2G}に同じである.
本サブルーチンは, {\tt SHTS2W}, {\tt SHTW2G}を連続して
行うことにより,
\vspace{1em}

{\tt ISW=0}の場合, 通常のスペクトル逆変換;
\begin{equation}
G(\lambda,\varphi)=\sum^M_{n=0}\sum^n_{m=-n}
S^m_nP^m_n(\sin\varphi)e^{im\lambda}.
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=1}の場合, 緯度微分のスペクトル逆変換;
\begin{equation}
G(\lambda,\varphi)=\frac{\partial}{\partial\varphi}\sum^M_{n=0}\sum^n_{m=-n}
S^m_nP^m_n(\sin\varphi)e^{im\lambda}.
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=-1}の場合, 経度微分のスペクトル逆変換;
\begin{equation}
G(\lambda,\varphi)=\frac{\partial}{\partial\lambda}\sum^M_{n=0}\sum^n_{m=-n}
S^m_nP^m_n(\sin\varphi)e^{im\lambda}.
\end{equation}
を行う.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTS2G(MM,JM,IM,ISW,S,W,G,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定(上記定義を参照)\\
{\tt S} & {\tt (R)} & 入力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt W} & {\tt (R)} & 出力. ウエーブデータ.
(長さおよび並び方は{\tt SHTS2W}を参照). \\
{\tt G} & {\tt (R)} & 出力. グリッドデータ.
(長さおよび並び方は{\tt SHTW2G}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item 本サブルーチンは, {\tt SHTS2W}, {\tt SHTW2G}を連続して呼ぶのと全く
同様である.
\item {\tt ISW=1}と{\tt ISW=-1}の変換を両方用いることによって, スカラー
場の勾配ベクトルを求めることができる.
\end{enumerate}

\end{enumerate}

\subsection{SHTG2W}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル正変換の前半部分であるフーリエ正変換を行う.
\end{quote}

\item 定義
\begin{quote}
グリッドデータに対して, フーリエ正変換;
\begin{equation}
W^m(\varphi)\equiv\frac1{2\pi}\int^{2\pi}_0
G(\lambda,\varphi)e^{-im\lambda}d\lambda
\end{equation}
を行う.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTG2W(MM,JM,IM,G,W,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt G} & {\tt (R)} & 入力. グリッドデータ
(長さおよび並び方は{\tt SHTW2G}を参照). \\
{\tt W} & {\tt (R)} & 出力. ウエーブデータ
(長さおよび並び方は{\tt SHTS2W}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item グリッドデータ{\tt G}が{\tt SHTW2G}によって作成されたものである場
合には, 上記の積分がaliasingなしに完全に評価される.
\end{enumerate}

\end{enumerate}

\subsection{SHTW2S}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル正変換の後半部分であるルジャンドル正変換を行う.
\end{quote}

\item 定義
\begin{quote}
{\tt ISW=0}の場合, 通常のルジャンドル正変換;
\begin{equation}
S^m_n=\frac12\int^{\pi/2}_{-\pi/2}W^m(\varphi)P^m_n(\sin\varphi)\cos\varphi
d\varphi
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=1}の場合, 緯度微分のルジャンドル正変換;
\begin{equation}
S^m_n=\frac12\int^{\pi/2}_{-\pi/2}
\frac{d}{\cos\varphi d\varphi}
\left\{\cos\varphi W^m(\varphi)\right\}P^m_n(\sin\varphi)\cos\varphi
d\varphi
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=-1}の場合, 経度微分のルジャンドル正変換;
\begin{equation}
S^m_n=\frac12\int^{\pi/2}_{-\pi/2}
\frac{im}{\cos\varphi}W^m(\varphi)P^m_n(\sin\varphi)\cos\varphi
d\varphi
\end{equation}
を行う.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTW2S(MM,JM,ISW,W,S,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定(上記定義を参照)\\
{\tt W} & {\tt (R)} & 入力. ウエーブデータ
(長さおよび並び方は{\tt SHTS2W}を参照). \\
{\tt S} & {\tt (R)} & 出力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt ISW=0}の場合, ウエーブデータ{\tt W}が{\tt SHTS2W}で{\tt ISW=0}
として作成されたものである場合には, 上記の積分がaliasingなしに完全に評
価される.
\item {\tt ISW}$=\pm 1$の場合, ウエーブデータ{\tt W}が{\tt SHTS2W}で
{\tt ISW}$=\pm 1$として作成されたものである場合には,
上記の積分がaliasingなしに完全に評価される.
\end{enumerate}

\end{enumerate}

\subsection{SHTG2S}

\begin{enumerate}

\item 機能
\begin{quote}
{\tt SHTG2W}, {\tt SHTW2S}を連続して行うことにより,
スペクトル正変換を行う.
\end{quote}

\item 定義
\begin{quote}
{\tt ISW}および配列{\tt S}, {\tt W}, {\tt G}の意味は
{\tt SHTG2W}および{\tt SHTW2S}に同じである.
本サブルーチンは, {\tt SHTG2W}, {\tt SHTW2S}を連続して
行うことにより,
\vspace{1em}

{\tt ISW=0}の場合, 通常のスペクトル正変換;
\begin{equation}
S^m_n=\frac1{4\pi}\int^{2\pi}_0\int^{\pi/2}_{-\pi/2}
G(\lambda,\varphi)P^m_n(\sin\varphi)e^{-im\lambda}\cos\varphi d\varphi
d\lambda .
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=1}の場合, 緯度微分のスペクトル正変換;
\begin{equation}
S^m_n=\frac1{4\pi}\int^{2\pi}_0\int^{\pi/2}_{-\pi/2}
\frac{\partial}{\cos\varphi\partial\varphi}
\left\{\cos\varphi G(\lambda,\varphi)\right\}
P^m_n(\sin\varphi)e^{-im\lambda}\cos\varphi d\varphi
d\lambda .
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=-1}の場合, 経度微分のスペクトル正変換;
\begin{equation}
S^m_n=\frac1{4\pi}\int^{2\pi}_0\int^{\pi/2}_{-\pi/2}
\frac{\partial}{\cos\varphi\partial\lambda}\left\{G(\lambda,\varphi)\right\}
P^m_n(\sin\varphi)e^{-im\lambda}\cos\varphi d\varphi
d\lambda .
\end{equation}
を行う.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTG2S(MM,JM,IM,ISW,G,W,S,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定(上記定義を参照)\\
{\tt G} & {\tt (R)} & 入力. グリッドデータ.
(長さおよび並び方は{\tt SHTW2G}を参照). \\
{\tt W} & {\tt (R)} & 出力. ウエーブデータ.
(長さおよび並び方は{\tt SHTS2W}を参照). \\
{\tt S} & {\tt (R)} & 出力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item 本サブルーチンは, {\tt SHTG2W}, {\tt SHTW2S}を連続して呼ぶのと全く
同様である.
\item {\tt ISW=1}と{\tt ISW=-1}の変換を両方用いることによって, ベクトル
場の発散を求めることができる.
\end{enumerate}

\end{enumerate}

\subsection{SHTSWA}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル逆変換の前半部分であるルジャンドル逆変換を
指定された波数区間のみについて行う.
\end{quote}

\item 定義
\begin{quote}
スペクトルデータ$S^m_n$から, ウエーブデータ$W^m(\varphi)$
への変換を{\tt M1}$\le |m|\le${\tt M2}の波数範囲のみについて行う.
変換式は{\tt SHTS2W}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTSWA(MM,JM,ISW,M1,M2,S,W,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定({\tt SHTS2W}を参照)\\
{\tt M1} & {\tt (I)} & 入力. 変換する波数区間の最小値(上記定義を参照)\\
{\tt M2} & {\tt (I)} & 入力. 変換する波数区間の最大値(上記定義を参照)\\
{\tt S} & {\tt (R)} & 入力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt W} & {\tt (R)} & 出力. ウエーブデータ
(長さおよび並び方は{\tt SHTS2W}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt W(-JM:JM,-MM:MM)}と宣言されている場合, 指定された波数区間の外
すなわち{\tt W(J,M) (|M|<M1, |M|>M2)}には0が代入される.
\end{enumerate}

\end{enumerate}

\subsection{SHTWGA}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル逆変換の後半部分であるフーリエ逆変換を
指定された波数区間のみについて行う.
\end{quote}

\item 定義
\begin{quote}
ウエーブデータ$W^m(\varphi)$からグリッドデータ$G(\lambda,\varphi)$
への変換を{\tt M1}$\le |m|\le${\tt M2}の波数範囲のみについて行う.
変換式は{\tt SHTW2G}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTWGA(MM,JM,IM,M1,M2,W,G,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt M1} & {\tt (I)} & 入力. 変換する波数区間の最小値(上記定義を参照)\\
{\tt M2} & {\tt (I)} & 入力. 変換する波数区間の最大値(上記定義を参照)\\
{\tt W} & {\tt (R)} & 入力. ウエーブデータ.
(長さおよび並び方は{\tt SHTS2W}を参照). \\
{\tt G} & {\tt (R)} & 出力. グリッドデータ
(長さおよび並び方は{\tt SHTW2G}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt M1=0, M2=MM}と指定すれば{\tt SHTW2G}を呼ぶのと全く同様になる.
\end{enumerate}

\end{enumerate}

\subsection{SHTSGA}

\begin{enumerate}

\item 機能
\begin{quote}
{\tt SHTSWA}, {\tt SHTWGA}を連続して行うことにより,
スペクトル逆変換を指定された波数区間のみについて行う.
\end{quote}

\item 定義
\begin{quote}
{\tt SHTSWA}, {\tt SHTWGA}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTSGA(MM,JM,IM,ISW,M1,M2,S,W,G,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定({\tt SHTS2G}を参照)\\
{\tt M1} & {\tt (I)} & 入力. 変換する波数区間の最小値({\tt SHTSWA}を参照)\\
{\tt M2} & {\tt (I)} & 入力. 変換する波数区間の最大値({\tt SHTSWA}を参照)\\
{\tt S} & {\tt (R)} & 入力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt W} & {\tt (R)} & 出力. ウエーブデータ.
(長さおよび並び方は{\tt SHTS2W}を参照). \\
{\tt G} & {\tt (R)} & 出力. グリッドデータ.
(長さおよび並び方は{\tt SHTW2G}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item 本サブルーチンは, {\tt SHTSWA}, {\tt SHTWGA}を連続して呼ぶのと全く
同様である.
\end{enumerate}

\end{enumerate}

\subsection{SHTSWM}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル逆変換の前半部分であるルジャンドル逆変換を
指定された一つの波数成分のみについて行う.
\end{quote}

\item 定義
\begin{quote}
スペクトルデータ$S^m_n$から, ウエーブデータ$W^m(\varphi)$
への変換を指定された一つの波数成分
$m=${\tt M}$(>0)$のみについて行う.
変換式は{\tt SHTS2W}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTSWM(MM,JM,M,ISW,S,WR,WI,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt M} & {\tt (I)} & 入力. 変換する波数(上記定義を参照)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定({\tt SHTS2W}を参照)\\
{\tt S} & {\tt (R)} & 入力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt WR} & {\tt (R)} & 出力. $W^m(\varphi)$の実数部分.
長さ{\tt 2*JM+1}の配列(並び方は備考を参照). \\
{\tt WI} & {\tt (R)} & 出力. $W^m(\varphi)$の虚数部分.
長さ{\tt 2*JM+1}の配列(並び方は備考を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt WR(-JM:JM), WI(-JM:JM)}と宣言されている場合,
{\tt WR(J)}には$\re(W^m(\varphi_j))$が,
{\tt WI(J)}には$\im(W^m(\varphi_j))$がそれぞれ格納される.
\item {\tt M=0}(帯状成分)については{\tt SHTSWZ}を用いること.

\end{enumerate}

\end{enumerate}

\subsection{SHTWGM}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル逆変換の後半部分であるフーリエ逆変換を
指定された一つの波数成分のみについて行う.
\end{quote}

\item 定義
\begin{quote}
ウエーブデータ$W^m(\varphi)$からグリッドデータ$G(\lambda,\varphi)$
への変換を指定された一つの波数成分$m=${\tt M}$(>0)$のみについて行う.
変換式は{\tt SHTW2G}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTWGM(MM,JM,IM,M,WR,WI,G,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt M} & {\tt (I)} & 入力. 変換する波数(上記定義を参照)\\
{\tt WR} & {\tt (R)} & 入力. $W^m(\varphi)$の実数部分.
(長さおよび並び方は{\tt SHTSWM}を参照). \\
{\tt WI} & {\tt (R)} & 入力. $W^m(\varphi)$の虚数部分.
(長さおよび並び方は{\tt SHTSWM}を参照). \\
{\tt G} & {\tt (R)} & 出力. グリッドデータ
(長さおよび並び方は{\tt SHTW2G}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt M=0}(帯状成分)については{\tt SHTSWZ}を用いること.
\end{enumerate}

\end{enumerate}

\subsection{SHTSGM}

\begin{enumerate}

\item 機能
\begin{quote}
{\tt SHTSWM}, {\tt SHTWGM}を連続して行うことにより,
スペクトル逆変換を指定された一つの波数成分のみについて行う.
\end{quote}

\item 定義
\begin{quote}
{\tt SHTSWM}, {\tt SHTWGM}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTSGM(MM,JM,IM,M,ISW,S,WR,WI,G,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt M} & {\tt (I)} & 入力. 変換する波数({\tt SHTSWM}を参照)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定({\tt SHTS2G}を参照)\\
{\tt S} & {\tt (R)} & 入力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt WR} & {\tt (R)} & 出力. $W^m(\varphi)$の実数部分.
(長さおよび並び方は{\tt SHTSWM}を参照). \\
{\tt WI} & {\tt (R)} & 出力. $W^m(\varphi)$の虚数部分.
(長さおよび並び方は{\tt SHTSWM}を参照). \\
{\tt G} & {\tt (R)} & 出力. グリッドデータ
(長さおよび並び方は{\tt SHTW2G}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}
\item 備考
\begin{enumerate}
\item 本サブルーチンは, {\tt SHTSWM}, {\tt SHTWGM}を連続して呼ぶのと全く
同様である.
\end{enumerate}

\end{enumerate}

\subsection{SHTSWZ}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル逆変換の前半部分であるルジャンドル逆変換を
帯状成分のみについて行う.
\end{quote}

\item 定義
\begin{quote}
スペクトルデータ$S^m_n$から, ウエーブデータ$W^m(\varphi)$
への変換を帯状成分$m=0$のみについて行う.
変換式は{\tt SHTS2W}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTSWZ(MM,JM,ISW,S,WZ,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定({\tt SHTS2W}を参照)\\
{\tt S} & {\tt (R)} & 入力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt WZ} & {\tt (R)} & 出力. $W^0(\varphi)$が格納される.
長さ{\tt 2*JM+1}の配列(並び方は備考を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt WZ(-JM:JM)}と宣言されている場合,
{\tt WZ(J)}には$W^0(\varphi_j)$が格納される.

\end{enumerate}

\end{enumerate}

\subsection{SHTWGZ}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル逆変換の後半部分であるフーリエ逆変換を
帯状成分のみについて行う.
\end{quote}

\item 定義
\begin{quote}
ウエーブデータ$W^m(\varphi)$からグリッドデータ$G(\lambda,\varphi)$
への変換を帯状成分$m=0$のみについて行う.
変換式は{\tt SHTW2G}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTWGZ(JM,IM,WZ,G)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt WZ} & {\tt (R)} & 入力. ウエーブデータ($W^0(\varphi)$)
(長さおよび並び方は{\tt SHTSWZ}を参照). \\
{\tt G} & {\tt (R)} & 出力. グリッドデータ
(長さおよび並び方は{\tt SHTW2G}を参照).
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item なし.
\end{enumerate}

\end{enumerate}

\subsection{SHTSGZ}

\begin{enumerate}

\item 機能
\begin{quote}
{\tt SHTSWZ}, {\tt SHTWGZ}を連続して行うことにより,
スペクトル逆変換を帯状成分のみについて行う.
\end{quote}

\item 定義
\begin{quote}
{\tt SHTSWZ}, {\tt SHTWGZ}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTSGZ(MM,JM,IM,ISW,S,WZ,G,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定({\tt SHTS2G}を参照)\\
{\tt S} & {\tt (R)} & 入力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt WZ} & {\tt (R)} & 出力. ウエーブデータ($W^0(\varphi)$)
(長さおよび並び方は{\tt SHTSWZ}を参照). \\
{\tt G} & {\tt (R)} & 出力. グリッドデータ
(長さおよび並び方は{\tt SHTW2G}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item 本サブルーチンは, {\tt SHTSWZ}, {\tt SHTWGZ}を連続して呼ぶのと全く
同様である.

\end{enumerate}

\end{enumerate}

\subsection{SHTSWZ}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル逆変換の前半部分であるルジャンドル逆変換を
指定された一つの緯度円上で指定された波数区間のみについて行う.
\end{quote}

\item 定義
\begin{quote}
スペクトルデータ$S^m_n$から, ウエーブデータ$W^m(\varphi)$
指定された一つの緯度円$\varphi_j$上で
{\tt M1}$\le |m|\le${\tt M2}の波数範囲のみについて行う.
変換式は{\tt SHTS2W}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTSWJ(MM,JM,ISW,J,M1,M2,S,WJ,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定({\tt SHTS2W}を参照).\\
{\tt J} & {\tt (I)} & 入力. 変換を行う緯度円の指定(備考を参照).\\
{\tt M1} & {\tt (I)} & 入力. 変換する波数区間の最小値(上記定義を参照)\\
{\tt M2} & {\tt (I)} & 入力. 変換する波数区間の最大値(上記定義を参照)\\
{\tt S} & {\tt (R)} & 入力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt WJ} & {\tt (R)} & 出力. $W^m(\varphi_j)$が格納される.
長さ{\tt 2*MM+1}の配列(並び方は備考を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt WJ(-MM:MM)}と宣言しておけば, {\tt WJ(M) (M>0)}には
$\re(W^m(\varphi_j))$が, {\tt WJ(-M) (M>0)}には$\im(W^m(\varphi_j))$
がそれぞれ格納され, {\tt WJ(0)}には$(W^0(\varphi_j))$が格納される
($j=${\tt J}).
\item 指定された波数区間の外すなわち{\tt WJ(M) (|M|<M1, |M|>M2)}
には0が代入される.

\end{enumerate}

\end{enumerate}

\subsection{SHTWGJ}

\begin{enumerate}

\item 機能
\begin{quote}
スペクトル逆変換の後半部分であるフーリエ逆変換を
一つの緯度円上のウエーブデータに対して
指定された波数区間のみについて行う.
\end{quote}

\item 定義
\begin{quote}
一つの緯度円$\varphi_j$上において,
ウエーブデータ$W^m(\varphi_j)$から
グリッドデータ$G(\lambda,\varphi_j)$
への変換を指定された
{\tt M1}$\le |m|\le${\tt M2}の波数範囲のみについて行う.
変換式は{\tt SHTW2G}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTWGJ(MM,IM,M1,M2,WJ,GJ,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$).\\
{\tt M1} & {\tt (I)} & 入力. 変換する波数区間の最小値(上記定義を参照).\\
{\tt M2} & {\tt (I)} & 入力. 変換する波数区間の最大値(上記定義を参照).\\
{\tt WJ} & {\tt (R)} & 入力. $W^m(\varphi_j)$
(長さおよび並び方は{\tt SHTSWJ}を参照). \\
{\tt GJ} & {\tt (R)} & 出力. グリッドデータ.
長さ{\tt 2*IM+1}の配列(並び方は備考を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt GJ(-IM:IM)}と宣言しておけば, {\tt GJ(I)}には
$G(\lambda_i,\varphi_j)$が格納される.
\end{enumerate}

\end{enumerate}

\subsection{SHTSGJ}

\begin{enumerate}

\item 機能
\begin{quote}
{\tt SHTSWJ}, {\tt SHTWGJ}を連続して行うことにより,
スペクトル逆変換を指定された一つの緯度円上で
指定された波数区間のみについて行う.
\end{quote}

\item 定義
\begin{quote}
{\tt SHTSWJ}, {\tt SHTWGJ}を参照.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTSGJ(MM,JM,IM,ISW,J,M1,M2,S,WJ,GJ,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt IM} & {\tt (I)} & 入力. 東西分割数の1/2($I$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定({\tt SHTS2G}を参照).\\
{\tt J} & {\tt (I)} & 入力. 変換を行う緯度円の指定({\tt SHTSWJ}を参照).\\
{\tt M1} & {\tt (I)} & 入力. 変換する波数区間の最小値({\tt SHTSWJ}を参照)\\
{\tt M2} & {\tt (I)} & 入力. 変換する波数区間の最大値({\tt SHTSWJ}を参照)\\
{\tt S} & {\tt (R)} & 入力. スペクトルデータ
(長さおよび並び方は{\tt SHTNML}を参照). \\
{\tt WJ} & {\tt (R)} & 出力. $W^m(\varphi_j)$
(長さおよび並び方は{\tt SHTSWJ}を参照). \\
{\tt GJ} & {\tt (R)} & 出力. グリッドデータ.
(長さおよび並び方は{\tt SHTWGJ}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item 本サブルーチンは, {\tt SHTSWJ}, {\tt SHTWGJ}を連続して呼ぶのと全く
同様である.
\end{enumerate}

\end{enumerate}

\subsection{SHTFUN}

\begin{enumerate}

\item 機能
\begin{quote}
ルジャンドル陪関数を計算する.
\end{quote}

\item 定義
\begin{quote}
指定された帯状波数$0\le m\le M$のルジャンドル陪関数;
\begin{equation}
P^m_n(\sin\varphi)\quad (n=m,m+1,\cdots,M)
\end{equation}
を求める(ルジャンドル陪関数の定義は概要を参照).
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTFUN(MM,JM,M,FUN,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt M} & {\tt (I)} & 入力. 求めるルジャンドル陪関数の帯状波数($m$).\\
{\tt FUN} & {\tt (R)} & $P^m_n(\sin\varphi)$が格納される長さ
{\tt (2*JM+1)*(MM-M+1)}の配列(並び方は備考を参照).\\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt FUN(-JM:JM,M:MM)}と宣言されている場合, {\tt FUN(J,N)}には
$P^m_n(\sin\varphi_j)$が格納される.
\end{enumerate}

\end{enumerate}

\subsection{SHTLFW}

\begin{enumerate}

\item 機能
\begin{quote}
ルジャンドル正変換を行う.
\end{quote}

\item 定義
\begin{quote}
帯状波数$m(\ge 0)$の実ウエーブデータ$W^m(\varphi)$に対して,
\vspace{1em}

{\tt ISW=0}の場合, 通常のルジャンドル正変換;
\begin{equation}
S^m_n=\frac12\int^{\pi/2}_{-\pi/2}W^m(\varphi)P^m_n(\sin\varphi)\cos\varphi
d\varphi
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=1}の場合, 緯度微分のルジャンドル正変換;
\begin{equation}
S^m_n=\frac12\int^{\pi/2}_{-\pi/2}
\frac{d}{d\varphi}
\left\{W^m(\varphi)\right\}P^m_n(\sin\varphi)\cos\varphi
d\varphi
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=-1}の場合, 経度微分のルジャンドル正変換;
\begin{equation}
S^m_n=\frac12\int^{\pi/2}_{-\pi/2}
\frac{-m}{\cos\varphi}W^m(\varphi)P^m_n(\sin\varphi)\cos\varphi
d\varphi
\end{equation}
を行う.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTLFW(MM,JM,M,ISW,WM,SM,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定(上記定義を参照)\\
{\tt M} & {\tt (I)} & 入力. 変換を行う帯状波数($m$). \\
{\tt WM} & {\tt (R)} & 入力. ウエーブデータ.
(長さおよび並び方は{\tt SHTLBW}を参照). \\
{\tt SM} & {\tt (R)} & 出力. スペクトルデータ.
(長さおよび並び方は{\tt SHTLBW}を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt ISW=0}の場合, ウエーブデータ{\tt WM}が{\tt SHTLBW}で{\tt ISW=0}
として作成されたものである場合には, 上記の積分がaliasingなしに完全に評
価される.
\item {\tt ISW}$=\pm 1$の場合, ウエーブデータ{\tt WM}が{\tt SHTLBW}で
{\tt ISW}$=\pm 1$として作成されたものである場合には,
上記の積分がaliasingなしに完全に評価される.
\item {\tt M}$\ge 0$であること.

\end{enumerate}

\end{enumerate}

\subsection{SHTLBW}

\begin{enumerate}

\item 機能
\begin{quote}
ルジャンドル逆変換を行う.
\end{quote}

\item 定義
\begin{quote}
帯状波数$m(\ge 0)$の実スペクトルデータ$S^m_n (n=m,m+1,\cdots,M)$に対して,
\vspace{1em}

{\tt ISW=0}の場合, 通常のルジャンドル逆変換;
\begin{equation}
W^m(\varphi)\equiv\sum^M_{n=|m|}S^m_nP^m_n(\sin\varphi)
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=1}の場合, 緯度微分のルジャンドル逆変換;
\begin{equation}
W^m(\varphi)\equiv\frac{d}{d\varphi}\sum^M_{n=|m|}S^m_nP^m_n(\sin\varphi)
\end{equation}
を行う.
\vspace{1em}

{\tt ISW=-1}の場合, 経度微分のルジャンドル逆変換;
\begin{equation}
W^m(\varphi)\equiv\frac{m}{\cos\varphi}\sum^M_{n=|m|}S^m_nP^m_n(\sin\varphi)
\end{equation}
を行う.
\end{quote}

\item 呼び出し方法
\begin{quote}
{\tt SHTLBW(MM,JM,M,ISW,SM,WM,WORK)}
\end{quote}

\item パラメーターの説明
\begin{quote}
\begin{tabular}{lll}
{\tt MM} & {\tt (I)} & 入力. 切断波数($M$). \\
{\tt JM} & {\tt (I)} & 入力. 南北分割数の1/2($J$)\\
{\tt ISW} & {\tt (I)} & 入力. 変換の種類の指定(上記定義を参照)\\
{\tt M} & {\tt (I)} & 入力. 変換を行う帯状波数($m$). \\
{\tt SM} & {\tt (R)} & 入力. スペクトルデータ.
長さ{\tt MM-M+1}の配列(並び方は備考を参照). \\
{\tt WM} & {\tt (R)} & 出力. ウエーブデータ.
長さ{\tt (2*JM+1)}の配列(並び方は備考を参照). \\
{\tt WORK} & {\tt (R)} & {\tt SHTINT}で初期化された作業領域.
\end{tabular}
\end{quote}

\item 備考
\begin{enumerate}
\item {\tt SM(M:MM)}と宣言した場合, {\tt SM(N)}には$S^m_n$を格納すれば良い.
また, {\tt WM(-JM:JM)}と宣言した場合, {\tt WM(J)}には$W^m(\sin\varphi_j)$
が格納される.
\item {\tt M}$\ge 0$であること.
\end{enumerate}

\end{enumerate}
