Loading...
Searching...
No Matches
Functions/Subroutines
gtvarputattrchar.f90 File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine gtvarputattrlogical (var, name, value, err)
 
subroutine gtvarputattrint (var, name, value, err)
 
subroutine gtvarputattrreal (var, name, value, err)
 
subroutine gtvarputattrdouble (var, name, value, err)
 
subroutine gtvarputattrchar (var, name, value, xtype, err)
 

Function/Subroutine Documentation

◆ gtvarputattrchar()

subroutine gtvarputattrchar ( type(gt_variable), intent(inout)  var,
character(len = *), intent(in)  name,
character(len = *), intent(in)  value,
character(len = *), intent(in), optional  xtype,
logical, intent(out), optional  err 
)

Definition at line 147 of file gtvarputattrchar.f90.

148 !
149 ! まずは上記の Put_Attr
150 ! (または GTVarPutAttrChar)
151 ! を参照してください。
152 !
153 ! *xtype* に型を指定することで、引数 *value* には文字型を与えても、
154 ! 整数型、実数型 (単精度、倍精度) の値を付加することが可能です。
155 !
156 ! *xtype* には与える文字列として、以下のものが有効です。
157 ! これら以外の場合は文字型の値が与えられます。
158 !
159 ! 整数型 :: "INTEGER", "integer", "int"
160 ! 実数型 (単精度) :: "REAL", "real", "float"
161 ! 実数型 (倍精度) :: "DOUBLEPRECISION", "DOUBLE", "double"
162 !--
163 ! gtdata/gtdata_netcdf/gdncputattrchar.f90#GDNcVarPutAttrChar 参照
164 !++
165 !
166 use gtdata_types, only: gt_variable
167 use gtdata_internal_map, only: var_class, vtb_class_netcdf
170 use dc_trace, only: beginsub, endsub
171 implicit none
172 type(GT_VARIABLE), intent(inout):: var
173 character(len = *), intent(in):: name
174 character(len = *), intent(in):: value
175 character(len = *), intent(in), optional:: xtype
176 logical, intent(out), optional:: err
177 integer:: class, cid
178 character(*), parameter:: subnam = "gtvarputattrchar"
179continue
180 call beginsub(subnam, "%d:%c = %c", i=(/var%mapid/), c1=trim(name), c2=trim(value))
181 call var_class(var, class, cid)
182 if (class == vtb_class_netcdf) then
183 call put_attr(gd_nc_variable(cid), name, value, xtype, err)
184 endif
185 call endsub(subnam)
subroutine, public var_class(var, class, cid)

References gtdata_internal_map::var_class().

Here is the call graph for this function:

◆ gtvarputattrdouble()

subroutine gtvarputattrdouble ( type(gt_variable), intent(inout)  var,
character(len = *), intent(in)  name,
real(dp), dimension(:), intent(in)  value,
logical, intent(out), optional  err 
)

Definition at line 122 of file gtvarputattrchar.f90.

123 !
124 ! まずは上記の Put_Attr
125 ! (または GTVarPutAttrChar および GTVarPutAttrReal)
126 ! を参照してください。
127 !
128 use gtdata_types, only: gt_variable
129 use gtdata_internal_map, only: var_class, vtb_class_netcdf
132 use dc_string, only: tochar
133 use dc_types, only: dp
134 implicit none
135 type(GT_VARIABLE), intent(inout):: var
136 character(len = *), intent(in):: name
137 real(DP), intent(in):: value(:)
138 logical, intent(out), optional:: err
139 integer:: class, cid
140continue
141 call var_class(var, class, cid)
142 if (class == vtb_class_netcdf) then
143 call put_attr(gd_nc_variable(cid), name, value, err)
144 endif
種別型パラメタを提供します。
Definition dc_types.f90:49
integer, parameter, public dp
倍精度実数型変数
Definition dc_types.f90:83

References dc_types::dp, and gtdata_internal_map::var_class().

Here is the call graph for this function:

◆ gtvarputattrint()

subroutine gtvarputattrint ( type(gt_variable), intent(inout)  var,
character(len = *), intent(in)  name,
integer, dimension(:), intent(in)  value,
logical, intent(out), optional  err 
)

