<p><b>ringler@lanl.gov</b> 2013-02-05 10:35:26 -0700 (Tue, 05 Feb 2013)</p><p><br>
proposed changed for linear EOS computation<br>
</p><hr noshade><pre><font color="gray">Modified: branches/ocean_projects/linear_eos/namelist.input.ocean
===================================================================
--- branches/ocean_projects/linear_eos/namelist.input.ocean        2013-02-05 17:21:31 UTC (rev 2434)
+++ branches/ocean_projects/linear_eos/namelist.input.ocean        2013-02-05 17:35:26 UTC (rev 2435)
@@ -121,6 +121,13 @@
&eos
        config_eos_type = 'jm'
/
+&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
+/
&split_explicit_ts
        config_n_ts_iter = 2
        config_n_bcl_iter_beg = 1
Modified: branches/ocean_projects/linear_eos/src/core_ocean/Registry
===================================================================
--- branches/ocean_projects/linear_eos/src/core_ocean/Registry        2013-02-05 17:21:31 UTC (rev 2434)
+++ branches/ocean_projects/linear_eos/src/core_ocean/Registry        2013-02-05 17:35:26 UTC (rev 2435)
@@ -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: branches/ocean_projects/linear_eos/src/core_ocean/mpas_ocn_equation_of_state_linear.F
===================================================================
--- branches/ocean_projects/linear_eos/src/core_ocean/mpas_ocn_equation_of_state_linear.F        2013-02-05 17:21:31 UTC (rev 2434)
+++ branches/ocean_projects/linear_eos/src/core_ocean/mpas_ocn_equation_of_state_linear.F        2013-02-05 17:35:26 UTC (rev 2435)
@@ -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 => grid % maxLevelCell % array
- nCells = grid % nCells
+ maxLevelCell => 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 &
+ - config_eos_linear_alpha * (tracers(indexT,k,iCell)-config_eos_linear_Tref) &
+ + config_eos_linear_beta * (tracers(indexS,k,iCell)-config_eos_linear_Sref)
end do
end do
</font>
</pre>