<p><b>dwj07@fsu.edu</b> 2012-11-19 13:34:57 -0700 (Mon, 19 Nov 2012)</p><p><br>
        -- BRANCH COMMIT --<br>
<br>
        First cut at cleaning up the namelist.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/ocean_projects/namelist_cleanup/namelist.input.ocean
===================================================================
--- branches/ocean_projects/namelist_cleanup/namelist.input.ocean        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/namelist.input.ocean        2012-11-19 20:34:57 UTC (rev 2316)
@@ -1,110 +1,149 @@
-&amp;sw_model
-   config_test_case = 0
-   config_time_integration = 'split_explicit'
-   config_rk_filter_btr_mode = .false.
-   config_dt = 180.0
-   config_start_time = '0000-01-01_00:00:00'
-   config_run_duration = '1_00:00:00'
-   config_stats_interval = 480
+&amp;time_management
+        config_do_restart = .false.
+        config_start_time = '0000-01-01_00:00:00'
+        config_stop_time = 'none'
+        config_run_duration = '1_00:00:00'
+        config_calendar_type = '360day'
+        config_ncouple_per_day = 4
 /
 &amp;io
-   config_input_name = 'grid.nc'
-   config_output_name = 'output.nc'
-   config_restart_name = 'restart.nc'
-   config_output_interval = '1_00:00:00'
-   config_frames_per_outfile = 1000000
-   config_pio_num_iotasks = 0
-   config_pio_stride      = 1
-   config_write_output_on_startup = .true.
+        config_input_name   = 'grid.nc'
+        config_restart_name = 'restart.nc'
+        config_output_name  = 'output.nc'
+        config_restart_interval = '010_00:00:00'
+        config_output_interval  = '005_00:00:00'
+        config_stats_interval   = '000_06:00:00'
+        config_write_output_on_startup = .true.
+        config_write_stats_on_startup = .false.
+        config_frames_per_outfile = 1000000
+        config_pio_num_iotasks = 0
+        config_pio_stride      = 1
 /
-&amp;decomposition
-   config_number_of_blocks = 0
-   config_block_decomp_file_prefix = 'graph.info.part.'
-   config_explicit_proc_decomp = .false.
-   config_proc_decomp_file_prefix = 'graph.info.part.'
+&amp;time_integration
+        config_dt = 180.0
+        config_time_integrator = 'split_explicit'
 /
-&amp;restart
-   config_do_restart = .false.
-   config_restart_interval = '120_00:00:00'
-/
 &amp;grid
-   config_vert_grid_type = 'isopycnal'
-   config_pressure_type = 'pressure'
-   config_rho0 = 1014.65
+        config_num_halos = 3
+        config_vert_grid_type = 'non-isopycnal'  (see notes on bottom)
+        config_vert_adv_layer_weights = 'uniform'  (see notes on bottom)
+        config_enforce_grid_at_restart = .false.
+        config_alter_ICs_for_pbcs = 'zlevel_pbcs_off'
+        config_min_pbc_fraction = 0.10
+        config_check_ssh_consistency = .true.
 /
-&amp;partial_bottom_cells
-   config_alter_ICs_for_pbcs = 'off'
-   config_min_pbc_fraction = 0.10
-   config_check_ssh_consistency = .true.
-   config_check_zlevel_consistency = .false.
+&amp;decomposition
+        config_number_of_blocks = 0
+        config_block_decomp_file_prefix = 'graph.info.part.'
+        config_explicit_proc_decomp = .false.
+        config_proc_decomp_file_prefix = 'graph.info.part.'
 /
-&amp;split_explicit_ts
-   config_n_ts_iter  =  2 
-   config_n_bcl_iter_beg =  1
-   config_n_bcl_iter_mid =  2
-   config_n_bcl_iter_end =  2
-   config_n_btr_subcycles = 10
-   config_n_btr_cor_iter = 2
-   config_u_correction = .true.
-   config_filter_btr_mode = .false.
-   config_btr_subcycle_loop_factor =  2
-   config_btr_gam1_uWt1   = 0.5
-   config_btr_gam2_SSHWt1 = 1.0
-   config_btr_gam3_uWt2   = 1.0
-   config_btr_solve_SSH2  = .false.
-/
 &amp;hmix
-   config_h_mom_eddy_visc2 = 100.0
-   config_h_mom_eddy_visc4 = 0.0
-   config_h_kappa = 0.0
-   config_h_kappa_q = 0.0
-   config_visc_vorticity_term = .true.
-   config_h_tracer_eddy_diff2 = 1.0e5
-   config_h_tracer_eddy_diff4 = 0.0
+        config_h_mom_eddy_visc2 = 100.0
+        config_h_mom_eddy_visc4 = 0.0
+        config_h_tracer_eddy_diff2 = 1.0e5
+        config_h_tracer_eddy_diff4 = 0.0
+        config_h_ScaleWithMesh = .false.
+        config_apvm_scale_factor = 0.0
+        config_visc_vorticity_visc2_scale = 1.0
+        config_visc_vorticity_visc4_scale = 1.0
+        config_visc_vorticity_term = .true.
 /
-&amp;hmix_leith
-   config_use_leith_del2 = .false.
-   config_leith_parameter = 1.0
-   config_leith_dx = 15000.0
-   config_leith_visc2_max = 2.5e3
+&amp;hmix_Leith
+        config_use_Leith_del2 = .false.
+        config_Leith_parameter = 1.0
+        config_Leith_dx = 15000.0
+        config_Leith_visc2_max = 2.5e3
 /
+&amp;hmix_GM
+        config_h_kappa = 0.0
+        config_h_kappa_q = 0.0
+/
 &amp;vmix
-   config_vert_visc_type  = 'const'
-   config_vert_diff_type  = 'const'
-   config_implicit_vertical_mix = .true.
-   config_convective_visc       = 1.0
-   config_convective_diff       = 1.0
-   config_bottom_drag_coeff     = 1.0e-3
+        config_vert_visc_type  = 'const'
+        config_vert_diff_type  = 'const'
+        config_implicit_vertical_mix = .true.
+        config_convective_visc       = 1.0
+        config_convective_diff       = 1.0
 /
 &amp;vmix_const
-   config_vert_visc       = 1.0e-5
-   config_vert_diff       = 1.0e-5 
+        config_vert_visc       = 1.0e-5
+        config_vert_diff       = 1.0e-5
 /
 &amp;vmix_rich
-   config_bkrd_vert_visc  = 1.0e-5
-   config_bkrd_vert_diff  = 1.0e-5
-   config_rich_mix        = 0.005
+        config_bkrd_vert_visc  = 1.0e-5
+        config_bkrd_vert_diff  = 1.0e-5
+        config_rich_mix        = 0.005
 /
 &amp;vmix_tanh
-   config_max_visc_tanh = 2.5e-1
-   config_min_visc_tanh = 1.0e-4
-   config_max_diff_tanh = 2.5e-2
-   config_min_diff_tanh = 1.0e-5
-   config_zMid_tanh    = -100
-   config_zWidth_tanh  = 100
+        config_max_visc_tanh = 2.5e-1
+        config_min_visc_tanh = 1.0e-4
+        config_max_diff_tanh = 2.5e-2
+        config_min_diff_tanh = 1.0e-5
+        config_zMid_tanh    = -100
+        config_zWidth_tanh  = 100
 /
-&amp;eos
-   config_eos_type = 'linear'
-/
 &amp;advection
-   config_vert_tracer_adv = 'stencil'
-   config_vert_tracer_adv_order = 2
-   config_horiz_tracer_adv_order = 2
-   config_thickness_adv_order = 2
-   config_monotonic = .false.
+        config_vert_tracer_adv = 'stencil'
+        config_vert_tracer_adv_order = 2
+        config_horiz_tracer_adv_order = 2
+        config_monotonic = .false.
+        config_coef_3rd_order = 0.25
 /
+&amp;pressure_gradient
+        config_pressure_gradient_type = 'pressure_and_zmid'
+        config_rho0 = 1014.65
+/
+&amp;bottom_drag
+        config_bottom_drag_coeff = 1.0e-3
+/
+&amp;Rayleigh_damping
+        config_Rayleigh_friction = .false.
+        config_Rayleigh_damping_coeff = 0.0
+/
 &amp;restore
-   config_restoreTS = .false.
-   config_restoreT_timescale = 90.0
-   config_restoreS_timescale = 90.0
+        config_restoreTS = .false.
+        config_restoreT_timescale = 90.0
+        config_restoreS_timescale = 90.0
+        config_use_monthly_forcing = .false.
 /
+&amp;eos
+        config_eos_type = 'linear'
+/
+&amp;split_explicit_ts
+        config_n_ts_iter  =  2
+        config_n_bcl_iter_beg =  1
+        config_n_bcl_iter_mid =  2
+        config_n_bcl_iter_end =  2
+        config_n_btr_subcycles = 10
+        config_n_btr_cor_iter = 2
+        config_u_correction = .true.
+        config_btr_subcycle_loop_factor =  2
+        config_btr_gam1_uWt1   = 0.5
+        config_btr_gam2_SSHWt1 = 1.0
+        config_btr_gam3_uWt2   = 1.0
+        config_btr_solve_SSH2  = .false.
+/
+&amp;debug
+        config_disable_h_all_tend = .false.
+        config_disable_h_hor_adv = .false.
+        config_disable_h_vert_adv = .false.
+        config_disable_u_all_tend = .false.
+        config_disable_u_hor_adv = .false.
+        config_disable_u_vert_adv = .false.
+        config_disable_u_pgrad = .false.
+        config_disable_u_gradk = .false.
+        config_disable_u_hmix = .false.
+        config_disable_u_vmix = .false.
+        config_disable_tr_all_tend = .false.
+        config_disable_tr_hor_adv = .false.
+        config_disable_tr_vert_adv = .false.
+        config_disable_tr_hmix = .false.
+        config_disable_tr_vmix = .false.
+        config_check_zlevel_consistency = .false.
+        config_filter_btr_mode = .false.
+        config_prescribe_velocity = .false.
+        config_prescribe_thickness = .false.
+        config_include_KE_vertex = .false.
+        config_check_tracer_monotonicity = .false.
+/

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/Registry
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/Registry        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/Registry        2012-11-19 20:34:57 UTC (rev 2316)
@@ -1,102 +1,142 @@
 %
 % namelist  type  namelist_record  name  default_value
 %
