New gen_be_v3 for generating ep (ensemble perturbation) and be (background error)#912
Merged
liujake merged 3 commits intowrf-model:developfrom May 17, 2019
Merged
Conversation
new file: var/gen_be_v3/README.gen_be_v3 new file: var/gen_be_v3/compile_casper new file: var/gen_be_v3/compile_cheyenne new file: var/gen_be_v3/gen_be_v3.F90 new file: var/gen_be_v3/util/combine_be_cv7.f90
modified: var/gen_be_v3/README.gen_be_v3
modified: var/gen_be_v3/README.gen_be_v3
Contributor
|
@jamiebresch I am glad you commit this into develop for broader use. Can you add some text in RELEASE NOTE part, then I will merge it in. Putting code into develop and future official release does not mean you (and/or others) have to provide support, but it will be easier to maintain. |
liujake
approved these changes
May 17, 2019
jjguerrette
pushed a commit
that referenced
this pull request
May 20, 2019
TYPE: new feature KEYWORDS: WRFDA, ep, ep_format SOURCE: Jamie Bresch (NCAR) DESCRIPTION OF CHANGES: ep_format=1: (default) original format, double precision, each ep file is for one variable and one member, as the output from the current gen_be_ep2. ep_format=11: same as ep_format=1 except data are in single precision ep_format=2: single precision, each ep file is for one variable and all members ep_format=3: single precision, each ep file is for one variable and all members but on decomposed patch domain No impact on existing ep reading results. New WRFDA code should work without any changes from the user when ep files are generated using the existing very inefficient gen_be_ep2 program. New utility for generating ep in new formats (ep_format=1, 11, 2, 3 through namelist option) is proposed in PR #912. LIST OF MODIFIED FILES: modified: Registry/registry.var modified: var/build/depend.txt modified: var/da/da_main/da_solve.inc modified: var/da/da_main/da_wrfvar_top.f90 modified: var/da/da_setup_structures/da_setup_flow_predictors.inc new file: var/da/da_setup_structures/da_setup_flow_predictors_ep_format2.inc new file: var/da/da_setup_structures/da_setup_flow_predictors_ep_format3.inc modified: var/da/da_setup_structures/da_setup_structures.f90 TESTS CONDUCTED: A case with 80-member 414x324x50 running with nproc=216. The ep reading time: | EP Format | Time (s) | | -------------:|----------:| | 1 | 52.0 | | 11 | 45.0 | | 2 | 24.0 | | 3 | 0.3 | ep_format=1 ~ 52 sec ep_format=11 ~ 45 sec ep_format=2 ~ 24 sec ep_format=3 ~ 0.3 sec Another major benefit to ep_format=3 is the reduced memory requirement. New ep_format=11,2,3 produce identical analysis results. RELEASE NOTE: New DA ep_format option to read in ensemble perturbation (ep) generated by existing gen_be_ep2 and new gen_be_v3 utilities.
liujake
pushed a commit
that referenced
this pull request
Feb 11, 2020
…ting tool (#1088) TYPE: enhancement KEYWORDS: WRFDA, gen_be_v3, memory, be.dat for cloud_cv_options=2 SOURCE: Jamie Bresch (NCAR) DESCRIPTION OF CHANGES: 1. For memory issue: For applications that are for large number of cases and large domain sizes, the gen_be_v3 program needs to run on a large-memory node. To deal with the memory issue, add a namelist option pert1_read_opt to choose how the program accesses pert1 data (output of do_pert_calc=true) internally. pert1_read_opt=1: (default, original behavior) read and store all cases in memory at once. pert1_read_opt=2: read from pert1 file when need it. This option writes out additional vertical-mode-projected fields when do_eof_transform=.true. Users can set pert1_read_opt=2 if memory insufficiency occurs. With pert1_read_opt=2, the program runs slower than pert1_read_opt=1 but the memory usage is reduced 2. For reformatting individual be_[varname].dat into be.dat that WRFDA reads: PR #912 already includes var/gen_be_v3/util/combine_be_cv7.f90 that handles basic variables. This PR adds another var/gen_be_v3/util/combine_be_cv7_ccv2.f90 that reformat GEN_BE_V3 output into the same format as GENBE_2.0 for cloud_cv_options=2 applications. LIST OF MODIFIED FILES: M var/gen_be_v3/README.gen_be_v3 M var/gen_be_v3/gen_be_v3.F90 A var/gen_be_v3/util/combine_be_cv7_ccv2.f90 TESTS CONDUCTED: The results are identical with pert1_read_opt=1 and pert1_read_opt=2.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
TYPE: new feature
KEYWORDS: WRFDA, ep, be, cv_options=7, cloud_cv_options=2, bin_type=5
SOURCE: Jamie Bresch (NCAR)
DESCRIPTION OF CHANGES:
Add a stand-alone program for
See var/gen_be_v3/README.gen_be_v3 for more info.
This PR complements PR #900.
ISSUE: none
LIST OF MODIFIED FILES:
new file: var/gen_be_v3/README.gen_be_v3
new file: var/gen_be_v3/compile_casper
new file: var/gen_be_v3/compile_cheyenne
new file: var/gen_be_v3/gen_be_v3.F90
new file: var/gen_be_v3/util/combine_be_cv7.f90
TESTS CONDUCTED:
Lots of various tests...
RELEASE NOTE: New stand-alone gen_be_v3 for generating ep (ensemble perturbation) and be
(background error) for WRFDA alphacv_method=2, alpha_hydrometeors=true, cv_options=7 and
cloud_cv_options=2 applications. The major advantage of gen_be_v3 is that it is much much more
efficient than the existing gen_be package.