Definition at line 70 of file gtvarputattrchar.f90.

71 !
72 ! まずは上記の Put_Attr
73 ! (または GTVarPutAttrChar および GTVarPutAttrReal)
74 ! を参照してください。
75 !
76 ! *value* は配列を受け取るので、スカラーを書き出すには
77 ! Fortran の配列構成子 <tt>(/ ... /)</tt> を使ってください。
78 ! たとえば、スカラー a から長さ 1 の配列 <tt>(/a/)</tt>
79 ! を作ることができます。
80 !
81 use gtdata_types, only: gt_variable
82 use gtdata_internal_map, only: var_class, vtb_class_netcdf
85 use dc_string, only: tochar
86 type(GT_VARIABLE), intent(inout):: var
87 character(len = *), intent(in):: name
88 integer, intent(in):: value(:)
89 logical, intent(out), optional:: err
90 integer:: class, cid
91continue
92 call var_class(var, class, cid)
93 if (class == vtb_class_netcdf) then
94 call put_attr(gd_nc_variable(cid), name, value, err)
95 endif

References gtdata_internal_map::var_class().

Here is the call graph for this function:

◆ gtvarputattrlogical()

subroutine gtvarputattrlogical ( type(gt_variable), intent(inout)  var,
character(len = *), intent(in)  name,
logical, intent(in)  value,
logical, intent(out), optional  err 
)

Definition at line 13 of file gtvarputattrchar.f90.

14 !
15 !== 属性の付加
16 !
17 ! 変数 *var* に, 属性名 *name* とその値 *value* を付加します。
18 !
19 ! *Put_Attr* は複数のサブルーチンの総称名なので、
20 ! *value* には様々な型の変数を与えることが可能です。
21 ! 以下のサブルーチンを参照してください。
22 !
23 ! 引数に *xtype* を持つものは、その引数に型を指定することで、
24 ! 引数 *value* には文字型を与えても、
25 ! 整数型、実数型 (単精度、倍精度) の値を付加することが可能です。
26 ! 下記のサブルーチンを参照ください。
27 !
28 ! エラーが発生した場合、引数 *err* が与えられる場合は *err* が
29 ! <tt>.true.</tt> となって返ります。
30 ! 引数 *err* を与えなければプログラムは停止します。
31 !
32 use gtdata_types, only: gt_variable
33 use gtdata_internal_map, only: var_class, vtb_class_netcdf
36 use dc_string, only: tochar
37 implicit none
38 type(GT_VARIABLE), intent(inout) :: var
39 character(len = *), intent(in) :: name
40 logical, intent(in) :: value
41 logical, intent(out), optional:: err
42 integer:: class, cid
43continue
44 call var_class(var, class, cid)
45 if (class == vtb_class_netcdf) then
46 if (value) then
47 call put_attr(gd_nc_variable(cid), name, "true", err=err)
48 else
49 call put_attr(gd_nc_variable(cid), name, "false", err=err)
50 endif
51 endif

References gtdata_internal_map::var_class().

Here is the call graph for this function:

◆ gtvarputattrreal()

subroutine gtvarputattrreal ( type(gt_variable), intent(inout)  var,
character(len = *), intent(in)  name,
real, dimension(:), intent(in)  value,
logical, intent(out), optional  err 
)

Definition at line 98 of file gtvarputattrchar.f90.

99 !
100 ! まずは上記の Put_Attr
101 ! (または GTVarPutAttrChar および GTVarPutAttrReal)
102 ! を参照してください。
103 !
104 use gtdata_types, only: gt_variable
105 use gtdata_internal_map, only: var_class, vtb_class_netcdf
108 use dc_string, only: tochar
109 implicit none
110 type(GT_VARIABLE), intent(inout):: var
111 character(len = *), intent(in):: name
112 real, intent(in):: value(:)
113 logical, intent(out), optional:: err
114 integer:: class, cid
115continue
116 call var_class(var, class, cid)
117 if (class == vtb_class_netcdf) then
118 call put_attr(gd_nc_variable(cid), name, value, err)
119 endif

References gtdata_internal_map::var_class().

Here is the call graph for this function: