\hypertarget{namespacegtool__historyauto__internal}{}\section{gtool\+\_\+historyauto\+\_\+internal Module Reference}
\label{namespacegtool__historyauto__internal}\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsection*{Data Types}
\begin{DoxyCompactItemize}
\item 
interface \hyperlink{interfacegtool__historyauto__internal_1_1averagereduce}{averagereduce}
\item 
type \hyperlink{structgtool__historyauto__internal_1_1axes__weight}{axes\+\_\+weight}
\item 
type \hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\+\_\+history\+\_\+axis\+\_\+data}
\item 
type \hyperlink{structgtool__historyauto__internal_1_1gt__history__multi}{gt\+\_\+history\+\_\+multi}
\item 
interface \hyperlink{interfacegtool__historyauto__internal_1_1hstfilecreate}{hstfilecreate}
\item 
interface \hyperlink{interfacegtool__historyauto__internal_1_1hstvarsoutputcheck}{hstvarsoutputcheck}
\item 
type \hyperlink{structgtool__historyauto__internal_1_1slice__info}{slice\+\_\+info}
\item 
type \hyperlink{structgtool__historyauto__internal_1_1space__avr__info}{space\+\_\+avr\+\_\+info}
\end{DoxyCompactItemize}
\subsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine, public \hyperlink{namespacegtool__historyauto__internal_afdf7de560a1c78afe25a12f99a0551fd}{hstvarsoutputcheck} (time, stime\+\_\+index)
\item 
subroutine, public \hyperlink{namespacegtool__historyauto__internal_a11f37618c3ad49fe895dccfc7ed2a342}{hstfilecreate} (gthist, varname, time)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a4fb192dede65401fd5058a635e042bc3}{averagereducereal1} (array, space\+\_\+average, weight1, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_aef561ab212e1085c87da8aad1300ddd8}{averagereducereal2} (array, space\+\_\+average, weight1, weight2, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a4009694ae7834fa6d0dddb36b80322eb}{averagereducereal3} (array, space\+\_\+average, weight1, weight2, weight3, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_ac0a9887027bacdc51028a62466d9fec9}{averagereducereal4} (array, space\+\_\+average, weight1, weight2, weight3, weight4, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a4cd3c3800dde276769e10db92db601d0}{averagereducereal5} (array, space\+\_\+average, weight1, weight2, weight3, weight4, weight5, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_acb3d0d4eb5e20bb9a43bbe35d00a7bca}{averagereducereal6} (array, space\+\_\+average, weight1, weight2, weight3, weight4, weight5, weight6, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a93408e0787bbdc0ec3a235b6c4283dbd}{averagereducereal7} (array, space\+\_\+average, weight1, weight2, weight3, weight4, weight5, weight6, weight7, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a179e3e9d5d5d1a4fa094d2ec2d5050c0}{averagereducedouble1} (array, space\+\_\+average, weight1, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a1b09f242d8be78e2f1106eeb56306f2a}{averagereducedouble2} (array, space\+\_\+average, weight1, weight2, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_ab926593111834f893e514cd4e8cb43d0}{averagereducedouble3} (array, space\+\_\+average, weight1, weight2, weight3, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a7a7baf8c91015c233ec61df79be3309a}{averagereducedouble4} (array, space\+\_\+average, weight1, weight2, weight3, weight4, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_ac978821ad5229267e5e3c1ba5febae8d}{averagereducedouble5} (array, space\+\_\+average, weight1, weight2, weight3, weight4, weight5, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a117d8a3d5775287590b04574fad539ef}{averagereducedouble6} (array, space\+\_\+average, weight1, weight2, weight3, weight4, weight5, weight6, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a5ce2d25db3bc6227d734b3a59cd5ef5e}{averagereducedouble7} (array, space\+\_\+average, weight1, weight2, weight3, weight4, weight5, weight6, weight7, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_abc3f4d7a01b03c3a1e2631045904a715}{averagereduceint1} (array, space\+\_\+average, weight1, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a2626164a8e4599e75579b0921bfc2459}{averagereduceint2} (array, space\+\_\+average, weight1, weight2, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a1ad69f122ea4fe1fd25474910ce85d10}{averagereduceint3} (array, space\+\_\+average, weight1, weight2, weight3, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_ad9b246817e9425a159061536d8ab8453}{averagereduceint4} (array, space\+\_\+average, weight1, weight2, weight3, weight4, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_ae3603baa1620e6bffce5934b83df60cb}{averagereduceint5} (array, space\+\_\+average, weight1, weight2, weight3, weight4, weight5, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_a4e6997013880dcdea5c0a1d9fdd47424}{averagereduceint6} (array, space\+\_\+average, weight1, weight2, weight3, weight4, weight5, weight6, array\+\_\+avr)
\item 
subroutine \hyperlink{namespacegtool__historyauto__internal_afcac23dd122bcf57385461f5d4446c8b}{averagereduceint7} (array, space\+\_\+average, weight1, weight2, weight3, weight4, weight5, weight6, weight7, array\+\_\+avr)
\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
integer, save, public \hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}
\item 
integer, save, public \hyperlink{namespacegtool__historyauto__internal_ac0846e320d7181ab21f8ef8d482a6a26}{numwgts} = 0
\item 
character($\ast$), parameter, public \hyperlink{namespacegtool__historyauto__internal_a6727d46b782ecdf84b054c46c601faff}{wgtsuf} = \textquotesingle{}\+\_\+weight\textquotesingle{}
\item 
integer, save, public \hyperlink{namespacegtool__historyauto__internal_af2a97d3aefbba8947148f51c961f147c}{numvars} = 0
\item 
integer, parameter, public \hyperlink{namespacegtool__historyauto__internal_a697cf55887ae9c62958e7061f3241bfc}{max\+\_\+dims\+\_\+depended\+\_\+by\+\_\+var} = 7
\item 
real(dp), parameter, public \hyperlink{namespacegtool__historyauto__internal_aff3a151a3a63c38642c94584e9d9a26b}{max\+\_\+remainder\+\_\+range} = 1.\+0e-\/3\+\_\+\+DP
\item 
character(string), save, public \hyperlink{namespacegtool__historyauto__internal_ae68f71867832f25eacda9f4a4db52e3c}{title\+\_\+save}
\item 
character(string), save, public \hyperlink{namespacegtool__historyauto__internal_ad4d076d628b34e22932c269e1cbe25ce}{source\+\_\+save}
\item 
character(string), save, public \hyperlink{namespacegtool__historyauto__internal_aee003bb35878182aa2b849b804902324}{institution\+\_\+save}
\item 
character(string), save, public \hyperlink{namespacegtool__historyauto__internal_a171ea84f88543027686d2d68202d7274}{conventions\+\_\+save}
\item 
character(token), save, public \hyperlink{namespacegtool__historyauto__internal_a046cc4e220d7dd7d44cf0287a10abdf5}{gt\+\_\+version\+\_\+save}
\item 
character(token), save, public \hyperlink{namespacegtool__historyauto__internal_ab995e0150e4e838e8b9848bd566c5299}{rank\+\_\+save}
\item 
integer, parameter, public \hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum} = 1
\item 
real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public \hyperlink{namespacegtool__historyauto__internal_a1c560befceb8897d4b874e7aba0b0d20}{saved\+\_\+time}
\item 
integer, save, public \hyperlink{namespacegtool__historyauto__internal_a9c4a16b5306bfac5769f0b3bf55e920e}{checked\+\_\+tstepnum} = 0
\item 
integer, save, public \hyperlink{namespacegtool__historyauto__internal_a3abd20dc34035acb6a63f0a0bb52dd15}{checked\+\_\+tstep\+\_\+varnum} = 0
\item 
integer, save, public \hyperlink{namespacegtool__historyauto__internal_a3e396aa489523555a54c8e0c75440ae0}{saved\+\_\+tstep} = 1
\item 
character(token), save, public \hyperlink{namespacegtool__historyauto__internal_a6d2a47bd91b9ef5d9e721d386de12629}{time\+\_\+unit\+\_\+bycreate} = \textquotesingle{}\textquotesingle{}
\item 
character(string), save, public \hyperlink{namespacegtool__historyauto__internal_ad2512828e2c1794ae7cf143781d8c9ed}{time\+\_\+unit\+\_\+suffix} = \textquotesingle{}\textquotesingle{}
\item 
type(gthst\+\_\+nmlinfo), save, public \hyperlink{namespacegtool__historyauto__internal_a08a505d0576b7a6390e6f7a715ccc2b4}{gthstnml}
\item 
type(gt\+\_\+history\+\_\+axis), dimension(1\+:nf90\+\_\+max\+\_\+dims), target, save, public \hyperlink{namespacegtool__historyauto__internal_ada7a49a17970ad9d96e320bb53420325}{gthst\+\_\+axes}
\item 
type(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\+\_\+history\+\_\+axis\+\_\+data}), dimension(1\+:nf90\+\_\+max\+\_\+dims), target, save, public \hyperlink{namespacegtool__historyauto__internal_ae2e0770f75603274b70be4ef623fb6b5}{data\+\_\+axes}
\item 
type(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\+\_\+history\+\_\+axis\+\_\+data}), dimension(1\+:nf90\+\_\+max\+\_\+dims), target, save, public \hyperlink{namespacegtool__historyauto__internal_a58a6a57fae2aee8bfe4ffeb74ccd51cf}{data\+\_\+axes\+\_\+whole}
\item 
type(gt\+\_\+history\+\_\+varinfo), dimension(1\+:nf90\+\_\+max\+\_\+dims), save, public \hyperlink{namespacegtool__historyauto__internal_ab912d1857aa08f0ed0328bd6cd19270a}{gthst\+\_\+weights}
\item 
type(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\+\_\+history\+\_\+axis\+\_\+data}), dimension(1\+:nf90\+\_\+max\+\_\+dims), target, save, public \hyperlink{namespacegtool__historyauto__internal_ab4a4d914908bc4d226c6e00f22ab681a}{data\+\_\+weights}
\item 
logical, save, public \hyperlink{namespacegtool__historyauto__internal_aa087ebecb90b20901204f5497d24661a}{save\+\_\+mpi\+\_\+split} = .false.
\item 
logical, save, public \hyperlink{namespacegtool__historyauto__internal_a6aa46993d72f521af70cf3977df24bf1}{save\+\_\+mpi\+\_\+gather} = .false.
\item 
integer, parameter, public \hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars} = 256
\item 
type(gt\+\_\+history\+\_\+varinfo), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_a6f4962bc3ba6447d7cc53c1b88c9bd4e}{gthst\+\_\+vars}
\item 
character(token), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_a310d8344095b79e8492908ddcebde8fd}{varname\+\_\+vars} = \textquotesingle{}\textquotesingle{}
\item 
type(\hyperlink{structgtool__historyauto__internal_1_1gt__history__multi}{gt\+\_\+history\+\_\+multi}), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_a23eb96add87a87f752d605b593113352}{gthst\+\_\+history\+\_\+vars}
\item 
logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_af39402e77409e39aa414ee50daa50e12}{output\+\_\+valid\+\_\+vars} = .false.
\item 
logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}, 1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public \hyperlink{namespacegtool__historyauto__internal_a09c7f8df28f4a08ff4ccc13ef1dc09d5}{create\+\_\+timing\+\_\+vars} = .false.
\item 
logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}, 1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public \hyperlink{namespacegtool__historyauto__internal_a07930b5a02bd90f8cfacd7eb854d16ed}{close\+\_\+timing\+\_\+vars} = .false.
\item 
logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}, 1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public \hyperlink{namespacegtool__historyauto__internal_a63dcfda2a12d908ea7c299e41b4ae889}{renew\+\_\+timing\+\_\+vars} = .false.
\item 
logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}, 1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public \hyperlink{namespacegtool__historyauto__internal_a949c34899075f1b5f8125cc2b72f81eb}{output\+\_\+timing\+\_\+vars} = .false.
\item 
logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}, 1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public \hyperlink{namespacegtool__historyauto__internal_aa6b7a1ee5a20f19ed0613b71073fdf6d}{output\+\_\+timing\+\_\+avr\+\_\+vars} = .false.
\item 
real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_a632ce982118e69400ac90698adace1e6}{interval\+\_\+time\+\_\+vars}
\item 
integer, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_aeb9ac548a4ebedfafc5c2eb706c74339}{interval\+\_\+unitsym\+\_\+vars}
\item 
real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_aa9911354c37b527aa9926ea2095df0f0}{prev\+\_\+outtime\+\_\+vars}
\item 
logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_aa25f721e1d915ff874fdc0262862594c}{tavr\+\_\+vars} = .false.
\item 
real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_abf3e748f6c50b54af3d75deb049c4b3e}{origin\+\_\+time\+\_\+vars}
\item 
real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_a9fe6d83d81115f85455814c9b04c93fa}{terminus\+\_\+time\+\_\+vars}
\item 
logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_af82718f8d0b65531180dfa0c91b15b0f}{histaddvar\+\_\+vars} = .false.
\item 
real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_a3387552625cfe65b04a0e419f94a79d7}{newfile\+\_\+inttime\+\_\+vars}
\item 
real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_a97a247a94cc02cdd16d8616c2c0b54ab}{newfile\+\_\+createtime\+\_\+vars}
\item 
logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public \hyperlink{namespacegtool__historyauto__internal_a5c5b5c13f8c9a1f51190b33c6cffbabf}{flag\+\_\+output\+\_\+prev\+\_\+vars} = .false.
\item 
real(dp), save, public \hyperlink{namespacegtool__historyauto__internal_a9399975605af7bbc7c94d27c565a9838}{zero\+\_\+time}
\item 
type(\hyperlink{structgtool__historyauto__internal_1_1slice__info}{slice\+\_\+info}), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), target, save, public \hyperlink{namespacegtool__historyauto__internal_a4aa17640fe852d239cd4650e39dd4e1e}{slice\+\_\+vars}
\item 
type(\hyperlink{structgtool__historyauto__internal_1_1axes__weight}{axes\+\_\+weight}), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), target, save, public \hyperlink{namespacegtool__historyauto__internal_a06ec540d19db7efce796bc6938f81896}{weight\+\_\+vars}
\item 
type(\hyperlink{structgtool__historyauto__internal_1_1space__avr__info}{space\+\_\+avr\+\_\+info}), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), target, save, public \hyperlink{namespacegtool__historyauto__internal_a34b79875d0a188614f436e0660288b56}{space\+\_\+avr\+\_\+vars}
\item 
logical, save, public \hyperlink{namespacegtool__historyauto__internal_af834195df8f6f700789260981e4609cd}{all\+\_\+output\+\_\+save} = .false.
\item 
logical, save, public \hyperlink{namespacegtool__historyauto__internal_ae891f791f06836fb1d42b7185e6d3afa}{flag\+\_\+allvarfixed} = .false.
\item 
type(dc\+\_\+cal), save, public \hyperlink{namespacegtool__historyauto__internal_abb3028b474fbd886d4ab3d82d25fbe2f}{cal\+\_\+save}
\item 
logical, save, public \hyperlink{namespacegtool__historyauto__internal_af1dd0091604d86d7eaca08eecfa9b737}{initialized} = .false.
\item 
character($\ast$), parameter, public \hyperlink{namespacegtool__historyauto__internal_a85ef80f0683224181c1f0741bb07308a}{sub\+\_\+sname} = \char`\"{}Hist\+Auto\char`\"{}
\item 
character($\ast$), parameter, public \hyperlink{namespacegtool__historyauto__internal_ad719685d8938bd2a1e7aa36f0f57210d}{version} = \textquotesingle{}\$Name\+: \$\textquotesingle{} // \textquotesingle{}\$Id\+: gtool\+\_\+historyauto\+\_\+internal.\+rb2f90,v 1.\+6 2010-\/07-\/04 22\+:01\+:51 morikawa Exp \$\textquotesingle{}
\end{DoxyCompactItemize}


\subsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a179e3e9d5d5d1a4fa094d2ec2d5050c0}\label{namespacegtool__historyauto__internal_a179e3e9d5d5d1a4fa094d2ec2d5050c0}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducedouble1@{averagereducedouble1}}
\index{averagereducedouble1@{averagereducedouble1}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducedouble1()}{averagereducedouble1()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducedouble1 (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:), intent(in), target}]{array,  }\item[{logical, dimension(1), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 2384 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
2384     \textcolor{comment}{!}
2385     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
2386     \textcolor{comment}{! array を平均化して array\_avr に返します.}
2387     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
2388     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
2389     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
2390     \textcolor{comment}{!}
2391     \textcolor{keywordtype}{implicit none}
2392     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:)
2393     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(1)
2394                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
2395                     
2396     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr(:) \textcolor{comment}{! (out)}
2397 
2398     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:)
2399 
2400                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:)
2401                     
2402 
2403     \textcolor{keywordtype}{integer}:: array\_shape(1)
2404     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
2405     \textcolor{keywordtype}{real(DP)}:: weight\_sum
2406   \textcolor{keywordflow}{continue}
2407 
2408     array\_shape = shape( array )
2409     array\_avr\_work => array
2410 
2411                     
2412                       
2413                         
2414     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
2415       dim\_size = array\_shape(1)
2416       array\_shape(1) = 1
2417       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
2418                           
2419         &  ) )
2420       array\_avr\_work1 = 0.0\_dp
2421       weight\_sum = 0.0\_dp
2422       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2423         array\_avr\_work1(1) = array\_avr\_work1(1) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2424         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2425 \textcolor{keywordflow}{      end do}
2426       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
2427       array\_avr\_work  => array\_avr\_work1
2428 \textcolor{keywordflow}{    end if}
2429 
2430                         
2431                       
2432 
2433                     
2434 
2435 
2436       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
2437                     
2438         & ) )
2439 
2440       array\_avr = array\_avr\_work
2441 
2442       \textcolor{keyword}{nullify}( array\_avr\_work )
2443 
2444                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
2445                     
2446 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a1b09f242d8be78e2f1106eeb56306f2a}\label{namespacegtool__historyauto__internal_a1b09f242d8be78e2f1106eeb56306f2a}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducedouble2@{averagereducedouble2}}
\index{averagereducedouble2@{averagereducedouble2}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducedouble2()}{averagereducedouble2()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducedouble2 (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(2), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 2458 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
2458     \textcolor{comment}{!}
2459     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
2460     \textcolor{comment}{! array を平均化して array\_avr に返します.}
2461     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
2462     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
2463     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
2464     \textcolor{comment}{!}
2465     \textcolor{keywordtype}{implicit none}
2466     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:)
2467     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(2)
2468                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
2469                     
2470     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
2471                     
2472     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:) \textcolor{comment}{! (out)}
2473 
2474     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:)
2475 
2476                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:)
2477                     
2478     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:)
2479                     
2480 
2481     \textcolor{keywordtype}{integer}:: array\_shape(2)
2482     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
2483     \textcolor{keywordtype}{real(DP)}:: weight\_sum
2484   \textcolor{keywordflow}{continue}
2485 
2486     array\_shape = shape( array )
2487     array\_avr\_work => array
2488 
2489                     
2490                       
2491                         
2492     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
2493       dim\_size = array\_shape(1)
2494       array\_shape(1) = 1
2495       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
2496                                   & , array\_shape(2) &
2497                           
2498         &  ) )
2499       array\_avr\_work1 = 0.0\_dp
2500       weight\_sum = 0.0\_dp
2501       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2502         array\_avr\_work1(1,:) = array\_avr\_work1(1,:) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight1(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2503         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2504 \textcolor{keywordflow}{      end do}
2505       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
2506       array\_avr\_work  => array\_avr\_work1
2507 \textcolor{keywordflow}{    end if}
2508 
2509                         
2510 
2511     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
2512       dim\_size = array\_shape(2)
2513       array\_shape(2) = 1
2514       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
2515                                   & , array\_shape(2) &
2516                           
2517         &  ) )
2518       array\_avr\_work2 = 0.0\_dp
2519       weight\_sum = 0.0\_dp
2520       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2521         array\_avr\_work2(:,1) = array\_avr\_work2(:,1) + array\_avr\_work(:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight2(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2522         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2523 \textcolor{keywordflow}{      end do}
2524       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
2525       array\_avr\_work  => array\_avr\_work2
2526 \textcolor{keywordflow}{    end if}
2527 
2528                         
2529                       
2530 
2531                     
2532 
2533 
2534       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
2535                             & , array\_shape(2) &
2536                     
2537         & ) )
2538 
2539       array\_avr = array\_avr\_work
2540 
2541       \textcolor{keyword}{nullify}( array\_avr\_work )
2542 
2543                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
2544                     
2545       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
2546                     
2547 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ab926593111834f893e514cd4e8cb43d0}\label{namespacegtool__historyauto__internal_ab926593111834f893e514cd4e8cb43d0}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducedouble3@{averagereducedouble3}}
\index{averagereducedouble3@{averagereducedouble3}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducedouble3()}{averagereducedouble3()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducedouble3 (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(3), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 2561 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
2561     \textcolor{comment}{!}
2562     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
2563     \textcolor{comment}{! array を平均化して array\_avr に返します.}
2564     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
2565     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
2566     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
2567     \textcolor{comment}{!}
2568     \textcolor{keywordtype}{implicit none}
2569     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:)
2570     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(3)
2571                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
2572                     
2573     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
2574                     
2575     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
2576                     
2577     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:) \textcolor{comment}{! (out)}
2578 
2579     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:)
2580 
2581                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:)
2582                     
2583     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:)
2584                     
2585     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:)
2586                     
2587 
2588     \textcolor{keywordtype}{integer}:: array\_shape(3)
2589     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
2590     \textcolor{keywordtype}{real(DP)}:: weight\_sum
2591   \textcolor{keywordflow}{continue}
2592 
2593     array\_shape = shape( array )
2594     array\_avr\_work => array
2595 
2596                     
2597                       
2598                         
2599     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
2600       dim\_size = array\_shape(1)
2601       array\_shape(1) = 1
2602       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
2603                                   & , array\_shape(2) &
2604                           
2605         & , array\_shape(3) &
2606                           
2607         &  ) )
2608       array\_avr\_work1 = 0.0\_dp
2609       weight\_sum = 0.0\_dp
2610       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2611         array\_avr\_work1(1,:,:) = array\_avr\_work1(1,:,:) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight1(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2612         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2613 \textcolor{keywordflow}{      end do}
2614       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
2615       array\_avr\_work  => array\_avr\_work1
2616 \textcolor{keywordflow}{    end if}
2617 
2618                         
2619 
2620     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
2621       dim\_size = array\_shape(2)
2622       array\_shape(2) = 1
2623       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
2624                                   & , array\_shape(2) &
2625                           
2626         & , array\_shape(3) &
2627                           
2628         &  ) )
2629       array\_avr\_work2 = 0.0\_dp
2630       weight\_sum = 0.0\_dp
2631       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2632         array\_avr\_work2(:,1,:) = array\_avr\_work2(:,1,:) + array\_avr\_work(:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight2(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2633         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2634 \textcolor{keywordflow}{      end do}
2635       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
2636       array\_avr\_work  => array\_avr\_work2
2637 \textcolor{keywordflow}{    end if}
2638 
2639                         
2640 
2641     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
2642       dim\_size = array\_shape(3)
2643       array\_shape(3) = 1
2644       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
2645                                   & , array\_shape(2) &
2646                           
2647         & , array\_shape(3) &
2648                           
2649         &  ) )
2650       array\_avr\_work3 = 0.0\_dp
2651       weight\_sum = 0.0\_dp
2652       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2653         array\_avr\_work3(:,:,1) = array\_avr\_work3(:,:,1) + array\_avr\_work(:,:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight3(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2654         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2655 \textcolor{keywordflow}{      end do}
2656       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
2657       array\_avr\_work  => array\_avr\_work3
2658 \textcolor{keywordflow}{    end if}
2659 
2660                         
2661                       
2662 
2663                     
2664 
2665 
2666       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
2667                             & , array\_shape(2) &
2668                     
2669         & , array\_shape(3) &
2670                     
2671         & ) )
2672 
2673       array\_avr = array\_avr\_work
2674 
2675       \textcolor{keyword}{nullify}( array\_avr\_work )
2676 
2677                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
2678                     
2679       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
2680                     
2681       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
2682                     
2683 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a7a7baf8c91015c233ec61df79be3309a}\label{namespacegtool__historyauto__internal_a7a7baf8c91015c233ec61df79be3309a}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducedouble4@{averagereducedouble4}}
\index{averagereducedouble4@{averagereducedouble4}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducedouble4()}{averagereducedouble4()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducedouble4 (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(4), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real(dp), dimension(\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 2699 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
2699     \textcolor{comment}{!}
2700     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
2701     \textcolor{comment}{! array を平均化して array\_avr に返します.}
2702     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
2703     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
2704     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
2705     \textcolor{comment}{!}
2706     \textcolor{keywordtype}{implicit none}
2707     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:)
2708     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(4)
2709                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
2710                     
2711     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
2712                     
2713     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
2714                     
2715     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
2716                     
2717     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:) \textcolor{comment}{! (out)}
2718 
2719     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:)
2720 
2721                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:)
2722                     
2723     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:)
2724                     
2725     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:)
2726                     
2727     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:)
2728                     
2729 
2730     \textcolor{keywordtype}{integer}:: array\_shape(4)
2731     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
2732     \textcolor{keywordtype}{real(DP)}:: weight\_sum
2733   \textcolor{keywordflow}{continue}
2734 
2735     array\_shape = shape( array )
2736     array\_avr\_work => array
2737 
2738                     
2739                       
2740                         
2741     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
2742       dim\_size = array\_shape(1)
2743       array\_shape(1) = 1
2744       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
2745                                   & , array\_shape(2) &
2746                           
2747         & , array\_shape(3) &
2748                           
2749         & , array\_shape(4) &
2750                           
2751         &  ) )
2752       array\_avr\_work1 = 0.0\_dp
2753       weight\_sum = 0.0\_dp
2754       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2755         array\_avr\_work1(1,:,:,:) = array\_avr\_work1(1,:,:,:) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight1(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2756         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2757 \textcolor{keywordflow}{      end do}
2758       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
2759       array\_avr\_work  => array\_avr\_work1
2760 \textcolor{keywordflow}{    end if}
2761 
2762                         
2763 
2764     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
2765       dim\_size = array\_shape(2)
2766       array\_shape(2) = 1
2767       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
2768                                   & , array\_shape(2) &
2769                           
2770         & , array\_shape(3) &
2771                           
2772         & , array\_shape(4) &
2773                           
2774         &  ) )
2775       array\_avr\_work2 = 0.0\_dp
2776       weight\_sum = 0.0\_dp
2777       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2778         array\_avr\_work2(:,1,:,:) = array\_avr\_work2(:,1,:,:) + array\_avr\_work(:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight2(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2779         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2780 \textcolor{keywordflow}{      end do}
2781       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
2782       array\_avr\_work  => array\_avr\_work2
2783 \textcolor{keywordflow}{    end if}
2784 
2785                         
2786 
2787     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
2788       dim\_size = array\_shape(3)
2789       array\_shape(3) = 1
2790       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
2791                                   & , array\_shape(2) &
2792                           
2793         & , array\_shape(3) &
2794                           
2795         & , array\_shape(4) &
2796                           
2797         &  ) )
2798       array\_avr\_work3 = 0.0\_dp
2799       weight\_sum = 0.0\_dp
2800       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2801         array\_avr\_work3(:,:,1,:) = array\_avr\_work3(:,:,1,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2802         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2803 \textcolor{keywordflow}{      end do}
2804       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
2805       array\_avr\_work  => array\_avr\_work3
2806 \textcolor{keywordflow}{    end if}
2807 
2808                         
2809 
2810     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
2811       dim\_size = array\_shape(4)
2812       array\_shape(4) = 1
2813       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
2814                                   & , array\_shape(2) &
2815                           
2816         & , array\_shape(3) &
2817                           
2818         & , array\_shape(4) &
2819                           
2820         &  ) )
2821       array\_avr\_work4 = 0.0\_dp
2822       weight\_sum = 0.0\_dp
2823       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2824         array\_avr\_work4(:,:,:,1) = array\_avr\_work4(:,:,:,1) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2825         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2826 \textcolor{keywordflow}{      end do}
2827       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
2828       array\_avr\_work  => array\_avr\_work4
2829 \textcolor{keywordflow}{    end if}
2830 
2831                         
2832                       
2833 
2834                     
2835 
2836 
2837       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
2838                             & , array\_shape(2) &
2839                     
2840         & , array\_shape(3) &
2841                     
2842         & , array\_shape(4) &
2843                     
2844         & ) )
2845 
2846       array\_avr = array\_avr\_work
2847 
2848       \textcolor{keyword}{nullify}( array\_avr\_work )
2849 
2850                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
2851                     
2852       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
2853                     
2854       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
2855                     
2856       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
2857                     
2858 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ac978821ad5229267e5e3c1ba5febae8d}\label{namespacegtool__historyauto__internal_ac978821ad5229267e5e3c1ba5febae8d}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducedouble5@{averagereducedouble5}}
\index{averagereducedouble5@{averagereducedouble5}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducedouble5()}{averagereducedouble5()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducedouble5 (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(5), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight5,  }\item[{real(dp), dimension(\+:,\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 2876 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
2876     \textcolor{comment}{!}
2877     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
2878     \textcolor{comment}{! array を平均化して array\_avr に返します.}
2879     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
2880     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
2881     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
2882     \textcolor{comment}{!}
2883     \textcolor{keywordtype}{implicit none}
2884     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:,:)
2885     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(5)
2886                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
2887                     
2888     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
2889                     
2890     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
2891                     
2892     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
2893                     
2894     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight5(:)
2895                     
2896     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:,:) \textcolor{comment}{! (out)}
2897 
2898     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:,:)
2899 
2900                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:,:)
2901                     
2902     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:,:)
2903                     
2904     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:,:)
2905                     
2906     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:,:)
2907                     
2908     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work5(:,:,:,:,:)
2909                     
2910 
2911     \textcolor{keywordtype}{integer}:: array\_shape(5)
2912     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
2913     \textcolor{keywordtype}{real(DP)}:: weight\_sum
2914   \textcolor{keywordflow}{continue}
2915 
2916     array\_shape = shape( array )
2917     array\_avr\_work => array
2918 
2919                     
2920                       
2921                         
2922     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
2923       dim\_size = array\_shape(1)
2924       array\_shape(1) = 1
2925       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
2926                                   & , array\_shape(2) &
2927                           
2928         & , array\_shape(3) &
2929                           
2930         & , array\_shape(4) &
2931                           
2932         & , array\_shape(5) &
2933                           
2934         &  ) )
2935       array\_avr\_work1 = 0.0\_dp
2936       weight\_sum = 0.0\_dp
2937       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2938         array\_avr\_work1(1,:,:,:,:) = array\_avr\_work1(1,:,:,:,:) + array\_avr\_work(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2939         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2940 \textcolor{keywordflow}{      end do}
2941       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
2942       array\_avr\_work  => array\_avr\_work1
2943 \textcolor{keywordflow}{    end if}
2944 
2945                         
2946 
2947     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
2948       dim\_size = array\_shape(2)
2949       array\_shape(2) = 1
2950       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
2951                                   & , array\_shape(2) &
2952                           
2953         & , array\_shape(3) &
2954                           
2955         & , array\_shape(4) &
2956                           
2957         & , array\_shape(5) &
2958                           
2959         &  ) )
2960       array\_avr\_work2 = 0.0\_dp
2961       weight\_sum = 0.0\_dp
2962       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2963         array\_avr\_work2(:,1,:,:,:) = array\_avr\_work2(:,1,:,:,:) + array\_avr\_work(:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2964         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2965 \textcolor{keywordflow}{      end do}
2966       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
2967       array\_avr\_work  => array\_avr\_work2
2968 \textcolor{keywordflow}{    end if}
2969 
2970                         
2971 
2972     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
2973       dim\_size = array\_shape(3)
2974       array\_shape(3) = 1
2975       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
2976                                   & , array\_shape(2) &
2977                           
2978         & , array\_shape(3) &
2979                           
2980         & , array\_shape(4) &
2981                           
2982         & , array\_shape(5) &
2983                           
2984         &  ) )
2985       array\_avr\_work3 = 0.0\_dp
2986       weight\_sum = 0.0\_dp
2987       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2988         array\_avr\_work3(:,:,1,:,:) = array\_avr\_work3(:,:,1,:,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2989         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2990 \textcolor{keywordflow}{      end do}
2991       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
2992       array\_avr\_work  => array\_avr\_work3
2993 \textcolor{keywordflow}{    end if}
2994 
2995                         
2996 
2997     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
2998       dim\_size = array\_shape(4)
2999       array\_shape(4) = 1
3000       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
3001                                   & , array\_shape(2) &
3002                           
3003         & , array\_shape(3) &
3004                           
3005         & , array\_shape(4) &
3006                           
3007         & , array\_shape(5) &
3008                           
3009         &  ) )
3010       array\_avr\_work4 = 0.0\_dp
3011       weight\_sum = 0.0\_dp
3012       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3013         array\_avr\_work4(:,:,:,1,:) = array\_avr\_work4(:,:,:,1,:) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3014         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3015 \textcolor{keywordflow}{      end do}
3016       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
3017       array\_avr\_work  => array\_avr\_work4
3018 \textcolor{keywordflow}{    end if}
3019 
3020                         
3021 
3022     \textcolor{keywordflow}{if} ( space\_average(5) ) \textcolor{keywordflow}{then}
3023       dim\_size = array\_shape(5)
3024       array\_shape(5) = 1
3025       \textcolor{keyword}{allocate}( array\_avr\_work5( array\_shape(1) &
3026                                   & , array\_shape(2) &
3027                           
3028         & , array\_shape(3) &
3029                           
3030         & , array\_shape(4) &
3031                           
3032         & , array\_shape(5) &
3033                           
3034         &  ) )
3035       array\_avr\_work5 = 0.0\_dp
3036       weight\_sum = 0.0\_dp
3037       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3038         array\_avr\_work5(:,:,:,:,1) = array\_avr\_work5(:,:,:,:,1) + array\_avr\_work(:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3039         weight\_sum = weight\_sum + weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3040 \textcolor{keywordflow}{      end do}
3041       array\_avr\_work5 = array\_avr\_work5 / weight\_sum
3042       array\_avr\_work  => array\_avr\_work5
3043 \textcolor{keywordflow}{    end if}
3044 
3045                         
3046                       
3047 
3048                     
3049 
3050 
3051       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
3052                             & , array\_shape(2) &
3053                     
3054         & , array\_shape(3) &
3055                     
3056         & , array\_shape(4) &
3057                     
3058         & , array\_shape(5) &
3059                     
3060         & ) )
3061 
3062       array\_avr = array\_avr\_work
3063 
3064       \textcolor{keyword}{nullify}( array\_avr\_work )
3065 
3066                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
3067                     
3068       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
3069                     
3070       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
3071                     
3072       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
3073                     
3074       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work5 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work5 )
3075                     
3076 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a117d8a3d5775287590b04574fad539ef}\label{namespacegtool__historyauto__internal_a117d8a3d5775287590b04574fad539ef}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducedouble6@{averagereducedouble6}}
\index{averagereducedouble6@{averagereducedouble6}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducedouble6()}{averagereducedouble6()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducedouble6 (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,\+:,\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(6), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight5,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight6,  }\item[{real(dp), dimension(\+:,\+:,\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 3096 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
3096     \textcolor{comment}{!}
3097     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
3098     \textcolor{comment}{! array を平均化して array\_avr に返します.}
3099     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
3100     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
3101     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
3102     \textcolor{comment}{!}
3103     \textcolor{keywordtype}{implicit none}
3104     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:,:,:)
3105     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(6)
3106                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
3107                     
3108     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
3109                     
3110     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
3111                     
3112     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
3113                     
3114     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight5(:)
3115                     
3116     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight6(:)
3117                     
3118     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:,:,:) \textcolor{comment}{! (out)}
3119 
3120     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:,:,:)
3121 
3122                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:,:,:)
3123                     
3124     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:,:,:)
3125                     
3126     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:,:,:)
3127                     
3128     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:,:,:)
3129                     
3130     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work5(:,:,:,:,:,:)
3131                     
3132     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work6(:,:,:,:,:,:)
3133                     
3134 
3135     \textcolor{keywordtype}{integer}:: array\_shape(6)
3136     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
3137     \textcolor{keywordtype}{real(DP)}:: weight\_sum
3138   \textcolor{keywordflow}{continue}
3139 
3140     array\_shape = shape( array )
3141     array\_avr\_work => array
3142 
3143                     
3144                       
3145                         
3146     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
3147       dim\_size = array\_shape(1)
3148       array\_shape(1) = 1
3149       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
3150                                   & , array\_shape(2) &
3151                           
3152         & , array\_shape(3) &
3153                           
3154         & , array\_shape(4) &
3155                           
3156         & , array\_shape(5) &
3157                           
3158         & , array\_shape(6) &
3159                           
3160         &  ) )
3161       array\_avr\_work1 = 0.0\_dp
3162       weight\_sum = 0.0\_dp
3163       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3164         array\_avr\_work1(1,:,:,:,:,:) = array\_avr\_work1(1,:,:,:,:,:) + array\_avr\_work(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:,:) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3165         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3166 \textcolor{keywordflow}{      end do}
3167       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
3168       array\_avr\_work  => array\_avr\_work1
3169 \textcolor{keywordflow}{    end if}
3170 
3171                         
3172 
3173     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
3174       dim\_size = array\_shape(2)
3175       array\_shape(2) = 1
3176       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
3177                                   & , array\_shape(2) &
3178                           
3179         & , array\_shape(3) &
3180                           
3181         & , array\_shape(4) &
3182                           
3183         & , array\_shape(5) &
3184                           
3185         & , array\_shape(6) &
3186                           
3187         &  ) )
3188       array\_avr\_work2 = 0.0\_dp
3189       weight\_sum = 0.0\_dp
3190       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3191         array\_avr\_work2(:,1,:,:,:,:) = array\_avr\_work2(:,1,:,:,:,:) + array\_avr\_work(:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:) * weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3192         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3193 \textcolor{keywordflow}{      end do}
3194       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
3195       array\_avr\_work  => array\_avr\_work2
3196 \textcolor{keywordflow}{    end if}
3197 
3198                         
3199 
3200     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
3201       dim\_size = array\_shape(3)
3202       array\_shape(3) = 1
3203       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
3204                                   & , array\_shape(2) &
3205                           
3206         & , array\_shape(3) &
3207                           
3208         & , array\_shape(4) &
3209                           
3210         & , array\_shape(5) &
3211                           
3212         & , array\_shape(6) &
3213                           
3214         &  ) )
3215       array\_avr\_work3 = 0.0\_dp
3216       weight\_sum = 0.0\_dp
3217       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3218         array\_avr\_work3(:,:,1,:,:,:) = array\_avr\_work3(:,:,1,:,:,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3219         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3220 \textcolor{keywordflow}{      end do}
3221       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
3222       array\_avr\_work  => array\_avr\_work3
3223 \textcolor{keywordflow}{    end if}
3224 
3225                         
3226 
3227     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
3228       dim\_size = array\_shape(4)
3229       array\_shape(4) = 1
3230       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
3231                                   & , array\_shape(2) &
3232                           
3233         & , array\_shape(3) &
3234                           
3235         & , array\_shape(4) &
3236                           
3237         & , array\_shape(5) &
3238                           
3239         & , array\_shape(6) &
3240                           
3241         &  ) )
3242       array\_avr\_work4 = 0.0\_dp
3243       weight\_sum = 0.0\_dp
3244       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3245         array\_avr\_work4(:,:,:,1,:,:) = array\_avr\_work4(:,:,:,1,:,:) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3246         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3247 \textcolor{keywordflow}{      end do}
3248       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
3249       array\_avr\_work  => array\_avr\_work4
3250 \textcolor{keywordflow}{    end if}
3251 
3252                         
3253 
3254     \textcolor{keywordflow}{if} ( space\_average(5) ) \textcolor{keywordflow}{then}
3255       dim\_size = array\_shape(5)
3256       array\_shape(5) = 1
3257       \textcolor{keyword}{allocate}( array\_avr\_work5( array\_shape(1) &
3258                                   & , array\_shape(2) &
3259                           
3260         & , array\_shape(3) &
3261                           
3262         & , array\_shape(4) &
3263                           
3264         & , array\_shape(5) &
3265                           
3266         & , array\_shape(6) &
3267                           
3268         &  ) )
3269       array\_avr\_work5 = 0.0\_dp
3270       weight\_sum = 0.0\_dp
3271       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3272         array\_avr\_work5(:,:,:,:,1,:) = array\_avr\_work5(:,:,:,:,1,:) + array\_avr\_work(:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3273         weight\_sum = weight\_sum + weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3274 \textcolor{keywordflow}{      end do}
3275       array\_avr\_work5 = array\_avr\_work5 / weight\_sum
3276       array\_avr\_work  => array\_avr\_work5
3277 \textcolor{keywordflow}{    end if}
3278 
3279                         
3280 
3281     \textcolor{keywordflow}{if} ( space\_average(6) ) \textcolor{keywordflow}{then}
3282       dim\_size = array\_shape(6)
3283       array\_shape(6) = 1
3284       \textcolor{keyword}{allocate}( array\_avr\_work6( array\_shape(1) &
3285                                   & , array\_shape(2) &
3286                           
3287         & , array\_shape(3) &
3288                           
3289         & , array\_shape(4) &
3290                           
3291         & , array\_shape(5) &
3292                           
3293         & , array\_shape(6) &
3294                           
3295         &  ) )
3296       array\_avr\_work6 = 0.0\_dp
3297       weight\_sum = 0.0\_dp
3298       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3299         array\_avr\_work6(:,:,:,:,:,1) = array\_avr\_work6(:,:,:,:,:,1) + array\_avr\_work(:,:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3300         weight\_sum = weight\_sum + weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3301 \textcolor{keywordflow}{      end do}
3302       array\_avr\_work6 = array\_avr\_work6 / weight\_sum
3303       array\_avr\_work  => array\_avr\_work6
3304 \textcolor{keywordflow}{    end if}
3305 
3306                         
3307                       
3308 
3309                     
3310 
3311 
3312       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
3313                             & , array\_shape(2) &
3314                     
3315         & , array\_shape(3) &
3316                     
3317         & , array\_shape(4) &
3318                     
3319         & , array\_shape(5) &
3320                     
3321         & , array\_shape(6) &
3322                     
3323         & ) )
3324 
3325       array\_avr = array\_avr\_work
3326 
3327       \textcolor{keyword}{nullify}( array\_avr\_work )
3328 
3329                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
3330                     
3331       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
3332                     
3333       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
3334                     
3335       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
3336                     
3337       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work5 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work5 )
3338                     
3339       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work6 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work6 )
3340                     
3341 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a5ce2d25db3bc6227d734b3a59cd5ef5e}\label{namespacegtool__historyauto__internal_a5ce2d25db3bc6227d734b3a59cd5ef5e}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducedouble7@{averagereducedouble7}}
\index{averagereducedouble7@{averagereducedouble7}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducedouble7()}{averagereducedouble7()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducedouble7 (\begin{DoxyParamCaption}\item[{real(dp), dimension(\+:,\+:,\+:,\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(7), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight5,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight6,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight7,  }\item[{real(dp), dimension(\+:,\+:,\+:,\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 3363 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
3363     \textcolor{comment}{!}
3364     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
3365     \textcolor{comment}{! array を平均化して array\_avr に返します.}
3366     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
3367     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
3368     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
3369     \textcolor{comment}{!}
3370     \textcolor{keywordtype}{implicit none}
3371     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:,:,:,:)
3372     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(7)
3373                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
3374                     
3375     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
3376                     
3377     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
3378                     
3379     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
3380                     
3381     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight5(:)
3382                     
3383     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight6(:)
3384                     
3385     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight7(:)
3386                     
3387     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:,:,:,:) \textcolor{comment}{! (out)}
3388 
3389     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:,:,:,:)
3390 
3391                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:,:,:,:)
3392                     
3393     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:,:,:,:)
3394                     
3395     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:,:,:,:)
3396                     
3397     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:,:,:,:)
3398                     
3399     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work5(:,:,:,:,:,:,:)
3400                     
3401     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work6(:,:,:,:,:,:,:)
3402                     
3403     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{pointer}:: array\_avr\_work7(:,:,:,:,:,:,:)
3404                     
3405 
3406     \textcolor{keywordtype}{integer}:: array\_shape(7)
3407     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
3408     \textcolor{keywordtype}{real(DP)}:: weight\_sum
3409   \textcolor{keywordflow}{continue}
3410 
3411     array\_shape = shape( array )
3412     array\_avr\_work => array
3413 
3414                     
3415                       
3416                         
3417     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
3418       dim\_size = array\_shape(1)
3419       array\_shape(1) = 1
3420       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
3421                                   & , array\_shape(2) &
3422                           
3423         & , array\_shape(3) &
3424                           
3425         & , array\_shape(4) &
3426                           
3427         & , array\_shape(5) &
3428                           
3429         & , array\_shape(6) &
3430                           
3431         & , array\_shape(7) &
3432                           
3433         &  ) )
3434       array\_avr\_work1 = 0.0\_dp
3435       weight\_sum = 0.0\_dp
3436       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3437         array\_avr\_work1(1,:,:,:,:,:,:) = array\_avr\_work1(1,:,:,:,:,:,:) + array\_avr\_work(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:,:,:) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3438         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3439 \textcolor{keywordflow}{      end do}
3440       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
3441       array\_avr\_work  => array\_avr\_work1
3442 \textcolor{keywordflow}{    end if}
3443 
3444                         
3445 
3446     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
3447       dim\_size = array\_shape(2)
3448       array\_shape(2) = 1
3449       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
3450                                   & , array\_shape(2) &
3451                           
3452         & , array\_shape(3) &
3453                           
3454         & , array\_shape(4) &
3455                           
3456         & , array\_shape(5) &
3457                           
3458         & , array\_shape(6) &
3459                           
3460         & , array\_shape(7) &
3461                           
3462         &  ) )
3463       array\_avr\_work2 = 0.0\_dp
3464       weight\_sum = 0.0\_dp
3465       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3466         array\_avr\_work2(:,1,:,:,:,:,:) = array\_avr\_work2(:,1,:,:,:,:,:) + array\_avr\_work(:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:,:) * weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3467         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3468 \textcolor{keywordflow}{      end do}
3469       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
3470       array\_avr\_work  => array\_avr\_work2
3471 \textcolor{keywordflow}{    end if}
3472 
3473                         
3474 
3475     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
3476       dim\_size = array\_shape(3)
3477       array\_shape(3) = 1
3478       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
3479                                   & , array\_shape(2) &
3480                           
3481         & , array\_shape(3) &
3482                           
3483         & , array\_shape(4) &
3484                           
3485         & , array\_shape(5) &
3486                           
3487         & , array\_shape(6) &
3488                           
3489         & , array\_shape(7) &
3490                           
3491         &  ) )
3492       array\_avr\_work3 = 0.0\_dp
3493       weight\_sum = 0.0\_dp
3494       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3495         array\_avr\_work3(:,:,1,:,:,:,:) = array\_avr\_work3(:,:,1,:,:,:,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3496         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3497 \textcolor{keywordflow}{      end do}
3498       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
3499       array\_avr\_work  => array\_avr\_work3
3500 \textcolor{keywordflow}{    end if}
3501 
3502                         
3503 
3504     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
3505       dim\_size = array\_shape(4)
3506       array\_shape(4) = 1
3507       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
3508                                   & , array\_shape(2) &
3509                           
3510         & , array\_shape(3) &
3511                           
3512         & , array\_shape(4) &
3513                           
3514         & , array\_shape(5) &
3515                           
3516         & , array\_shape(6) &
3517                           
3518         & , array\_shape(7) &
3519                           
3520         &  ) )
3521       array\_avr\_work4 = 0.0\_dp
3522       weight\_sum = 0.0\_dp
3523       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3524         array\_avr\_work4(:,:,:,1,:,:,:) = array\_avr\_work4(:,:,:,1,:,:,:) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3525         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3526 \textcolor{keywordflow}{      end do}
3527       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
3528       array\_avr\_work  => array\_avr\_work4
3529 \textcolor{keywordflow}{    end if}
3530 
3531                         
3532 
3533     \textcolor{keywordflow}{if} ( space\_average(5) ) \textcolor{keywordflow}{then}
3534       dim\_size = array\_shape(5)
3535       array\_shape(5) = 1
3536       \textcolor{keyword}{allocate}( array\_avr\_work5( array\_shape(1) &
3537                                   & , array\_shape(2) &
3538                           
3539         & , array\_shape(3) &
3540                           
3541         & , array\_shape(4) &
3542                           
3543         & , array\_shape(5) &
3544                           
3545         & , array\_shape(6) &
3546                           
3547         & , array\_shape(7) &
3548                           
3549         &  ) )
3550       array\_avr\_work5 = 0.0\_dp
3551       weight\_sum = 0.0\_dp
3552       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3553         array\_avr\_work5(:,:,:,:,1,:,:) = array\_avr\_work5(:,:,:,:,1,:,:) + array\_avr\_work(:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3554         weight\_sum = weight\_sum + weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3555 \textcolor{keywordflow}{      end do}
3556       array\_avr\_work5 = array\_avr\_work5 / weight\_sum
3557       array\_avr\_work  => array\_avr\_work5
3558 \textcolor{keywordflow}{    end if}
3559 
3560                         
3561 
3562     \textcolor{keywordflow}{if} ( space\_average(6) ) \textcolor{keywordflow}{then}
3563       dim\_size = array\_shape(6)
3564       array\_shape(6) = 1
3565       \textcolor{keyword}{allocate}( array\_avr\_work6( array\_shape(1) &
3566                                   & , array\_shape(2) &
3567                           
3568         & , array\_shape(3) &
3569                           
3570         & , array\_shape(4) &
3571                           
3572         & , array\_shape(5) &
3573                           
3574         & , array\_shape(6) &
3575                           
3576         & , array\_shape(7) &
3577                           
3578         &  ) )
3579       array\_avr\_work6 = 0.0\_dp
3580       weight\_sum = 0.0\_dp
3581       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3582         array\_avr\_work6(:,:,:,:,:,1,:) = array\_avr\_work6(:,:,:,:,:,1,:) + array\_avr\_work(:,:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3583         weight\_sum = weight\_sum + weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3584 \textcolor{keywordflow}{      end do}
3585       array\_avr\_work6 = array\_avr\_work6 / weight\_sum
3586       array\_avr\_work  => array\_avr\_work6
3587 \textcolor{keywordflow}{    end if}
3588 
3589                         
3590 
3591     \textcolor{keywordflow}{if} ( space\_average(7) ) \textcolor{keywordflow}{then}
3592       dim\_size = array\_shape(7)
3593       array\_shape(7) = 1
3594       \textcolor{keyword}{allocate}( array\_avr\_work7( array\_shape(1) &
3595                                   & , array\_shape(2) &
3596                           
3597         & , array\_shape(3) &
3598                           
3599         & , array\_shape(4) &
3600                           
3601         & , array\_shape(5) &
3602                           
3603         & , array\_shape(6) &
3604                           
3605         & , array\_shape(7) &
3606                           
3607         &  ) )
3608       array\_avr\_work7 = 0.0\_dp
3609       weight\_sum = 0.0\_dp
3610       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3611         array\_avr\_work7(:,:,:,:,:,:,1) = array\_avr\_work7(:,:,:,:,:,:,1) + array\_avr\_work(:,:,:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight7(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3612         weight\_sum = weight\_sum + weight7(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3613 \textcolor{keywordflow}{      end do}
3614       array\_avr\_work7 = array\_avr\_work7 / weight\_sum
3615       array\_avr\_work  => array\_avr\_work7
3616 \textcolor{keywordflow}{    end if}
3617 
3618                         
3619                       
3620 
3621                     
3622 
3623 
3624       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
3625                             & , array\_shape(2) &
3626                     
3627         & , array\_shape(3) &
3628                     
3629         & , array\_shape(4) &
3630                     
3631         & , array\_shape(5) &
3632                     
3633         & , array\_shape(6) &
3634                     
3635         & , array\_shape(7) &
3636                     
3637         & ) )
3638 
3639       array\_avr = array\_avr\_work
3640 
3641       \textcolor{keyword}{nullify}( array\_avr\_work )
3642 
3643                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
3644                     
3645       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
3646                     
3647       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
3648                     
3649       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
3650                     
3651       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work5 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work5 )
3652                     
3653       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work6 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work6 )
3654                     
3655       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work7 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work7 )
3656                     
3657 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_abc3f4d7a01b03c3a1e2631045904a715}\label{namespacegtool__historyauto__internal_abc3f4d7a01b03c3a1e2631045904a715}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereduceint1@{averagereduceint1}}
\index{averagereduceint1@{averagereduceint1}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereduceint1()}{averagereduceint1()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereduceint1 (\begin{DoxyParamCaption}\item[{integer, dimension(\+:), intent(in), target}]{array,  }\item[{logical, dimension(1), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{integer, dimension(\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 3667 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
3667     \textcolor{comment}{!}
3668     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
3669     \textcolor{comment}{! array を平均化して array\_avr に返します.}
3670     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
3671     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
3672     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
3673     \textcolor{comment}{!}
3674     \textcolor{keywordtype}{implicit none}
3675     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:)
3676     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(1)
3677                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
3678                     
3679     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr(:) \textcolor{comment}{! (out)}
3680 
3681     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:)
3682 
3683                         \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:)
3684                     
3685 
3686     \textcolor{keywordtype}{integer}:: array\_shape(1)
3687     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
3688     \textcolor{keywordtype}{real(DP)}:: weight\_sum
3689   \textcolor{keywordflow}{continue}
3690 
3691     array\_shape = shape( array )
3692     array\_avr\_work => array
3693 
3694                     
3695                       
3696                         
3697     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
3698       dim\_size = array\_shape(1)
3699       array\_shape(1) = 1
3700       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
3701                           
3702         &  ) )
3703       array\_avr\_work1 = 0
3704       weight\_sum = 0.0\_dp
3705       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3706         array\_avr\_work1(1) = array\_avr\_work1(1) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3707         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3708 \textcolor{keywordflow}{      end do}
3709       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
3710       array\_avr\_work  => array\_avr\_work1
3711 \textcolor{keywordflow}{    end if}
3712 
3713                         
3714                       
3715 
3716                     
3717 
3718 
3719       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
3720                     
3721         & ) )
3722 
3723       array\_avr = array\_avr\_work
3724 
3725       \textcolor{keyword}{nullify}( array\_avr\_work )
3726 
3727                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
3728                     
3729 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a2626164a8e4599e75579b0921bfc2459}\label{namespacegtool__historyauto__internal_a2626164a8e4599e75579b0921bfc2459}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereduceint2@{averagereduceint2}}
\index{averagereduceint2@{averagereduceint2}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereduceint2()}{averagereduceint2()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereduceint2 (\begin{DoxyParamCaption}\item[{integer, dimension(\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(2), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{integer, dimension(\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 3741 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
3741     \textcolor{comment}{!}
3742     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
3743     \textcolor{comment}{! array を平均化して array\_avr に返します.}
3744     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
3745     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
3746     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
3747     \textcolor{comment}{!}
3748     \textcolor{keywordtype}{implicit none}
3749     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:)
3750     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(2)
3751                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
3752                     
3753     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
3754                     
3755     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:) \textcolor{comment}{! (out)}
3756 
3757     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:)
3758 
3759                         \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:)
3760                     
3761     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:)
3762                     
3763 
3764     \textcolor{keywordtype}{integer}:: array\_shape(2)
3765     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
3766     \textcolor{keywordtype}{real(DP)}:: weight\_sum
3767   \textcolor{keywordflow}{continue}
3768 
3769     array\_shape = shape( array )
3770     array\_avr\_work => array
3771 
3772                     
3773                       
3774                         
3775     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
3776       dim\_size = array\_shape(1)
3777       array\_shape(1) = 1
3778       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
3779                                   & , array\_shape(2) &
3780                           
3781         &  ) )
3782       array\_avr\_work1 = 0
3783       weight\_sum = 0.0\_dp
3784       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3785         array\_avr\_work1(1,:) = array\_avr\_work1(1,:) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight1(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3786         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3787 \textcolor{keywordflow}{      end do}
3788       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
3789       array\_avr\_work  => array\_avr\_work1
3790 \textcolor{keywordflow}{    end if}
3791 
3792                         
3793 
3794     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
3795       dim\_size = array\_shape(2)
3796       array\_shape(2) = 1
3797       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
3798                                   & , array\_shape(2) &
3799                           
3800         &  ) )
3801       array\_avr\_work2 = 0
3802       weight\_sum = 0.0\_dp
3803       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3804         array\_avr\_work2(:,1) = array\_avr\_work2(:,1) + array\_avr\_work(:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight2(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3805         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3806 \textcolor{keywordflow}{      end do}
3807       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
3808       array\_avr\_work  => array\_avr\_work2
3809 \textcolor{keywordflow}{    end if}
3810 
3811                         
3812                       
3813 
3814                     
3815 
3816 
3817       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
3818                             & , array\_shape(2) &
3819                     
3820         & ) )
3821 
3822       array\_avr = array\_avr\_work
3823 
3824       \textcolor{keyword}{nullify}( array\_avr\_work )
3825 
3826                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
3827                     
3828       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
3829                     
3830 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a1ad69f122ea4fe1fd25474910ce85d10}\label{namespacegtool__historyauto__internal_a1ad69f122ea4fe1fd25474910ce85d10}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereduceint3@{averagereduceint3}}
\index{averagereduceint3@{averagereduceint3}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereduceint3()}{averagereduceint3()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereduceint3 (\begin{DoxyParamCaption}\item[{integer, dimension(\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(3), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{integer, dimension(\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 3844 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
3844     \textcolor{comment}{!}
3845     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
3846     \textcolor{comment}{! array を平均化して array\_avr に返します.}
3847     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
3848     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
3849     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
3850     \textcolor{comment}{!}
3851     \textcolor{keywordtype}{implicit none}
3852     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:)
3853     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(3)
3854                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
3855                     
3856     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
3857                     
3858     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
3859                     
3860     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:) \textcolor{comment}{! (out)}
3861 
3862     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:)
3863 
3864                         \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:)
3865                     
3866     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:)
3867                     
3868     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:)
3869                     
3870 
3871     \textcolor{keywordtype}{integer}:: array\_shape(3)
3872     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
3873     \textcolor{keywordtype}{real(DP)}:: weight\_sum
3874   \textcolor{keywordflow}{continue}
3875 
3876     array\_shape = shape( array )
3877     array\_avr\_work => array
3878 
3879                     
3880                       
3881                         
3882     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
3883       dim\_size = array\_shape(1)
3884       array\_shape(1) = 1
3885       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
3886                                   & , array\_shape(2) &
3887                           
3888         & , array\_shape(3) &
3889                           
3890         &  ) )
3891       array\_avr\_work1 = 0
3892       weight\_sum = 0.0\_dp
3893       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3894         array\_avr\_work1(1,:,:) = array\_avr\_work1(1,:,:) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight1(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3895         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3896 \textcolor{keywordflow}{      end do}
3897       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
3898       array\_avr\_work  => array\_avr\_work1
3899 \textcolor{keywordflow}{    end if}
3900 
3901                         
3902 
3903     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
3904       dim\_size = array\_shape(2)
3905       array\_shape(2) = 1
3906       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
3907                                   & , array\_shape(2) &
3908                           
3909         & , array\_shape(3) &
3910                           
3911         &  ) )
3912       array\_avr\_work2 = 0
3913       weight\_sum = 0.0\_dp
3914       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3915         array\_avr\_work2(:,1,:) = array\_avr\_work2(:,1,:) + array\_avr\_work(:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight2(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3916         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3917 \textcolor{keywordflow}{      end do}
3918       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
3919       array\_avr\_work  => array\_avr\_work2
3920 \textcolor{keywordflow}{    end if}
3921 
3922                         
3923 
3924     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
3925       dim\_size = array\_shape(3)
3926       array\_shape(3) = 1
3927       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
3928                                   & , array\_shape(2) &
3929                           
3930         & , array\_shape(3) &
3931                           
3932         &  ) )
3933       array\_avr\_work3 = 0
3934       weight\_sum = 0.0\_dp
3935       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
3936         array\_avr\_work3(:,:,1) = array\_avr\_work3(:,:,1) + array\_avr\_work(:,:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight3(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3937         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
3938 \textcolor{keywordflow}{      end do}
3939       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
3940       array\_avr\_work  => array\_avr\_work3
3941 \textcolor{keywordflow}{    end if}
3942 
3943                         
3944                       
3945 
3946                     
3947 
3948 
3949       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
3950                             & , array\_shape(2) &
3951                     
3952         & , array\_shape(3) &
3953                     
3954         & ) )
3955 
3956       array\_avr = array\_avr\_work
3957 
3958       \textcolor{keyword}{nullify}( array\_avr\_work )
3959 
3960                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
3961                     
3962       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
3963                     
3964       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
3965                     
3966 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ad9b246817e9425a159061536d8ab8453}\label{namespacegtool__historyauto__internal_ad9b246817e9425a159061536d8ab8453}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereduceint4@{averagereduceint4}}
\index{averagereduceint4@{averagereduceint4}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereduceint4()}{averagereduceint4()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereduceint4 (\begin{DoxyParamCaption}\item[{integer, dimension(\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(4), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{integer, dimension(\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 3982 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
3982     \textcolor{comment}{!}
3983     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
3984     \textcolor{comment}{! array を平均化して array\_avr に返します.}
3985     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
3986     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
3987     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
3988     \textcolor{comment}{!}
3989     \textcolor{keywordtype}{implicit none}
3990     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:)
3991     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(4)
3992                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
3993                     
3994     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
3995                     
3996     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
3997                     
3998     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
3999                     
4000     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:) \textcolor{comment}{! (out)}
4001 
4002     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:)
4003 
4004                         \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:)
4005                     
4006     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:)
4007                     
4008     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:)
4009                     
4010     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:)
4011                     
4012 
4013     \textcolor{keywordtype}{integer}:: array\_shape(4)
4014     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
4015     \textcolor{keywordtype}{real(DP)}:: weight\_sum
4016   \textcolor{keywordflow}{continue}
4017 
4018     array\_shape = shape( array )
4019     array\_avr\_work => array
4020 
4021                     
4022                       
4023                         
4024     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
4025       dim\_size = array\_shape(1)
4026       array\_shape(1) = 1
4027       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
4028                                   & , array\_shape(2) &
4029                           
4030         & , array\_shape(3) &
4031                           
4032         & , array\_shape(4) &
4033                           
4034         &  ) )
4035       array\_avr\_work1 = 0
4036       weight\_sum = 0.0\_dp
4037       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4038         array\_avr\_work1(1,:,:,:) = array\_avr\_work1(1,:,:,:) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight1(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4039         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4040 \textcolor{keywordflow}{      end do}
4041       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
4042       array\_avr\_work  => array\_avr\_work1
4043 \textcolor{keywordflow}{    end if}
4044 
4045                         
4046 
4047     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
4048       dim\_size = array\_shape(2)
4049       array\_shape(2) = 1
4050       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
4051                                   & , array\_shape(2) &
4052                           
4053         & , array\_shape(3) &
4054                           
4055         & , array\_shape(4) &
4056                           
4057         &  ) )
4058       array\_avr\_work2 = 0
4059       weight\_sum = 0.0\_dp
4060       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4061         array\_avr\_work2(:,1,:,:) = array\_avr\_work2(:,1,:,:) + array\_avr\_work(:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight2(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4062         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4063 \textcolor{keywordflow}{      end do}
4064       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
4065       array\_avr\_work  => array\_avr\_work2
4066 \textcolor{keywordflow}{    end if}
4067 
4068                         
4069 
4070     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
4071       dim\_size = array\_shape(3)
4072       array\_shape(3) = 1
4073       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
4074                                   & , array\_shape(2) &
4075                           
4076         & , array\_shape(3) &
4077                           
4078         & , array\_shape(4) &
4079                           
4080         &  ) )
4081       array\_avr\_work3 = 0
4082       weight\_sum = 0.0\_dp
4083       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4084         array\_avr\_work3(:,:,1,:) = array\_avr\_work3(:,:,1,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4085         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4086 \textcolor{keywordflow}{      end do}
4087       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
4088       array\_avr\_work  => array\_avr\_work3
4089 \textcolor{keywordflow}{    end if}
4090 
4091                         
4092 
4093     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
4094       dim\_size = array\_shape(4)
4095       array\_shape(4) = 1
4096       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
4097                                   & , array\_shape(2) &
4098                           
4099         & , array\_shape(3) &
4100                           
4101         & , array\_shape(4) &
4102                           
4103         &  ) )
4104       array\_avr\_work4 = 0
4105       weight\_sum = 0.0\_dp
4106       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4107         array\_avr\_work4(:,:,:,1) = array\_avr\_work4(:,:,:,1) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4108         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4109 \textcolor{keywordflow}{      end do}
4110       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
4111       array\_avr\_work  => array\_avr\_work4
4112 \textcolor{keywordflow}{    end if}
4113 
4114                         
4115                       
4116 
4117                     
4118 
4119 
4120       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
4121                             & , array\_shape(2) &
4122                     
4123         & , array\_shape(3) &
4124                     
4125         & , array\_shape(4) &
4126                     
4127         & ) )
4128 
4129       array\_avr = array\_avr\_work
4130 
4131       \textcolor{keyword}{nullify}( array\_avr\_work )
4132 
4133                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
4134                     
4135       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
4136                     
4137       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
4138                     
4139       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
4140                     
4141 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ae3603baa1620e6bffce5934b83df60cb}\label{namespacegtool__historyauto__internal_ae3603baa1620e6bffce5934b83df60cb}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereduceint5@{averagereduceint5}}
\index{averagereduceint5@{averagereduceint5}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereduceint5()}{averagereduceint5()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereduceint5 (\begin{DoxyParamCaption}\item[{integer, dimension(\+:,\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(5), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight5,  }\item[{integer, dimension(\+:,\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 4159 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
4159     \textcolor{comment}{!}
4160     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
4161     \textcolor{comment}{! array を平均化して array\_avr に返します.}
4162     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
4163     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
4164     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
4165     \textcolor{comment}{!}
4166     \textcolor{keywordtype}{implicit none}
4167     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:,:)
4168     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(5)
4169                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
4170                     
4171     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
4172                     
4173     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
4174                     
4175     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
4176                     
4177     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight5(:)
4178                     
4179     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:,:) \textcolor{comment}{! (out)}
4180 
4181     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:,:)
4182 
4183                         \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:,:)
4184                     
4185     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:,:)
4186                     
4187     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:,:)
4188                     
4189     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:,:)
4190                     
4191     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work5(:,:,:,:,:)
4192                     
4193 
4194     \textcolor{keywordtype}{integer}:: array\_shape(5)
4195     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
4196     \textcolor{keywordtype}{real(DP)}:: weight\_sum
4197   \textcolor{keywordflow}{continue}
4198 
4199     array\_shape = shape( array )
4200     array\_avr\_work => array
4201 
4202                     
4203                       
4204                         
4205     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
4206       dim\_size = array\_shape(1)
4207       array\_shape(1) = 1
4208       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
4209                                   & , array\_shape(2) &
4210                           
4211         & , array\_shape(3) &
4212                           
4213         & , array\_shape(4) &
4214                           
4215         & , array\_shape(5) &
4216                           
4217         &  ) )
4218       array\_avr\_work1 = 0
4219       weight\_sum = 0.0\_dp
4220       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4221         array\_avr\_work1(1,:,:,:,:) = array\_avr\_work1(1,:,:,:,:) + array\_avr\_work(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4222         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4223 \textcolor{keywordflow}{      end do}
4224       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
4225       array\_avr\_work  => array\_avr\_work1
4226 \textcolor{keywordflow}{    end if}
4227 
4228                         
4229 
4230     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
4231       dim\_size = array\_shape(2)
4232       array\_shape(2) = 1
4233       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
4234                                   & , array\_shape(2) &
4235                           
4236         & , array\_shape(3) &
4237                           
4238         & , array\_shape(4) &
4239                           
4240         & , array\_shape(5) &
4241                           
4242         &  ) )
4243       array\_avr\_work2 = 0
4244       weight\_sum = 0.0\_dp
4245       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4246         array\_avr\_work2(:,1,:,:,:) = array\_avr\_work2(:,1,:,:,:) + array\_avr\_work(:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4247         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4248 \textcolor{keywordflow}{      end do}
4249       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
4250       array\_avr\_work  => array\_avr\_work2
4251 \textcolor{keywordflow}{    end if}
4252 
4253                         
4254 
4255     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
4256       dim\_size = array\_shape(3)
4257       array\_shape(3) = 1
4258       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
4259                                   & , array\_shape(2) &
4260                           
4261         & , array\_shape(3) &
4262                           
4263         & , array\_shape(4) &
4264                           
4265         & , array\_shape(5) &
4266                           
4267         &  ) )
4268       array\_avr\_work3 = 0
4269       weight\_sum = 0.0\_dp
4270       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4271         array\_avr\_work3(:,:,1,:,:) = array\_avr\_work3(:,:,1,:,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4272         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4273 \textcolor{keywordflow}{      end do}
4274       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
4275       array\_avr\_work  => array\_avr\_work3
4276 \textcolor{keywordflow}{    end if}
4277 
4278                         
4279 
4280     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
4281       dim\_size = array\_shape(4)
4282       array\_shape(4) = 1
4283       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
4284                                   & , array\_shape(2) &
4285                           
4286         & , array\_shape(3) &
4287                           
4288         & , array\_shape(4) &
4289                           
4290         & , array\_shape(5) &
4291                           
4292         &  ) )
4293       array\_avr\_work4 = 0
4294       weight\_sum = 0.0\_dp
4295       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4296         array\_avr\_work4(:,:,:,1,:) = array\_avr\_work4(:,:,:,1,:) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4297         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4298 \textcolor{keywordflow}{      end do}
4299       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
4300       array\_avr\_work  => array\_avr\_work4
4301 \textcolor{keywordflow}{    end if}
4302 
4303                         
4304 
4305     \textcolor{keywordflow}{if} ( space\_average(5) ) \textcolor{keywordflow}{then}
4306       dim\_size = array\_shape(5)
4307       array\_shape(5) = 1
4308       \textcolor{keyword}{allocate}( array\_avr\_work5( array\_shape(1) &
4309                                   & , array\_shape(2) &
4310                           
4311         & , array\_shape(3) &
4312                           
4313         & , array\_shape(4) &
4314                           
4315         & , array\_shape(5) &
4316                           
4317         &  ) )
4318       array\_avr\_work5 = 0
4319       weight\_sum = 0.0\_dp
4320       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4321         array\_avr\_work5(:,:,:,:,1) = array\_avr\_work5(:,:,:,:,1) + array\_avr\_work(:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4322         weight\_sum = weight\_sum + weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4323 \textcolor{keywordflow}{      end do}
4324       array\_avr\_work5 = array\_avr\_work5 / weight\_sum
4325       array\_avr\_work  => array\_avr\_work5
4326 \textcolor{keywordflow}{    end if}
4327 
4328                         
4329                       
4330 
4331                     
4332 
4333 
4334       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
4335                             & , array\_shape(2) &
4336                     
4337         & , array\_shape(3) &
4338                     
4339         & , array\_shape(4) &
4340                     
4341         & , array\_shape(5) &
4342                     
4343         & ) )
4344 
4345       array\_avr = array\_avr\_work
4346 
4347       \textcolor{keyword}{nullify}( array\_avr\_work )
4348 
4349                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
4350                     
4351       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
4352                     
4353       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
4354                     
4355       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
4356                     
4357       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work5 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work5 )
4358                     
4359 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a4e6997013880dcdea5c0a1d9fdd47424}\label{namespacegtool__historyauto__internal_a4e6997013880dcdea5c0a1d9fdd47424}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereduceint6@{averagereduceint6}}
\index{averagereduceint6@{averagereduceint6}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereduceint6()}{averagereduceint6()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereduceint6 (\begin{DoxyParamCaption}\item[{integer, dimension(\+:,\+:,\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(6), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight5,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight6,  }\item[{integer, dimension(\+:,\+:,\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 4379 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
4379     \textcolor{comment}{!}
4380     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
4381     \textcolor{comment}{! array を平均化して array\_avr に返します.}
4382     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
4383     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
4384     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
4385     \textcolor{comment}{!}
4386     \textcolor{keywordtype}{implicit none}
4387     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:,:,:)
4388     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(6)
4389                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
4390                     
4391     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
4392                     
4393     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
4394                     
4395     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
4396                     
4397     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight5(:)
4398                     
4399     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight6(:)
4400                     
4401     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:,:,:) \textcolor{comment}{! (out)}
4402 
4403     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:,:,:)
4404 
4405                         \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:,:,:)
4406                     
4407     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:,:,:)
4408                     
4409     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:,:,:)
4410                     
4411     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:,:,:)
4412                     
4413     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work5(:,:,:,:,:,:)
4414                     
4415     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work6(:,:,:,:,:,:)
4416                     
4417 
4418     \textcolor{keywordtype}{integer}:: array\_shape(6)
4419     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
4420     \textcolor{keywordtype}{real(DP)}:: weight\_sum
4421   \textcolor{keywordflow}{continue}
4422 
4423     array\_shape = shape( array )
4424     array\_avr\_work => array
4425 
4426                     
4427                       
4428                         
4429     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
4430       dim\_size = array\_shape(1)
4431       array\_shape(1) = 1
4432       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
4433                                   & , array\_shape(2) &
4434                           
4435         & , array\_shape(3) &
4436                           
4437         & , array\_shape(4) &
4438                           
4439         & , array\_shape(5) &
4440                           
4441         & , array\_shape(6) &
4442                           
4443         &  ) )
4444       array\_avr\_work1 = 0
4445       weight\_sum = 0.0\_dp
4446       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4447         array\_avr\_work1(1,:,:,:,:,:) = array\_avr\_work1(1,:,:,:,:,:) + array\_avr\_work(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:,:) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4448         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4449 \textcolor{keywordflow}{      end do}
4450       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
4451       array\_avr\_work  => array\_avr\_work1
4452 \textcolor{keywordflow}{    end if}
4453 
4454                         
4455 
4456     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
4457       dim\_size = array\_shape(2)
4458       array\_shape(2) = 1
4459       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
4460                                   & , array\_shape(2) &
4461                           
4462         & , array\_shape(3) &
4463                           
4464         & , array\_shape(4) &
4465                           
4466         & , array\_shape(5) &
4467                           
4468         & , array\_shape(6) &
4469                           
4470         &  ) )
4471       array\_avr\_work2 = 0
4472       weight\_sum = 0.0\_dp
4473       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4474         array\_avr\_work2(:,1,:,:,:,:) = array\_avr\_work2(:,1,:,:,:,:) + array\_avr\_work(:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:) * weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4475         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4476 \textcolor{keywordflow}{      end do}
4477       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
4478       array\_avr\_work  => array\_avr\_work2
4479 \textcolor{keywordflow}{    end if}
4480 
4481                         
4482 
4483     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
4484       dim\_size = array\_shape(3)
4485       array\_shape(3) = 1
4486       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
4487                                   & , array\_shape(2) &
4488                           
4489         & , array\_shape(3) &
4490                           
4491         & , array\_shape(4) &
4492                           
4493         & , array\_shape(5) &
4494                           
4495         & , array\_shape(6) &
4496                           
4497         &  ) )
4498       array\_avr\_work3 = 0
4499       weight\_sum = 0.0\_dp
4500       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4501         array\_avr\_work3(:,:,1,:,:,:) = array\_avr\_work3(:,:,1,:,:,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4502         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4503 \textcolor{keywordflow}{      end do}
4504       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
4505       array\_avr\_work  => array\_avr\_work3
4506 \textcolor{keywordflow}{    end if}
4507 
4508                         
4509 
4510     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
4511       dim\_size = array\_shape(4)
4512       array\_shape(4) = 1
4513       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
4514                                   & , array\_shape(2) &
4515                           
4516         & , array\_shape(3) &
4517                           
4518         & , array\_shape(4) &
4519                           
4520         & , array\_shape(5) &
4521                           
4522         & , array\_shape(6) &
4523                           
4524         &  ) )
4525       array\_avr\_work4 = 0
4526       weight\_sum = 0.0\_dp
4527       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4528         array\_avr\_work4(:,:,:,1,:,:) = array\_avr\_work4(:,:,:,1,:,:) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4529         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4530 \textcolor{keywordflow}{      end do}
4531       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
4532       array\_avr\_work  => array\_avr\_work4
4533 \textcolor{keywordflow}{    end if}
4534 
4535                         
4536 
4537     \textcolor{keywordflow}{if} ( space\_average(5) ) \textcolor{keywordflow}{then}
4538       dim\_size = array\_shape(5)
4539       array\_shape(5) = 1
4540       \textcolor{keyword}{allocate}( array\_avr\_work5( array\_shape(1) &
4541                                   & , array\_shape(2) &
4542                           
4543         & , array\_shape(3) &
4544                           
4545         & , array\_shape(4) &
4546                           
4547         & , array\_shape(5) &
4548                           
4549         & , array\_shape(6) &
4550                           
4551         &  ) )
4552       array\_avr\_work5 = 0
4553       weight\_sum = 0.0\_dp
4554       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4555         array\_avr\_work5(:,:,:,:,1,:) = array\_avr\_work5(:,:,:,:,1,:) + array\_avr\_work(:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4556         weight\_sum = weight\_sum + weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4557 \textcolor{keywordflow}{      end do}
4558       array\_avr\_work5 = array\_avr\_work5 / weight\_sum
4559       array\_avr\_work  => array\_avr\_work5
4560 \textcolor{keywordflow}{    end if}
4561 
4562                         
4563 
4564     \textcolor{keywordflow}{if} ( space\_average(6) ) \textcolor{keywordflow}{then}
4565       dim\_size = array\_shape(6)
4566       array\_shape(6) = 1
4567       \textcolor{keyword}{allocate}( array\_avr\_work6( array\_shape(1) &
4568                                   & , array\_shape(2) &
4569                           
4570         & , array\_shape(3) &
4571                           
4572         & , array\_shape(4) &
4573                           
4574         & , array\_shape(5) &
4575                           
4576         & , array\_shape(6) &
4577                           
4578         &  ) )
4579       array\_avr\_work6 = 0
4580       weight\_sum = 0.0\_dp
4581       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4582         array\_avr\_work6(:,:,:,:,:,1) = array\_avr\_work6(:,:,:,:,:,1) + array\_avr\_work(:,:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4583         weight\_sum = weight\_sum + weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4584 \textcolor{keywordflow}{      end do}
4585       array\_avr\_work6 = array\_avr\_work6 / weight\_sum
4586       array\_avr\_work  => array\_avr\_work6
4587 \textcolor{keywordflow}{    end if}
4588 
4589                         
4590                       
4591 
4592                     
4593 
4594 
4595       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
4596                             & , array\_shape(2) &
4597                     
4598         & , array\_shape(3) &
4599                     
4600         & , array\_shape(4) &
4601                     
4602         & , array\_shape(5) &
4603                     
4604         & , array\_shape(6) &
4605                     
4606         & ) )
4607 
4608       array\_avr = array\_avr\_work
4609 
4610       \textcolor{keyword}{nullify}( array\_avr\_work )
4611 
4612                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
4613                     
4614       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
4615                     
4616       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
4617                     
4618       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
4619                     
4620       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work5 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work5 )
4621                     
4622       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work6 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work6 )
4623                     
4624 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_afcac23dd122bcf57385461f5d4446c8b}\label{namespacegtool__historyauto__internal_afcac23dd122bcf57385461f5d4446c8b}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereduceint7@{averagereduceint7}}
\index{averagereduceint7@{averagereduceint7}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereduceint7()}{averagereduceint7()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereduceint7 (\begin{DoxyParamCaption}\item[{integer, dimension(\+:,\+:,\+:,\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(7), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight5,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight6,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight7,  }\item[{integer, dimension(\+:,\+:,\+:,\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 4646 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
4646     \textcolor{comment}{!}
4647     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
4648     \textcolor{comment}{! array を平均化して array\_avr に返します.}
4649     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
4650     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
4651     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
4652     \textcolor{comment}{!}
4653     \textcolor{keywordtype}{implicit none}
4654     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:,:,:,:)
4655     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(7)
4656                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
4657                     
4658     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
4659                     
4660     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
4661                     
4662     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
4663                     
4664     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight5(:)
4665                     
4666     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight6(:)
4667                     
4668     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight7(:)
4669                     
4670     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:,:,:,:) \textcolor{comment}{! (out)}
4671 
4672     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:,:,:,:)
4673 
4674                         \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:,:,:,:)
4675                     
4676     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:,:,:,:)
4677                     
4678     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:,:,:,:)
4679                     
4680     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:,:,:,:)
4681                     
4682     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work5(:,:,:,:,:,:,:)
4683                     
4684     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work6(:,:,:,:,:,:,:)
4685                     
4686     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{pointer}:: array\_avr\_work7(:,:,:,:,:,:,:)
4687                     
4688 
4689     \textcolor{keywordtype}{integer}:: array\_shape(7)
4690     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
4691     \textcolor{keywordtype}{real(DP)}:: weight\_sum
4692   \textcolor{keywordflow}{continue}
4693 
4694     array\_shape = shape( array )
4695     array\_avr\_work => array
4696 
4697                     
4698                       
4699                         
4700     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
4701       dim\_size = array\_shape(1)
4702       array\_shape(1) = 1
4703       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
4704                                   & , array\_shape(2) &
4705                           
4706         & , array\_shape(3) &
4707                           
4708         & , array\_shape(4) &
4709                           
4710         & , array\_shape(5) &
4711                           
4712         & , array\_shape(6) &
4713                           
4714         & , array\_shape(7) &
4715                           
4716         &  ) )
4717       array\_avr\_work1 = 0
4718       weight\_sum = 0.0\_dp
4719       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4720         array\_avr\_work1(1,:,:,:,:,:,:) = array\_avr\_work1(1,:,:,:,:,:,:) + array\_avr\_work(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:,:,:) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4721         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4722 \textcolor{keywordflow}{      end do}
4723       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
4724       array\_avr\_work  => array\_avr\_work1
4725 \textcolor{keywordflow}{    end if}
4726 
4727                         
4728 
4729     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
4730       dim\_size = array\_shape(2)
4731       array\_shape(2) = 1
4732       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
4733                                   & , array\_shape(2) &
4734                           
4735         & , array\_shape(3) &
4736                           
4737         & , array\_shape(4) &
4738                           
4739         & , array\_shape(5) &
4740                           
4741         & , array\_shape(6) &
4742                           
4743         & , array\_shape(7) &
4744                           
4745         &  ) )
4746       array\_avr\_work2 = 0
4747       weight\_sum = 0.0\_dp
4748       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4749         array\_avr\_work2(:,1,:,:,:,:,:) = array\_avr\_work2(:,1,:,:,:,:,:) + array\_avr\_work(:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:,:) * weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4750         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4751 \textcolor{keywordflow}{      end do}
4752       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
4753       array\_avr\_work  => array\_avr\_work2
4754 \textcolor{keywordflow}{    end if}
4755 
4756                         
4757 
4758     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
4759       dim\_size = array\_shape(3)
4760       array\_shape(3) = 1
4761       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
4762                                   & , array\_shape(2) &
4763                           
4764         & , array\_shape(3) &
4765                           
4766         & , array\_shape(4) &
4767                           
4768         & , array\_shape(5) &
4769                           
4770         & , array\_shape(6) &
4771                           
4772         & , array\_shape(7) &
4773                           
4774         &  ) )
4775       array\_avr\_work3 = 0
4776       weight\_sum = 0.0\_dp
4777       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4778         array\_avr\_work3(:,:,1,:,:,:,:) = array\_avr\_work3(:,:,1,:,:,:,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4779         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4780 \textcolor{keywordflow}{      end do}
4781       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
4782       array\_avr\_work  => array\_avr\_work3
4783 \textcolor{keywordflow}{    end if}
4784 
4785                         
4786 
4787     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
4788       dim\_size = array\_shape(4)
4789       array\_shape(4) = 1
4790       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
4791                                   & , array\_shape(2) &
4792                           
4793         & , array\_shape(3) &
4794                           
4795         & , array\_shape(4) &
4796                           
4797         & , array\_shape(5) &
4798                           
4799         & , array\_shape(6) &
4800                           
4801         & , array\_shape(7) &
4802                           
4803         &  ) )
4804       array\_avr\_work4 = 0
4805       weight\_sum = 0.0\_dp
4806       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4807         array\_avr\_work4(:,:,:,1,:,:,:) = array\_avr\_work4(:,:,:,1,:,:,:) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4808         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4809 \textcolor{keywordflow}{      end do}
4810       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
4811       array\_avr\_work  => array\_avr\_work4
4812 \textcolor{keywordflow}{    end if}
4813 
4814                         
4815 
4816     \textcolor{keywordflow}{if} ( space\_average(5) ) \textcolor{keywordflow}{then}
4817       dim\_size = array\_shape(5)
4818       array\_shape(5) = 1
4819       \textcolor{keyword}{allocate}( array\_avr\_work5( array\_shape(1) &
4820                                   & , array\_shape(2) &
4821                           
4822         & , array\_shape(3) &
4823                           
4824         & , array\_shape(4) &
4825                           
4826         & , array\_shape(5) &
4827                           
4828         & , array\_shape(6) &
4829                           
4830         & , array\_shape(7) &
4831                           
4832         &  ) )
4833       array\_avr\_work5 = 0
4834       weight\_sum = 0.0\_dp
4835       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4836         array\_avr\_work5(:,:,:,:,1,:,:) = array\_avr\_work5(:,:,:,:,1,:,:) + array\_avr\_work(:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4837         weight\_sum = weight\_sum + weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4838 \textcolor{keywordflow}{      end do}
4839       array\_avr\_work5 = array\_avr\_work5 / weight\_sum
4840       array\_avr\_work  => array\_avr\_work5
4841 \textcolor{keywordflow}{    end if}
4842 
4843                         
4844 
4845     \textcolor{keywordflow}{if} ( space\_average(6) ) \textcolor{keywordflow}{then}
4846       dim\_size = array\_shape(6)
4847       array\_shape(6) = 1
4848       \textcolor{keyword}{allocate}( array\_avr\_work6( array\_shape(1) &
4849                                   & , array\_shape(2) &
4850                           
4851         & , array\_shape(3) &
4852                           
4853         & , array\_shape(4) &
4854                           
4855         & , array\_shape(5) &
4856                           
4857         & , array\_shape(6) &
4858                           
4859         & , array\_shape(7) &
4860                           
4861         &  ) )
4862       array\_avr\_work6 = 0
4863       weight\_sum = 0.0\_dp
4864       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4865         array\_avr\_work6(:,:,:,:,:,1,:) = array\_avr\_work6(:,:,:,:,:,1,:) + array\_avr\_work(:,:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4866         weight\_sum = weight\_sum + weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4867 \textcolor{keywordflow}{      end do}
4868       array\_avr\_work6 = array\_avr\_work6 / weight\_sum
4869       array\_avr\_work  => array\_avr\_work6
4870 \textcolor{keywordflow}{    end if}
4871 
4872                         
4873 
4874     \textcolor{keywordflow}{if} ( space\_average(7) ) \textcolor{keywordflow}{then}
4875       dim\_size = array\_shape(7)
4876       array\_shape(7) = 1
4877       \textcolor{keyword}{allocate}( array\_avr\_work7( array\_shape(1) &
4878                                   & , array\_shape(2) &
4879                           
4880         & , array\_shape(3) &
4881                           
4882         & , array\_shape(4) &
4883                           
4884         & , array\_shape(5) &
4885                           
4886         & , array\_shape(6) &
4887                           
4888         & , array\_shape(7) &
4889                           
4890         &  ) )
4891       array\_avr\_work7 = 0
4892       weight\_sum = 0.0\_dp
4893       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
4894         array\_avr\_work7(:,:,:,:,:,:,1) = array\_avr\_work7(:,:,:,:,:,:,1) + array\_avr\_work(:,:,:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight7(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4895         weight\_sum = weight\_sum + weight7(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
4896 \textcolor{keywordflow}{      end do}
4897       array\_avr\_work7 = array\_avr\_work7 / weight\_sum
4898       array\_avr\_work  => array\_avr\_work7
4899 \textcolor{keywordflow}{    end if}
4900 
4901                         
4902                       
4903 
4904                     
4905 
4906 
4907       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
4908                             & , array\_shape(2) &
4909                     
4910         & , array\_shape(3) &
4911                     
4912         & , array\_shape(4) &
4913                     
4914         & , array\_shape(5) &
4915                     
4916         & , array\_shape(6) &
4917                     
4918         & , array\_shape(7) &
4919                     
4920         & ) )
4921 
4922       array\_avr = array\_avr\_work
4923 
4924       \textcolor{keyword}{nullify}( array\_avr\_work )
4925 
4926                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
4927                     
4928       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
4929                     
4930       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
4931                     
4932       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
4933                     
4934       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work5 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work5 )
4935                     
4936       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work6 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work6 )
4937                     
4938       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work7 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work7 )
4939                     
4940 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a4fb192dede65401fd5058a635e042bc3}\label{namespacegtool__historyauto__internal_a4fb192dede65401fd5058a635e042bc3}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducereal1@{averagereducereal1}}
\index{averagereducereal1@{averagereducereal1}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducereal1()}{averagereducereal1()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducereal1 (\begin{DoxyParamCaption}\item[{real, dimension(\+:), intent(in), target}]{array,  }\item[{logical, dimension(1), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real, dimension(\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})}



Definition at line 1101 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
1101     \textcolor{comment}{!}
1102     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
1103     \textcolor{comment}{! array を平均化して array\_avr に返します.}
1104     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
1105     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
1106     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
1107     \textcolor{comment}{!}
1108     \textcolor{keywordtype}{implicit none}
1109     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:)
1110     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(1)
1111                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
1112                     
1113     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr(:) \textcolor{comment}{! (out)}
1114 
1115     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:)
1116 
1117                         \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:)
1118                     
1119 
1120     \textcolor{keywordtype}{integer}:: array\_shape(1)
1121     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
1122     \textcolor{keywordtype}{real(DP)}:: weight\_sum
1123   \textcolor{keywordflow}{continue}
1124 
1125     array\_shape = shape( array )
1126     array\_avr\_work => array
1127 
1128                     
1129                       
1130                         
1131     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
1132       dim\_size = array\_shape(1)
1133       array\_shape(1) = 1
1134       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
1135                           
1136         &  ) )
1137       array\_avr\_work1 = 0.0
1138       weight\_sum = 0.0\_dp
1139       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1140         array\_avr\_work1(1) = array\_avr\_work1(1) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1141         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1142 \textcolor{keywordflow}{      end do}
1143       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
1144       array\_avr\_work  => array\_avr\_work1
1145 \textcolor{keywordflow}{    end if}
1146 
1147                         
1148                       
1149 
1150                     
1151 
1152 
1153       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
1154                     
1155         & ) )
1156 
1157       array\_avr = array\_avr\_work
1158 
1159       \textcolor{keyword}{nullify}( array\_avr\_work )
1160 
1161                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
1162                     
1163 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_aef561ab212e1085c87da8aad1300ddd8}\label{namespacegtool__historyauto__internal_aef561ab212e1085c87da8aad1300ddd8}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducereal2@{averagereducereal2}}
\index{averagereducereal2@{averagereducereal2}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducereal2()}{averagereducereal2()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducereal2 (\begin{DoxyParamCaption}\item[{real, dimension(\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(2), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real, dimension(\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 1175 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
1175     \textcolor{comment}{!}
1176     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
1177     \textcolor{comment}{! array を平均化して array\_avr に返します.}
1178     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
1179     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
1180     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
1181     \textcolor{comment}{!}
1182     \textcolor{keywordtype}{implicit none}
1183     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:)
1184     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(2)
1185                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
1186                     
1187     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
1188                     
1189     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:) \textcolor{comment}{! (out)}
1190 
1191     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:)
1192 
1193                         \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:)
1194                     
1195     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:)
1196                     
1197 
1198     \textcolor{keywordtype}{integer}:: array\_shape(2)
1199     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
1200     \textcolor{keywordtype}{real(DP)}:: weight\_sum
1201   \textcolor{keywordflow}{continue}
1202 
1203     array\_shape = shape( array )
1204     array\_avr\_work => array
1205 
1206                     
1207                       
1208                         
1209     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
1210       dim\_size = array\_shape(1)
1211       array\_shape(1) = 1
1212       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
1213                                   & , array\_shape(2) &
1214                           
1215         &  ) )
1216       array\_avr\_work1 = 0.0
1217       weight\_sum = 0.0\_dp
1218       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1219         array\_avr\_work1(1,:) = array\_avr\_work1(1,:) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight1(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1220         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1221 \textcolor{keywordflow}{      end do}
1222       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
1223       array\_avr\_work  => array\_avr\_work1
1224 \textcolor{keywordflow}{    end if}
1225 
1226                         
1227 
1228     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
1229       dim\_size = array\_shape(2)
1230       array\_shape(2) = 1
1231       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
1232                                   & , array\_shape(2) &
1233                           
1234         &  ) )
1235       array\_avr\_work2 = 0.0
1236       weight\_sum = 0.0\_dp
1237       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1238         array\_avr\_work2(:,1) = array\_avr\_work2(:,1) + array\_avr\_work(:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight2(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1239         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1240 \textcolor{keywordflow}{      end do}
1241       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
1242       array\_avr\_work  => array\_avr\_work2
1243 \textcolor{keywordflow}{    end if}
1244 
1245                         
1246                       
1247 
1248                     
1249 
1250 
1251       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
1252                             & , array\_shape(2) &
1253                     
1254         & ) )
1255 
1256       array\_avr = array\_avr\_work
1257 
1258       \textcolor{keyword}{nullify}( array\_avr\_work )
1259 
1260                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
1261                     
1262       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
1263                     
1264 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a4009694ae7834fa6d0dddb36b80322eb}\label{namespacegtool__historyauto__internal_a4009694ae7834fa6d0dddb36b80322eb}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducereal3@{averagereducereal3}}
\index{averagereducereal3@{averagereducereal3}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducereal3()}{averagereducereal3()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducereal3 (\begin{DoxyParamCaption}\item[{real, dimension(\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(3), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real, dimension(\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 1278 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
1278     \textcolor{comment}{!}
1279     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
1280     \textcolor{comment}{! array を平均化して array\_avr に返します.}
1281     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
1282     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
1283     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
1284     \textcolor{comment}{!}
1285     \textcolor{keywordtype}{implicit none}
1286     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:)
1287     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(3)
1288                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
1289                     
1290     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
1291                     
1292     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
1293                     
1294     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:) \textcolor{comment}{! (out)}
1295 
1296     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:)
1297 
1298                         \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:)
1299                     
1300     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:)
1301                     
1302     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:)
1303                     
1304 
1305     \textcolor{keywordtype}{integer}:: array\_shape(3)
1306     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
1307     \textcolor{keywordtype}{real(DP)}:: weight\_sum
1308   \textcolor{keywordflow}{continue}
1309 
1310     array\_shape = shape( array )
1311     array\_avr\_work => array
1312 
1313                     
1314                       
1315                         
1316     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
1317       dim\_size = array\_shape(1)
1318       array\_shape(1) = 1
1319       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
1320                                   & , array\_shape(2) &
1321                           
1322         & , array\_shape(3) &
1323                           
1324         &  ) )
1325       array\_avr\_work1 = 0.0
1326       weight\_sum = 0.0\_dp
1327       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1328         array\_avr\_work1(1,:,:) = array\_avr\_work1(1,:,:) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight1(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1329         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1330 \textcolor{keywordflow}{      end do}
1331       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
1332       array\_avr\_work  => array\_avr\_work1
1333 \textcolor{keywordflow}{    end if}
1334 
1335                         
1336 
1337     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
1338       dim\_size = array\_shape(2)
1339       array\_shape(2) = 1
1340       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
1341                                   & , array\_shape(2) &
1342                           
1343         & , array\_shape(3) &
1344                           
1345         &  ) )
1346       array\_avr\_work2 = 0.0
1347       weight\_sum = 0.0\_dp
1348       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1349         array\_avr\_work2(:,1,:) = array\_avr\_work2(:,1,:) + array\_avr\_work(:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight2(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1350         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1351 \textcolor{keywordflow}{      end do}
1352       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
1353       array\_avr\_work  => array\_avr\_work2
1354 \textcolor{keywordflow}{    end if}
1355 
1356                         
1357 
1358     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
1359       dim\_size = array\_shape(3)
1360       array\_shape(3) = 1
1361       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
1362                                   & , array\_shape(2) &
1363                           
1364         & , array\_shape(3) &
1365                           
1366         &  ) )
1367       array\_avr\_work3 = 0.0
1368       weight\_sum = 0.0\_dp
1369       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1370         array\_avr\_work3(:,:,1) = array\_avr\_work3(:,:,1) + array\_avr\_work(:,:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight3(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1371         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1372 \textcolor{keywordflow}{      end do}
1373       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
1374       array\_avr\_work  => array\_avr\_work3
1375 \textcolor{keywordflow}{    end if}
1376 
1377                         
1378                       
1379 
1380                     
1381 
1382 
1383       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
1384                             & , array\_shape(2) &
1385                     
1386         & , array\_shape(3) &
1387                     
1388         & ) )
1389 
1390       array\_avr = array\_avr\_work
1391 
1392       \textcolor{keyword}{nullify}( array\_avr\_work )
1393 
1394                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
1395                     
1396       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
1397                     
1398       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
1399                     
1400 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ac0a9887027bacdc51028a62466d9fec9}\label{namespacegtool__historyauto__internal_ac0a9887027bacdc51028a62466d9fec9}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducereal4@{averagereducereal4}}
\index{averagereducereal4@{averagereducereal4}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducereal4()}{averagereducereal4()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducereal4 (\begin{DoxyParamCaption}\item[{real, dimension(\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(4), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real, dimension(\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 1416 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
1416     \textcolor{comment}{!}
1417     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
1418     \textcolor{comment}{! array を平均化して array\_avr に返します.}
1419     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
1420     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
1421     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
1422     \textcolor{comment}{!}
1423     \textcolor{keywordtype}{implicit none}
1424     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:)
1425     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(4)
1426                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
1427                     
1428     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
1429                     
1430     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
1431                     
1432     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
1433                     
1434     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:) \textcolor{comment}{! (out)}
1435 
1436     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:)
1437 
1438                         \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:)
1439                     
1440     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:)
1441                     
1442     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:)
1443                     
1444     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:)
1445                     
1446 
1447     \textcolor{keywordtype}{integer}:: array\_shape(4)
1448     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
1449     \textcolor{keywordtype}{real(DP)}:: weight\_sum
1450   \textcolor{keywordflow}{continue}
1451 
1452     array\_shape = shape( array )
1453     array\_avr\_work => array
1454 
1455                     
1456                       
1457                         
1458     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
1459       dim\_size = array\_shape(1)
1460       array\_shape(1) = 1
1461       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
1462                                   & , array\_shape(2) &
1463                           
1464         & , array\_shape(3) &
1465                           
1466         & , array\_shape(4) &
1467                           
1468         &  ) )
1469       array\_avr\_work1 = 0.0
1470       weight\_sum = 0.0\_dp
1471       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1472         array\_avr\_work1(1,:,:,:) = array\_avr\_work1(1,:,:,:) + array\_avr\_work(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight1(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1473         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1474 \textcolor{keywordflow}{      end do}
1475       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
1476       array\_avr\_work  => array\_avr\_work1
1477 \textcolor{keywordflow}{    end if}
1478 
1479                         
1480 
1481     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
1482       dim\_size = array\_shape(2)
1483       array\_shape(2) = 1
1484       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
1485                                   & , array\_shape(2) &
1486                           
1487         & , array\_shape(3) &
1488                           
1489         & , array\_shape(4) &
1490                           
1491         &  ) )
1492       array\_avr\_work2 = 0.0
1493       weight\_sum = 0.0\_dp
1494       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1495         array\_avr\_work2(:,1,:,:) = array\_avr\_work2(:,1,:,:) + array\_avr\_work(:,\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight2(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1496         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1497 \textcolor{keywordflow}{      end do}
1498       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
1499       array\_avr\_work  => array\_avr\_work2
1500 \textcolor{keywordflow}{    end if}
1501 
1502                         
1503 
1504     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
1505       dim\_size = array\_shape(3)
1506       array\_shape(3) = 1
1507       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
1508                                   & , array\_shape(2) &
1509                           
1510         & , array\_shape(3) &
1511                           
1512         & , array\_shape(4) &
1513                           
1514         &  ) )
1515       array\_avr\_work3 = 0.0
1516       weight\_sum = 0.0\_dp
1517       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1518         array\_avr\_work3(:,:,1,:) = array\_avr\_work3(:,:,1,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1519         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1520 \textcolor{keywordflow}{      end do}
1521       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
1522       array\_avr\_work  => array\_avr\_work3
1523 \textcolor{keywordflow}{    end if}
1524 
1525                         
1526 
1527     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
1528       dim\_size = array\_shape(4)
1529       array\_shape(4) = 1
1530       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
1531                                   & , array\_shape(2) &
1532                           
1533         & , array\_shape(3) &
1534                           
1535         & , array\_shape(4) &
1536                           
1537         &  ) )
1538       array\_avr\_work4 = 0.0
1539       weight\_sum = 0.0\_dp
1540       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1541         array\_avr\_work4(:,:,:,1) = array\_avr\_work4(:,:,:,1) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1542         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1543 \textcolor{keywordflow}{      end do}
1544       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
1545       array\_avr\_work  => array\_avr\_work4
1546 \textcolor{keywordflow}{    end if}
1547 
1548                         
1549                       
1550 
1551                     
1552 
1553 
1554       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
1555                             & , array\_shape(2) &
1556                     
1557         & , array\_shape(3) &
1558                     
1559         & , array\_shape(4) &
1560                     
1561         & ) )
1562 
1563       array\_avr = array\_avr\_work
1564 
1565       \textcolor{keyword}{nullify}( array\_avr\_work )
1566 
1567                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
1568                     
1569       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
1570                     
1571       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
1572                     
1573       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
1574                     
1575 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a4cd3c3800dde276769e10db92db601d0}\label{namespacegtool__historyauto__internal_a4cd3c3800dde276769e10db92db601d0}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducereal5@{averagereducereal5}}
\index{averagereducereal5@{averagereducereal5}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducereal5()}{averagereducereal5()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducereal5 (\begin{DoxyParamCaption}\item[{real, dimension(\+:,\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(5), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight5,  }\item[{real, dimension(\+:,\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 1593 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
1593     \textcolor{comment}{!}
1594     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
1595     \textcolor{comment}{! array を平均化して array\_avr に返します.}
1596     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
1597     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
1598     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
1599     \textcolor{comment}{!}
1600     \textcolor{keywordtype}{implicit none}
1601     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:,:)
1602     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(5)
1603                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
1604                     
1605     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
1606                     
1607     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
1608                     
1609     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
1610                     
1611     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight5(:)
1612                     
1613     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:,:) \textcolor{comment}{! (out)}
1614 
1615     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:,:)
1616 
1617                         \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:,:)
1618                     
1619     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:,:)
1620                     
1621     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:,:)
1622                     
1623     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:,:)
1624                     
1625     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work5(:,:,:,:,:)
1626                     
1627 
1628     \textcolor{keywordtype}{integer}:: array\_shape(5)
1629     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
1630     \textcolor{keywordtype}{real(DP)}:: weight\_sum
1631   \textcolor{keywordflow}{continue}
1632 
1633     array\_shape = shape( array )
1634     array\_avr\_work => array
1635 
1636                     
1637                       
1638                         
1639     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
1640       dim\_size = array\_shape(1)
1641       array\_shape(1) = 1
1642       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
1643                                   & , array\_shape(2) &
1644                           
1645         & , array\_shape(3) &
1646                           
1647         & , array\_shape(4) &
1648                           
1649         & , array\_shape(5) &
1650                           
1651         &  ) )
1652       array\_avr\_work1 = 0.0
1653       weight\_sum = 0.0\_dp
1654       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1655         array\_avr\_work1(1,:,:,:,:) = array\_avr\_work1(1,:,:,:,:) + array\_avr\_work(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1656         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1657 \textcolor{keywordflow}{      end do}
1658       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
1659       array\_avr\_work  => array\_avr\_work1
1660 \textcolor{keywordflow}{    end if}
1661 
1662                         
1663 
1664     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
1665       dim\_size = array\_shape(2)
1666       array\_shape(2) = 1
1667       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
1668                                   & , array\_shape(2) &
1669                           
1670         & , array\_shape(3) &
1671                           
1672         & , array\_shape(4) &
1673                           
1674         & , array\_shape(5) &
1675                           
1676         &  ) )
1677       array\_avr\_work2 = 0.0
1678       weight\_sum = 0.0\_dp
1679       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1680         array\_avr\_work2(:,1,:,:,:) = array\_avr\_work2(:,1,:,:,:) + array\_avr\_work(:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1681         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1682 \textcolor{keywordflow}{      end do}
1683       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
1684       array\_avr\_work  => array\_avr\_work2
1685 \textcolor{keywordflow}{    end if}
1686 
1687                         
1688 
1689     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
1690       dim\_size = array\_shape(3)
1691       array\_shape(3) = 1
1692       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
1693                                   & , array\_shape(2) &
1694                           
1695         & , array\_shape(3) &
1696                           
1697         & , array\_shape(4) &
1698                           
1699         & , array\_shape(5) &
1700                           
1701         &  ) )
1702       array\_avr\_work3 = 0.0
1703       weight\_sum = 0.0\_dp
1704       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1705         array\_avr\_work3(:,:,1,:,:) = array\_avr\_work3(:,:,1,:,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1706         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1707 \textcolor{keywordflow}{      end do}
1708       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
1709       array\_avr\_work  => array\_avr\_work3
1710 \textcolor{keywordflow}{    end if}
1711 
1712                         
1713 
1714     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
1715       dim\_size = array\_shape(4)
1716       array\_shape(4) = 1
1717       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
1718                                   & , array\_shape(2) &
1719                           
1720         & , array\_shape(3) &
1721                           
1722         & , array\_shape(4) &
1723                           
1724         & , array\_shape(5) &
1725                           
1726         &  ) )
1727       array\_avr\_work4 = 0.0
1728       weight\_sum = 0.0\_dp
1729       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1730         array\_avr\_work4(:,:,:,1,:) = array\_avr\_work4(:,:,:,1,:) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1731         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1732 \textcolor{keywordflow}{      end do}
1733       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
1734       array\_avr\_work  => array\_avr\_work4
1735 \textcolor{keywordflow}{    end if}
1736 
1737                         
1738 
1739     \textcolor{keywordflow}{if} ( space\_average(5) ) \textcolor{keywordflow}{then}
1740       dim\_size = array\_shape(5)
1741       array\_shape(5) = 1
1742       \textcolor{keyword}{allocate}( array\_avr\_work5( array\_shape(1) &
1743                                   & , array\_shape(2) &
1744                           
1745         & , array\_shape(3) &
1746                           
1747         & , array\_shape(4) &
1748                           
1749         & , array\_shape(5) &
1750                           
1751         &  ) )
1752       array\_avr\_work5 = 0.0
1753       weight\_sum = 0.0\_dp
1754       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1755         array\_avr\_work5(:,:,:,:,1) = array\_avr\_work5(:,:,:,:,1) + array\_avr\_work(:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1756         weight\_sum = weight\_sum + weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1757 \textcolor{keywordflow}{      end do}
1758       array\_avr\_work5 = array\_avr\_work5 / weight\_sum
1759       array\_avr\_work  => array\_avr\_work5
1760 \textcolor{keywordflow}{    end if}
1761 
1762                         
1763                       
1764 
1765                     
1766 
1767 
1768       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
1769                             & , array\_shape(2) &
1770                     
1771         & , array\_shape(3) &
1772                     
1773         & , array\_shape(4) &
1774                     
1775         & , array\_shape(5) &
1776                     
1777         & ) )
1778 
1779       array\_avr = array\_avr\_work
1780 
1781       \textcolor{keyword}{nullify}( array\_avr\_work )
1782 
1783                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
1784                     
1785       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
1786                     
1787       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
1788                     
1789       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
1790                     
1791       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work5 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work5 )
1792                     
1793 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_acb3d0d4eb5e20bb9a43bbe35d00a7bca}\label{namespacegtool__historyauto__internal_acb3d0d4eb5e20bb9a43bbe35d00a7bca}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducereal6@{averagereducereal6}}
\index{averagereducereal6@{averagereducereal6}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducereal6()}{averagereducereal6()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducereal6 (\begin{DoxyParamCaption}\item[{real, dimension(\+:,\+:,\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(6), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight5,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight6,  }\item[{real, dimension(\+:,\+:,\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 1813 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
1813     \textcolor{comment}{!}
1814     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
1815     \textcolor{comment}{! array を平均化して array\_avr に返します.}
1816     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
1817     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
1818     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
1819     \textcolor{comment}{!}
1820     \textcolor{keywordtype}{implicit none}
1821     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:,:,:)
1822     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(6)
1823                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
1824                     
1825     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
1826                     
1827     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
1828                     
1829     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
1830                     
1831     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight5(:)
1832                     
1833     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight6(:)
1834                     
1835     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:,:,:) \textcolor{comment}{! (out)}
1836 
1837     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:,:,:)
1838 
1839                         \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:,:,:)
1840                     
1841     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:,:,:)
1842                     
1843     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:,:,:)
1844                     
1845     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:,:,:)
1846                     
1847     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work5(:,:,:,:,:,:)
1848                     
1849     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work6(:,:,:,:,:,:)
1850                     
1851 
1852     \textcolor{keywordtype}{integer}:: array\_shape(6)
1853     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
1854     \textcolor{keywordtype}{real(DP)}:: weight\_sum
1855   \textcolor{keywordflow}{continue}
1856 
1857     array\_shape = shape( array )
1858     array\_avr\_work => array
1859 
1860                     
1861                       
1862                         
1863     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
1864       dim\_size = array\_shape(1)
1865       array\_shape(1) = 1
1866       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
1867                                   & , array\_shape(2) &
1868                           
1869         & , array\_shape(3) &
1870                           
1871         & , array\_shape(4) &
1872                           
1873         & , array\_shape(5) &
1874                           
1875         & , array\_shape(6) &
1876                           
1877         &  ) )
1878       array\_avr\_work1 = 0.0
1879       weight\_sum = 0.0\_dp
1880       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1881         array\_avr\_work1(1,:,:,:,:,:) = array\_avr\_work1(1,:,:,:,:,:) + array\_avr\_work(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:,:) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1882         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1883 \textcolor{keywordflow}{      end do}
1884       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
1885       array\_avr\_work  => array\_avr\_work1
1886 \textcolor{keywordflow}{    end if}
1887 
1888                         
1889 
1890     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
1891       dim\_size = array\_shape(2)
1892       array\_shape(2) = 1
1893       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
1894                                   & , array\_shape(2) &
1895                           
1896         & , array\_shape(3) &
1897                           
1898         & , array\_shape(4) &
1899                           
1900         & , array\_shape(5) &
1901                           
1902         & , array\_shape(6) &
1903                           
1904         &  ) )
1905       array\_avr\_work2 = 0.0
1906       weight\_sum = 0.0\_dp
1907       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1908         array\_avr\_work2(:,1,:,:,:,:) = array\_avr\_work2(:,1,:,:,:,:) + array\_avr\_work(:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:) * weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1909         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1910 \textcolor{keywordflow}{      end do}
1911       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
1912       array\_avr\_work  => array\_avr\_work2
1913 \textcolor{keywordflow}{    end if}
1914 
1915                         
1916 
1917     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
1918       dim\_size = array\_shape(3)
1919       array\_shape(3) = 1
1920       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
1921                                   & , array\_shape(2) &
1922                           
1923         & , array\_shape(3) &
1924                           
1925         & , array\_shape(4) &
1926                           
1927         & , array\_shape(5) &
1928                           
1929         & , array\_shape(6) &
1930                           
1931         &  ) )
1932       array\_avr\_work3 = 0.0
1933       weight\_sum = 0.0\_dp
1934       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1935         array\_avr\_work3(:,:,1,:,:,:) = array\_avr\_work3(:,:,1,:,:,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1936         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1937 \textcolor{keywordflow}{      end do}
1938       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
1939       array\_avr\_work  => array\_avr\_work3
1940 \textcolor{keywordflow}{    end if}
1941 
1942                         
1943 
1944     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
1945       dim\_size = array\_shape(4)
1946       array\_shape(4) = 1
1947       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
1948                                   & , array\_shape(2) &
1949                           
1950         & , array\_shape(3) &
1951                           
1952         & , array\_shape(4) &
1953                           
1954         & , array\_shape(5) &
1955                           
1956         & , array\_shape(6) &
1957                           
1958         &  ) )
1959       array\_avr\_work4 = 0.0
1960       weight\_sum = 0.0\_dp
1961       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1962         array\_avr\_work4(:,:,:,1,:,:) = array\_avr\_work4(:,:,:,1,:,:) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1963         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1964 \textcolor{keywordflow}{      end do}
1965       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
1966       array\_avr\_work  => array\_avr\_work4
1967 \textcolor{keywordflow}{    end if}
1968 
1969                         
1970 
1971     \textcolor{keywordflow}{if} ( space\_average(5) ) \textcolor{keywordflow}{then}
1972       dim\_size = array\_shape(5)
1973       array\_shape(5) = 1
1974       \textcolor{keyword}{allocate}( array\_avr\_work5( array\_shape(1) &
1975                                   & , array\_shape(2) &
1976                           
1977         & , array\_shape(3) &
1978                           
1979         & , array\_shape(4) &
1980                           
1981         & , array\_shape(5) &
1982                           
1983         & , array\_shape(6) &
1984                           
1985         &  ) )
1986       array\_avr\_work5 = 0.0
1987       weight\_sum = 0.0\_dp
1988       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
1989         array\_avr\_work5(:,:,:,:,1,:) = array\_avr\_work5(:,:,:,:,1,:) + array\_avr\_work(:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1990         weight\_sum = weight\_sum + weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
1991 \textcolor{keywordflow}{      end do}
1992       array\_avr\_work5 = array\_avr\_work5 / weight\_sum
1993       array\_avr\_work  => array\_avr\_work5
1994 \textcolor{keywordflow}{    end if}
1995 
1996                         
1997 
1998     \textcolor{keywordflow}{if} ( space\_average(6) ) \textcolor{keywordflow}{then}
1999       dim\_size = array\_shape(6)
2000       array\_shape(6) = 1
2001       \textcolor{keyword}{allocate}( array\_avr\_work6( array\_shape(1) &
2002                                   & , array\_shape(2) &
2003                           
2004         & , array\_shape(3) &
2005                           
2006         & , array\_shape(4) &
2007                           
2008         & , array\_shape(5) &
2009                           
2010         & , array\_shape(6) &
2011                           
2012         &  ) )
2013       array\_avr\_work6 = 0.0
2014       weight\_sum = 0.0\_dp
2015       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2016         array\_avr\_work6(:,:,:,:,:,1) = array\_avr\_work6(:,:,:,:,:,1) + array\_avr\_work(:,:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2017         weight\_sum = weight\_sum + weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2018 \textcolor{keywordflow}{      end do}
2019       array\_avr\_work6 = array\_avr\_work6 / weight\_sum
2020       array\_avr\_work  => array\_avr\_work6
2021 \textcolor{keywordflow}{    end if}
2022 
2023                         
2024                       
2025 
2026                     
2027 
2028 
2029       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
2030                             & , array\_shape(2) &
2031                     
2032         & , array\_shape(3) &
2033                     
2034         & , array\_shape(4) &
2035                     
2036         & , array\_shape(5) &
2037                     
2038         & , array\_shape(6) &
2039                     
2040         & ) )
2041 
2042       array\_avr = array\_avr\_work
2043 
2044       \textcolor{keyword}{nullify}( array\_avr\_work )
2045 
2046                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
2047                     
2048       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
2049                     
2050       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
2051                     
2052       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
2053                     
2054       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work5 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work5 )
2055                     
2056       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work6 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work6 )
2057                     
2058 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a93408e0787bbdc0ec3a235b6c4283dbd}\label{namespacegtool__historyauto__internal_a93408e0787bbdc0ec3a235b6c4283dbd}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!averagereducereal7@{averagereducereal7}}
\index{averagereducereal7@{averagereducereal7}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{averagereducereal7()}{averagereducereal7()}}
{\footnotesize\ttfamily subroutine gtool\+\_\+historyauto\+\_\+internal\+::averagereducereal7 (\begin{DoxyParamCaption}\item[{real, dimension(\+:,\+:,\+:,\+:,\+:,\+:,\+:), intent(in), target}]{array,  }\item[{logical, dimension(7), intent(in)}]{space\+\_\+average,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight1,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight2,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight3,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight4,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight5,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight6,  }\item[{real(dp), dimension(\+:), intent(in)}]{weight7,  }\item[{real, dimension(\+:,\+:,\+:,\+:,\+:,\+:,\+:), pointer}]{array\+\_\+avr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 2080 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
2080     \textcolor{comment}{!}
2081     \textcolor{comment}{! space\_average で .true. に指定された次元に対して,}
2082     \textcolor{comment}{! array を平均化して array\_avr に返します.}
2083     \textcolor{comment}{! 平均化には重み weight1 〜 weight7 が用いられます.}
2084     \textcolor{comment}{! array\_avr の配列の次元そのものは減りません. その代わり,}
2085     \textcolor{comment}{! 平均化された次元の配列のサイズは 1 になります.}
2086     \textcolor{comment}{!}
2087     \textcolor{keywordtype}{implicit none}
2088     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{intent(in)}, \textcolor{keywordtype}{target}:: array(:,:,:,:,:,:,:)
2089     \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{intent(in)}:: space\_average(7)
2090                         \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight1(:)
2091                     
2092     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight2(:)
2093                     
2094     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight3(:)
2095                     
2096     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight4(:)
2097                     
2098     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight5(:)
2099                     
2100     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight6(:)
2101                     
2102     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: weight7(:)
2103                     
2104     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr(:,:,:,:,:,:,:) \textcolor{comment}{! (out)}
2105 
2106     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work(:,:,:,:,:,:,:)
2107 
2108                         \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work1(:,:,:,:,:,:,:)
2109                     
2110     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work2(:,:,:,:,:,:,:)
2111                     
2112     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work3(:,:,:,:,:,:,:)
2113                     
2114     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work4(:,:,:,:,:,:,:)
2115                     
2116     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work5(:,:,:,:,:,:,:)
2117                     
2118     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work6(:,:,:,:,:,:,:)
2119                     
2120     \textcolor{keywordtype}{real}, \textcolor{keywordtype}{pointer}:: array\_avr\_work7(:,:,:,:,:,:,:)
2121                     
2122 
2123     \textcolor{keywordtype}{integer}:: array\_shape(7)
2124     \textcolor{keywordtype}{integer}:: \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, dim\_size
2125     \textcolor{keywordtype}{real(DP)}:: weight\_sum
2126   \textcolor{keywordflow}{continue}
2127 
2128     array\_shape = shape( array )
2129     array\_avr\_work => array
2130 
2131                     
2132                       
2133                         
2134     \textcolor{keywordflow}{if} ( space\_average(1) ) \textcolor{keywordflow}{then}
2135       dim\_size = array\_shape(1)
2136       array\_shape(1) = 1
2137       \textcolor{keyword}{allocate}( array\_avr\_work1( array\_shape(1) &
2138                                   & , array\_shape(2) &
2139                           
2140         & , array\_shape(3) &
2141                           
2142         & , array\_shape(4) &
2143                           
2144         & , array\_shape(5) &
2145                           
2146         & , array\_shape(6) &
2147                           
2148         & , array\_shape(7) &
2149                           
2150         &  ) )
2151       array\_avr\_work1 = 0.0
2152       weight\_sum = 0.0\_dp
2153       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2154         array\_avr\_work1(1,:,:,:,:,:,:) = array\_avr\_work1(1,:,:,:,:,:,:) + array\_avr\_work(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:,:,:) * weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2155         weight\_sum = weight\_sum + weight1(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2156 \textcolor{keywordflow}{      end do}
2157       array\_avr\_work1 = array\_avr\_work1 / weight\_sum
2158       array\_avr\_work  => array\_avr\_work1
2159 \textcolor{keywordflow}{    end if}
2160 
2161                         
2162 
2163     \textcolor{keywordflow}{if} ( space\_average(2) ) \textcolor{keywordflow}{then}
2164       dim\_size = array\_shape(2)
2165       array\_shape(2) = 1
2166       \textcolor{keyword}{allocate}( array\_avr\_work2( array\_shape(1) &
2167                                   & , array\_shape(2) &
2168                           
2169         & , array\_shape(3) &
2170                           
2171         & , array\_shape(4) &
2172                           
2173         & , array\_shape(5) &
2174                           
2175         & , array\_shape(6) &
2176                           
2177         & , array\_shape(7) &
2178                           
2179         &  ) )
2180       array\_avr\_work2 = 0.0
2181       weight\_sum = 0.0\_dp
2182       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2183         array\_avr\_work2(:,1,:,:,:,:,:) = array\_avr\_work2(:,1,:,:,:,:,:) + array\_avr\_work(:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:,:) * weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2184         weight\_sum = weight\_sum + weight2(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2185 \textcolor{keywordflow}{      end do}
2186       array\_avr\_work2 = array\_avr\_work2 / weight\_sum
2187       array\_avr\_work  => array\_avr\_work2
2188 \textcolor{keywordflow}{    end if}
2189 
2190                         
2191 
2192     \textcolor{keywordflow}{if} ( space\_average(3) ) \textcolor{keywordflow}{then}
2193       dim\_size = array\_shape(3)
2194       array\_shape(3) = 1
2195       \textcolor{keyword}{allocate}( array\_avr\_work3( array\_shape(1) &
2196                                   & , array\_shape(2) &
2197                           
2198         & , array\_shape(3) &
2199                           
2200         & , array\_shape(4) &
2201                           
2202         & , array\_shape(5) &
2203                           
2204         & , array\_shape(6) &
2205                           
2206         & , array\_shape(7) &
2207                           
2208         &  ) )
2209       array\_avr\_work3 = 0.0
2210       weight\_sum = 0.0\_dp
2211       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2212         array\_avr\_work3(:,:,1,:,:,:,:) = array\_avr\_work3(:,:,1,:,:,:,:) + array\_avr\_work(:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:,:) * weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2213         weight\_sum = weight\_sum + weight3(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2214 \textcolor{keywordflow}{      end do}
2215       array\_avr\_work3 = array\_avr\_work3 / weight\_sum
2216       array\_avr\_work  => array\_avr\_work3
2217 \textcolor{keywordflow}{    end if}
2218 
2219                         
2220 
2221     \textcolor{keywordflow}{if} ( space\_average(4) ) \textcolor{keywordflow}{then}
2222       dim\_size = array\_shape(4)
2223       array\_shape(4) = 1
2224       \textcolor{keyword}{allocate}( array\_avr\_work4( array\_shape(1) &
2225                                   & , array\_shape(2) &
2226                           
2227         & , array\_shape(3) &
2228                           
2229         & , array\_shape(4) &
2230                           
2231         & , array\_shape(5) &
2232                           
2233         & , array\_shape(6) &
2234                           
2235         & , array\_shape(7) &
2236                           
2237         &  ) )
2238       array\_avr\_work4 = 0.0
2239       weight\_sum = 0.0\_dp
2240       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2241         array\_avr\_work4(:,:,:,1,:,:,:) = array\_avr\_work4(:,:,:,1,:,:,:) + array\_avr\_work(:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:,:) * weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2242         weight\_sum = weight\_sum + weight4(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2243 \textcolor{keywordflow}{      end do}
2244       array\_avr\_work4 = array\_avr\_work4 / weight\_sum
2245       array\_avr\_work  => array\_avr\_work4
2246 \textcolor{keywordflow}{    end if}
2247 
2248                         
2249 
2250     \textcolor{keywordflow}{if} ( space\_average(5) ) \textcolor{keywordflow}{then}
2251       dim\_size = array\_shape(5)
2252       array\_shape(5) = 1
2253       \textcolor{keyword}{allocate}( array\_avr\_work5( array\_shape(1) &
2254                                   & , array\_shape(2) &
2255                           
2256         & , array\_shape(3) &
2257                           
2258         & , array\_shape(4) &
2259                           
2260         & , array\_shape(5) &
2261                           
2262         & , array\_shape(6) &
2263                           
2264         & , array\_shape(7) &
2265                           
2266         &  ) )
2267       array\_avr\_work5 = 0.0
2268       weight\_sum = 0.0\_dp
2269       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2270         array\_avr\_work5(:,:,:,:,1,:,:) = array\_avr\_work5(:,:,:,:,1,:,:) + array\_avr\_work(:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:,:) * weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2271         weight\_sum = weight\_sum + weight5(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2272 \textcolor{keywordflow}{      end do}
2273       array\_avr\_work5 = array\_avr\_work5 / weight\_sum
2274       array\_avr\_work  => array\_avr\_work5
2275 \textcolor{keywordflow}{    end if}
2276 
2277                         
2278 
2279     \textcolor{keywordflow}{if} ( space\_average(6) ) \textcolor{keywordflow}{then}
2280       dim\_size = array\_shape(6)
2281       array\_shape(6) = 1
2282       \textcolor{keyword}{allocate}( array\_avr\_work6( array\_shape(1) &
2283                                   & , array\_shape(2) &
2284                           
2285         & , array\_shape(3) &
2286                           
2287         & , array\_shape(4) &
2288                           
2289         & , array\_shape(5) &
2290                           
2291         & , array\_shape(6) &
2292                           
2293         & , array\_shape(7) &
2294                           
2295         &  ) )
2296       array\_avr\_work6 = 0.0
2297       weight\_sum = 0.0\_dp
2298       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2299         array\_avr\_work6(:,:,:,:,:,1,:) = array\_avr\_work6(:,:,:,:,:,1,:) + array\_avr\_work(:,:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},:) * weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2300         weight\_sum = weight\_sum + weight6(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2301 \textcolor{keywordflow}{      end do}
2302       array\_avr\_work6 = array\_avr\_work6 / weight\_sum
2303       array\_avr\_work  => array\_avr\_work6
2304 \textcolor{keywordflow}{    end if}
2305 
2306                         
2307 
2308     \textcolor{keywordflow}{if} ( space\_average(7) ) \textcolor{keywordflow}{then}
2309       dim\_size = array\_shape(7)
2310       array\_shape(7) = 1
2311       \textcolor{keyword}{allocate}( array\_avr\_work7( array\_shape(1) &
2312                                   & , array\_shape(2) &
2313                           
2314         & , array\_shape(3) &
2315                           
2316         & , array\_shape(4) &
2317                           
2318         & , array\_shape(5) &
2319                           
2320         & , array\_shape(6) &
2321                           
2322         & , array\_shape(7) &
2323                           
2324         &  ) )
2325       array\_avr\_work7 = 0.0
2326       weight\_sum = 0.0\_dp
2327       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, dim\_size
2328         array\_avr\_work7(:,:,:,:,:,:,1) = array\_avr\_work7(:,:,:,:,:,:,1) + array\_avr\_work(:,:,:,:,:,:,
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) * weight7(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2329         weight\_sum = weight\_sum + weight7(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
2330 \textcolor{keywordflow}{      end do}
2331       array\_avr\_work7 = array\_avr\_work7 / weight\_sum
2332       array\_avr\_work  => array\_avr\_work7
2333 \textcolor{keywordflow}{    end if}
2334 
2335                         
2336                       
2337 
2338                     
2339 
2340 
2341       \textcolor{keyword}{allocate}( array\_avr( array\_shape(1) &
2342                             & , array\_shape(2) &
2343                     
2344         & , array\_shape(3) &
2345                     
2346         & , array\_shape(4) &
2347                     
2348         & , array\_shape(5) &
2349                     
2350         & , array\_shape(6) &
2351                     
2352         & , array\_shape(7) &
2353                     
2354         & ) )
2355 
2356       array\_avr = array\_avr\_work
2357 
2358       \textcolor{keyword}{nullify}( array\_avr\_work )
2359 
2360                           \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work1 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work1 )
2361                     
2362       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work2 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work2 )
2363                     
2364       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work3 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work3 )
2365                     
2366       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work4 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work4 )
2367                     
2368       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work5 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work5 )
2369                     
2370       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work6 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work6 )
2371                     
2372       \textcolor{keywordflow}{if} ( \textcolor{keyword}{associated}( array\_avr\_work7 ) ) \textcolor{keyword}{deallocate}( array\_avr\_work7 )
2373                     
2374 
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a11f37618c3ad49fe895dccfc7ed2a342}\label{namespacegtool__historyauto__internal_a11f37618c3ad49fe895dccfc7ed2a342}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!hstfilecreate@{hstfilecreate}}
\index{hstfilecreate@{hstfilecreate}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{hstfilecreate()}{hstfilecreate()}}
{\footnotesize\ttfamily subroutine, public \hyperlink{interfacegtool__historyauto__internal_1_1hstfilecreate}{gtool\+\_\+historyauto\+\_\+internal\+::hstfilecreate} (\begin{DoxyParamCaption}\item[{type(gt\+\_\+history), intent(inout)}]{gthist,  }\item[{character($\ast$), intent(in)}]{varname,  }\item[{real(dp), intent(in)}]{time }\end{DoxyParamCaption})}



Definition at line 625 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



References dc\+\_\+trace\+::beginsub(), conventions\+\_\+save, data\+\_\+axes, data\+\_\+axes\+\_\+whole, data\+\_\+weights, dc\+\_\+error\+::dc\+\_\+noerr, dc\+\_\+trace\+::endsub(), gt\+\_\+version\+\_\+save, gthst\+\_\+axes, gthst\+\_\+vars, gthst\+\_\+weights, gthstnml, dc\+\_\+error\+::hst\+\_\+ebadslice, dc\+\_\+error\+::hst\+\_\+ebadvarname, dc\+\_\+error\+::hst\+\_\+empinoaxisdata, institution\+\_\+save, dc\+\_\+string\+::joinchar(), numdims, numvars, numwgts, rank\+\_\+save, save\+\_\+mpi\+\_\+gather, save\+\_\+mpi\+\_\+split, source\+\_\+save, dc\+\_\+error\+::storeerror(), time\+\_\+unit\+\_\+suffix, title\+\_\+save, and wgtsuf.


\begin{DoxyCode}
625     \textcolor{comment}{!}
626     \textcolor{comment}{! ファイル作成用内部サブルーチン}
627     \textcolor{comment}{!}
628     \textcolor{comment}{! Internal subroutine for creation of files}
629     \textcolor{comment}{!}
630     \textcolor{keywordtype}{use }\hyperlink{namespacedc__trace}{dc\_trace}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}, \hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}
631     \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}, \hyperlink{namespacedc__error_a64841a3c9e3ef7d5ddb175e5770f7dfe}{dc\_noerr}, 
      \hyperlink{namespacedc__error_a30736dc67a0d547ad912a1373fcedcbb}{hst\_ebadvarname}, &
632       & \hyperlink{namespacedc__error_a25c91a40541a0445ed9ddb56dbbee386}{hst\_ebadslice}, \hyperlink{namespacedc__error_ac9383c449e0a61a04a809199b7fe284b}{hst\_empinoaxisdata}
633     \textcolor{keywordtype}{use }\hyperlink{namespacedc__calendar}{dc\_calendar}\textcolor{keywordtype}{, only}: \hyperlink{interfacedc__calendar__generic_1_1dccalconvertbyunit}{dccalconvertbyunit}
634     \textcolor{keywordtype}{use }\hyperlink{namespacedc__date__types}{dc\_date\_types}\textcolor{keywordtype}{, only}: \hyperlink{structdc__date__types_1_1dc__difftime}{dc\_difftime}
635     \textcolor{keywordtype}{use }\hyperlink{namespacedc__date}{dc\_date}\textcolor{keywordtype}{, only}: \hyperlink{interfacedc__date__generic_1_1dcdifftimecreate}{dcdifftimecreate}, \hyperlink{interfacedc__date__generic_1_1evalbyunit}{evalbyunit}
636     \textcolor{keywordtype}{use }\hyperlink{namespacedc__string}{dc\_string}\textcolor{keywordtype}{, only}: \hyperlink{interfacedc__string_1_1cprintf}{cprintf}, \hyperlink{interfacedc__string_1_1strinclude}{strinclude}, \hyperlink{interfacedc__string_1_1tochar}{tochar}, 
      \hyperlink{namespacedc__string_a20412554f8f648165d202319119cf628}{joinchar}
