Skip to content

ADD: Addition of the Profile Fit PBL height estimate - #1052

Merged
zssherman merged 3 commits into
ARM-DOE:mainfrom
jrobrien91:pbl-2
Aug 27, 2026
Merged

ADD: Addition of the Profile Fit PBL height estimate#1052
zssherman merged 3 commits into
ARM-DOE:mainfrom
jrobrien91:pbl-2

Conversation

@jrobrien91

Copy link
Copy Markdown
Collaborator

This PR implements the Profile Method PBLH scheme, where a backscatter profile is fit to an idealized profile via an error function using non-linear least-squares optimization.

References:

Steyn, D. G., M. Baldi, and R. M. Hoff, 1999: The Detection of Mixed Layer
Depth and Entrainment Zone Thickness from Lidar Backscatter Profiles.
J. Atmos. Oceanic Technol., 16, 953–959,
https://doi.org/10.1175/1520-0426(1999)016<0953:TDOMLD>2.0.CO;2.

Sawyer, V., and Z. Li, 2013: Detection, variations and intercomparison of
the planetary boundary layer depth from radiosonde, lidar and infrared
spectrometer. *Atmos. Environ.*, **79**, 518–528,
https://doi.org/10.1016/j.atmosenv.2013.07.019.

Why

While the gradient, tucker and wavelet schemes each have their own methodology for PBLH height, the Profile Method is designed to capture the growth and decay of the mixed-layer. Through a combination of the Profile height and other methods within ACT, the full lifecycle of the mixed layer can be studied.

Validation

Mark each item as done or N/A. Add one short evidence line for each item.

  • [X ] I ran pre-commit or ruff

  • [X ] I ran tests and/or added tests

AI usage & manual verification

If AI tools were used, complete this section.

  • AI used: Yes
  • Model/tooling:
    • Claude Opus 5 (and claude code) was used iteratively for developing a plan and improvements to retrieval.
    • GPT-5.6 Sol was used for brainstorming and literature review assistance.
    • VS Code - Copilot used for filling in comments that were approved by the user
  • Tasks delegated to AI:
    • GPT-5.6 Sol was used to generate a plan to implement Steyn, Baldi and Hoff 1999.
    • Within Juypter Notebooks, Claude Opus 5 was used interactively to improve the functionality of the GPT-5.6 plan. Claude Opus 5 was used to create HTML files to visualize the background material for fitting profiles via the error function. User and Claude Opus 5 interactively tested/improved the methodology while comparing against five months of ARM observations.
    • Claude Opus 5 wrote the tests for the user function, which were verified by the user
  • Manual verification performed:
    • User incorporated code from Jupyter Notebooks into pbl_lidar.py, often interacting with both GPT-5.6 SOL and Claude Opus 5 to explain methodology and reasoning. Claude Opus 5 tends to write python to consolidated for my liking, so in many instances, user expanded to be more verbose/readability.

Comment thread act/retrievals/pbl_lidar.py
@zssherman

Copy link
Copy Markdown
Collaborator

Resolved the new conflicts from the merge, rerunning the tests

@zssherman
zssherman merged commit 85d185f into ARM-DOE:main Aug 27, 2026
16 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