historyautoputaxismpi.f90 File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine historyautoputaxismpireal (dim, array)
 
subroutine historyautoputaxismpidouble (dim, array)
 
subroutine historyautoputaxismpiint (dim, array)
 

Function/Subroutine Documentation

◆ historyautoputaxismpidouble()

subroutine historyautoputaxismpidouble ( character(*), intent(in)  dim,
real(dp), dimension(:), intent(in)  array 
)

Definition at line 91 of file historyautoputaxismpi.f90.

References dc_trace::beginsub(), gtool_historyauto_internal::data_axes_whole, dc_error::dc_enotinit, dc_error::dc_noerr, dc_types::dp, dc_trace::endsub(), dc_error::gt_ebaddimname, gtool_historyauto_internal::gthst_axes, dc_error::hst_enoaxisname, gtool_historyauto_internal::initialized, gtool_historyauto_internal::numdims, dc_error::storeerror(), dc_types::string, and dc_types::token.

91  !
92  ! MPI 使用時に, 各々のノード上のデータを単一ファイルに
93  ! 集約して出力する場合には,
94  ! このサブルーチンに領域全体の座標データを与えてください.
95  ! また, HistoryAutoCreate のオプショナル論理型引数 *flag_mpi_gather*
96  ! に .true. を与えてください.
97  !
98  ! When MPI is used, if data on each node is integrated and
99  ! output to one file, give data of axes in whole area to
100  ! this subroutine.
101  ! And give .true. to optional logical argument *flag_mpi_gather*
102  ! in "HistoryAutoCreate".
103  !
106  use dc_trace, only: beginsub, endsub
108  use dc_error, only: storeerror, dc_noerr, dc_enotinit, &
110  use dc_message, only: messagenotify
111  use dc_types, only: dp, string, token
112  implicit none
113  character(*), intent(in):: dim
114  ! 座標変数の名称.
115  !
116  ! ここで指定するものは, HistoryAutoCreate の
117  ! 引数 *dims* で既に指定されてい
118  ! なければなりません.
119  !
120  ! Name of dimensional variable.
121  !
122  ! This name must be specified by
123  ! an argument *dims* in "HistoryAutoCreate".
124  !
125 
126  real(DP), intent(in):: array(:)
127  ! 座標データ.
128  !
129  ! Data of axes.
130 
131  integer:: i, dimsize
132  character(STRING):: name
133  integer:: stat
134  character(STRING):: cause_c
135  character(*), parameter:: subname = "HistoryAutoPutAxisMPIDouble"
136  continue
137  call beginsub(subname, 'dim=%c', c1 = trim(dim) )
138  stat = dc_noerr
139  cause_c = ""
140 
141  do i = 1, numdims
142  call historyaxisinquire( &
143  & axis = gthst_axes(i), & ! (in)
144  & name = name ) ! (out)
145  if ( trim(dim) == trim(name) ) then
146  dimsize = size( array )
147  allocate( data_axes_whole(i) % a_axis( dimsize ) )
148  data_axes_whole(i) % a_axis(:) = array(:)
149  goto 999
150  end if
151  end do
152 
153  stat = hst_enoaxisname
154  cause_c = dim
155 
156  ! 終了処理, 例外処理
157  ! Termination and Exception handling
158  !
159 999 continue
160  call storeerror( stat, subname, cause_c = cause_c )
161  call endsub(subname)
integer, parameter, public dc_enotinit
Definition: dc_error.f90:557
integer, parameter, public token
単語やキーワードを保持する文字型変数の種別型パラメタ
Definition: dc_types.f90:109
subroutine, public storeerror(number, where, err, cause_c, cause_i)
Definition: dc_error.f90:830
type(gt_history_axis_data), dimension(1:nf90_max_dims), target, save, public data_axes_whole
integer, parameter, public dc_noerr
Definition: dc_error.f90:509
type(gt_history_axis), dimension(1:nf90_max_dims), target, save, public gthst_axes
integer, parameter, public dp
倍精度実数型変数
Definition: dc_types.f90:83
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
Definition: dc_trace.f90:351
種別型パラメタを提供します。
Definition: dc_types.f90:49
integer, parameter, public hst_enoaxisname
Definition: dc_error.f90:589
integer, parameter, public gt_ebaddimname
Definition: dc_error.f90:532
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
Definition: dc_trace.f90:446
integer, parameter, public string
文字列を保持する 文字型変数の種別型パラメタ
Definition: dc_types.f90:118
Here is the call graph for this function:

◆ historyautoputaxismpiint()

subroutine historyautoputaxismpiint ( character(*), intent(in)  dim,
integer, dimension(:), intent(in)  array 
)

Definition at line 167 of file historyautoputaxismpi.f90.

References dc_trace::beginsub(), gtool_historyauto_internal::data_axes_whole, dc_error::dc_enotinit, dc_error::dc_noerr, dc_types::dp, dc_trace::endsub(), dc_error::gt_ebaddimname, gtool_historyauto_internal::gthst_axes, dc_error::hst_enoaxisname, gtool_historyauto_internal::initialized, gtool_historyauto_internal::numdims, dc_error::storeerror(), dc_types::string, and dc_types::token.

167  !
168  ! MPI 使用時に, 各々のノード上のデータを単一ファイルに
169  ! 集約して出力する場合には,
170  ! このサブルーチンに領域全体の座標データを与えてください.
171  ! また, HistoryAutoCreate のオプショナル論理型引数 *flag_mpi_gather*
172  ! に .true. を与えてください.
173  !
174  ! When MPI is used, if data on each node is integrated and
175  ! output to one file, give data of axes in whole area to
176  ! this subroutine.
177  ! And give .true. to optional logical argument *flag_mpi_gather*
178  ! in "HistoryAutoCreate".
179  !
182  use dc_trace, only: beginsub, endsub
184  use dc_error, only: storeerror, dc_noerr, dc_enotinit, &
186  use dc_message, only: messagenotify
187  use dc_types, only: dp, string, token
188  implicit none
189  character(*), intent(in):: dim
190 
191  integer, intent(in):: array(:)
192 
193  integer:: i, dimsize
194  character(STRING):: name
195  integer:: stat
196  character(STRING):: cause_c
197  character(*), parameter:: subname = "HistoryAutoPutAxisMPIInt"
198  continue
199  call beginsub(subname, 'dim=%c', c1 = trim(dim) )
200  stat = dc_noerr
201  cause_c = ""
202 
203  do i = 1, numdims
204  call historyaxisinquire( &
205  & axis = gthst_axes(i), & ! (in)
206  & name = name ) ! (out)
207  if ( trim(dim) == trim(name) ) then
208  dimsize = size( array )
209  allocate( data_axes_whole(i) % a_axis( dimsize ) )
210  data_axes_whole(i) % a_axis(:) = array(:)
211  goto 999
212  end if
213  end do
214 
215  stat = hst_enoaxisname
216  cause_c = dim
217 
218  ! 終了処理, 例外処理
219  ! Termination and Exception handling
220  !
221 999 continue
222  call storeerror( stat, subname, cause_c = cause_c )
223  call endsub(subname)
integer, parameter, public dc_enotinit
Definition: dc_error.f90:557
integer, parameter, public token
単語やキーワードを保持する文字型変数の種別型パラメタ
Definition: dc_types.f90:109
subroutine, public storeerror(number, where, err, cause_c, cause_i)
Definition: dc_error.f90:830
type(gt_history_axis_data), dimension(1:nf90_max_dims), target, save, public data_axes_whole
integer, parameter, public dc_noerr
Definition: dc_error.f90:509
type(gt_history_axis), dimension(1:nf90_max_dims), target, save, public gthst_axes
integer, parameter, public dp
倍精度実数型変数
Definition: dc_types.f90:83
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
Definition: dc_trace.f90:351
種別型パラメタを提供します。
Definition: dc_types.f90:49
integer, parameter, public hst_enoaxisname
Definition: dc_error.f90:589
integer, parameter, public gt_ebaddimname
Definition: dc_error.f90:532
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
Definition: dc_trace.f90:446
integer, parameter, public string
文字列を保持する 文字型変数の種別型パラメタ
Definition: dc_types.f90:118
Here is the call graph for this function:

◆ historyautoputaxismpireal()

subroutine historyautoputaxismpireal ( character(*), intent(in)  dim,
real, dimension(:), intent(in)  array 
)

Definition at line 29 of file historyautoputaxismpi.f90.

References dc_trace::beginsub(), gtool_historyauto_internal::data_axes_whole, dc_error::dc_enotinit, dc_error::dc_noerr, dc_types::dp, dc_trace::endsub(), dc_error::gt_ebaddimname, gtool_historyauto_internal::gthst_axes, dc_error::hst_enoaxisname, gtool_historyauto_internal::initialized, gtool_historyauto_internal::numdims, dc_error::storeerror(), dc_types::string, and dc_types::token.

29  !
30  ! MPI 使用時に, 各々のノード上のデータを単一ファイルに
31  ! 集約して出力する場合には,
32  ! このサブルーチンに領域全体の座標データを与えてください.
33  ! また, HistoryAutoCreate のオプショナル論理型引数 *flag_mpi_gather*
34  ! に .true. を与えてください.
35  !
36  ! When MPI is used, if data on each node is integrated and
37  ! output to one file, give data of axes in whole area to
38  ! this subroutine.
39  ! And give .true. to optional logical argument *flag_mpi_gather*
40  ! in "HistoryAutoCreate".
41  !
44  use dc_trace, only: beginsub, endsub
46  use dc_error, only: storeerror, dc_noerr, dc_enotinit, &
48  use dc_message, only: messagenotify
49  use dc_types, only: dp, string, token
50  implicit none
51  character(*), intent(in):: dim
52 
53  real, intent(in):: array(:)
54 
55  integer:: i, dimsize
56  character(STRING):: name
57  integer:: stat
58  character(STRING):: cause_c
59  character(*), parameter:: subname = "HistoryAutoPutAxisMPIReal"
60  continue
61  call beginsub(subname, 'dim=%c', c1 = trim(dim) )
62  stat = dc_noerr
63  cause_c = ""
64 
65  do i = 1, numdims
66  call historyaxisinquire( &
67  & axis = gthst_axes(i), & ! (in)
68  & name = name ) ! (out)
69  if ( trim(dim) == trim(name) ) then
70  dimsize = size( array )
71  allocate( data_axes_whole(i) % a_axis( dimsize ) )
72  data_axes_whole(i) % a_axis(:) = array(:)
73  goto 999
74  end if
75  end do
76 
77  stat = hst_enoaxisname
78  cause_c = dim
79 
80  ! 終了処理, 例外処理
81  ! Termination and Exception handling
82  !
83 999 continue
84  call storeerror( stat, subname, cause_c = cause_c )
85  call endsub(subname)
integer, parameter, public dc_enotinit
Definition: dc_error.f90:557
integer, parameter, public token
単語やキーワードを保持する文字型変数の種別型パラメタ
Definition: dc_types.f90:109
subroutine, public storeerror(number, where, err, cause_c, cause_i)
Definition: dc_error.f90:830
type(gt_history_axis_data), dimension(1:nf90_max_dims), target, save, public data_axes_whole
integer, parameter, public dc_noerr
Definition: dc_error.f90:509
type(gt_history_axis), dimension(1:nf90_max_dims), target, save, public gthst_axes
integer, parameter, public dp
倍精度実数型変数
Definition: dc_types.f90:83
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
Definition: dc_trace.f90:351
種別型パラメタを提供します。
Definition: dc_types.f90:49
integer, parameter, public hst_enoaxisname
Definition: dc_error.f90:589
integer, parameter, public gt_ebaddimname
Definition: dc_error.f90:532
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
Definition: dc_trace.f90:446
integer, parameter, public string
文字列を保持する 文字型変数の種別型パラメタ
Definition: dc_types.f90:118
Here is the call graph for this function: