[Dart-dev] DART/branches Revision: 11909

dart at ucar.edu dart at ucar.edu
Fri Aug 25 15:38:00 MDT 2017


thoar at ucar.edu
2017-08-25 15:38:00 -0600 (Fri, 25 Aug 2017)
231
Adding documentation for the OpenGGCM model_mod.html.
Making the namelists consistent and adding support for the
revamped model_mod_check routine - which will be important
to test the model_interpolate() routine Jimmy is writing.




Added: DART/branches/openggcm/models/openggcm/doc/OpenGGCM_graphic.png
===================================================================
(Binary files differ)

Index: DART/branches/openggcm/models/openggcm/doc/OpenGGCM_graphic.png
===================================================================
--- DART/branches/openggcm/models/openggcm/doc/OpenGGCM_graphic.png	2017-08-24 21:06:31 UTC (rev 11908)
+++ DART/branches/openggcm/models/openggcm/doc/OpenGGCM_graphic.png	2017-08-25 21:38:00 UTC (rev 11909)

Property changes on: DART/branches/openggcm/models/openggcm/doc/OpenGGCM_graphic.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+image/png
\ No newline at end of property
Added: DART/branches/openggcm/models/openggcm/doc/README
===================================================================
--- DART/branches/openggcm/models/openggcm/doc/README	                        (rev 0)
+++ DART/branches/openggcm/models/openggcm/doc/README	2017-08-25 21:38:00 UTC (rev 11909)
@@ -0,0 +1,3 @@
+The OpenGGCM/DART documentation is online at 
+http://www.image.ucar.edu/DAReS/DART/DART2_Research.php#space  and
+the models/openggcm/model_mod.html


Property changes on: DART/branches/openggcm/models/openggcm/doc/README
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+Date Rev Author HeadURL Id
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: DART/branches/openggcm/models/openggcm/model_mod.f90
===================================================================
--- DART/branches/openggcm/models/openggcm/model_mod.f90	2017-08-24 21:06:31 UTC (rev 11908)
+++ DART/branches/openggcm/models/openggcm/model_mod.f90	2017-08-25 21:38:00 UTC (rev 11909)
@@ -135,12 +135,15 @@
 integer, parameter :: VAR_UPDATE_INDEX = 3
 
 ! identifiers for LAT, LON and HEIGHT
-integer, parameter :: VAR_LAT_INDEX   = 1
-integer, parameter :: VAR_LON_INDEX   = 2
-integer, parameter :: VAR_HGT_INDEX   = 3
+! The 'natural' order of the variables is height varies fastest, then lat, then lon.
+! in ncdump  ... (lon,lat,height)
+! in fortran ... (height,lat,lon)
+integer, parameter :: VAR_HGT_INDEX   = 1
+integer, parameter :: VAR_LAT_INDEX   = 2
+integer, parameter :: VAR_LON_INDEX   = 3
 
 ! things which can/should be in the model_nml
-character(len=NF90_MAX_NAME) :: openggcm_template
+character(len=NF90_MAX_NAME) :: openggcm_template = 'DATA.ionos2.nc'
 integer  :: assimilation_period_days     = 1
 integer  :: assimilation_period_seconds  = 0
 real(r8) :: model_perturbation_amplitude = 0.2
@@ -483,7 +486,7 @@
 
 !------------------------------------------------------------
 
- !> Returns the value for a single model level given the lat and lon indices
+!> Returns the value given the lon, lat, and height indices
 
 function get_val(lon_index, lat_index, height_index, var_kind, state_handle, ens_size)
 
@@ -510,10 +513,15 @@
 
 var_id = get_varid_from_kind(domain_id, var_kind)
 
+! This should take of any any permutation of storage order.
+! The use of dim_order_list means any variable can be stored
+! in any order.
+dim_index(dim_order_list(var_id, VAR_HGT_INDEX)) = height_index
+dim_index(dim_order_list(var_id, VAR_LAT_INDEX)) = lat_index
 dim_index(dim_order_list(var_id, VAR_LON_INDEX)) = lon_index
-dim_index(dim_order_list(var_id, VAR_LAT_INDEX)) = lat_index
-dim_index(dim_order_list(var_id, VAR_HGT_INDEX)) = height_index
 
+! the order of the arguments to get_dart_vector_index() is always
+! in the same order as the native storage order.
 state_index = get_dart_vector_index(dim_index(1), dim_index(2), dim_index(3), &
                                     domain_id, var_id)
 
@@ -753,8 +761,6 @@
 type(location_type), intent(out) :: location     !< location of interest
 integer, OPTIONAL,   intent(out) :: var_type     !< optional dart kind return
 
-!>@todo FIXME TJH check for correct application of the new oplus grid.
-
 ! Local variables
 real(r8) :: lat, lon, height
 integer  :: lon_index, lat_index, height_index, local_var, var_id
@@ -766,20 +772,20 @@
 


More information about the Dart-dev mailing list