-namelist integer   sw_model config_test_case           5
-namelist character sw_model config_time_integration    RK4
-namelist logical   sw_model config_rk_filter_btr_mode  false
-namelist real      sw_model config_dt                  172.8
-namelist character sw_model config_calendar_type       360day
-namelist character sw_model config_start_time          0000-01-01_00:00:00
-namelist character sw_model config_stop_time           none
-namelist character sw_model config_run_duration        none
-namelist integer   sw_model config_stats_interval      100
-namelist logical   sw_model config_initial_stats       false
-namelist logical   sw_model config_prescribe_velocity  false
-namelist logical   sw_model config_prescribe_thickness false
-namelist integer   sw_model config_num_halos           3
-namelist character io       config_input_name          grid.nc
-namelist character io       config_output_name         output.nc
-namelist character io       config_restart_name        restart.nc
-namelist character io       config_output_interval     24:00:00
-namelist integer   io       config_frames_per_outfile  0
-namelist integer   io       config_pio_num_iotasks     0 
-namelist integer   io       config_pio_stride          1
-namelist logical   io       config_write_output_on_startup  true
-namelist character decomposition config_block_decomp_file_prefix  graph.info.part.
-namelist integer   decomposition config_number_of_blocks          0
-namelist logical   decomposition config_explicit_proc_decomp      false
-namelist character decomposition config_proc_decomp_file_prefix   graph.info.part.
-namelist logical   restart  config_do_restart          false
-namelist character restart  config_restart_interval    none
-namelist character grid     config_vert_grid_type      isopycnal
-namelist character grid     config_pressure_type       pressure
-namelist real      grid     config_rho0                1028
-namelist logical   grid     config_enforce_zstar_at_restart false
-namelist character partial_bottom_cells config_alter_ICs_for_pbcs zlevel_pbcs_off
-namelist real      partial_bottom_cells config_min_pbc_fraction  0.10
-namelist logical   partial_bottom_cells config_check_ssh_consistency true
-namelist logical   partial_bottom_cells config_check_zlevel_consistency false
-namelist integer   split_explicit_ts config_n_ts_iter     2
-namelist integer   split_explicit_ts config_n_bcl_iter_beg   2
+
+namelist integer   sw_model  config_test_case  0
+
+namelist logical   time_management  config_do_restart  .false.
+namelist character time_management  config_start_time  '0000-01-01_00:00:00'
+namelist character time_management  config_stop_time  'none'
+namelist character time_management  config_run_duration  '1_00:00:00'
+namelist character time_management  config_calendar_type  '360day'
+namelist integer   time_management  config_ncouple_per_day  4
+
+namelist character io               config_input_name    'grid.nc'
+namelist character io               config_restart_name  'restart.nc'
+namelist character io               config_output_name   'output.nc'
+namelist character io               config_restart_interval  '010_00:00:00'
+namelist character io               config_output_interval   '005_00:00:00'
+namelist character io               config_stats_interval    '000_06:00:00'
+namelist logical   io               config_write_output_on_startup  .true.
+namelist logical   io               config_write_stats_on_startup  .false.
+namelist integer   io               config_frames_per_outfile  1000000
+namelist integer   io               config_pio_num_iotasks  0
+namelist integer   io               config_pio_stride       1
+
+namelist real      time_integration config_dt  180.0
+namelist character time_integration config_time_integrator  'split_explicit'
+
+namelist integer   grid             config_num_halos  3
+namelist character grid             config_vert_grid_type  'non-isopycnal'
+namelist character grid             config_vert_adv_layer_weights  'uniform'
+namelist logical   grid             config_enforce_grid_on_restart  .false.
+namelist character grid             config_alter_ICs_for_pbcs  'zlevel_pbcs_off'
+namelist real      grid             config_min_pbc_fraction  0.10
+namelist logical   grid             config_check_ssh_consistency  .true.
+
+namelist integer   decomposition    config_number_of_blocks  0
+namelist character decomposition    config_block_decomp_file_prefix  'graph.info.part.'
+namelist logical   decomposition    config_explicit_proc_decomp  .false.
+namelist character decomposition    config_proc_decomp_file_prefix  'graph.info.part.'
+
+namelist logical   hmix             config_h_ScaleWithMesh  .false.
+namelist real      hmix             config_apvm_scale_factor  0.0
+namelist logical   hmix             config_visc_vorticity_term  .true.
+
+namelist logical   hmix_del2        config_use_del2 .true.
+namelist real      hmix_del2        config_h_mom_eddy_visc2  100.0
+namelist real      hmix_del2        config_h_tracer_eddy_diff2  1.0e5
+namelist real      hmix_del2        config_visc_vorticity_visc2_scale  1.0
+
+namelist logical   hmix_del4        config_use_del4 .false.
+namelist real      hmix_del4        config_h_mom_eddy_visc4  0.0
+namelist real      hmix_del4        config_h_tracer_eddy_diff4  0.0
+namelist real      hmix_del4        config_visc_vorticity_visc4_scale  1.0
+
+namelist logical   hmix_Leith       config_use_Leith_del2  .false.
+namelist real      hmix_Leith       config_Leith_parameter  1.0
+namelist real      hmix_Leith       config_Leith_dx  15000.0
+namelist real      hmix_Leith       config_Leith_visc2_max  2.5e3
+
+namelist logical   mep_standard_GM  config_use_standard_GM  .false
+namelist real      mep_standard_GM  config_h_kappa  0.0
+namelist real      mep_standard_GM  config_h_kappa_q  0.0
+
+namelist character vmix              config_vert_visc_type   'const'
+namelist character vmix              config_vert_diff_type   'const'
+namelist logical   vmix              config_implicit_vertical_mix  .true.
+namelist real      vmix              config_convective_visc        1.0
+namelist real      vmix              config_convective_diff        1.0
+
+namelist real      vmix_const        config_vert_visc        1.0e-5
+namelist real      vmix_const        config_vert_diff        1.0e-5
+
+namelist real      vmix_rich         config_bkrd_vert_visc   1.0e-5
+namelist real      vmix_rich         config_bkrd_vert_diff   1.0e-5
+namelist real      vmix_rich         config_rich_mix         0.005
+
+namelist real      vmix_tanh         config_max_visc_tanh  2.5e-1
+namelist real      vmix_tanh         config_min_visc_tanh  1.0e-4
+namelist real      vmix_tanh         config_max_diff_tanh  2.5e-2
+namelist real      vmix_tanh         config_min_diff_tanh  1.0e-5
+namelist real      vmix_tanh         config_zMid_tanh     -100
+namelist real      vmix_tanh         config_zWidth_tanh   100
+
+namelist character advection         config_vert_tracer_adv  'stencil'
+namelist integer   advection         config_vert_tracer_adv_order  2
+namelist integer   advection         config_horiz_tracer_adv_order  2
+namelist logical   advection         config_monotonic  .false.
+namelist real      advection         config_coef_3rd_order  0.25
+
+namelist character pressure_gradient config_pressure_gradient_type  'pressure_and_zmid'
+namelist real      pressure_gradient config_rho0  1014.65
+
+namelist real      bottom_drag       config_bottom_drag_coeff  1.0e-3
+
+namelist logical   Rayleigh_damping  config_Rayleigh_friction  .false.
+namelist real      Rayleigh_damping  config_Rayleigh_damping_coeff  0.0
+
+namelist logical   restore           config_restoreTS  .false.
+namelist real      restore           config_restoreT_timescale  90.0
+namelist real      restore           config_restoreS_timescale  90.0
+namelist logical   restore           config_use_monthly_forcing  .false.
+
+namelist character eos               config_eos_type  'linear'
+
+namelist integer   split_explicit_ts config_n_ts_iter    2
+namelist integer   split_explicit_ts config_n_bcl_iter_beg   1
 namelist integer   split_explicit_ts config_n_bcl_iter_mid   2
 namelist integer   split_explicit_ts config_n_bcl_iter_end   2
-namelist integer   split_explicit_ts config_n_btr_subcycles  20
+namelist integer   split_explicit_ts config_n_btr_subcycles  10
 namelist integer   split_explicit_ts config_n_btr_cor_iter  2
-namelist logical   split_explicit_ts config_u_correction true
-namelist logical   split_explicit_ts config_filter_btr_mode false
-namelist integer   split_explicit_ts config_btr_subcycle_loop_factor  2
+namelist logical   split_explicit_ts config_u_correction  .true.
+namelist integer   split_explicit_ts config_btr_subcycle_loop_factor   2
 namelist real      split_explicit_ts config_btr_gam1_uWt1    0.5
 namelist real      split_explicit_ts config_btr_gam2_SSHWt1  1.0
 namelist real      split_explicit_ts config_btr_gam3_uWt2    1.0
-namelist logical   split_explicit_ts config_btr_solve_SSH2   false
-namelist logical   hmix     config_h_ScaleWithMesh     false
-namelist real      hmix     config_h_mom_eddy_visc2     0.0
-namelist real      hmix     config_h_mom_eddy_visc4     0.0
-namelist logical   hmix     config_visc_vorticity_term true
-namelist real      hmix     config_visc_vorticity_visc2_scale 1.0
-namelist real      hmix     config_visc_vorticity_visc4_scale 1.0
-namelist logical   hmix     config_include_KE_vertex false
-namelist real      hmix     config_h_tracer_eddy_diff2  0.0
-namelist real      hmix     config_h_tracer_eddy_diff4  0.0
-namelist real      hmix     config_h_kappa              0.0
-namelist real      hmix     config_h_kappa_q            0.0
-namelist logical   hmix     config_rayleigh_friction    false
-namelist real      hmix     config_rayleigh_damping_coeff 0.0
-namelist real      hmix     config_apvm_scale_factor      0.0
-namelist logical   hmix_leith  config_use_leith_del2         false
-namelist real      hmix_leith  config_leith_parameter        0.0
-namelist real      hmix_leith  config_leith_dx               0.0
-namelist real      hmix_leith  config_leith_visc2_max      1000000.0
-namelist character vmix     config_vert_visc_type       const
-namelist character vmix     config_vert_diff_type       const
-namelist logical   vmix     config_implicit_vertical_mix  true
-namelist real      vmix     config_convective_visc      1.0
-namelist real      vmix     config_convective_diff      1.0
-namelist real      vmix     config_bottom_drag_coeff    1.0e-3
-namelist real      vmix_const   config_vert_visc        2.5e-4
-namelist real      vmix_const   config_vert_diff        2.5e-5
-namelist real      vmix_rich    config_bkrd_vert_visc   1.0e-4
-namelist real      vmix_rich    config_bkrd_vert_diff   1.0e-5
-namelist real      vmix_rich    config_rich_mix         0.005
-namelist real      vmix_tanh    config_max_visc_tanh    2.5e-1
-namelist real      vmix_tanh    config_min_visc_tanh    1.0e-4
-namelist real      vmix_tanh    config_max_diff_tanh    2.5e-2
-namelist real      vmix_tanh    config_min_diff_tanh    1.0e-5
-namelist real      vmix_tanh    config_zMid_tanh        -100
-namelist real      vmix_tanh    config_zWidth_tanh      100
-namelist character eos       config_eos_type            linear
-namelist character advection config_vert_tracer_adv     stencil
-namelist integer   advection config_vert_tracer_adv_order  4
-namelist integer   advection config_horiz_tracer_adv_order 2
-namelist integer   advection config_thickness_adv_order 2
-namelist real      advection config_coef_3rd_order      0.25
-namelist logical   advection config_monotonic           false
-namelist logical   advection config_check_monotonicity  false
-namelist logical   restore   config_restoreTS           false
-namelist real      restore   config_restoreT_timescale  90.0
-namelist real      restore   config_restoreS_timescale  90.0
-namelist logical   restore   config_use_monthly_forcing false
+namelist logical   split_explicit_ts config_btr_solve_SSH2   .false.
 
+namelist logical   debug             config_disable_h_all_tend  .false.
+namelist logical   debug             config_disable_h_hadv  .false.
+namelist logical   debug             config_disable_h_vadv  .false.
+namelist logical   debug             config_disable_u_all_tend  .false.
+namelist logical   debug             config_disable_u_coriolis  .false.
+namelist logical   debug             config_disable_u_pgrad  .false.
+namelist logical   debug             config_disable_u_hmix  .false.
+namelist logical   debug             config_disable_u_windstress  .false.
+namelist logical   debug             config_disable_u_vmix  .false.
+namelist logical   debug             config_disable_u_vadv  .false.
+namelist logical   debug             config_disable_tr_all_tend  .false.
+namelist logical   debug             config_disable_tr_adv  .false.
+namelist logical   debug             config_disable_tr_hmix  .false.
+namelist logical   debug             config_disable_tr_vmix  .false.
+namelist logical   debug             config_check_zlevel_consistency  .false.
+namelist logical   debug             config_filter_btr_mode  .false.
+namelist logical   debug             config_prescribe_velocity  .false.
+namelist logical   debug             config_prescribe_thickness  .false.
+namelist logical   debug             config_include_KE_vertex  .false.
+namelist logical   debug             config_check_tracer_monotonicity  .false.
+
 %
 % dim  type  name_in_file  name_in_code
 %

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_mpas_core.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_mpas_core.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_mpas_core.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -110,13 +110,13 @@
 
       call ocn_compute_max_level(domain)
 
-      if (config_enforce_zstar_at_restart) then
+      if (config_enforce_grid_on_restart) then
          call ocn_init_h_zstar(domain)
       endif
 
       if (.not.config_do_restart) call ocn_init_split_timestep(domain)
 
-      write (0,'(a,a10)'), ' Vertical grid type is: ',config_vert_grid_type
+      write (0,'(a,a)'), ' Vertical grid type is: ',config_vert_grid_type
 
       if (config_vert_grid_type.ne.'isopycnal'.and. &amp;
           config_vert_grid_type.ne.'zlevel'.and. &amp;
@@ -127,10 +127,10 @@
          call mpas_dmpar_abort(dminfo)
       endif
 
-      write (0,'(a,a10)'), ' Pressure type is: ',config_pressure_type
-      if (config_pressure_type.ne.'pressure'.and. &amp;
-          config_pressure_type.ne.'MontgomeryPotential') then
-         write (0,*) ' Incorrect choice of config_pressure_type.'
+      write (0,'(a,a)'), ' Pressure type is: ',config_pressure_gradient_type
+      if (config_pressure_gradient_type.ne.'pressure_and_zmid'.and. &amp;
+          config_pressure_gradient_type.ne.'MontgomeryPotential') then
+         write (0,*) ' Incorrect choice of config_pressure_gradient_type.'
          call mpas_dmpar_abort(dminfo)
       endif
 
@@ -162,7 +162,7 @@
    ! input arguement into mpas_init.  Ask about that later.  For now, there will be
    ! no initial statistics write.
    
-      if (config_initial_stats) then
+      if (config_write_stats_on_startup) then
           call mpas_timer_start(&quot;global diagnostics&quot;, .false., globalDiagTimer)
           call ocn_compute_global_diagnostics(domain, 1 , 0, dt)
           call mpas_timer_stop(&quot;global diagnostics&quot;, globalDiagTimer)
@@ -222,11 +222,11 @@
       !TODO: use this code if we desire to convert config_stats_interval to alarms 
       !(must also change config_stats_interval type to character) 
       ! set stats alarm, if necessary
-      !if (trim(config_stats_interval) /= &quot;none&quot;) then      
-      !   call mpas_set_timeInterval(alarmTimeStep, timeString=config_stats_interval, ierr=ierr)
-      !   alarmStartTime = startTime + alarmTimeStep
-      !   call mpas_add_clock_alarm(clock, statsAlarmID, alarmStartTime, alarmTimeStep, ierr=ierr)
-      !end if
+      if (trim(config_stats_interval) /= &quot;none&quot;) then      
+         call mpas_set_timeInterval(alarmTimeStep, timeString=config_stats_interval, ierr=ierr)
+         alarmStartTime = startTime + alarmTimeStep
+         call mpas_add_clock_alarm(clock, statsAlarmID, alarmStartTime, alarmTimeStep, ierr=ierr)
+      end if
 
       call mpas_get_time(curr_time=startTime, dateTimeString=startTimeStamp, ierr=ierr)
 
@@ -506,30 +506,14 @@
    
       call ocn_timestep(domain, dt, timeStamp)
 
-      if (config_stats_interval &gt; 0) then
-          if (mod(itimestep, config_stats_interval) == 0) then
-             call mpas_timer_start(&quot;global diagnostics&quot;, .false., globalDiagTimer)
-             call ocn_compute_global_diagnostics(domain, 2, itimestep, dt);
-             call mpas_timer_stop(&quot;global diagnostics&quot;, globalDiagTimer)
-          end if
-      end if
-
       !TODO: replace the above code block with this if we desire to convert config_stats_interval to use alarms
-      !if (mpas_is_alarm_ringing(clock, statsAlarmID, ierr=ierr)) then
-      !   call mpas_reset_clock_alarm(clock, statsAlarmID, ierr=ierr)
+      if (mpas_is_alarm_ringing(clock, statsAlarmID, ierr=ierr)) then
+         call mpas_reset_clock_alarm(clock, statsAlarmID, ierr=ierr)
 
-      !   block_ptr =&gt; domain % blocklist
-      !   if (associated(block_ptr % next)) then
-      !      write(0,*) 'Error: computeGlobalDiagnostics assumes ',&amp;
-      !                 'that there is only one block per processor.'
-      !   end if
-   
-      !   call mpas_timer_start(&quot;global diagnostics&quot;)
-      !   call ocn_compute_global_diagnostics(domain % dminfo, &amp;
-      !            block_ptr % state % time_levs(2) % state, block_ptr % mesh, &amp;
-      !            timeStamp, dt)
-      !   call mpas_timer_stop(&quot;global diagnostics&quot;)
-      !end if
+         call mpas_timer_start(&quot;global diagnostics&quot;)
+         call ocn_compute_global_diagnostics(domain, 2, itimestep, dt);
+         call mpas_timer_stop(&quot;global diagnostics&quot;)
+      end if
 
    end subroutine mpas_timestep!}}}
 