637     \textcolor{keywordtype}{use }\hyperlink{namespacedc__message}{dc\_message}\textcolor{keywordtype}{, only}: \hyperlink{interfacedc__message_1_1messagenotify}{messagenotify}
638     \textcolor{keywordtype}{use }\hyperlink{namespacegtool__history__nmlinfo__generic}{gtool\_history\_nmlinfo\_generic}\textcolor{keywordtype}{, only}: &
639       & \hyperlink{interfacegtool__history__nmlinfo__generic_1_1hstnmlinfooutputvalid}{hstnmlinfooutputvalid}, \hyperlink{interfacegtool__history__nmlinfo__generic_1_1hstnmlinfoinquire}{hstnmlinfoinquire}, 
      \hyperlink{interfacegtool__history__nmlinfo__generic_1_1hstnmlinfoputline}{hstnmlinfoputline}
640     \textcolor{keywordtype}{use }\hyperlink{namespacegtool__history}{gtool\_history}\textcolor{keywordtype}{, only}: \hyperlink{structgtool__history__types_1_1gt__history}{gt\_history}, &
641       & \hyperlink{interfacegtool__history__generic_1_1historycreate}{historycreate}, \hyperlink{interfacegtool__history__generic_1_1historyaddvariable}{historyaddvariable}, 
      \hyperlink{interfacegtool__history__generic_1_1historyaddattr}{historyaddattr}, &
