Skip to content

Tucker method - #1040

Merged
zssherman merged 7 commits into
ARM-DOE:mainfrom
rcjackson:tucker_method
Aug 20, 2026
Merged

zssherman merged 7 commits into
ARM-DOE:mainfrom
rcjackson:tucker_method

Conversation

@rcjackson

Copy link
Copy Markdown
Collaborator

This PR implements the PBL height detection method for coherent Doppler lidars from Tucker et al. (2009). This method retrieves the PBL height from the Doppler lidar by calculating the variance in vertical velocity over 10-30 min time periods due to atmospheric scatterers. This PR requires statstools, as the Tucker method calculates the first 2 lags of the autocorrelation function of the vertical radial velocity timeseries to separate the components of the variance that are attributable to noise and to atmospheric scatterers, as demonstrated in Newsom and Krishnamurthy (2022). Right now, statstools is implemented as an optional dependency in this PR.

References:

Tucker, S. C., C. J. Senff, A. M. Weickmann, W. A. Brewer, R. M. Banta, S. P. Sandberg, D. C. Law, and R. M. Hardesty, 2009: Doppler Lidar Estimation of Mixing Height Using Turbulence, Shear, and Aerosol Profiles. J. Atmos. Oceanic Technol., 26, 673–688, https://doi.org/10.1175/2008JTECHA1157.1.

Newsom, RK, and Krishnamurthy, Raghavendra. Doppler Lidar (DL) Instrument Handbook.
United States: N. p., 2022. Web. doi:10.2172/1034640.

Partially generated by Claude Sonnet 5.

  • Tests added
  • Documentation reflects changes
  • PEP8 Standards or use of linter
  • Xarray Dataset or DataArray variable naming follows 'ds' or 'da' naming

@zssherman zssherman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only noticed one thing, besides that looks good

Comment thread examples/retrievals/plot_tucker_dl.py Outdated
@AdamTheisen

Copy link
Copy Markdown
Collaborator

@zssherman @rcjackson @jrobrien91 with the retrievals, I think we should standardize how we handle this area and wanted to get your thoughts. Currently, we have a mix of python codes for either instruments (aeri, doppler_lidar) and retrieved value types (cbh, radiation).

Would it be better to structure this by the retrieval type or by the instrument? I could see the argument for both so open to thoughts.

@AdamTheisen AdamTheisen mentioned this pull request Aug 4, 2026
5 tasks done
@zssherman

Copy link
Copy Markdown
Collaborator

@AdamTheisen I think structuring by instrument would be fine

@zssherman
zssherman merged commit 6925db3 into ARM-DOE:main Aug 20, 2026
28 of 34 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants