Add PM2.5 DA for RRFS-SD#448
Conversation
guoqing-noaa
left a comment
There was a problem hiding this comment.
Suggest to merge the following pairs:
gsiparm.anl.sh gsiparm.anl_sd.sh
exregional_run_analysis.sh exregional_run_analysis_sd.sh
JREGIONAL_RUN_ANA JREGIONAL_RUN_ANAL_SD
| netcdf_diag=.true.,binary_diag=.false., | ||
| l_obsprvdiag=${l_obsprvdiag}, | ||
| / | ||
| netcdf_diag=${netcdf_diag},binary_diag=${binary_diag}, |
There was a problem hiding this comment.
Line 24 should be inside the &SETUP block
| hzscl=${bkgerr_hzscl}, | ||
| bw=0.,fstat=.true., | ||
| / | ||
| usenewgfsberror=${usenewgfsberror}, |
There was a problem hiding this comment.
Line 34 should be inside the &BKGERR block
| fv3sar_bg_opt=${fv3lam_bg_type}, | ||
| / | ||
| l_hyb_ens=${ifhyb}, | ||
| uv_hyb_ens=.true., |
There was a problem hiding this comment.
Line 59-63: remove line 62, replace line 59 with line 63
| @@ -0,0 +1,92 @@ | |||
| gsi_namelist=" | |||
There was a problem hiding this comment.
I would suggest to combine gsiparm.anl_sd.sh into gsiparm.anl.sh
There was a problem hiding this comment.
This is doable. PM2.5 DA is just a 3DVar run with a static B generated for aerosol DA. The current design only need one parameter DO_SDDACYCLE to switch among tasks. Othwise more parameters will be needed to pass to the merged scripts.
I thought about this. The current implementation is the most efficient way to run a separate 3DVAR to produce the smoke and dust traces for RRFS-SD. I have no problem merging them to make the modification fellow the standard of the regional workflow. |
@guoqing-noaa I had merged the files as you suggested and pushed back to my branch. Should I create. a new PR from my latest commit? Thanks. |
066c1ea to
cc8eafb
Compare
|
@guoqing-noaa I just merged my commits and forced pushed back to my branch. This PR should work. Thanks. |
cc8eafb to
9514673
Compare
9514673 to
d67dcff
Compare
Hi Guoqing, Could you please review this PR since I had revised the scripts after your comments. There were conflicts shown however, I had rebased my code and pushed back today. Thanks, |
| i_gsdqc=2, | ||
| / | ||
| &CHEM | ||
| laeroana_fv3smoke=.true., |
There was a problem hiding this comment.
Do we need to set the default value of laeroana_fv3smoke to .false. so that this will not affect other parts when not doing chem DA?
Suggest to add a variable in config files and then we can write as follows:
laeroana_fv3smoke=${laeroana_fv3smoke}
You could reference line 21, 22 in this file.
netcdf_diag=${netcdf_diag},binary_diag=${binary_diag},
l_obsprvdiag=${l_obsprvdiag},
There was a problem hiding this comment.
I can update this. The issue is that the base of GSL GSI is a few months behind my GSI, so the GSL GSI can NOT the two parameters, which has to be deleted as you commented in a next review.
I can add a variable in the config file, but to make the GSL GSI work, the parameters have to be deleted when running a regular meteorological DA.
| sed '/berror_fv3_cmaq_regional/d' gsiparm.anl.1 > gsiparm.anl | ||
| rm -fr gsiparm.anl.sd gsiparm.anl.1 | ||
| fi | ||
|
|
There was a problem hiding this comment.
Is it possible to update GSI first and then we don't need this temporary workaround?
There was a problem hiding this comment.
This requires GSL GSI is rebased to the latest EMC GSI development branch. If not, we have to delete the parameters related to SMOKE DA to make the meteorological DA run. That is one reason I added a separated *sh to produce gsiparm.anl for SD DA in my previous PR.
There was a problem hiding this comment.
Is it possible to update GSL GSI with those two namelist parameters according to the EMC/develop branch? Don't need to add the full functionality at the moment, but only to add placeholders so that GSL GSI be able to proceed with the new namelist.
There was a problem hiding this comment.
@guoqing-noaa
I think it would be good I keep the lines in my personal application or add the two parameters in GSL/GSI. I will delete the lines in this PR.
There was a problem hiding this comment.
Thanks! GSL/GSI has to be updated with these new namelist parameters any way. If you do it now (even just putting a namelist placeholder), it will save some future work, :)
There was a problem hiding this comment.
FYI, I just checked the latest GSL/GSI (the feature/rrfs_dev branch). It already included the following two parameters:
berror_fv3_cmaq_regional
laeroana_fv3smoke
There was a problem hiding this comment.
@guoqing-noaa
That is great. My current test is based base_e, which doesn't accept the two namelist parameters. I may use the lastest GSL GSI rrfs_dev in my next test.
There was a problem hiding this comment.
Sorry that although berror_fv3_cmaq_regional is already there and we also have the laeroana_fv3smoke variable in chemmod.f90, laeroana_fv3smoke is not added in gsimod.f90 yet. I believe it was added only in your own GSI copy at the moment. Could you create a PR to update GSL/GSI with this? (otherwise it will stop the normal RRFS workflow). Thanks!
| i_use_2mQ4B=2, | ||
| i_use_2mT4B=1, | ||
| i_use_2mQ4B=${ii_use_2mq4b}, | ||
| i_use_2mT4B=${ii_use_2mt4b}, |
There was a problem hiding this comment.
To be consistent, we can use ${i_use_2mQ4B} and ${i_use_2mT4B} in the config file.
Similar to line 160-161:
readin_localization=${readin_localization},
ens_fast_read=${ens_fast_read},
| lread_obs_skip=.false. | ||
| if_model_dbz=.false. | ||
| ii_use_2mq4b=2 | ||
| ii_use_2mt4b=1 |
There was a problem hiding this comment.
See a previous comment on this. Also suggest to put them in the config files.
There was a problem hiding this comment.
This is default for base_E. I will change.
There was a problem hiding this comment.
Correction: this is analysis type dependent, needs to be here. My GSI doesn't support (2,1) options for the two parameters.
There was a problem hiding this comment.
@guoqing-noaa
The two parameters had been defined in config file:
i_use_2mQ4B=0
i_use_2mT4B=0
They need to assign different values for meteorological DA or SD DA, so they are also in this shell script.
| i_use_2mQ4B=2, | ||
| i_use_2mT4B=1, | ||
| i_use_2mQ4B=${i_use_2mq4b}, | ||
| i_use_2mT4B=${i_use_2mt4b}, |
There was a problem hiding this comment.
${i_use_2mq4b} and ${i_use_2mt4b}
should be ${i_use_2mQ4B} and ${i_use_2mT4B}
They are case-sensitive.
| lread_obs_skip=.false. | ||
| if_model_dbz=.false. | ||
| i_use_2mQ4B=2 | ||
| i_use_2mT4b=1 |
There was a problem hiding this comment.
i_use_2mT4b --> i_use_2mT4B
| nummem=0 | ||
| beta1_inv=0.0 | ||
| i_use_2mQ4b=0 | ||
| i_use_2mT4b=0 |
There was a problem hiding this comment.
655 and 656 change to:
i_use_2mQ4B=0
i_use_2mT4B=0
2066cf1 to
64ba50f
Compare
64ba50f to
fc14ab5
Compare
| / | ||
| &CHEM | ||
| laeroana_fv3smoke=${laeroana_fv3smoke}, | ||
| berror_fv3_cmaq_regional=${berror_fv3_cmaq_regional}., |
There was a problem hiding this comment.
Just found that there is an extra dot before the comma (line 203).
fc14ab5 to
a35b4e3
Compare
No description provided.