\hypertarget{interfaceat__module_1_1at__boundariesgrid__dd}{}\doxysection{at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+dd Interface Reference}
\label{interfaceat__module_1_1at__boundariesgrid__dd}\index{at\_module::at\_boundariesgrid\_dd@{at\_module::at\_boundariesgrid\_dd}}


両端ディリクレ型境界条件の適用(実空間での評価). 両境界での値を与える.  


\doxysubsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
subroutine \mbox{\hyperlink{interfaceat__module_1_1at__boundariesgrid__dd_a5b1507fd9c31440cdd4cd98b5e91734d}{at\+\_\+boundariesgrid\+\_\+dd\+\_\+1d}} (t\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Dirichlet 型境界条件の適用(実空間での評価, 1 次元配列用) 両境界での値を与える. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{interfaceat__module_1_1at__boundariesgrid__dd_a8cfbef30ddff6d3219fdf40e6968abe2}{at\+\_\+boundariesgrid\+\_\+dd\+\_\+2d}} (at\+\_\+data, values)
\begin{DoxyCompactList}\small\item\em Dirichlet 型境界条件の適用(実空間での評価, 2 次元配列用) 両境界での値を与える. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
両端ディリクレ型境界条件の適用(実空間での評価). 両境界での値を与える. 

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



\doxysubsection{Member Function/\+Subroutine Documentation}
\mbox{\Hypertarget{interfaceat__module_1_1at__boundariesgrid__dd_a5b1507fd9c31440cdd4cd98b5e91734d}\label{interfaceat__module_1_1at__boundariesgrid__dd_a5b1507fd9c31440cdd4cd98b5e91734d}} 
\index{at\_module::at\_boundariesgrid\_dd@{at\_module::at\_boundariesgrid\_dd}!at\_boundariesgrid\_dd\_1d@{at\_boundariesgrid\_dd\_1d}}
\index{at\_boundariesgrid\_dd\_1d@{at\_boundariesgrid\_dd\_1d}!at\_module::at\_boundariesgrid\_dd@{at\_module::at\_boundariesgrid\_dd}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_dd\_1d()}{at\_boundariesgrid\_dd\_1d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+dd\+::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}
\mbox{\Hypertarget{interfaceat__module_1_1at__boundariesgrid__dd_a8cfbef30ddff6d3219fdf40e6968abe2}\label{interfaceat__module_1_1at__boundariesgrid__dd_a8cfbef30ddff6d3219fdf40e6968abe2}} 
\index{at\_module::at\_boundariesgrid\_dd@{at\_module::at\_boundariesgrid\_dd}!at\_boundariesgrid\_dd\_2d@{at\_boundariesgrid\_dd\_2d}}
\index{at\_boundariesgrid\_dd\_2d@{at\_boundariesgrid\_dd\_2d}!at\_module::at\_boundariesgrid\_dd@{at\_module::at\_boundariesgrid\_dd}}
\doxysubsubsection{\texorpdfstring{at\_boundariesgrid\_dd\_2d()}{at\_boundariesgrid\_dd\_2d()}}
{\footnotesize\ttfamily subroutine at\+\_\+module\+::at\+\_\+boundariesgrid\+\_\+dd\+::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}


The documentation for this interface was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
at\+\_\+module/\mbox{\hyperlink{at__module_8f90}{at\+\_\+module.\+f90}}\end{DoxyCompactItemize}
