[Dart-dev] DART/branches Revision: 11891
dart at ucar.edu
dart at ucar.edu
Tue Aug 8 16:10:38 MDT 2017
hendric at ucar.edu
2017-08-08 16:10:37 -0600 (Tue, 08 Aug 2017)
255
was using the wrong ncid for replacing missing_r8 values.
cleaned up the logic for inserting and reinserting
missing values. updated pathnames so that quick build
would work and changed allow_missing_r8 to
allow_missing_r8_clm in the filter namelist.
Modified: DART/branches/rma_fix_clm_restarts/assimilation_code/modules/assimilation/filter_mod.f90
===================================================================
--- DART/branches/rma_fix_clm_restarts/assimilation_code/modules/assimilation/filter_mod.f90 2017-08-08 21:56:53 UTC (rev 11890)
+++ DART/branches/rma_fix_clm_restarts/assimilation_code/modules/assimilation/filter_mod.f90 2017-08-08 22:10:37 UTC (rev 11891)
@@ -246,11 +246,11 @@
! Some models are allowed to have MISSING_R8 values in the DART state vector.
! If they are encountered, it is not necessarily a FATAL error.
! Most of the time, if a MISSING_R8 is encountered, DART should die.
-! CLM should have allow_missing_r8 = .true.
+! CLM should have allow_missing_clm = .true.
! maybe POP - but in POP the missing values are land and all ensemble members
! have the same missing values. CLM is different in that only some ensemble members may
! have missing values and so we have a deficient ensemble size at those state locations.
-logical :: allow_missing_r8 = .false.
+logical :: allow_missing_clm = .false.
namelist /filter_nml/ async, &
@@ -299,7 +299,7 @@
output_mean, &
output_sd, &
write_all_stages_at_end, &
- allow_missing_r8
+ allow_missing_clm
!----------------------------------------------------------------
@@ -431,7 +431,7 @@
inf_damping(2) = 1.0_r8 ! no damping
endif
-call set_allow_missing_r8(allow_missing_r8)
+call set_allow_missing_r8(allow_missing_clm)
allow_missing = get_missing_ok_status()
call trace_message('Before initializing inflation')
Modified: DART/branches/rma_fix_clm_restarts/assimilation_code/modules/assimilation/filter_mod.nml
===================================================================
--- DART/branches/rma_fix_clm_restarts/assimilation_code/modules/assimilation/filter_mod.nml 2017-08-08 21:56:53 UTC (rev 11890)
+++ DART/branches/rma_fix_clm_restarts/assimilation_code/modules/assimilation/filter_mod.nml 2017-08-08 22:10:37 UTC (rev 11891)
@@ -53,5 +53,5 @@
output_forward_op_errors = .false.,
silence = .false.,
- allow_missing_r8 = .false.
+ allow_missing_clm = .false.
/
Modified: DART/branches/rma_fix_clm_restarts/models/clm/model_mod.f90
===================================================================
--- DART/branches/rma_fix_clm_restarts/models/clm/model_mod.f90 2017-08-08 21:56:53 UTC (rev 11890)
+++ DART/branches/rma_fix_clm_restarts/models/clm/model_mod.f90 2017-08-08 22:10:37 UTC (rev 11891)
@@ -348,11 +348,6 @@
type(time_type) :: model_timestep ! smallest time to adv model
-INTERFACE fill_missing_r8_with_original
- MODULE PROCEDURE fill_missing_r8_with_orig_1d
- MODULE PROCEDURE fill_missing_r8_with_orig_2d
-END INTERFACE
-
INTERFACE DART_get_var
MODULE PROCEDURE get_var_1d
MODULE PROCEDURE get_var_2d
@@ -1528,7 +1523,7 @@
character (len=NF90_MAX_NAME) :: varname
character (len=256) :: myerrorstring
-if ( .not. module_initialized ) call static_init_model
+if ( .not. module_initialized ) call static_init_model()
! Must check anything with a dimension of 'levtot' or 'levsno' and manually
! set the values to DART missing. If only it were that easy ...
@@ -1580,8 +1575,7 @@
varname = trim(progvar(ivar)%varname)
myerrorstring = trim(progvar(ivar)%origin)//' '//trim(progvar(ivar)%varname)
-
- call nc_check(nf90_open(trim(progvar(ivar)%origin), NF90_NOWRITE, ncid_in), &
+ call nc_check(nf90_open(trim(clm_restart_filename), NF90_NOWRITE, ncid_in), &
'clm_to_dart_state_vector','open '//trim(myerrorstring))
! File is not required to have a time dimension
@@ -1595,7 +1589,7 @@
call nc_check(nf90_inq_varid(ncid_out, varname, var_id_out), &
'clm_to_dart_state_vector', 'inq_varid output '//trim(myerrorstring))
- call nc_check(nf90_inquire_variable( ncid_out, var_id_out, dimids=dimIDs, ndims=ncNdims), &
+ call nc_check(nf90_inquire_variable( ncid_out, var_id_out), &
'clm_to_dart_state_vector', 'inquire_variable '//trim(myerrorstring))
! Check the rank of the variable
@@ -1644,12 +1638,6 @@
allocate(data_1d_array(ni))
call DART_get_var(ncid_in, varname, data_1d_array)
- call nc_check(nf90_inquire_variable( ncid_out, var_id_out, dimids=dimIDs), &
- 'get_var_1d', 'inquire_variable '//varname)
-
- call nc_check(nf90_inquire_dimension(ncid_out, dimIDs(1)), &
More information about the Dart-dev
mailing list