Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix PBL level calculations #2078

Merged
merged 2 commits into from
Mar 21, 2024
Merged

Conversation

cdholmes
Copy link
Contributor

@lizziel, This is a PR for the PBL level fix only, as you requested.

Use local scale height and level thickness to determine PBL top level and pressure thickness. The code previously used a fixed global value for scale height, which is too large near poles and too small in tropics. This update lowers the PBL top level in the tropics and raises it near the poles. The change is typically 1 model level or less.

Name and Institution (Required)

Name: Chris Holmes
Institution: FSU

Related Github Issue(s)

See #2002 for the expected impact of this change on PBL heights: typically no more than 1 model level up or down.

Use local scale height and level thickness to determine PBL top level and pressure thickness. The code previously used a fixed global value for scale height, which is too large near poles and too small in tropics. This update lowers the PBL top level in the tropics and raises it near the poles. The change is typically 1 model level or less.
@cdholmes cdholmes mentioned this pull request Dec 19, 2023
1 task
@lizziel lizziel self-requested a review December 19, 2023 15:16
Copy link
Contributor

@lizziel lizziel left a comment

Choose a reason for hiding this comment

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

Thanks @cdholmes. I made a few comments with minor code changes.

GeosCore/pbl_mix_mod.F90 Outdated Show resolved Hide resolved
GeosCore/pbl_mix_mod.F90 Outdated Show resolved Hide resolved
GeosCore/pbl_mix_mod.F90 Outdated Show resolved Hide resolved
GeosCore/pbl_mix_mod.F90 Outdated Show resolved Hide resolved
GeosCore/pbl_mix_mod.F90 Show resolved Hide resolved
@stale stale bot added the stale No recent activity on this issue label Mar 13, 2024
@yantosca yantosca added never stale Never label this issue as stale category: Feature Request New feature or request and removed stale No recent activity on this issue labels Mar 13, 2024
@lizziel lizziel added this to the 14.4.0 milestone Mar 19, 2024
@yantosca yantosca self-assigned this Mar 20, 2024
@geoschem geoschem deleted a comment from stale bot Mar 20, 2024
@yantosca yantosca changed the base branch from main to dev/14.4.0 March 20, 2024 15:51
yantosca added a commit that referenced this pull request Mar 20, 2024
CHANGELOG.md
- Added a blurb describing the change added in PR #2078

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
@yantosca
Copy link
Contributor

@lizziel @cdholmes: I have merged this (locally) atop 14.4.0-alpha.7 and am running integration tests. Stay tuned.

@yantosca
Copy link
Contributor

All GEOS-Chem Classic integration tests passed:

==============================================================================
GEOS-Chem Classic: Execution Test Results

GCClassic #6607cae GEOS-Chem submod update: Merge PR #2205 (Fix uptake on strat aer)
GEOS-Chem #a1359ddc1 Merge PR #2078 (Fix PBL level calculations)
HEMCO     #f807e1a Update HEMCO version number to 3.8.0 in preparation for release

Using 24 OpenMP threads
Number of execution tests: 26

Submitted as SLURM job: 24589366
==============================================================================
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%  All execution tests passed!  %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

All GCHP execution tests passed:

==============================================================================
GCHP: Execution Test Results

GCHP      #d60a8e9 GEOS-Chem submod update: Merge PR #2205 (Fix uptake on strat aer)
GEOS-Chem #a1359ddc1 Merge PR #2078 (Fix PBL level calculations)
HEMCO     #f807e1a Update HEMCO version number to 3.8.0 in preparation for release

Number of execution tests: 6

Submitted as SLURM job: 24592207
==============================================================================
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%  All execution tests passed!  %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

@yantosca yantosca merged commit 006b7ea into geoschem:dev/14.4.0 Mar 21, 2024
yantosca added a commit that referenced this pull request Mar 21, 2024
This merge brings PR #2077 (Fix PBL level calculations, by @cdholmes) into
the GEOS-Chem 14.4.0 development stream.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>

This PR now uses local scale height and level thickness to determine the PBL
top level and pressure thickness. The code previously used a fixed global
value for scale height, which is too large near poles and too small in
tropics. This update lowers the PBL top level in the tropics and raises it
near the poles. The change is typically 1 model level or less.

Merge branch 'feature/cdholmes-14.2.1+pbl-top-fix' into dev/14.4.0
@yantosca
Copy link
Contributor

@cdholmes @msulprizio @lizziel: The GCClassic 14.4.0-alpha.8 1-month benchmark died with this error:

********************************************
* B e g i n   T i m e   S t e p p i n g !! *
********************************************

---> DATE: 2019/07/01  UTC: 00:00
 HEMCO already called for this timestep. Returning.
 Getting CH4 boundary conditions in GEOS-Chem from :NOAA_GMD_CH4
HEMCO (VOLCANO): Opening /ExtData/HEMCO/VOLCANO/v2024-03/so2_volcanic_emissions_CARN_v202106.degassing_only.rc
     - DO_LINEAR_CHEM: Linearized chemistry at 2019/07/01 00:00
     - LINOZ_CHEM3: Doing LINOZ
---> DATE: 2019/07/01  UTC: 00:10
---> DATE: 2019/07/01  UTC: 00:20
     - DO_LINEAR_CHEM: Linearized chemistry at 2019/07/01 00:20
     - LINOZ_CHEM3: Doing LINOZ
---> DATE: 2019/07/01  UTC: 00:30
---> DATE: 2019/07/01  UTC: 00:40
     - DO_LINEAR_CHEM: Linearized chemistry at 2019/07/01 00:40
     - LINOZ_CHEM3: Doing LINOZ
---> DATE: 2019/07/01  UTC: 00:50
---> DATE: 2019/07/01  UTC: 01:00
     - Found all A1     met fields for 2019/07/01 01:30
 bad sum at:            1          43
 bad sum at:           27          18
 bad sum at:           40          24
 bad sum at:           15          34
 bad sum at:           34          27
 bad sum at:           18          28
 bad sum at:           42          27
 bad sum at:            1           2
 bad sum at:           14          31
 bad sum at:            3          10
 bad sum at:            2          41
 bad sum at:           17          39
 bad sum at:            4          43
 bad sum at:           13           7
 bad sum at:           59           8
 bad sum at:           21          34
 bad sum at:           15          33
 bad sum at:           43          16
 bad sum at:            1          45
 bad sum at:           12          38
 bad sum at:            5          43
 bad sum at:            2           2
 bad sum at:           20           5
 bad sum at:           20           4
 bad sum at:           25          15
 bad sum at:           21           4
 bad sum at:           17          43
 bad sum at:           16          33
 bad sum at:           23           6
 bad sum at:           21          22
 bad sum at:           15          11
 bad sum at:            7          40
 bad sum at:           17          33
 bad sum at:           26           4
 bad sum at:           43          22
 bad sum at:            7          37
 bad sum at:           28          18
 bad sum at:            3           2
 bad sum at:           15          12
 bad sum at:           40          10
 bad sum at:           14          30
 bad sum at:           35          26
 bad sum at:           25          17
 bad sum at:           39          26
 bad sum at:           40           6
 bad sum at:           18          33
 bad sum at:           22          34
 bad sum at:           13          37
 bad sum at:           17          38
 bad sum at:           21           2
 bad sum at:           17          32
 bad sum at:           17          31
 bad sum at:           29          45
 bad sum at:           43          23
 bad sum at:           41          18
 bad sum at:           22           5
 bad sum at:           16          29
 bad sum at:           23          34
 bad sum at:           19          31
 bad sum at:           18          32
 bad sum at:           20          31
 bad sum at:           23          14
 bad sum at:           44          22
 bad sum at:            3           9
 bad sum at:           37          34
 bad sum at:            1          35
 bad sum at:           68          34
 bad sum at:           21          31
 bad sum at:            4           9
 bad sum at:           34           4
 bad sum at:           30          45
 bad sum at:           16           7
 bad sum at:           21          44
 bad sum at:           31           7
 bad sum at:           25          44
 bad sum at:           36           7
 bad sum at:           26          44
 bad sum at:           44           7
 bad sum at:           32          44
 bad sum at:           35           4
 bad sum at:           12          35
 bad sum at:           20          43
 bad sum at:           42          18
 bad sum at:           15          35
 bad sum at:           24          21
 bad sum at:           16          35
 bad sum at:           19          28
 bad sum at:           19          33
 bad sum at:           31          45
 bad sum at:           20          33
 bad sum at:           23          39
 bad sum at:           14          41
 bad sum at:           34          28
 bad sum at:           18          41
 bad sum at:           39           4
 bad sum at:            1          36
 bad sum at:           25          38
 bad sum at:           17          29
 bad sum at:           29          21
 bad sum at:           17          35
 bad sum at:           18          37
 bad sum at:           36          38
 bad sum at:            6          42
 bad sum at:           21          37
 bad sum at:           43          29
 bad sum at:           19          32
 bad sum at:           41          31
 bad sum at:           20          32
 bad sum at:           45           4
 bad sum at:           44          28
 bad sum at:            6          36
 bad sum at:           60          18
 bad sum at:           22           2
 bad sum at:           52          31
 bad sum at:           19          41
 bad sum at:           40          39
 bad sum at:           20          41
 bad sum at:           41          39
 bad sum at:           24           2
 bad sum at:           21          33
 bad sum at:           23          41
 bad sum at:           32          45
 bad sum at:           47           4
 bad sum at:           53          38
 bad sum at:            8          42
 bad sum at:           51           4
 bad sum at:           43          21
 bad sum at:           18          35
 bad sum at:           61           2
 bad sum at:           62          32
 bad sum at:           12          42
 bad sum at:           57          38
 bad sum at:           14          42
 bad sum at:           15          30
 bad sum at:           72           7
 bad sum at:           34          44
 bad sum at:           17          42
 bad sum at:           58          38
 bad sum at:           63          45
 bad sum at:           37          33
 bad sum at:           18          42
 bad sum at:           38          44
 bad sum at:           65          45
 bad sum at:           28          41
 bad sum at:           43          39
 bad sum at:           29          41
 bad sum at:           20          42
 bad sum at:           53          33
 bad sum at:           52           4
 bad sum at:           23          19
 bad sum at:           22          42
 bad sum at:           41          44
 bad sum at:           52          41
 bad sum at:           56          39
 bad sum at:           45          44
 bad sum at:           29          42
 bad sum at:           57          39
 bad sum at:           21          35
 bad sum at:           58          39
 bad sum at:           48          44
 bad sum at:           54           4
 bad sum at:           59          39
 bad sum at:           57          44
 bad sum at:           38          35
 bad sum at:           63          44
 bad sum at:           68           2
 bad sum at:           17          30
 bad sum at:           70          44
 bad sum at:           12          36
 bad sum at:           11           9
 bad sum at:           28          37
 bad sum at:           16          36
 bad sum at:           70          43
 bad sum at:           68          35
 bad sum at:           11           3
 bad sum at:           70          35
 bad sum at:           72          43
 bad sum at:           72          35
 bad sum at:           38          30
 bad sum at:           67          45
 bad sum at:           27          19
 bad sum at:           15          40
 bad sum at:           22           3
 bad sum at:           68          45
 bad sum at:           23           3
 bad sum at:           16          40
 bad sum at:           24           3
 bad sum at:           43          30
 bad sum at:           17          36
 bad sum at:           39           9
 bad sum at:           45          30
 bad sum at:           18          36
 bad sum at:           45           3
 bad sum at:           20          40
 bad sum at:           46           3
 bad sum at:           21          40
 bad sum at:           44          19
 bad sum at:           69           2
 bad sum at:           21          36
 bad sum at:           62          30
 bad sum at:           55           3
 bad sum at:           23          40
 bad sum at:           56           3
 bad sum at:           24          40
 bad sum at:           57           3
 bad sum at:           61          19
 bad sum at:           61           3
 bad sum at:           27          40
 bad sum at:           22          36
 bad sum at:           38          36
 bad sum at:           55          40
 bad sum at:           43          36
 bad sum at:           56          40
 bad sum at:           72          36