642       & \hyperlink{interfacegtool__history__generic_1_1historyinitialized}{historyinitialized}, \hyperlink{interfacegtool__history__generic_1_1historyput}{historyput}, 
      \hyperlink{interfacegtool__history__generic_1_1historyputaxismpi}{historyputaxismpi}, &
643       & \hyperlink{interfacegtool__history__generic_1_1historyaxiscreate}{historyaxiscreate}, \hyperlink{interfacegtool__history__generic_1_1historyaxisinquire}{historyaxisinquire}, 
      \hyperlink{interfacegtool__history__generic_1_1historyaxiscopy}{historyaxiscopy}, &
644       & \hyperlink{interfacegtool__history__generic_1_1historyvarinfoinquire}{historyvarinfoinquire}, \hyperlink{interfacegtool__history__generic_1_1historyvarinfocreate}{historyvarinfocreate}, &
645       & \hyperlink{interfacegtool__history__generic_1_1historyvarinfocopy}{historyvarinfocopy}, \hyperlink{interfacegtool__history__generic_1_1historyvarinfoinitialized}{historyvarinfoinitialized}, &
646       & \hyperlink{interfacegtool__history__generic_1_1historyvarinfoclear}{historyvarinfoclear}
647 
648     \textcolor{keywordtype}{implicit none}
649     \textcolor{keywordtype}{type}(\hyperlink{structgtool__history__types_1_1gt__history}{gt\_history}), \textcolor{keywordtype}{intent(inout)}:: gthist
650                               \textcolor{comment}{! gtool\_history モジュール用構造体.}
651                               \textcolor{comment}{! Derived type for "gtool\_history" module}
652     \textcolor{keywordtype}{character(*)}, \textcolor{keywordtype}{intent(in)}:: varname
653                               \textcolor{comment}{! 変数の名前.}
654                               \textcolor{comment}{! Variable name}
655     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: time
656                               \textcolor{comment}{! 現在時刻. Current time}
657 
658     \textcolor{keywordtype}{character(TOKEN)}:: interval\_unit
659                               \textcolor{comment}{! データの出力間隔の単位.}
660                               \textcolor{comment}{! Unit for interval of history data output}
661     \textcolor{keywordtype}{real(DP)}:: origin\_value
662                               \textcolor{comment}{! データの出力開始時刻の数値.}
663                               \textcolor{comment}{! Numerical value for start time of history data output}
664     \textcolor{keywordtype}{character(TOKEN)}:: origin\_unit
665                               \textcolor{comment}{! データの出力開始時刻の単位.}
666                               \textcolor{comment}{! Unit for start time of history data output}
667 
668     \textcolor{keywordtype}{real(DP)}:: origin\_sec
669     \textcolor{keywordtype}{integer}:: newfile\_intvalue
670     \textcolor{keywordtype}{real(DP)}:: newfile\_intvalued
671                               \textcolor{comment}{! ファイル分割時間間隔.}
672                               \textcolor{comment}{! Interval of time of separation of a file.}
673     \textcolor{keywordtype}{character(TOKEN)}:: newfile\_intunit
674                               \textcolor{comment}{! ファイル分割時間間隔の単位.}
675                               \textcolor{comment}{! Unit of interval of time of separation of a file.}
676 
677     \textcolor{keywordtype}{character(STRING)}:: file, file\_base, file\_suffix, file\_newfile\_time, file\_rank
678                               \textcolor{comment}{! 出力ファイル名.}
679                               \textcolor{comment}{! Output file name.}
680     \textcolor{keywordtype}{integer}:: stat, \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, j, k, vnum, numdims\_slice, dim\_size, cnt
681     \textcolor{keywordtype}{character(STRING)}:: name, \hyperlink{structdc__units_1_1units}{units}, longname, cause\_c, wgt\_name
682     \textcolor{keywordtype}{character(TOKEN)}:: xtype
683     \textcolor{keywordtype}{type}(\hyperlink{structgtool__history__types_1_1gt__history__axis}{gt\_history\_axis}):: gthst\_axes\_time
684     \textcolor{keywordtype}{type}(\hyperlink{structgtool__history__types_1_1gt__history__axis}{gt\_history\_axis}), \textcolor{keywordtype}{pointer}:: gthst\_axes\_slices(:) =>null()
685     \textcolor{keywordtype}{type}(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\_history\_axis\_data}), \textcolor{keywordtype}{pointer}:: data\_axes\_slices(:) =>null()
686     \textcolor{keywordtype}{type}(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\_history\_axis\_data}), \textcolor{keywordtype}{pointer}:: data\_weights\_slices(:) =>null()
687     \textcolor{keywordtype}{real(DP)}:: wgt\_sum, wgt\_sum\_s
688     \textcolor{keywordtype}{logical}:: slice\_valid
689     \textcolor{keywordtype}{integer}:: slice\_start(1:\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}-1)
690                               \textcolor{comment}{! 空間方向の開始点.}
691                               \textcolor{comment}{! Start points of spaces.}
692     \textcolor{keywordtype}{integer}:: slice\_end(1:\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}-1)
693                               \textcolor{comment}{! 空間方向の終了点.}
694                               \textcolor{comment}{! End points of spaces.}
695     \textcolor{keywordtype}{integer}:: slice\_stride(1:\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}-1)
696                               \textcolor{comment}{! 空間方向の刻み幅.}
697                               \textcolor{comment}{! Strides of spaces}
698 
699     \textcolor{keywordtype}{character(*)}, \textcolor{keywordtype}{parameter}:: subname = \textcolor{stringliteral}{"HstFileCreate"}
700   \textcolor{keywordflow}{continue}
701     \textcolor{keyword}{call }\hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}(subname, \textcolor{stringliteral}{'varname=%c'}, c1 = trim(varname) )
702     stat = \hyperlink{namespacedc__error_a64841a3c9e3ef7d5ddb175e5770f7dfe}{dc\_noerr}
703     cause\_c = \textcolor{stringliteral}{""}
704 
705     \textcolor{comment}{! varname から変数情報の探査}
706     \textcolor{comment}{! Search information of a variable from "varname"}
707     \textcolor{comment}{!}
708     vnum = 0
709     \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, numvars
710       \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyvarinfoinquire}{historyvarinfoinquire}( &
711         & varinfo = gthst\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), &  \textcolor{comment}{! (in)}
712         & name = name )               \textcolor{comment}{! (out)}
713       \textcolor{keywordflow}{if} ( trim(varname) == trim(name) ) vnum = \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}
714 \textcolor{keywordflow}{    end do}
715 
716     \textcolor{keywordflow}{if} ( vnum == 0 ) \textcolor{keywordflow}{then}
717       stat = \hyperlink{namespacedc__error_a30736dc67a0d547ad912a1373fcedcbb}{hst\_ebadvarname}
718       cause\_c = varname
719       \textcolor{keywordflow}{goto} 999
720 \textcolor{keywordflow}{    end if}
721 
722     \textcolor{comment}{! 出力が有効かどうかを確認する}
723     \textcolor{comment}{! Confirm whether the output is effective}
724     \textcolor{comment}{!}
725     \textcolor{keywordflow}{if} ( .not. \hyperlink{interfacegtool__history__nmlinfo__generic_1_1hstnmlinfooutputvalid}{hstnmlinfooutputvalid}( gthstnml, varname ) ) \textcolor{keywordflow}{then}
726       \textcolor{keywordflow}{goto} 999
727 \textcolor{keywordflow}{    end if}
728 
729     \textcolor{comment}{! 出力間隔の単位に応じて時間座標情報の作り直し}
730     \textcolor{comment}{! Remake time axis information correspond to units of output interval}
731     \textcolor{comment}{!}
732     \textcolor{keyword}{call }\hyperlink{interfacegtool__history__nmlinfo__generic_1_1hstnmlinfoinquire}{hstnmlinfoinquire}( &
733       & gthstnml = gthstnml, &                 \textcolor{comment}{! (in)}
734       & name = varname, &                      \textcolor{comment}{! (in)}
735       & file = file, &                         \textcolor{comment}{! (out)}
736       & interval\_unit  = interval\_unit )       \textcolor{comment}{! (out)}
737 
738     \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyaxiscopy}{historyaxiscopy}( &
739       & gthst\_axes\_time, &     \textcolor{comment}{! (out)}
740       & \hyperlink{namespacegtool__historyauto__internal_ada7a49a17970ad9d96e320bb53420325}{gthst\_axes}(\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}), & \textcolor{comment}{! (in)}
741       & \hyperlink{structdc__units_1_1units}{units} = trim(interval\_unit) // \textcolor{stringliteral}{' '} // &
742       &         trim(time\_unit\_suffix) ) \textcolor{comment}{! (in)}
743 
744     \textcolor{comment}{! 空間方向のスライスに対応して, 座標および座標重み情報の作り直し}
745     \textcolor{comment}{! Remake axes and weights information correspond to spatial slices}
746     \textcolor{comment}{!}
747     \textcolor{keyword}{call }\hyperlink{interfacegtool__history__nmlinfo__generic_1_1hstnmlinfoinquire}{hstnmlinfoinquire}( &
748       & gthstnml = gthstnml, &         \textcolor{comment}{! (in)}
749       & name = varname, &              \textcolor{comment}{! (in)}
750       & slice\_start = slice\_start, &   \textcolor{comment}{! (out)}
751       & slice\_end = slice\_end, &       \textcolor{comment}{! (out)}
752       & slice\_stride = slice\_stride )  \textcolor{comment}{! (out)}
753 
754     \textcolor{comment}{! ファイルが未作成の場合は, まずファイル作成}
755     \textcolor{comment}{! At first, the file is created if the file is not created yet}
756     \textcolor{comment}{!}
757     \textcolor{keywordflow}{if} ( .not. \hyperlink{interfacegtool__history__generic_1_1historyinitialized}{historyinitialized}( gthist ) ) \textcolor{keywordflow}{then}
758 
759       \textcolor{keywordflow}{if} (       all( slice\_start  == (/ ( 1, \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, \hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims} -1 ) /) ) &
760         &  .and. all( slice\_end    <  (/ ( 1, \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, \hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims} -1 ) /) ) &
761         &  .and. all( slice\_stride == (/ ( 1, \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, \hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims} -1 ) /) )  ) \textcolor{keywordflow}{then}
762 
763         \textcolor{keyword}{allocate}( gthst\_axes\_slices(1:\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}) )
764         gthst\_axes\_slices(1:\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}-1)     = \hyperlink{namespacegtool__historyauto__internal_ada7a49a17970ad9d96e320bb53420325}{gthst\_axes}(1:
      \hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}-1)
