Gtool Project
GFD Dennou Club
dcmodel Project
日本語
gtdata
gtvarsearch.f90
Go to the documentation of this file.
1
!
2
!= 変数探査
3
!
4
! Authors:: Yasuhiro MORIKAWA, Eizi TOYODA
5
! Version:: $Id: gtvarsearch.f90,v 1.4 2009-05-29 15:03:49 morikawa Exp $
6
! Tag Name:: $Name: $
7
! Copyright:: Copyright (C) GFD Dennou Club, 2000-2005. All rights reserved.
8
! License:: See COPYRIGHT[link:../../COPYRIGHT]
9
!
10
! 以下のサブルーチン、関数は gtdata_generic から gtdata_generic#GTVarSearch
11
! として提供されます。
12
!
13
14
subroutine
gtvarsearchnext
(url, end)
15
!
16
!== 変数探査サブルーチン
17
!
18
! あるファイル名 urlBase に依存する変数すべてを取得するには、
19
! まず GTVarSearch(urlBase) (下記のサブルーチン) を呼び出し、
20
! その後無限ループの中で GTVarSearch(url, end) を呼び出します。
21
! そうすることで url に1つ1つの変数名が返ります。
22
! *end* が真になったとき、すべての変数名を探索し終えたことになります。
23
!
24
!=== 例
25
!
26
! use gtool5
27
! character(len = STRING) :: filename, varname
28
! logical :: end
29
!
30
! write(*,*) "Enter file name: "
31
! read(*,*) filename
32
!
33
! call GTVarSearch(filename)
34
! do
35
! call GTVarSearch(varname, end)
36
! if (end) exit
37
! write(*, *) trim(varname)
38
! enddo
39
!
40
use
gtdata_netcdf_generic
, only
:
var_search
41
use
gtdata_internal_vartable
, only
:
gdnc_search
42
use
dc_trace
, only
: beginsub, endsub
43
implicit none
44
character(len = *)
,
intent(out)
:: url
45
logical
,
intent(out)
:: end
46
continue
47
call
beginsub(
'gtvarsearchnext'
)
48
call
var_search
(
gdnc_search
, &
! (inout)
49
& url=url, end=end)
! (out)
50
call
endsub(
'gtvarsearchnext'
,
'url=%c end=%y'
, c1=trim(url), l=(/end/))
51
end subroutine
gtvarsearchnext
52
53
subroutine
gtvarsearchinit
(urlBase)
54
!
55
!== 変数探査初期化サブルーチン
56
!
57
! 上記の GTVarSearch を参照してください。
58
!
59
use
gtdata_netcdf_generic
, only
:
var_search
60
use
gtdata_internal_vartable
, only
:
gdnc_search
61
use
dc_trace
, only
: beginsub, endsub
62
implicit none
63
character(len = *)
,
intent(in)
:: urlBase
64
continue
65
call
beginsub(
'gtvarsearchinit'
,
'urlbase=<%c>'
, c1=trim(urlbase))
66
call
var_search
(
gdnc_search
, &
! (out)
67
& urlbase = urlbase )
! (in)
68
call
endsub(
'gtvarsearchinit'
)
69
end subroutine
gtvarsearchinit
gtdata_internal_vartable::gdnc_search
type(gd_nc_variable_search), save, public gdnc_search
Definition:
gtdata_internal_vartable.f90:48
gtdata_netcdf_generic::var_search
Definition:
gtdata_netcdf_generic.f90:470
gtdata_internal_vartable
Definition:
gtdata_internal_vartable.f90:11
gtvarsearchnext
subroutine gtvarsearchnext(url, end)
Definition:
gtvarsearch.f90:15
gtvarsearchinit
subroutine gtvarsearchinit(urlBase)
Definition:
gtvarsearch.f90:54
gtdata_netcdf_generic
Definition:
gtdata_netcdf_generic.f90:11