Skip to content

Commit

Permalink
Add MGBF-based localization
Browse files Browse the repository at this point in the history
  • Loading branch information
Sho Yokota authored and Sho Yokota committed Feb 15, 2024
1 parent 74ac594 commit eeadfd6
Show file tree
Hide file tree
Showing 30 changed files with 25,967 additions and 118 deletions.
22 changes: 22 additions & 0 deletions src/gsi/gsi_files.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,28 @@ class_wrf_binary_interface.f90
class_wrf_netcdf_interface.f90
class_wrwrfmassa.f90
class_wrwrfnmma.f90
mgbf/jp_pkind.f90
mgbf/jp_pkind2.f90
mgbf/jp_pietc.f90
mgbf/jp_pietc_s.f90
mgbf/jp_pmat.f90
mgbf/jp_pmat4.f90
mgbf/jp_pbfil.f90
mgbf/jp_pbfil2.f90
mgbf/jp_pbfil3.f90
mgbf/mg_mppstuff.f90
mgbf/mg_domain.f90
mgbf/mg_domain_loc.f90
mgbf/mg_parameter.f90
mgbf/mg_bocos.f90
mgbf/mg_transfer.f90
mgbf/mg_generations.f90
mgbf/mg_interpolate.f90
mgbf/mg_filtering.f90
mgbf/mg_timers.f90
mgbf/mg_entrymod.f90
mgbf/mg_intstate.f90
mgbf/mg_input.f90
)

# Stubs for Global interface
Expand Down
6 changes: 4 additions & 2 deletions src/gsi/gsimod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ module gsimod
ntotensgrp,nsclgrp,naensgrp,ngvarloc,ntlevs_ens,naensloc, &
r_ensloccov4tim,r_ensloccov4var,r_ensloccov4scl,l_timloc_opt,&
vdl_scale,vloc_varlist,&
global_spectral_filter_sd,assign_vdl_nml,parallelization_over_ensmembers
global_spectral_filter_sd,assign_vdl_nml,parallelization_over_ensmembers,l_mgbf_loc
use hybrid_ensemble_parameters,only : l_both_fv3sar_gfs_ens,n_ens_gfs,n_ens_fv3sar,weight_ens_gfs,weight_ens_fv3sar
use rapidrefresh_cldsurf_mod, only: init_rapidrefresh_cldsurf, &
dfi_radar_latent_heat_time_period,metar_impact_radius,&
Expand Down Expand Up @@ -529,6 +529,7 @@ module gsimod
! - innov_use_model_fed=.true. : Use FED from BG to calculate innovation.
! this requires if_model_fed=.true.
! it works either an EnVar DA run or a GSI observer run.
! 12-12-2023 yokota - add MGBF-based localization
!
!EOP
!-------------------------------------------------------------------------
Expand Down Expand Up @@ -1452,6 +1453,7 @@ module gsimod
! ^ ^ ^ ^ ^
! s_ens_h = v1L1 v2L1 v3L1 v1L2 v2L2
! Then localization lengths will be assigned as above.
! l_mgbf_loc - if true, multi-grid beta filter is used for localization instead of recursive filter
!
namelist/hybrid_ensemble/l_hyb_ens,uv_hyb_ens,q_hyb_ens,aniso_a_en,generate_ens,n_ens,&
l_both_fv3sar_gfs_ens,n_ens_gfs,n_ens_fv3sar,weight_ens_gfs,weight_ens_fv3sar,nlon_ens,nlat_ens,jcap_ens,&
Expand All @@ -1462,7 +1464,7 @@ module gsimod
i_en_perts_io,l_ens_in_diff_time,ensemble_path,ens_fast_read,sst_staticB,limqens, &
nsclgrp,l_timloc_opt,ngvarloc,naensloc,r_ensloccov4tim,r_ensloccov4var,r_ensloccov4scl,&
vdl_scale,vloc_varlist,&
global_spectral_filter_sd,assign_vdl_nml,parallelization_over_ensmembers
global_spectral_filter_sd,assign_vdl_nml,parallelization_over_ensmembers,l_mgbf_loc

! rapidrefresh_cldsurf (options for cloud analysis and surface
! enhancement for RR appilcation ):
Expand Down
Loading

0 comments on commit eeadfd6

Please sign in to comment.