cdfwindow −− passes segments of fields within a domain specified by the command line arguments
cdfwindow dim_name1 lower_limit1 upper_limit1 [dim_name2 ... upper_limit3]
Cdfwindow expects a common data format file on the standard input. A modified file is written to the standard output. The command line specifies 1 to 3 dimension names and associated domain limits. Only data occurring over these limits are included in the output. Domain limits are converted to limiting indices by comparison with index fields in the static slice. If a dimension is not mentioned, the output domain is the same as the input domain for that dimension. Cdfwindow also updates the parameters so that dim_name1_0 contains the value lower_limit1, etc.
If the domain limits exceed the bounds defined by the index fields, the domain is extended to the specified limits, filling non-existent data with the bad data value. The index fields are extended using the grid cell size index parameter. Thus, if the initial grid has uniform cell sizes, the extended grid is consistent in cell size with the existing grid. If the specified grid limits are inconsistent with the extended grid, the actual limits are changed to the values associated with the nearest grid point. The domain expansion feature allows a common domain to be defined for different data sets.
kestrel%cdfwindow x −8 8 y 5 20 < input_file > output_file
This example would extract data that is defined over −8 <= x <= 8 and 5 <= y <= 20. If (for instance) the z dimension is defined in the input file, the entire z domain would be passed.
If index fields corresponding to the dimension names invoked on the command line don’t exist, cdfwindow has no way of converting a physical range in the corresponding dimension to indices over the field arrays, and the program fails.
Extending the domain limits beyond existing data works in the case of an uneven grid, but may not yield a sensible result, as there is no way to guess how the user would like to extend the grid in this case.