[Dart-dev] DART/branches Revision: 11279

dart at ucar.edu dart at ucar.edu
Thu Mar 9 15:39:57 MST 2017


thoar at ucar.edu
2017-03-09 15:39:55 -0700 (Thu, 09 Mar 2017)
913
This uses the additions for the POP2 namelists without breaking
the earlier pop_in namelist support. Also supports along-track
sea level anomaly observation assimilation.  The long-term mean
dynamic topography file is read from the &model_nml:mdt_reference_file_name 
variable.  The size of the 'mdt' variable is compared to the expected
size, the units are converted to SI upon read - as the observations
are also SI, and the forward operator requires SI.

The setup and assimilate scripts work with the new assumed filenames
and support the netCDF-only logic.  The assimilate script allows
DART to modify the restart files directly - no safety or backup files are created.
If the assimilation corrupts the POP .r. file, you must revert to a previous
restart set.

The AVISO converter 'makedaily.sh' script is simpler and supports the
addition of the WOD observations into the output observation sequence file.




Modified: DART/branches/rma_trunk/models/POP/dart_pop_mod.f90
===================================================================
--- DART/branches/rma_trunk/models/POP/dart_pop_mod.f90	2017-03-09 22:26:59 UTC (rev 11278)
+++ DART/branches/rma_trunk/models/POP/dart_pop_mod.f90	2017-03-09 22:39:55 UTC (rev 11279)
@@ -6,7 +6,7 @@
 
 module dart_pop_mod
 
-use        types_mod, only : r8, rad2deg, PI, SECPERDAY
+use        types_mod, only : r4, r8, rad2deg, PI, SECPERDAY, MISSING_R8
 use time_manager_mod, only : time_type, get_date, set_date, get_time, set_time, &
                              set_calendar_type, get_calendar_string, &
                              print_date, print_time, operator(==), operator(-)
@@ -26,7 +26,7 @@
           get_horiz_grid_dims, get_vert_grid_dim, &
           read_horiz_grid, read_topography, read_vert_grid, &
           write_pop_namelist, get_pop_restart_filename, &
-          set_binary_file_conversion
+          set_binary_file_conversion, read_mean_dynamic_topography
 
 ! version controlled file description for error handling, do not edit
 character(len=256), parameter :: source   = &
@@ -63,12 +63,16 @@
 real(r8) :: dtuxcel, dt_count
 integer  :: iyear0, imonth0, iday0, ihour0, iminute0, isecond0
 integer  :: stop_count, fit_freq, time_mix_freq
+real(r8) :: robert_alpha, robert_nu
 
+
 namelist /time_manager_nml/ runid, time_mix_opt, time_mix_freq, &
     impcor, laccel, accel_file, dtuxcel, iyear0, imonth0, &
     iday0, ihour0, iminute0, isecond0, dt_option, dt_count, &
-    stop_option, stop_count, date_separator, allow_leapyear, fit_freq
+    stop_option, stop_count, date_separator, allow_leapyear, fit_freq, &
+    robert_alpha, robert_nu
 
+
 !------------------------------------------------------------------
 ! The POP I/O namelist variables
 !------------------------------------------------------------------
@@ -114,10 +118,12 @@
 character(len= 64) :: clinic_distribution_type, tropic_distribution_type
 character(len= 64) :: ew_boundary_type, ns_boundary_type
 integer :: nprocs_clinic, nprocs_tropic
+logical :: profile_barrier
 
 namelist /domain_nml/ clinic_distribution_type, nprocs_clinic, &
                       tropic_distribution_type, nprocs_tropic, &
-                      ew_boundary_type, ns_boundary_type
+                      ew_boundary_type, ns_boundary_type, &
+                      profile_barrier
 
 !------------------------------------------------------------------
 ! The POP grid info namelist
@@ -160,7 +166,8 @@
                       bottom_cell_file, region_mask_file
 character(len= 64) :: horiz_grid_opt, sfc_layer_opt, vert_grid_opt, &
                       topography_opt
-logical :: partial_bottom_cells, topo_smooth, flat_bottom, lremove_points
+logical :: partial_bottom_cells, topo_smooth, flat_bottom, lremove_points, &
+           l1ddyn
 integer :: kmt_kmin, n_topo_smooth
 
 namelist /grid_nml/ horiz_grid_opt, horiz_grid_file, sfc_layer_opt, &
@@ -168,7 +175,7 @@
     topography_file, topography_outfile, bathymetry_file, &
     partial_bottom_cells, bottom_cell_file, n_topo_smooth, &
     region_mask_file, topo_smooth, flat_bottom, lremove_points, &
-    region_info_file
+    region_info_file, l1ddyn
 
 !======================================================================
 contains
@@ -731,7 +738,7 @@
 logical :: three_columns
 character(len=256) :: line
 
-real(r8), parameter :: centemeters_to_meters = 0.01_r8
+real(r8), parameter :: centimeters_to_meters = 0.01_r8
 
 if ( .not. module_initialized ) call initialize_module
 
@@ -760,8 +767,8 @@
    ! read depth and calculate center and bottom of cells
    read(line,*,iostat=ios) depth
 
-   ZC(1) = depth*centemeters_to_meters*0.5_r8
-   ZG(1) = depth*centemeters_to_meters
+   ZC(1) = depth*centimeters_to_meters*0.5_r8
+   ZG(1) = depth*centimeters_to_meters
 endif
 
 do i=2, nz
@@ -771,8 +778,8 @@
    else
       read(iunit,*,iostat=ios) depth
 
-      ZC(i) = ZG(i-1) + depth*centemeters_to_meters*0.5_r8
-      ZG(i) = ZG(i-1) + depth*centemeters_to_meters
+      ZC(i) = ZG(i-1) + depth*centimeters_to_meters*0.5_r8
+      ZG(i) = ZG(i-1) + depth*centimeters_to_meters


More information about the Dart-dev mailing list