Skip to content

Commit 74b72f6

Browse files
call assim_model_mod rather than model_mod directly for dart programs
Public model_mod routines through assim_mod_mod model_mod_check use assim_mod_mod::interpolate FIXMES fixed: * nc_write_model_atts - was not going though assim_model_mod * read_model_time in direct_netcdf_mod was not going though assim_model_mod Left alone model specific programs, i.e. those in models directory and the two obs converters that use model info: * create_identity_stream_flow_obs (models/wrf_hydro) * convert_roms_obs (obs_converters/ROMS) fixes #1056
1 parent 9431d93 commit 74b72f6

11 files changed

Lines changed: 27 additions & 30 deletions

File tree

assimilation_code/modules/assimilation/assim_model_mod.f90

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@ module assim_model_mod
2626
pert_model_copies, get_close_obs, get_close_state, &
2727
convert_vertical_obs, convert_vertical_state, &
2828
interpolate => model_interpolate, &
29-
read_model_time, write_model_time
29+
read_model_time, write_model_time, &
30+
nc_write_model_atts
3031

3132
implicit none
3233
private
@@ -46,7 +47,8 @@ module assim_model_mod
4647
convert_vertical_obs, &
4748
convert_vertical_state, &
4849
read_model_time, &
49-
write_model_time
50+
write_model_time, &
51+
nc_write_model_atts
5052

5153
! Ensure init code is called exactly once
5254
logical :: module_initialized = .false.

assimilation_code/modules/io/direct_netcdf_mod.f90

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -102,13 +102,10 @@ module direct_netcdf_mod
102102
netcdf_file_type, READ_COPY, WRITE_COPY, &
103103
noutput_state_variables
104104

105-
use assim_model_mod, only : get_model_size, read_model_time, write_model_time
106-
107-
!>@todo FIXME : should move to assim_model_mod.f90
108-
use model_mod, only : nc_write_model_atts
105+
use assim_model_mod, only : get_model_size, read_model_time, write_model_time, &
106+
nc_write_model_atts
109107

110108
use typesizes
111-
112109
use netcdf
113110

114111
implicit none

assimilation_code/modules/io/state_vector_io_mod.f90

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,7 @@ module state_vector_io_mod
6161
assert_restart_names_initialized, &
6262
single_file_initialized
6363

64-
!>@todo FIXME This should go through assim_model_mod
65-
use model_mod, only : read_model_time
64+
use assim_model_mod, only : read_model_time
6665

6766
use state_structure_mod, only : get_num_domains
6867

assimilation_code/programs/create_fixed_network_seq/create_fixed_network_seq.f90

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ program create_fixed_network_seq
1616
get_copy_meta_data, get_qc_meta_data, set_qc_meta_data
1717
use time_manager_mod, only : time_type, set_time, interactive_time, &
1818
operator(*), operator(+)
19-
use model_mod, only : static_init_model
19+
use assim_model_mod, only : static_init_assim_model
2020

2121
implicit none
2222

@@ -34,7 +34,7 @@ program create_fixed_network_seq
3434
call initialize_utilities('Create_fixed_network_seq')
3535

3636
! Call the underlying model's static initialization for calendar info
37-
call static_init_model()
37+
call static_init_assim_model()
3838

3939
! Initialize the obs_sequence module
4040
call static_init_obs_sequence

assimilation_code/programs/fill_inflation_restart/fill_inflation_restart.f90

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ program fill_inflation_restart
3636
get_restart_filename, set_file_metadata, &
3737
set_io_copy_flag, READ_COPY, WRITE_COPY
3838

39-
use model_mod, only : get_model_size
39+
use assim_model_mod, only : get_model_size
4040

4141
use mpi_utilities_mod, only : initialize_mpi_utilities, finalize_mpi_utilities
4242

assimilation_code/programs/model_mod_check/model_mod_check.f90

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@ program model_mod_check
2323

2424
use obs_sequence_mod, only : static_init_obs_sequence
2525

26-
use assim_model_mod, only : static_init_assim_model
26+
use assim_model_mod, only : static_init_assim_model, get_model_size, &
27+
get_state_meta_data
2728

2829
use time_manager_mod, only : time_type, print_time, print_date, operator(-), &
2930
get_calendar_type, NO_CALENDAR
@@ -42,8 +43,6 @@ program model_mod_check
4243

4344
use distributed_state_mod, only : create_state_window, free_state_window
4445

45-
use model_mod, only : get_model_size, get_state_meta_data
46-
4746
use test_interpolate_mod, only : test_interpolate_single, &
4847
test_interpolate_range, &
4948
find_closest_gridpoint

models/model_mod_tools/model_check_utilities_mod.f90

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ module model_check_utilities_mod
2424

2525
use ensemble_manager_mod, only : ensemble_type
2626

27-
use model_mod, only : get_model_size, &
27+
use assim_model_mod, only : get_model_size, &
2828
get_state_meta_data, &
29-
model_interpolate
29+
interpolate
3030

3131
implicit none
3232
private
@@ -83,7 +83,7 @@ function test_single_interpolation(ens_handle, &
8383
write(*,'(A)') ''
8484
endif
8585

86-
call model_interpolate(ens_handle, ens_size, location, quantity_index, interp_vals, ios_out)
86+
call interpolate(ens_handle, ens_size, location, quantity_index, interp_vals, ios_out)
8787

8888
num_passed = 0
8989
do imem = 1, ens_size

models/model_mod_tools/test_interpolate_oned.f90

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ module test_interpolate_mod
3232
count_error_codes, &
3333
verify_consistent_istatus
3434

35-
use model_mod, only : get_model_size, &
35+
use assim_model_mod, only : get_model_size, &
3636
get_state_meta_data, &
37-
model_interpolate
37+
interpolate
3838

3939
use netcdf
4040

@@ -141,7 +141,7 @@ function test_interpolate_range( ens_handle, &
141141
X(i) = interp_test_xrange(1) + real(i-1,r8) * interp_test_dx
142142
loc = set_location(X(i))
143143

144-
call model_interpolate(ens_handle, ens_size, loc, quantity_index, field(i,:), ios_out)
144+
call interpolate(ens_handle, ens_size, loc, quantity_index, field(i,:), ios_out)
145145

146146
call verify_consistent_istatus(ens_size, field(i,:), ios_out)
147147

models/model_mod_tools/test_interpolate_threed_cartesian.f90

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ module test_interpolate_mod
3232
count_error_codes, &
3333
verify_consistent_istatus
3434

35-
use model_mod, only : get_model_size, &
35+
use assim_model_mod, only : get_model_size, &
3636
get_state_meta_data, &
37-
model_interpolate
37+
interpolate
3838

3939
use netcdf
4040

@@ -145,7 +145,7 @@ function test_interpolate_range( ens_handle, &
145145
Z(k) = interp_test_zrange(1) + real(k-1,r8) * interp_test_dz
146146
loc = set_location(X(i), Y(j), Z(k))
147147

148-
call model_interpolate(ens_handle, ens_size, loc, quantity_index, &
148+
call interpolate(ens_handle, ens_size, loc, quantity_index, &
149149
field(i,j,k,:), ios_out)
150150

151151
call verify_consistent_istatus(ens_size, field(i,j,k,:), ios_out)

models/model_mod_tools/test_interpolate_threed_sphere.f90

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ module test_interpolate_mod
3434
count_error_codes, &
3535
verify_consistent_istatus
3636

37-
use model_mod, only : get_model_size, &
37+
use assim_model_mod, only : get_model_size, &
3838
get_state_meta_data, &
39-
model_interpolate
39+
interpolate
4040

4141
use netcdf
4242

@@ -168,7 +168,7 @@ function test_interpolate_range( ens_handle, &
168168
vert(kvert) = interp_test_vertrange(1) + real(kvert-1,r8) * interp_test_dvert
169169
loc = set_location(lon(ilon), lat(jlat), vert(kvert), vertcoord)
170170

171-
call model_interpolate(ens_handle, ens_size, loc, quantity_index, &
171+
call interpolate(ens_handle, ens_size, loc, quantity_index, &
172172
field(ilon,jlat,kvert,:), ios_out)
173173

174174
call verify_consistent_istatus(ens_size, field(ilon,jlat,kvert,:), ios_out)

0 commit comments

Comments
 (0)