ESCOMP / ESCOMP/atmospheric_physics
Refactor Beljaars/TMS data flow
- Dominant language
- Fortran
- Stars
- 12
- Forks
- 38
- Avg merge
- 11h 16m
- Merged PRs (30d)
- 5
Description
Currently vertical diffusion distinguishes between the two forms of orographic form drag: Beljaars and TMS, because in current CAM, taubljx/taubljy and tautmsx/tautmsy are distinct pbuf variables; they use "temporary" standard names to make this distinction:
* taubljx: `eastward_beljaars_surface_stress_tbd`
* tautmsx: `eastward_turbulent_mountain_surface_stress_tbd`
However, Beljaars (CAM6+) and TMS (CAM5) are mutually exclusive. The scientist-assigned standard name for both is: `eastward_turbulent_orographic_form_drag_stress_at_surface` (for x; for y is northward)
The code flow needs to be straightened out when CCPPizing either Beljaars or TMS. Locations that need work:
* total surface stresses into HB PBL scheme use "total" stress, defined as `tautotx = cam_in%wsx + tautmsx + taubljx`
* the diag_TKE UW PBL scheme uses `dragblj` and `ksrftms` directly to construct the surface stresses using pre-updated winds
* the diffusion solver uses `ksrftms` to compute the TMS drag rate (`ksrf = 0 + ksrftms`); this is subsequently used to compute the `tau_damp_rate = -gravit*ksrf(:ncol)*p%rdel(:ncol, pver)`
* ...but it uses `dragblj` to directly compute the `tau_damp_rate = 0 + dragblj`
* the diffusion solver uses `dragblj` to update `taubljx/y` with **new winds**; this drag is subsequently used to update surface residual stress
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.