Comparison of GOES satellite observations against CUES station data
Functions for estimating clear-sky downward longwave radition and atmospheric emissivity. I'm using these here to compare against observations of all-sky downward longwave at the CUES site to identify periods of cloud cover (especially at night when we cannot use shortwave observations).
Detecting cloud cover using ground-based observations (similar to the clear-sky index of Marty & Philipona, 2000). First uses ground-based observations of air temperature and relative humidity to run an ensemble of clear-sky downward longwave (LWd) estimation methods (lw_clr.py). Then compares these estimates against LWd observations at the site. Where the LWd is greater than the clear-sky estimates, we likely have cloud-cover.
Functions for working with ASTER TIR imagery(from the AST_L1T product): converting DN to radiance, radiance to brightness temperature, and computing zonal statistics given a shapefile. Also take a look at these AST_L1T utilities from LP DAAC.
Functions for computing statistics on DataArrayResample objects.
Notebook for cleaning up and combining CUES Level 1 data (temperature and radiation datasets) retrieved from snow.ucsb.edu.
Estimate when we have cloud-cover and add a cloud_flag to the CUES dataset.
Merge the CUES dataset with GOES brightness temperature observations of the site. (Also resamples to 5-minute mean values) (See data here.)
Analysis and plotting of GOES (single pixel) and CUES temperature timeseries.
Analysis and plotting of GOES, CUES, and ASTER zonal statistics all together.
Testing the lw_clr.py functions.
Testing the cloud_detect.py functions, and brute-force parameter test to find optimal clear-sky index thresholds. Read in RESULTS.pkl to get a pandas dataframe of the brute force parameter test results.
Produces this plot:
Example notebook to read in an AST_L1T geotiff, shapefile, and compute zonal statistics.
Testing the resampled_stats.py functions, to compute summary statistics on DataArrayResample objects.