@@ -768,13 +752,13 @@
 
          ! Compute barotropic velocity at first timestep
          ! This is only done upon start-up.
-         if (trim(config_time_integration) == 'unsplit_explicit') then
+         if (trim(config_time_integrator) == 'unsplit_explicit') then
             block % state % time_levs(1) % state % uBtr % array(:) = 0.0
 
               block % state % time_levs(1) % state % uBcl % array(:,:) &amp;
             = block % state % time_levs(1) % state % u % array(:,:) 
 
-         elseif (trim(config_time_integration) == 'split_explicit') then
+         elseif (trim(config_time_integrator) == 'split_explicit') then
 
             if (config_filter_btr_mode) then
                do iCell=1,block % mesh % nCells

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tendency.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tendency.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tendency.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -80,9 +80,8 @@
    !
    !--------------------------------------------------------------------
 
-   integer :: hadv2nd, hadv3rd, hadv4th
    integer :: ke_cell_flag, ke_vertex_flag
-   real (kind=RKIND) ::  coef_3rd_order, fCoef
+   real (kind=RKIND) ::  fCoef
 
 
 !***********************************************************************
@@ -126,6 +125,8 @@
       !
       tend_h = 0.0
 
+      if(config_disable_h_all_tend) return
+
       !
       ! height tendency: horizontal advection term -</font>
<font color="gray">abla\cdot ( hu)
       !
@@ -206,6 +207,8 @@
       ! mrp 110516 efficiency: could remove next line and have first tend_u operation not be additive
       tend_u(:,:) = 0.0
 
+      if(config_disable_u_all_tend) return
+
       !
       ! velocity tendency: nonlinear Coriolis term and grad of kinetic energy
       !
@@ -225,7 +228,7 @@
       ! velocity tendency: pressure gradient
       !
       call mpas_timer_start(&quot;pressure grad&quot;, .false., velPgradTimer)
-      if (config_pressure_type.eq.'MontgomeryPotential') then
+      if (config_pressure_gradient_type.eq.'MontgomeryPotential') then
           call ocn_vel_pressure_grad_tend(grid, MontPot,  zMid, rho, tend_u, err)
       else
           call ocn_vel_pressure_grad_tend(grid, pressure, zMid, rho, tend_u, err)
@@ -303,6 +306,15 @@
       tend_tr     =&gt; tend % tracers % array
       tend_h      =&gt; tend % h % array
 
+
+      !
+      ! initialize tracer tendency (RHS of tracer equation) to zero.
+      !
+      tend_tr(:,:,:) = 0.0
+
+      if(config_disable_tr_all_tend) return
+
+
       allocate(uh(grid % nVertLevels, grid % nEdges+1))
       !
       ! QC Comment (3/15/12): need to make sure that uTransport is the right
@@ -314,11 +326,6 @@
       end do
 
       !
-      ! initialize tracer tendency (RHS of tracer equation) to zero.
-      !
-      tend_tr(:,:,:) = 0.0
-
-      !
       ! tracer tendency: horizontal advection term -div( h \phi u)
       !
       ! mrp 101115 note: in order to include flux boundary conditions, we will need to 
@@ -494,7 +501,7 @@
       h_edge = -1.0e34
       coef_3rd_order = config_coef_3rd_order
 
-      do iEdge=1,nEdges*hadv2nd
+      do iEdge=1,nEdges
          cell1 = cellsOnEdge(1,iEdge)
          cell2 = cellsOnEdge(2,iEdge)
          do k=1,maxLevelEdgeTop(iEdge)
@@ -502,73 +509,6 @@
          end do
       end do
 