765         gthst\_axes\_slices(\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}:\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}) = gthst\_axes\_time
766 
767         data\_axes\_slices               => data\_axes
768         data\_weights\_slices            => data\_weights
769         slice\_valid = .false.
770 
771       \textcolor{keywordflow}{else}
772         \textcolor{keyword}{allocate}( gthst\_axes\_slices(1:\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}) )
773         \textcolor{keyword}{allocate}( data\_axes\_slices(1:\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}) )
774         \textcolor{keyword}{allocate}( data\_weights\_slices(1:\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}) )
775 
776         \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, \hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}-1
777 
778           \textcolor{comment}{! スライス値の有効性をチェック}
779           \textcolor{comment}{! Check validity of slices}
780           \textcolor{comment}{!}
781           \textcolor{keywordflow}{if} ( slice\_start(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) < 1 ) \textcolor{keywordflow}{then}
782             stat = \hyperlink{namespacedc__error_a25c91a40541a0445ed9ddb56dbbee386}{hst\_ebadslice}
783             cause\_c = \hyperlink{interfacedc__string_1_1cprintf}{cprintf}(\textcolor{stringliteral}{'slice\_start=%d'}, &
784               &         \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = (/ slice\_start(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) /) )
785             \textcolor{keywordflow}{goto} 999
786 \textcolor{keywordflow}{          end if}
787 
788           \textcolor{keywordflow}{if} ( slice\_stride(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) < 1 ) \textcolor{keywordflow}{then}
789             stat = \hyperlink{namespacedc__error_a25c91a40541a0445ed9ddb56dbbee386}{hst\_ebadslice}
790             cause\_c = \hyperlink{interfacedc__string_1_1cprintf}{cprintf}(\textcolor{stringliteral}{'slice\_stride=%d'}, &
791               &         \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = (/ slice\_stride(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) /) )
792             \textcolor{keywordflow}{goto} 999
793 \textcolor{keywordflow}{          end if}
794 
795           \textcolor{comment}{! 再生成の必要性をチェック}
796           \textcolor{comment}{! Check necessity of remaking}
797           \textcolor{comment}{!}
798           \textcolor{keywordflow}{if} (       ( slice\_start(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})  == 1 ) &
799             &  .and. ( slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})    <  1 ) &
800             &  .and. ( slice\_stride(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) == 1 )  ) \textcolor{keywordflow}{then}
801 
802             \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyaxiscopy}{historyaxiscopy}( &
803               & axis\_dest = gthst\_axes\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) , &  \textcolor{comment}{! (out)}
804               & axis\_src  = \hyperlink{namespacegtool__historyauto__internal_ada7a49a17970ad9d96e320bb53420325}{gthst\_axes}(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) )           \textcolor{comment}{! (in)}
805 
806             data\_axes\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) = data\_axes(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
807 
808             cycle
809 \textcolor{keywordflow}{          end if}
810 
811           \textcolor{comment}{! 座標情報の再生成}
812           \textcolor{comment}{! Remake information of axis}
813           \textcolor{comment}{!}
814           \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyaxisinquire}{historyaxisinquire}( &
815             & axis = \hyperlink{namespacegtool__historyauto__internal_ada7a49a17970ad9d96e320bb53420325}{gthst\_axes}(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), &  \textcolor{comment}{! (in)}
816             & name = name, &           \textcolor{comment}{! (out)}
817             & \textcolor{keyword}{size} = dim\_size, &       \textcolor{comment}{! (out)}
818             & longname = longname, &   \textcolor{comment}{! (out)}
819             & \hyperlink{structdc__units_1_1units}{units} = \hyperlink{structdc__units_1_1units}{units}, &         \textcolor{comment}{! (out)}
820             & xtype = xtype )          \textcolor{comment}{! (out)}
821 
822           \textcolor{comment}{! 終点のスライス値の補正 ; Correct end points of slices}
823           \textcolor{keywordflow}{if} ( slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) < 1 ) slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) = dim\_size
824           \textcolor{keywordflow}{if} ( slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) > dim\_size ) \textcolor{keywordflow}{then}
825             \textcolor{keyword}{call }\hyperlink{interfacedc__message_1_1messagenotify}{messagenotify}( \textcolor{stringliteral}{'W'}, subname, &
826               & \textcolor{stringliteral}{'slice options to (%c) are undesirable '} // &
827               & \textcolor{stringliteral}{'(@slice\_end=%d). @slice\_end is corrected forcibly to (%d) '}, &
828               & c1 = trim(name), &
829               & \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = (/ slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), dim\_size /) )
830 
831             slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) = dim\_size
832 \textcolor{keywordflow}{          end if}
833 
834           \textcolor{comment}{! スライス値の有効性をチェック ; Check validity of slices}
835           \textcolor{keywordflow}{if} ( slice\_start(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) > slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) ) \textcolor{keywordflow}{then}
836             stat = \hyperlink{namespacedc__error_a25c91a40541a0445ed9ddb56dbbee386}{hst\_ebadslice}
837             cause\_c = \hyperlink{interfacedc__string_1_1cprintf}{cprintf}(\textcolor{stringliteral}{'slice\_start=%d, slice\_end=%d'}, &
838               &         \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = (/ slice\_start(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) /) )
839             \textcolor{keywordflow}{goto} 999
840 \textcolor{keywordflow}{          end if}
841 
842           numdims\_slice = \hyperlink{interfacedc__scaledsec_1_1int}{int}( ( slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) - slice\_start(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) + 1 ) / slice\_stride(
      \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) )
843 
844           \textcolor{comment}{! スライス値の有効性をチェック ; Check validity of slices}
845           \textcolor{keywordflow}{if} ( numdims\_slice < 1 ) \textcolor{keywordflow}{then}
846             \textcolor{keyword}{call }\hyperlink{interfacedc__message_1_1messagenotify}{messagenotify}( \textcolor{stringliteral}{'W'}, subname, &
847               & \textcolor{stringliteral}{'slice options to (%c) are invalid. '} // &
848               & \textcolor{stringliteral}{'(@slice\_start=%d @slice\_end=%d @slice\_stride=%d)'}, &
849               & c1 = trim(name), &
850               & \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = (/ slice\_start(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), slice\_stride(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) /) )
851             stat = \hyperlink{namespacedc__error_a25c91a40541a0445ed9ddb56dbbee386}{hst\_ebadslice}
852             cause\_c = \hyperlink{interfacedc__string_1_1cprintf}{cprintf}(\textcolor{stringliteral}{'slice\_start=%d, slice\_end=%d, slice\_stride=%d'}, &
853               &         \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = (/ slice\_start(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), slice\_stride(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) /) )
854             \textcolor{keywordflow}{goto} 999
855 \textcolor{keywordflow}{          end if}
856 
857           \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyaxiscreate}{historyaxiscreate}( &
858             & axis = gthst\_axes\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), &  \textcolor{comment}{! (out)}
859             & name = name, &                  \textcolor{comment}{! (in)}
860             & \textcolor{keyword}{size} = numdims\_slice, &         \textcolor{comment}{! (in)}
861             & longname = longname, &          \textcolor{comment}{! (in)}
862             & \hyperlink{structdc__units_1_1units}{units} = \hyperlink{structdc__units_1_1units}{units}, &                \textcolor{comment}{! (in)}
863             & xtype = xtype )                 \textcolor{comment}{! (in)}
864 
865 
866           \textcolor{comment}{! 座標データの再生成}
867           \textcolor{comment}{! Regenerate data of axis}
868           \textcolor{comment}{!}
869           \textcolor{keyword}{allocate}( data\_axes\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis( numdims\_slice ) )
870           cnt = 1
871           \textcolor{keywordflow}{do} j = slice\_start(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), slice\_stride(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
872             data\_axes\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis( cnt ) = data\_axes(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis( j )
873             cnt = cnt + 1
874 \textcolor{keywordflow}{          end do}
875 
876           \textcolor{comment}{! 座標重みデータの再生成}
877           \textcolor{comment}{! Remake information of axis data}
878           \textcolor{comment}{!}
879           \textcolor{keywordflow}{do} j = 1, numwgts
880             \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyvarinfoinquire}{historyvarinfoinquire}( &
881               & varinfo = gthst\_weights(j), & \textcolor{comment}{! (in)}
882               & name = wgt\_name )             \textcolor{comment}{! (out) optional}
883 
884             \textcolor{keywordflow}{if} ( trim(name) // wgtsuf == trim(wgt\_name) ) \textcolor{keywordflow}{then}
885 
886               \textcolor{comment}{! 座標重みの計算は結構いい加減...}
887               \textcolor{comment}{! Calculation about axis weight is irresponsible...}
888               \textcolor{comment}{!}
889               wgt\_sum = sum( data\_weights(j) % a\_axis )
890 
891               \textcolor{keyword}{allocate}( data\_weights\_slices(j) % a\_axis( numdims\_slice ) )
892               cnt = 1
893               \textcolor{keywordflow}{do} k = slice\_start(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), slice\_end(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), slice\_stride(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
894                 data\_weights\_slices(j) % a\_axis( cnt ) = data\_weights(j) % a\_axis( k )
895                 cnt = cnt + 1
896 \textcolor{keywordflow}{              end do}
897 
898               wgt\_sum\_s = sum( data\_weights\_slices(j) % a\_axis )
899               data\_weights\_slices(j) % a\_axis = data\_weights\_slices(j) % a\_axis * ( wgt\_sum / wgt\_sum\_s )
900 
901 \textcolor{keywordflow}{            end if}
902 
903 \textcolor{keywordflow}{          end do}
904 
905 \textcolor{keywordflow}{        end do}
906 
907         \textcolor{comment}{! 空間切り出しされていない座標に関する座標重みデータを作成}
908         \textcolor{comment}{! Make data of axis weight not sliced}
909         \textcolor{comment}{!}
910         \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, numwgts
911           \textcolor{keywordflow}{if} ( .not. \textcolor{keyword}{associated}( data\_weights\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis ) ) \textcolor{keywordflow}{then}
912             \textcolor{keyword}{allocate}( data\_weights\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis( \textcolor{keyword}{size}(data\_weights(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis ) ) )
913             data\_weights\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis = data\_weights(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis
914 \textcolor{keywordflow}{          end if}
915 \textcolor{keywordflow}{        end do}
916 
917         \textcolor{comment}{! 時刻次元のコピー}
918         \textcolor{comment}{! Copy time dimension}
919         \textcolor{comment}{!}
920         gthst\_axes\_slices(\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}) = gthst\_axes\_time
921 
922         slice\_valid = .true.
923 \textcolor{keywordflow}{      end if}
924 
925       \textcolor{comment}{! HistoryCreate のための設定値の取得}
926       \textcolor{comment}{! Get the settings for "HistoryCreate"}
927       \textcolor{comment}{!}
928       \textcolor{keyword}{call }\hyperlink{interfacegtool__history__nmlinfo__generic_1_1hstnmlinfoinquire}{hstnmlinfoinquire}( &
929         & gthstnml = gthstnml, &                 \textcolor{comment}{! (in)}
930         & name = varname, &                      \textcolor{comment}{! (in)}
931         & file = file, &                         \textcolor{comment}{! (out)}
932         & origin\_value   = origin\_value, &       \textcolor{comment}{! (out)}
933         & origin\_unit    = origin\_unit, &        \textcolor{comment}{! (out)}
934         & interval\_unit  = interval\_unit, &      \textcolor{comment}{! (out)}
935         & newfile\_intvalue = newfile\_intvalue, & \textcolor{comment}{! (out)}
936         & newfile\_intunit = newfile\_intunit )    \textcolor{comment}{! (out)}
937 
938       \textcolor{comment}{! データ出力時刻の設定}
939       \textcolor{comment}{! Configure data output time}
940       \textcolor{comment}{!}
941       origin\_sec = &
942         & \hyperlink{interfacedc__calendar__generic_1_1dccalconvertbyunit}{dccalconvertbyunit}( &
943         &   \textcolor{keywordtype}{real( origin\_value, DP )}, origin\_unit, \textcolor{stringliteral}{'sec'}, cal\_save )
944 
945 \textcolor{comment}{!!$      ! dc\_date モジュール使用時}
946 \textcolor{comment}{!!$      !}
947 \textcolor{comment}{!!$      call DCDiffTimeCreate( &}
948 \textcolor{comment}{!!$        & origin\_sec, &           ! (out)}
949 \textcolor{comment}{!!$        & origin\_value, origin\_unit )  ! (in)}
950 
951       \textcolor{keywordflow}{if} ( newfile\_intvalue < 1 ) \textcolor{keywordflow}{then}
952 
953         origin\_value = \hyperlink{interfacedc__calendar__generic_1_1dccalconvertbyunit}{dccalconvertbyunit}( &
954           & origin\_sec, \textcolor{stringliteral}{'sec'}, interval\_unit, cal\_save )
955 
956 \textcolor{comment}{!        origin\_value = EvalbyUnit( origin\_sec, interval\_unit )}
957       \textcolor{keywordflow}{else}
958 
959         origin\_value = &
960           & \hyperlink{interfacedc__calendar__generic_1_1dccalconvertbyunit}{dccalconvertbyunit}( time, \textcolor{stringliteral}{'sec'}, interval\_unit, cal\_save )
961 
962 \textcolor{comment}{!        origin\_value = EvalbyUnit( time, interval\_unit )}
963 \textcolor{keywordflow}{      end if}
964 
965       \textcolor{comment}{! ファイル名の設定}
966       \textcolor{comment}{! Configure file name}
967       \textcolor{comment}{!}
968       \textcolor{keywordflow}{if} ( len\_trim( file ) - index(file, \textcolor{stringliteral}{'.nc'}, .true.) == 2 ) \textcolor{keywordflow}{then}
969         file\_base = file(1:len\_trim( file ) - 3)
970         file\_suffix = \textcolor{stringliteral}{'.nc'}
971       \textcolor{keywordflow}{else}
972         file\_base = file
973         file\_suffix = \textcolor{stringliteral}{''}
974 \textcolor{keywordflow}{      end if}
975       \textcolor{keywordflow}{if} ( trim(rank\_save) == \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
976         file\_rank = \textcolor{stringliteral}{''}
977       \textcolor{keywordflow}{else}
978         file\_rank = \textcolor{stringliteral}{'\_rank'} // trim( adjustl(rank\_save) )
979 \textcolor{keywordflow}{      end if}
980       \textcolor{keywordflow}{if} ( newfile\_intvalue > 0 ) \textcolor{keywordflow}{then}
981         newfile\_intvalued = &
982           & \hyperlink{interfacedc__calendar__generic_1_1dccalconvertbyunit}{dccalconvertbyunit}( time, \textcolor{stringliteral}{'sec'}, newfile\_intunit, cal\_save )
983 
984         file\_newfile\_time = &
985           & \hyperlink{interfacedc__string_1_1cprintf}{cprintf}( \textcolor{stringliteral}{'\_time%08d'}, \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = (/ \hyperlink{interfacedc__scaledsec_1_1int}{int}( newfile\_intvalued ) /) )
986 \textcolor{comment}{!          &   i = (/ int( EvalbyUnit( time, newfile\_intunit ) ) /) )}
987       \textcolor{keywordflow}{else}
988         file\_newfile\_time = \textcolor{stringliteral}{''}
989 \textcolor{keywordflow}{      end if}
990 
991       file = trim(file\_base) // trim(file\_rank) // trim(file\_newfile\_time) // trim(file\_suffix)
992 
993       \textcolor{comment}{! HistoryCreate によるファイル作成}
994       \textcolor{comment}{! Files are created by "HistoryCreate"}
995       \textcolor{comment}{!}
996       \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historycreate}{historycreate}( &
997         & history = gthist, &                                     \textcolor{comment}{! (inout)}
998         & file = file, title = title\_save, &                      \textcolor{comment}{! (in)}
999         & source = source\_save, institution = institution\_save, & \textcolor{comment}{! (in)}
1000         & axes = gthst\_axes\_slices(1:\hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}), &                  \textcolor{comment}{! (in)}
1001         & origind = origin\_value, &                               \textcolor{comment}{! (in)}
1002         & conventions = conventions\_save, &                       \textcolor{comment}{! (in)}
1003         & gt\_version = gt\_version\_save, &                         \textcolor{comment}{! (in)}
1004         & flag\_mpi\_split = save\_mpi\_split, &                      \textcolor{comment}{! (in)}
1005         & flag\_mpi\_gather = save\_mpi\_gather )                     \textcolor{comment}{! (in)}
1006 
1007       \textcolor{comment}{! 座標データを出力}
1008       \textcolor{comment}{! Output axes data}
1009       \textcolor{comment}{!}
1010       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, \hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims} - 1
1011         \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyaxisinquire}{historyaxisinquire}( &
1012           & axis = gthst\_axes\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), &  \textcolor{comment}{! (in)}
1013           & name = name )                   \textcolor{comment}{! (out)}
1014         \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyput}{historyput}( &
1015           & history = gthist, &                    \textcolor{comment}{! (inout) optional}
1016           & varname = name, &                      \textcolor{comment}{! (in)}
1017           & array = data\_axes\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis ) \textcolor{comment}{! (in)}
1018 \textcolor{keywordflow}{      end do}
1019 
1020       \textcolor{comment}{! MPI 用に領域全体の座標データを出力}
1021       \textcolor{comment}{! Output axes data in whole area for MPI}
1022       \textcolor{comment}{!}
1023       \textcolor{keywordflow}{if} ( save\_mpi\_gather ) \textcolor{keywordflow}{then}
1024         \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, \hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims} - 1
1025           \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyaxisinquire}{historyaxisinquire}( &
1026             & axis = gthst\_axes\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), &  \textcolor{comment}{! (in)}
1027             & name = name )                   \textcolor{comment}{! (out)}
1028 
1029           \textcolor{keywordflow}{if} ( .not. \textcolor{keyword}{associated}( \hyperlink{namespacegtool__historyauto__internal_a58a6a57fae2aee8bfe4ffeb74ccd51cf}{data\_axes\_whole}(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis ) ) \textcolor{keywordflow}{then}
1030             \textcolor{keyword}{call }\hyperlink{interfacedc__message_1_1messagenotify}{messagenotify}(\textcolor{stringliteral}{'W'}, subname, &
1031               & \textcolor{stringliteral}{'data of axis (%c) in whole area is lack. '} // &
1032               & \textcolor{stringliteral}{'Specify the data by "HistoryAutoPutAxisMPI" explicitly.'}, &
1033               & c1 = trim(name) )
1034             stat = \hyperlink{namespacedc__error_ac9383c449e0a61a04a809199b7fe284b}{hst\_empinoaxisdata}
1035             cause\_c = name
1036 \textcolor{keywordflow}{          end if}
1037 
1038           \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyputaxismpi}{historyputaxismpi}( &
1039             & history = gthist, &                   \textcolor{comment}{! (inout) optional}
1040             & varname = name, &                     \textcolor{comment}{! (in)}
1041             & array = \hyperlink{namespacegtool__historyauto__internal_a58a6a57fae2aee8bfe4ffeb74ccd51cf}{data\_axes\_whole}(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis ) \textcolor{comment}{! (in)}
1042 \textcolor{keywordflow}{        end do}
1043 \textcolor{keywordflow}{      end if}
1044 
1045       \textcolor{comment}{! 割付解除}
1046       \textcolor{comment}{! Deallocation}
1047       \textcolor{comment}{!}
1048       \textcolor{keywordflow}{if} ( slice\_valid ) \textcolor{keywordflow}{then}
1049         \textcolor{keyword}{deallocate}( gthst\_axes\_slices )
1050         \textcolor{keyword}{deallocate}( data\_axes\_slices )
1051       \textcolor{keywordflow}{else}
1052         \textcolor{keyword}{deallocate}( gthst\_axes\_slices )
1053         \textcolor{keyword}{nullify}( data\_axes\_slices )
1054 \textcolor{keywordflow}{      end if}
1055 
1056       \textcolor{comment}{! 座標重みデータを追加}
1057       \textcolor{comment}{! Add axes weights data}
1058       \textcolor{comment}{!}
1059       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, numwgts
1060         \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyaddvariable}{historyaddvariable}( &
1061           & history = gthist, &           \textcolor{comment}{! (inout)}
1062           & varinfo = gthst\_weights(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) )  \textcolor{comment}{! (in)}
1063         \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyvarinfoinquire}{historyvarinfoinquire}( &
1064           & varinfo = gthst\_weights(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}), &  \textcolor{comment}{! (in)}
1065           & name = name )                  \textcolor{comment}{! (out)}
1066         \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyput}{historyput}( &
1067           & history = gthist, &                       \textcolor{comment}{! (inout) optional}
1068           & varname = name, &                         \textcolor{comment}{! (in)}
1069           & array = data\_weights\_slices(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) % a\_axis ) \textcolor{comment}{! (in)}
1070 \textcolor{keywordflow}{      end do}
1071 
1072       \textcolor{keywordflow}{if} ( slice\_valid ) \textcolor{keywordflow}{then}
1073         \textcolor{keyword}{deallocate}( data\_weights\_slices )
1074       \textcolor{keywordflow}{else}
1075         \textcolor{keyword}{nullify}( data\_weights\_slices )
1076 \textcolor{keywordflow}{      end if}
1077 
1078     \textcolor{comment}{! ファイル作成おしまい; Creation of file is finished}
1079 \textcolor{keywordflow}{    end if}
1080 
1081 
1082     \textcolor{comment}{! 変数情報を追加}
1083     \textcolor{comment}{! Add information of variables}
1084     \textcolor{comment}{!}
1085     \textcolor{keyword}{call }\hyperlink{interfacegtool__history__generic_1_1historyaddvariable}{historyaddvariable}( &
1086       & varinfo = gthst\_vars(vnum), &  \textcolor{comment}{! (in)}
1087       & history = gthist )             \textcolor{comment}{! (inout) optional}
1088 
1089 999 \textcolor{keywordflow}{continue}
1090     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(stat, subname, cause\_c = cause\_c)
1091     \textcolor{keyword}{call }\hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}(subname)
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespacegtool__historyauto__internal_a11f37618c3ad49fe895dccfc7ed2a342_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_afdf7de560a1c78afe25a12f99a0551fd}\label{namespacegtool__historyauto__internal_afdf7de560a1c78afe25a12f99a0551fd}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!hstvarsoutputcheck@{hstvarsoutputcheck}}
\index{hstvarsoutputcheck@{hstvarsoutputcheck}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{hstvarsoutputcheck()}{hstvarsoutputcheck()}}
{\footnotesize\ttfamily subroutine, public \hyperlink{interfacegtool__historyauto__internal_1_1hstvarsoutputcheck}{gtool\+\_\+historyauto\+\_\+internal\+::hstvarsoutputcheck} (\begin{DoxyParamCaption}\item[{real(dp), intent(in)}]{time,  }\item[{integer, intent(out)}]{stime\+\_\+index }\end{DoxyParamCaption})}



Definition at line 424 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



References dc\+\_\+trace\+::beginsub(), checked\+\_\+tstep\+\_\+varnum, checked\+\_\+tstepnum, close\+\_\+timing\+\_\+vars, create\+\_\+timing\+\_\+vars, dc\+\_\+trace\+::dbgmessage(), dc\+\_\+error\+::dc\+\_\+noerr, dcdifftimeputline(), dc\+\_\+trace\+::endsub(), histaddvar\+\_\+vars, historyclose(), interval\+\_\+time\+\_\+vars, newfile\+\_\+createtime\+\_\+vars, newfile\+\_\+inttime\+\_\+vars, numvars, origin\+\_\+time\+\_\+vars, output\+\_\+timing\+\_\+avr\+\_\+vars, output\+\_\+timing\+\_\+vars, output\+\_\+valid\+\_\+vars, prev\+\_\+outtime\+\_\+vars, renew\+\_\+timing\+\_\+vars, save\+\_\+tstepnum, saved\+\_\+time, saved\+\_\+tstep, dc\+\_\+error\+::storeerror(), tavr\+\_\+vars, terminus\+\_\+time\+\_\+vars, and zero\+\_\+time.


\begin{DoxyCode}
424     \textcolor{comment}{!}
425     \textcolor{comment}{! 与えられた時刻 *time* が各変数にとって出力のタイミングかどうかを}
426     \textcolor{comment}{! 調査して output\_timing\_vars, output\_timing\_avr\_vars,}
427     \textcolor{comment}{! create\_timing\_vars, close\_timing\_vars, renew\_timing\_vars,}
428     \textcolor{comment}{! へ反映し, *time* に対応する}
429     \textcolor{comment}{! saved\_time の配列添字を stime\_index へ返します.}
430     \textcolor{comment}{!}
431     \textcolor{comment}{! また, ファイルのオープンクローズのタイミングであれば,}
432     \textcolor{comment}{! それらもこのサブルーチン内で行います.}
433     \textcolor{comment}{!}
434     \textcolor{comment}{! It is investigated whether "time" is output timing for}
435     \textcolor{comment}{! each variable, and the information is reflected to}
436     \textcolor{comment}{! "output\_timing\_vars", "output\_timing\_avr\_vars",}
437     \textcolor{comment}{! "create\_timing\_vars", "close\_timing\_vars", "renew\_timing\_vars".}
438     \textcolor{comment}{! And index of array "saved\_time" is returned to "stime\_index".}
439     \textcolor{comment}{!}
440     \textcolor{comment}{! And if current time is timing of open/close of files,}
441     \textcolor{comment}{! they are done in this subroutine.}
442     \textcolor{comment}{!}
443     \textcolor{keywordtype}{use }\hyperlink{namespacedc__trace}{dc\_trace}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}, \hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}, \hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}
444     \textcolor{keywordtype}{use }\hyperlink{namespacedc__error}{dc\_error}\textcolor{keywordtype}{, only}: \hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}, \hyperlink{namespacedc__error_a64841a3c9e3ef7d5ddb175e5770f7dfe}{dc\_noerr}
445     \textcolor{keywordtype}{use }\hyperlink{namespacegtool__history}{gtool\_history}\textcolor{keywordtype}{, only}: \hyperlink{interfacegtool__history__generic_1_1historyinitialized}{historyinitialized}, 
      \hyperlink{historyclose_8f90_a05bd27232ee951cef8bb19bd8a6f1a05}{historyclose}
446     \textcolor{keywordtype}{use }\hyperlink{namespacedc__date__types}{dc\_date\_types}\textcolor{keywordtype}{, only}: \hyperlink{structdc__date__types_1_1dc__difftime}{dc\_difftime}
447     \textcolor{keywordtype}{use }\hyperlink{namespacedc__date}{dc\_date}\textcolor{keywordtype}{, only}: \textcolor{keyword}{operator}(==), \textcolor{keyword}{operator}(>), \textcolor{keyword}{operator}(<), &
448       & \textcolor{keyword}{operator}(>=), \textcolor{keyword}{operator}(<=), \textcolor{keyword}{operator}(-), \hyperlink{interfacedc__date__generic_1_1dcdifftimeputline}{dcdifftimeputline}, &
449       & \hyperlink{interfacedc__date__generic_1_1evalsec}{evalsec}
450     \textcolor{keywordtype}{implicit none}
451     \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{intent(in)}:: time
452                               \textcolor{comment}{! 現在時刻. Current time}
453     \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{intent(out)}:: stime\_index
454 
455     \textcolor{keywordtype}{integer}:: tstep
456     \textcolor{keywordtype}{integer}:: stat, \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}, startnum, endnum
457     \textcolor{keywordtype}{character(STRING)}:: cause\_c
458     \textcolor{keywordtype}{character(*)}, \textcolor{keywordtype}{parameter}:: subname = \textcolor{stringliteral}{"HstVarsOutputCheck"}
459   \textcolor{keywordflow}{continue}
460     \textcolor{keyword}{call }\hyperlink{namespacedc__trace_aca1efe8bae50b85f74980a8c4d704dd8}{beginsub}(subname)
461     stat = \hyperlink{namespacedc__error_a64841a3c9e3ef7d5ddb175e5770f7dfe}{dc\_noerr}
462     cause\_c = \textcolor{stringliteral}{""}
463 
464     \textcolor{comment}{! 与えられた時刻がチェック済みかどうかを調べる}
465     \textcolor{comment}{! Examine whether given time is already checked or not}
466     \textcolor{comment}{!}
467     timestepsearch: \textcolor{keywordflow}{do}
468       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = saved\_tstep, checked\_tstepnum
469         \textcolor{keywordflow}{if} ( saved\_time(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) == time ) \textcolor{keywordflow}{then}
470           tstep = \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}
471           \textcolor{keywordflow}{exit} timestepsearch
472 \textcolor{keywordflow}{        end if}
473 \textcolor{keywordflow}{      end do}
474       \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = 1, saved\_tstep - 1
475         \textcolor{keywordflow}{if} ( saved\_time(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) == time ) \textcolor{keywordflow}{then}
476           tstep = \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}
477           \textcolor{keywordflow}{exit} timestepsearch
478 \textcolor{keywordflow}{        end if}
479 \textcolor{keywordflow}{      end do}
480 
481       tstep = 0
482       \textcolor{keywordflow}{exit} timestepsearch
483 \textcolor{keywordflow}{    end do} timestepsearch
484 
485     saved\_tstep = tstep
486 
487     \textcolor{keywordflow}{if} ( saved\_tstep /= 0 .and. checked\_tstep\_varnum == numvars ) \textcolor{keywordflow}{then}
488       \textcolor{comment}{! * output\_timing\_vars(:,saved\_tstep) を使う.}
489       \textcolor{comment}{! * saved\_tstep を stime\_index として返す.}
490 
491       stime\_index = saved\_tstep
492       \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}( \textcolor{stringliteral}{'saved\_tstep=<%d> is already checked.'}, &
493         & \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} =(/ saved\_tstep /) )
494       \textcolor{keywordflow}{goto} 999
495 \textcolor{keywordflow}{    end if}
496 
497     \textcolor{comment}{! チェックする時間ステップと, 変数 ID の設定}
498     \textcolor{comment}{! Configure checked time step, and variable ID}
499     \textcolor{comment}{!}
500     \textcolor{keywordflow}{if} ( saved\_tstep /= 0 ) \textcolor{keywordflow}{then}
501       startnum = checked\_tstep\_varnum + 1
502 \textcolor{keyword}{      end}num   = numvars
503 
504       stime\_index = saved\_tstep
505     \textcolor{keywordflow}{else}
506       startnum = 1
507 \textcolor{keyword}{      end}num   = numvars
508 
509       \textcolor{keywordflow}{if} ( save\_tstepnum < 2 ) \textcolor{keywordflow}{then}
510         checked\_tstepnum = 1
511         saved\_time(checked\_tstepnum) = time
512 
513         saved\_tstep = checked\_tstepnum
514         stime\_index = saved\_tstep
515 
516       \textcolor{keywordflow}{elseif} ( .not. checked\_tstepnum < save\_tstepnum ) \textcolor{keywordflow}{then}
517         create\_timing\_vars(:,1:checked\_tstepnum-1) = create\_timing\_vars(:,2:checked\_tstepnum)
518         close\_timing\_vars(:,1:checked\_tstepnum-1) = close\_timing\_vars(:,2:checked\_tstepnum)
519         renew\_timing\_vars(:,1:checked\_tstepnum-1) = renew\_timing\_vars(:,2:checked\_tstepnum)
520         output\_timing\_vars(:,1:checked\_tstepnum-1) = output\_timing\_vars(:,2:checked\_tstepnum)
521         output\_timing\_avr\_vars(:,1:checked\_tstepnum-1) = output\_timing\_avr\_vars(:,2:checked\_tstepnum)
522 
523         saved\_time(1:checked\_tstepnum-1) = saved\_time(2:checked\_tstepnum)
524         saved\_time(checked\_tstepnum) = time
525 
526         saved\_tstep = checked\_tstepnum
527         stime\_index = saved\_tstep
528 
529       \textcolor{keywordflow}{else}
530         checked\_tstepnum = checked\_tstepnum + 1
531         saved\_time(checked\_tstepnum) = time
532 
533         saved\_tstep = checked\_tstepnum
534         stime\_index = saved\_tstep
535 \textcolor{keywordflow}{      end if}
536 \textcolor{keywordflow}{    end if}
537 
538     \textcolor{keyword}{call }\hyperlink{namespacedc__trace_a2a38fceb4cf9baf298d63456238c3fea}{dbgmessage}( \textcolor{stringliteral}{'numvar=<%d:%d> in saved\_tstep=<%d> will be checked from now.'}, &
539       & \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} =(/ startnum, endnum, saved\_tstep /) )
540 
541 
542     \textcolor{comment}{! それぞれのタイミングをチェックして各変数に格納}
543     \textcolor{comment}{!}
544     \textcolor{comment}{! * ファイルオープン:      create\_timing\_vars}
545     \textcolor{comment}{! * ファイルクローズ:      close\_timing\_vars}
546     \textcolor{comment}{! * ファイルクローズ/作成: renew\_timing\_vars}
547     \textcolor{comment}{! * データ出力:            output\_timing\_vars}
548     \textcolor{comment}{! * データ平均化:          output\_avr\_timing\_vars}
549 
550     create\_timing\_vars(startnum:endnum, checked\_tstepnum:checked\_tstepnum) = .false.
551     close\_timing\_vars(startnum:endnum, checked\_tstepnum:checked\_tstepnum) = .false.
552     renew\_timing\_vars(startnum:endnum, checked\_tstepnum:checked\_tstepnum) = .false.
553     output\_timing\_vars(startnum:endnum, checked\_tstepnum:checked\_tstepnum) = .false.
554     output\_timing\_avr\_vars(startnum:endnum, checked\_tstepnum:checked\_tstepnum) = .false.
555 
556     \textcolor{keywordflow}{do} \hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i} = startnum, endnum
557 
558       \textcolor{keywordflow}{if} ( .not. output\_valid\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) ) cycle
559 
560       \textcolor{keywordflow}{if} ( origin\_time\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) > time ) cycle
561 
562       \textcolor{keywordflow}{if} (             origin\_time\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) <= time &
563         &  .and.       (      terminus\_time\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) < zero\_time &
564         &                .or. terminus\_time\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) >= time      ) &
565         &  .and. .not. histaddvar\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})            ) \textcolor{keywordflow}{then}
566 
567         create\_timing\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = .true.
568 
569         \textcolor{keywordflow}{if} ( newfile\_inttime\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) > zero\_time ) \textcolor{keywordflow}{then}
570           newfile\_createtime\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) = time
571 \textcolor{keywordflow}{        end if}
572 
573         output\_timing\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = .true.
574         output\_timing\_avr\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = tavr\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
575         cycle
576 \textcolor{keywordflow}{      end if}
577 
578       \textcolor{keywordflow}{if} ( terminus\_time\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) > zero\_time .and. terminus\_time\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) < time ) \textcolor{keywordflow}{then}
579         close\_timing\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = .true.
580         output\_timing\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = .false.
581         output\_timing\_avr\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = .false.
582         cycle
583 \textcolor{keywordflow}{      end if}
584 
585       \textcolor{comment}{! * newfile\_inttime\_vars だけでは, ぴったり一致しないとうまく行かない.}
586       \textcolor{comment}{!   * そこで...}
587       \textcolor{comment}{!     * 前回に出力した時刻を記憶しておく.}
588       \textcolor{comment}{!     * 前回の時刻と今回の時刻の差が newfile\_inttime\_vars}
589       \textcolor{comment}{!       よりも大きい場合には現ファイルを閉じ, 新ファイルを作成する.}
590 
591       \textcolor{keywordflow}{if} ( newfile\_inttime\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) > zero\_time ) \textcolor{keywordflow}{then}
592         \textcolor{keywordflow}{if} ( time - newfile\_createtime\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) >= newfile\_inttime\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) ) \textcolor{keywordflow}{then}
593           renew\_timing\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = .true.
594 
595           output\_timing\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = .true.
596           output\_timing\_avr\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = tavr\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
597 
598           cycle
599 \textcolor{keywordflow}{        end if}
600 \textcolor{keywordflow}{      end if}
601 
602       \textcolor{keywordflow}{if} ( time - prev\_outtime\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) >= interval\_time\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i}) ) \textcolor{keywordflow}{then}
603         output\_timing\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = .true.
604         output\_timing\_avr\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = tavr\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
605         cycle
606 \textcolor{keywordflow}{      end if}
607 
608       output\_timing\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = .false.
609       output\_timing\_avr\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i},checked\_tstepnum) = tavr\_vars(\hyperlink{namespacedcunits__com_a5742752149f55f07bd09fc85d59f7319}{i})
610 
611 \textcolor{keywordflow}{    end do}
612 
613     checked\_tstep\_varnum = numvars
614 
615 999 \textcolor{keywordflow}{continue}
616     \textcolor{keyword}{call }\hyperlink{namespacedc__error_a0104aee83ee5752b1a9f6152b11864a8}{storeerror}(stat, subname, cause\_c = cause\_c)
617     \textcolor{keyword}{call }\hyperlink{namespacedc__trace_ae44de97565a3bdd685789c7748b37e37}{endsub}(subname)
\end{DoxyCode}
Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{namespacegtool__historyauto__internal_afdf7de560a1c78afe25a12f99a0551fd_cgraph}
\end{center}
\end{figure}


\subsection{Variable Documentation}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_af834195df8f6f700789260981e4609cd}\label{namespacegtool__historyauto__internal_af834195df8f6f700789260981e4609cd}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!all\+\_\+output\+\_\+save@{all\+\_\+output\+\_\+save}}
\index{all\+\_\+output\+\_\+save@{all\+\_\+output\+\_\+save}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{all\+\_\+output\+\_\+save}{all\_output\_save}}
{\footnotesize\ttfamily logical, save, public gtool\+\_\+historyauto\+\_\+internal\+::all\+\_\+output\+\_\+save = .false.}



Definition at line 308 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoclose1(), historyautocreate1(), and historyautocreate3().


\begin{DoxyCode}
308   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: all\_output\_save = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_abb3028b474fbd886d4ab3d82d25fbe2f}\label{namespacegtool__historyauto__internal_abb3028b474fbd886d4ab3d82d25fbe2f}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!cal\+\_\+save@{cal\+\_\+save}}
\index{cal\+\_\+save@{cal\+\_\+save}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{cal\+\_\+save}{cal\_save}}
{\footnotesize\ttfamily type(dc\+\_\+cal), save, public gtool\+\_\+historyauto\+\_\+internal\+::cal\+\_\+save}



Definition at line 323 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautocreate1(), historyautocreate3(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), and historyautoputreal7().


\begin{DoxyCode}
323   \textcolor{keywordtype}{type}(\hyperlink{structdc__calendar__types_1_1dc__cal}{dc\_cal}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: cal\_save
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a3abd20dc34035acb6a63f0a0bb52dd15}\label{namespacegtool__historyauto__internal_a3abd20dc34035acb6a63f0a0bb52dd15}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!checked\+\_\+tstep\+\_\+varnum@{checked\+\_\+tstep\+\_\+varnum}}
\index{checked\+\_\+tstep\+\_\+varnum@{checked\+\_\+tstep\+\_\+varnum}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{checked\+\_\+tstep\+\_\+varnum}{checked\_tstep\_varnum}}
{\footnotesize\ttfamily integer, save, public gtool\+\_\+historyauto\+\_\+internal\+::checked\+\_\+tstep\+\_\+varnum = 0}



Definition at line 130 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), and hstvarsoutputcheck().


\begin{DoxyCode}
130   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: checked\_tstep\_varnum = 0
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a9c4a16b5306bfac5769f0b3bf55e920e}\label{namespacegtool__historyauto__internal_a9c4a16b5306bfac5769f0b3bf55e920e}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!checked\+\_\+tstepnum@{checked\+\_\+tstepnum}}
\index{checked\+\_\+tstepnum@{checked\+\_\+tstepnum}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{checked\+\_\+tstepnum}{checked\_tstepnum}}
{\footnotesize\ttfamily integer, save, public gtool\+\_\+historyauto\+\_\+internal\+::checked\+\_\+tstepnum = 0}



Definition at line 127 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), and hstvarsoutputcheck().


\begin{DoxyCode}
127   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: checked\_tstepnum = 0
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a07930b5a02bd90f8cfacd7eb854d16ed}\label{namespacegtool__historyauto__internal_a07930b5a02bd90f8cfacd7eb854d16ed}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!close\+\_\+timing\+\_\+vars@{close\+\_\+timing\+\_\+vars}}
\index{close\+\_\+timing\+\_\+vars@{close\+\_\+timing\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{close\+\_\+timing\+\_\+vars}{close\_timing\_vars}}
{\footnotesize\ttfamily logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}, 1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public gtool\+\_\+historyauto\+\_\+internal\+::close\+\_\+timing\+\_\+vars = .false.}



Definition at line 197 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
197   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: close\_timing\_vars(1:max\_vars, 1:save\_tstepnum) = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a171ea84f88543027686d2d68202d7274}\label{namespacegtool__historyauto__internal_a171ea84f88543027686d2d68202d7274}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!conventions\+\_\+save@{conventions\+\_\+save}}
\index{conventions\+\_\+save@{conventions\+\_\+save}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{conventions\+\_\+save}{conventions\_save}}
{\footnotesize\ttfamily character(string), save, public gtool\+\_\+historyauto\+\_\+internal\+::conventions\+\_\+save}



Definition at line 115 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautocreate1(), historyautocreate3(), and hstfilecreate().


\begin{DoxyCode}
115   \textcolor{keywordtype}{character(STRING)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: conventions\_save
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a09c7f8df28f4a08ff4ccc13ef1dc09d5}\label{namespacegtool__historyauto__internal_a09c7f8df28f4a08ff4ccc13ef1dc09d5}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!create\+\_\+timing\+\_\+vars@{create\+\_\+timing\+\_\+vars}}
\index{create\+\_\+timing\+\_\+vars@{create\+\_\+timing\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{create\+\_\+timing\+\_\+vars}{create\_timing\_vars}}
{\footnotesize\ttfamily logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}, 1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public gtool\+\_\+historyauto\+\_\+internal\+::create\+\_\+timing\+\_\+vars = .false.}



Definition at line 194 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
194   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: create\_timing\_vars(1:max\_vars, 1:save\_tstepnum) = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ae2e0770f75603274b70be4ef623fb6b5}\label{namespacegtool__historyauto__internal_ae2e0770f75603274b70be4ef623fb6b5}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!data\+\_\+axes@{data\+\_\+axes}}
\index{data\+\_\+axes@{data\+\_\+axes}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{data\+\_\+axes}{data\_axes}}
{\footnotesize\ttfamily type(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\+\_\+history\+\_\+axis\+\_\+data}), dimension(1\+:nf90\+\_\+max\+\_\+dims), target, save, public gtool\+\_\+historyauto\+\_\+internal\+::data\+\_\+axes}



Definition at line 163 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), historyautocreate1(), historyautocreate3(), historyautoputaxisdouble(), historyautoputaxisint(), historyautoputaxisreal(), and hstfilecreate().


\begin{DoxyCode}
163   \textcolor{keywordtype}{type}(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\_history\_axis\_data}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{target}, \textcolor{keywordtype}{public}:: data\_axes(1:nf90\_max\_dims)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a58a6a57fae2aee8bfe4ffeb74ccd51cf}\label{namespacegtool__historyauto__internal_a58a6a57fae2aee8bfe4ffeb74ccd51cf}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!data\+\_\+axes\+\_\+whole@{data\+\_\+axes\+\_\+whole}}
\index{data\+\_\+axes\+\_\+whole@{data\+\_\+axes\+\_\+whole}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{data\+\_\+axes\+\_\+whole}{data\_axes\_whole}}
{\footnotesize\ttfamily type(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\+\_\+history\+\_\+axis\+\_\+data}), dimension(1\+:nf90\+\_\+max\+\_\+dims), target, save, public gtool\+\_\+historyauto\+\_\+internal\+::data\+\_\+axes\+\_\+whole}



Definition at line 164 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoputaxismpidouble(), historyautoputaxismpiint(), historyautoputaxismpireal(), and hstfilecreate().


\begin{DoxyCode}
164   \textcolor{keywordtype}{type}(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\_history\_axis\_data}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{target}, \textcolor{keywordtype}{public}:: 
      \hyperlink{namespacegtool__historyauto__internal_a58a6a57fae2aee8bfe4ffeb74ccd51cf}{data\_axes\_whole}(1:nf90\_max\_dims)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ab4a4d914908bc4d226c6e00f22ab681a}\label{namespacegtool__historyauto__internal_ab4a4d914908bc4d226c6e00f22ab681a}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!data\+\_\+weights@{data\+\_\+weights}}
\index{data\+\_\+weights@{data\+\_\+weights}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{data\+\_\+weights}{data\_weights}}
{\footnotesize\ttfamily type(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\+\_\+history\+\_\+axis\+\_\+data}), dimension(1\+:nf90\+\_\+max\+\_\+dims), target, save, public gtool\+\_\+historyauto\+\_\+internal\+::data\+\_\+weights}



Definition at line 166 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoaddweightdouble(), historyautoaddweightint(), historyautoaddweightreal(), historyautoclose1(), and hstfilecreate().


\begin{DoxyCode}
166   \textcolor{keywordtype}{type}(\hyperlink{structgtool__historyauto__internal_1_1gt__history__axis__data}{gt\_history\_axis\_data}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{target}, \textcolor{keywordtype}{public}:: data\_weights(1:nf90\_max\_dims)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ae891f791f06836fb1d42b7185e6d3afa}\label{namespacegtool__historyauto__internal_ae891f791f06836fb1d42b7185e6d3afa}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!flag\+\_\+allvarfixed@{flag\+\_\+allvarfixed}}
\index{flag\+\_\+allvarfixed@{flag\+\_\+allvarfixed}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{flag\+\_\+allvarfixed}{flag\_allvarfixed}}
{\footnotesize\ttfamily logical, save, public gtool\+\_\+historyauto\+\_\+internal\+::flag\+\_\+allvarfixed = .false.}



Definition at line 318 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoallvarfix(), and historyautoclose1().


\begin{DoxyCode}
318   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: flag\_allvarfixed = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a5c5b5c13f8c9a1f51190b33c6cffbabf}\label{namespacegtool__historyauto__internal_a5c5b5c13f8c9a1f51190b33c6cffbabf}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!flag\+\_\+output\+\_\+prev\+\_\+vars@{flag\+\_\+output\+\_\+prev\+\_\+vars}}
\index{flag\+\_\+output\+\_\+prev\+\_\+vars@{flag\+\_\+output\+\_\+prev\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{flag\+\_\+output\+\_\+prev\+\_\+vars}{flag\_output\_prev\_vars}}
{\footnotesize\ttfamily logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::flag\+\_\+output\+\_\+prev\+\_\+vars = .false.}



Definition at line 237 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), and historyautoputreal7().


\begin{DoxyCode}
237   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: flag\_output\_prev\_vars(1:max\_vars) = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a046cc4e220d7dd7d44cf0287a10abdf5}\label{namespacegtool__historyauto__internal_a046cc4e220d7dd7d44cf0287a10abdf5}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!gt\+\_\+version\+\_\+save@{gt\+\_\+version\+\_\+save}}
\index{gt\+\_\+version\+\_\+save@{gt\+\_\+version\+\_\+save}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{gt\+\_\+version\+\_\+save}{gt\_version\_save}}
{\footnotesize\ttfamily character(token), save, public gtool\+\_\+historyauto\+\_\+internal\+::gt\+\_\+version\+\_\+save}



Definition at line 116 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautocreate1(), historyautocreate3(), and hstfilecreate().


\begin{DoxyCode}
116   \textcolor{keywordtype}{character(TOKEN)},  \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: gt\_version\_save
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ada7a49a17970ad9d96e320bb53420325}\label{namespacegtool__historyauto__internal_ada7a49a17970ad9d96e320bb53420325}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!gthst\+\_\+axes@{gthst\+\_\+axes}}
\index{gthst\+\_\+axes@{gthst\+\_\+axes}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{gthst\+\_\+axes}{gthst\_axes}}
{\footnotesize\ttfamily type(gt\+\_\+history\+\_\+axis), dimension(1\+:nf90\+\_\+max\+\_\+dims), target, save, public gtool\+\_\+historyauto\+\_\+internal\+::gthst\+\_\+axes}



Definition at line 162 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddattrchar0(), historyautoaddattrdouble0(), historyautoaddattrdouble1(), historyautoaddattrint0(), historyautoaddattrint1(), historyautoaddattrlogical0(), historyautoaddattrreal0(), historyautoaddattrreal1(), historyautoaddvariable1(), historyautoaddweightdouble(), historyautoaddweightint(), historyautoaddweightreal(), historyautoclose1(), historyautocreate1(), historyautocreate3(), historyautoputaxisdouble(), historyautoputaxisint(), historyautoputaxismpidouble(), historyautoputaxismpiint(), historyautoputaxismpireal(), historyautoputaxisreal(), and hstfilecreate().


\begin{DoxyCode}
162   \textcolor{keywordtype}{type}(\hyperlink{structgtool__history__types_1_1gt__history__axis}{gt\_history\_axis}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{target}, \textcolor{keywordtype}{public}:: \hyperlink{namespacegtool__historyauto__internal_ada7a49a17970ad9d96e320bb53420325}{gthst\_axes}(1:nf90\_max\_dims)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a23eb96add87a87f752d605b593113352}\label{namespacegtool__historyauto__internal_a23eb96add87a87f752d605b593113352}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!gthst\+\_\+history\+\_\+vars@{gthst\+\_\+history\+\_\+vars}}
\index{gthst\+\_\+history\+\_\+vars@{gthst\+\_\+history\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{gthst\+\_\+history\+\_\+vars}{gthst\_history\_vars}}
{\footnotesize\ttfamily type(\hyperlink{structgtool__historyauto__internal_1_1gt__history__multi}{gt\+\_\+history\+\_\+multi}), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::gthst\+\_\+history\+\_\+vars}



Definition at line 190 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), and historyautoputreal7().


\begin{DoxyCode}
190   \textcolor{keywordtype}{type}(\hyperlink{structgtool__historyauto__internal_1_1gt__history__multi}{gt\_history\_multi}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: gthst\_history\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a6f4962bc3ba6447d7cc53c1b88c9bd4e}\label{namespacegtool__historyauto__internal_a6f4962bc3ba6447d7cc53c1b88c9bd4e}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!gthst\+\_\+vars@{gthst\+\_\+vars}}
\index{gthst\+\_\+vars@{gthst\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{gthst\+\_\+vars}{gthst\_vars}}
{\footnotesize\ttfamily type(gt\+\_\+history\+\_\+varinfo), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::gthst\+\_\+vars}



Definition at line 188 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoallvarfix(), historyautoclose1(), and hstfilecreate().


\begin{DoxyCode}
188   \textcolor{keywordtype}{type}(\hyperlink{structgtool__history__types_1_1gt__history__varinfo}{gt\_history\_varinfo}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: gthst\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ab912d1857aa08f0ed0328bd6cd19270a}\label{namespacegtool__historyauto__internal_ab912d1857aa08f0ed0328bd6cd19270a}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!gthst\+\_\+weights@{gthst\+\_\+weights}}
\index{gthst\+\_\+weights@{gthst\+\_\+weights}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{gthst\+\_\+weights}{gthst\_weights}}
{\footnotesize\ttfamily type(gt\+\_\+history\+\_\+varinfo), dimension(1\+:nf90\+\_\+max\+\_\+dims), save, public gtool\+\_\+historyauto\+\_\+internal\+::gthst\+\_\+weights}



Definition at line 165 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddattrchar0(), historyautoaddattrdouble0(), historyautoaddattrdouble1(), historyautoaddattrint0(), historyautoaddattrint1(), historyautoaddattrlogical0(), historyautoaddattrreal0(), historyautoaddattrreal1(), historyautoaddvariable1(), historyautoaddweightdouble(), historyautoaddweightint(), historyautoaddweightreal(), historyautoclose1(), and hstfilecreate().


\begin{DoxyCode}
165   \textcolor{keywordtype}{type}(\hyperlink{structgtool__history__types_1_1gt__history__varinfo}{gt\_history\_varinfo}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: gthst\_weights(1:nf90\_max\_dims)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a08a505d0576b7a6390e6f7a715ccc2b4}\label{namespacegtool__historyauto__internal_a08a505d0576b7a6390e6f7a715ccc2b4}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!gthstnml@{gthstnml}}
\index{gthstnml@{gthstnml}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{gthstnml}{gthstnml}}
{\footnotesize\ttfamily type(gthst\+\_\+nmlinfo), save, public gtool\+\_\+historyauto\+\_\+internal\+::gthstnml}



Definition at line 149 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoallvarfix(), historyautoclose1(), historyautocreate1(), historyautocreate3(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstfilecreate().


\begin{DoxyCode}
149   \textcolor{keywordtype}{type}(\hyperlink{structgtool__history__nmlinfo__types_1_1gthst__nmlinfo}{gthst\_nmlinfo}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: gthstnml
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_af82718f8d0b65531180dfa0c91b15b0f}\label{namespacegtool__historyauto__internal_af82718f8d0b65531180dfa0c91b15b0f}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!histaddvar\+\_\+vars@{histaddvar\+\_\+vars}}
\index{histaddvar\+\_\+vars@{histaddvar\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{histaddvar\+\_\+vars}{histaddvar\_vars}}
{\footnotesize\ttfamily logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::histaddvar\+\_\+vars = .false.}



Definition at line 228 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautochkoutputtiming(), historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
228   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: histaddvar\_vars(1:max\_vars) = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_af1dd0091604d86d7eaca08eecfa9b737}\label{namespacegtool__historyauto__internal_af1dd0091604d86d7eaca08eecfa9b737}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!initialized@{initialized}}
\index{initialized@{initialized}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{initialized}{initialized}}
{\footnotesize\ttfamily logical, save, public gtool\+\_\+historyauto\+\_\+internal\+::initialized = .false.}



Definition at line 333 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddattrchar0(), historyautoaddattrdouble0(), historyautoaddattrdouble1(), historyautoaddattrint0(), historyautoaddattrint1(), historyautoaddattrlogical0(), historyautoaddattrreal0(), historyautoaddattrreal1(), historyautoaddvariable1(), historyautoaddvariable2(), historyautoaddweightdouble(), historyautoaddweightint(), historyautoaddweightreal(), historyautoallvarfix(), historyautochkoutput(), historyautochkoutputtiming(), historyautoclose1(), historyautocreate1(), historyautocreate2(), historyautocreate3(), historyautoputaxisdouble(), historyautoputaxisint(), historyautoputaxismpidouble(), historyautoputaxismpiint(), historyautoputaxismpireal(), historyautoputaxisreal(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), and historyautoputreal7().


\begin{DoxyCode}
333   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: \hyperlink{interfacegtool__history__generic_1_1initialized}{initialized} = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_aee003bb35878182aa2b849b804902324}\label{namespacegtool__historyauto__internal_aee003bb35878182aa2b849b804902324}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!institution\+\_\+save@{institution\+\_\+save}}
\index{institution\+\_\+save@{institution\+\_\+save}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{institution\+\_\+save}{institution\_save}}
{\footnotesize\ttfamily character(string), save, public gtool\+\_\+historyauto\+\_\+internal\+::institution\+\_\+save}



