\hypertarget{namespaceat__module}{}\doxysection{at\+\_\+module Module Reference}
\label{namespaceat__module}\index{at\_module@{at\_module}}


\doxysubsection{Detailed Description}
1 次元有限領域\+: チェビシェフ変換 

\begin{DoxyAuthor}{Author}
Shin-\/ichi Takehiro, Youhei S\+A\+S\+A\+KI 
\end{DoxyAuthor}
\begin{DoxyCopyright}{Copyright}
Copyright (C) S\+P\+M\+O\+D\+EL Development Group, 2019. License is M\+I\+T/\+X11. see \mbox{\hyperlink{COPYRIGHT}{C\+O\+P\+Y\+R\+I\+G\+HT}} in detail
\end{DoxyCopyright}
1 次元有限領域の下での流体運動をチェビシェフ変換によりスペクトル数値 計算するための Fortran90 関数を提供する.

2 次元データの 1 次元に関して同時にスペクトル計算を実行するための 関数も提供しており, 2, 3 次元領域での計算のベースも提供する.

このモジュールは内部で I\+S\+P\+A\+C\+K3/\+F\+X\+P\+A\+CK の Fortran77 サブルーチンを 呼んでいる. スペクトルデータおよび格子点データの格納方法については I\+S\+P\+A\+C\+K3/\+F\+X\+P\+A\+CK のマニュアルを参照されたい.

\doxysubsubsection*{関数・変数の名前と型について}

\doxyparagraph*{命名法}


\begin{DoxyItemize}
\item 関数名の先頭 ({\ttfamily t\+\_\+}, {\ttfamily g\+\_\+}, {\ttfamily at\+\_\+}, {\ttfamily ag\+\_\+}) は, 返す値の形を示している.
\begin{DoxyItemize}
\item {\ttfamily t\+\_\+} \+:: チェビシェフデータ
\item {\ttfamily g\+\_\+} \+:: 1 次元格子点データ
\item {\ttfamily at\+\_\+} \+:: 1 次元チェビシェフデータが複数並んだ 2 次元データ
\item {\ttfamily ag\+\_\+} \+:: 1 次元格子点データが複数並んだ 2 次元データ.
\end{DoxyItemize}
\item 関数名の間の文字列({\ttfamily Dx})は, その関数の作用を表している.
\item 関数名の最後 ({\ttfamily \+\_\+e},{\ttfamily \+\_\+at},{\ttfamily \+\_\+g},{\ttfamily \+\_\+ag}) は, 入力変数の形がチェビシェフデータおよび格子点データであることを示している.
\begin{DoxyItemize}
\item {\ttfamily \+\_\+t} \+:: チェビシェフデータ
\item {\ttfamily \+\_\+g} \+:: 1 次元格子点データ
\item {\ttfamily \+\_\+at} \+:: 1 次元チェビシェフデータが複数並んだ 2 次元データ
\item {\ttfamily \+\_\+ag} \+:: 1 次元格子点データが複数並んだ 2 次元データ
\end{DoxyItemize}
\end{DoxyItemize}

\doxyparagraph*{各データの種類の説明}


\begin{DoxyItemize}
\item 以下, {\ttfamily DP = kind(1.\+0D)} である
\item {\ttfamily g} \+: 1 次元格子点データ.
\begin{DoxyItemize}
\item 変数の種類と次元は {\ttfamily real(\+D\+P), dimension(0\+:im)}.
\item {\ttfamily im} は X 座標の格子点数であり, サブルーチン \mbox{\hyperlink{namespaceat__module_adf63042d0ac9f5a2c17163540839920d}{at\+\_\+initial()}} にて あらかじめ設定しておく.
\end{DoxyItemize}
\item {\ttfamily t} \+: チェビシェフデータ.
\begin{DoxyItemize}
\item 変数の種類と次元は {\ttfamily real(\+D\+P), dimension(0\+:km)}.
\item {\ttfamily km} は X 方向の最大波数であり, サブルーチン \mbox{\hyperlink{namespaceat__module_adf63042d0ac9f5a2c17163540839920d}{at\+\_\+initial()}} にて あらかじめ設定しておく.
\end{DoxyItemize}
\item {\ttfamily ag} \+: 1 次元(\+X)格子点データの並んだ 2 次元データ.
\begin{DoxyItemize}
\item 変数の種類と次元は {\ttfamily real(\+D\+P), dimension(\+:,0\+:im)}. 第 2 次元が X 方向を表す.
\end{DoxyItemize}
\item {\ttfamily at} \+: 1 次元チェビシェフデータの並んだ 2 次元データ.
\begin{DoxyItemize}
\item 変数の種類と次元は {\ttfamily real(\+D\+P), dimension(\+:,0\+:km)}. 第 2 次元がスペクトルを表す.
\end{DoxyItemize}
\item {\ttfamily g\+\_\+} で始まる関数が返す値は 1 次元格子点データに同じ.
\item {\ttfamily t\+\_\+} で始まる関数が返す値はチェビシェフデータに同じ.
\item {\ttfamily ag\+\_\+} で始まる関数が返す値は 1 次元格子点データの並んだ 2 次元データに同じ.
\item {\ttfamily at\+\_\+} で始まる関数が返す値は 1 次元チェビシェフデータの並んだ 2 次元データに同じ.
\item チェビシェフデータに対する微分等の作用とは, 対応する格子点データに 微分などを作用させたデータをチェビシェフ変換したもののことである. 
\end{DoxyItemize}\doxysubsection*{Data Types}
\begin{DoxyCompactItemize}
\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundaries__dd}{at\+\_\+boundaries\+\_\+dd}}
\begin{DoxyCompactList}\small\item\em 両端ディリクレ型境界条件の適用(タウ法). 両境界での値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundaries__dn}{at\+\_\+boundaries\+\_\+dn}}
\begin{DoxyCompactList}\small\item\em ディリクレ・ノイマン型境界条件の適用(タウ法). i=0 で値, i=im で勾配の値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundaries__nd}{at\+\_\+boundaries\+\_\+nd}}
\begin{DoxyCompactList}\small\item\em ディリクレ・ノイマン型境界条件の適用(タウ法). i=0 で勾配の値, i=im で値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundaries__nn}{at\+\_\+boundaries\+\_\+nn}}
\begin{DoxyCompactList}\small\item\em 両端ノイマン型境界条件の適用(タウ法). 両境界で勾配の値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundariesgrid__dd}{at\+\_\+boundariesgrid\+\_\+dd}}
\begin{DoxyCompactList}\small\item\em 両端ディリクレ型境界条件の適用(実空間での評価). 両境界での値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundariesgrid__dn}{at\+\_\+boundariesgrid\+\_\+dn}}
\begin{DoxyCompactList}\small\item\em ディリクレ・ノイマン型境界条件の適用(実空間での評価). i=0 で値, i=im で勾配の値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundariesgrid__nd}{at\+\_\+boundariesgrid\+\_\+nd}}
\begin{DoxyCompactList}\small\item\em ノイマン・ディリクレ型境界条件の適用(実空間での評価). i=0 で勾配の値, i=0 で値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundariesgrid__nn}{at\+\_\+boundariesgrid\+\_\+nn}}
\begin{DoxyCompactList}\small\item\em 両端ノイマン型境界条件の適用(実空間での評価). 両境界で勾配の値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundariestau__dd}{at\+\_\+boundariestau\+\_\+dd}}
\begin{DoxyCompactList}\small\item\em 両端ディリクレ型境界条件の適用(タウ法). 両境界での値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundariestau__dn}{at\+\_\+boundariestau\+\_\+dn}}
\begin{DoxyCompactList}\small\item\em ディリクレ・ノイマン型境界条件の適用(タウ法). i=0 で値, i=im で勾配の値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundariestau__nd}{at\+\_\+boundariestau\+\_\+nd}}
\begin{DoxyCompactList}\small\item\em ノイマン・ディリクレ型境界条件の適用(タウ法). i=0 で勾配の値, i=im で値を与える. \end{DoxyCompactList}\item 
interface \mbox{\hyperlink{interfaceat__module_1_1at__boundariestau__nn}{at\+\_\+boundariestau\+\_\+nn}}
\begin{DoxyCompactList}\small\item\em 両端ノイマン型境界条件の適用(タウ法). 両境界で勾配の値を与える. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine, public \mbox{\hyperlink{namespaceat__module_adf63042d0ac9f5a2c17163540839920d}{at\+\_\+initial}} (i, k, xmin, xmax)
\begin{DoxyCompactList}\small\item\em チェビシェフ変換の格子点数, 波数, 領域の大きさを設定する. \end{DoxyCompactList}\item 
real(dp) function, dimension(size(at\+\_\+data, 1), 0\+:\mbox{\hyperlink{namespaceat__module_a8b21e0caf645222c31409b96aaf60757}{im}}), public \mbox{\hyperlink{namespaceat__module_a216c24fc50973ad591948dfd8193e029}{ag\+\_\+at}} (at\+\_\+data)
\begin{DoxyCompactList}\small\item\em チェビシェフデータから格子データへ変換する(2 次元配列用). \end{DoxyCompactList}\item 
real(dp) function, dimension(0\+:\mbox{\hyperlink{namespaceat__module_a8b21e0caf645222c31409b96aaf60757}{im}}), public \mbox{\hyperlink{namespaceat__module_aac1b775fe04c1911fa86967c7842c97d}{g\+\_\+t}} (t\+\_\+data)
\begin{DoxyCompactList}\small\item\em チェビシェフデータから格子データへ変換する(1 次元配列用). \end{DoxyCompactList}\item 
real(dp) function, dimension(size(ag\+\_\+data, 1), 0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), public \mbox{\hyperlink{namespaceat__module_aa4c5fab5be3b29b2ed6f52a0a45d9281}{at\+\_\+ag}} (ag\+\_\+data)
\begin{DoxyCompactList}\small\item\em 格子データからチェビシェフデータへ変換する(2 次元配列用). \end{DoxyCompactList}\item 
real(dp) function, dimension(0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), public \mbox{\hyperlink{namespaceat__module_a649cd7872ed585abce2ddced8d9c5a71}{t\+\_\+g}} (g\+\_\+data)
\begin{DoxyCompactList}\small\item\em 格子データからチェビシェフデータへ変換する(1 次元配列用). \end{DoxyCompactList}\item 
real(dp) function, dimension(size(at\+\_\+data, 1), 0\+:size(at\+\_\+data, 2) -\/1), public \mbox{\hyperlink{namespaceat__module_a43d2267dc3e7ea20e35566b97f573415}{at\+\_\+dx\+\_\+at}} (at\+\_\+data)
\begin{DoxyCompactList}\small\item\em 入力チェビシェフデータに X 微分を作用する(2 次元配列用). \end{DoxyCompactList}\item 
real(dp) function, dimension(size(t\+\_\+data)), public \mbox{\hyperlink{namespaceat__module_aff97491f952dd4253f871ad74f33f32f}{t\+\_\+dx\+\_\+t}} (t\+\_\+data)
\begin{DoxyCompactList}\small\item\em 入力チェビシェフデータに X 微分を作用する(1 次元配列用). \end{DoxyCompactList}\item 
real(dp) function, dimension(size(ag, 1)), public \mbox{\hyperlink{namespaceat__module_a00db89b712c0c640080ce42854eefdf0}{a\+\_\+int\+\_\+ag}} (ag)
\begin{DoxyCompactList}\small\item\em 1 次元格子点データが並んだ 2 次元配列の積分 \end{DoxyCompactList}\item 
real(dp) function, public \mbox{\hyperlink{namespaceat__module_a6b950f252e117fa489188b56730df979}{int\+\_\+g}} (g)
\begin{DoxyCompactList}\small\item\em 1 次元格子点データの積分 \end{DoxyCompactList}\item 
real(dp) function, dimension(size(ag, 1)), public \mbox{\hyperlink{namespaceat__module_aa8f7afadb5910577296ebdce343d9916}{a\+\_\+avr\+\_\+ag}} (ag)
\begin{DoxyCompactList}\small\item\em 1 次元格子点データが並んだ 2 次元配列の平均 \end{DoxyCompactList}\item 
real(dp) function, public \mbox{\hyperlink{namespaceat__module_ace71f9c471a9fde3f5a8adc765813078}{avr\+\_\+g}} (g)
\begin{DoxyCompactList}\small\item\em 1 次元格子点データの平均 \end{DoxyCompactList}\item 
real(dp) function, public \mbox{\hyperlink{namespaceat__module_ae9ea43ca3ea4475a7298c766187eb31a}{interpolate\+\_\+t}} (t\+\_\+data, xval)
\begin{DoxyCompactList}\small\item\em 1 次元データの補間 \end{DoxyCompactList}\item 
real(dp) function, dimension(size(at\+\_\+data, 1)), public \mbox{\hyperlink{namespaceat__module_a41ad8e503511fa7a7377f0319f9ab963}{a\+\_\+interpolate\+\_\+at}} (at\+\_\+data, xval)
\begin{DoxyCompactList}\small\item\em 1 次元データの並んだ 2次元配列の補間 \end{DoxyCompactList}\item 
subroutine, public \mbox{\hyperlink{namespaceat__module_a88f9892380f46b0ea60921e6299a4cd6}{at\+\_\+boundaries}} (at\+\_\+data, cond, values)
\begin{DoxyCompactList}\small\item\em 境界条件の適用(タウ法, 2 次元配列用) \end{DoxyCompactList}\item 
subroutine, public \mbox{\hyperlink{namespaceat__module_acd3cf928b6b072c1142d70b9fa997359}{t\+\_\+boundaries}} (t\+\_\+data, cond, values)
\begin{DoxyCompactList}\small\item\em 境界条件の適用(タウ法, 1 次元配列用) 境界条件と両境界での値をオプションで与える. デフォルトは DD, values = 0 \end{DoxyCompactList}\item 
subroutine, public \mbox{\hyperlink{namespaceat__module_a8c785e4ee49d395ecb5300b80b62bc3d}{at\+\_\+boundariesgrid}} (at\+\_\+data, cond, values)
\begin{DoxyCompactList}\small\item\em 境界条件の適用(実空間での評価, 2 次元配列用) 境界条件と両境界での値をオプションで与える. デフォルトは DD, values = 0 \end{DoxyCompactList}\item 
subroutine, public \mbox{\hyperlink{namespaceat__module_ae4485e919330b01b25d3fa9416ebea14}{t\+\_\+boundariesgrid}} (t\+\_\+data, cond, values)
\begin{DoxyCompactList}\small\item\em 境界条件の適用(タウ法, 1 次元配列用) 境界条件と両境界での値をオプションで与える. デフォルトは DD, values = 0 \end{DoxyCompactList}\item 
subroutine, public \mbox{\hyperlink{namespaceat__module_a050d680de20200ff5926d23922bde5ac}{at\+\_\+finalize}}
\begin{DoxyCompactList}\small\item\em モジュールの終了処理(割り付け配列の解放)をおこなう. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a091ceaec11da9cb0cf1db9da2194b903}{at\+\_\+boundariestau\+\_\+dd\+\_\+2d}} (at\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Dirichlet 型境界条件の適用(タウ法, 2 次元配列用) 両境界での値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_aeb4e5c221891d1c06cdd226f531e9f1d}{at\+\_\+boundariestau\+\_\+dd\+\_\+1d}} (t\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Dirichlet 型境界条件の適用(タウ法, 1 次元配列用) 両境界での値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a631b7c7b0e5cc304e05c272dd1cec93e}{at\+\_\+boundariestau\+\_\+dn\+\_\+2d}} (at\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Dirichlet/\+Neumann 型境界条件の適用(タウ法, 2 次元配列用) i=0 で値, i=im で勾配の値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a4ec60a2bdb81b258d65035c4b12eff17}{at\+\_\+boundariestau\+\_\+dn\+\_\+1d}} (t\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Dirichlet/\+Neumann 型境界条件の適用(タウ法, 1 次元配列用) i=0 で値, i=im で勾配の値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a749a9b8e566eb107a6db98adc612cac6}{at\+\_\+boundariestau\+\_\+nd\+\_\+2d}} (at\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Neumann/\+Dirichlet 型境界条件の適用(タウ法, 2 次元配列用) i=0 で勾配の値, i=im で値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a8a2142785ec95159ef75e2b3d5972871}{at\+\_\+boundariestau\+\_\+nd\+\_\+1d}} (t\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Neumann/\+Dirichlet 型境界条件の適用(タウ法, 1 次元配列用) i=0 で勾配の値, i=im で値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a305ed18d316f0b00e1da211f7ed96f51}{at\+\_\+boundariestau\+\_\+nn\+\_\+2d}} (at\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Neumann/\+Dirichlet 型境界条件の適用(タウ法, 2 次元配列用) 両境界で勾配の値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a9c2d70e2264f17a7ba84656bf7457e31}{at\+\_\+boundariestau\+\_\+nn\+\_\+1d}} (t\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Neumann/\+Dirichlet 型境界条件の適用(タウ法, 1 次元配列用) 両境界で勾配の値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a7ee4c70429d21bc5489f77aa985c89a8}{at\+\_\+boundariesgrid\+\_\+dd\+\_\+2d}} (at\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Dirichlet 型境界条件の適用(実空間での評価, 2 次元配列用) 両境界での値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a0c526e571aee36ab9d6e2d529c9762fc}{at\+\_\+boundariesgrid\+\_\+dd\+\_\+1d}} (t\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Dirichlet 型境界条件の適用(実空間での評価, 1 次元配列用) 両境界での値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a14e19f3bd9a8c539b374ab57e60ebd88}{at\+\_\+boundariesgrid\+\_\+dn\+\_\+2d}} (at\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Dirichlet/\+Neumann 型境界条件の適用(実空間での評価, 2 次元配列用) i=0 で値, i=im で勾配の値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a8fb5476f4e9b4854275f2a5d643a7ceb}{at\+\_\+boundariesgrid\+\_\+dn\+\_\+1d}} (t\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Dirichlet/\+Neumann 型境界条件の適用(実空間での評価, 1 次元配列用) i=0 で値, i=im で勾配の値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_adb35e1b20aa23f73976d2b772f1af3b3}{at\+\_\+boundariesgrid\+\_\+nd\+\_\+2d}} (at\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Neumann/\+Dirichlet 型境界条件の適用(実空間での評価, 2 次元配列用) i=0 で勾配の値, i=im で値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_ac40bb8bb6c60b164b64178f3f307b452}{at\+\_\+boundariesgrid\+\_\+nd\+\_\+1d}} (t\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Neumann 型境界条件の適用(実空間での評価, 1 次元配列用) i=0 で勾配の値, i=im で値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a1f808281f41e8fbb86bade921ac6bc53}{at\+\_\+boundariesgrid\+\_\+nn\+\_\+2d}} (at\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Neumann 型境界条件の適用(実空間での評価, 2 次元配列用) 両境界で勾配の値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{namespaceat__module_a2d4ddfb5152b0885c098bc23d8b58248}{at\+\_\+boundariesgrid\+\_\+nn\+\_\+1d}} (t\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Neumann 型境界条件の適用(実空間での評価, 1 次元配列用) 両境界で勾配の値を与える. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
real(dp), dimension(\+:), allocatable, save, public \mbox{\hyperlink{namespaceat__module_a4a9518475600043a3acd9204812b6735}{g\+\_\+x}}
\begin{DoxyCompactList}\small\item\em 格子点座標(\+X)を格納した 1 次元配列 \end{DoxyCompactList}\item 
real(dp), dimension(\+:), allocatable, save, public \mbox{\hyperlink{namespaceat__module_a2f9dd733cc468808f9356456e4b1c3b4}{g\+\_\+x\+\_\+weight}}
\begin{DoxyCompactList}\small\item\em 重み座標を格納した 1 次元配列 \end{DoxyCompactList}\item 
integer(8), dimension(\+:), allocatable \mbox{\hyperlink{namespaceat__module_af839ef9b62340f10dd5f8ef936a88043}{it}}
\item 
real(dp), dimension(\+:), allocatable \mbox{\hyperlink{namespaceat__module_a486d20daa4d23e334d369505e15f77e8}{t}}
\item 
integer(8), save \mbox{\hyperlink{namespaceat__module_a8b21e0caf645222c31409b96aaf60757}{im}}
\begin{DoxyCompactList}\small\item\em 格子点数 \end{DoxyCompactList}\item 
integer(8), save \mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}
\begin{DoxyCompactList}\small\item\em 切断波数 \end{DoxyCompactList}\item 
real(dp), save \mbox{\hyperlink{namespaceat__module_aabda03d57289f6b643ff1a46f54f0868}{xl}}
\begin{DoxyCompactList}\small\item\em 領域の大きさ \end{DoxyCompactList}\item 
logical, save \mbox{\hyperlink{namespaceat__module_adc28b06f129e1ffebbffe6727df608e1}{at\+\_\+initialize}} = .false.
\begin{DoxyCompactList}\small\item\em 初期化スイッチ \end{DoxyCompactList}\item 
logical, save \mbox{\hyperlink{namespaceat__module_a6be6b0f502dddb0c09c8bcda283d09e7}{at\+\_\+boundariestau\+\_\+dd\+\_\+first}} = .true.
\begin{DoxyCompactList}\small\item\em 境界条件ルーチン初期化スイッチ \end{DoxyCompactList}\item 
logical, save \mbox{\hyperlink{namespaceat__module_aea7b4a56798334da04e79c2b952b157b}{at\+\_\+boundariestau\+\_\+dn\+\_\+first}} = .true.
\begin{DoxyCompactList}\small\item\em 境界条件ルーチン初期化スイッチ \end{DoxyCompactList}\item 
logical, save \mbox{\hyperlink{namespaceat__module_a0b2a6180a68b4ff9896d3dc7ced67a9b}{at\+\_\+boundariestau\+\_\+nd\+\_\+first}} = .true.
\begin{DoxyCompactList}\small\item\em 境界条件ルーチン初期化スイッチ \end{DoxyCompactList}\item 
logical, save \mbox{\hyperlink{namespaceat__module_a54f32a3c0528c93bc435c9d63c0be97d}{at\+\_\+boundariestau\+\_\+nn\+\_\+first}} = .true.
\begin{DoxyCompactList}\small\item\em 境界条件ルーチン初期化スイッチ \end{DoxyCompactList}\item 
logical, save \mbox{\hyperlink{namespaceat__module_a8af132a26edbc8ce54293ef4675c4809}{at\+\_\+boundariesgrid\+\_\+dd\+\_\+first}} = .true.
\begin{DoxyCompactList}\small\item\em 境界条件ルーチン初期化スイッチ \end{DoxyCompactList}\item 
logical, save \mbox{\hyperlink{namespaceat__module_a43a31d43ab915dc807f96acf8ca7007e}{at\+\_\+boundariesgrid\+\_\+dn\+\_\+first}} = .true.
\begin{DoxyCompactList}\small\item\em 境界条件ルーチン初期化スイッチ \end{DoxyCompactList}\item 
logical, save \mbox{\hyperlink{namespaceat__module_aae78fb232b5865c4e9acb161644785de}{at\+\_\+boundariesgrid\+\_\+nd\+\_\+first}} = .true.
\begin{DoxyCompactList}\small\item\em 境界条件ルーチン初期化スイッチ \end{DoxyCompactList}\item 
logical, save \mbox{\hyperlink{namespaceat__module_ad72bcdaa908e79b24dada90210a6fd9b}{at\+\_\+boundariesgrid\+\_\+nn\+\_\+first}} = .true.
\begin{DoxyCompactList}\small\item\em 境界条件ルーチン初期化スイッチ \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{namespaceat__module_aa8f7afadb5910577296ebdce343d9916}\label{namespaceat__module_aa8f7afadb5910577296ebdce343d9916}} 
\index{at\_module@{at\_module}!a\_avr\_ag@{a\_avr\_ag}}
\index{a\_avr\_ag@{a\_avr\_ag}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{a\_avr\_ag()}{a\_avr\_ag()}}
{\footnotesize\ttfamily real(dp) function, dimension(size(ag,1)), public at\+\_\+module\+::a\+\_\+avr\+\_\+ag (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(in)}]{ag }\end{DoxyParamCaption})}



1 次元格子点データが並んだ 2 次元配列の平均 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em ag} & 入力格子点データ \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
平均したデータ 
\end{DoxyReturn}


Definition at line 517 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{517 }
\DoxyCodeLine{518 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)}, \textcolor{keywordtype}{intent(in)}   :: ag}
\DoxyCodeLine{520 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(ag,1))}         :: a\_Avr\_ag}
\DoxyCodeLine{521     a\_avr\_ag = a\_int\_ag(ag)/sum(g\_x\_weight)}
\DoxyCodeLine{522 }

\end{DoxyCode}


References a\+\_\+int\+\_\+ag(), and g\+\_\+x\+\_\+weight.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=327pt]{namespaceat__module_aa8f7afadb5910577296ebdce343d9916_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a00db89b712c0c640080ce42854eefdf0}\label{namespaceat__module_a00db89b712c0c640080ce42854eefdf0}} 
\index{at\_module@{at\_module}!a\_int\_ag@{a\_int\_ag}}
\index{a\_int\_ag@{a\_int\_ag}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{a\_int\_ag()}{a\_int\_ag()}}
{\footnotesize\ttfamily real(dp) function, dimension(size(ag,1)), public at\+\_\+module\+::a\+\_\+int\+\_\+ag (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(in)}]{ag }\end{DoxyParamCaption})}



1 次元格子点データが並んだ 2 次元配列の積分 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em ag} & 入力格子点データ \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
積分したデータ 
\end{DoxyReturn}


Definition at line 483 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{483 }
\DoxyCodeLine{484 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)}, \textcolor{keywordtype}{intent(in)}     :: ag}
\DoxyCodeLine{486 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(ag,1))}           :: a\_Int\_ag}
\DoxyCodeLine{487 }
\DoxyCodeLine{488     \textcolor{keywordtype}{integer(8)} :: i}
\DoxyCodeLine{489 }
\DoxyCodeLine{490     \textcolor{keywordflow}{if} ( \textcolor{keyword}{size}(ag,2) < im+1 ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{491        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'ae\_ag'}, \&}
\DoxyCodeLine{492             \textcolor{stringliteral}{'The Grid points of input data too small.'})}
\DoxyCodeLine{493     \textcolor{keywordflow}{elseif} ( \textcolor{keyword}{size}(ag,2) > im+1 ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{494        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'ae\_ag'}, \&}
\DoxyCodeLine{495             \textcolor{stringliteral}{'The Grid points of input data too large.'})}
\DoxyCodeLine{496 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{497 }
\DoxyCodeLine{498     a\_int\_ag = 0.0d0}
\DoxyCodeLine{499     \textcolor{keywordflow}{do} i=0,im}
\DoxyCodeLine{500        a\_int\_ag(:) = a\_int\_ag(:) + ag(:,i)*g\_x\_weight(i)}
\DoxyCodeLine{501 \textcolor{keywordflow}{    enddo}}

\end{DoxyCode}


References g\+\_\+x\+\_\+weight, and im.



Referenced by a\+\_\+avr\+\_\+ag().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=327pt]{namespaceat__module_a00db89b712c0c640080ce42854eefdf0_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a41ad8e503511fa7a7377f0319f9ab963}\label{namespaceat__module_a41ad8e503511fa7a7377f0319f9ab963}} 
\index{at\_module@{at\_module}!a\_interpolate\_at@{a\_interpolate\_at}}
\index{a\_interpolate\_at@{a\_interpolate\_at}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{a\_interpolate\_at()}{a\_interpolate\_at()}}
{\footnotesize\ttfamily real(dp) function, dimension(size(at\+\_\+data,1)), public at\+\_\+module\+::a\+\_\+interpolate\+\_\+at (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(in)}]{at\+\_\+data,  }\item[{real(dp), intent(in)}]{xval }\end{DoxyParamCaption})}



1 次元データの並んだ 2次元配列の補間 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em at\+\_\+data} & 入力チェビシェフデータ \\
\hline
\mbox{\texttt{ in}}  & {\em xval} & 補間する点の座標 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
補間した結果の値 
\end{DoxyReturn}


Definition at line 576 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{576 }
\DoxyCodeLine{577 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)}, \textcolor{keywordtype}{intent(in)} :: at\_data}
\DoxyCodeLine{579 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{intent(in)}                  :: xval}
\DoxyCodeLine{581 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1))}  :: a\_Interpolate\_at}
\DoxyCodeLine{582 }
\DoxyCodeLine{583 }
\DoxyCodeLine{584     \textcolor{keywordtype}{integer} :: kmax}
\DoxyCodeLine{585     \textcolor{comment}{! 入力配列の最大次数}}
\DoxyCodeLine{586 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1))}  :: y2, y1, y0}
\DoxyCodeLine{587 \textcolor{keywordtype}{    real}(DP)                              :: x}
\DoxyCodeLine{588     \textcolor{comment}{! Crenshow's reccurence formula 計算用変数}}
\DoxyCodeLine{589     \textcolor{keywordtype}{integer} :: k}
\DoxyCodeLine{590     \textcolor{comment}{! DO 文変数}}
\DoxyCodeLine{591 }
\DoxyCodeLine{592     kmax = \textcolor{keyword}{size}(at\_data,2)-\/1}
\DoxyCodeLine{593 }
\DoxyCodeLine{594     \textcolor{comment}{! x =(xval -\/(g\_X(0)+g\_X(im))/2 )/(g\_X(0)-\/g\_X(im))*2}}
\DoxyCodeLine{595     x =(xval -\/(g\_x(0)+g\_x(im))*0.5d0 )/(g\_x(0)-\/g\_x(im))*2.0d0}
\DoxyCodeLine{596 }
\DoxyCodeLine{597     y2 = 0.0d0}
\DoxyCodeLine{598     y1 = 0.0d0}
\DoxyCodeLine{599     \textcolor{keywordflow}{do} k=kmax,1,-\/1}
\DoxyCodeLine{600        y0 = 2.0d0*x*y1 -\/ y2 + at\_data(:,k)}
\DoxyCodeLine{601        y2 = y1}
\DoxyCodeLine{602        y1 = y0}
\DoxyCodeLine{603 \textcolor{keywordflow}{    enddo}}
\DoxyCodeLine{604 }
\DoxyCodeLine{605     \textcolor{comment}{! a\_Interpolate\_at = -\/ y2 + x*y1 + at\_data(:,0)/2}}
\DoxyCodeLine{606     a\_interpolate\_at = -\/ y2 + x*y1 + at\_data(:,0)*0.5d0}
\DoxyCodeLine{607     \textcolor{keywordflow}{if} ( kmax == int(im) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{608        a\_interpolate\_at = a\_interpolate\_at \&}
\DoxyCodeLine{609             \& -\/ at\_data(:,kmax)/2.0d0*cos(kmax*acos(x))}
\DoxyCodeLine{610 \textcolor{keywordflow}{    endif}}

\end{DoxyCode}


References g\+\_\+x, and im.



Referenced by ut\+\_\+mpi\+\_\+module\+::interpolate\+\_\+array000\+\_\+ut(), and et\+\_\+module\+::interpolate\+\_\+et().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a41ad8e503511fa7a7377f0319f9ab963_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a216c24fc50973ad591948dfd8193e029}\label{namespaceat__module_a216c24fc50973ad591948dfd8193e029}} 
\index{at\_module@{at\_module}!ag\_at@{ag\_at}}
\index{ag\_at@{ag\_at}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{ag\_at()}{ag\_at()}}
{\footnotesize\ttfamily real(dp) function, dimension(size(at\+\_\+data,1),0\+:\mbox{\hyperlink{namespaceat__module_a8b21e0caf645222c31409b96aaf60757}{im}}), public at\+\_\+module\+::ag\+\_\+at (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(in)}]{at\+\_\+data }\end{DoxyParamCaption})}



チェビシェフデータから格子データへ変換する(2 次元配列用). 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em at\+\_\+data} & チェビシェフデータ \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
格子点データ 
\end{DoxyReturn}


Definition at line 328 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{328 }
\DoxyCodeLine{329 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)}, \textcolor{keywordtype}{intent(in)}     :: at\_data}
\DoxyCodeLine{331 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1),0:im)} :: ag\_at}
\DoxyCodeLine{332 }
\DoxyCodeLine{333 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1),0:2*im-\/1)} :: y}
\DoxyCodeLine{334     \textcolor{keywordtype}{integer(8)} :: nm, k}
\DoxyCodeLine{335 }
\DoxyCodeLine{336     nm=\textcolor{keyword}{size}(at\_data,1)}
\DoxyCodeLine{337 }
\DoxyCodeLine{338     y = 0.0d0}
\DoxyCodeLine{339     y(:,0) = at\_data(:,0)}
\DoxyCodeLine{340     \textcolor{keywordflow}{do} k=1,min(km,im-\/1)}
\DoxyCodeLine{341        y(:,2*k)   = at\_data(:,k)}
\DoxyCodeLine{342        y(:,2*k+1) = 0.0d0}
\DoxyCodeLine{343 \textcolor{keywordflow}{    enddo}}
\DoxyCodeLine{344     \textcolor{keywordflow}{if} ( km == im ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{345        y(:,1) = at\_data(:,km)}
\DoxyCodeLine{346 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{347 }
\DoxyCodeLine{348     \textcolor{keyword}{call }fxrtba(nm,2*im,y,it,t)}
\DoxyCodeLine{349     \textcolor{comment}{! ag\_at = y(:,0:im)/2}}
\DoxyCodeLine{350     ag\_at = y(:,0:im)*0.50d0}
\DoxyCodeLine{351 }

\end{DoxyCode}


References im, it, km, and t.



Referenced by at\+\_\+boundariesgrid\+\_\+dd\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+dn\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+nd\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+nn\+\_\+2d(), at\+\_\+boundariestau\+\_\+dd\+\_\+2d(), at\+\_\+boundariestau\+\_\+dn\+\_\+2d(), at\+\_\+boundariestau\+\_\+nd\+\_\+2d(), at\+\_\+boundariestau\+\_\+nn\+\_\+2d(), and g\+\_\+t().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a216c24fc50973ad591948dfd8193e029_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_aa4c5fab5be3b29b2ed6f52a0a45d9281}\label{namespaceat__module_aa4c5fab5be3b29b2ed6f52a0a45d9281}} 
\index{at\_module@{at\_module}!at\_ag@{at\_ag}}
\index{at\_ag@{at\_ag}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_ag()}{at\_ag()}}
{\footnotesize\ttfamily real(dp) function, dimension(size(ag\+\_\+data,1),0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), public at\+\_\+module\+::at\+\_\+ag (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(in)}]{ag\+\_\+data }\end{DoxyParamCaption})}



格子データからチェビシェフデータへ変換する(2 次元配列用). 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em ag\+\_\+data} & 格子点データ \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
チェビシェフデータ 
\end{DoxyReturn}


Definition at line 374 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{374 }
\DoxyCodeLine{375 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)}, \textcolor{keywordtype}{intent(in)}     :: ag\_data}
\DoxyCodeLine{377 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(ag\_data,1),0:km)} :: at\_ag}
\DoxyCodeLine{378 }
\DoxyCodeLine{379 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(ag\_data,1),0:2*im-\/1)} :: y}
\DoxyCodeLine{380     \textcolor{keywordtype}{integer(8)} :: nm, k}
\DoxyCodeLine{381 }
\DoxyCodeLine{382     nm=\textcolor{keyword}{size}(ag\_data,1)}
\DoxyCodeLine{383 }
\DoxyCodeLine{384     y(:,0) = ag\_data(:,0)}
\DoxyCodeLine{385     \textcolor{keywordflow}{do} k=1,im-\/1}
\DoxyCodeLine{386        y(:,2*k)   = ag\_data(:,k)}
\DoxyCodeLine{387        y(:,2*k+1) = 0.0d0}
\DoxyCodeLine{388 \textcolor{keywordflow}{    enddo}}
\DoxyCodeLine{389     y(:,1) = ag\_data(:,im)}
\DoxyCodeLine{390 }
\DoxyCodeLine{391     \textcolor{keyword}{call }fxrtba(nm,2*im,y,it,t)}
\DoxyCodeLine{392     at\_ag = y(:,0:km)/im}
\DoxyCodeLine{393 }

\end{DoxyCode}


References im, it, km, and t.



Referenced by t\+\_\+g().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=289pt]{namespaceat__module_aa4c5fab5be3b29b2ed6f52a0a45d9281_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a88f9892380f46b0ea60921e6299a4cd6}\label{namespaceat__module_a88f9892380f46b0ea60921e6299a4cd6}} 
\index{at\_module@{at\_module}!at\_boundaries@{at\_boundaries}}
\index{at\_boundaries@{at\_boundaries}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundaries()}{at\_boundaries()}}
{\footnotesize\ttfamily subroutine, public at\+\_\+module\+::at\+\_\+boundaries (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,\+:), intent(inout)}]{at\+\_\+data,  }\item[{character(len=2), intent(in), optional}]{cond,  }\item[{real(dp), dimension(\+:,\+:), intent(in), optional}]{values }\end{DoxyParamCaption})}



境界条件の適用(タウ法, 2 次元配列用) 

境界条件と両境界での値をオプションで与える. デフォルトは DD, values = 0 
\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em at\+\_\+data} & 境界条件を適用するチェビシェフデータ(m,0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em cond} & 境界条件.
\begin{DoxyItemize}
\item DD \+: 両端ディリクレ
\item DN \+: 上端ディリクレ, 下端ノイマン
\item ND \+: 上端ノイマン, 下端ディリクレ
\item NN \+: 両端ノイマン 
\end{DoxyItemize}\\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(m,2) \\
\hline
\end{DoxyParams}


Definition at line 619 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{619 }
\DoxyCodeLine{620 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{intent(INOUT)}                  :: at\_data(:,:)}
\DoxyCodeLine{626     \textcolor{keywordtype}{character(len=2)}, \textcolor{keywordtype}{intent(IN)}, \textcolor{keywordtype}{optional}  :: cond}
\DoxyCodeLine{628 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{629 }
\DoxyCodeLine{630 \textcolor{keywordtype}{    real}(DP)          :: BCvalues(size(at\_data),2)}
\DoxyCodeLine{631     \textcolor{keywordtype}{character(len=2)} :: BC}
\DoxyCodeLine{632 }
\DoxyCodeLine{633     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(cond) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{634        bc = cond}
\DoxyCodeLine{635     \textcolor{keywordflow}{else}}
\DoxyCodeLine{636        bc = \textcolor{stringliteral}{'DD'}}
\DoxyCodeLine{637 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{638 }
\DoxyCodeLine{639     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(values) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{640        bcvalues = values}
\DoxyCodeLine{641     \textcolor{keywordflow}{else}}
\DoxyCodeLine{642        bcvalues = 0.0d0}
\DoxyCodeLine{643 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{644     \textcolor{keywordflow}{select case}(bc)}
\DoxyCodeLine{645     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'DD'})}
\DoxyCodeLine{646       \textcolor{keyword}{call }at\_boundaries\_dd(at\_data,bcvalues)}
\DoxyCodeLine{647     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'DN'})}
\DoxyCodeLine{648       \textcolor{keyword}{call }at\_boundaries\_dn(at\_data,bcvalues)}
\DoxyCodeLine{649     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'ND'})}
\DoxyCodeLine{650       \textcolor{keyword}{call }at\_boundaries\_nd(at\_data,bcvalues)}
\DoxyCodeLine{651     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'NN'})}
\DoxyCodeLine{652       \textcolor{keyword}{call }at\_boundaries\_nn(at\_data,bcvalues)}
\DoxyCodeLine{653 \textcolor{keywordflow}{    case default}}
\DoxyCodeLine{654       \textcolor{keyword}{call }at\_boundaries\_dd(at\_data,bcvalues)}
\DoxyCodeLine{655 \textcolor{keywordflow}{    end select}}
\DoxyCodeLine{656 }

\end{DoxyCode}
\mbox{\Hypertarget{namespaceat__module_a8c785e4ee49d395ecb5300b80b62bc3d}\label{namespaceat__module_a8c785e4ee49d395ecb5300b80b62bc3d}} 
\index{at\_module@{at\_module}!at\_boundariesgrid@{at\_boundariesgrid}}
\index{at\_boundariesgrid@{at\_boundariesgrid}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid()}{at\_boundariesgrid()}}
{\footnotesize\ttfamily subroutine, public at\+\_\+module\+::at\+\_\+boundariesgrid (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,\+:), intent(inout)}]{at\+\_\+data,  }\item[{character(len=2), intent(in), optional}]{cond,  }\item[{real(dp), dimension(\+:,\+:), intent(in), optional}]{values }\end{DoxyParamCaption})}



境界条件の適用(実空間での評価, 2 次元配列用) 境界条件と両境界での値をオプションで与える. デフォルトは DD, values = 0 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em at\+\_\+data} & 境界条件を適用するチェビシェフデータ(m,0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em cond} & 境界条件.
\begin{DoxyItemize}
\item DD \+: 両端ディリクレ
\item DN \+: 上端ディリクレ, 下端ノイマン
\item ND \+: 上端ノイマン, 下端ディリクレ
\item NN \+: 両端ノイマン 
\end{DoxyItemize}\\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(m,2) \\
\hline
\end{DoxyParams}


Definition at line 711 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{711 }
\DoxyCodeLine{712 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{intent(INOUT)}                  :: at\_data(:,:)}
\DoxyCodeLine{718     \textcolor{keywordtype}{character(len=2)}, \textcolor{keywordtype}{intent(IN)}, \textcolor{keywordtype}{optional}  :: cond}
\DoxyCodeLine{720 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{721 }
\DoxyCodeLine{722 \textcolor{keywordtype}{    real}(DP)          :: BCvalues(size(at\_data),2)}
\DoxyCodeLine{723     \textcolor{keywordtype}{character(len=2)} :: BC}
\DoxyCodeLine{724 }
\DoxyCodeLine{725     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(cond) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{726        bc = cond}
\DoxyCodeLine{727     \textcolor{keywordflow}{else}}
\DoxyCodeLine{728        bc = \textcolor{stringliteral}{'DD'}}
\DoxyCodeLine{729 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{730 }
\DoxyCodeLine{731     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(values) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{732        bcvalues = values}
\DoxyCodeLine{733     \textcolor{keywordflow}{else}}
\DoxyCodeLine{734        bcvalues = 0.0d0}
\DoxyCodeLine{735 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{736 }
\DoxyCodeLine{737     \textcolor{keywordflow}{select case}(bc)}
\DoxyCodeLine{738     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'DD'})}
\DoxyCodeLine{739       \textcolor{keyword}{call }at\_boundariesgrid\_dd(at\_data,bcvalues)}
\DoxyCodeLine{740     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'DN'})}
\DoxyCodeLine{741       \textcolor{keyword}{call }at\_boundariesgrid\_dn(at\_data,bcvalues)}
\DoxyCodeLine{742     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'ND'})}
\DoxyCodeLine{743       \textcolor{keyword}{call }at\_boundariesgrid\_nd(at\_data,bcvalues)}
\DoxyCodeLine{744     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'NN'})}
\DoxyCodeLine{745       \textcolor{keyword}{call }at\_boundariesgrid\_nn(at\_data,bcvalues)}
\DoxyCodeLine{746 \textcolor{keywordflow}{    end select}}
\DoxyCodeLine{747 }

\end{DoxyCode}
\mbox{\Hypertarget{namespaceat__module_a0c526e571aee36ab9d6e2d529c9762fc}\label{namespaceat__module_a0c526e571aee36ab9d6e2d529c9762fc}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_dd\_1d@{at\_boundariesgrid\_dd\_1d}}
\index{at\_boundariesgrid\_dd\_1d@{at\_boundariesgrid\_dd\_1d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_dd\_1d()}{at\_boundariesgrid\_dd\_1d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+dd\+\_\+1d (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), intent(inout)}]{t\+\_\+data,  }\item[{real(dp), dimension(2), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Dirichlet 型境界条件の適用(実空間での評価, 1 次元配列用) 両境界での値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em t\+\_\+data} & 境界条件を適用するチェビシェフデータ(0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値 \\
\hline
\end{DoxyParams}


Definition at line 1245 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1245 }
\DoxyCodeLine{1246 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km)},\textcolor{keywordtype}{intent(inout)}       :: t\_data}
\DoxyCodeLine{1248 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(2)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1249 }
\DoxyCodeLine{1250 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,0:km)}                   :: at\_work}
\DoxyCodeLine{1251 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,2)}                      :: vwork           \textcolor{comment}{! 境界値}}
\DoxyCodeLine{1252 }
\DoxyCodeLine{1253     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1254        vwork(1,1)=0.0d0}
\DoxyCodeLine{1255        vwork(1,2)=0.0d0}
\DoxyCodeLine{1256     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1257        vwork(1,:) = values}
\DoxyCodeLine{1258 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1259 }
\DoxyCodeLine{1260     at\_work(1,:)=t\_data}
\DoxyCodeLine{1261     \textcolor{keyword}{call }at\_boundariesgrid\_dd\_2d(at\_work,vwork)}
\DoxyCodeLine{1262     t\_data=at\_work(1,:)}
\DoxyCodeLine{1263 }

\end{DoxyCode}


References at\+\_\+boundariesgrid\+\_\+dd\+\_\+2d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a0c526e571aee36ab9d6e2d529c9762fc_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a7ee4c70429d21bc5489f77aa985c89a8}\label{namespaceat__module_a7ee4c70429d21bc5489f77aa985c89a8}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_dd\_2d@{at\_boundariesgrid\_dd\_2d}}
\index{at\_boundariesgrid\_dd\_2d@{at\_boundariesgrid\_dd\_2d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_dd\_2d()}{at\_boundariesgrid\_dd\_2d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+dd\+\_\+2d (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(inout)}]{at\+\_\+data,  }\item[{real(dp), dimension(\+:,\+:), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Dirichlet 型境界条件の適用(実空間での評価, 2 次元配列用) 両境界での値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em at\+\_\+data} & 境界条件を適用するチェビシェフデータ(m,0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(m,2) \\
\hline
\end{DoxyParams}


Definition at line 1178 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1178 }
\DoxyCodeLine{1179 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)},\textcolor{keywordtype}{intent(inout)}         :: at\_data}
\DoxyCodeLine{1181 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1182 }
\DoxyCodeLine{1183 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{allocatable}     :: alu}
\DoxyCodeLine{1184     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable}        :: kp}
\DoxyCodeLine{1185 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1),0:im)} :: ag\_data}
\DoxyCodeLine{1186 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:km)}            :: tt\_data}
\DoxyCodeLine{1187 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:im)}            :: tg\_data}
\DoxyCodeLine{1188 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1))}      :: value1, value2  \textcolor{comment}{! 境界値}}
\DoxyCodeLine{1189 }
\DoxyCodeLine{1190     \textcolor{keywordtype}{integer(8)} :: k}
\DoxyCodeLine{1191     \textcolor{keywordtype}{save}       :: alu, kp}
\DoxyCodeLine{1192 }
\DoxyCodeLine{1193     \textcolor{keywordflow}{if} ( im /= km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1194        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesGrid\_DD'}, \&}
\DoxyCodeLine{1195             \textcolor{stringliteral}{'Chebyshev truncation and number of grid points should be same.'})}
\DoxyCodeLine{1196 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1197 }
\DoxyCodeLine{1198     \textcolor{keywordflow}{if} ( \textcolor{keyword}{size}(at\_data,2)-\/1 < km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1199        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesGrid\_DD'}, \&}
\DoxyCodeLine{1200             \textcolor{stringliteral}{'The Chebyshev dimension of input data too small.'})}
\DoxyCodeLine{1201     \textcolor{keywordflow}{elseif} ( \textcolor{keyword}{size}(at\_data,2)-\/1 > km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1202        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'at\_BoundariesGrid\_DD'}, \&}
\DoxyCodeLine{1203             \textcolor{stringliteral}{'The Chebyshev dimension of input data too large.'})}
\DoxyCodeLine{1204 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1205 }
\DoxyCodeLine{1206     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1207        value1=0.0d0}
\DoxyCodeLine{1208        value2=0.0d0}
\DoxyCodeLine{1209     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1210        value1 = values(:,1)}
\DoxyCodeLine{1211        value2 = values(:,2)}
\DoxyCodeLine{1212 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1213 }
\DoxyCodeLine{1214     \textcolor{keywordflow}{if} ( at\_boundariesgrid\_dd\_first ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1215        at\_boundariesgrid\_dd\_first = .false.}
\DoxyCodeLine{1216 }
\DoxyCodeLine{1217        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(alu)) \textcolor{keyword}{deallocate}(alu)}
\DoxyCodeLine{1218        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(kp)) \textcolor{keyword}{deallocate}(kp)}
\DoxyCodeLine{1219 }
\DoxyCodeLine{1220        \textcolor{keyword}{allocate}(alu(0:im,0:km),kp(0:im))}
\DoxyCodeLine{1221 }
\DoxyCodeLine{1222        tt\_data = 0.0d0}
\DoxyCodeLine{1223        \textcolor{keywordflow}{do} k=0,km}
\DoxyCodeLine{1224           tt\_data(k,k)=1.0d0}
\DoxyCodeLine{1225 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{1226        tg\_data = ag\_at(tt\_data)}
\DoxyCodeLine{1227        alu = transpose(tg\_data)}
\DoxyCodeLine{1228        \textcolor{comment}{!       alu(km-\/1,:) = tg\_data(:,0)}}
\DoxyCodeLine{1229        \textcolor{comment}{!       alu(km,:)   = tg\_data(:,im)}}
\DoxyCodeLine{1230 }
\DoxyCodeLine{1231        \textcolor{keyword}{call }ludecomp(alu,kp)}
\DoxyCodeLine{1232 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1233 }
\DoxyCodeLine{1234     ag\_data = ag\_at(at\_data)}
\DoxyCodeLine{1235     ag\_data(:,0)  = value1}
\DoxyCodeLine{1236     ag\_data(:,im) = value2}
\DoxyCodeLine{1237     at\_data = lusolve(alu,kp,ag\_data)}
\DoxyCodeLine{1238 }

\end{DoxyCode}


References ag\+\_\+at(), at\+\_\+boundariesgrid\+\_\+dd\+\_\+first, im, and km.



Referenced by at\+\_\+boundariesgrid\+\_\+dd\+\_\+1d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a7ee4c70429d21bc5489f77aa985c89a8_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a7ee4c70429d21bc5489f77aa985c89a8_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a8fb5476f4e9b4854275f2a5d643a7ceb}\label{namespaceat__module_a8fb5476f4e9b4854275f2a5d643a7ceb}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_dn\_1d@{at\_boundariesgrid\_dn\_1d}}
\index{at\_boundariesgrid\_dn\_1d@{at\_boundariesgrid\_dn\_1d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_dn\_1d()}{at\_boundariesgrid\_dn\_1d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+dn\+\_\+1d (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), intent(inout)}]{t\+\_\+data,  }\item[{real(dp), dimension(2), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Dirichlet/\+Neumann 型境界条件の適用(実空間での評価, 1 次元配列用) i=0 で値, i=im で勾配の値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em t\+\_\+data} & 境界条件を適用するチェビシェフデータ(0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値 \\
\hline
\end{DoxyParams}


Definition at line 1338 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1338 }
\DoxyCodeLine{1339 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km)},\textcolor{keywordtype}{intent(inout)}       :: t\_data}
\DoxyCodeLine{1341 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(2)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1342 }
\DoxyCodeLine{1343 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,0:km)}                   :: at\_work}
\DoxyCodeLine{1344 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,2)}                      :: vwork           \textcolor{comment}{! 境界値}}
\DoxyCodeLine{1345 }
\DoxyCodeLine{1346     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1347        vwork(1,1)=0.0d0}
\DoxyCodeLine{1348        vwork(1,2)=0.0d0}
\DoxyCodeLine{1349     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1350        vwork(1,:) = values}
\DoxyCodeLine{1351 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1352 }
\DoxyCodeLine{1353     at\_work(1,:)=t\_data}
\DoxyCodeLine{1354     \textcolor{keyword}{call }at\_boundariesgrid\_dn\_2d(at\_work,vwork)}
\DoxyCodeLine{1355     t\_data=at\_work(1,:)}
\DoxyCodeLine{1356 }

\end{DoxyCode}