-      do iEdge=1,nEdges*hadv3rd
-         cell1 = cellsOnEdge(1,iEdge)
-         cell2 = cellsOnEdge(2,iEdge)
-
-         do k=1,maxLevelEdgeTop(iEdge)
-
-            d2fdx2_cell1 = 0.0
-            d2fdx2_cell2 = 0.0
-
-            boundaryMask = abs(transfer(.not.(boundaryCell(k,cell1) == 0 .and. boundaryCell(k,cell2) == 0), boundaryMask))
-
-            d2fdx2_cell1 = deriv_two(1,1,iEdge) * h(k,cell1) * boundaryMask
-            d2fdx2_cell2 = deriv_two(1,2,iEdge) * h(k,cell2) * boundaryMask
-
-            !-- all edges of cell 1
-            do i=1, nEdgesOnCell(cell1) * boundaryMask
-               d2fdx2_cell1 = d2fdx2_cell1 + &amp;
-               deriv_two(i+1,1,iEdge) * h(k,grid % CellsOnCell % array (i,cell1))
-            end do
-
-            !-- all edges of cell 2
-            do i=1, nEdgesOnCell(cell2) * boundaryMask
-               d2fdx2_cell2 = d2fdx2_cell2 + &amp;
-               deriv_two(i+1,2,iEdge) * h(k,grid % CellsOnCell % array (i,cell2))
-            end do
-
-            velMask = 2*(abs(transfer(u(k,iEdge) &lt;= 0, velMask))) - 1
-
-            h_edge(k,iEdge) = 0.5*(h(k,cell1) + h(k,cell2)) - (dcEdge(iEdge) **2) * (d2fdx2_cell1 + d2fdx2_cell2) / 12.          &amp;
-                            + velMask * (dcEdge(iEdge) **2) * coef_3rd_order*(d2fdx2_cell1 - d2fdx2_cell2) / 12.
-
-         end do   ! do k
-      end do         ! do iEdge
-
-      do iEdge=1,nEdges*hadv4th
-         cell1 = cellsOnEdge(1,iEdge)
-         cell2 = cellsOnEdge(2,iEdge)
-
-         do k=1,maxLevelEdgeTop(iEdge)
-
-            d2fdx2_cell1 = 0.0
-            d2fdx2_cell2 = 0.0
-
-            boundaryMask = abs(transfer(.not.(boundaryCell(k,cell1) == 0 .and. boundaryCell(k,cell2) == 0), boundaryMask))
-
-            d2fdx2_cell1 = deriv_two(1,1,iEdge) * h(k,cell1) * boundaryMask
-            d2fdx2_cell2 = deriv_two(1,2,iEdge) * h(k,cell2) * boundaryMask
-
-            !-- all edges of cell 1
-            do i=1, nEdgesOnCell(cell1) * boundaryMask
-               d2fdx2_cell1 = d2fdx2_cell1 + &amp;
-               deriv_two(i+1,1,iEdge) * h(k,grid % CellsOnCell % array (i,cell1))
-            end do
-
-            !-- all edges of cell 2
-            do i=1, nEdgesOnCell(cell2) * boundaryMask
-               d2fdx2_cell2 = d2fdx2_cell2 + &amp;
-               deriv_two(i+1,2,iEdge) * h(k,grid % CellsOnCell % array (i,cell2))
-            end do
-
-            h_edge(k,iEdge) =   &amp;
-                 0.5*(h(k,cell1) + h(k,cell2))      &amp;
-                    -(dcEdge(iEdge) **2) * (d2fdx2_cell1 + d2fdx2_cell2) / 12.
-
-         end do   ! do k
-      end do         ! do iEdge
-
       !
       ! set the velocity and height at dummy address
       !    used -1e34 so error clearly occurs if these values are used.
@@ -759,7 +699,7 @@
       ! This section must be after computing rho
       !
       ! dwj: 10/25/2011 - Need to explore isopycnal vs zlevel flags
-      if (config_pressure_type.eq.'MontgomeryPotential') then
+      if (config_pressure_gradient_type.eq.'MontgomeryPotential') then
 
         ! For Isopycnal model.
         ! Compute pressure at top of each layer, and then
@@ -1171,29 +1111,6 @@
 
         err = 0
 
-        coef_3rd_order = 0.
-
-        if (config_thickness_adv_order == 2) then
-            hadv2nd = 1
-            hadv3rd = 0
-            hadv4th = 0
-        else if (config_thickness_adv_order == 3) then
-            hadv2nd = 0
-            hadv3rd = 1
-            hadv4th = 0
-
-            if(config_monotonic) then
-                coef_3rd_order = 0.25
-            else
-                coef_3rd_order = 1.0
-            endif
-        else if (config_thickness_adv_order == 4) then
-            hadv2nd = 0
-            hadv3rd = 0
-            hadv4th = 1
-        end if
-
-
         if(config_include_KE_vertex) then
             ke_vertex_flag = 1
             ke_cell_flag = 0
@@ -1202,11 +1119,11 @@
             ke_cell_flag = 1
         endif
 
-        if (trim(config_time_integration) == 'RK4') then
+        if (trim(config_time_integrator) == 'RK4') then
             ! for RK4, PV is really PV = (eta+f)/h
             fCoef = 1
-        elseif (trim(config_time_integration) == 'split_explicit' &amp;
-          .or.trim(config_time_integration) == 'unsplit_explicit') then
+        elseif (trim(config_time_integrator) == 'split_explicit' &amp;
+          .or.trim(config_time_integrator) == 'unsplit_explicit') then
             ! for split explicit, PV is eta/h because f is added separately to the momentum forcing.
             ! mrp temp, new should be:
             fCoef = 0

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_thick_hadv.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_thick_hadv.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_thick_hadv.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -42,7 +42,9 @@
    !
    !--------------------------------------------------------------------
 
+   logical :: thickHadvOn
 
+
 !***********************************************************************
 
 contains
@@ -120,6 +122,8 @@
 
       err = 0
 
+      if(.not.thickHadvOn) return
+
       nEdges = grid % nEdges
       nCells = grid % nCells
       nVertLevels = grid % nVertLevels
@@ -177,6 +181,10 @@
 
       err = 0
 
+      thickHadvOn = .true.
+
+      if(config_disable_h_hadv) thickHadvOn = .false.
+
    !--------------------------------------------------------------------
 
    end subroutine ocn_thick_hadv_init!}}}

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_thick_vadv.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_thick_vadv.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_thick_vadv.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -42,7 +42,9 @@
    !
    !--------------------------------------------------------------------
 
+   logical :: thickVadvOn
 
+
 !***********************************************************************
 
 contains
@@ -111,6 +113,8 @@
 
       err = 0
 
+      if(.not.thickVadvOn) return
+
       maxLevelCell      =&gt; grid % maxLevelCell % array
 
       nCells = grid % nCells
@@ -154,6 +158,10 @@
       
       err = 0
 
+      thickVadvOn = .true.
+
+      if(config_disable_h_vadv) thickVadvOn = .false.
+
    !--------------------------------------------------------------------
 
    end subroutine ocn_thick_vadv_init!}}}

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_time_integration.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_time_integration.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_time_integration.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -117,14 +117,14 @@
       rk4On = .false.
       splitOn = .false.
 
-      if (trim(config_time_integration) == 'RK4') then
+      if (trim(config_time_integrator) == 'RK4') then
           rk4On = .true.
-      elseif (trim(config_time_integration) == 'split_explicit' &amp;
-          .or.trim(config_time_integration) == 'unsplit_explicit') then
+      elseif (trim(config_time_integrator) == 'split_explicit' &amp;
+          .or.trim(config_time_integrator) == 'unsplit_explicit') then
           splitOn = .true.
       else
           err = 1
-          write(*,*) 'Incorrect choice for config_time_integration:', trim(config_time_integration)
+          write(*,*) 'Incorrect choice for config_time_integrator:', trim(config_time_integrator)
           write(*,*) '   choices are: RK4, split_explicit, unsplit_explicit'
       endif
 

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_time_integration_rk4.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_time_integration_rk4.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_time_integration_rk4.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -162,7 +162,7 @@
               block % provis % uTransport % array, block % provis % wTop % array, err)
            call ocn_tend_h(block % tend, block % provis, block % mesh)
 
-           if (config_rk_filter_btr_mode) then
+           if (config_filter_btr_mode) then
                call ocn_filter_btr_mode_tend_u(block % tend, block % provis, block % mesh)
            endif
 

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_time_integration_split.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_time_integration_split.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_time_integration_split.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -209,9 +209,9 @@
          do j=1,n_bcl_iter(split_explicit_step)
 
             ! Use this G coefficient to avoid an if statement within the iEdge loop.
-            if (trim(config_time_integration) == 'unsplit_explicit') then
+            if (trim(config_time_integrator) == 'unsplit_explicit') then
                split = 0
-            elseif (trim(config_time_integration) == 'split_explicit') then
+            elseif (trim(config_time_integrator) == 'split_explicit') then
                split = 1
             endif
 
@@ -294,7 +294,7 @@
          oldBtrSubcycleTime = 1
          newBtrSubcycleTime = 2
 
-         if (trim(config_time_integration) == 'unsplit_explicit') then
+         if (trim(config_time_integrator) == 'unsplit_explicit') then
 
             block =&gt; domain % blocklist
             do while (associated(block))
@@ -321,7 +321,7 @@
                block =&gt; block % next
             end do  ! block
 
-         elseif (trim(config_time_integration) == 'split_explicit') then
+         elseif (trim(config_time_integrator) == 'split_explicit') then
 
             ! Initialize variables for barotropic subcycling
             block =&gt; domain % blocklist

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tracer_advection.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tracer_advection.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tracer_advection.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -32,7 +32,7 @@
              mpas_ocn_tracer_advection_coefficients, &amp;
              mpas_ocn_tracer_advection_tend
 
-   logical :: monotonicOn
+   logical :: monotonicOn, tracerAdvOn
 
    contains
 
@@ -251,6 +251,8 @@
       type (mesh_type), intent(in) :: grid !&lt; Input: grid information
       real (kind=RKIND), dimension(:,:), intent(in) :: tend_h !&lt; Input: Thickness tendency information
 
+      if(.not.tracerAdvOn) return
+
       if(monotonicOn) then
          call mpas_ocn_tracer_advection_mono_tend(tracers, uh, w, h, verticalCellSize, dt, grid, tend_h, tend)
       else
@@ -290,6 +292,10 @@
          monotonicOn = .true.
       endif
 
+      tracerAdvOn = .true.
+
+      if(config_disable_tr_adv) tracerAdvOn = .false.
+
    end subroutine mpas_ocn_tracer_advection_init!}}}
 
 end module mpas_ocn_tracer_advection

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tracer_advection_mono.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tracer_advection_mono.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tracer_advection_mono.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -147,7 +147,7 @@
             upwind_tendency(k, iCell) = 0.0
 
             !tracer_new is supposed to be the &quot;new&quot; tracer state. This allows bounds checks.
-            if (config_check_monotonicity) then
+            if (config_check_tracer_monotonicity) then
               tracer_new(k,iCell) = 0.0
             end if
           end do ! k loop
@@ -320,7 +320,7 @@
             do k = 1, maxLevelEdgeTop(iEdge)
               tend(iTracer, k, iCell) = tend(iTracer, k, iCell) + edgeSignOnCell(i, iCell) * high_order_horiz_flux(k, iEdge) * invAreaCell1
 
-              if(config_check_monotonicity) then
+              if(config_check_tracer_monotonicity) then
                 tracer_new(k, iCell) = tracer_new(k, iCell) + edgeSignOnCell(i, iCell) * high_order_horiz_flux(k, iEdge) * invAreaCell1
               end if
             end do
@@ -332,7 +332,7 @@
           do k = 1,maxLevelCell(iCell)
             tend(iTracer, k, iCell) = tend(iTracer, k, iCell) + (high_order_vert_flux(k+1, iCell) - high_order_vert_flux(k, iCell)) + upwind_tendency(k,iCell)
 
-            if (config_check_monotonicity) then
+            if (config_check_tracer_monotonicity) then
               !tracer_new holds a tendency for now. Only for a check on monotonicity
               tracer_new(k, iCell) = tracer_new(k, iCell) + (high_order_vert_flux(k+1, iCell) - high_order_vert_flux(k, iCell)) + upwind_tendency(k,iCell)
 
@@ -342,7 +342,7 @@
           end do ! k loop
         end do ! iCell loop
 
-        if (config_check_monotonicity) then
+        if (config_check_tracer_monotonicity) then
           !build min and max bounds on old and new tracer for check on monotonicity.
           do iCell = 1, nCellsSolve
             do k = 1, maxLevelCell(iCell)

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tracer_hmix.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tracer_hmix.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_tracer_hmix.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -48,6 +48,7 @@
    !--------------------------------------------------------------------
 
    type (timer_node), pointer :: del2Timer, del4Timer
+   logical :: tracerHmixOn
 
 
 !***********************************************************************
@@ -122,6 +123,8 @@
       !
       !-----------------------------------------------------------------
 
+      if(.not.tracerHmixOn) return
+
       call mpas_timer_start(&quot;del2&quot;, .false., del2Timer)
       call ocn_tracer_hmix_del2_tend(grid, h_edge, tracers, tend, err1)
       call mpas_timer_stop(&quot;del2&quot;, del2Timer)
@@ -170,6 +173,10 @@
 
       err = ior(err1, err2)
 
+      tracerHmixOn = .true.
+
+      if(config_disable_tr_hmix) tracerHmixOn = .false.
+
    !--------------------------------------------------------------------
 
    end subroutine ocn_tracer_hmix_init!}}}

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_coriolis.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_coriolis.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_coriolis.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -43,7 +43,9 @@
    !
    !--------------------------------------------------------------------
 
+   logical :: coriolisOn
 
+
 !***********************************************************************
 
 contains
@@ -116,6 +118,8 @@
 
       err = 0
 
+      if(.not.coriolisOn) return
+
       maxLevelEdgeTop =&gt; grid % maxLevelEdgeTop % array
       nEdgesOnEdge =&gt; grid % nEdgesOnEdge % array
       cellsOnEdge =&gt; grid % cellsOnEdge % array
@@ -181,6 +185,10 @@
 
       err = 0
 
+      coriolisOn = .true.
+
+      if(config_disable_u_coriolis) coriolisOn = .false.
+
    !--------------------------------------------------------------------
 
    end subroutine ocn_vel_coriolis_init!}}}

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_forcing_rayleigh.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_forcing_rayleigh.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_forcing_rayleigh.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -163,9 +163,9 @@
 
       rayleighDampingCoef = 0.0
 
-      if (config_rayleigh_friction) then
+      if (config_Rayleigh_friction) then
           rayleighFrictionOn = .true.
-          rayleighDampingCoef = config_rayleigh_damping_coeff
+          rayleighDampingCoef = config_Rayleigh_damping_coeff
       endif
 
    !--------------------------------------------------------------------

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_forcing_windstress.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_forcing_windstress.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_forcing_windstress.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -166,9 +166,11 @@
 
       integer, intent(out) :: err !&lt; Output: error flag
 
+      err = 0
+
       windStressOn = .true.
 
-      err = 0
+      if(config_disable_u_windstress) windStressOn = .false.
 
    !--------------------------------------------------------------------
 

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_hmix.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_hmix.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_hmix.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -47,6 +47,7 @@
    ! Private module variables
    !
    !--------------------------------------------------------------------
+   logical :: velHmixOn
 
    type (timer_node), pointer :: del2Timer, leithTimer, del4Timer
 
@@ -126,6 +127,8 @@
       !
       !-----------------------------------------------------------------
 
+      if(.not.velHmixOn) return
+
       viscosity = 0.0
 
       call mpas_timer_start(&quot;del2&quot;, .false., del2Timer)
@@ -176,6 +179,9 @@
 
       integer :: err1, err2, err3
 
+      velHmixOn = .true.
+      if(config_disable_u_hmix) velHmixOn = .false.
+
       call ocn_vel_hmix_del2_init(err1)
       call ocn_vel_hmix_leith_init(err2)
       call ocn_vel_hmix_del4_init(err3)

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_hmix_leith.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_hmix_leith.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_hmix_leith.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -168,9 +168,9 @@
             ! Here the first line is (\delta x)^3
             ! the second line is |</font>
<font color="black">abla \omega|
             ! and u_diffusion is </font>
<font color="gray">abla^2 u (see formula for $\bf{D}$ above).
-            visc2 = ( config_leith_parameter * config_leith_dx * meshScaling(iEdge) / 3.14)**3 &amp;
+            visc2 = ( config_Leith_parameter * config_leith_dx * meshScaling(iEdge) / 3.14)**3 &amp;
                      * abs( vorticity(k,vertex2) - vorticity(k,vertex1) ) * invLength1 * sqrt(3.0)
-            visc2 = min(visc2, config_leith_visc2_max)
+            visc2 = min(visc2, config_Leith_visc2_max)
 
             tend(k,iEdge) = tend(k,iEdge) + edgeMask(k, iEdge) * visc2 * u_diffusion
 
@@ -212,7 +212,7 @@
 
    hmixLeithOn = .false.
 
-   if (config_use_leith_del2) then
+   if (config_use_Leith_del2) then
       hmixLeithOn = .true.
 
       if (config_visc_vorticity_term) then

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_pressure_grad.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_pressure_grad.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_pressure_grad.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -43,7 +43,7 @@
    ! Private module variables
    !
    !--------------------------------------------------------------------
-
+   logical :: pgradOn
    real (kind=RKIND) :: rho0Inv, grho0Inv
 
 
@@ -113,6 +113,8 @@
 
       err = 0
 
+      if(.not.pgradOn) return
+
       nEdgesSolve = grid % nEdgesSolve
       maxLevelEdgeTop =&gt; grid % maxLevelEdgeTop % array
       cellsOnEdge =&gt; grid % cellsOnEdge % array
@@ -186,7 +188,7 @@
 
       err = 0
 
-      if (config_pressure_type.eq.'MontgomeryPotential') then
+      if (config_pressure_gradient_type.eq.'MontgomeryPotential') then
         rho0Inv = 1.0
         grho0Inv = 0.0
       else 
@@ -194,7 +196,9 @@
         grho0Inv = gravity/config_rho0
       end if
 
+      pgradOn = .true.
 
+      if(config_disable_u_pgrad) pgradOn = .false.
 
    !--------------------------------------------------------------------
 

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_vadv.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_vadv.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vel_vadv.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -187,6 +187,8 @@
           velVadvOn = .true.
       end if
 
+      if(config_disable_u_vadv) velVadvOn = .false.
+
    !--------------------------------------------------------------------
 
    end subroutine ocn_vel_vadv_init!}}}

Modified: branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vmix.F
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vmix.F        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/core_ocean/mpas_ocn_vmix.F        2012-11-19 20:34:57 UTC (rev 2316)
@@ -57,6 +57,7 @@
    !--------------------------------------------------------------------
 
    logical :: explicitOn, implicitOn
+   logical :: velVmixOn, tracerVmixOn
 
 !***********************************************************************
 
@@ -198,6 +199,7 @@
 
       err = 0
 
+      if(.not.velVmixOn) return
       if(implicitOn) return
 
       nEdgessolve = grid % nEdgesSolve
@@ -299,6 +301,7 @@
 
       err = 0
 
+      if(.not.velVmixOn) return
       if(explicitOn) return
 
       nEdges = grid % nEdges
@@ -425,6 +428,7 @@
 
       err = 0
 
+      if(.not.tracerVmixOn) return
       if(implicitOn) return
 
       nCellsSolve = grid % nCellsSolve
@@ -530,6 +534,7 @@
 
       err = 0
 
+      if(.not.tracerVmixOn) return
       if(explicitOn) return
 
       nCells = grid % nCells
@@ -676,6 +681,12 @@
 
       err = ior(err1, ior(err2, err3))
 
+      velVmixOn = .true.
+      tracerVmixOn = .true.
+
+      if(config_disable_u_vmix) velVmixOn = .false.
+      if(config_disable_tr_vmix) velVmixOn = .false.
+
    !--------------------------------------------------------------------
 
    end subroutine ocn_vmix_init!}}}

Modified: branches/ocean_projects/namelist_cleanup/src/registry/gen_inc.c
===================================================================
--- branches/ocean_projects/namelist_cleanup/src/registry/gen_inc.c        2012-11-19 20:17:58 UTC (rev 2315)
+++ branches/ocean_projects/namelist_cleanup/src/registry/gen_inc.c        2012-11-19 20:34:57 UTC (rev 2316)
@@ -68,7 +68,7 @@
       if (nls_ptr-&gt;vtype == INTEGER)   fortprintf(fd, &quot;   integer :: %s</font>
<font color="black">&quot;,nls_ptr-&gt;name);
       if (nls_ptr-&gt;vtype == REAL)      fortprintf(fd, &quot;   real (KIND=RKIND) :: %s</font>
<font color="black">&quot;,nls_ptr-&gt;name);
       if (nls_ptr-&gt;vtype == LOGICAL)   fortprintf(fd, &quot;   logical :: %s</font>
<font color="red">&quot;,nls_ptr-&gt;name);
-      if (nls_ptr-&gt;vtype == CHARACTER) fortprintf(fd, &quot;   character (len=StrKIND) :: %s</font>
<font color="blue">&quot;,nls_ptr-&gt;name);
+      if (nls_ptr-&gt;vtype == CHARACTER) fortprintf(fd, &quot;   character(30) :: %s</font>
<font color="black">&quot;,nls_ptr-&gt;name);
 
       nls_ptr = nls_ptr-&gt;next;
    }

</font>
</pre>