[Dart-dev] DART/branches Revision: 10760
dart at ucar.edu
dart at ucar.edu
Thu Nov 17 11:44:39 MST 2016
thoar at ucar.edu
2016-11-17 11:44:38 -0700 (Thu, 17 Nov 2016)
440
ROMS depths are negative. Zero is the surface, the deepest parts are large negative numbers.
The model_mod.f90 and the observation converter had the opposite convention.
Since these are coded as 'heights', the bins specified in obs_diag_nml:height_edges must
have the deepest (bottom-most) edge FIRST, with the highest(the surface) is the last.
This feels a little counterintuitive when doing the data entry, but that's the way it goes.
Modified: DART/branches/rma_trunk/models/ROMS/model_mod.f90
===================================================================
--- DART/branches/rma_trunk/models/ROMS/model_mod.f90 2016-11-17 16:35:09 UTC (rev 10759)
+++ DART/branches/rma_trunk/models/ROMS/model_mod.f90 2016-11-17 18:44:38 UTC (rev 10760)
@@ -1368,12 +1368,8 @@
call nc_check(nf90_get_var( ncid, VarID, VLAT), &
'get_grid', 'get_var lat_v '//trim(roms_filename))
-! changing the convention so that all depths are
-! positive with 0 being at the surface.
-UDEP(:,:,:) = abs(UDEP(:,:,:))
-VDEP(:,:,:) = abs(VDEP(:,:,:))
-TDEP(:,:,:) = abs(TDEP(:,:,:))
-WDEP(:,:,:) = abs(WDEP(:,:,:))
+! Be aware that all the depths are negative values.
+! The surface of the ocean is 0.0, the deepest is a big negative value.
if (do_output() .and. debug > 0) then
write(string1,*)' min/max ULON ',minval(ULON), maxval(ULON)
@@ -1806,7 +1802,7 @@
!>
!> Returns the DART location given a fractional i, j, k and a specified kind
!>
-!> @param fjloc fractional x index
+!> @param filoc fractional x index
!> @param fjloc fractional y index
!> @param fkloc fractional vert index
!> @param dart_kind
@@ -1816,7 +1812,7 @@
!> for interpolating locations. First we interpolate in latitude
!> and longitude, then interpolate in height. The hgt of each grid
!> cell can very on each interpolation, so we have to be careful how
-!> we interpolte in the horizontal. Using the 4 different heights
+!> we interpolate in the horizontal. Using the 4 different heights
!> and lat_frac, lon_frac, hgt_frac we can do a simple trilinear
!> interpolation to find the location given fractional indicies.
!>
Modified: DART/branches/rma_trunk/models/ROMS/work/input.nml
===================================================================
--- DART/branches/rma_trunk/models/ROMS/work/input.nml 2016-11-17 16:35:09 UTC (rev 10759)
+++ DART/branches/rma_trunk/models/ROMS/work/input.nml 2016-11-17 18:44:38 UTC (rev 10760)
@@ -257,10 +257,10 @@
&obs_diag_nml
obs_sequence_name = ''
obs_sequence_list = 'obs_seq_files.txt'
- first_bin_center = 2011, 1, 3, 0, 0, 0
- last_bin_center = 2011, 1, 8, 0, 0, 0
- bin_separation = 0, 0, 1, 0, 0, 0
- bin_width = 0, 0, 1, 0, 0, 0
+ first_bin_center = 2013, 1, 1, 0, 0, 0
+ last_bin_center = 2013, 1, 31, 0, 0, 0
+ bin_separation = 0, 0, 2, 0, 0, 0
+ bin_width = 0, 0, 2, 0, 0, 0
time_to_skip = 0, 0, 0, 0, 0, 0
max_num_bins = 1000
trusted_obs = 'null'
@@ -269,8 +269,8 @@
lonlim2 = 360.0
latlim1 = -90.0
latlim2 = 90.0
- reg_names = 'Earth'
- hlevel_edges = 1.0, -10.0, -20.0, -50.0, -100.0, -200.0, -500.0, -1000.0, -2000.0, -5000.0
+ reg_names = 'WC13'
+ hlevel_edges = -5000.0, -2000.0, -1000.0, -500.0, -200.0, -100.0, -50.0, -20.0, -10.0, 1.0
print_mismatched_locs = .false.
create_rank_histogram = .true.
outliers_in_histogram = .true.
@@ -292,14 +292,14 @@
&obs_seq_to_netcdf_nml
- obs_sequence_name = 'obs_seq.final'
- obs_sequence_list = ''
+ obs_sequence_name = ''
+ obs_sequence_list = 'obs_seq_files.txt'
append_to_netcdf = .false.
lonlim1 = 0.0
lonlim2 = 360.0
latlim1 = -90.0
latlim2 = 90.0
- verbose = .false.
+ verbose = .true.
/
Modified: DART/branches/rma_trunk/observations/ROMS/convert_roms_obs.f90
===================================================================
--- DART/branches/rma_trunk/observations/ROMS/convert_roms_obs.f90 2016-11-17 16:35:09 UTC (rev 10759)
+++ DART/branches/rma_trunk/observations/ROMS/convert_roms_obs.f90 2016-11-17 18:44:38 UTC (rev 10760)
@@ -214,8 +214,6 @@
call getvar_real(ncid, "obs_depth", depth, dmiss=missing)
where(depth == missing)
depth = MISSING_R8
- elsewhere
- depth = abs(depth)
end where
endif
More information about the Dart-dev
mailing list