[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