1 | The execution of gridgen_model.exe is controlled by two user input |
---|
2 | files, wrfsi.nl and input.table, both of which are described below. To |
---|
3 | run gridgen_model, it is only really necessary that the user edit wrfsi.nl |
---|
4 | to specify the grid type, the projection and location of the domains, |
---|
5 | the resolution of source data to use for each nest, and the location of |
---|
6 | the global static fields. The contents of the input.table file are used |
---|
7 | to add additional fields to the output of gridgen_model, or to modify |
---|
8 | the way in which any given field is processed by gridgen_model; for |
---|
9 | example, the user may change the interpolation method used with a |
---|
10 | particular field or resolution of source data. Editing input.table is |
---|
11 | not necessary if only the default output from gridgen_model is required. |
---|
12 | |
---|
13 | ####################### |
---|
14 | # wrfsi.nl # |
---|
15 | ####################### |
---|
16 | wrfsi.nl contains the gridgen_model namelist record, which |
---|
17 | contains variables describing the projection and location of domains. |
---|
18 | The variables in the gridgen_model namelist record are: |
---|
19 | |
---|
20 | gridtype = {'C', 'E'} |
---|
21 | the staggering of the model grid. |
---|
22 | |
---|
23 | max_dom = {INTEGER} |
---|
24 | the number of domains to be processed; must be <= 20 |
---|
25 | |
---|
26 | parent_id = {INTEGER, 1 to max_dom} |
---|
27 | the id of this domain's parent; the parent_id of domain 1 is always 1 |
---|
28 | |
---|
29 | parent_grid_ratio = {INTEGER, 1 to max_dom} |
---|
30 | the ratio of this domain's grid distance to that of it's parent |
---|
31 | |
---|
32 | i_parent_start = {INTEGER, 1 to max_dom} |
---|
33 | the i-coordinate of this domain's left edge in it's parent domain |
---|
34 | |
---|
35 | j_parent_start = {INTEGER, 1 to max_dom} |
---|
36 | the j-coordinate of this domain's bottom edge in it's parent domain |
---|
37 | |
---|
38 | s_we = {INTEGER, 1 to max_dom} |
---|
39 | currently, should be set to 1 for every domain |
---|
40 | |
---|
41 | e_we = {INTEGER, 1 to max_dom} |
---|
42 | the size of the west-east dimension for this grid |
---|
43 | |
---|
44 | s_sn = {INTEGER, 1 to max_dom} |
---|
45 | currently, should be set to 1 for every domain |
---|
46 | |
---|
47 | e_sn = {INTEGER, 1 to max_dom} |
---|
48 | the size of the south-north dimension for this grid |
---|
49 | |
---|
50 | data_res = {'30s','2m','5m','10m', 1 to max_dom} |
---|
51 | the resolution of source data that should be used when interpolating to |
---|
52 | this domain |
---|
53 | |
---|
54 | dx = {REAL} |
---|
55 | for C grid, the nominal grid distance, in meters, of domain 1 in the x |
---|
56 | direction; for E grid, the delta-longitude, in degrees |
---|
57 | |
---|
58 | dy = {REAL} |
---|
59 | for C grid, the nominal grid distance, in meters, of domain 1 in the y |
---|
60 | direction; for E grid, the delta-latitude, in degrees |
---|
61 | |
---|
62 | map_proj = {'lambert','mercator','polar', 'rotated_ll'} |
---|
63 | the projection of the domains; for E grid, map_proj must be 'rotated_ll'; |
---|
64 | for C grid, map_proj must not be 'rotated_ll' |
---|
65 | |
---|
66 | known_x = {REAL} |
---|
67 | for C grid, the i-coordinate of a point in the domain whose lat/lon is |
---|
68 | known; if not specified, (e_we/2) is assumed |
---|
69 | |
---|
70 | known_y = {REAL} |
---|
71 | for C grid, the j-coordinate of a point in the domain whose lat/lon is |
---|
72 | known; if not specified, (e_sn/2) is assumed |
---|
73 | |
---|
74 | known_lat = {REAL} |
---|
75 | for C grid, the latitude of the point (known_x, known_y); for E grid, the |
---|
76 | latitude of the point that the origin is rotated to |
---|
77 | |
---|
78 | known_lon = {REAL} |
---|
79 | for C grid, the longitude of the point (known_x, known_y); for E grid, the |
---|
80 | longitude of the point that the origin is rotated to |
---|
81 | |
---|
82 | truelat1 = {REAL} |
---|
83 | for map_proj={'lambert','mercator','polar'}, the first true latitude |
---|
84 | |
---|
85 | truelat2 = {REAL} |
---|
86 | for map_proj={'lambert'}, the second true latitude |
---|
87 | |
---|
88 | stand_lon = {REAL} |
---|
89 | for map_proj={'lambert','polar'}, the standard longitude |
---|
90 | |
---|
91 | io_form_output = {INTEGER} |
---|
92 | the form of the output files written by gridgen_model |
---|
93 | |
---|
94 | data_root = {'STRING'} |
---|
95 | the absolute path to the static source fields (i.e., the untarred |
---|
96 | geog directory) |
---|
97 | |
---|
98 | |
---|
99 | ####################### |
---|
100 | # input.table # |
---|
101 | ####################### |
---|
102 | input.table is a text file that is used to specify which fields |
---|
103 | will be ingested and processed by gridgen_model; it also describes |
---|
104 | how each field should be processed by specifying the interpolation |
---|
105 | and smoothing methods to be used for each field. The options that |
---|
106 | may be given in input.table are: |
---|
107 | |
---|
108 | Mandatory options describing what the data is a source of and |
---|
109 | when it should be used: |
---|
110 | fieldname = {STRING} |
---|
111 | name of output field calculated from this source |
---|
112 | output_stagger = {U V M HH VV} |
---|
113 | the staggering of the output field |
---|
114 | dest_fieldtype = {continuous categorical} |
---|
115 | type of field calculated from src |
---|
116 | priority = {INTEGER} |
---|
117 | priority level of this source (1 = highest priority) |
---|
118 | |
---|
119 | |
---|
120 | Options describing other aspects of the source: |
---|
121 | path = {STRING} |
---|
122 | where to find the data |
---|
123 | fill_missing = {REAL} |
---|
124 | value assigned to gridpoints that have no data |
---|
125 | halt_on_missing = {yes no} |
---|
126 | halt if missing values found in output field |
---|
127 | z_dim_name = {STRING} |
---|
128 | for 3-d output fields, name of z dimension |
---|
129 | masked = {land water} |
---|
130 | this is field should be masked by land/water |
---|
131 | |
---|
132 | |
---|
133 | Option to indicate which field the landmask should be computed from; should be |
---|
134 | specified for exactly one fieldname: |
---|
135 | landmask_water = {INTEGER} |
---|
136 | compute landmask based on value of water |
---|
137 | landmask_land = {INTEGER} |
---|
138 | compute landmask based on value of land |
---|
139 | |
---|
140 | |
---|
141 | For dominant category-type fields: |
---|
142 | dominant_category = {STRING} |
---|
143 | name of dominant category to compute from src |
---|
144 | dominant_only = {STRING} |
---|
145 | only compute a dominant category from src |
---|
146 | |
---|
147 | For derivatives (only for continuous fields): |
---|
148 | df_dx = {STRING} |
---|
149 | calculate df_dx for this field, and name the result STRING |
---|
150 | df_dy = {STRING} |
---|
151 | calculate df_dy for this field, and name the result STRING |
---|
152 | |
---|
153 | Other options: |
---|
154 | scale_factor = {REAL} |
---|
155 | scale final field by this scalar |
---|
156 | interp_option = {sixteen_pt four_pt nearest_neighbor average} |
---|
157 | interpolation type |
---|
158 | smooth_option = {1-2-1 smth-desmth} |
---|
159 | smoothing type, if specified |
---|
160 | smooth_passes = {INTEGER} |
---|
161 | number of smoothing passes |
---|
162 | |
---|
163 | |
---|
164 | Mandatory options describing the projection of the source: |
---|
165 | These options are actually used in the `index' file for each |
---|
166 | source, NOT in the input.table |
---|
167 | fieldtype = {continuous categorical} |
---|
168 | type of this source data |
---|
169 | proj = {lambert polar mercator regular_ll} |
---|
170 | projection of source |
---|
171 | dx = {REAL} |
---|
172 | dy = {REAL} |
---|
173 | missing_value = {REAL} |
---|
174 | value of missing data |
---|
175 | signed = {yes no} |
---|
176 | whether signed in 2's complement format |
---|
177 | known_x = {REAL} |
---|
178 | known_y = {REAL} |
---|
179 | known_lat = {REAL} |
---|
180 | known_lon = {REAL} |
---|
181 | truelat1 = {REAL} |
---|
182 | truelat2 = {REAL} |
---|
183 | stdlon = {REAL} |
---|
184 | units = {STRING} |
---|
185 | description = {STRING} |
---|
186 | wordsize = {INTEGER} |
---|
187 | how many bytes per value |
---|
188 | tile_x = {INTEGER} |
---|
189 | number of points in x direction per tile |
---|
190 | tile_y = {INTEGER} |
---|
191 | number of points in y direction per tile |
---|
192 | tile_z = {INTEGER} |
---|
193 | number of points in z direction per tile |
---|
194 | tile_z_start = {INTEGER} |
---|
195 | alternate to tile_z; starting z index |
---|
196 | tile_z_end = {INTEGER} |
---|
197 | alternate to tile_z; ending z index |
---|
198 | tile_bdr = {INTEGER} |
---|
199 | number of halo points around each tile |
---|
200 | category_min = {INTEGER} |
---|
201 | for categorical data, min category in the source |
---|
202 | category_max = {INTEGER} |
---|
203 | for categorical data, max category in the source |
---|