source: branches/ORCHIDEE_2_2/ORCHIDEE/src_xml/context_input_orchidee.xml @ 8418

Last change on this file since 8418 was 8418, checked in by bertrand.guenet, 5 months ago

The Moyano function describing the soil moisture effect on OM decomposition is added

  • Property svn:keywords set to Date Revision HeadURL
File size: 23.7 KB
Line 
1<!-- =========================================================================================================== -->
2<!-- ORCHIDEE context for input files                                                                            -->
3<!-- context_input_orchidee.xml : Configuration file for ORCHIDEE for reading of input files using XIOS          -->
4<!-- This file must be included from iodef.xml                                                                   -->
5<!-- All specifications specific for the reading and interpolating of input files are regrouped in this file.    -->
6<!-- Find below sections for file_definition, field_definition, domain_definition, grid_definition and           -->
7<!-- variable_definition.                                                                                        -->   
8<!-- Recent change:  added block to read params_sp_mip.nc (Salma Tafasca and Agnes Ducharne, November 2020)      -->
9<!--                                                                                                             --> 
10<!-- $HeadURL$          -->
11<!-- $Date$                                                      -->
12<!-- $Revision$                                                                                           -->
13<!-- =========================================================================================================== -->
14<context id="orchidee">
15
16
17  <!-- ========================================================================================================= -->
18  <!-- Definition of input files                                                                                 -->
19  <!-- The input files are activated or desactivated from the source code depending on simulation set up.        -->
20  <!-- The variables are here on the input source grid.                                                          -->
21  <!-- Different treatment are done accordig to the file.                                                        -->
22  <!-- Values higher than 1e10 are for some files considered as missing values and the field is then set to 0.   -->
23  <!-- A normalization are sometimes done with the fraction of the grid cell.                                    -->
24  <!-- Sometimes, if only missing values are found for a grid cell, then a default value is set.                 -->
25  <!-- ========================================================================================================= -->
26 
27  <file_definition>
28
29    <file id="soils_param_file" mode="read" output_freq="1y" enabled="true">
30      <field id="soilcolor" name="soilcolor" domain_ref="dom_file_soil" operation="instant" freq_offset="1ts" enabled="false"/>
31      <field id="soiltext" name="soiltext" domain_ref="dom_file_soil" operation="instant" freq_offset="1ts"/>
32    </file>
33
34    <!-- Default file name: soil_bulk_and_ph.nc for both soilbulk and soilph. The variables can be read from different files, specified in run.def
35                  This file is read in the initialization phase only if there is no restart file.
36         For soilbulk and soilph, set values lower than min_sechiba as masked values because missing values are zero in the file.
37        Renormalization will be done later using the interpolated mask.  -->
38    <file id="soilbulk_file" mode="read" output_freq="1y" enabled="true">
39      <field id="soilbulk_mask_read" name="soilbulk" domain_ref="dom_file_soilbulk" operation="instant" freq_offset="1ts" > this &gt; $min_sechiba ? 1 : 0 </field>
40      <field id="soilbulk_read" name="soilbulk" domain_ref="dom_file_soilbulk" operation="instant" freq_offset="1ts" > this &gt; $min_sechiba ? this : 0 </field>
41    </file>
42
43    <!-- Default file name: params_sp_mip.nc for both all soil hydraulic parameters. -->
44    <!--file id="soilparam_file" mode="read" output_freq="1y" enabled="true"-->
45      <!--field id="soilks" name="soilks" domain_ref="dom_file_soil" operation="instant" freq_offset="1ts" > this &gt; $min_sechiba ? 1e10 : 0 </field-->
46      <!--field id="soilnvan" name="soilnvan" domain_ref="dom_file_soil" operation="instant" freq_offset="1ts" > this &gt; $min_sechiba ? 1e10 : 0 </field-->
47      <!--field id="soilavan" name="soilavan" domain_ref="dom_file_soil" operation="instant" freq_offset="1ts" > this &gt; $min_sechiba ? 1e10 : 0 </field-->
48      <!--field id="soilmcr" name="soilmcr" domain_ref="dom_file_soil" operation="instant" freq_offset="1ts" > this &gt; $min_sechiba ? 1e10 : 0 </field-->
49      <!--field id="soilmcs" name="soilmcs" domain_ref="dom_file_soil" operation="instant" freq_offset="1ts" > this &gt; $min_sechiba ? 1e10 : 0 </field-->
50      <!--field id="soilmcfc" name="soilmcfc" domain_ref="dom_file_soil" operation="instant" freq_offset="1ts" > this &gt; $min_sechiba ? 1e10 : 0 </field-->
51      <!--field id="soilmcw" name="soilmcw" domain_ref="dom_file_soil" operation="instant" freq_offset="1ts" > this &gt; $min_sechiba ? 1e10 : 0 </field-->
52    <!--/file-->
53   
54    <file  id="PFTmap_file"  mode="read" output_freq="1y">
55      <field id="maxvegetfrac_read"  name="maxvegetfrac" domain_ref="dom_file_pft" axis_ref="nvm" operation="instant"  freq_offset="1ts"> this &lt; 1e10 ? this : 0 </field>
56      <field id="maxvegetfrac_mask"  name="maxvegetfrac" domain_ref="dom_file_pft" axis_ref="nvm" operation="instant"  freq_offset="1ts"> this &lt; 1e10 ? 1 : 0 </field>
57    </file>
58   
59    <file id="topography_file"  mode="read" output_freq="1y">
60      <!--      <field id="pente"  domain_ref="dom_file_topo"  operation="instant"  freq_offset="1ts" > (this &gt; 1e10) ? 1 : this </field>     ==> In reference, missing value are use for computing, this probably wrong -->
61      <field id="pente_read"       name="pente" domain_ref="dom_file_topo"  operation="instant"  freq_offset="1ts" > ((this/$slope_noreinf) &lt; 1)? this/$slope_noreinf : 1 </field>
62      <field id="mask_pente_read"  name="pente" domain_ref="dom_file_topo"  operation="instant"  freq_offset="1ts" > (this &lt; $min_sechiba)? 0 : 1                         </field>  <!-- create mask -->
63    </file>
64   
65    <file id="albedo_file" mode="read" output_freq="1y">
66      <field id="mask_alb_read"    name="mask"       domain_ref="dom_file_albedo"  operation="instant"  freq_offset="1ts" />
67      <field id="bg_alb_vis_read"  name="bg_alb_vis" domain_ref="dom_file_albedo"  operation="instant"  freq_offset="1ts" >  mask_alb_read &gt; 0.99 ? this : $missing_value  </field>
68      <field id="bg_alb_nir_read"  name="bg_alb_nir" domain_ref="dom_file_albedo"  operation="instant"  freq_offset="1ts" >  mask_alb_read &gt; 0.99 ? this : $missing_value  </field>
69    </file>
70   
71    <file id="lai_file" mode="read" output_freq="1y" time_counter_name="toto" cyclic="true">
72      <field id="lai_read"       name="LAI" grid_ref="lai" operation="instant"  freq_offset="1ts" > this &gt; 20 ? 0 : this </field>
73      <field id="mask_lai_read"  name="LAI" grid_ref="lai" operation="instant"  freq_offset="1ts" > this &gt; 20 ? 0 : 1    </field>  <!-- create mask -->
74    </file>
75
76    <file id="fertilizer_file" mode="read" output_freq="1y" cyclic="true">
77      <field id="N_qt_OTHER_year_read"  name="N_qt_OTHER_year" domain_ref="dom_file_fertilizer" operation="instant"  freq_offset="1ts"/>
78      <field id="N_qt_WRICE_year_read"  name="N_qt_WRICE_year" domain_ref="dom_file_fertilizer" operation="instant"  freq_offset="1ts"/>
79    </file>
80   
81    <file id="bbg_clim_file" mode="read" output_freq="1y" cyclic="true">
82      <field id="flx_co2_bbg_year_read"  name="flx_co2_bbg_year" domain_ref="dom_file_bbg_clim" operation="instant"  freq_offset="1ts"/>
83    </file>
84   
85    <file id="reftemp_file" mode="read" output_freq="1y" cyclic="true">
86      <field id="reftemp_read"  name="temperature" domain_ref="dom_file_reftemp" operation="instant"  freq_offset="1ts"/>
87    </file>
88   
89    <file id="woodharvest_file" mode="read" output_freq="1y" cyclic="true">
90      <field id="woodharvest_read"  name="woodharvest" domain_ref="dom_file_woodharvest" operation="instant"  freq_offset="1ts"/>
91    </file>
92   
93       
94    <file id="nudge_moistc" name="nudge_moistc" type="one_file" mode="read" output_freq="1d">
95      <field  id="moistc_in" name="moistc" operation="instant" grid_ref="grid_file_moistc" freq_offset="1ts" > (this &gt; 1e10) ? 0 : this </field>
96      <field  id="mask_moistc_in" name="moistc" operation="instant" grid_ref="grid_file_moistc" freq_offset="1ts" > (this &gt; 1e10) ? 0 : 1 </field>
97    </file>
98   
99    <file id="nudge_snow" name="nudge_snow" type="one_file" mode="read" output_freq="1d">
100      <field  id="snowdz_in" name="snowdz" operation="instant" grid_ref="grid_file_snow" freq_offset="1ts" > (this &gt; 1e10) ? 0 : this </field>
101      <field  id="snowrho_in" name="snowrho" operation="instant" grid_ref="grid_file_snow" freq_offset="1ts" > (this &gt; 1e10) ? 0 : this </field>
102      <field  id="snowtemp_in" name="snowtemp" operation="instant" grid_ref="grid_file_snow" freq_offset="1ts" > (this &gt; 1e10) ? 0 : this </field>
103      <field  id="mask_snow_in" name="snowdz" operation="instant" grid_ref="grid_file_snow" freq_offset="1ts" > (this &gt; 1e10) ? 0 : 1 </field>
104    </file>
105   
106  </file_definition>
107
108
109  <!-- ========================================================================================================= -->
110  <!-- Definition of all field coming from files but now interpolated to the model grid.                         -->
111  <!-- ========================================================================================================= -->
112
113  <field_definition>
114
115    <field_group enabled="false" read_access="true">
116
117      <field_group id="soil_color" enabled="false">
118        <field id="soilcolor0" field_ref="soilcolor" domain_ref="dom_from_soil" > soilcolor == 0 </field>
119        <field id="soilcolor1" field_ref="soilcolor" domain_ref="dom_from_soil" > soilcolor == 1 </field>
120        <field id="soilcolor2" field_ref="soilcolor" domain_ref="dom_from_soil" > soilcolor == 2 </field>
121        <field id="soilcolor3" field_ref="soilcolor" domain_ref="dom_from_soil" > soilcolor == 3 </field>
122        <field id="soilcolor4" field_ref="soilcolor" domain_ref="dom_from_soil" > soilcolor == 4 </field>
123        <field id="soilcolor5" field_ref="soilcolor" domain_ref="dom_from_soil" > soilcolor == 5 </field>
124        <field id="soilcolor6" field_ref="soilcolor" domain_ref="dom_from_soil" > soilcolor == 6 </field>
125        <field id="soilcolor7" field_ref="soilcolor" domain_ref="dom_from_soil" > soilcolor == 7 </field>
126        <field id="soilcolor8" field_ref="soilcolor" domain_ref="dom_from_soil" > soilcolor == 8 </field>
127        <field id="soilcolor9" field_ref="soilcolor" domain_ref="dom_from_soil" > soilcolor == 9 </field>
128      </field_group>
129
130      <field_group id="soil_text" field_ref="soiltext" domain_ref="dom_from_soil" enabled="true" read_access="true">
131        <field id="soiltext1"  > soiltext == 1 </field>
132        <field id="soiltext2"  > soiltext == 2 </field>
133        <field id="soiltext3"  > soiltext == 3 </field>
134        <field id="soiltext4"  > soiltext == 4 </field>
135        <field id="soiltext5"  > soiltext == 5 </field>
136        <field id="soiltext6"  > soiltext == 6 </field>
137        <field id="soiltext7"  > soiltext == 7 </field>
138        <field id="soiltext8"  > soiltext == 8 </field>
139        <field id="soiltext9"  > soiltext == 9 </field>
140        <field id="soiltext10" > soiltext == 10 </field>
141        <field id="soiltext11" > soiltext == 11 </field>
142        <field id="soiltext12" > soiltext == 12 </field>
143        <field id="soiltext13" > soiltext == 13 </field>
144      </field_group>
145
146      <!-- If soilbulk_mask .gt. min_sechiba, then renormalize by dividing with soilbulk_mask else set bulk_default.
147      soilbulk_mask interpolated to the model grid corresponds to the fraction of the grid cell covered by non-masked
148      values in the input file. Where soilbulk_mask=0, no data where found on the source grid. -->
149      <field id="soilbulk_tmp"  field_ref="soilbulk_read" domain_ref="dom_from_soilbulk" />
150      <field id="soilbulk_mask" field_ref="soilbulk_mask_read" domain_ref="dom_from_soilbulk" read_access="true" enabled="true" />
151      <field id="soilbulk"      field_ref="soilbulk_tmp"  domain_ref="dom_from_soilbulk" read_access="true" enabled="true"  > soilbulk_mask &gt; $min_sechiba ? soilbulk_tmp/(soilbulk_mask+1e-100) : $bulk_default </field>
152     
153      <field id="frac_veget"      field_ref="maxvegetfrac_read" domain_ref="dom_from_pft" read_access="true" enabled="true" />
154      <field id="frac_veget_frac" field_ref="maxvegetfrac_mask" domain_ref="dom_from_pft" read_access="true" enabled="true" />
155
156      <field id="slope_tmp"           field_ref="pente_read"       domain_ref="dom_from_topo_read"                                  />
157      <field id="frac_slope_interp"   field_ref="mask_pente_read"  domain_ref="dom_from_topo_read" read_access="true" enabled="true"/>
158      <field id="reinf_slope_interp"                               domain_ref="dom_from_topo" read_access="true" enabled="true"> (frac_slope_interp &gt; $min_sechiba ) ? 1-slope_tmp/(frac_slope_interp+1e-100) : $slope_default </field>
159
160      <field id="bg_alb_vis_tmp"   field_ref="bg_alb_vis_read"  domain_ref="dom_from_albedo"  />
161      <field id="bg_alb_vis_interp" field_ref="bg_alb_vis_tmp"  read_access="true" enabled="true" > this == $missing_value ? $albbg_vis_default : this </field>
162
163      <field id="bg_alb_nir_tmp"    field_ref="bg_alb_nir_read"  domain_ref="dom_from_albedo"  />
164      <field id="bg_alb_nir_interp" field_ref="bg_alb_nir_tmp"  read_access="true"  enabled="true" >  this == $missing_value ? $albbg_nir_default : this </field>
165     
166      <field id="lai_tmp"          field_ref="lai_read"      grid_ref="grid_from_lai" />
167      <field id="frac_lai_interp"  field_ref="mask_lai_read" grid_ref="grid_from_lai" read_access="true" enabled="true" />
168      <field id="lai_interp"       field_ref="lai_tmp"                           read_access="true" enabled="true"  >  lai_tmp/(frac_lai_interp+1e-100) </field>  <!-- renormalize -->
169     
170      <field id="N_qt_WRICE_year_interp"  field_ref="N_qt_WRICE_year_read"  domain_ref="dom_from_fertilizer" read_access="true" enabled="true" />
171      <field id="N_qt_OTHER_year_interp"  field_ref="N_qt_OTHER_year_read"  domain_ref="dom_from_fertilizer" read_access="true" enabled="true" />
172     
173      <field id="flx_co2_bbg_year_interp"  field_ref="flx_co2_bbg_year_read"  domain_ref="dom_from_bbg_clim" read_access="true" enabled="true" />
174
175      <field id="reftemp_interp"  field_ref="reftemp_read"  domain_ref="dom_from_reftemp" read_access="true" enabled="true" />
176
177      <field id="woodharvest_interp"  field_ref="woodharvest_read"  domain_ref="dom_from_woodharvest" read_access="true" enabled="true" />
178     
179    </field_group>
180
181    <field_group id="orchidee_input_mc" grid_ref="grid_nslm_nstm_read">
182      <!-- Interpolate the mask. This gives now the fraction of the source area underlaying the model grid cell -->
183      <field id="mask_moistc_interp" field_ref="mask_moistc_in" read_access="true" />
184      <!-- Interpolate the variable. Note that where the source file had missing values, the variables was set to 0. Therefor normalization is needed.     -->
185      <!-- Normalize the interpolated values with the mask which corresponds to the fraction of underlaying valid source grid cells.                       -->
186      <!-- The default value 0.2 is used if the mask is 0. This is the case if no information at all was found on the source grid for the model grid cell. -->
187      <field id="moistc_tmp" field_ref="moistc_in"  />
188      <field id="moistc_interp" field_ref="moistc_tmp" read_access="true" > (mask_moistc_interp &lt; 1e-4) ? 0.2 : this/(mask_moistc_interp+1e-100) </field>
189    </field_group>
190
191    <field_group id="orchidee_input_snow" grid_ref="grid_nsnow2" >
192      <field id="mask_snow_interp" field_ref="mask_snow_in" read_access="true" />
193      <field id="snowdz_tmp" field_ref="snowdz_in" />
194      <!-- Set snowdz=0 where no information found on source grid, for all other points normlize with the fracion of underlaying source grid cells      -->
195      <field id="snowdz_interp" field_ref="snowdz_tmp" read_access="true" > (mask_snow_interp &lt; 1e-4) ? 0 : this/(mask_snow_interp+1e-100) </field>
196      <field id="snowrho_tmp" field_ref="snowrho_in" />
197      <!-- Set snowrho=50 where no information found on source grid, for all other points normlize with the fracion of underlaying source grid cells    -->
198      <field id="snowrho_interp" field_ref="snowrho_tmp" read_access="true" > (mask_snow_interp &lt; 1e-4) ? 50 : this/(mask_snow_interp+1e-100) </field>
199      <field id="snowtemp_tmp" field_ref="snowtemp_in" />
200      <!-- Set snowtemp=273 where no information found on source grid, for all other points normlize with the fracion of underlaying source grid cells  -->
201      <field id="snowtemp_interp" field_ref="snowtemp_tmp" read_access="true" > (mask_snow_interp &lt; 1e-4) ? 273 : this/(mask_snow_interp+1e-100) </field>
202    </field_group>
203 
204  </field_definition>
205
206
207
208  <!-- =========================================================================================================== -->
209  <!-- Definition of a horizontal domain for each input file                                                       -->
210  <!-- 2 different domains are specified for each input file X: dom_file_X and dom_from_X                          -->
211  <!--                                                                                                             -->
212  <!-- dom_file_X is the horizontal original grid in the input file. In this domain, specifications to help XIOS   -->
213  <!-- read the grid can be added such as generate_rectilinear_domain                                              -->
214  <!--                                                                                                             -->
215  <!-- dom_from_X describes how to make the interpolation from the file to the model grid. This domain contains    -->
216  <!-- the interpolation methode specific to the file.                                                             -->
217  <!--                                                                                                             -->
218  <!-- If the variable contains more dimensions than the horizontal domain and 1 axis, 2 grids must be specified:  -->
219  <!-- One for the orignial grid in the input file and one for the interpolation to model grid. These two grids    -->
220  <!-- uses 2 domains specified as above.                                                                          -->
221  <!-- We here suppose that the interpolation is only done on the horizontal domain                                -->
222  <!-- =========================================================================================================== -->
223
224  <domain_definition>
225
226    <domain id="dom_file_moistc" type="rectilinear">
227      <generate_rectilinear_domain />
228    </domain>
229   
230    <domain id="dom_file_snow" type="rectilinear">
231      <generate_rectilinear_domain />
232    </domain>
233   
234    <domain id="dom_from_soil" domain_ref="domain_landpoints">
235      <interpolate_domain order="1" renormalize="false"/>
236    </domain>
237
238    <domain id="dom_from_soilbulk" domain_ref="domain_landpoints">
239    <interpolate_domain order="1" renormalize="false" />
240    </domain>
241
242    <domain id="dom_from_pft" domain_ref="domain_landpoints">
243      <interpolate_domain order="1" renormalize="false" />
244    </domain>
245   
246    <domain id="dom_from_topo" domain_ref="domain_landpoints">
247    </domain>
248   
249    <domain id="dom_from_topo_read" domain_ref="domain_landpoints">
250      <interpolate_domain order="1" renormalize="false" />
251    </domain>
252
253    <domain id="dom_from_albedo" domain_ref="domain_landpoints">
254      <interpolate_domain order="1" renormalize="true" detect_missing_value="true"/>
255    </domain>
256   
257    <domain id="dom_from_lai" domain_ref="domain_landpoints">
258      <interpolate_domain order="1" renormalize="false" />
259    </domain>
260   
261    <domain id="dom_from_bbg_clim" domain_ref="domain_landpoints">
262      <interpolate_domain order="1" renormalize="false" />
263    </domain>
264   
265    <domain id="dom_from_fertilizer" domain_ref="domain_landpoints">
266      <interpolate_domain order="1" renormalize="false" />
267    </domain>
268   
269    <domain id="dom_from_reftemp" domain_ref="domain_landpoints">
270      <interpolate_domain order="1" renormalize="false" />
271    </domain>
272   
273    <domain id="dom_from_woodharvest" domain_ref="domain_landpoints">
274      <interpolate_domain order="1" renormalize="false" />
275    </domain>
276   
277    <domain id="dom_file_soil" type="rectilinear">
278      <!-- generate_rectilinear_domain bounds_lon_start="-180" bounds_lon_end="180" bounds_lat_start="-90" bounds_lat_end="90"/-->
279      <generate_rectilinear_domain bounds_lon_start="-180" bounds_lon_end="180" bounds_lat_start="90" bounds_lat_end="-90"/>
280    </domain>
281
282    <domain id="dom_file_soilbulk" type="rectilinear">
283    <generate_rectilinear_domain bounds_lon_start="-180" bounds_lon_end="180" bounds_lat_start="90" bounds_lat_end="-90"/>/>
284    </domain>
285   
286    <domain id="dom_file_pft" type="rectilinear">
287      <generate_rectilinear_domain/>
288    </domain>
289   
290    <domain id="dom_file_topo" type="rectilinear">
291      <generate_rectilinear_domain/>
292    </domain>
293   
294    <domain id="dom_file_albedo" type="rectilinear">
295      <generate_rectilinear_domain />
296    </domain>
297   
298    <domain id="dom_file_lai" type="rectilinear">
299      <generate_rectilinear_domain/>
300    </domain>
301   
302    <domain id="dom_file_bbg_clim" type="rectilinear">
303      <generate_rectilinear_domain/>
304    </domain>
305   
306    <domain id="dom_file_fertilizer" type="rectilinear">
307      <generate_rectilinear_domain/>
308    </domain>
309
310    <domain id="dom_file_reftemp" type="rectilinear">
311      <generate_rectilinear_domain bounds_lon_start="-180" bounds_lon_end="180" bounds_lat_start="90" bounds_lat_end="-90"/>
312    </domain>
313
314    <domain id="dom_file_woodharvest" type="rectilinear">
315      <generate_rectilinear_domain/>
316    </domain>
317   
318  </domain_definition>
319
320
321  <!-- =========================================================================================================== -->
322  <!-- Definition of input grids and interpolated grids                                                            -->
323  <!-- =========================================================================================================== -->
324
325  <grid_definition>
326
327    <grid id="grid_file_moistc">
328      <domain domain_ref="dom_file_moistc"/>
329      <axis axis_ref="nslm" />
330      <axis axis_ref="nstm" />
331    </grid> 
332
333    <grid id="grid_file_snow">
334      <domain domain_ref="dom_file_snow"/>
335      <axis axis_ref="nsnow" />
336    </grid> 
337   
338    <grid id="grid_from_lai">
339      <domain domain_ref="dom_from_lai" />
340      <axis axis_ref="nvm" />
341      <axis axis_ref="lai_time" />
342    </grid>
343   
344    <grid id="lai">
345      <domain domain_ref="dom_file_lai" />
346      <axis axis_ref="nvm" />
347      <axis axis_ref="lai_time" />
348    </grid>
349   
350    <grid id="grid_nsnow2">
351      <domain domain_ref="domain_landpoints" >
352        <interpolate_domain order="1"/>
353      </domain>
354      <axis axis_ref="nsnow" />
355    </grid>
356
357  </grid_definition>
358 
359 
360  <!-- =========================================================================================================== -->
361  <!-- Variable denfinition needed for interpolation of input files                                                -->
362  <!-- The values for below variables are set from the fortran code.                                               -->
363  <!-- =========================================================================================================== -->
364
365  <variable_definition>
366   
367    <variable id="slope_default" type="double">xxx</variable>
368    <variable id="slope_noreinf" type="double">xxx</variable>
369    <variable id="min_sechiba" type="double">xxx</variable>
370    <variable id="albbg_vis_default" type="double">xxx</variable>
371    <variable id="albbg_nir_default" type="double">xxx</variable>
372    <variable id="bulk_default" type="double">xxx</variable>
373   
374  </variable_definition>
375 
376
377</context>
Note: See TracBrowser for help on using the repository browser.