netcdf sgpaostapE13.b1.20180417.000000 { dimensions: time = UNLIMITED ; // (86123 currently) spot = 10 ; variables: int base_time ; base_time:string = "2018-04-17 00:00:00 0:00" ; base_time:long_name = "Base time in Epoch" ; base_time:units = "seconds since 1970-1-1 0:00:00 0:00" ; base_time:ancillary_variables = "time_offset" ; double time_offset(time) ; time_offset:long_name = "Time offset from base_time" ; time_offset:units = "seconds since 2018-04-17 00:00:00 0:00" ; time_offset:ancillary_variables = "base_time" ; double time(time) ; time:long_name = "Time offset from midnight" ; time:units = "seconds since 2018-04-17 00:00:00 0:00" ; time:standard_name = "time" ; int record_type(time) ; record_type:long_name = "Record type shown in the raw data" ; record_type:units = "unitless" ; record_type:missing_value = -9999 ; int status_flags(time) ; status_flags:long_name = "Instrument status flags" ; status_flags:units = "unitless" ; status_flags:flag_meanings = "filter_change flow_error b_tr_alarm b_tr_warn g_tr_alarm g_tr_warn r_tr_alarm r_tr_warn lamp_filter_err temp_error case_temp_unstable" ; status_flags:flag_masks = 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 ; status_flags:bit_1_description = "Filter change" ; status_flags:bit_2_description = "Flow error" ; status_flags:bit_3_description = "Blue transmittance less than 0.7" ; status_flags:bit_4_description = "Blue transmittance less than 0.5" ; status_flags:bit_5_description = "Green transmittance less than 0.7" ; status_flags:bit_6_description = "Green transmittance less than 0.5" ; status_flags:bit_7_description = "Red transmittance less than 0.7" ; status_flags:bit_8_description = "Red transmittance less than 0.5" ; status_flags:bit_9_description = "Lamp or filter error" ; status_flags:bit_10_description = "Temperature error" ; status_flags:bit_11_description = "Case temperature unstable" ; double elapsed_time(time) ; elapsed_time:long_name = "Elapsed time as shown in the raw data" ; elapsed_time:units = "second" ; elapsed_time:missing_value = -9999. ; float sample_volume(time) ; sample_volume:long_name = "Sample volume" ; sample_volume:units = "m^3" ; sample_volume:missing_value = -9999.f ; float tap_flow_rate(time) ; tap_flow_rate:long_name = "TAP flow rate" ; tap_flow_rate:units = "L/min" ; tap_flow_rate:missing_value = -9999.f ; float case_temperature(time) ; case_temperature:long_name = "Case temperature" ; case_temperature:units = "degC" ; case_temperature:missing_value = -9999.f ; float sample_air_temperature(time) ; sample_air_temperature:long_name = "Sample air temperature" ; sample_air_temperature:units = "degC" ; sample_air_temperature:missing_value = -9999.f ; int filter_id(time) ; filter_id:long_name = "Filter ID, increments for each new filter" ; filter_id:units = "count" ; filter_id:missing_value = -9999 ; int active_spot_number(time) ; active_spot_number:long_name = "Active spot number" ; active_spot_number:units = "count" ; active_spot_number:missing_value = -9999 ; float signal_blue_raw(time, spot) ; signal_blue_raw:long_name = "Signal blue raw measurements" ; signal_blue_raw:units = "unitless" ; signal_blue_raw:missing_value = -9999.f ; float signal_green_raw(time, spot) ; signal_green_raw:long_name = "Signal green raw measurements" ; signal_green_raw:units = "unitless" ; signal_green_raw:missing_value = -9999.f ; float signal_red_raw(time, spot) ; signal_red_raw:long_name = "Signal red raw measurements" ; signal_red_raw:units = "unitless" ; signal_red_raw:missing_value = -9999.f ; float signal_dark(time, spot) ; signal_dark:long_name = "Dark signal from detector below each filter spot" ; signal_dark:units = "unitless" ; signal_dark:missing_value = -9999.f ; float signal_blue(time, spot) ; signal_blue:long_name = "Signal from blue LED through each filter spot" ; signal_blue:units = "unitless" ; signal_blue:missing_value = -9999.f ; signal_blue:equation = "signal_blue_raw - signal_dark" ; float signal_green(time, spot) ; signal_green:long_name = "Signal from green LED through each filter spot" ; signal_green:units = "unitless" ; signal_green:equation = "signal_green_raw - signal_dark_raw" ; signal_green:missing_value = -9999.f ; float signal_red(time, spot) ; signal_red:long_name = "Signal from red LED through each filter spot" ; signal_red:units = "unitless" ; signal_red:equation = "signal_red_raw - signal_dark_raw" ; signal_red:missing_value = -9999.f ; int change_time(time) ; change_time:long_name = "Time of either an active_spot_number or filter_id change" ; change_time:units = "seconds since 1970-1-1 0:00:00 0:00" ; change_time:missing_value = -9999 ; float clean_blue(time, spot) ; clean_blue:long_name = "Signal from blue LED at start of filter or spot change" ; clean_blue:units = "unitless" ; clean_blue:missing_value = -9999.f ; clean_blue:comment = "signal_blue normalization factor from start of active spot, for active_spot_number >= active_spot_number" ; clean_blue:equation = "signal_blue / signal_blue(start)" ; float clean_green(time, spot) ; clean_green:long_name = "Signal from green LED at start of filter or spot change" ; clean_green:units = "unitless" ; clean_green:missing_value = -9999.f ; clean_green:comment = "signal_green from start of active spot, for active_spot_number >= active_spot_number" ; clean_green:equation = "signal_green / signal_green(start)" ; float clean_red(time, spot) ; clean_red:long_name = "Signal from red LED at the start of filter or spot change" ; clean_red:units = "unitless" ; clean_red:missing_value = -9999.f ; clean_red:comment = "signal_red from start of active spot, for active_spot_number >= active_spot_number" ; clean_red:equation = "signal_red / signal_red(start)" ; float normalized_blue(time, spot) ; normalized_blue:long_name = "Signal from blue LED through each filter spot normalized at start of filter or spot change" ; normalized_blue:units = "unitless" ; normalized_blue:comment = "= signal_blue / clean_blue" ; normalized_blue:missing_value = -9999.f ; float normalized_green(time, spot) ; normalized_green:long_name = "Signal from green LED through each filter spot normalized at start of filter or spot change" ; normalized_green:units = "unitless" ; normalized_green:comment = "= signal_green / clean_green" ; normalized_green:missing_value = -9999.f ; float normalized_red(time, spot) ; normalized_red:long_name = "Signal from red LED through each filter spot normalized to start of filter or spot change" ; normalized_red:units = "unitless" ; normalized_red:comment = "signal_red / clean_red" ; normalized_red:missing_value = -9999.f ; float normalized_spot_transmittance_blue(time, spot) ; normalized_spot_transmittance_blue:long_name = "Transmittance of blue LED through each filter spot normalized against reference spot" ; normalized_spot_transmittance_blue:units = "unitless" ; normalized_spot_transmittance_blue:equation = "normalized_blue / reference (see comment)" ; normalized_spot_transmittance_blue:comment = "Spots 1-8 are normalized against either reference spot 9 or 10. The active spot is normalized against reference spot 9 if the active spot is odd or against reference spot 10 if the active spot is even. The non-active spots are normalized against the opposite reference spot. The reference with flow is normalized by the reference without flow. The reference spot without flow is unchanged,." ; normalized_spot_transmittance_blue:missing_value = -9999.f ; float normalized_spot_transmittance_green(time, spot) ; normalized_spot_transmittance_green:long_name = "Transmittance of green LED through each filter spot normalized against reference spot" ; normalized_spot_transmittance_green:units = "unitless" ; normalized_spot_transmittance_green:equation = "normalized_green / reference (see comment)" ; normalized_spot_transmittance_green:comment = "Spots 1-8 are normalized against either reference spot 9 or 10. The active spot is normalized against reference spot 9 if the active spot is odd or against reference spot 10 if the active spot is even. The non-active spots are normalized against the opposite reference spot. The reference with flow is normalized by the reference without flow. The reference spot without flow is unchanged." ; normalized_spot_transmittance_green:missing_value = -9999.f ; float normalized_spot_transmittance_red(time, spot) ; normalized_spot_transmittance_red:long_name = "Transmittance of red LED through each filter spot normalized against reference spot" ; normalized_spot_transmittance_red:units = "unitless" ; normalized_spot_transmittance_red:equation = "normalized_blue / reference" ; normalized_spot_transmittance_red:comment = "Spots 1-8 are normalized against either reference spot 9 or 10. The active spot is normalized against reference spot 9 if the active spot is odd or against reference spot 10 if the active spot is even. The non-active spots are normalized against the opposite reference spot. The reference with flow is normalized by the reference without flow. The reference spot without flow is unchanged." ; normalized_spot_transmittance_red:missing_value = -9999.f ; float transmittance_blue(time) ; transmittance_blue:long_name = "Transmittance, blue channel, for valid active_spot_number" ; transmittance_blue:units = "unitless" ; transmittance_blue:valid_min = 0.65f ; transmittance_blue:valid_max = 1.f ; transmittance_blue:missing_value = -9999.f ; transmittance_blue:measured_wavelength = "470 nm" ; transmittance_blue:comment = "normalized_spot_transmittance_blue(active_spot)" ; transmittance_blue:ancillary_variables = "qc_transmittance_blue" ; int qc_transmittance_blue(time) ; qc_transmittance_blue:long_name = "Quality check results on field: Transmittance, blue channel, for valid active_spot_number" ; qc_transmittance_blue:units = "unitless" ; qc_transmittance_blue:description = "This field contains bit packed integer values, where each bit represents a QC test on the data. Non-zero bits indicate the QC condition given in the description for those bits; a value of 0 (no bits set) indicates the data has not failed any QC tests." ; qc_transmittance_blue:transmittance_green_min_warning = 0.7f ; qc_transmittance_blue:transmittance_min_warning = 0.7f ; qc_transmittance_blue:transmittance_max_warning = 1.f ; qc_transmittance_blue:flag_method = "bit" ; qc_transmittance_blue:bit_1_description = "Value is equal to missing_value" ; qc_transmittance_blue:bit_1_assessment = "Bad" ; qc_transmittance_blue:bit_2_description = "Value is less than the valid_min" ; qc_transmittance_blue:bit_2_assessment = "Bad" ; qc_transmittance_blue:bit_3_description = "Value is greater than the valid_max" ; qc_transmittance_blue:bit_3_assessment = "Bad" ; qc_transmittance_blue:bit_4_description = "transmittance_green < transmittance_green_min_warning" ; qc_transmittance_blue:bit_4_assessment = "Indeterminate" ; qc_transmittance_blue:bit_5_description = "Not used" ; qc_transmittance_blue:bit_5_assessment = "Bad" ; qc_transmittance_blue:bit_6_description = "transmittance_blue value < transmittance_min_warning or transmittance_blue value > transmittance_max_warning" ; qc_transmittance_blue:bit_6_assessment = "Indeterminate" ; float transmittance_green(time) ; transmittance_green:long_name = "Transmittance, green channel, for valid active_spot_number" ; transmittance_green:units = "unitless" ; transmittance_green:valid_min = 0.65f ; transmittance_green:valid_max = 1.f ; transmittance_green:missing_value = -9999.f ; transmittance_green:measured_wavelength = "522 nm" ; transmittance_green:comment = "normalized_spot_transmittance_green(active_spot)" ; transmittance_green:ancillary_variables = "qc_transmittance_green" ; int qc_transmittance_green(time) ; qc_transmittance_green:long_name = "Quality check results on field: Transmittance, green channel, for valid active_spot_number" ; qc_transmittance_green:units = "unitless" ; qc_transmittance_green:description = "This field contains bit packed integer values, where each bit represents a QC test on the data. Non-zero bits indicate the QC condition given in the description for those bits; a value of 0 (no bits set) indicates the data has not failed any QC tests." ; qc_transmittance_green:transmittance_green_min_warning = 0.7f ; qc_transmittance_green:transmittance_min_warning = 0.7f ; qc_transmittance_green:transmittance_max_warning = 1.f ; qc_transmittance_green:flag_method = "bit" ; qc_transmittance_green:bit_1_description = "Value is equal to missing_value" ; qc_transmittance_green:bit_1_assessment = "Bad" ; qc_transmittance_green:bit_2_description = "Value is less than the valid_min" ; qc_transmittance_green:bit_2_assessment = "Bad" ; qc_transmittance_green:bit_3_description = "Value is greater than the valid_max" ; qc_transmittance_green:bit_3_assessment = "Bad" ; qc_transmittance_green:bit_4_description = "transmittance_green < transmittance_green_min_warning" ; qc_transmittance_green:bit_4_assessment = "Indeterminate" ; qc_transmittance_green:bit_5_description = "Not used" ; qc_transmittance_green:bit_5_assessment = "Bad" ; qc_transmittance_green:bit_6_description = "transmittance_green value < transmittance_min_warning or transmittance_green value > transmittance_max_warning" ; qc_transmittance_green:bit_6_assessment = "Indeterminate" ; float transmittance_red(time) ; transmittance_red:long_name = "Transmittance, red channel, for valid active_spot_number" ; transmittance_red:units = "unitless" ; transmittance_red:valid_min = 0.65f ; transmittance_red:valid_max = 1.f ; transmittance_red:missing_value = -9999.f ; transmittance_red:measured_wavelength = "660 nm" ; transmittance_red:comment = "normalized_spot_transmittance_red(active_spot)" ; transmittance_red:ancillary_variables = "qc_transmittance_red" ; int qc_transmittance_red(time) ; qc_transmittance_red:long_name = "Quality check results on field: Transmittance, red channel, for valid active_spot_number" ; qc_transmittance_red:units = "unitless" ; qc_transmittance_red:description = "This field contains bit packed integer values, where each bit represents a QC test on the data. Non-zero bits indicate the QC condition given in the description for those bits; a value of 0 (no bits set) indicates the data has not failed any QC tests." ; qc_transmittance_red:transmittance_green_min_warning = 0.7f ; qc_transmittance_red:transmittance_min_warning = 0.7f ; qc_transmittance_red:transmittance_max_warning = 1.f ; qc_transmittance_red:flag_method = "bit" ; qc_transmittance_red:bit_1_description = "Value is equal to missing_value" ; qc_transmittance_red:bit_1_assessment = "Bad" ; qc_transmittance_red:bit_2_description = "Value is less than the valid_min" ; qc_transmittance_red:bit_2_assessment = "Bad" ; qc_transmittance_red:bit_3_description = "Value is greater than the valid_max" ; qc_transmittance_red:bit_3_assessment = "Bad" ; qc_transmittance_red:bit_4_description = "transmittance_green < transmittance_green_min_warning" ; qc_transmittance_red:bit_4_assessment = "Indeterminate" ; qc_transmittance_red:bit_5_description = "Not used" ; qc_transmittance_red:bit_5_assessment = "Bad" ; qc_transmittance_red:bit_6_description = "transmittance_red value < transmittance_min_warning or transmittance_red value > transmittance_max_warning" ; qc_transmittance_red:bit_6_assessment = "Indeterminate" ; int impactor_state(time) ; impactor_state:long_name = "Impactor state in terms of aerodynamic diameter cut off" ; impactor_state:units = "unitless" ; impactor_state:valid_min = 0 ; impactor_state:valid_max = 11 ; impactor_state:missing_value = -9999 ; impactor_state:flag_values = 0, 1, 10 ; impactor_state:flag_meanings = "transition_between_particle_size 1um 10um" ; impactor_state:source = "sgpimpactorE13.b1:impactor_state" ; impactor_state:switching_mode = "on" ; impactor_state:default_state = "10" ; impactor_state:ancillary_variables = "qc_impactor_state" ; int qc_impactor_state(time) ; qc_impactor_state:long_name = "Quality check results on field: Impactor state in terms of aerodynamic diameter cut off" ; qc_impactor_state:units = "unitless" ; qc_impactor_state:description = "This field contains bit packed integer values, where each bit represents a QC test on the data. Non-zero bits indicate the QC condition given in the description for those bits; a value of 0 (no bits set) indicates the data has not failed any QC tests." ; qc_impactor_state:seconds_after_1um_warning = 144.f ; qc_impactor_state:seconds_after_1um_alarm = 126.f ; qc_impactor_state:seconds_after_10um_warning = 126.f ; qc_impactor_state:seconds_after_10um_alarm = 108.f ; qc_impactor_state:flag_method = "bit" ; qc_impactor_state:bit_1_description = "Impactor data is missing from impactor_state:source" ; qc_impactor_state:bit_1_assessment = "Bad" ; qc_impactor_state:bit_2_description = "qc_impactor_state from impactor datastream is bad" ; qc_impactor_state:bit_2_assessment = "Bad" ; qc_impactor_state:bit_3_description = "qc_impactor_state from impactor datastream is indeterminate" ; qc_impactor_state:bit_3_assessment = "Indeterminate" ; qc_impactor_state:bit_4_description = "(seconds_after_transition < seconds_after_1um_warning) and (impactor_state==1)" ; qc_impactor_state:bit_4_assessment = "Indeterminate" ; qc_impactor_state:bit_5_description = "(seconds_after_transition < seconds_after_1um_alarm) and (impactor_state==1)" ; qc_impactor_state:bit_5_assessment = "Bad" ; qc_impactor_state:bit_6_description = "(seconds_after_transition < seconds_after_10um_warning) and (impactor_state==10)" ; qc_impactor_state:bit_6_assessment = "Indeterminate" ; qc_impactor_state:bit_7_description = "(seconds_after_transition < seconds_after_10um_alarm) and (impactor_state==10)" ; qc_impactor_state:bit_7_assessment = "Bad" ; qc_impactor_state:operational_qc_bits = 1, 2, 3, 4, 5, 6, 7 ; qc_impactor_state:operational_qc_explanation = "These tests will frequently be flagged during normal operation and should be ignored by DQO metrics" ; double seconds_after_transition(time) ; seconds_after_transition:long_name = "Seconds since last impactor transition" ; seconds_after_transition:units = "second" ; float spot_size_area ; spot_size_area:long_name = "Spot size area" ; spot_size_area:units = "mm^2" ; float minimum_active_spot_duration ; minimum_active_spot_duration:long_name = "Minimum active spot duration" ; minimum_active_spot_duration:units = "second" ; minimum_active_spot_duration:missing_value = -9999.f ; minimum_active_spot_duration:comment = "If an active spot is in use for less than the minimum duration specified here, it will not be used." ; float lat ; lat:long_name = "North latitude" ; lat:units = "degree_N" ; lat:valid_min = -90.f ; lat:valid_max = 90.f ; lat:standard_name = "latitude" ; float lon ; lon:long_name = "East longitude" ; lon:units = "degree_E" ; lon:valid_min = -180.f ; lon:valid_max = 180.f ; lon:standard_name = "longitude" ; float alt ; alt:long_name = "Altitude above mean sea level" ; alt:units = "m" ; alt:standard_name = "altitude" ; // global attributes: :command_line = "aostapcorr_ingest -s sgp -f E13 -DR" ; :Conventions = "ARM-1.2" ; :process_version = "ingest-aostapcorr-1.0-0.el6" ; :dod_version = "aostap-b1-1.1" ; :site_id = "sgp" ; :platform_id = "aostap" ; :facility_id = "E13" ; :location_description = "Southern Great Plains (SGP), Lamont, Oklahoma" ; :datastream = "sgpaostapE13.b1" ; :data_level = "b1" ; :input_source = "/data/collection/sgp/sgpaostapE13.00/sgpaosE13.tap3.01s.00.20180417.000000.raw.csv" ; :sampling_interval = "1 second" ; :Instrument_Manufacturer = "Brechtel" ; :configuration_file = "sgpaostapE13.20161000.000000.config" ; :doi = "10.5439/1307564" ; :history = "created by user dsmgr on machine ruby at 2018-04-18 16:18:26, using ingest-aostapcorr-1.0-0.el6" ; }