<p><b>mpetersen@lanl.gov</b> 2013-02-05 15:00:26 -0700 (Tue, 05 Feb 2013)</p><p>Trunk commit, ocean core only.  Merge linear_eos branch to trunk.  Implemented by Todd, reviewed by Mark.  13 digits match with previous trunk.  Not bit-for-bit due to change in order of operations in linear eos.<br>
</p><hr noshade><pre><font color="gray">Index: trunk/mpas
===================================================================
--- trunk/mpas        2013-02-05 21:34:24 UTC (rev 2437)
+++ trunk/mpas        2013-02-05 22:00:26 UTC (rev 2438)

Property changes on: trunk/mpas
___________________________________________________________________
Modified: svn:mergeinfo
## -8,6 +8,7 ##
 /branches/ocean_projects/imp_vert_mix_error:1847-1887
 /branches/ocean_projects/imp_vert_mix_mrp:754-986
 /branches/ocean_projects/leith_mrp:2182-2241
+/branches/ocean_projects/linear_eos:2435-2437
 /branches/ocean_projects/monotonic_advection:1499-1640
 /branches/ocean_projects/monthly_forcing:1810-1867
 /branches/ocean_projects/namelist_cleanup:2319-2414
\ No newline at end of property
Modified: trunk/mpas/namelist.input.ocean
===================================================================
--- trunk/mpas/namelist.input.ocean        2013-02-05 21:34:24 UTC (rev 2437)
+++ trunk/mpas/namelist.input.ocean        2013-02-05 22:00:26 UTC (rev 2438)
@@ -121,6 +121,13 @@
 &amp;eos
         config_eos_type = 'jm'
 /
+&amp;eos_linear
+        config_eos_linear_alpha = 2.55e-1
+        config_eos_linear_beta =  7.64e-1
+        config_eos_linear_Tref =  19.0
+        config_eos_linear_Sref =  35.0
+        config_eos_linear_rhoref =  1025.022
+/
 &amp;split_explicit_ts
         config_n_ts_iter = 2
         config_n_bcl_iter_beg = 1

Index: trunk/mpas/src/core_ocean
===================================================================
--- trunk/mpas/src/core_ocean        2013-02-05 21:34:24 UTC (rev 2437)
+++ trunk/mpas/src/core_ocean        2013-02-05 22:00:26 UTC (rev 2438)

Property changes on: trunk/mpas/src/core_ocean
___________________________________________________________________
Modified: svn:mergeinfo
## -8,6 +8,7 ##
 /branches/ocean_projects/imp_vert_mix_error/src/core_ocean:1847-1887
 /branches/ocean_projects/imp_vert_mix_mrp/src/core_ocean:754-986
 /branches/ocean_projects/leith_mrp/src/core_ocean:2182-2241
+/branches/ocean_projects/linear_eos/src/core_ocean:2435-2437
 /branches/ocean_projects/monotonic_advection/src/core_ocean:1499-1640
 /branches/ocean_projects/monthly_forcing/src/core_ocean:1810-1867
 /branches/ocean_projects/namelist_cleanup/src/core_ocean:2319-2414
\ No newline at end of property
Modified: trunk/mpas/src/core_ocean/Registry
===================================================================
--- trunk/mpas/src/core_ocean/Registry        2013-02-05 21:34:24 UTC (rev 2437)
+++ trunk/mpas/src/core_ocean/Registry        2013-02-05 22:00:26 UTC (rev 2438)
@@ -104,6 +104,12 @@
 
 namelist character eos       config_eos_type            'linear'
 
+namelist real      eos_linear config_eos_linear_alpha    2.55e-1
+namelist real      eos_linear config_eos_linear_beta     7.64e-1
+namelist real      eos_linear config_eos_linear_Tref     19.0
+namelist real      eos_linear config_eos_linear_Sref     35.0
+namelist real      eos_linear config_eos_linear_rhoref   1025.022
+
 namelist integer   split_explicit_ts config_n_ts_iter     2
 namelist integer   split_explicit_ts config_n_bcl_iter_beg   2
 namelist integer   split_explicit_ts config_n_bcl_iter_mid   2

Modified: trunk/mpas/src/core_ocean/mpas_ocn_equation_of_state_linear.F
===================================================================
--- trunk/mpas/src/core_ocean/mpas_ocn_equation_of_state_linear.F        2013-02-05 21:34:24 UTC (rev 2437)
+++ trunk/mpas/src/core_ocean/mpas_ocn_equation_of_state_linear.F        2013-02-05 22:00:26 UTC (rev 2438)
@@ -82,27 +82,21 @@
       integer, intent(in) :: indexT, indexS
       integer, intent(out) :: err
 
-      real (kind=RKIND), parameter :: rho_ref = 1025.022 ! kg / m^3
-      real (kind=RKIND), parameter :: alpha =  2.55e-1 ! kg / m^3 / K (dT/dRho)
-      real (kind=RKIND), parameter :: beta = 7.64e-1 ! kg / m^3 / psu (dS/dRho)
-      real (kind=RKIND), parameter :: T_ref = 19.0 ! K
-      real (kind=RKIND), parameter :: S_ref = 35.0 ! psu
-      real (kind=RKIND), parameter :: rho_prime_ref = rho_ref + alpha * T_ref - beta * S_ref
-
       integer, dimension(:), pointer :: maxLevelCell
       integer :: nCells, iCell, k
       type (dm_info) :: dminfo
 
-      maxLevelCell      =&gt; grid % maxLevelCell % array
-      nCells      = grid % nCells
+      maxLevelCell  =&gt; grid % maxLevelCell % array
+      nCells        =  grid % nCells
 
       err = 0
 
       do iCell=1,nCells
          do k=1,maxLevelCell(iCell)
             ! Linear equation of state
-            ! rho = rho_ref - alpha * (T - T_ref) + beta * (S - S_ref)
-            rho(k,iCell) = rho_prime_ref - alpha*tracers(indexT,k,iCell) + beta*tracers(indexS,k,iCell)
+            rho(k,iCell) =  config_eos_linear_rhoref &amp;
+                  - config_eos_linear_alpha * (tracers(indexT,k,iCell)-config_eos_linear_Tref) &amp;
+                  + config_eos_linear_beta  * (tracers(indexS,k,iCell)-config_eos_linear_Sref)
          end do
       end do
 

</font>
</pre>