References at\+\_\+boundariesgrid\+\_\+dn\+\_\+2d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a8fb5476f4e9b4854275f2a5d643a7ceb_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a14e19f3bd9a8c539b374ab57e60ebd88}\label{namespaceat__module_a14e19f3bd9a8c539b374ab57e60ebd88}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_dn\_2d@{at\_boundariesgrid\_dn\_2d}}
\index{at\_boundariesgrid\_dn\_2d@{at\_boundariesgrid\_dn\_2d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_dn\_2d()}{at\_boundariesgrid\_dn\_2d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+dn\+\_\+2d (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(inout)}]{at\+\_\+data,  }\item[{real(dp), dimension(\+:,\+:), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Dirichlet/\+Neumann 型境界条件の適用(実空間での評価, 2 次元配列用) i=0 で値, i=im で勾配の値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em at\+\_\+data} & 境界条件を適用するチェビシェフデータ(m,0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(m,2) \\
\hline
\end{DoxyParams}


Definition at line 1270 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1270 }
\DoxyCodeLine{1271 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)},\textcolor{keywordtype}{intent(inout)}         :: at\_data}
\DoxyCodeLine{1273 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1274 }
\DoxyCodeLine{1275 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{allocatable}     :: alu}
\DoxyCodeLine{1276     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable}        :: kp}
\DoxyCodeLine{1277 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1),0:im)} :: ag\_data}
\DoxyCodeLine{1278 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:km)}            :: tt\_data}
\DoxyCodeLine{1279 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:im)}            :: tg\_data}
\DoxyCodeLine{1280 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1))}      :: value1, value2  \textcolor{comment}{! 境界値}}
\DoxyCodeLine{1281 }
\DoxyCodeLine{1282     \textcolor{keywordtype}{integer(8)} :: k}
\DoxyCodeLine{1283     \textcolor{keywordtype}{save}       :: alu, kp}
\DoxyCodeLine{1284 }
\DoxyCodeLine{1285     \textcolor{keywordflow}{if} ( im /= km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1286        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesGrid\_DN'}, \&}
\DoxyCodeLine{1287             \textcolor{stringliteral}{'Chebyshev truncation and number of grid points should be same.'})}
\DoxyCodeLine{1288 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1289 }
\DoxyCodeLine{1290     \textcolor{keywordflow}{if} ( \textcolor{keyword}{size}(at\_data,2)-\/1 < km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1291        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesGrid\_DN'}, \&}
\DoxyCodeLine{1292             \textcolor{stringliteral}{'The Chebyshev dimension of input data too small.'})}
\DoxyCodeLine{1293     \textcolor{keywordflow}{elseif} ( \textcolor{keyword}{size}(at\_data,2)-\/1 > km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1294        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'at\_BoundariesGrid\_DN'}, \&}
\DoxyCodeLine{1295             \textcolor{stringliteral}{'The Chebyshev dimension of input data too large.'})}
\DoxyCodeLine{1296 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1297 }
\DoxyCodeLine{1298     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1299        value1=0.0d0}
\DoxyCodeLine{1300        value2=0.0d0}
\DoxyCodeLine{1301     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1302        value1 = values(:,1)}
\DoxyCodeLine{1303        value2 = values(:,2)}
\DoxyCodeLine{1304 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1305 }
\DoxyCodeLine{1306     \textcolor{keywordflow}{if} ( at\_boundariesgrid\_dn\_first ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1307        at\_boundariesgrid\_dn\_first = .false.}
\DoxyCodeLine{1308 }
\DoxyCodeLine{1309        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(alu)) \textcolor{keyword}{deallocate}(alu)}
\DoxyCodeLine{1310        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(kp)) \textcolor{keyword}{deallocate}(kp)}
\DoxyCodeLine{1311 }
\DoxyCodeLine{1312        \textcolor{keyword}{allocate}(alu(0:im,0:km),kp(0:im))}
\DoxyCodeLine{1313 }
\DoxyCodeLine{1314        tt\_data = 0.0d0}
\DoxyCodeLine{1315        \textcolor{keywordflow}{do} k=0,km}
\DoxyCodeLine{1316           tt\_data(k,k)=1.0d0}
\DoxyCodeLine{1317 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{1318        tg\_data = ag\_at(tt\_data)}
\DoxyCodeLine{1319        alu = transpose(tg\_data)}
\DoxyCodeLine{1320 }
\DoxyCodeLine{1321        tg\_data = ag\_at(at\_dx\_at(tt\_data))}
\DoxyCodeLine{1322        alu(im,:) = tg\_data(:,im)}
\DoxyCodeLine{1323 }
\DoxyCodeLine{1324        \textcolor{keyword}{call }ludecomp(alu,kp)}
\DoxyCodeLine{1325 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1326 }
\DoxyCodeLine{1327     ag\_data = ag\_at(at\_data)}
\DoxyCodeLine{1328     ag\_data(:,0)  = value1}
\DoxyCodeLine{1329     ag\_data(:,im) = value2}
\DoxyCodeLine{1330     at\_data = lusolve(alu,kp,ag\_data)}
\DoxyCodeLine{1331 }

\end{DoxyCode}


References ag\+\_\+at(), at\+\_\+boundariesgrid\+\_\+dn\+\_\+first, at\+\_\+dx\+\_\+at(), im, and km.



Referenced by at\+\_\+boundariesgrid\+\_\+dn\+\_\+1d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a14e19f3bd9a8c539b374ab57e60ebd88_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a14e19f3bd9a8c539b374ab57e60ebd88_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_ac40bb8bb6c60b164b64178f3f307b452}\label{namespaceat__module_ac40bb8bb6c60b164b64178f3f307b452}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_nd\_1d@{at\_boundariesgrid\_nd\_1d}}
\index{at\_boundariesgrid\_nd\_1d@{at\_boundariesgrid\_nd\_1d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_nd\_1d()}{at\_boundariesgrid\_nd\_1d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+nd\+\_\+1d (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), intent(inout)}]{t\+\_\+data,  }\item[{real(dp), dimension(2), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Neumann 型境界条件の適用(実空間での評価, 1 次元配列用) i=0 で勾配の値, i=im で値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em t\+\_\+data} & 境界条件を適用するチェビシェフデータ(0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値 \\
\hline
\end{DoxyParams}


Definition at line 1433 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1433 }
\DoxyCodeLine{1434 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km)},\textcolor{keywordtype}{intent(inout)}       :: t\_data}
\DoxyCodeLine{1436 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(2)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1437 }
\DoxyCodeLine{1438 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,0:km)}                   :: at\_work}
\DoxyCodeLine{1439 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,2)}                      :: vwork           \textcolor{comment}{! 境界値}}
\DoxyCodeLine{1440 }
\DoxyCodeLine{1441     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1442        vwork(1,1)=0.0d0}
\DoxyCodeLine{1443        vwork(1,2)=0.0d0}
\DoxyCodeLine{1444     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1445        vwork(1,:) = values}
\DoxyCodeLine{1446 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1447 }
\DoxyCodeLine{1448     at\_work(1,:)=t\_data}
\DoxyCodeLine{1449     \textcolor{keyword}{call }at\_boundariesgrid\_nd\_2d(at\_work,vwork)}
\DoxyCodeLine{1450     t\_data=at\_work(1,:)}
\DoxyCodeLine{1451 }

\end{DoxyCode}


References at\+\_\+boundariesgrid\+\_\+nd\+\_\+2d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_ac40bb8bb6c60b164b64178f3f307b452_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_adb35e1b20aa23f73976d2b772f1af3b3}\label{namespaceat__module_adb35e1b20aa23f73976d2b772f1af3b3}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_nd\_2d@{at\_boundariesgrid\_nd\_2d}}
\index{at\_boundariesgrid\_nd\_2d@{at\_boundariesgrid\_nd\_2d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_nd\_2d()}{at\_boundariesgrid\_nd\_2d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+nd\+\_\+2d (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(inout)}]{at\+\_\+data,  }\item[{real(dp), dimension(\+:,\+:), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Neumann/\+Dirichlet 型境界条件の適用(実空間での評価, 2 次元配列用) i=0 で勾配の値, i=im で値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em at\+\_\+data} & 境界条件を適用するチェビシェフデータ(m,0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(m,2) \\
\hline
\end{DoxyParams}


Definition at line 1364 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1364 }
\DoxyCodeLine{1365 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)},\textcolor{keywordtype}{intent(inout)}         :: at\_data}
\DoxyCodeLine{1367 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1368 }
\DoxyCodeLine{1369 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{allocatable}     :: alu}
\DoxyCodeLine{1370     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable}        :: kp}
\DoxyCodeLine{1371 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1),0:im)} :: ag\_data}
\DoxyCodeLine{1372 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:km)}            :: tt\_data}
\DoxyCodeLine{1373 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:im)}            :: tg\_data}
\DoxyCodeLine{1374 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1))}      :: value1, value2  \textcolor{comment}{! 境界値}}
\DoxyCodeLine{1375 }
\DoxyCodeLine{1376     \textcolor{keywordtype}{integer(8)} :: k}
\DoxyCodeLine{1377     \textcolor{keywordtype}{save}       :: alu, kp}
\DoxyCodeLine{1378 }
\DoxyCodeLine{1379     \textcolor{keywordflow}{if} ( im /= km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1380        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesGrid\_ND'}, \&}
\DoxyCodeLine{1381             \textcolor{stringliteral}{'Chebyshev truncation and number of grid points should be same.'})}
\DoxyCodeLine{1382 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1383 }
\DoxyCodeLine{1384     \textcolor{keywordflow}{if} ( \textcolor{keyword}{size}(at\_data,2)-\/1 < km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1385        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesGrid\_ND'}, \&}
\DoxyCodeLine{1386             \textcolor{stringliteral}{'The Chebyshev dimension of input data too small.'})}
\DoxyCodeLine{1387     \textcolor{keywordflow}{elseif} ( \textcolor{keyword}{size}(at\_data,2)-\/1 > km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1388        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'at\_BoundariesGrid\_DD'}, \&}
\DoxyCodeLine{1389             \textcolor{stringliteral}{'The Chebyshev dimension of input data too large.'})}
\DoxyCodeLine{1390 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1391 }
\DoxyCodeLine{1392     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1393        value1=0.0d0}
\DoxyCodeLine{1394        value2=0.0d0}
\DoxyCodeLine{1395     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1396        value1 = values(:,1)}
\DoxyCodeLine{1397        value2 = values(:,2)}
\DoxyCodeLine{1398 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1399 }
\DoxyCodeLine{1400     \textcolor{keywordflow}{if} ( at\_boundariesgrid\_nd\_first ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1401        at\_boundariesgrid\_nd\_first = .false.}
\DoxyCodeLine{1402 }
\DoxyCodeLine{1403        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(alu)) \textcolor{keyword}{deallocate}(alu)}
\DoxyCodeLine{1404        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(kp)) \textcolor{keyword}{deallocate}(kp)}
\DoxyCodeLine{1405 }
\DoxyCodeLine{1406        \textcolor{keyword}{allocate}(alu(0:im,0:km),kp(0:im))}
\DoxyCodeLine{1407 }
\DoxyCodeLine{1408        tt\_data = 0.0d0}
\DoxyCodeLine{1409        \textcolor{keywordflow}{do} k=0,km}
\DoxyCodeLine{1410           tt\_data(k,k)=1.0d0}
\DoxyCodeLine{1411 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{1412        tg\_data = ag\_at(tt\_data)}
\DoxyCodeLine{1413        alu = transpose(tg\_data)}
\DoxyCodeLine{1414 }
\DoxyCodeLine{1415        tg\_data = ag\_at(at\_dx\_at(tt\_data))}
\DoxyCodeLine{1416        alu(0,:)  = tg\_data(:,0)}
\DoxyCodeLine{1417 }
\DoxyCodeLine{1418        \textcolor{keyword}{call }ludecomp(alu,kp)}
\DoxyCodeLine{1419 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1420 }
\DoxyCodeLine{1421     ag\_data = ag\_at(at\_data)}
\DoxyCodeLine{1422     ag\_data(:,0)  = value1}
\DoxyCodeLine{1423     ag\_data(:,im) = value2}
\DoxyCodeLine{1424     at\_data = lusolve(alu,kp,ag\_data)}
\DoxyCodeLine{1425 }

\end{DoxyCode}


References ag\+\_\+at(), at\+\_\+boundariesgrid\+\_\+nd\+\_\+first, at\+\_\+dx\+\_\+at(), im, and km.



Referenced by at\+\_\+boundariesgrid\+\_\+nd\+\_\+1d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_adb35e1b20aa23f73976d2b772f1af3b3_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_adb35e1b20aa23f73976d2b772f1af3b3_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a2d4ddfb5152b0885c098bc23d8b58248}\label{namespaceat__module_a2d4ddfb5152b0885c098bc23d8b58248}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_nn\_1d@{at\_boundariesgrid\_nn\_1d}}
\index{at\_boundariesgrid\_nn\_1d@{at\_boundariesgrid\_nn\_1d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_nn\_1d()}{at\_boundariesgrid\_nn\_1d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+nn\+\_\+1d (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), intent(inout)}]{t\+\_\+data,  }\item[{real(dp), dimension(2), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Neumann 型境界条件の適用(実空間での評価, 1 次元配列用) 両境界で勾配の値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em t\+\_\+data} & 境界条件を適用するチェビシェフデータ(0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値 \\
\hline
\end{DoxyParams}


Definition at line 1530 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1530 }
\DoxyCodeLine{1531 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km)},\textcolor{keywordtype}{intent(inout)}       :: t\_data}
\DoxyCodeLine{1533 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(2)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1534 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,0:km)}                   :: at\_work}
\DoxyCodeLine{1535 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,2)}                      :: vwork  \textcolor{comment}{! 境界値}}
\DoxyCodeLine{1536 }
\DoxyCodeLine{1537     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1538        vwork(1,1)=0.0d0}
\DoxyCodeLine{1539        vwork(1,2)=0.0d0}
\DoxyCodeLine{1540     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1541        vwork(1,:) = values}
\DoxyCodeLine{1542 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1543 }
\DoxyCodeLine{1544     at\_work(1,:)=t\_data}
\DoxyCodeLine{1545     \textcolor{keyword}{call }at\_boundariesgrid\_nn\_2d(at\_work,vwork)}
\DoxyCodeLine{1546     t\_data=at\_work(1,:)}
\DoxyCodeLine{1547 }

\end{DoxyCode}


References at\+\_\+boundariesgrid\+\_\+nn\+\_\+2d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a2d4ddfb5152b0885c098bc23d8b58248_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a1f808281f41e8fbb86bade921ac6bc53}\label{namespaceat__module_a1f808281f41e8fbb86bade921ac6bc53}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_nn\_2d@{at\_boundariesgrid\_nn\_2d}}
\index{at\_boundariesgrid\_nn\_2d@{at\_boundariesgrid\_nn\_2d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_nn\_2d()}{at\_boundariesgrid\_nn\_2d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+nn\+\_\+2d (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(inout)}]{at\+\_\+data,  }\item[{real(dp), dimension(\+:,\+:), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Neumann 型境界条件の適用(実空間での評価, 2 次元配列用) 両境界で勾配の値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em at\+\_\+data} & 境界条件を適用するチェビシェフデータ(m,0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(m,2) \\
\hline
\end{DoxyParams}


Definition at line 1459 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1459 }
\DoxyCodeLine{1460 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)},\textcolor{keywordtype}{intent(inout)}         :: at\_data}
\DoxyCodeLine{1462 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1463 }
\DoxyCodeLine{1464 }
\DoxyCodeLine{1465 \textcolor{keywordtype}{    real}(DP),   \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{allocatable}     :: alu}
\DoxyCodeLine{1466     \textcolor{keywordtype}{integer},    \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable}       :: kp}
\DoxyCodeLine{1467 \textcolor{keywordtype}{    real}(DP),   \textcolor{keywordtype}{dimension(size(at\_data,1),0:im)} :: ag\_data}
\DoxyCodeLine{1468 \textcolor{keywordtype}{    real}(DP),   \textcolor{keywordtype}{dimension(0:km,0:km)}            :: tt\_data}
\DoxyCodeLine{1469 \textcolor{keywordtype}{    real}(DP),   \textcolor{keywordtype}{dimension(0:km,0:im)}            :: tg\_data}
\DoxyCodeLine{1470 \textcolor{keywordtype}{    real}(DP),   \textcolor{keywordtype}{dimension(size(at\_data,1))}      :: value1, value2  \textcolor{comment}{! 境界値}}
\DoxyCodeLine{1471 }
\DoxyCodeLine{1472     \textcolor{keywordtype}{integer(8)} :: k}
\DoxyCodeLine{1473     \textcolor{keywordtype}{save}       :: alu, kp}
\DoxyCodeLine{1474 }
\DoxyCodeLine{1475     \textcolor{keywordflow}{if} ( im /= km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1476        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesGrid\_NN'}, \&}
\DoxyCodeLine{1477             \textcolor{stringliteral}{'Chebyshev truncation and number of grid points should be same.'})}
\DoxyCodeLine{1478 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1479 }
\DoxyCodeLine{1480     \textcolor{keywordflow}{if} ( \textcolor{keyword}{size}(at\_data,2)-\/1 < km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1481        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesGrid\_NN'}, \&}
\DoxyCodeLine{1482             \textcolor{stringliteral}{'The Chebyshev dimension of input data too small.'})}
\DoxyCodeLine{1483     \textcolor{keywordflow}{elseif} ( \textcolor{keyword}{size}(at\_data,2)-\/1 > km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1484        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'at\_BoundariesGrid\_NN'}, \&}
\DoxyCodeLine{1485             \textcolor{stringliteral}{'The Chebyshev dimension of input data too large.'})}
\DoxyCodeLine{1486 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1487 }
\DoxyCodeLine{1488     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1489        value1=0.0d0}
\DoxyCodeLine{1490        value2=0.0d0}
\DoxyCodeLine{1491     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1492        value1 = values(:,1)}
\DoxyCodeLine{1493        value2 = values(:,2)}
\DoxyCodeLine{1494 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1495 }
\DoxyCodeLine{1496     \textcolor{keywordflow}{if} ( at\_boundariesgrid\_nn\_first ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1497        at\_boundariesgrid\_nn\_first = .false.}
\DoxyCodeLine{1498 }
\DoxyCodeLine{1499        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(alu)) \textcolor{keyword}{deallocate}(alu)}
\DoxyCodeLine{1500        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(kp)) \textcolor{keyword}{deallocate}(kp)}
\DoxyCodeLine{1501 }
\DoxyCodeLine{1502        \textcolor{keyword}{allocate}(alu(0:im,0:km),kp(0:im))}
\DoxyCodeLine{1503 }
\DoxyCodeLine{1504        tt\_data = 0.0d0}
\DoxyCodeLine{1505        \textcolor{keywordflow}{do} k=0,km}
\DoxyCodeLine{1506           tt\_data(k,k)=1.0d0}
\DoxyCodeLine{1507 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{1508        tg\_data = ag\_at(tt\_data)}
\DoxyCodeLine{1509        alu = transpose(tg\_data)}
\DoxyCodeLine{1510 }
\DoxyCodeLine{1511        tg\_data = ag\_at(at\_dx\_at(tt\_data))}
\DoxyCodeLine{1512        alu(0,:)  = tg\_data(:,0)}
\DoxyCodeLine{1513        alu(im,:) = tg\_data(:,im)}
\DoxyCodeLine{1514 }
\DoxyCodeLine{1515        \textcolor{keyword}{call }ludecomp(alu,kp)}
\DoxyCodeLine{1516 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1517 }
\DoxyCodeLine{1518     ag\_data = ag\_at(at\_data)}
\DoxyCodeLine{1519     ag\_data(:,0)  = value1}
\DoxyCodeLine{1520     ag\_data(:,im) = value2}
\DoxyCodeLine{1521     at\_data = lusolve(alu,kp,ag\_data)}
\DoxyCodeLine{1522 }

\end{DoxyCode}


References ag\+\_\+at(), at\+\_\+boundariesgrid\+\_\+nn\+\_\+first, at\+\_\+dx\+\_\+at(), im, and km.



Referenced by at\+\_\+boundariesgrid\+\_\+nn\+\_\+1d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a1f808281f41e8fbb86bade921ac6bc53_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a1f808281f41e8fbb86bade921ac6bc53_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_aeb4e5c221891d1c06cdd226f531e9f1d}\label{namespaceat__module_aeb4e5c221891d1c06cdd226f531e9f1d}} 
\index{at\_module@{at\_module}!at\_boundariestau\_dd\_1d@{at\_boundariestau\_dd\_1d}}
\index{at\_boundariestau\_dd\_1d@{at\_boundariestau\_dd\_1d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_dd\_1d()}{at\_boundariestau\_dd\_1d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariestau\+\_\+dd\+\_\+1d (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), intent(inout)}]{t\+\_\+data,  }\item[{real(dp), dimension(2), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Dirichlet 型境界条件の適用(タウ法, 1 次元配列用) 両境界での値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em t\+\_\+data} & 境界条件を適用するチェビシェフデータ(0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値 \\
\hline
\end{DoxyParams}


Definition at line 892 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{892 }
\DoxyCodeLine{893 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km)},\textcolor{keywordtype}{intent(inout)}       :: t\_data}
\DoxyCodeLine{895 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(2)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{896 }
\DoxyCodeLine{897 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,0:km)}                   :: at\_work}
\DoxyCodeLine{898 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,2)}                      :: vwork}
\DoxyCodeLine{899 }
\DoxyCodeLine{900     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{901        vwork(1,1)=0.0d0}
\DoxyCodeLine{902        vwork(1,2)=0.0d0}
\DoxyCodeLine{903     \textcolor{keywordflow}{else}}
\DoxyCodeLine{904        vwork(1,:) = values}
\DoxyCodeLine{905 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{906 }
\DoxyCodeLine{907     at\_work(1,:)=t\_data}
\DoxyCodeLine{908     \textcolor{keyword}{call }at\_boundariestau\_dd\_2d(at\_work,vwork)}
\DoxyCodeLine{909     t\_data=at\_work(1,:)}
\DoxyCodeLine{910 }

\end{DoxyCode}


References at\+\_\+boundariestau\+\_\+dd\+\_\+2d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_aeb4e5c221891d1c06cdd226f531e9f1d_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a091ceaec11da9cb0cf1db9da2194b903}\label{namespaceat__module_a091ceaec11da9cb0cf1db9da2194b903}} 
\index{at\_module@{at\_module}!at\_boundariestau\_dd\_2d@{at\_boundariestau\_dd\_2d}}
\index{at\_boundariestau\_dd\_2d@{at\_boundariestau\_dd\_2d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_dd\_2d()}{at\_boundariestau\_dd\_2d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariestau\+\_\+dd\+\_\+2d (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(inout)}]{at\+\_\+data,  }\item[{real(dp), dimension(\+:,\+:), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Dirichlet 型境界条件の適用(タウ法, 2 次元配列用) 両境界での値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em at\+\_\+data} & 境界条件を適用するチェビシェフデータ(m,0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(m,2) \\
\hline
\end{DoxyParams}


Definition at line 831 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{831 }
\DoxyCodeLine{832 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)},\textcolor{keywordtype}{intent(inout)}         :: at\_data}
\DoxyCodeLine{834 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{835 }
\DoxyCodeLine{836 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{allocatable}  :: alu}
\DoxyCodeLine{837     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable}     :: kp}
\DoxyCodeLine{838 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:km)}         :: tt\_data}
\DoxyCodeLine{839 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:im)}         :: tg\_data}
\DoxyCodeLine{840 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1))}   :: value1, value2  \textcolor{comment}{! 境界値}}
\DoxyCodeLine{841 }
\DoxyCodeLine{842     \textcolor{keywordtype}{integer(8)} :: k}
\DoxyCodeLine{843     \textcolor{keywordtype}{save}       :: alu, kp}
\DoxyCodeLine{844 }
\DoxyCodeLine{845     \textcolor{keywordflow}{if} ( \textcolor{keyword}{size}(at\_data,2)-\/1 < km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{846        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesTau\_DD'}, \&}
\DoxyCodeLine{847             \textcolor{stringliteral}{'The Chebyshev dimension of input data too small.'})}
\DoxyCodeLine{848     \textcolor{keywordflow}{elseif} ( \textcolor{keyword}{size}(at\_data,2)-\/1 > km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{849        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'at\_BoundariesTau\_DD'}, \&}
\DoxyCodeLine{850             \textcolor{stringliteral}{'The Chebyshev dimension of input data too large.'})}
\DoxyCodeLine{851 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{852 }
\DoxyCodeLine{853     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{854        value1=0.0d0}
\DoxyCodeLine{855        value2=0.0d0}
\DoxyCodeLine{856     \textcolor{keywordflow}{else}}
\DoxyCodeLine{857        value1 = values(:,1)}
\DoxyCodeLine{858        value2 = values(:,2)}
\DoxyCodeLine{859 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{860 }
\DoxyCodeLine{861     \textcolor{keywordflow}{if} ( at\_boundariestau\_dd\_first ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{862        at\_boundariestau\_dd\_first = .false.}
\DoxyCodeLine{863 }
\DoxyCodeLine{864        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(alu)) \textcolor{keyword}{deallocate}(alu)}
\DoxyCodeLine{865        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(kp))  \textcolor{keyword}{deallocate}(kp)}
\DoxyCodeLine{866 }
\DoxyCodeLine{867        \textcolor{keyword}{allocate}(alu(0:km,0:km),kp(0:km))}
\DoxyCodeLine{868 }
\DoxyCodeLine{869        tt\_data=0.0d0}
\DoxyCodeLine{870        \textcolor{keywordflow}{do} k=0,km}
\DoxyCodeLine{871           tt\_data(k,k)=1.0d0}
\DoxyCodeLine{872 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{873        alu = tt\_data}
\DoxyCodeLine{874 }
\DoxyCodeLine{875        tg\_data = ag\_at(tt\_data)}
\DoxyCodeLine{876        alu(km-\/1,:) = tg\_data(:,0)}
\DoxyCodeLine{877        alu(km,:)   = tg\_data(:,im)}
\DoxyCodeLine{878 }
\DoxyCodeLine{879        \textcolor{keyword}{call }ludecomp(alu,kp)}
\DoxyCodeLine{880 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{881 }
\DoxyCodeLine{882     at\_data(:,km-\/1) = value1}
\DoxyCodeLine{883     at\_data(:,km)   = value2}
\DoxyCodeLine{884     at\_data = lusolve(alu,kp,at\_data)}
\DoxyCodeLine{885 }

\end{DoxyCode}


References ag\+\_\+at(), at\+\_\+boundariestau\+\_\+dd\+\_\+first, im, and km.



Referenced by at\+\_\+boundariestau\+\_\+dd\+\_\+1d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a091ceaec11da9cb0cf1db9da2194b903_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a091ceaec11da9cb0cf1db9da2194b903_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a4ec60a2bdb81b258d65035c4b12eff17}\label{namespaceat__module_a4ec60a2bdb81b258d65035c4b12eff17}} 
\index{at\_module@{at\_module}!at\_boundariestau\_dn\_1d@{at\_boundariestau\_dn\_1d}}
\index{at\_boundariestau\_dn\_1d@{at\_boundariestau\_dn\_1d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_dn\_1d()}{at\_boundariestau\_dn\_1d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariestau\+\_\+dn\+\_\+1d (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), intent(inout)}]{t\+\_\+data,  }\item[{real(dp), dimension(2), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Dirichlet/\+Neumann 型境界条件の適用(タウ法, 1 次元配列用) i=0 で値, i=im で勾配の値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em t\+\_\+data} & 境界条件を適用するチェビシェフデータ(0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値 \\
\hline
\end{DoxyParams}


Definition at line 980 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{980 }
\DoxyCodeLine{981 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km)},\textcolor{keywordtype}{intent(inout)}       :: t\_data}
\DoxyCodeLine{983 }
\DoxyCodeLine{984 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(2)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{985 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,0:km)}                   :: at\_work}
\DoxyCodeLine{986 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,2)}                      :: vwork}
\DoxyCodeLine{987 }
\DoxyCodeLine{988     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{989        vwork(1,1)=0.0d0}
\DoxyCodeLine{990        vwork(1,2)=0.0d0}
\DoxyCodeLine{991     \textcolor{keywordflow}{else}}
\DoxyCodeLine{992        vwork(1,:) = values}
\DoxyCodeLine{993 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{994 }
\DoxyCodeLine{995     at\_work(1,:)=t\_data}
\DoxyCodeLine{996     \textcolor{keyword}{call }at\_boundariestau\_dn\_2d(at\_work,vwork)}
\DoxyCodeLine{997     t\_data=at\_work(1,:)}
\DoxyCodeLine{998 }

\end{DoxyCode}


References at\+\_\+boundariestau\+\_\+dn\+\_\+2d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a4ec60a2bdb81b258d65035c4b12eff17_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a631b7c7b0e5cc304e05c272dd1cec93e}\label{namespaceat__module_a631b7c7b0e5cc304e05c272dd1cec93e}} 
\index{at\_module@{at\_module}!at\_boundariestau\_dn\_2d@{at\_boundariestau\_dn\_2d}}
\index{at\_boundariestau\_dn\_2d@{at\_boundariestau\_dn\_2d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_dn\_2d()}{at\_boundariestau\_dn\_2d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariestau\+\_\+dn\+\_\+2d (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(inout)}]{at\+\_\+data,  }\item[{real(dp), dimension(\+:,\+:), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Dirichlet/\+Neumann 型境界条件の適用(タウ法, 2 次元配列用) i=0 で値, i=im で勾配の値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em at\+\_\+data} & 境界条件を適用するチェビシェフデータ(m,0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(m,2) \\
\hline
\end{DoxyParams}


Definition at line 918 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{918 }
\DoxyCodeLine{919 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)},\textcolor{keywordtype}{intent(inout)}         :: at\_data}
\DoxyCodeLine{921 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{922 }
\DoxyCodeLine{923 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{allocatable}  :: alu}
\DoxyCodeLine{924     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable}     :: kp}
\DoxyCodeLine{925 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:km)}         :: tt\_data}
\DoxyCodeLine{926 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:im)}         :: tg\_data}
\DoxyCodeLine{927 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1))}   :: value1, value2}
\DoxyCodeLine{928 }
\DoxyCodeLine{929     \textcolor{keywordtype}{integer(8)} :: k}
\DoxyCodeLine{930     \textcolor{keywordtype}{save}       :: alu, kp}
\DoxyCodeLine{931 }
\DoxyCodeLine{932     \textcolor{keywordflow}{if} ( \textcolor{keyword}{size}(at\_data,2)-\/1 < km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{933        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesTau\_DN'}, \&}
\DoxyCodeLine{934             \textcolor{stringliteral}{'The Chebyshev dimension of input data too small.'})}
\DoxyCodeLine{935     \textcolor{keywordflow}{elseif} ( \textcolor{keyword}{size}(at\_data,2)-\/1 > km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{936        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'at\_BoundariesTau\_DN'}, \&}
\DoxyCodeLine{937             \textcolor{stringliteral}{'The Chebyshev dimension of input data too large.'})}
\DoxyCodeLine{938 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{939 }
\DoxyCodeLine{940     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{941        value1=0.0d0}
\DoxyCodeLine{942        value2=0.0d0}
\DoxyCodeLine{943     \textcolor{keywordflow}{else}}
\DoxyCodeLine{944        value1 = values(:,1)}
\DoxyCodeLine{945        value2 = values(:,2)}
\DoxyCodeLine{946 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{947 }
\DoxyCodeLine{948     \textcolor{keywordflow}{if} (  at\_boundariestau\_dn\_first ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{949        at\_boundariestau\_dn\_first = .false.}
\DoxyCodeLine{950 }
\DoxyCodeLine{951        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(alu)) \textcolor{keyword}{deallocate}(alu)}
\DoxyCodeLine{952        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(kp)) \textcolor{keyword}{deallocate}(kp)}
\DoxyCodeLine{953 }
\DoxyCodeLine{954        \textcolor{keyword}{allocate}(alu(0:km,0:km),kp(0:km))}
\DoxyCodeLine{955 }
\DoxyCodeLine{956        tt\_data = 0.0d0}
\DoxyCodeLine{957        \textcolor{keywordflow}{do} k=0,km}
\DoxyCodeLine{958           tt\_data(k,k)=1.0d0}
\DoxyCodeLine{959 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{960        alu = tt\_data}
\DoxyCodeLine{961 }
\DoxyCodeLine{962        tg\_data = ag\_at(tt\_data)}
\DoxyCodeLine{963        alu(km-\/1,:) = tg\_data(:,0)}
\DoxyCodeLine{964        tg\_data = ag\_at(at\_dx\_at(tt\_data))}
\DoxyCodeLine{965        alu(km,:)   = tg\_data(:,im)}
\DoxyCodeLine{966 }
\DoxyCodeLine{967        \textcolor{keyword}{call }ludecomp(alu,kp)}
\DoxyCodeLine{968 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{969 }
\DoxyCodeLine{970     at\_data(:,km-\/1) = value1}
\DoxyCodeLine{971     at\_data(:,km)   = value2}
\DoxyCodeLine{972     at\_data = lusolve(alu,kp,at\_data)}
\DoxyCodeLine{973 }

\end{DoxyCode}


References ag\+\_\+at(), at\+\_\+boundariestau\+\_\+dn\+\_\+first, at\+\_\+dx\+\_\+at(), im, and km.



Referenced by at\+\_\+boundariestau\+\_\+dn\+\_\+1d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a631b7c7b0e5cc304e05c272dd1cec93e_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a631b7c7b0e5cc304e05c272dd1cec93e_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a8a2142785ec95159ef75e2b3d5972871}\label{namespaceat__module_a8a2142785ec95159ef75e2b3d5972871}} 
\index{at\_module@{at\_module}!at\_boundariestau\_nd\_1d@{at\_boundariestau\_nd\_1d}}
\index{at\_boundariestau\_nd\_1d@{at\_boundariestau\_nd\_1d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_nd\_1d()}{at\_boundariestau\_nd\_1d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariestau\+\_\+nd\+\_\+1d (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), intent(inout)}]{t\+\_\+data,  }\item[{real(dp), dimension(2), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Neumann/\+Dirichlet 型境界条件の適用(タウ法, 1 次元配列用) i=0 で勾配の値, i=im で値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em t\+\_\+data} & 境界条件を適用するチェビシェフデータ(0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値 \\
\hline
\end{DoxyParams}


Definition at line 1067 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1067 }
\DoxyCodeLine{1068 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km)},\textcolor{keywordtype}{intent(inout)}       :: t\_data}
\DoxyCodeLine{1070 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(2)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1071 }
\DoxyCodeLine{1072 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,0:km)}                   :: at\_work}
\DoxyCodeLine{1073 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,2)}                      :: vwork}
\DoxyCodeLine{1074 }
\DoxyCodeLine{1075     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1076        vwork(1,1)=0.0d0}
\DoxyCodeLine{1077        vwork(1,2)=0.0d0}
\DoxyCodeLine{1078     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1079        vwork(1,:) = values}
\DoxyCodeLine{1080 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1081 }
\DoxyCodeLine{1082     at\_work(1,:)=t\_data}
\DoxyCodeLine{1083     \textcolor{keyword}{call }at\_boundariestau\_nd\_2d(at\_work,vwork)}
\DoxyCodeLine{1084     t\_data=at\_work(1,:)}
\DoxyCodeLine{1085 }

\end{DoxyCode}


References at\+\_\+boundariestau\+\_\+nd\+\_\+2d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a8a2142785ec95159ef75e2b3d5972871_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a749a9b8e566eb107a6db98adc612cac6}\label{namespaceat__module_a749a9b8e566eb107a6db98adc612cac6}} 
\index{at\_module@{at\_module}!at\_boundariestau\_nd\_2d@{at\_boundariestau\_nd\_2d}}
\index{at\_boundariestau\_nd\_2d@{at\_boundariestau\_nd\_2d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_nd\_2d()}{at\_boundariestau\_nd\_2d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariestau\+\_\+nd\+\_\+2d (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(inout)}]{at\+\_\+data,  }\item[{real(dp), dimension(\+:,\+:), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Neumann/\+Dirichlet 型境界条件の適用(タウ法, 2 次元配列用) i=0 で勾配の値, i=im で値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em at\+\_\+data} & 境界条件を適用するチェビシェフデータ(m,0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(m,2) \\
\hline
\end{DoxyParams}


Definition at line 1005 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1005 }
\DoxyCodeLine{1006 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)},\textcolor{keywordtype}{intent(inout)}         :: at\_data}
\DoxyCodeLine{1008 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1009 }
\DoxyCodeLine{1010 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{allocatable}  :: alu}
\DoxyCodeLine{1011     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable}     :: kp}
\DoxyCodeLine{1012 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:km)}         :: tt\_data}
\DoxyCodeLine{1013 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:im)}         :: tg\_data}
\DoxyCodeLine{1014 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1))}   :: value1, value2}
\DoxyCodeLine{1015 }
\DoxyCodeLine{1016     \textcolor{keywordtype}{integer(8)} :: k}
\DoxyCodeLine{1017     \textcolor{keywordtype}{save}       :: alu, kp}
\DoxyCodeLine{1018 }
\DoxyCodeLine{1019     \textcolor{keywordflow}{if} ( \textcolor{keyword}{size}(at\_data,2)-\/1 < km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1020        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesTau\_ND'}, \&}
\DoxyCodeLine{1021             \textcolor{stringliteral}{'The Chebyshev dimension of input data too small.'})}
\DoxyCodeLine{1022     \textcolor{keywordflow}{elseif} ( \textcolor{keyword}{size}(at\_data,2)-\/1 > km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1023        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'at\_BoundariesTau\_ND'}, \&}
\DoxyCodeLine{1024             \textcolor{stringliteral}{'The Chebyshev dimension of input data too large.'})}
\DoxyCodeLine{1025 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1026 }
\DoxyCodeLine{1027     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1028        value1=0.0d0}
\DoxyCodeLine{1029        value2=0.0d0}
\DoxyCodeLine{1030     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1031        value1 = values(:,1)}
\DoxyCodeLine{1032        value2 = values(:,2)}
\DoxyCodeLine{1033 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1034 }
\DoxyCodeLine{1035     \textcolor{keywordflow}{if} ( at\_boundariestau\_nd\_first ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1036        at\_boundariestau\_nd\_first = .false.}
\DoxyCodeLine{1037 }
\DoxyCodeLine{1038        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(alu)) \textcolor{keyword}{deallocate}(alu)}
\DoxyCodeLine{1039        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(kp)) \textcolor{keyword}{deallocate}(kp)}
\DoxyCodeLine{1040 }
\DoxyCodeLine{1041        \textcolor{keyword}{allocate}(alu(0:km,0:km),kp(0:km))}
\DoxyCodeLine{1042 }
\DoxyCodeLine{1043        tt\_data = 0.0d0}
\DoxyCodeLine{1044        \textcolor{keywordflow}{do} k=0,km}
\DoxyCodeLine{1045           tt\_data(k,k)=1.0d0}
\DoxyCodeLine{1046 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{1047        alu = tt\_data}
\DoxyCodeLine{1048 }
\DoxyCodeLine{1049        tg\_data = ag\_at(at\_dx\_at(tt\_data))}
\DoxyCodeLine{1050        alu(km-\/1,:) = tg\_data(:,0)}
\DoxyCodeLine{1051        tg\_data = ag\_at(tt\_data)}
\DoxyCodeLine{1052        alu(km,:)   = tg\_data(:,im)}
\DoxyCodeLine{1053 }
\DoxyCodeLine{1054        \textcolor{keyword}{call }ludecomp(alu,kp)}
\DoxyCodeLine{1055 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1056 }
\DoxyCodeLine{1057     at\_data(:,km-\/1) = value1}
\DoxyCodeLine{1058     at\_data(:,km)   = value2}
\DoxyCodeLine{1059     at\_data = lusolve(alu,kp,at\_data)}
\DoxyCodeLine{1060 }

\end{DoxyCode}


References ag\+\_\+at(), at\+\_\+boundariestau\+\_\+nd\+\_\+first, at\+\_\+dx\+\_\+at(), im, and km.



Referenced by at\+\_\+boundariestau\+\_\+nd\+\_\+1d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a749a9b8e566eb107a6db98adc612cac6_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a749a9b8e566eb107a6db98adc612cac6_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a9c2d70e2264f17a7ba84656bf7457e31}\label{namespaceat__module_a9c2d70e2264f17a7ba84656bf7457e31}} 
\index{at\_module@{at\_module}!at\_boundariestau\_nn\_1d@{at\_boundariestau\_nn\_1d}}
\index{at\_boundariestau\_nn\_1d@{at\_boundariestau\_nn\_1d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_nn\_1d()}{at\_boundariestau\_nn\_1d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariestau\+\_\+nn\+\_\+1d (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), intent(inout)}]{t\+\_\+data,  }\item[{real(dp), dimension(2), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Neumann/\+Dirichlet 型境界条件の適用(タウ法, 1 次元配列用) 両境界で勾配の値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em t\+\_\+data} & 境界条件を適用するチェビシェフデータ(0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値 \\
\hline
\end{DoxyParams}


Definition at line 1153 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1153 }
\DoxyCodeLine{1154 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km)},\textcolor{keywordtype}{intent(inout)}       :: t\_data}
\DoxyCodeLine{1156 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(2)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1157 }
\DoxyCodeLine{1158 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,0:km)}                   :: at\_work}
\DoxyCodeLine{1159 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,2)}                      :: vwork}
\DoxyCodeLine{1160 }
\DoxyCodeLine{1161     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1162        vwork(1,1)=0.0d0}
\DoxyCodeLine{1163        vwork(1,2)=0.0d0}
\DoxyCodeLine{1164     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1165        vwork(1,:) = values}
\DoxyCodeLine{1166 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1167 }
\DoxyCodeLine{1168     at\_work(1,:)=t\_data}
\DoxyCodeLine{1169     \textcolor{keyword}{call }at\_boundariestau\_nn\_2d(at\_work,vwork)}
\DoxyCodeLine{1170     t\_data=at\_work(1,:)}
\DoxyCodeLine{1171 }

\end{DoxyCode}


References at\+\_\+boundariestau\+\_\+nn\+\_\+2d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a9c2d70e2264f17a7ba84656bf7457e31_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a305ed18d316f0b00e1da211f7ed96f51}\label{namespaceat__module_a305ed18d316f0b00e1da211f7ed96f51}} 
\index{at\_module@{at\_module}!at\_boundariestau\_nn\_2d@{at\_boundariestau\_nn\_2d}}
\index{at\_boundariestau\_nn\_2d@{at\_boundariestau\_nn\_2d}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_nn\_2d()}{at\_boundariestau\_nn\_2d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariestau\+\_\+nn\+\_\+2d (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(inout)}]{at\+\_\+data,  }\item[{real(dp), dimension(\+:,\+:), intent(in), optional}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Neumann/\+Dirichlet 型境界条件の適用(タウ法, 2 次元配列用) 両境界で勾配の値を与える. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em at\+\_\+data} & 境界条件を適用するチェビシェフデータ(m,0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(m,2) \\
\hline
\end{DoxyParams}


Definition at line 1092 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{1092 }
\DoxyCodeLine{1093 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)},\textcolor{keywordtype}{intent(inout)}         :: at\_data}
\DoxyCodeLine{1095 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{1096 }
\DoxyCodeLine{1097 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,:)}, \textcolor{keywordtype}{allocatable}  :: alu}
\DoxyCodeLine{1098     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable}     :: kp}
\DoxyCodeLine{1099 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:km)}         :: tt\_data}
\DoxyCodeLine{1100 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km,0:im)}         :: tg\_data}
\DoxyCodeLine{1101 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1))}   :: value1, value2}
\DoxyCodeLine{1102 }
\DoxyCodeLine{1103     \textcolor{keywordtype}{integer(8)} :: k}
\DoxyCodeLine{1104     \textcolor{keywordtype}{save}       :: alu, kp}
\DoxyCodeLine{1105 }
\DoxyCodeLine{1106     \textcolor{keywordflow}{if} ( \textcolor{keyword}{size}(at\_data,2)-\/1 < km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1107        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_BoundariesTau\_NN'}, \&}
\DoxyCodeLine{1108             \textcolor{stringliteral}{'The Chebyshev dimension of input data too small.'})}
\DoxyCodeLine{1109     \textcolor{keywordflow}{elseif} ( \textcolor{keyword}{size}(at\_data,2)-\/1 > km ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1110        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'at\_BoundariesTau\_NN'}, \&}
\DoxyCodeLine{1111             \textcolor{stringliteral}{'The Chebyshev dimension of input data too large.'})}
\DoxyCodeLine{1112 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1113 }
\DoxyCodeLine{1114     \textcolor{keywordflow}{if} (.not. \textcolor{keyword}{present}(values)) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1115        value1 = 0.0d0}
\DoxyCodeLine{1116        value2 = 0.0d0}
\DoxyCodeLine{1117     \textcolor{keywordflow}{else}}
\DoxyCodeLine{1118        value1 = values(:,1)}
\DoxyCodeLine{1119        value2 = values(:,2)}
\DoxyCodeLine{1120 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1121 }
\DoxyCodeLine{1122     \textcolor{keywordflow}{if} ( at\_boundariestau\_nn\_first ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{1123        at\_boundariestau\_nn\_first = .false.}
\DoxyCodeLine{1124 }
\DoxyCodeLine{1125        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(alu)) \textcolor{keyword}{deallocate}(alu)}
\DoxyCodeLine{1126        \textcolor{keywordflow}{if} (\textcolor{keyword}{allocated}(kp)) \textcolor{keyword}{deallocate}(kp)}
\DoxyCodeLine{1127 }
\DoxyCodeLine{1128        \textcolor{keyword}{allocate}(alu(0:km,0:km),kp(0:km))}
\DoxyCodeLine{1129 }
\DoxyCodeLine{1130        tt\_data = 0.0d0}
\DoxyCodeLine{1131        \textcolor{keywordflow}{do} k=0,km}
\DoxyCodeLine{1132           tt\_data(k,k)=1.0d0}
\DoxyCodeLine{1133 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{1134        alu = tt\_data}
\DoxyCodeLine{1135 }
\DoxyCodeLine{1136        tg\_data = ag\_at(at\_dx\_at(tt\_data))}
\DoxyCodeLine{1137        alu(km-\/1,:) = tg\_data(:,0)}
\DoxyCodeLine{1138        alu(km,:)   = tg\_data(:,im)}
\DoxyCodeLine{1139 }
\DoxyCodeLine{1140        \textcolor{keyword}{call }ludecomp(alu,kp)}
\DoxyCodeLine{1141 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{1142 }
\DoxyCodeLine{1143     at\_data(:,km-\/1) = value1}
\DoxyCodeLine{1144     at\_data(:,km)   = value2}
\DoxyCodeLine{1145     at\_data = lusolve(alu,kp,at\_data)}
\DoxyCodeLine{1146 }

\end{DoxyCode}


References ag\+\_\+at(), at\+\_\+boundariestau\+\_\+nn\+\_\+first, at\+\_\+dx\+\_\+at(), im, and km.



Referenced by at\+\_\+boundariestau\+\_\+nn\+\_\+1d().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a305ed18d316f0b00e1da211f7ed96f51_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespaceat__module_a305ed18d316f0b00e1da211f7ed96f51_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a43d2267dc3e7ea20e35566b97f573415}\label{namespaceat__module_a43d2267dc3e7ea20e35566b97f573415}} 
\index{at\_module@{at\_module}!at\_dx\_at@{at\_dx\_at}}
\index{at\_dx\_at@{at\_dx\_at}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_dx\_at()}{at\_dx\_at()}}
{\footnotesize\ttfamily real(dp) function, dimension(size(at\+\_\+data,1),0\+:size(at\+\_\+data,2)-\/1), public at\+\_\+module\+::at\+\_\+dx\+\_\+at (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,0\+:), intent(in)}]{at\+\_\+data }\end{DoxyParamCaption})}



入力チェビシェフデータに X 微分を作用する(2 次元配列用). 

チェビシェフデータの X 微分とは, 対応する格子点データに X 微分を 作用させたデータのチェビシェフ変換のことである. 
\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em at\+\_\+data} & 入力チェビシェフデータ \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
チェビシェフデータの X 微分 
\end{DoxyReturn}


Definition at line 420 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{420 }
\DoxyCodeLine{421 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:,0:)}, \textcolor{keywordtype}{intent(in)}                    :: at\_data}
\DoxyCodeLine{423 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(at\_data,1),0:size(at\_data,2)-\/1)} :: at\_Dx\_at}
\DoxyCodeLine{424 }
\DoxyCodeLine{425     \textcolor{keywordtype}{integer(8)} :: m, k}
\DoxyCodeLine{426     \textcolor{keywordtype}{integer(8)} :: nm, kmax}
\DoxyCodeLine{427 }
\DoxyCodeLine{428     nm=\textcolor{keyword}{size}(at\_data,1)}
\DoxyCodeLine{429     kmax=\textcolor{keyword}{size}(at\_data,2)-\/1}
\DoxyCodeLine{430 }
\DoxyCodeLine{431     \textcolor{comment}{! TODO: loop 併合できないか?}}
\DoxyCodeLine{432     \textcolor{keywordflow}{if} ( kmax == im ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{433        \textcolor{keywordflow}{do} m=1,nm}
\DoxyCodeLine{434           at\_dx\_at(m,kmax)   = 0.0d0}
\DoxyCodeLine{435           \textcolor{comment}{! at\_Dx\_at(m,kmax-\/1) = 2.0D0 * km * at\_data(m,kmax) /2}}
\DoxyCodeLine{436           at\_dx\_at(m,kmax-\/1) = 2.0d0 * km * at\_data(m,kmax)* 0.5d0}
\DoxyCodeLine{437 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{438     \textcolor{keywordflow}{else}}
\DoxyCodeLine{439        \textcolor{keywordflow}{do} m=1,nm}
\DoxyCodeLine{440           at\_dx\_at(m,kmax)   = 0.0d0}
\DoxyCodeLine{441           \textcolor{comment}{! スタートはグリッド対応最大波数未満. Factor 1/2 不要}}
\DoxyCodeLine{442           at\_dx\_at(m,kmax-\/1) = 2.0d0 * km * at\_data(m,kmax)}
\DoxyCodeLine{443 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{444 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{445 }
\DoxyCodeLine{446     \textcolor{keywordflow}{do} k=kmax-\/2,0,-\/1}
\DoxyCodeLine{447        \textcolor{keywordflow}{do} m=1,nm}
\DoxyCodeLine{448           at\_dx\_at(m,k) = at\_dx\_at(m,k+2) + 2.0d0*(k+1)*at\_data(m,k+1)}
\DoxyCodeLine{449 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{450 \textcolor{keywordflow}{    enddo}}
\DoxyCodeLine{451 }
\DoxyCodeLine{452     \textcolor{keywordflow}{do} k=0,kmax}
\DoxyCodeLine{453        \textcolor{keywordflow}{do} m=1,nm}
\DoxyCodeLine{454           at\_dx\_at(m,k) = 2.0d0/xl * at\_dx\_at(m,k)}
\DoxyCodeLine{455 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{456 \textcolor{keywordflow}{    enddo}}
\DoxyCodeLine{457 }

\end{DoxyCode}


References im, km, and xl.



Referenced by at\+\_\+boundariesgrid\+\_\+dn\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+nd\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+nn\+\_\+2d(), at\+\_\+boundariestau\+\_\+dn\+\_\+2d(), at\+\_\+boundariestau\+\_\+nd\+\_\+2d(), at\+\_\+boundariestau\+\_\+nn\+\_\+2d(), and t\+\_\+dx\+\_\+t().

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



モジュールの終了処理(割り付け配列の解放)をおこなう. 



Definition at line 796 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{796     \textcolor{keywordflow}{if} ( .not. at\_initialize ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{797       \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'W'},\textcolor{stringliteral}{'at\_Finalize'},\&}
\DoxyCodeLine{798         \textcolor{stringliteral}{'at\_module not initialized yet'})}
\DoxyCodeLine{799       \textcolor{keywordflow}{return}}
\DoxyCodeLine{800 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{801 }
\DoxyCodeLine{802     \textcolor{keyword}{deallocate}(t)                  \textcolor{comment}{! 変換用配列}}
\DoxyCodeLine{803     \textcolor{keyword}{deallocate}(it)                 \textcolor{comment}{! 変換用配列}}
\DoxyCodeLine{804     \textcolor{keyword}{deallocate}(g\_x)}
\DoxyCodeLine{805     \textcolor{keyword}{deallocate}(g\_x\_weight)         \textcolor{comment}{! 格子点座標格納配列}}
\DoxyCodeLine{806 }
\DoxyCodeLine{807     at\_initialize = .false.}
\DoxyCodeLine{808 }
\DoxyCodeLine{809     at\_boundariestau\_dd\_first = .true.}
\DoxyCodeLine{810     at\_boundariestau\_dn\_first = .true.}
\DoxyCodeLine{811     at\_boundariestau\_nd\_first = .true.}
\DoxyCodeLine{812     at\_boundariestau\_nn\_first = .true.}
\DoxyCodeLine{813     at\_boundariesgrid\_dd\_first = .true.}
\DoxyCodeLine{814     at\_boundariesgrid\_dn\_first = .true.}
\DoxyCodeLine{815     at\_boundariesgrid\_nd\_first = .true.}
\DoxyCodeLine{816     at\_boundariesgrid\_nn\_first = .true.}
\DoxyCodeLine{817 }
\DoxyCodeLine{818     \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'M'},\textcolor{stringliteral}{'at\_Finalize'},\&}
\DoxyCodeLine{819          \& \textcolor{stringliteral}{'at\_module (2019/09/29) is finalized'})}
\DoxyCodeLine{820 }

\end{DoxyCode}


References at\+\_\+boundariesgrid\+\_\+dd\+\_\+first, at\+\_\+boundariesgrid\+\_\+dn\+\_\+first, at\+\_\+boundariesgrid\+\_\+nd\+\_\+first, at\+\_\+boundariesgrid\+\_\+nn\+\_\+first, at\+\_\+boundariestau\+\_\+dd\+\_\+first, at\+\_\+boundariestau\+\_\+dn\+\_\+first, at\+\_\+boundariestau\+\_\+nd\+\_\+first, at\+\_\+boundariestau\+\_\+nn\+\_\+first, at\+\_\+initialize, g\+\_\+x, g\+\_\+x\+\_\+weight, it, and t.



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

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=346pt]{namespaceat__module_a050d680de20200ff5926d23922bde5ac_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_adf63042d0ac9f5a2c17163540839920d}\label{namespaceat__module_adf63042d0ac9f5a2c17163540839920d}} 
\index{at\_module@{at\_module}!at\_initial@{at\_initial}}
\index{at\_initial@{at\_initial}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_initial()}{at\_initial()}}
{\footnotesize\ttfamily subroutine, public at\+\_\+module\+::at\+\_\+initial (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{i,  }\item[{integer, intent(in)}]{k,  }\item[{real(dp), intent(in)}]{xmin,  }\item[{real(dp), intent(in)}]{xmax }\end{DoxyParamCaption})}



チェビシェフ変換の格子点数, 波数, 領域の大きさを設定する. 

他の関数や変数を呼ぶ前に, 最初にこのサブルーチンを呼んで 初期設定をしなければならない. 
\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i} & 格子点数 \\
\hline
\mbox{\texttt{ in}}  & {\em k} & 切断波数 \\
\hline
\mbox{\texttt{ in}}  & {\em xmin} & 座標の範囲 \\
\hline
\mbox{\texttt{ in}}  & {\em xmax} & 座標の範囲 \\
\hline
\end{DoxyParams}


Definition at line 268 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{268 }
\DoxyCodeLine{269     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: i}
\DoxyCodeLine{271     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: k}
\DoxyCodeLine{273 \textcolor{keywordtype}{    real}(DP),\textcolor{keywordtype}{intent(in)} :: xmin, xmax}
\DoxyCodeLine{274     \textcolor{keywordtype}{integer(8)} :: ii,kk}
\DoxyCodeLine{275 }
\DoxyCodeLine{276     im=i}
\DoxyCodeLine{277     km=k}
\DoxyCodeLine{278     xl = xmax-\/xmin}
\DoxyCodeLine{279 }
\DoxyCodeLine{280     \textcolor{keywordflow}{if} ( im <= 0 .or. km <= 0 ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{281        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_initial'}, \&}
\DoxyCodeLine{282             \& \textcolor{stringliteral}{'Number of grid points and waves should be positive'})}
\DoxyCodeLine{283     \textcolor{keywordflow}{elseif} ( mod(im,2\_8) /= 0 ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{284        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_initial'}, \&}
\DoxyCodeLine{285             \& \textcolor{stringliteral}{'Number of grid points should be even'})}
\DoxyCodeLine{286     \textcolor{keywordflow}{elseif} ( km > im ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{287        \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'E'},\textcolor{stringliteral}{'at\_initial'}, \&}
\DoxyCodeLine{288             \& \textcolor{stringliteral}{'KM shoud be less equal IM'})}
\DoxyCodeLine{289 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{290 }
\DoxyCodeLine{291     \textcolor{keyword}{allocate}(it(im),t(3*im))}
\DoxyCodeLine{292     \textcolor{keyword}{call }fxrini(2*im,it,t)}
\DoxyCodeLine{293 }
\DoxyCodeLine{294     \textcolor{keyword}{allocate}(g\_x(0:im))}
\DoxyCodeLine{295     \textcolor{keywordflow}{do} ii=0,im}
\DoxyCodeLine{296        g\_x(ii) = (xmax+xmin)/2 + xl/2 * cos(pi*ii/im)}
\DoxyCodeLine{297 \textcolor{keywordflow}{    end do}}
\DoxyCodeLine{298 }
\DoxyCodeLine{299     \textcolor{keyword}{allocate}(g\_x\_weight(0:im))}
\DoxyCodeLine{300 }
\DoxyCodeLine{301     \textcolor{keywordflow}{do} ii=0,im}
\DoxyCodeLine{302        g\_x\_weight(ii) = 1.0d0}
\DoxyCodeLine{303        \textcolor{keywordflow}{do} kk=2,km,2}
\DoxyCodeLine{304           g\_x\_weight(ii) = g\_x\_weight(ii) \&}
\DoxyCodeLine{305                + 2.0d0/(1.0d0 -\/ kk**2) * cos(kk*ii*pi/im)}
\DoxyCodeLine{306 \textcolor{keywordflow}{       enddo}}
\DoxyCodeLine{307        \textcolor{comment}{! 最後の和は factor 1/2.}}
\DoxyCodeLine{308        \textcolor{keywordflow}{if} ( (km == im) .and. (mod(im,2\_8) == 0) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{309           g\_x\_weight(ii) = g\_x\_weight(ii) \&}
\DoxyCodeLine{310                -\/ 1.0d0/(1.0d0 -\/ km**2)* cos(km*ii*pi/im)}
\DoxyCodeLine{311 \textcolor{keywordflow}{       endif}}
\DoxyCodeLine{312        g\_x\_weight(ii) = 2.0d0/im * g\_x\_weight(ii) * (xl/2.0d0)}
\DoxyCodeLine{313 \textcolor{keywordflow}{    enddo}}
\DoxyCodeLine{314     \textcolor{comment}{! g\_X\_Weight(0)  = g\_X\_Weight(0) / 2}}
\DoxyCodeLine{315     \textcolor{comment}{! g\_X\_Weight(im) = g\_X\_Weight(im) / 2}}
\DoxyCodeLine{316     g\_x\_weight(0)  = g\_x\_weight(0) * 0.5d0}
\DoxyCodeLine{317     g\_x\_weight(im) = g\_x\_weight(im) * 0.5d0}
\DoxyCodeLine{318 }
\DoxyCodeLine{319     at\_initialize = .true.}
\DoxyCodeLine{320 }
\DoxyCodeLine{321     \textcolor{keyword}{call }messagenotify(\textcolor{stringliteral}{'M'},\textcolor{stringliteral}{'at\_initial'},\&}
\DoxyCodeLine{322          \& \textcolor{stringliteral}{'at\_module (2019/09/28) is initialized'})}

\end{DoxyCode}


References at\+\_\+initialize, g\+\_\+x, g\+\_\+x\+\_\+weight, im, it, km, t, and xl.



Referenced by et\+\_\+module\+::et\+\_\+initial(), and ut\+\_\+mpi\+\_\+module\+::ut\+\_\+mpi\+\_\+initial().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=338pt]{namespaceat__module_adf63042d0ac9f5a2c17163540839920d_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_ace71f9c471a9fde3f5a8adc765813078}\label{namespaceat__module_ace71f9c471a9fde3f5a8adc765813078}} 
\index{at\_module@{at\_module}!avr\_g@{avr\_g}}
\index{avr\_g@{avr\_g}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{avr\_g()}{avr\_g()}}
{\footnotesize\ttfamily real(dp) function, public at\+\_\+module\+::avr\+\_\+g (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:\mbox{\hyperlink{namespaceat__module_a8b21e0caf645222c31409b96aaf60757}{im}}), intent(in)}]{g }\end{DoxyParamCaption})}



1 次元格子点データの平均 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em g} & 格子点データ \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
積分値 
\end{DoxyReturn}


Definition at line 528 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{528 }
\DoxyCodeLine{529 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:im)}, \textcolor{keywordtype}{intent(in)}   :: g}
\DoxyCodeLine{531 \textcolor{keywordtype}{    real}(DP)                                :: Avr\_g}
\DoxyCodeLine{532 }
\DoxyCodeLine{533     avr\_g = int\_g(g)/sum(g\_x\_weight)}

\end{DoxyCode}


References g\+\_\+x\+\_\+weight, and int\+\_\+g().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=297pt]{namespaceat__module_ace71f9c471a9fde3f5a8adc765813078_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_aac1b775fe04c1911fa86967c7842c97d}\label{namespaceat__module_aac1b775fe04c1911fa86967c7842c97d}} 
\index{at\_module@{at\_module}!g\_t@{g\_t}}
\index{g\_t@{g\_t}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{g\_t()}{g\_t()}}
{\footnotesize\ttfamily real(dp) function, dimension(0\+:\mbox{\hyperlink{namespaceat__module_a8b21e0caf645222c31409b96aaf60757}{im}}), public at\+\_\+module\+::g\+\_\+t (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:), intent(in)}]{t\+\_\+data }\end{DoxyParamCaption})}



チェビシェフデータから格子データへ変換する(1 次元配列用). 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em t\+\_\+data} & チェビシェフデータ \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
格子点データ 
\end{DoxyReturn}


Definition at line 357 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{357 }
\DoxyCodeLine{358 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{intent(in)}  :: t\_data}
\DoxyCodeLine{360 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:im)}           :: g\_t}
\DoxyCodeLine{361 }
\DoxyCodeLine{362 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,size(t\_data))} :: t\_work}
\DoxyCodeLine{363 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,0:im)}         :: g\_work}
\DoxyCodeLine{364 }
\DoxyCodeLine{365     t\_work(1,:) = t\_data}
\DoxyCodeLine{366     g\_work = ag\_at(t\_work)}
\DoxyCodeLine{367     g\_t = g\_work(1,:)}
\DoxyCodeLine{368 }

\end{DoxyCode}


References ag\+\_\+at().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=289pt]{namespaceat__module_aac1b775fe04c1911fa86967c7842c97d_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a6b950f252e117fa489188b56730df979}\label{namespaceat__module_a6b950f252e117fa489188b56730df979}} 
\index{at\_module@{at\_module}!int\_g@{int\_g}}
\index{int\_g@{int\_g}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{int\_g()}{int\_g()}}
{\footnotesize\ttfamily real(dp) function, public at\+\_\+module\+::int\+\_\+g (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:\mbox{\hyperlink{namespaceat__module_a8b21e0caf645222c31409b96aaf60757}{im}}), intent(in)}]{g }\end{DoxyParamCaption})}



1 次元格子点データの積分 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em g} & 格子点データ \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
積分値 
\end{DoxyReturn}


Definition at line 507 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{507 }
\DoxyCodeLine{508 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:im)}, \textcolor{keywordtype}{intent(in)}   :: g}
\DoxyCodeLine{510 \textcolor{keywordtype}{    real}(DP)                                :: Int\_g}
\DoxyCodeLine{511     int\_g = sum(g*g\_x\_weight)}

\end{DoxyCode}


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



Referenced by avr\+\_\+g().

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=297pt]{namespaceat__module_a6b950f252e117fa489188b56730df979_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_ae9ea43ca3ea4475a7298c766187eb31a}\label{namespaceat__module_ae9ea43ca3ea4475a7298c766187eb31a}} 
\index{at\_module@{at\_module}!interpolate\_t@{interpolate\_t}}
\index{interpolate\_t@{interpolate\_t}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{interpolate\_t()}{interpolate\_t()}}
{\footnotesize\ttfamily real(dp) function, public at\+\_\+module\+::interpolate\+\_\+t (\begin{DoxyParamCaption}\item[{real(dp), dimension(0\+:), intent(in)}]{t\+\_\+data,  }\item[{real(dp), intent(in)}]{xval }\end{DoxyParamCaption})}



1 次元データの補間 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em t\+\_\+data} & 入力チェビシェフデータ \\
\hline
\mbox{\texttt{ in}}  & {\em xval} & 補間する点の座標 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
補間した結果の値 
\end{DoxyReturn}


Definition at line 539 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{539 }
\DoxyCodeLine{540 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:)}, \textcolor{keywordtype}{intent(in)}  :: t\_data}
\DoxyCodeLine{542 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{intent(in)}                 :: xval}
\DoxyCodeLine{544 \textcolor{keywordtype}{    real}(DP)                             :: Interpolate\_t}
\DoxyCodeLine{545 }
\DoxyCodeLine{546     \textcolor{keywordtype}{integer} :: kmax}
\DoxyCodeLine{547     \textcolor{comment}{! Crenshow's reccurence formula 計算用変数}}
\DoxyCodeLine{548 \textcolor{keywordtype}{    real}(DP) :: y2, y1, y0, x}
\DoxyCodeLine{549     \textcolor{keywordtype}{integer} :: k}
\DoxyCodeLine{550     \textcolor{comment}{! DO 文変数}}
\DoxyCodeLine{551 }
\DoxyCodeLine{552     kmax = \textcolor{keyword}{size}(t\_data)-\/1}
\DoxyCodeLine{553 }
\DoxyCodeLine{554     \textcolor{comment}{! x =(xval -\/(g\_X(0)+g\_X(im))/2 )/(g\_X(0)-\/g\_X(im))*2}}
\DoxyCodeLine{555     x =(xval -\/(g\_x(0)+g\_x(im))*0.50d0 )/(g\_x(0)-\/g\_x(im))*2.0d0}
\DoxyCodeLine{556 }
\DoxyCodeLine{557     y2 = 0.0d0}
\DoxyCodeLine{558     y1 = 0.0d0}
\DoxyCodeLine{559     \textcolor{keywordflow}{do} k=kmax,1,-\/1}
\DoxyCodeLine{560        y0 = 2.0d0*x*y1 -\/ y2 + t\_data(k)}
\DoxyCodeLine{561        y2 = y1}
\DoxyCodeLine{562        y1 = y0}
\DoxyCodeLine{563 \textcolor{keywordflow}{    enddo}}
\DoxyCodeLine{564 }
\DoxyCodeLine{565     \textcolor{comment}{! Interpolate\_t = -\/ y2 + x*y1 + t\_data(0)/2}}
\DoxyCodeLine{566     interpolate\_t = -\/ y2 + x*y1 + t\_data(0)*0.5d0}
\DoxyCodeLine{567     \textcolor{keywordflow}{if} ( kmax == int(im) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{568        interpolate\_t = interpolate\_t -\/t\_data(kmax)/2.0d0*cos(kmax*acos(x))}
\DoxyCodeLine{569 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{570 }

\end{DoxyCode}


References g\+\_\+x, and im.

\mbox{\Hypertarget{namespaceat__module_acd3cf928b6b072c1142d70b9fa997359}\label{namespaceat__module_acd3cf928b6b072c1142d70b9fa997359}} 
\index{at\_module@{at\_module}!t\_boundaries@{t\_boundaries}}
\index{t\_boundaries@{t\_boundaries}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{t\_boundaries()}{t\_boundaries()}}
{\footnotesize\ttfamily subroutine, public at\+\_\+module\+::t\+\_\+boundaries (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:), intent(inout)}]{t\+\_\+data,  }\item[{character(len=2), intent(in), optional}]{cond,  }\item[{real(dp), dimension(2), intent(in), optional}]{values }\end{DoxyParamCaption})}



境界条件の適用(タウ法, 1 次元配列用) 境界条件と両境界での値をオプションで与える. デフォルトは DD, values = 0 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em t\+\_\+data} & 境界条件を適用するチェビシェフデータ(0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em cond} & 境界条件.
\begin{DoxyItemize}
\item DD \+: 両端ディリクレ
\item DN \+: 上端ディリクレ, 下端ノイマン
\item ND \+: 上端ノイマン, 下端ディリクレ
\item NN \+: 両端ノイマン 
\end{DoxyItemize}\\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(2) \\
\hline
\end{DoxyParams}


Definition at line 664 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{664 }
\DoxyCodeLine{665 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{intent(INOUT)}                  :: t\_data(:)}
\DoxyCodeLine{671     \textcolor{keywordtype}{character(len=2)}, \textcolor{keywordtype}{intent(IN)}, \textcolor{keywordtype}{optional}  :: cond}
\DoxyCodeLine{673 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(2)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{674 }
\DoxyCodeLine{675 \textcolor{keywordtype}{    real}(DP)          :: BCvalues(2)}
\DoxyCodeLine{676     \textcolor{keywordtype}{character(len=2)} :: BC}
\DoxyCodeLine{677 }
\DoxyCodeLine{678 }
\DoxyCodeLine{679     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(cond) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{680       bc = cond}
\DoxyCodeLine{681     \textcolor{keywordflow}{else}}
\DoxyCodeLine{682       bc = \textcolor{stringliteral}{'DD'}}
\DoxyCodeLine{683 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{684 }
\DoxyCodeLine{685     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(values) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{686       bcvalues = values}
\DoxyCodeLine{687     \textcolor{keywordflow}{else}}
\DoxyCodeLine{688       bcvalues = 0.0d0}
\DoxyCodeLine{689 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{690 }
\DoxyCodeLine{691     \textcolor{keywordflow}{select case}(bc)}
\DoxyCodeLine{692     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'DD'} )}
\DoxyCodeLine{693       \textcolor{keyword}{call }at\_boundaries\_dd(t\_data,bcvalues)}
\DoxyCodeLine{694     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'DN'} )}
\DoxyCodeLine{695       \textcolor{keyword}{call }at\_boundaries\_dn(t\_data,bcvalues)}
\DoxyCodeLine{696     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'ND'} )}
\DoxyCodeLine{697       \textcolor{keyword}{call }at\_boundaries\_nd(t\_data,bcvalues)}
\DoxyCodeLine{698     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'NN'} )}
\DoxyCodeLine{699       \textcolor{keyword}{call }at\_boundaries\_nn(t\_data,bcvalues)}
\DoxyCodeLine{700 \textcolor{keywordflow}{    case default}}
\DoxyCodeLine{701       \textcolor{keyword}{call }at\_boundaries\_dd(t\_data,bcvalues)}
\DoxyCodeLine{702 \textcolor{keywordflow}{    end select}}
\DoxyCodeLine{703 }

\end{DoxyCode}
\mbox{\Hypertarget{namespaceat__module_ae4485e919330b01b25d3fa9416ebea14}\label{namespaceat__module_ae4485e919330b01b25d3fa9416ebea14}} 
\index{at\_module@{at\_module}!t\_boundariesgrid@{t\_boundariesgrid}}
\index{t\_boundariesgrid@{t\_boundariesgrid}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{t\_boundariesgrid()}{t\_boundariesgrid()}}
{\footnotesize\ttfamily subroutine, public at\+\_\+module\+::t\+\_\+boundariesgrid (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:), intent(inout)}]{t\+\_\+data,  }\item[{character(len=2), intent(in), optional}]{cond,  }\item[{real(dp), dimension(2), intent(in), optional}]{values }\end{DoxyParamCaption})}



境界条件の適用(タウ法, 1 次元配列用) 境界条件と両境界での値をオプションで与える. デフォルトは DD, values = 0 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in,out}}  & {\em t\+\_\+data} & 境界条件を適用するチェビシェフデータ(0\+:km) \\
\hline
\mbox{\texttt{ in}}  & {\em cond} & 境界条件.
\begin{DoxyItemize}
\item DD \+: 両端ディリクレ
\item DN \+: 上端ディリクレ, 下端ノイマン
\item ND \+: 上端ノイマン, 下端ディリクレ
\item NN \+: 両端ノイマン 
\end{DoxyItemize}\\
\hline
\mbox{\texttt{ in}}  & {\em values} & 境界値(2) \\
\hline
\end{DoxyParams}


Definition at line 755 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{755 }
\DoxyCodeLine{756 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{intent(INOUT)}                  :: t\_data(:)}
\DoxyCodeLine{762     \textcolor{keywordtype}{character(len=2)}, \textcolor{keywordtype}{intent(IN)}, \textcolor{keywordtype}{optional}  :: cond}
\DoxyCodeLine{764 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(2)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{optional}  :: values}
\DoxyCodeLine{765 }
\DoxyCodeLine{766 \textcolor{keywordtype}{    real}(DP)          :: BCvalues(2)}
\DoxyCodeLine{767     \textcolor{keywordtype}{character(len=2)} :: BC}
\DoxyCodeLine{768 }
\DoxyCodeLine{769     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(cond) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{770        bc = cond}
\DoxyCodeLine{771     \textcolor{keywordflow}{else}}
\DoxyCodeLine{772        bc = \textcolor{stringliteral}{'DD'}}
\DoxyCodeLine{773 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{774 }
\DoxyCodeLine{775     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(values) ) \textcolor{keywordflow}{then}}
\DoxyCodeLine{776        bcvalues = values}
\DoxyCodeLine{777     \textcolor{keywordflow}{else}}
\DoxyCodeLine{778        bcvalues = 0.0d0}
\DoxyCodeLine{779 \textcolor{keywordflow}{    endif}}
\DoxyCodeLine{780     \textcolor{keywordflow}{select case}(bc)}
\DoxyCodeLine{781     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'DD'})}
\DoxyCodeLine{782       \textcolor{keyword}{call }at\_boundariesgrid\_dd(t\_data,bcvalues)}
\DoxyCodeLine{783     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'DN'})}
\DoxyCodeLine{784       \textcolor{keyword}{call }at\_boundariesgrid\_dn(t\_data,bcvalues)}
\DoxyCodeLine{785     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'ND'})}
\DoxyCodeLine{786       \textcolor{keyword}{call }at\_boundariesgrid\_nd(t\_data,bcvalues)}
\DoxyCodeLine{787     \textcolor{keywordflow}{case} (\textcolor{stringliteral}{'NN'})}
\DoxyCodeLine{788       \textcolor{keyword}{call }at\_boundariesgrid\_nn(t\_data,bcvalues)}
\DoxyCodeLine{789 \textcolor{keywordflow}{    end select}}
\DoxyCodeLine{790 }

\end{DoxyCode}
\mbox{\Hypertarget{namespaceat__module_aff97491f952dd4253f871ad74f33f32f}\label{namespaceat__module_aff97491f952dd4253f871ad74f33f32f}} 
\index{at\_module@{at\_module}!t\_dx\_t@{t\_dx\_t}}
\index{t\_dx\_t@{t\_dx\_t}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{t\_dx\_t()}{t\_dx\_t()}}
{\footnotesize\ttfamily real(dp) function, dimension(size(t\+\_\+data)), public at\+\_\+module\+::t\+\_\+dx\+\_\+t (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:), intent(in)}]{t\+\_\+data }\end{DoxyParamCaption})}



入力チェビシェフデータに X 微分を作用する(1 次元配列用). 

チェビシェフデータの X 微分とは, 対応する格子点データに X 微分を 作用させたデータのチェビシェフ変換のことである. 
\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em t\+\_\+data} & 入力チェビシェフデータ \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
チェビシェフデータの X 微分 
\end{DoxyReturn}


Definition at line 467 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{467 }
\DoxyCodeLine{468 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{intent(in)}   :: t\_data}
\DoxyCodeLine{470 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(size(t\_data))}    :: t\_Dx\_t}
\DoxyCodeLine{471 }
\DoxyCodeLine{472 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,size(t\_data))}  :: at\_work}
\DoxyCodeLine{473 }
\DoxyCodeLine{474     at\_work(1,:) = t\_data}
\DoxyCodeLine{475     at\_work = at\_dx\_at(at\_work)}
\DoxyCodeLine{476     t\_dx\_t = at\_work(1,:)}
\DoxyCodeLine{477 }

\end{DoxyCode}


References at\+\_\+dx\+\_\+at().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=316pt]{namespaceat__module_aff97491f952dd4253f871ad74f33f32f_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespaceat__module_a649cd7872ed585abce2ddced8d9c5a71}\label{namespaceat__module_a649cd7872ed585abce2ddced8d9c5a71}} 
\index{at\_module@{at\_module}!t\_g@{t\_g}}
\index{t\_g@{t\_g}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{t\_g()}{t\_g()}}
{\footnotesize\ttfamily real(dp) function, dimension(0\+:\mbox{\hyperlink{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}{km}}), public at\+\_\+module\+::t\+\_\+g (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:), intent(in)}]{g\+\_\+data }\end{DoxyParamCaption})}



格子データからチェビシェフデータへ変換する(1 次元配列用). 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em g\+\_\+data} & 格子点データ \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
チェビシェフデータ 
\end{DoxyReturn}


Definition at line 399 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{399 }
\DoxyCodeLine{400 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{intent(in)}     :: g\_data}
\DoxyCodeLine{402 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(0:km)}              :: t\_g}
\DoxyCodeLine{403 }
\DoxyCodeLine{404 }
\DoxyCodeLine{405 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,size(g\_data))} :: ag\_work}
\DoxyCodeLine{406 \textcolor{keywordtype}{    real}(DP), \textcolor{keywordtype}{dimension(1,0:km)}         :: at\_work}
\DoxyCodeLine{407 }
\DoxyCodeLine{408     ag\_work(1,:) = g\_data}
\DoxyCodeLine{409     at\_work = at\_ag(ag\_work)}
\DoxyCodeLine{410     t\_g = at\_work(1,:)}
\DoxyCodeLine{411 }

\end{DoxyCode}


References at\+\_\+ag().

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=289pt]{namespaceat__module_a649cd7872ed585abce2ddced8d9c5a71_cgraph}
\end{center}
\end{figure}


\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{namespaceat__module_a8af132a26edbc8ce54293ef4675c4809}\label{namespaceat__module_a8af132a26edbc8ce54293ef4675c4809}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_dd\_first@{at\_boundariesgrid\_dd\_first}}
\index{at\_boundariesgrid\_dd\_first@{at\_boundariesgrid\_dd\_first}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_dd\_first}{at\_boundariesgrid\_dd\_first}}
{\footnotesize\ttfamily logical, save at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+dd\+\_\+first = .true.\hspace{0.3cm}{\ttfamily [private]}}



境界条件ルーチン初期化スイッチ 



Definition at line 242 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{242   \textcolor{keywordtype}{logical} :: at\_BoundariesGrid\_DD\_first = .true.}

\end{DoxyCode}


Referenced by at\+\_\+boundariesgrid\+\_\+dd\+\_\+2d(), and at\+\_\+finalize().

\mbox{\Hypertarget{namespaceat__module_a43a31d43ab915dc807f96acf8ca7007e}\label{namespaceat__module_a43a31d43ab915dc807f96acf8ca7007e}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_dn\_first@{at\_boundariesgrid\_dn\_first}}
\index{at\_boundariesgrid\_dn\_first@{at\_boundariesgrid\_dn\_first}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_dn\_first}{at\_boundariesgrid\_dn\_first}}
{\footnotesize\ttfamily logical, save at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+dn\+\_\+first = .true.\hspace{0.3cm}{\ttfamily [private]}}



境界条件ルーチン初期化スイッチ 



Definition at line 244 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{244   \textcolor{keywordtype}{logical} :: at\_BoundariesGrid\_DN\_first = .true.}

\end{DoxyCode}


Referenced by at\+\_\+boundariesgrid\+\_\+dn\+\_\+2d(), and at\+\_\+finalize().

\mbox{\Hypertarget{namespaceat__module_aae78fb232b5865c4e9acb161644785de}\label{namespaceat__module_aae78fb232b5865c4e9acb161644785de}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_nd\_first@{at\_boundariesgrid\_nd\_first}}
\index{at\_boundariesgrid\_nd\_first@{at\_boundariesgrid\_nd\_first}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_nd\_first}{at\_boundariesgrid\_nd\_first}}
{\footnotesize\ttfamily logical, save at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+nd\+\_\+first = .true.\hspace{0.3cm}{\ttfamily [private]}}



境界条件ルーチン初期化スイッチ 



Definition at line 246 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{246   \textcolor{keywordtype}{logical} :: at\_BoundariesGrid\_ND\_first = .true.}

\end{DoxyCode}


Referenced by at\+\_\+boundariesgrid\+\_\+nd\+\_\+2d(), and at\+\_\+finalize().

\mbox{\Hypertarget{namespaceat__module_ad72bcdaa908e79b24dada90210a6fd9b}\label{namespaceat__module_ad72bcdaa908e79b24dada90210a6fd9b}} 
\index{at\_module@{at\_module}!at\_boundariesgrid\_nn\_first@{at\_boundariesgrid\_nn\_first}}
\index{at\_boundariesgrid\_nn\_first@{at\_boundariesgrid\_nn\_first}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_nn\_first}{at\_boundariesgrid\_nn\_first}}
{\footnotesize\ttfamily logical, save at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+nn\+\_\+first = .true.\hspace{0.3cm}{\ttfamily [private]}}



境界条件ルーチン初期化スイッチ 



Definition at line 248 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{248   \textcolor{keywordtype}{logical} :: at\_BoundariesGrid\_NN\_first = .true.}

\end{DoxyCode}


Referenced by at\+\_\+boundariesgrid\+\_\+nn\+\_\+2d(), and at\+\_\+finalize().

\mbox{\Hypertarget{namespaceat__module_a6be6b0f502dddb0c09c8bcda283d09e7}\label{namespaceat__module_a6be6b0f502dddb0c09c8bcda283d09e7}} 
\index{at\_module@{at\_module}!at\_boundariestau\_dd\_first@{at\_boundariestau\_dd\_first}}
\index{at\_boundariestau\_dd\_first@{at\_boundariestau\_dd\_first}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_dd\_first}{at\_boundariestau\_dd\_first}}
{\footnotesize\ttfamily logical, save at\+\_\+module\+::at\+\_\+boundariestau\+\_\+dd\+\_\+first = .true.\hspace{0.3cm}{\ttfamily [private]}}



境界条件ルーチン初期化スイッチ 



Definition at line 234 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{234   \textcolor{keywordtype}{logical} :: at\_BoundariesTau\_DD\_first = .true.}

\end{DoxyCode}


Referenced by at\+\_\+boundariestau\+\_\+dd\+\_\+2d(), and at\+\_\+finalize().

\mbox{\Hypertarget{namespaceat__module_aea7b4a56798334da04e79c2b952b157b}\label{namespaceat__module_aea7b4a56798334da04e79c2b952b157b}} 
\index{at\_module@{at\_module}!at\_boundariestau\_dn\_first@{at\_boundariestau\_dn\_first}}
\index{at\_boundariestau\_dn\_first@{at\_boundariestau\_dn\_first}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_dn\_first}{at\_boundariestau\_dn\_first}}
{\footnotesize\ttfamily logical, save at\+\_\+module\+::at\+\_\+boundariestau\+\_\+dn\+\_\+first = .true.\hspace{0.3cm}{\ttfamily [private]}}



境界条件ルーチン初期化スイッチ 



Definition at line 236 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{236   \textcolor{keywordtype}{logical} :: at\_BoundariesTau\_DN\_first = .true.}

\end{DoxyCode}


Referenced by at\+\_\+boundariestau\+\_\+dn\+\_\+2d(), and at\+\_\+finalize().

\mbox{\Hypertarget{namespaceat__module_a0b2a6180a68b4ff9896d3dc7ced67a9b}\label{namespaceat__module_a0b2a6180a68b4ff9896d3dc7ced67a9b}} 
\index{at\_module@{at\_module}!at\_boundariestau\_nd\_first@{at\_boundariestau\_nd\_first}}
\index{at\_boundariestau\_nd\_first@{at\_boundariestau\_nd\_first}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_nd\_first}{at\_boundariestau\_nd\_first}}
{\footnotesize\ttfamily logical, save at\+\_\+module\+::at\+\_\+boundariestau\+\_\+nd\+\_\+first = .true.\hspace{0.3cm}{\ttfamily [private]}}



境界条件ルーチン初期化スイッチ 



Definition at line 238 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{238   \textcolor{keywordtype}{logical} :: at\_BoundariesTau\_ND\_first = .true.}

\end{DoxyCode}


Referenced by at\+\_\+boundariestau\+\_\+nd\+\_\+2d(), and at\+\_\+finalize().

\mbox{\Hypertarget{namespaceat__module_a54f32a3c0528c93bc435c9d63c0be97d}\label{namespaceat__module_a54f32a3c0528c93bc435c9d63c0be97d}} 
\index{at\_module@{at\_module}!at\_boundariestau\_nn\_first@{at\_boundariestau\_nn\_first}}
\index{at\_boundariestau\_nn\_first@{at\_boundariestau\_nn\_first}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_boundariestau\_nn\_first}{at\_boundariestau\_nn\_first}}
{\footnotesize\ttfamily logical, save at\+\_\+module\+::at\+\_\+boundariestau\+\_\+nn\+\_\+first = .true.\hspace{0.3cm}{\ttfamily [private]}}



境界条件ルーチン初期化スイッチ 



Definition at line 240 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{240   \textcolor{keywordtype}{logical} :: at\_BoundariesTau\_NN\_first = .true.}

\end{DoxyCode}


Referenced by at\+\_\+boundariestau\+\_\+nn\+\_\+2d(), and at\+\_\+finalize().

\mbox{\Hypertarget{namespaceat__module_adc28b06f129e1ffebbffe6727df608e1}\label{namespaceat__module_adc28b06f129e1ffebbffe6727df608e1}} 
\index{at\_module@{at\_module}!at\_initialize@{at\_initialize}}
\index{at\_initialize@{at\_initialize}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{at\_initialize}{at\_initialize}}
{\footnotesize\ttfamily logical, save at\+\_\+module\+::at\+\_\+initialize = .false.\hspace{0.3cm}{\ttfamily [private]}}



初期化スイッチ 



Definition at line 232 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{232   \textcolor{keywordtype}{logical} :: at\_Initialize = .false.}

\end{DoxyCode}


Referenced by at\+\_\+finalize(), and at\+\_\+initial().

\mbox{\Hypertarget{namespaceat__module_a4a9518475600043a3acd9204812b6735}\label{namespaceat__module_a4a9518475600043a3acd9204812b6735}} 
\index{at\_module@{at\_module}!g\_x@{g\_x}}
\index{g\_x@{g\_x}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{g\_x}{g\_x}}
{\footnotesize\ttfamily real(dp), dimension(\+:), allocatable, save, public at\+\_\+module\+::g\+\_\+x}



格子点座標(\+X)を格納した 1 次元配列 



Definition at line 218 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{218 \textcolor{keywordtype}{  real}(DP), \textcolor{keywordtype}{allocatable} :: g\_X(:)}

\end{DoxyCode}


Referenced by a\+\_\+interpolate\+\_\+at(), at\+\_\+finalize(), at\+\_\+initial(), and interpolate\+\_\+t().

\mbox{\Hypertarget{namespaceat__module_a2f9dd733cc468808f9356456e4b1c3b4}\label{namespaceat__module_a2f9dd733cc468808f9356456e4b1c3b4}} 
\index{at\_module@{at\_module}!g\_x\_weight@{g\_x\_weight}}
\index{g\_x\_weight@{g\_x\_weight}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{g\_x\_weight}{g\_x\_weight}}
{\footnotesize\ttfamily real(dp), dimension(\+:), allocatable, save, public at\+\_\+module\+::g\+\_\+x\+\_\+weight}



重み座標を格納した 1 次元配列 



Definition at line 220 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{220 \textcolor{keywordtype}{  real}(DP), \textcolor{keywordtype}{allocatable} :: g\_X\_Weight(:)}

\end{DoxyCode}


Referenced by a\+\_\+avr\+\_\+ag(), a\+\_\+int\+\_\+ag(), at\+\_\+finalize(), at\+\_\+initial(), avr\+\_\+g(), and int\+\_\+g().

\mbox{\Hypertarget{namespaceat__module_a8b21e0caf645222c31409b96aaf60757}\label{namespaceat__module_a8b21e0caf645222c31409b96aaf60757}} 
\index{at\_module@{at\_module}!im@{im}}
\index{im@{im}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{im}{im}}
{\footnotesize\ttfamily integer(8), save at\+\_\+module\+::im\hspace{0.3cm}{\ttfamily [private]}}



格子点数 



Definition at line 226 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{226   \textcolor{keywordtype}{integer(8)} :: im}

\end{DoxyCode}


Referenced by a\+\_\+int\+\_\+ag(), a\+\_\+interpolate\+\_\+at(), ag\+\_\+at(), at\+\_\+ag(), at\+\_\+boundariesgrid\+\_\+dd\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+dn\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+nd\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+nn\+\_\+2d(), at\+\_\+boundariestau\+\_\+dd\+\_\+2d(), at\+\_\+boundariestau\+\_\+dn\+\_\+2d(), at\+\_\+boundariestau\+\_\+nd\+\_\+2d(), at\+\_\+boundariestau\+\_\+nn\+\_\+2d(), at\+\_\+dx\+\_\+at(), at\+\_\+initial(), ut\+\_\+mpi\+\_\+module\+::h\+\_\+intlon\+\_\+xh(), interpolate\+\_\+t(), ut\+\_\+mpi\+\_\+module\+::ut\+\_\+mpi\+\_\+initial(), ut\+\_\+mpi\+\_\+module\+::vh\+\_\+intlon\+\_\+xvh(), ut\+\_\+mpi\+\_\+module\+::x\+\_\+intrad\+\_\+xh(), and ut\+\_\+mpi\+\_\+module\+::xv\+\_\+intrad\+\_\+xvh().

\mbox{\Hypertarget{namespaceat__module_af839ef9b62340f10dd5f8ef936a88043}\label{namespaceat__module_af839ef9b62340f10dd5f8ef936a88043}} 
\index{at\_module@{at\_module}!it@{it}}
\index{it@{it}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{it}{it}}
{\footnotesize\ttfamily integer(8), dimension(\+:), allocatable at\+\_\+module\+::it\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 223 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{223   \textcolor{keywordtype}{integer(8)}, \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable}  :: it}

\end{DoxyCode}


Referenced by ag\+\_\+at(), at\+\_\+ag(), at\+\_\+finalize(), and at\+\_\+initial().

\mbox{\Hypertarget{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}\label{namespaceat__module_a2281993c32a1393ebd0aba3c99ef6175}} 
\index{at\_module@{at\_module}!km@{km}}
\index{km@{km}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{km}{km}}
{\footnotesize\ttfamily integer(8), save at\+\_\+module\+::km\hspace{0.3cm}{\ttfamily [private]}}



切断波数 



Definition at line 228 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{228   \textcolor{keywordtype}{integer(8)} :: km}

\end{DoxyCode}


Referenced by ag\+\_\+at(), at\+\_\+ag(), at\+\_\+boundariesgrid\+\_\+dd\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+dn\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+nd\+\_\+2d(), at\+\_\+boundariesgrid\+\_\+nn\+\_\+2d(), at\+\_\+boundariestau\+\_\+dd\+\_\+2d(), at\+\_\+boundariestau\+\_\+dn\+\_\+2d(), at\+\_\+boundariestau\+\_\+nd\+\_\+2d(), at\+\_\+boundariestau\+\_\+nn\+\_\+2d(), at\+\_\+dx\+\_\+at(), at\+\_\+initial(), ut\+\_\+mpi\+\_\+module\+::intrad\+\_\+z(), ut\+\_\+mpi\+\_\+module\+::nmz\+\_\+poloidalenergyspectrum\+\_\+ut(), ut\+\_\+mpi\+\_\+module\+::nmz\+\_\+toroidalenergyspectrum\+\_\+ut(), ut\+\_\+mpi\+\_\+module\+::nz\+\_\+poloidalenergyspectrum\+\_\+ut(), ut\+\_\+mpi\+\_\+module\+::nz\+\_\+toroidalenergyspectrum\+\_\+ut(), ut\+\_\+mpi\+\_\+module\+::ut\+\_\+laplapol2polgrid\+\_\+ut(), ut\+\_\+mpi\+\_\+module\+::ut\+\_\+laplapol2poltau\+\_\+ut(), ut\+\_\+mpi\+\_\+module\+::ut\+\_\+mpi\+\_\+initial(), ut\+\_\+mpi\+\_\+module\+::ut\+\_\+polmagboundariesgrid(), ut\+\_\+mpi\+\_\+module\+::ut\+\_\+polmagboundariestau(), ut\+\_\+mpi\+\_\+module\+::ut\+\_\+torboundariesgrid(), ut\+\_\+mpi\+\_\+module\+::ut\+\_\+torboundariestau(), ut\+\_\+mpi\+\_\+module\+::ut\+\_\+tormagboundariesgrid(), ut\+\_\+mpi\+\_\+module\+::ut\+\_\+tormagboundariestau(), and ut\+\_\+mpi\+\_\+module\+::uz\+\_\+laplapol2pol\+\_\+uz().

\mbox{\Hypertarget{namespaceat__module_a486d20daa4d23e334d369505e15f77e8}\label{namespaceat__module_a486d20daa4d23e334d369505e15f77e8}} 
\index{at\_module@{at\_module}!t@{t}}
\index{t@{t}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{t}{t}}
{\footnotesize\ttfamily real(dp), dimension(\+:), allocatable at\+\_\+module\+::t\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 224 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{224 \textcolor{keywordtype}{  real}(DP), \textcolor{keywordtype}{dimension(:)}, \textcolor{keywordtype}{allocatable}    :: t}

\end{DoxyCode}


Referenced by ag\+\_\+at(), at\+\_\+ag(), at\+\_\+finalize(), and at\+\_\+initial().

\mbox{\Hypertarget{namespaceat__module_aabda03d57289f6b643ff1a46f54f0868}\label{namespaceat__module_aabda03d57289f6b643ff1a46f54f0868}} 
\index{at\_module@{at\_module}!xl@{xl}}
\index{xl@{xl}!at\_module@{at\_module}}
\doxysubsubsection{\texorpdfstring{xl}{xl}}
{\footnotesize\ttfamily real(dp), save at\+\_\+module\+::xl\hspace{0.3cm}{\ttfamily [private]}}



領域の大きさ 



Definition at line 230 of file at\+\_\+module.\+f90.


\begin{DoxyCode}{0}
\DoxyCodeLine{230 \textcolor{keywordtype}{  real}(DP)   :: xl}

\end{DoxyCode}


Referenced by at\+\_\+dx\+\_\+at(), and at\+\_\+initial().

