Skip to content

Commit fd89302

Browse files
authored
Merge pull request #636 from NCAR/WRF_Tutorial_Derecho
Update WRF scripting and tutorial for derecho
2 parents cd7189e + 4f5490c commit fd89302

22 files changed

+242
-616
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,5 +34,5 @@ If your code changes are available on GitHub, please provide the repository.
3434

3535
### Build information
3636
Please describe:
37-
1. The machine you are running on (e.g. windows laptop, NCAR supercomputer Cheyenne).
37+
1. The machine you are running on (e.g. windows laptop, NSF NCAR supercomputer Derecho).
3838
2. The compiler you are using (e.g. gnu, intel).

CHANGELOG.rst

+7
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,13 @@ individual files.
2222

2323
The changes are now listed with the most recent at the top.
2424

25+
**March 13 2024 :: Update WRF-DART scripts and bug template to Derecho; remove no-op routines in ensemble manager. Tag v11.3.1**
26+
27+
- Updated the csh scripting templates used to run WRF-DART and WRF-DART tutorial from Cheyenne to Derecho
28+
- Updated bug report template to use Derecho instead of Cheyenne
29+
- Removed the following no-op routines from ensemble manager: prepare_to_write_to_vars, prepare_to_write_to_copies,
30+
prepare_to_read_from_vars, prepare_to_read_from_copies, prepare_to_update_vars, prepare_to_update_copies
31+
2532
**March 12 2024 :: MITgcm/N-BLING with Compressed Staggered Grids. Tag v11.3.0**
2633

2734
- The DART-MITgcm code now supports compressed grids, especially suited for areas like

assimilation_code/modules/assimilation/assim_tools_mod.pf.f90

+1-5
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ module assim_tools_mod
6262

6363
use ensemble_manager_mod, only : ensemble_type, get_my_num_vars, get_my_vars, &
6464
compute_copy_mean_var, get_var_owner_index, &
65-
prepare_to_update_copies, map_pe_to_task
65+
map_pe_to_task
6666

6767
use mpi_utilities_mod, only : my_task_id, broadcast_send, broadcast_recv, &
6868
sum_across_tasks, task_count, start_mpi_timer, &
@@ -496,10 +496,6 @@ subroutine filter_assim(ens_handle, obs_ens_handle, obs_seq, keys, &
496496
my_state_loc( ens_handle%my_num_vars))
497497
! end alloc
498498

499-
! we are going to read/write the copies array
500-
call prepare_to_update_copies(ens_handle)
501-
call prepare_to_update_copies(obs_ens_handle)
502-
503499
! Initialize assim_tools_module if needed
504500
if (.not. module_initialized) call assim_tools_init()
505501

assimilation_code/modules/assimilation/filter_mod.dopplerfold.f90

+4-12
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,10 @@ module filter_mod
4646
compute_copy_mean, compute_copy_mean_sd, &
4747
compute_copy_mean_var, duplicate_ens, get_copy_owner_index, &
4848
get_ensemble_time, set_ensemble_time, broadcast_copy, &
49-
map_pe_to_task, prepare_to_update_copies, &
50-
copies_in_window, set_num_extra_copies, get_allow_transpose, &
51-
all_copies_to_all_vars, allocate_single_copy, allocate_vars, &
52-
get_single_copy, put_single_copy, deallocate_single_copy, &
53-
print_ens_handle
49+
map_pe_to_task, copies_in_window, set_num_extra_copies, &
50+
get_allow_transpose, all_copies_to_all_vars, &
51+
allocate_single_copy, allocate_vars, get_single_copy, &
52+
put_single_copy, deallocate_single_copy, print_ens_handle
5453

5554
use adaptive_inflate_mod, only : do_ss_inflate, mean_from_restart, sd_from_restart, &
5655
inflate_ens, adaptive_inflate_init, &
@@ -806,7 +805,6 @@ subroutine filter_main()
806805
call trace_message('Before prior inflation damping and prep')
807806

808807
if (inf_damping(PRIOR_INF) /= 1.0_r8) then
809-
call prepare_to_update_copies(state_ens_handle)
810808
state_ens_handle%copies(PRIOR_INF_COPY, :) = 1.0_r8 + &
811809
inf_damping(PRIOR_INF) * (state_ens_handle%copies(PRIOR_INF_COPY, :) - 1.0_r8)
812810
endif
@@ -907,7 +905,6 @@ subroutine filter_main()
907905
call trace_message('Before posterior inflation damping')
908906

