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

Synchronize the develop branch from official WRF GitHub #1

Merged
merged 2 commits into from
Dec 17, 2020

Conversation

cenlinhe
Copy link
Owner

Synchronize the develop branch from official WRF GitHub.

liujake and others added 2 commits December 11, 2020 12:12
This large PR adds the new capability for multi-resolution incremental 4DVar.

TYPE: new feature

KEYWORDS: MRI-4DVar, Inverse transform, square root of B, 3-stage

SOURCE: Zhiquan (Jake) Liu, Junmei Ban, Jamie Bresch, Yali Wu, Xin Zhang, Jianyu Liu (NCAR/MMM)

DESCRIPTION OF CHANGES:
Existing 4DVar algorithm is run at the same model resolution for inner loop minimization of different outer loops (default namelist setting with multi_inc=0). This adds MRI-4DVar capability that can run 4DVar at lower resolution for inner loop minimization with a 3-stage procedure (observer, minimizer, regridder) as described by Liu et al. (2020) and can substantially speed up 4DVar. Three major changes include:

3-stage procedure controlled by a script and offline programs under ~var/mri4dvar;
Set multi_inc=1 for the "observer" step and multi_inc=2 for the "minimizer" step. The "regridder' step is done using the offline programs.

Inverse transform of square root B introduced under ~var/da/da_vtox_transforms;
New namelist parameter use_inverse_squarerootb needs to be set .true. when multi_inc=2 and works together with cv_options=5, 6, or 7 and cloud_cv_options=2 or 3.

New namelist parameter use_interpolate_cvt=.false. (default), which is supposed to work together with the obsolete cv_options=3, which is not recommended to use for non-expert users.

Additional file I/O for control variable and radar/radiance OMB files from the observer step. This I/O part will need some further code clean-up and improvement in the future.
LIST OF MODIFIED FILES: 48 files
M Registry/registry.var
M var/build/depend.txt
M var/da/da_main/da_solve.inc
M var/da/da_main/da_wrfvar_top.f90
M var/da/da_minimisation/da_get_innov_vector.inc
M var/da/da_minimisation/da_minimisation.f90
M var/da/da_obs_io/da_obs_io.f90
M var/da/da_obs_io/da_read_iv_for_multi_inc.inc
M var/da/da_obs_io/da_read_obs_radar.inc
M var/da/da_obs_io/da_scan_obs_radar.inc
M var/da/da_obs_io/da_search_obs.inc
M var/da/da_obs_io/da_write_iv_for_multi_inc.inc
M var/da/da_radiance/da_radiance1.f90
A var/da/da_radiance/da_read_iv_rad_for_multi_inc.inc
A var/da/da_radiance/da_write_iv_rad_for_multi_inc.inc
M var/da/da_recursive_filter/da_recursive_filter.f90
A var/da/da_recursive_filter/da_recursive_filter_1d_inv.inc
M var/da/da_recursive_filter/da_transform_through_rf.inc
A var/da/da_recursive_filter/da_transform_through_rf_inv.inc
M var/da/da_setup_structures/da_setup_structures.f90
A var/da/da_setup_structures/da_write_vp.inc
M var/da/da_tools/da_llxy.inc
M var/da/da_vtox_transforms/da_transform_vptox.inc
A var/da/da_vtox_transforms/da_transform_vptox_inv.inc
A var/da/da_vtox_transforms/da_transform_vtovv_inv.inc
A var/da/da_vtox_transforms/da_transform_vtox_inv.inc
M var/da/da_vtox_transforms/da_transform_vvtovp.inc
M var/da/da_vtox_transforms/da_transform_vvtovp_adj.inc
A var/da/da_vtox_transforms/da_transform_vvtovp_inv.inc
M var/da/da_vtox_transforms/da_vertical_transform.inc
M var/da/da_vtox_transforms/da_vtox_transforms.f90
A var/mri4dvar/Makefile
A var/mri4dvar/README.MRI-4DVar
A var/mri4dvar/da_bdy.f90
A var/mri4dvar/da_bilin.f90
A var/mri4dvar/da_thin.f90
A var/mri4dvar/da_vp_bilin.f90
A var/mri4dvar/da_vp_split.f90
A var/mri4dvar/nc_increment.ncl
A var/mri4dvar/nc_vpglobal.ncl
A var/mri4dvar/nc_vphires.ncl
A var/mri4dvar/nc_vpinput.ncl
A var/mri4dvar/nc_vplocal.ncl
A var/mri4dvar/rsl_lite.h
A var/mri4dvar/run_mri3d4dvar.csh_lsf
A var/mri4dvar/run_mri3d4dvar.csh_pbs
A var/mri4dvar/task_for_point.c
A var/mri4dvar/wraper_mri3d4dvar.csh

TESTS CONDUCTED: WRFDA regression test passed. Cycling MRI-4DVar tests were performed over an Arctic domain.

RELEASE NOTE: New capability for Multi-Resolution Incremental 4DVar (MRI-4DVar).
Liu, Z., J. Ban, J.-S, Hong, and Y.-H. Kuo, 2020: Multi-resolution incremental 4D-Var for WRF: Implementation and application at convective scale, Q. J. R. Meteorol. Soc., 146, 3661-3674.
@cenlinhe cenlinhe merged commit 45d1380 into cenlinhe:develop Dec 17, 2020
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