Skip to content
This repository has been archived by the owner on May 15, 2023. It is now read-only.
/ ss19-feldkurs Public archive

A suite of tools for computing sensible heat fluxes from the BLS450 scintillometer and working with 2D flux footprints.

License

Notifications You must be signed in to change notification settings

gampnico/ss19-feldkurs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Processing Scintillometry Data in Complex Terrain

This project has moved to gampnico/scintillometry, where it has been rewritten from scratch.

This repository has been archived. It was written a long time ago for a field course with a very strict deadline, and what spaghetti code remained is now deprecated with little utility. If you have any existing forks or local clones, please delete them.

If you are interested in an updated package for analysing BLS scintillometer measurements, please consider the new Scintillometry package.

Feature History

1. Features

1.1 Scintillometry

  • Parses scintillometry data from BLS450 scintillometer.
  • Processes this data and computes sensible heat fluxes.
  • Processes topographical data.
  • Processes InnFlux and HATPRO data.
  • Produces plots of scintillometer data, path topography, and weather data.

1.2 Footprint Climatology

  • Processes 2D flux footprints generated by Natascha Kljun's online model, available here.
  • Makes individual topographical adjustments and stitches footprints together.
  • Overlays stitched footprints onto map.

2. Workflow

Running scripts directly from the console will cause errors. Not all data and dependences are available in this repository, and some of the scripts must be tailored to each individual project, notably station parameters and the times when the boundary layer switches from stable to unstable regimes.

The results of working examples are found in Scintillometry Processing.ipynb and Footprint Rasters.ipynb. The field course report and analysis is not available.

Before beginning, use DGM 5m data to generate topographical data for the scintillometer's path coordinates. Then, use core_path_calculator.m to generate path transects. These are also necessary for calibrating the scintillometer.

Scintillometer path coordinates must be accurate. Incorrectly generated topographical data leads to poor calibration and nonsense results!

2.1 Scintillometry

An example of scintillometry processing can be found in Scintillometry Processing.ipynb.

  1. Use data_parser.py to parse scintillometer and weather data.
  2. Use cn_derivations.data_processor() to derive $Cn^{2}$. Make sure to enter the correct regime switch time.
  3. Use r_function_port.ward_method(), a Python port of Helen Ward's code, to compute the Obukhov length and sensible heat flux.
  4. Use the functions in prettyplot.py to visualise data.

2.2 Path Footprint Climatology

Some example code is given in Footprint Rasters.ipynb, but individual adjustments are necessary.

  1. Generate footprints for entire path length either by using the online 2D FFP tool, or the FFP_clim function provided by Natascha Kljun.

  2. Generate xllcenter, yllcenter coordinates for each footprint.

  3. Determine the resolution and cell size of each generated footprint via the MATLAB engine for Python.

  4. Calculate xllcorner,yllcorner coordinates:

    xllcorner = xllcenter - (nrow * cellsize)/2

  5. Generate ASCII raster files, inserting correct coordinates.

  6. Generate TIFF files, apply weighting functions to each TIFF.

  7. Mosaic and average TIFF files in R, generate final contour.

  8. Layer contour plot over map (e.g. with QGIS).

About

A suite of tools for computing sensible heat fluxes from the BLS450 scintillometer and working with 2D flux footprints.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published