909907
if (inf_damping(POSTERIOR_INF) /= 1.0_r8) then
910-
call prepare_to_update_copies(state_ens_handle)
911908
state_ens_handle%copies(POST_INF_COPY, :) = 1.0_r8 + &
912909
inf_damping(POSTERIOR_INF) * (state_ens_handle%copies(POST_INF_COPY, :) - 1.0_r8)
913910
endif
@@ -1549,9 +1546,6 @@ subroutine filter_ensemble_inflate(ens_handle, inflate_copy, inflate, ENS_MEAN_C
15491546

15501547
integer :: j, group, grp_bot, grp_top, grp_size
15511548

1552-
! Assumes that the ensemble is copy complete
1553-
call prepare_to_update_copies(ens_handle)
1554-
15551549
! Inflate each group separately; Divide ensemble into num_groups groups
15561550
grp_size = ens_size / num_groups
15571551

@@ -2827,8 +2821,6 @@ subroutine update_observations_radar(obs_ens_handle, ens_size, seq, keys, prior_
28272821
! for quiet execution, set it to false.
28282822
verbose = .true.
28292823

2830-
call prepare_to_update_copies(obs_ens_handle)
2831-
28322824
do j = 1, obs_ens_handle%my_num_vars
28332825
! get the key number associated with each of my subset of obs
28342826
! then get the obs and extract info from it.

assimilation_code/modules/assimilation/filter_mod.f90

+4-10
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,10 @@ module filter_mod
4646
compute_copy_mean, compute_copy_mean_sd, &
4747
compute_copy_mean_var, duplicate_ens, get_copy_owner_index, &
4848
get_ensemble_time, set_ensemble_time, broadcast_copy, &
49-
map_pe_to_task, prepare_to_update_copies, &
50-
copies_in_window, set_num_extra_copies, get_allow_transpose, &
51-
all_copies_to_all_vars, allocate_single_copy, allocate_vars, &
52-
get_single_copy, put_single_copy, deallocate_single_copy, &
53-
print_ens_handle
49+
map_pe_to_task, copies_in_window, set_num_extra_copies, &
50+
get_allow_transpose, all_copies_to_all_vars, &
51+
allocate_single_copy, allocate_vars, get_single_copy, &
52+
put_single_copy, deallocate_single_copy, print_ens_handle
5453

5554
use adaptive_inflate_mod, only : do_ss_inflate, mean_from_restart, sd_from_restart, &
5655
inflate_ens, adaptive_inflate_init, &
@@ -809,7 +808,6 @@ subroutine filter_main()
809808
call trace_message('Before prior inflation damping and prep')
810809

811810
if (inf_damping(PRIOR_INF) /= 1.0_r8) then
812-
call prepare_to_update_copies(state_ens_handle)
813811
state_ens_handle%copies(PRIOR_INF_COPY, :) = 1.0_r8 + &
814812
inf_damping(PRIOR_INF) * (state_ens_handle%copies(PRIOR_INF_COPY, :) - 1.0_r8)
815813
endif
@@ -910,7 +908,6 @@ subroutine filter_main()
910908
call trace_message('Before posterior inflation damping')
911909

912910
if (inf_damping(POSTERIOR_INF) /= 1.0_r8) then
913-
call prepare_to_update_copies(state_ens_handle)
914911
state_ens_handle%copies(POST_INF_COPY, :) = 1.0_r8 + &
915912
inf_damping(POSTERIOR_INF) * (state_ens_handle%copies(POST_INF_COPY, :) - 1.0_r8)
916913
endif
@@ -1566,9 +1563,6 @@ subroutine filter_ensemble_inflate(ens_handle, inflate_copy, inflate, ENS_MEAN_C
15661563
real(r8) :: lower_bound, upper_bound
15671564
integer :: dist_type
15681565

1569-
! Assumes that the ensemble is copy complete
1570-
call prepare_to_update_copies(ens_handle)
1571-
15721566
! Inflate each group separately; Divide ensemble into num_groups groups
15731567
grp_size = ens_size / num_groups
15741568

assimilation_code/modules/assimilation/obs_model_mod.f90

+2-4
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ module obs_model_mod
2020
operator(/=), operator(>), operator(-), &
2121
operator(/), operator(+), operator(<), operator(==), &
2222
operator(<=), operator(>=)
23-
use ensemble_manager_mod, only : get_ensemble_time, ensemble_type, map_task_to_pe, &
24-
prepare_to_update_vars
23+
use ensemble_manager_mod, only : get_ensemble_time, ensemble_type, map_task_to_pe
24+
2525
use mpi_utilities_mod, only : my_task_id, task_sync, block_task, &
2626
sum_across_tasks, shell_execute, my_task_id
2727
use io_filenames_mod, only : file_info_type
@@ -348,8 +348,6 @@ subroutine advance_state(ens_handle, ens_size, target_time, async, adv_ens_comma
348348
! Ok, this task does need to advance something.
349349
need_advance = 1
350350

351-
call prepare_to_update_vars(ens_handle)
352-
353351
! Increment number of ensemble member copies I have.
354352
my_num_state_copies = my_num_state_copies + 1
355353

assimilation_code/modules/observations/forward_operator_mod.f90

-7
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,6 @@ module forward_operator_mod
3030
use obs_kind_mod, only : assimilate_this_type_of_obs, evaluate_this_type_of_obs
3131

3232
use ensemble_manager_mod, only : ensemble_type, compute_copy_mean_var, &
33-
prepare_to_read_from_vars, &
34-
prepare_to_write_to_vars, &
3533
get_my_num_copies, copies_in_window, &
3634
get_allow_transpose, all_vars_to_all_copies, &
3735
all_copies_to_all_vars, allocate_single_copy, &
@@ -127,11 +125,6 @@ subroutine get_obs_ens_distrib_state(ens_handle, obs_fwd_op_ens_handle, &
127125
istatus = 999123
128126
expected_obs = MISSING_R8
129127

130-
! FIXME: these no longer do anything?
131-
! call prepare_to_write_to_vars(obs_fwd_op_ens_handle)
132-
! call prepare_to_write_to_vars(qc_ens_handle)
133-
! call prepare_to_read_from_vars(ens_handle)
134-
135128
! Set up access to the state
136129
call create_state_window(ens_handle, obs_fwd_op_ens_handle, qc_ens_handle)
137130

0 commit comments

Comments
 (0)