gtool5 Fortran 90/95 ライブラリ 1.0.0-rc5
English
Loading...
Searching...
No Matches
Public Member Functions | List of all members
gtool_history_internal::set_fake_dim_value Interface Reference

Public Member Functions

subroutine set_fake_dim_value (history, dimord)
 

Detailed Description

Definition at line 78 of file gtool_history_internal.f90.

Constructor & Destructor Documentation

◆ set_fake_dim_value()

subroutine gtool_history_internal::set_fake_dim_value::set_fake_dim_value ( type(gt_history), intent(inout)  history,
integer, intent(in)  dimord 
)

Definition at line 248 of file gtool_history_internal.f90.

249 !
250 ! 次元 history % dimvars(dimord) に値が設定されていない場合、
251 ! 「とりあえず」値を設定する。ただし、無制限次元 (時間次元)
252 ! に関しては history % origin, history % interval, history % count
253 ! から「まっとうな」値が設定される。
254 !
255 use gtdata_generic, only: inquire, slice, put
256 use dc_error, only: dumperror
257 use dc_types, only: dp
258! use dc_calendar, only: DCCalConvertByUnit
259! use dc_date, only: EvalByUnit
260 type(GT_HISTORY), intent(inout):: history
261 integer, intent(in):: dimord
262 integer:: length, i
263 real(DP), allocatable:: value(:)
264 logical:: err
265 continue
266 if (dimord == history % unlimited_index) then
267 if (.not. associated(history % count)) return
268 length = maxval(history % count(:))
269 else
270 call inquire(history % dimvars(dimord), size=length)
271 endif
272 if (length == 0) return
273 allocate(value(length))
274 if (dimord == history % unlimited_index) then
275 value(:) = (/(real(i, dp), i = 1, length)/)
276 value(:) = &
277 & history % origin &
278 & + (value(:) - 1.0_dp) * history % interval
279!!$ value(:) = &
280!!$ & EvalByUnit( history % origin, '', history % unlimited_units_symbol ) &
281!!$ & + (value(:) - 1.0) &
282!!$ & * EvalByUnit( history % interval, '', history % unlimited_units_symbol )
283 call slice(history % dimvars(dimord), 1, start=1, count=length)
284 else
285 value(:) = (/(real(i, dp), i = 1, length)/)
286 endif
287 call put(history % dimvars(dimord), value, size(value), err)
288 if (err) call dumperror
289 deallocate(value)
手続引用仕様. いずれ差し替えられるように外部関数にしておく。
Definition dc_error.f90:592
エラー処理用モジュール
Definition dc_error.f90:454
種別型パラメタを提供します。
Definition dc_types.f90:55
integer, parameter, public dp
倍精度実数型変数
Definition dc_types.f90:92

References dc_types::dp.


The documentation for this interface was generated from the following file: