<p><b>qchen3@fsu.edu</b> 2011-12-20 12:38:44 -0700 (Tue, 20 Dec 2011)</p><p>BRANCH COMMIT<br>
<br>
The standard GM for the thickness field has been implemented. It is compared to the old GMClocure branch. <br>
The statistics on day 5 match for at least 7-9 digits.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/ocean_projects/gmvar/namelist.input
===================================================================
--- branches/ocean_projects/gmvar/namelist.input        2011-12-20 17:12:07 UTC (rev 1265)
+++ branches/ocean_projects/gmvar/namelist.input        2011-12-20 19:38:44 UTC (rev 1266)
@@ -1 +1 @@
-link namelist.input.sw
\ No newline at end of file
+link namelist.input.ocean
\ No newline at end of file
Modified: branches/ocean_projects/gmvar/namelist.input.ocean
===================================================================
--- branches/ocean_projects/gmvar/namelist.input.ocean        2011-12-20 17:12:07 UTC (rev 1265)
+++ branches/ocean_projects/gmvar/namelist.input.ocean        2011-12-20 19:38:44 UTC (rev 1266)
@@ -1,17 +1,17 @@
&sw_model
config_test_case = 0
- config_time_integration = 'split_explicit'
+ config_time_integration = 'RK4'
config_rk_filter_btr_mode = .false.
- config_dt = 10.0
+ config_dt = 180.0
config_start_time = '0000-01-01_00:00:00'
- config_run_duration = '2000_00:00:00'
- config_stats_interval = 1920
+ config_run_duration = '5_00:00:00'
+ config_stats_interval = 480
/
&io
config_input_name = 'grid.nc'
config_output_name = 'output.nc'
config_restart_name = 'restart.nc'
- config_output_interval = '20_00:00:00'
+ config_output_interval = '1_00:00:00'
config_frames_per_outfile = 1000000
/
&restart
@@ -19,8 +19,8 @@
config_restart_interval = '120_00:00:00'
/
&grid
- config_vert_grid_type = 'zlevel'
- config_rho0 = 1000
+ config_vert_grid_type = 'isopycnal'
+ config_rho0 = 1014.56
/
&split_explicit_ts
config_n_ts_iter = 2
@@ -43,25 +43,28 @@
config_btr_solve_SSH2 = .false.
/
&hmix
- config_h_mom_eddy_visc2 = 1.0e5
+ config_h_mom_eddy_visc2 = 0.0
config_h_mom_eddy_visc4 = 0.0
- config_visc_vorticity_term = .true.
- config_h_tracer_eddy_diff2 = 1.0e4
+ config_h_kappa = 700.0
+ config_h_kappa_q = 0.0
+ config_apvm_upwinding = 0.0
+ config_visc_vorticity_term = .false.
+ config_h_tracer_eddy_diff2 = 0.0
config_h_tracer_eddy_diff4 = 0.0
config_mom_decay = .false.
config_mom_decay_time = 3600.0
/
&vmix
- config_vert_visc_type = 'rich'
- config_vert_diff_type = 'rich'
- config_implicit_vertical_mix = .true.
+ config_vert_visc_type = 'const'
+ config_vert_diff_type = 'const'
+ config_implicit_vertical_mix = .false.
config_convective_visc = 1.0
config_convective_diff = 1.0
config_bottom_drag_coeff = 1.0e-3
/
&vmix_const
- config_vert_visc = 2.5e-5
- config_vert_diff = 2.5e-5
+ config_vert_visc = 1.0e-4
+ config_vert_diff = 1.0e-4
/
&vmix_rich
config_bkrd_vert_visc = 1.0e-4
@@ -77,7 +80,7 @@
config_zWidth_tanh = 100
/
&eos
- config_eos_type = 'jm'
+ config_eos_type = 'linear'
/
&advection
config_vert_tracer_adv = 'stencil'
Modified: branches/ocean_projects/gmvar/src/core_ocean/mpas_ocn_tendency.F
===================================================================
--- branches/ocean_projects/gmvar/src/core_ocean/mpas_ocn_tendency.F        2011-12-20 17:12:07 UTC (rev 1265)
+++ branches/ocean_projects/gmvar/src/core_ocean/mpas_ocn_tendency.F        2011-12-20 19:38:44 UTC (rev 1266)
@@ -116,7 +116,7 @@
real (kind=RKIND), dimension(:,:), pointer :: &
weightsOnEdge, kiteAreasOnVertex, h_edge, h, u, v, pressure, &
tend_h, circulation, vorticity, ke, ke_edge, pv_edge, &
- MontPot, wTop, divergence, vertViscTopOfEdge
+ MontPot, wTop, divergence, vertViscTopOfEdge, uTransport
type (dm_info) :: dminfo
integer, dimension(:), pointer :: nEdgesOnCell, nEdgesOnEdge, &
@@ -136,6 +136,7 @@
h => s % h % array
u => s % u % array
v => s % v % array
+ uTransport => s % uTransport % array
wTop => s % wTop % array
h_edge => s % h_edge % array
circulation => s % circulation % array
@@ -194,7 +195,7 @@
call mpas_timer_start("ocn_tend_h-horiz adv")
- call ocn_thick_hadv_tend(grid, u, h_edge, tend_h, err)
+ call ocn_thick_hadv_tend(grid, uTransport, h_edge, tend_h, err)
call mpas_timer_stop("ocn_tend_h-horiz adv")
@@ -916,13 +917,15 @@
!
uBolus(:,:) = 0.0
call ocn_get_h_kappa(s, grid)
- do iEdge = 1,nEdges
- cell1 = cellsOnEdge(1,iEdge)
- cell2 = cellsOnEdge(2,iEdge)
- do k=1,maxLevelEdgeTop(iEdge)
- uBolus(k,iEdge) = -h_kappa(k,iEdge) * (h(k,cell2) - h(k,cell1))/dcEdge(iEdge)/h_edge(k,iEdge)
+ if (maxval(h_kappa(:,:)) > epsilon(1d0)) then
+ do iEdge = 1,nEdges
+ cell1 = cellsOnEdge(1,iEdge)
+ cell2 = cellsOnEdge(2,iEdge)
+ do k=1,maxLevelEdgeTop(iEdge)
+ uBolus(k,iEdge) = -h_kappa(k,iEdge) * (h(k,cell2) - h(k,cell1))/dcEdge(iEdge)/h_edge(k,iEdge)
+ end do
end do
- end do
+ end if
!
! Compute the transport velocity (this velocity transports thickness and PV)
</font>
</pre>