| 1 |
netcdf fixed-point { |
|---|
| 2 |
|
|---|
| 3 |
// This is a fixed-point station with dependent variables |
|---|
| 4 |
// measured by sensors at different heights. Z constant for a given sensor. |
|---|
| 5 |
// All sensors are sampling at the same time. |
|---|
| 6 |
// (1) x and y and sensor-specific z are repeated for each time. |
|---|
| 7 |
// (2) Assign z dimension equal to number of z levels |
|---|
| 8 |
// (3) Assign values for z levels in the data section |
|---|
| 9 |
// (4) Use variable attribute called "z" under dependent variable to |
|---|
| 10 |
// associate specific z of point measurment |
|---|
| 11 |
// (5) Use z variable to describe all the required attributes |
|---|
| 12 |
// without having to repeat under each dependent variable |
|---|
| 13 |
// |
|---|
| 14 |
// Adding QC variables and attributes for wind and sst |
|---|
| 15 |
|
|---|
| 16 |
dimensions: |
|---|
| 17 |
time = 4; |
|---|
| 18 |
lon = 1; |
|---|
| 19 |
lat = 1; |
|---|
| 20 |
z = 3; |
|---|
| 21 |
|
|---|
| 22 |
variables: |
|---|
| 23 |
|
|---|
| 24 |
// INDEPENDENT VARIABLES |
|---|
| 25 |
long time(time); |
|---|
| 26 |
time: long_name = "Sample Time"; |
|---|
| 27 |
time: standard_name = "time"; |
|---|
| 28 |
time: units = "sec since 1970-1-1 00:00:00"; |
|---|
| 29 |
time: axis = "T"; |
|---|
| 30 |
float lon(lon); |
|---|
| 31 |
lon: long_name = "longitude in decimal degrees"; |
|---|
| 32 |
lon: standard_name = "longitude"; |
|---|
| 33 |
lon: units = "degrees_east" ; |
|---|
| 34 |
lon: reference = "geographical coordinates" ; |
|---|
| 35 |
lon: axis = "X"; |
|---|
| 36 |
lon: valid_range = -90.,90.; |
|---|
| 37 |
float lat(lat); |
|---|
| 38 |
lat: long_name = "latitude in decimal degrees"; |
|---|
| 39 |
lat: standard_name = "latitude"; |
|---|
| 40 |
lat: units = "degrees_east"; |
|---|
| 41 |
lat: reference = "geographical coordinates"; |
|---|
| 42 |
lat: axis = "Y"; |
|---|
| 43 |
lat: valid_range = -180.,180.; |
|---|
| 44 |
float z(z); |
|---|
| 45 |
z: long_name = "Height"; |
|---|
| 46 |
z: standard_name = "height"; |
|---|
| 47 |
z: units = "m"; |
|---|
| 48 |
z: reference = "mean sea level (MSL)"; |
|---|
| 49 |
z: positive = "up"; |
|---|
| 50 |
z: axis = "Z"; |
|---|
| 51 |
|
|---|
| 52 |
// DEPENDENT VARIABLES |
|---|
| 53 |
float wspd(time); |
|---|
| 54 |
wspd: long_name = "Wind Speed"; |
|---|
| 55 |
wspd: standard_name = "wind_speed"; |
|---|
| 56 |
wspd: units = "m s-1"; |
|---|
| 57 |
wspd: z = 45; |
|---|
| 58 |
float wdir(time); |
|---|
| 59 |
wdir: long_name= "Wind Direction (from)"; |
|---|
| 60 |
wdir: standard_name = "wind_from_direction"; |
|---|
| 61 |
wdir: units = "degrees"; |
|---|
| 62 |
wdir: reference = "clockwise from true north"; |
|---|
| 63 |
wdir: valid_range = 0.,360.; |
|---|
| 64 |
wdir: z = 45; |
|---|
| 65 |
float SST(time); |
|---|
| 66 |
SST: long_name = "Sea Surface Temperature"; |
|---|
| 67 |
SST: standard_name = "sea_surface_temperature"; |
|---|
| 68 |
SST: units = "degrees Celsius"; |
|---|
| 69 |
SST: z = -5; |
|---|
| 70 |
|
|---|
| 71 |
// DEPENDENT QC VARIABLES |
|---|
| 72 |
**int _qcflag(**time) |
|---|
| 73 |
** _qcflag: sensor_units = "degrees Celsius"; |
|---|
| 74 |
_qcflag: sensor_accuracy=".01"; |
|---|
| 75 |
_qcflag: sensor_resolution=".001"; |
|---|
| 76 |
|
|---|
| 77 |
int SST_qcflag(time) |
|---|
| 78 |
SST_qcflag: long_name = "QC metadata for SST"; |
|---|
| 79 |
SST_qcflag: standard_name = "temperature_qcflag"; |
|---|
| 80 |
SST_qcflag: sensor_manufacturer="YSI"; |
|---|
| 81 |
SST_qcflag: sensor_model="44034"; |
|---|
| 82 |
SST_qcflag: sensor_serial_num="21007"; |
|---|
| 83 |
SST_qcflag: sensor_units = "degrees Celsius"; |
|---|
| 84 |
SST_qcflag: sensor_accuracy=".01"; |
|---|
| 85 |
SST_qcflag: sensor_resolution=".001"; |
|---|
| 86 |
SST_qcflag: dependency = "measurement"; |
|---|
| 87 |
SST_qcflag: reference="none"; |
|---|
| 88 |
SST_qcflag: sensor_range=."-50.,50."; |
|---|
| 89 |
SST_qcflag: gross_range="15.,34."; |
|---|
| 90 |
SST_qcflag: climatological_range="20.,30."; |
|---|
| 91 |
|
|---|
| 92 |
SST_qcflag: sampling_interval="6"; |
|---|
| 93 |
SST_qcflag: sampling_units ="minutes"; |
|---|
| 94 |
SST_qcflag: sample_averaging_interval="0"; |
|---|
| 95 |
SST_qcflag: sample_averaging_units="minutes"; |
|---|
| 96 |
SST_qcflag: reporting_interval="60"; |
|---|
| 97 |
SST_qcflag: reporting_units ="minutes"; |
|---|
| 98 |
|
|---|
| 99 |
SST_qcflag: physical_calibration="yes"; |
|---|
| 100 |
SST_qcflag: last_cal_date="21-Oct-2000"; |
|---|
| 101 |
|
|---|
| 102 |
int SST_qcflag_aggregrate(time) |
|---|
| 103 |
SST_qcflag_aggregrate: long_name = "Aggregrate QC Flag for SST"; |
|---|
| 104 |
SST_qcflag_aggregrate: standard_name = "temperature_qc_aggregrate"; |
|---|
| 105 |
|
|---|
| 106 |
int SST_qcflag_data_availability(time) |
|---|
| 107 |
SST_qcflag_data_availability: long_name = "Data Availability QC Flag for SST"; |
|---|
| 108 |
SST_qcflag_data_availability: standard_name = "temperature_qcflag_data_availability"; |
|---|
| 109 |
|
|---|
| 110 |
int SST_qcflag_sensor_range(time) |
|---|
| 111 |
SST_qcflag_sensor_range: long_name = "Sensor Range QC Flag for SST"; |
|---|
| 112 |
SST_qcflag_sensor_range: standard_name = "temperature_qc_sensor_range"; |
|---|
| 113 |
|
|---|
| 114 |
int SST_qcflag_gross_range(time) |
|---|
| 115 |
SST_qcflag_gross_range: long_name = "Gross Range QC Flag for SST"; |
|---|
| 116 |
SST_qcflag_gross_range: standard_name = "temperature_qc_gross_range"; |
|---|
| 117 |
|
|---|
| 118 |
int SST_qcflag_climatological_range(time) |
|---|
| 119 |
SST_qcflag_climatological_range: long_name = "Climatological Range QC Flag for SST"; |
|---|
| 120 |
SST_qcflag_climatological_range: standard_name = "temperature_qc_climatological_range"; |
|---|
| 121 |
|
|---|
| 122 |
int SST_qcflag_rate_of_change(time) |
|---|
| 123 |
SST_qcflag_rate_of_change: long_name = "Climatological Range QC Flag for SST"; |
|---|
| 124 |
SST_qcflag_rate_of_change: standard_name = "temperature_qc_rate_of_change"; |
|---|
| 125 |
|
|---|
| 126 |
int wspd_qcflag(time) |
|---|
| 127 |
wspd_qcflag: long_name = "QC metadata for wspd"; |
|---|
| 128 |
wspd_qcflag: standard_name = "wind_speed_qcflag"; |
|---|
| 129 |
wspd_qcflag: sensor_manufacturer="RM Young"; |
|---|
| 130 |
wspd_qcflag: sensor_model="05106"; |
|---|
| 131 |
wspd_qcflag: sensor_serial_num="58973"; |
|---|
| 132 |
wspd_qcflag: sensor_units="m s-1"; |
|---|
| 133 |
wspd_qcflag: sensor_accuracy="1.0"; |
|---|
| 134 |
wspd_qcflag: sensor_resolution=".1"; |
|---|
| 135 |
wspd_qcflag: dependency = "measurement"; |
|---|
| 136 |
wspd_qcflag: reference="none"; |
|---|
| 137 |
wspd_qcflag: sensor_range="0.,60."; |
|---|
| 138 |
wspd_qcflag: gross_range="0.,50"; |
|---|
| 139 |
wspd_qcflag: climatological_range="0.,30."; |
|---|
| 140 |
|
|---|
| 141 |
wspd_qcflag: sampling_interval="6"; |
|---|
| 142 |
wspd_qcflag: sampling_units ="minutes"; |
|---|
| 143 |
wspd_qcflag: sample_averaging_interval="1"; |
|---|
| 144 |
wspd_qcflag: sample_averaging_units="minutes"; |
|---|
| 145 |
wspd_qcflag: reporting_interval="60"; |
|---|
| 146 |
wspd_qcflag: reporting_units ="minutes"; |
|---|
| 147 |
|
|---|
| 148 |
wspd_qcflag: physical_calibration="yes"; |
|---|
| 149 |
wspd_qcflag: last_cal_date="21-Oct-2000"; |
|---|
| 150 |
|
|---|
| 151 |
int wspd_qcflag_aggregrate(time) |
|---|
| 152 |
wspd_qcflag_aggregrate: long_name = "Aggregrate QC Flag for wspd"; |
|---|
| 153 |
wspd_qcflag_aggregrate: standard_name = "wind_speed_qc_aggregrate"; |
|---|
| 154 |
|
|---|
| 155 |
int wspd_qcflag_data_availability(time) |
|---|
| 156 |
wspd_qcflag_data_availability: long_name = "Data Availability QC Flag for wspd"; |
|---|
| 157 |
wspd_qcflag_data_availability: standard_name = "wind_speed_qcflag_data_availability"; |
|---|
| 158 |
|
|---|
| 159 |
int wspd_qcflag_sensor_range(time) |
|---|
| 160 |
wspd_qcflag_sensor_range: long_name = "Sensor Range QC Flag for wspd"; |
|---|
| 161 |
wspd_qcflag_sensor_range: standard_name = "wind_speed_qc_sensor_range"; |
|---|
| 162 |
|
|---|
| 163 |
int wspd_qcflag_gross_range(time) |
|---|
| 164 |
wspd_qcflag_gross_range: long_name = "Gross Range QC Flag for wspd"; |
|---|
| 165 |
wspd_qcflag_gross_range: standard_name = "wind_speed_qc_gross_range"; |
|---|
| 166 |
|
|---|
| 167 |
int wspd_qcflag_climatological_range(time) |
|---|
| 168 |
wspd_qcflag_climatological_range: long_name = "Climatological Range QC Flag for wspd"; |
|---|
| 169 |
wspd_qcflag_climatological_range: standard_name = "wind_speed_qc_climatological_range"; |
|---|
| 170 |
|
|---|
| 171 |
int wspd_qcflag_rate_of_change(time) |
|---|
| 172 |
wspd_qcflag_rate_of_change: long_name = "Climatological Range QC Flag for wspd"; |
|---|
| 173 |
wspd_qcflag_rate_of_change: standard_name = "wind_speed_qc_rate_of_change"; |
|---|
| 174 |
|
|---|
| 175 |
int wdir_qcflag(time) |
|---|
| 176 |
wdir_qcflag: long_name = "QC metadata for wdir"; |
|---|
| 177 |
wdir_qcflag: standard_name = "wind_direction_from_qcflag"; |
|---|
| 178 |
wdir_qcflag: sensor_manufacturer="RM Young"; |
|---|
| 179 |
wdir_qcflag: sensor_model="05106"; |
|---|
| 180 |
wdir_qcflag: sensor_serial_num="58973"; |
|---|
| 181 |
wdir_qcflag: sensor_units="degrees"; |
|---|
| 182 |
wdir_qcflag: sensor_accuracy="1.0"; |
|---|
| 183 |
wdir_qcflag: sensor_resolution=".1"; |
|---|
| 184 |
wdir_qcflag: dependency = "measurement"; |
|---|
| 185 |
wdir_qcflag: reference="from true North"; |
|---|
| 186 |
wdir_qcflag: sensor_range="0.,360."; |
|---|
| 187 |
wdir_qcflag: gross_range="0.,360"; |
|---|
| 188 |
wdir_qcflag: climatological_range="0.,360."; |
|---|
| 189 |
|
|---|
| 190 |
wdir_qcflag: sampling_interval="6"; |
|---|
| 191 |
wdir_qcflag: sampling_units ="minutes"; |
|---|
| 192 |
wdir_qcflag: sample_averaging_interval="1"; |
|---|
| 193 |
wdir_qcflag: sample_averaging_units="minutes"; |
|---|
| 194 |
wdir_qcflag: reporting_interval="60"; |
|---|
| 195 |
wdir_qcflag: reporting_units ="minutes"; |
|---|
| 196 |
|
|---|
| 197 |
wdir_qcflag: physical_calibration="yes"; |
|---|
| 198 |
wdir_qcflag: last_cal_date="21-Oct-2000"; |
|---|
| 199 |
|
|---|
| 200 |
int wdir_qcflag_aggregrate(time) |
|---|
| 201 |
wdir_qcflag_aggregrate: long_name = "Aggregrate QC Flag for wdir"; |
|---|
| 202 |
wdir_qcflag_aggregrate: standard_name = "wind_direction_from_qc_aggregrate"; |
|---|
| 203 |
|
|---|
| 204 |
int wdir_qcflag_data_availability(time) |
|---|
| 205 |
wdir_qcflag_data_availability: long_name = "Data Availability QC Flag for wdir"; |
|---|
| 206 |
wdir_qcflag_data_availability: standard_name = "wind_direction_from_qcflag_data_availability"; |
|---|
| 207 |
|
|---|
| 208 |
int wdir_qcflag_sensor_range(time) |
|---|
| 209 |
wdir_qcflag_sensor_range: long_name = "Sensor Range QC Flag for wdir"; |
|---|
| 210 |
wdir_qcflag_sensor_range: standard_name = "wind_direction_from_qc_sensor_range"; |
|---|
| 211 |
|
|---|
| 212 |
int wdir_qcflag_gross_range(time) |
|---|
| 213 |
wdir_qcflag_gross_range: long_name = "Gross Range QC Flag for wdir"; |
|---|
| 214 |
wdir_qcflag_gross_range: standard_name = "wind_direction_from_qc_gross_range"; |
|---|
| 215 |
|
|---|
| 216 |
int wdir_qcflag_climatological_range(time) |
|---|
| 217 |
wdir_qcflag_climatological_range: long_name = "Climatological Range QC Flag for wdir"; |
|---|
| 218 |
wdir_qcflag_climatological_range: standard_name = "wind_direction_from_qc_climatological_range"; |
|---|
| 219 |
|
|---|
| 220 |
int wdir_qcflag_rate_of_change(time) |
|---|
| 221 |
wdir_qcflag_rate_of_change: long_name = "Climatological Range QC Flag for wdir"; |
|---|
| 222 |
wdir_qcflag_rate_of_change: standard_name = "wind_direction_from_qc_rate_of_change"; |
|---|
| 223 |
|
|---|
| 224 |
// GLOBAL ATTRIBUTES: |
|---|
| 225 |
// (use all for adopted SEACOOS CDL v2.0, |
|---|
| 226 |
// changes below represent differences from v2.0 to v3.0) |
|---|
| 227 |
:format_category = "fixed-point"; |
|---|
| 228 |
:Conventions = "CF-1.0, SEACOOS-CDL-v3.0"; |
|---|
| 229 |
:missing_value = -9999; // now required |
|---|
| 230 |
|
|---|
| 231 |
// DATA |
|---|
| 232 |
|
|---|
| 233 |
data: |
|---|
| 234 |
|
|---|
| 235 |
time = 1062804600,1062808200,1062810000,1062811800; |
|---|
| 236 |
lon = -82.543; |
|---|
| 237 |
lat = 18.462702; |
|---|
| 238 |
z = 45, 24, -5; |
|---|
| 239 |
|
|---|
| 240 |
wspd = 9.80, 12.63, 16.52, 18.97; |
|---|
| 241 |
wdir = 88.8,103.6,112.7,105.0; |
|---|
| 242 |
SST = 28.11, 28.17, 28.17, 28.35; |
|---|
| 243 |
|
|---|
| 244 |
wspd_qcflag_aggregrate = 3,3,3,3; |
|---|
| 245 |
wspd_qcflag_data_availability = 1,1,1,1; |
|---|
| 246 |
wspd_qcflag_sensor_range = 1,1,1,1; |
|---|
| 247 |
wspd_qcflag_gross_range = 1,1,1,1; |
|---|
| 248 |
wspd_qcflag_climatological_range = -1,-1,-1,-1; |
|---|
| 249 |
wspd_qcflage_rate_of_change = 1,1,1,1; |
|---|
| 250 |
|
|---|
| 251 |
wdir_qcflag_aggregrate = 3,3,3,3; |
|---|
| 252 |
wdir_qcflag_data_availability = 1,1,1,1; |
|---|
| 253 |
wdir_qcflag_sensor_range = 1,1,1,1; |
|---|
| 254 |
wdir_qcflag_gross_range = 1,1,1,1; |
|---|
| 255 |
wdir_qcflag_climatological_range = -1,-1,-1,-1; |
|---|
| 256 |
wdir_qcflage_rate_of_change = 1,1,1,1; |
|---|
| 257 |
|
|---|
| 258 |
SST_qcflag_aggregrate = 3,3,3,3; |
|---|
| 259 |
SST_qcflag_data_availability = 1,1,1,1; |
|---|
| 260 |
SST_qcflag_sensor_range = 1,1,1,1; |
|---|
| 261 |
SST_qcflag_gross_range = 1,1,1,1; |
|---|
| 262 |
SST_qcflag_climatological_range = -1,-1,-1,-1; |
|---|
| 263 |
SST_qcflag_rate_of_change = 1,1,1,1; |
|---|
| 264 |
|
|---|
| 265 |
|
|---|
| 266 |
} |
|---|