Definition at line 114 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautocreate1(), historyautocreate3(), and hstfilecreate().


\begin{DoxyCode}
114   \textcolor{keywordtype}{character(STRING)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: institution\_save
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a632ce982118e69400ac90698adace1e6}\label{namespacegtool__historyauto__internal_a632ce982118e69400ac90698adace1e6}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!interval\+\_\+time\+\_\+vars@{interval\+\_\+time\+\_\+vars}}
\index{interval\+\_\+time\+\_\+vars@{interval\+\_\+time\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{interval\+\_\+time\+\_\+vars}{interval\_time\_vars}}
{\footnotesize\ttfamily real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::interval\+\_\+time\+\_\+vars}



Definition at line 210 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautochkoutputtiming(), historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
210   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: interval\_time\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_aeb9ac548a4ebedfafc5c2eb706c74339}\label{namespacegtool__historyauto__internal_aeb9ac548a4ebedfafc5c2eb706c74339}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!interval\+\_\+unitsym\+\_\+vars@{interval\+\_\+unitsym\+\_\+vars}}
\index{interval\+\_\+unitsym\+\_\+vars@{interval\+\_\+unitsym\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{interval\+\_\+unitsym\+\_\+vars}{interval\_unitsym\_vars}}
{\footnotesize\ttfamily integer, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::interval\+\_\+unitsym\+\_\+vars}



Definition at line 213 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), and historyautoputreal7().


\begin{DoxyCode}
213   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: interval\_unitsym\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a697cf55887ae9c62958e7061f3241bfc}\label{namespacegtool__historyauto__internal_a697cf55887ae9c62958e7061f3241bfc}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!max\+\_\+dims\+\_\+depended\+\_\+by\+\_\+var@{max\+\_\+dims\+\_\+depended\+\_\+by\+\_\+var}}
\index{max\+\_\+dims\+\_\+depended\+\_\+by\+\_\+var@{max\+\_\+dims\+\_\+depended\+\_\+by\+\_\+var}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{max\+\_\+dims\+\_\+depended\+\_\+by\+\_\+var}{max\_dims\_depended\_by\_var}}
{\footnotesize\ttfamily integer, parameter, public gtool\+\_\+historyauto\+\_\+internal\+::max\+\_\+dims\+\_\+depended\+\_\+by\+\_\+var = 7}



Definition at line 102 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1().


\begin{DoxyCode}
102   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}, \textcolor{keywordtype}{public}:: max\_dims\_depended\_by\_var = 7
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_aff3a151a3a63c38642c94584e9d9a26b}\label{namespacegtool__historyauto__internal_aff3a151a3a63c38642c94584e9d9a26b}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!max\+\_\+remainder\+\_\+range@{max\+\_\+remainder\+\_\+range}}
\index{max\+\_\+remainder\+\_\+range@{max\+\_\+remainder\+\_\+range}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{max\+\_\+remainder\+\_\+range}{max\_remainder\_range}}
{\footnotesize\ttfamily real(dp), parameter, public gtool\+\_\+historyauto\+\_\+internal\+::max\+\_\+remainder\+\_\+range = 1.\+0e-\/3\+\_\+\+DP}



Definition at line 107 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.


\begin{DoxyCode}
107   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{parameter}, \textcolor{keywordtype}{public}:: max\_remainder\_range = 1.0e-3\_dp
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}\label{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!max\+\_\+vars@{max\+\_\+vars}}
\index{max\+\_\+vars@{max\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{max\+\_\+vars}{max\_vars}}
{\footnotesize\ttfamily integer, parameter, public gtool\+\_\+historyauto\+\_\+internal\+::max\+\_\+vars = 256}



Definition at line 185 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1().


\begin{DoxyCode}
185   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}, \textcolor{keywordtype}{public}:: max\_vars = 256
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a97a247a94cc02cdd16d8616c2c0b54ab}\label{namespacegtool__historyauto__internal_a97a247a94cc02cdd16d8616c2c0b54ab}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!newfile\+\_\+createtime\+\_\+vars@{newfile\+\_\+createtime\+\_\+vars}}
\index{newfile\+\_\+createtime\+\_\+vars@{newfile\+\_\+createtime\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{newfile\+\_\+createtime\+\_\+vars}{newfile\_createtime\_vars}}
{\footnotesize\ttfamily real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::newfile\+\_\+createtime\+\_\+vars}



Definition at line 234 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautochkoutputtiming(), historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
234   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: newfile\_createtime\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a3387552625cfe65b04a0e419f94a79d7}\label{namespacegtool__historyauto__internal_a3387552625cfe65b04a0e419f94a79d7}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!newfile\+\_\+inttime\+\_\+vars@{newfile\+\_\+inttime\+\_\+vars}}
\index{newfile\+\_\+inttime\+\_\+vars@{newfile\+\_\+inttime\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{newfile\+\_\+inttime\+\_\+vars}{newfile\_inttime\_vars}}
{\footnotesize\ttfamily real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::newfile\+\_\+inttime\+\_\+vars}



Definition at line 231 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautochkoutputtiming(), historyautoclose1(), and hstvarsoutputcheck().


\begin{DoxyCode}
231   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: newfile\_inttime\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}\label{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!numdims@{numdims}}
\index{numdims@{numdims}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{numdims}{numdims}}
{\footnotesize\ttfamily integer, save, public gtool\+\_\+historyauto\+\_\+internal\+::numdims}



Definition at line 82 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddattrchar0(), historyautoaddattrdouble0(), historyautoaddattrdouble1(), historyautoaddattrint0(), historyautoaddattrint1(), historyautoaddattrlogical0(), historyautoaddattrreal0(), historyautoaddattrreal1(), historyautoaddvariable1(), historyautoaddvariable2(), historyautoaddweightdouble(), historyautoaddweightint(), historyautoaddweightreal(), historyautoallvarfix(), historyautochkoutput(), historyautochkoutputtiming(), historyautoclose1(), historyautocreate1(), historyautocreate2(), historyautocreate3(), historyautoputaxisdouble(), historyautoputaxisint(), historyautoputaxismpidouble(), historyautoputaxismpiint(), historyautoputaxismpireal(), historyautoputaxisreal(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstfilecreate().


\begin{DoxyCode}
82   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: \hyperlink{namespacegtool__historyauto__internal_a01aef0b641b5a9d9a74b18908aa47edb}{numdims}
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_af2a97d3aefbba8947148f51c961f147c}\label{namespacegtool__historyauto__internal_af2a97d3aefbba8947148f51c961f147c}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!numvars@{numvars}}
\index{numvars@{numvars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{numvars}{numvars}}
{\footnotesize\ttfamily integer, save, public gtool\+\_\+historyauto\+\_\+internal\+::numvars = 0}



Definition at line 97 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoallvarfix(), historyautochkoutput(), historyautochkoutputtiming(), historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), hstfilecreate(), and hstvarsoutputcheck().


\begin{DoxyCode}
97   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: numvars = 0
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ac0846e320d7181ab21f8ef8d482a6a26}\label{namespacegtool__historyauto__internal_ac0846e320d7181ab21f8ef8d482a6a26}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!numwgts@{numwgts}}
\index{numwgts@{numwgts}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{numwgts}{numwgts}}
{\footnotesize\ttfamily integer, save, public gtool\+\_\+historyauto\+\_\+internal\+::numwgts = 0}



Definition at line 87 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddattrchar0(), historyautoaddattrdouble0(), historyautoaddattrdouble1(), historyautoaddattrint0(), historyautoaddattrint1(), historyautoaddattrlogical0(), historyautoaddattrreal0(), historyautoaddattrreal1(), historyautoaddvariable1(), historyautoaddweightdouble(), historyautoaddweightint(), historyautoaddweightreal(), historyautoclose1(), and hstfilecreate().


\begin{DoxyCode}
87   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: numwgts = 0
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_abf3e748f6c50b54af3d75deb049c4b3e}\label{namespacegtool__historyauto__internal_abf3e748f6c50b54af3d75deb049c4b3e}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!origin\+\_\+time\+\_\+vars@{origin\+\_\+time\+\_\+vars}}
\index{origin\+\_\+time\+\_\+vars@{origin\+\_\+time\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{origin\+\_\+time\+\_\+vars}{origin\_time\_vars}}
{\footnotesize\ttfamily real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::origin\+\_\+time\+\_\+vars}



Definition at line 222 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautochkoutputtiming(), historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
222   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: origin\_time\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_aa6b7a1ee5a20f19ed0613b71073fdf6d}\label{namespacegtool__historyauto__internal_aa6b7a1ee5a20f19ed0613b71073fdf6d}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!output\+\_\+timing\+\_\+avr\+\_\+vars@{output\+\_\+timing\+\_\+avr\+\_\+vars}}
\index{output\+\_\+timing\+\_\+avr\+\_\+vars@{output\+\_\+timing\+\_\+avr\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{output\+\_\+timing\+\_\+avr\+\_\+vars}{output\_timing\_avr\_vars}}
{\footnotesize\ttfamily logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}, 1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public gtool\+\_\+historyauto\+\_\+internal\+::output\+\_\+timing\+\_\+avr\+\_\+vars = .false.}



Definition at line 207 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
207   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: output\_timing\_avr\_vars(1:max\_vars, 1:save\_tstepnum) = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a949c34899075f1b5f8125cc2b72f81eb}\label{namespacegtool__historyauto__internal_a949c34899075f1b5f8125cc2b72f81eb}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!output\+\_\+timing\+\_\+vars@{output\+\_\+timing\+\_\+vars}}
\index{output\+\_\+timing\+\_\+vars@{output\+\_\+timing\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{output\+\_\+timing\+\_\+vars}{output\_timing\_vars}}
{\footnotesize\ttfamily logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}, 1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public gtool\+\_\+historyauto\+\_\+internal\+::output\+\_\+timing\+\_\+vars = .false.}



Definition at line 204 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
204   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: output\_timing\_vars(1:max\_vars, 1:save\_tstepnum) = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_af39402e77409e39aa414ee50daa50e12}\label{namespacegtool__historyauto__internal_af39402e77409e39aa414ee50daa50e12}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!output\+\_\+valid\+\_\+vars@{output\+\_\+valid\+\_\+vars}}
\index{output\+\_\+valid\+\_\+vars@{output\+\_\+valid\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{output\+\_\+valid\+\_\+vars}{output\_valid\_vars}}
{\footnotesize\ttfamily logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::output\+\_\+valid\+\_\+vars = .false.}



Definition at line 191 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautochkoutput(), historyautochkoutputtiming(), historyautoclose1(), and hstvarsoutputcheck().


\begin{DoxyCode}
191   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: output\_valid\_vars(1:max\_vars) = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_aa9911354c37b527aa9926ea2095df0f0}\label{namespacegtool__historyauto__internal_aa9911354c37b527aa9926ea2095df0f0}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!prev\+\_\+outtime\+\_\+vars@{prev\+\_\+outtime\+\_\+vars}}
\index{prev\+\_\+outtime\+\_\+vars@{prev\+\_\+outtime\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{prev\+\_\+outtime\+\_\+vars}{prev\_outtime\_vars}}
{\footnotesize\ttfamily real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::prev\+\_\+outtime\+\_\+vars}



Definition at line 216 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautochkoutputtiming(), historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
216   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: prev\_outtime\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ab995e0150e4e838e8b9848bd566c5299}\label{namespacegtool__historyauto__internal_ab995e0150e4e838e8b9848bd566c5299}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!rank\+\_\+save@{rank\+\_\+save}}
\index{rank\+\_\+save@{rank\+\_\+save}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{rank\+\_\+save}{rank\_save}}
{\footnotesize\ttfamily character(token), save, public gtool\+\_\+historyauto\+\_\+internal\+::rank\+\_\+save}



Definition at line 117 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautocreate1(), historyautocreate3(), and hstfilecreate().


\begin{DoxyCode}
117   \textcolor{keywordtype}{character(TOKEN)},  \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: rank\_save
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a63dcfda2a12d908ea7c299e41b4ae889}\label{namespacegtool__historyauto__internal_a63dcfda2a12d908ea7c299e41b4ae889}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!renew\+\_\+timing\+\_\+vars@{renew\+\_\+timing\+\_\+vars}}
\index{renew\+\_\+timing\+\_\+vars@{renew\+\_\+timing\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{renew\+\_\+timing\+\_\+vars}{renew\_timing\_vars}}
{\footnotesize\ttfamily logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}, 1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public gtool\+\_\+historyauto\+\_\+internal\+::renew\+\_\+timing\+\_\+vars = .false.}



Definition at line 200 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
200   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: renew\_timing\_vars(1:max\_vars, 1:save\_tstepnum) = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a6aa46993d72f521af70cf3977df24bf1}\label{namespacegtool__historyauto__internal_a6aa46993d72f521af70cf3977df24bf1}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!save\+\_\+mpi\+\_\+gather@{save\+\_\+mpi\+\_\+gather}}
\index{save\+\_\+mpi\+\_\+gather@{save\+\_\+mpi\+\_\+gather}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{save\+\_\+mpi\+\_\+gather}{save\_mpi\_gather}}
{\footnotesize\ttfamily logical, save, public gtool\+\_\+historyauto\+\_\+internal\+::save\+\_\+mpi\+\_\+gather = .false.}



Definition at line 172 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoallvarfix(), historyautoclose1(), historyautocreate1(), historyautocreate3(), and hstfilecreate().


\begin{DoxyCode}
172   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: save\_mpi\_gather = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_aa087ebecb90b20901204f5497d24661a}\label{namespacegtool__historyauto__internal_aa087ebecb90b20901204f5497d24661a}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!save\+\_\+mpi\+\_\+split@{save\+\_\+mpi\+\_\+split}}
\index{save\+\_\+mpi\+\_\+split@{save\+\_\+mpi\+\_\+split}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{save\+\_\+mpi\+\_\+split}{save\_mpi\_split}}
{\footnotesize\ttfamily logical, save, public gtool\+\_\+historyauto\+\_\+internal\+::save\+\_\+mpi\+\_\+split = .false.}



Definition at line 171 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), historyautocreate1(), historyautocreate3(), and hstfilecreate().


\begin{DoxyCode}
171   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: save\_mpi\_split  = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}\label{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!save\+\_\+tstepnum@{save\+\_\+tstepnum}}
\index{save\+\_\+tstepnum@{save\+\_\+tstepnum}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{save\+\_\+tstepnum}{save\_tstepnum}}
{\footnotesize\ttfamily integer, parameter, public gtool\+\_\+historyauto\+\_\+internal\+::save\+\_\+tstepnum = 1}



Definition at line 123 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by hstvarsoutputcheck().


\begin{DoxyCode}
123   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{parameter}, \textcolor{keywordtype}{public}:: save\_tstepnum = 1
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a1c560befceb8897d4b874e7aba0b0d20}\label{namespacegtool__historyauto__internal_a1c560befceb8897d4b874e7aba0b0d20}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!saved\+\_\+time@{saved\+\_\+time}}
\index{saved\+\_\+time@{saved\+\_\+time}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{saved\+\_\+time}{saved\_time}}
{\footnotesize\ttfamily real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_a8b04d188621019b3988cba6c7e4cea04}{save\+\_\+tstepnum}), save, public gtool\+\_\+historyauto\+\_\+internal\+::saved\+\_\+time}



Definition at line 126 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by hstvarsoutputcheck().


\begin{DoxyCode}
126   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: saved\_time(1:save\_tstepnum)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a3e396aa489523555a54c8e0c75440ae0}\label{namespacegtool__historyauto__internal_a3e396aa489523555a54c8e0c75440ae0}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!saved\+\_\+tstep@{saved\+\_\+tstep}}
\index{saved\+\_\+tstep@{saved\+\_\+tstep}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{saved\+\_\+tstep}{saved\_tstep}}
{\footnotesize\ttfamily integer, save, public gtool\+\_\+historyauto\+\_\+internal\+::saved\+\_\+tstep = 1}



Definition at line 133 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), and hstvarsoutputcheck().


\begin{DoxyCode}
133   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: saved\_tstep = 1
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a4aa17640fe852d239cd4650e39dd4e1e}\label{namespacegtool__historyauto__internal_a4aa17640fe852d239cd4650e39dd4e1e}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!slice\+\_\+vars@{slice\+\_\+vars}}
\index{slice\+\_\+vars@{slice\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{slice\+\_\+vars}{slice\_vars}}
{\footnotesize\ttfamily type(\hyperlink{structgtool__historyauto__internal_1_1slice__info}{slice\+\_\+info}), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), target, save, public gtool\+\_\+historyauto\+\_\+internal\+::slice\+\_\+vars}



Definition at line 262 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), and historyautoputreal7().


\begin{DoxyCode}
262   \textcolor{keywordtype}{type}(\hyperlink{structgtool__historyauto__internal_1_1slice__info}{slice\_info}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{target}, \textcolor{keywordtype}{public}:: slice\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ad4d076d628b34e22932c269e1cbe25ce}\label{namespacegtool__historyauto__internal_ad4d076d628b34e22932c269e1cbe25ce}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!source\+\_\+save@{source\+\_\+save}}
\index{source\+\_\+save@{source\+\_\+save}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{source\+\_\+save}{source\_save}}
{\footnotesize\ttfamily character(string), save, public gtool\+\_\+historyauto\+\_\+internal\+::source\+\_\+save}



Definition at line 113 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautocreate1(), historyautocreate3(), and hstfilecreate().


\begin{DoxyCode}
113   \textcolor{keywordtype}{character(STRING)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: source\_save
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a34b79875d0a188614f436e0660288b56}\label{namespacegtool__historyauto__internal_a34b79875d0a188614f436e0660288b56}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!space\+\_\+avr\+\_\+vars@{space\+\_\+avr\+\_\+vars}}
\index{space\+\_\+avr\+\_\+vars@{space\+\_\+avr\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{space\+\_\+avr\+\_\+vars}{space\_avr\_vars}}
{\footnotesize\ttfamily type(\hyperlink{structgtool__historyauto__internal_1_1space__avr__info}{space\+\_\+avr\+\_\+info}), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), target, save, public gtool\+\_\+historyauto\+\_\+internal\+::space\+\_\+avr\+\_\+vars}



Definition at line 303 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), and historyautoputreal7().


\begin{DoxyCode}
303   \textcolor{keywordtype}{type}(\hyperlink{structgtool__historyauto__internal_1_1space__avr__info}{space\_avr\_info}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{target}, \textcolor{keywordtype}{public}:: space\_avr\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a85ef80f0683224181c1f0741bb07308a}\label{namespacegtool__historyauto__internal_a85ef80f0683224181c1f0741bb07308a}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!sub\+\_\+sname@{sub\+\_\+sname}}
\index{sub\+\_\+sname@{sub\+\_\+sname}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{sub\+\_\+sname}{sub\_sname}}
{\footnotesize\ttfamily character($\ast$), parameter, public gtool\+\_\+historyauto\+\_\+internal\+::sub\+\_\+sname = \char`\"{}Hist\+Auto\char`\"{}}



Definition at line 335 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoallvarfix(), historyautocreate1(), and historyautocreate3().


\begin{DoxyCode}
335   \textcolor{keywordtype}{character(*)}, \textcolor{keywordtype}{parameter}, \textcolor{keywordtype}{public}:: sub\_sname = \textcolor{stringliteral}{"HistAuto"}
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_aa25f721e1d915ff874fdc0262862594c}\label{namespacegtool__historyauto__internal_aa25f721e1d915ff874fdc0262862594c}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!tavr\+\_\+vars@{tavr\+\_\+vars}}
\index{tavr\+\_\+vars@{tavr\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{tavr\+\_\+vars}{tavr\_vars}}
{\footnotesize\ttfamily logical, dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::tavr\+\_\+vars = .false.}



Definition at line 219 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoclose1(), and hstvarsoutputcheck().


\begin{DoxyCode}
219   \textcolor{keywordtype}{logical}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: tavr\_vars(1:max\_vars) = .false.
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a9fe6d83d81115f85455814c9b04c93fa}\label{namespacegtool__historyauto__internal_a9fe6d83d81115f85455814c9b04c93fa}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!terminus\+\_\+time\+\_\+vars@{terminus\+\_\+time\+\_\+vars}}
\index{terminus\+\_\+time\+\_\+vars@{terminus\+\_\+time\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{terminus\+\_\+time\+\_\+vars}{terminus\_time\_vars}}
{\footnotesize\ttfamily real(dp), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::terminus\+\_\+time\+\_\+vars}



Definition at line 225 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautochkoutputtiming(), historyautoclose1(), and hstvarsoutputcheck().


\begin{DoxyCode}
225   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: terminus\_time\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a6d2a47bd91b9ef5d9e721d386de12629}\label{namespacegtool__historyauto__internal_a6d2a47bd91b9ef5d9e721d386de12629}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!time\+\_\+unit\+\_\+bycreate@{time\+\_\+unit\+\_\+bycreate}}
\index{time\+\_\+unit\+\_\+bycreate@{time\+\_\+unit\+\_\+bycreate}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{time\+\_\+unit\+\_\+bycreate}{time\_unit\_bycreate}}
{\footnotesize\ttfamily character(token), save, public gtool\+\_\+historyauto\+\_\+internal\+::time\+\_\+unit\+\_\+bycreate = \textquotesingle{}\textquotesingle{}}



Definition at line 143 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoaddvariable2(), historyautoclose1(), historyautocreate1(), historyautocreate2(), and historyautocreate3().


\begin{DoxyCode}
143   \textcolor{keywordtype}{character(TOKEN)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: time\_unit\_bycreate = \textcolor{stringliteral}{''}
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ad2512828e2c1794ae7cf143781d8c9ed}\label{namespacegtool__historyauto__internal_ad2512828e2c1794ae7cf143781d8c9ed}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!time\+\_\+unit\+\_\+suffix@{time\+\_\+unit\+\_\+suffix}}
\index{time\+\_\+unit\+\_\+suffix@{time\+\_\+unit\+\_\+suffix}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{time\+\_\+unit\+\_\+suffix}{time\_unit\_suffix}}
{\footnotesize\ttfamily character(string), save, public gtool\+\_\+historyauto\+\_\+internal\+::time\+\_\+unit\+\_\+suffix = \textquotesingle{}\textquotesingle{}}



Definition at line 144 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoclose1(), historyautocreate1(), historyautocreate2(), historyautocreate3(), and hstfilecreate().


\begin{DoxyCode}
144   \textcolor{keywordtype}{character(STRING)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: time\_unit\_suffix = \textcolor{stringliteral}{''}
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ae68f71867832f25eacda9f4a4db52e3c}\label{namespacegtool__historyauto__internal_ae68f71867832f25eacda9f4a4db52e3c}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!title\+\_\+save@{title\+\_\+save}}
\index{title\+\_\+save@{title\+\_\+save}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{title\+\_\+save}{title\_save}}
{\footnotesize\ttfamily character(string), save, public gtool\+\_\+historyauto\+\_\+internal\+::title\+\_\+save}



Definition at line 112 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautocreate1(), historyautocreate3(), and hstfilecreate().


\begin{DoxyCode}
112   \textcolor{keywordtype}{character(STRING)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: title\_save
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a310d8344095b79e8492908ddcebde8fd}\label{namespacegtool__historyauto__internal_a310d8344095b79e8492908ddcebde8fd}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!varname\+\_\+vars@{varname\+\_\+vars}}
\index{varname\+\_\+vars@{varname\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{varname\+\_\+vars}{varname\_vars}}
{\footnotesize\ttfamily character(token), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), save, public gtool\+\_\+historyauto\+\_\+internal\+::varname\+\_\+vars = \textquotesingle{}\textquotesingle{}}



Definition at line 189 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautochkoutput(), historyautochkoutputtiming(), historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), and historyautoputreal7().


\begin{DoxyCode}
189   \textcolor{keywordtype}{character(TOKEN)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: varname\_vars(1:max\_vars) = \textcolor{stringliteral}{''}
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_ad719685d8938bd2a1e7aa36f0f57210d}\label{namespacegtool__historyauto__internal_ad719685d8938bd2a1e7aa36f0f57210d}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!version@{version}}
\index{version@{version}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{version}{version}}
{\footnotesize\ttfamily character($\ast$), parameter, public gtool\+\_\+historyauto\+\_\+internal\+::version = \textquotesingle{}\$Name\+: \$\textquotesingle{} // \textquotesingle{}\$Id\+: gtool\+\_\+historyauto\+\_\+internal.\+rb2f90,v 1.\+6 2010-\/07-\/04 22\+:01\+:51 morikawa Exp \$\textquotesingle{}}



Definition at line 337 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoaddvariable2(), historyautocreate1(), and historyautocreate3().


\begin{DoxyCode}
337   \textcolor{keywordtype}{character(*)}, \textcolor{keywordtype}{parameter}, \textcolor{keywordtype}{public}:: version = &
338     & \textcolor{stringliteral}{'$Name:  $'} // &
339     & \textcolor{stringliteral}{'$Id: gtool\_historyauto\_internal.rb2f90,v 1.6 2010-07-04 22:01:51 morikawa Exp $'}
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a06ec540d19db7efce796bc6938f81896}\label{namespacegtool__historyauto__internal_a06ec540d19db7efce796bc6938f81896}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!weight\+\_\+vars@{weight\+\_\+vars}}
\index{weight\+\_\+vars@{weight\+\_\+vars}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{weight\+\_\+vars}{weight\_vars}}
{\footnotesize\ttfamily type(\hyperlink{structgtool__historyauto__internal_1_1axes__weight}{axes\+\_\+weight}), dimension(1\+:\hyperlink{namespacegtool__historyauto__internal_accaf1cc0cff23d81ec3e5931b11bcedc}{max\+\_\+vars}), target, save, public gtool\+\_\+historyauto\+\_\+internal\+::weight\+\_\+vars}



Definition at line 288 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoclose1(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), and historyautoputreal7().


\begin{DoxyCode}
288   \textcolor{keywordtype}{type}(\hyperlink{structgtool__historyauto__internal_1_1axes__weight}{axes\_weight}), \textcolor{keywordtype}{save}, \textcolor{keywordtype}{target}, \textcolor{keywordtype}{public}:: weight\_vars(1:max\_vars)
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a6727d46b782ecdf84b054c46c601faff}\label{namespacegtool__historyauto__internal_a6727d46b782ecdf84b054c46c601faff}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!wgtsuf@{wgtsuf}}
\index{wgtsuf@{wgtsuf}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{wgtsuf}{wgtsuf}}
{\footnotesize\ttfamily character($\ast$), parameter, public gtool\+\_\+historyauto\+\_\+internal\+::wgtsuf = \textquotesingle{}\+\_\+weight\textquotesingle{}}



Definition at line 92 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautoaddvariable1(), historyautoaddweightdouble(), historyautoaddweightint(), historyautoaddweightreal(), and hstfilecreate().


\begin{DoxyCode}
92   \textcolor{keywordtype}{character(*)}, \textcolor{keywordtype}{parameter}, \textcolor{keywordtype}{public}:: wgtsuf = \textcolor{stringliteral}{'\_weight'}
\end{DoxyCode}
\mbox{\Hypertarget{namespacegtool__historyauto__internal_a9399975605af7bbc7c94d27c565a9838}\label{namespacegtool__historyauto__internal_a9399975605af7bbc7c94d27c565a9838}} 
\index{gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}!zero\+\_\+time@{zero\+\_\+time}}
\index{zero\+\_\+time@{zero\+\_\+time}!gtool\+\_\+historyauto\+\_\+internal@{gtool\+\_\+historyauto\+\_\+internal}}
\subsubsection{\texorpdfstring{zero\+\_\+time}{zero\_time}}
{\footnotesize\ttfamily real(dp), save, public gtool\+\_\+historyauto\+\_\+internal\+::zero\+\_\+time}



Definition at line 240 of file gtool\+\_\+historyauto\+\_\+internal.\+f90.



Referenced by historyautocreate1(), historyautocreate3(), historyautoputdouble0(), historyautoputdouble1(), historyautoputdouble2(), historyautoputdouble3(), historyautoputdouble4(), historyautoputdouble5(), historyautoputdouble6(), historyautoputdouble7(), historyautoputint0(), historyautoputint1(), historyautoputint2(), historyautoputint3(), historyautoputint4(), historyautoputint5(), historyautoputint6(), historyautoputint7(), historyautoputreal0(), historyautoputreal1(), historyautoputreal2(), historyautoputreal3(), historyautoputreal4(), historyautoputreal5(), historyautoputreal6(), historyautoputreal7(), and hstvarsoutputcheck().


\begin{DoxyCode}
240   \textcolor{keywordtype}{real(DP)}, \textcolor{keywordtype}{save}, \textcolor{keywordtype}{public}:: zero\_time
\end{DoxyCode}
