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 79 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 255 of file gtool_history_internal.f90.

256 !
257 ! 次元 history % dimvars(dimord) に値が設定されていない場合、
258 ! 「とりあえず」値を設定する。ただし、無制限次元 (時間次元)
259 ! に関しては history % origin, history % interval, history % count
260 ! から「まっとうな」値が設定される。
261 !
262 use gtdata_generic, only: inquire, slice, put
263 use dc_error, only: dumperror
264 use dc_types, only: dp
265! use dc_calendar, only: DCCalConvertByUnit
266! use dc_date, only: EvalByUnit
267 type(GT_HISTORY), intent(inout):: history
268 integer, intent(in):: dimord
269 integer:: length, i
270 real(DP), allocatable:: value(:)
271 logical:: err
272 continue
273 if (dimord == history % unlimited_index) then
274 if (.not. associated(history % count)) return
275 length = maxval(history % count(:))
276 else
277 call inquire(history % dimvars(dimord), size=length)
278 endif
279 if (length == 0) return
280 allocate(value(length))
281 if (dimord == history % unlimited_index) then
282 value(:) = (/(real(i, dp), i = 1, length)/)
283 value(:) = &
284 & history % origin &
285 & + (value(:) - 1.0_dp) * history % interval
286!!$ value(:) = &
287!!$ & EvalByUnit( history % origin, '', history % unlimited_units_symbol ) &
288!!$ & + (value(:) - 1.0) &
289!!$ & * EvalByUnit( history % interval, '', history % unlimited_units_symbol )
290 call slice(history % dimvars(dimord), 1, start=1, count=length)
291 else
292 value(:) = (/(real(i, dp), i = 1, length)/)
293 endif
294 call put(history % dimvars(dimord), value, size(value), err)
295 if (err) call dumperror
296 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: