[Dart-dev] DART/branches Revision: 11683

dart at ucar.edu dart at ucar.edu
Tue May 30 10:06:24 MDT 2017


nancy at ucar.edu
2017-05-30 10:06:21 -0600 (Tue, 30 May 2017)
678
add lorenz 96 2-scale model mod to the rma release.
updated diagnostics to match.  added 2 new obs types
and quantities for this model (large scale and small
scale).  it was only working before because it was
only assimilating identity obs.

update the test routines to allow '-default' as a flag
which says compile the models with or without mpi depending
on what the default for that quickbuild is.

add new routines to the netcdf utils to create more types of
variables and attributes.  add more options to allow the
location variable to have a name different than 'locations'.

change failed vertical convert from QC 7 to QC 4 - after testing
it should be changed to QC 8.




Index: DART/branches/rma_trunk
===================================================================
--- DART/branches/rma_trunk	2017-05-28 20:22:41 UTC (rev 11682)
+++ DART/branches/rma_trunk	2017-05-30 16:06:21 UTC (rev 11683)

Property changes on: DART/branches/rma_trunk
___________________________________________________________________
Modified: svn:mergeinfo
## -41,5 +41,6 ##
 /DART/branches/rma_trunk_read_transpose:9214-9256
 /DART/branches/rma_trunk_vert_loc:8538-8543
 /DART/branches/rma_types_kinds:11208-11242
+/DART/branches/rma_updates_nancy:11621-11682
 /DART/branches/trunk_with_cam_style:9473-9540
 /DART/trunk:6306-9556
\ No newline at end of property
Modified: DART/branches/rma_trunk/assimilation_code/location/utilities/location_io_mod.f90
===================================================================
--- DART/branches/rma_trunk/assimilation_code/location/utilities/location_io_mod.f90	2017-05-28 20:22:41 UTC (rev 11682)
+++ DART/branches/rma_trunk/assimilation_code/location/utilities/location_io_mod.f90	2017-05-30 16:06:21 UTC (rev 11683)
@@ -34,7 +34,8 @@
 private
 
 public :: nc_write_location_atts, nc_get_location_varids, &
-          nc_write_location, nc_write_location_vert
+          nc_write_location, nc_write_location_vert,      &
+          nc_add_location_atts
 
 ! version controlled file description for error handling, do not edit
 character(len=256), parameter :: source   = &
@@ -76,7 +77,7 @@
 integer :: rc
 character(len=32) :: context = 'nc_write_location_atts'
 
-! get an id for the locations dimension:  
+! get an id for the location dimension:  
 !  if the user passes us in a dimension id, 
 !     assume it is already created and use it.
 !  if they pass in a valid length, create a 'location' dimension.
@@ -113,6 +114,28 @@
    call nc_check(rc, context, 'def_var4:location', fname)
 endif
 
+call nc_add_location_atts(ncFileID, 'location', fname)
+
+end subroutine nc_write_location_atts
+
+!----------------------------------------------------------------------------
+!> Add location-related attributes to the given variable.
+!> (assumes that this variable will contain location info)
+
+subroutine nc_add_location_atts(ncFileID, varname, fname) 
+ 
+integer,                    intent(in) :: ncFileID    ! handle to the netcdf file
+character(len=*),           intent(in) :: varname     ! name of location variable
+character(len=*), optional, intent(in) :: fname       ! file name (for error printing purposes)
+
+integer :: VarID
+integer :: rc
+character(len=32) :: context = 'nc_add_location_atts'
+
+! find the id of the given variable name
+rc = nf90_inq_varid(ncFileID, varname, varid=VarID)
+call nc_check(rc, context, 'inq_varid:'//trim(varname), fname)
+
 rc = nf90_put_att(ncFileID, VarID, 'description', 'location coordinates')
 call nc_check(rc, context, 'put_att:description', fname)
 
@@ -132,10 +155,10 @@
 ! create a variable to store the vert choice
 
 if (has_vertical_choice()) then
-   call nc_write_location_vert(ncFileID, LocDimID, fname)
+   call nc_write_location_vert(ncFileID, VarID, fname)
 endif
 
-end subroutine nc_write_location_atts
+end subroutine nc_add_location_atts
 
 !----------------------------------------------------------------------------
 !> Define the ancillary vertical array and attributes

Modified: DART/branches/rma_trunk/assimilation_code/modules/assimilation/quality_control_mod.f90
===================================================================
--- DART/branches/rma_trunk/assimilation_code/modules/assimilation/quality_control_mod.f90	2017-05-28 20:22:41 UTC (rev 11682)
+++ DART/branches/rma_trunk/assimilation_code/modules/assimilation/quality_control_mod.f90	2017-05-30 16:06:21 UTC (rev 11683)
@@ -57,7 +57,9 @@
 integer, parameter :: DARTQC_NOT_IN_NAMELIST       = 5
 integer, parameter :: DARTQC_BAD_INCOMING_QC       = 6
 integer, parameter :: DARTQC_FAILED_OUTLIER_TEST   = 7
-integer, parameter :: DARTQC_FAILED_VERT_CONVERT   = 7
+integer, parameter :: DARTQC_FAILED_VERT_CONVERT   = 4   ! change this to 8 after we test more
+!integer, parameter :: DARTQC_FAILED_VERT_CONVERT   = 8
+!integer, parameter :: DARTQC_OUTSIDE_DOMAIN        = 9  ! we have no way (yet) for the model_mod to signal this
 
 !------------------------------------------------------------------------------
 ! namelist parameters

Modified: DART/branches/rma_trunk/assimilation_code/modules/observations/DEFAULT_obs_kind_mod.F90
===================================================================
--- DART/branches/rma_trunk/assimilation_code/modules/observations/DEFAULT_obs_kind_mod.F90	2017-05-28 20:22:41 UTC (rev 11682)


More information about the Dart-dev mailing list