===============================================================================
GEOS-Chem ERROR: Error in computing F_OF_PBL !
COMPUTE_PBL_HEIGHT ("pbl_mix_mod.F90")
===============================================================================

===============================================================================
GEOS-CHEM ERROR: Error encountered in "Compute_PBL_Height"!
STOP at  -> at GEOS-Chem (in GeosCore/main.F90)
===============================================================================
 Timer forced to stop due to error: GEOS-Chem                     
 Timer forced to stop due to error: Boundary layer mixing    

This wasn't caught in integration testing. I will try to reproduce. @cdholmes, do you have any ideas?

@cdholmes
Copy link
Contributor Author

I haven't seen this error before. I can investigate tomorrow.

@cdholmes
Copy link
Contributor Author

The solution is in new PR #2211.

I was also doing 1-hour integration tests, so didn't detect this sooner. After this fix, I confirmed that the simulation runs without errors for at least 10 hours.

yantosca added a commit that referenced this pull request Mar 22, 2024
This merge brings PR #2211 (Initialize PBL variables, by @cdholmes) into
the GEOS-Chem 14.4.0 development stream.

This fixes the "bad sum" error encountered in PBL #2078, by initializing
certain variables to zero before computing PBL height quantities.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: Feature Request New feature or request never stale Never label this issue as stale
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants