aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrhaas <rhaas@8e189c6b-2ab8-4400-aa02-70a9cfce18b9>2013-02-11 16:35:39 +0000
committerrhaas <rhaas@8e189c6b-2ab8-4400-aa02-70a9cfce18b9>2013-02-11 16:35:39 +0000
commite35d6e7aa0f9bdfa99bebe01df327eca59ef9817 (patch)
tree10a690cdc74f0c7671ceb018c35fb59fdd17dec5
parentec464f0fb0bb2d9faed7b9de03fb6e6a48a38afe (diff)
remove poly_gamma_ini
EOS_Omni used this to compute (initially) conversion factors from code (assumed to e G=c=M_sun=1) to cgs units. It then goes back and forth between these units even for polytropic and gamma law eos. This is very confusing since poly_gamma_ini since poly_gamma_ini must mast poly_gamma and gl_gamma for a "usual" run with a Gamma law eos. git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinEOS/EOS_Omni/trunk@73 8e189c6b-2ab8-4400-aa02-70a9cfce18b9
-rw-r--r--param.ccl5
-rw-r--r--src/EOS_Omni_Module.F906
-rw-r--r--src/EOS_Omni_MultiVarCalls.F9064
-rw-r--r--src/EOS_Omni_SingleVarCalls.F9096
-rw-r--r--src/EOS_Omni_Startup.F9010
5 files changed, 83 insertions, 98 deletions
diff --git a/param.ccl b/param.ccl
index fbe0648..3a55c8e 100644
--- a/param.ccl
+++ b/param.ccl
@@ -9,11 +9,6 @@ REAL poly_gamma "Adiabatic Index for poly EOS" STEERABLE=RECOVER
: :: ""
} 2.0
-REAL poly_gamma_ini "Initial Adiabatic Index for poly EOS" STEERABLE=RECOVER
-{
- : :: ""
-} 2.0
-
REAL poly_k "Polytropic constant in c=G=Msun=1" STEERABLE=RECOVER
{
: :: ""
diff --git a/src/EOS_Omni_Module.F90 b/src/EOS_Omni_Module.F90
index 2fbef68..e6ecc14 100644
--- a/src/EOS_Omni_Module.F90
+++ b/src/EOS_Omni_Module.F90
@@ -26,10 +26,6 @@ module EOS_Omni_Module
! These values are set by EOS_Omni_Startup
- real*8 :: poly_k_cgs = 0.0d0
- real*8 :: gl_k_cgs = 0.0d0
-
- real*8 :: hybrid_k1_cgs = 0.0d0
- real*8 :: hybrid_k2_cgs = 0.0d0
+ real*8 :: hybrid_k2 = 0.0d0
end module EOS_Omni_Module
diff --git a/src/EOS_Omni_MultiVarCalls.F90 b/src/EOS_Omni_MultiVarCalls.F90
index a989fd3..417ae99 100644
--- a/src/EOS_Omni_MultiVarCalls.F90
+++ b/src/EOS_Omni_MultiVarCalls.F90
@@ -104,7 +104,7 @@ subroutine EOS_Omni_EOS_dpderho_dpdrhoe(eoskey,keytemp,rf_precision,npoints,&
integer :: i
character(256) :: warnstring
real*8 :: hybrid_local_gamma
- real*8 :: hybrid_local_k_cgs
+ real*8 :: hybrid_local_k
real*8 :: hybrid_dp_poly,hybrid_dp_th1,hybrid_dp_th2
! temporary vars for nuc_eos
real*8 :: xrho,xye,xtemp,xenr,xent
@@ -120,23 +120,23 @@ subroutine EOS_Omni_EOS_dpderho_dpdrhoe(eoskey,keytemp,rf_precision,npoints,&
! polytropic EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * poly_k_cgs * &
- (rho(i)*inv_rho_gf)**(poly_gamma) / &
+ eps(i) = poly_k * &
+ rho(i)**(poly_gamma) / &
(poly_gamma - 1.0d0) / rho(i)
enddo
endif
do i=1,npoints
- dpdrhoe(i) = press_gf * poly_k_cgs * &
- poly_gamma * inv_rho_gf * &
- (rho(i)*inv_rho_gf) ** (poly_gamma - 1.d0)
+ dpdrhoe(i) = poly_k * &
+ poly_gamma * &
+ rho(i) ** (poly_gamma - 1.d0)
dpderho(i) = 0.0d0
enddo
case (2)
! gamma-law EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * gl_k_cgs * &
- (rho(i)*inv_rho_gf)**(gl_gamma) / &
+ eps(i) = gl_k * &
+ rho(i)**(gl_gamma) / &
(gl_gamma - 1.0d0) / rho(i)
enddo
endif
@@ -151,23 +151,23 @@ subroutine EOS_Omni_EOS_dpderho_dpdrhoe(eoskey,keytemp,rf_precision,npoints,&
do i=1,npoints
if(rho(i).gt.hybrid_rho_nuc) then
hybrid_local_gamma = hybrid_gamma2
- hybrid_local_k_cgs = hybrid_k2_cgs
+ hybrid_local_k = hybrid_k2
else
hybrid_local_gamma = hybrid_gamma1
- hybrid_local_k_cgs = hybrid_k1_cgs
+ hybrid_local_k = hybrid_k1
endif
- hybrid_dp_poly = hybrid_local_gamma * press_gf * &
- hybrid_local_k_cgs * rho(i)**(hybrid_local_gamma - 1.0d0) * &
- inv_rho_gf**hybrid_local_gamma
+ hybrid_dp_poly = hybrid_local_gamma * &
+ hybrid_local_k * rho(i)**(hybrid_local_gamma - 1.0d0)
+
- hybrid_dp_th1 = - hybrid_local_gamma * press_gf * hybrid_local_k_cgs * &
+ hybrid_dp_th1 = - hybrid_local_gamma * hybrid_local_k * &
(hybrid_gamma_th - 1.d0) / (hybrid_local_gamma - 1.d0) * &
- rho(i)**(hybrid_local_gamma - 1.d0) * inv_rho_gf**hybrid_local_gamma
+ rho(i)**(hybrid_local_gamma - 1.d0)
hybrid_dp_th2 = (hybrid_gamma_th - 1.d0) * eps(i) &
- (hybrid_gamma_th - 1.d0) * (hybrid_local_gamma - hybrid_gamma1) / &
(hybrid_gamma1 - 1.d0) / (hybrid_gamma2 - 1.d0) * &
- press_gf * hybrid_k1_cgs * inv_rho_gf**hybrid_gamma1 * &
+ hybrid_k1 * &
hybrid_rho_nuc**(hybrid_gamma1 - 1.d0)
dpdrhoe(i) = hybrid_dp_poly + hybrid_dp_th1 + hybrid_dp_th2
@@ -224,7 +224,7 @@ subroutine EOS_Omni_EOS_dpderho_dpdrhoe(eoskey,keytemp,rf_precision,npoints,&
integer :: i
character(256) :: warnstring
real*8 :: hybrid_local_gamma
- real*8 :: hybrid_local_k_cgs
+ real*8 :: hybrid_local_k
real*8 :: hybrid_dp_poly,hybrid_dp_th1,hybrid_dp_th2
! temporary vars for nuc_eos
real*8 :: xrho,xye,xtemp,xenr,xent
@@ -240,23 +240,23 @@ subroutine EOS_Omni_EOS_dpderho_dpdrhoe(eoskey,keytemp,rf_precision,npoints,&
! polytropic EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * poly_k_cgs * &
- (rho(i)*inv_rho_gf)**(poly_gamma) / &
+ eps(i) = poly_k * &
+ rho(i)**(poly_gamma) / &
(poly_gamma - 1.0d0) / rho(i)
enddo
endif
do i=1,npoints
depsdpress(i) = 1.0d0/(poly_gamma - 1.0d0)/rho(i)
- depsdrho(i) = depsdpress(i) * press_gf * poly_k_cgs * &
- poly_gamma * inv_rho_gf * &
- (rho(i)*inv_rho_gf) ** (poly_gamma - 1.d0)
+ depsdrho(i) = depsdpress(i) * poly_k * &
+ poly_gamma * &
+ rho(i) ** (poly_gamma - 1.d0)
enddo
case (2)
! gamma-law EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * gl_k_cgs * &
- (rho(i)*inv_rho_gf)**(gl_gamma) / &
+ eps(i) = gl_k * &
+ rho(i)**(gl_gamma) / &
(gl_gamma - 1.0d0) / rho(i)
enddo
endif
@@ -270,23 +270,23 @@ subroutine EOS_Omni_EOS_dpderho_dpdrhoe(eoskey,keytemp,rf_precision,npoints,&
do i=1,npoints
if(rho(i).gt.hybrid_rho_nuc) then
hybrid_local_gamma = hybrid_gamma2
- hybrid_local_k_cgs = hybrid_k2_cgs
+ hybrid_local_k = hybrid_k2
else
hybrid_local_gamma = hybrid_gamma1
- hybrid_local_k_cgs = hybrid_k1_cgs
+ hybrid_local_k = hybrid_k1
endif
- hybrid_dp_poly = hybrid_local_gamma * press_gf * &
- hybrid_local_k_cgs * rho(i)**(hybrid_local_gamma - 1.0d0) * &
- inv_rho_gf**hybrid_local_gamma
+ hybrid_dp_poly = hybrid_local_gamma * &
+ hybrid_local_k * rho(i)**(hybrid_local_gamma - 1.0d0)
+
- hybrid_dp_th1 = - hybrid_local_gamma * press_gf * hybrid_local_k_cgs * &
+ hybrid_dp_th1 = - hybrid_local_gamma * hybrid_local_k * &
(hybrid_gamma_th - 1.d0) / (hybrid_local_gamma - 1.d0) * &
- rho(i)**(hybrid_local_gamma - 1.d0) * inv_rho_gf**hybrid_local_gamma
+ rho(i)**(hybrid_local_gamma - 1.d0)
hybrid_dp_th2 = (hybrid_gamma_th - 1.d0) * eps(i) &
- (hybrid_gamma_th - 1.d0) * (hybrid_local_gamma - hybrid_gamma1) / &
(hybrid_gamma1 - 1.d0) / (hybrid_gamma2 - 1.d0) * &
- press_gf * hybrid_k1_cgs * inv_rho_gf**hybrid_gamma1 * &
+ hybrid_k1 * &
hybrid_rho_nuc**(hybrid_gamma1 - 1.d0)
xdpdrhoe = hybrid_dp_poly + hybrid_dp_th1 + hybrid_dp_th2
diff --git a/src/EOS_Omni_SingleVarCalls.F90 b/src/EOS_Omni_SingleVarCalls.F90
index 8e3b92c..bbff17c 100644
--- a/src/EOS_Omni_SingleVarCalls.F90
+++ b/src/EOS_Omni_SingleVarCalls.F90
@@ -27,7 +27,7 @@ subroutine EOS_Omni_EOS_Press(eoskey,keytemp,rf_precision,npoints,&
! local vars
integer :: i
character(256) :: warnstring
- real*8 :: hybrid_local_gamma, hybrid_local_k_cgs, &
+ real*8 :: hybrid_local_gamma, hybrid_local_k, &
hybrid_p_poly, hybrid_p_th
real*8,parameter :: zero = 0.0d0
! temporary vars for nuc_eos
@@ -43,21 +43,21 @@ subroutine EOS_Omni_EOS_Press(eoskey,keytemp,rf_precision,npoints,&
! polytropic EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * poly_k_cgs * &
- (rho(i)*inv_rho_gf)**(poly_gamma) / &
+ eps(i) = poly_k * &
+ rho(i)**(poly_gamma) / &
(poly_gamma - 1.0d0) / rho(i)
enddo
endif
do i=1,npoints
- press(i) = press_gf * poly_k_cgs * &
- (rho(i)*inv_rho_gf)**poly_gamma
+ press(i) = poly_k * &
+ rho(i)**poly_gamma
enddo
case (2)
! gamma-law EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * gl_k_cgs * &
- (rho(i)*inv_rho_gf)**(gl_gamma) / &
+ eps(i) = gl_k * &
+ rho(i)**(gl_gamma) / &
(gl_gamma - 1.0d0) / rho(i)
enddo
endif
@@ -70,19 +70,19 @@ subroutine EOS_Omni_EOS_Press(eoskey,keytemp,rf_precision,npoints,&
do i=1,npoints
if(rho(i).gt.hybrid_rho_nuc) then
hybrid_local_gamma = hybrid_gamma2
- hybrid_local_k_cgs = hybrid_k2_cgs
+ hybrid_local_k = hybrid_k2
else
hybrid_local_gamma = hybrid_gamma1
- hybrid_local_k_cgs = hybrid_k1_cgs
+ hybrid_local_k = hybrid_k1
endif
- hybrid_p_poly = press_gf * hybrid_local_k_cgs * &
- (rho(i) * inv_rho_gf)**hybrid_local_gamma
- hybrid_p_th = - press_gf * hybrid_local_k_cgs * (hybrid_gamma_th - 1.d0) / &
- (hybrid_local_gamma - 1.0d0) * (rho(i) * inv_rho_gf)**hybrid_local_gamma + &
+ hybrid_p_poly = hybrid_local_k * &
+ rho(i)**hybrid_local_gamma
+ hybrid_p_th = - hybrid_local_k * (hybrid_gamma_th - 1.d0) / &
+ (hybrid_local_gamma - 1.0d0) * rho(i)**hybrid_local_gamma + &
(hybrid_gamma_th - 1.0d0) * rho(i) * eps(i) - &
(hybrid_gamma_th - 1.d0) * (hybrid_local_gamma - hybrid_gamma1) / &
(hybrid_gamma1 - 1.d0) / (hybrid_gamma2 - 1.d0) * &
- press_gf * hybrid_k1_cgs * inv_rho_gf**hybrid_gamma1 * &
+ hybrid_k1 * &
hybrid_rho_nuc**(hybrid_gamma1 - 1.d0) * rho(i)
hybrid_p_th = max(zero, hybrid_p_th)
press(i) = hybrid_p_poly + hybrid_p_th
@@ -140,7 +140,7 @@ subroutine EOS_Omni_EOS_DPressByDRho(eoskey,keytemp,rf_precision,npoints,&
! local vars
integer :: i
character(256) :: warnstring
- real*8 :: hybrid_local_gamma, hybrid_local_k_cgs, &
+ real*8 :: hybrid_local_gamma, hybrid_local_k, &
hybrid_dp_poly, hybrid_dp_th1, hybrid_dp_th2
real*8,parameter :: zero = 0.0d0
! temporary vars for nuc_eos
@@ -156,22 +156,22 @@ subroutine EOS_Omni_EOS_DPressByDRho(eoskey,keytemp,rf_precision,npoints,&
! polytropic EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * poly_k_cgs * &
- (rho(i)*inv_rho_gf)**(poly_gamma) / &
+ eps(i) = poly_k * &
+ rho(i)**(poly_gamma) / &
(poly_gamma - 1.0d0) / rho(i)
enddo
endif
do i=1,npoints
- dpdrhoe(i) = press_gf * poly_k_cgs * &
- poly_gamma * inv_rho_gf * &
- (rho(i)*inv_rho_gf) ** (poly_gamma - 1.d0)
+ dpdrhoe(i) = poly_k * &
+ poly_gamma * &
+ rho(i) ** (poly_gamma - 1.d0)
enddo
case (2)
! gamma-law EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * gl_k_cgs * &
- (rho(i)*inv_rho_gf)**(gl_gamma) / &
+ eps(i) = gl_k * &
+ rho(i)**(gl_gamma) / &
(gl_gamma - 1.0d0) / rho(i)
enddo
endif
@@ -184,23 +184,23 @@ subroutine EOS_Omni_EOS_DPressByDRho(eoskey,keytemp,rf_precision,npoints,&
do i=1,npoints
if(rho(i).gt.hybrid_rho_nuc) then
hybrid_local_gamma = hybrid_gamma2
- hybrid_local_k_cgs = hybrid_k2_cgs
+ hybrid_local_k = hybrid_k2
else
hybrid_local_gamma = hybrid_gamma1
- hybrid_local_k_cgs = hybrid_k1_cgs
+ hybrid_local_k = hybrid_k1
endif
- hybrid_dp_poly = hybrid_local_gamma * press_gf * &
- hybrid_local_k_cgs * rho(i)**(hybrid_local_gamma - 1.0d0) * &
- inv_rho_gf**hybrid_local_gamma
+ hybrid_dp_poly = hybrid_local_gamma * &
+ hybrid_local_k * rho(i)**(hybrid_local_gamma - 1.0d0)
+
- hybrid_dp_th1 = - hybrid_local_gamma * press_gf * hybrid_local_k_cgs * &
+ hybrid_dp_th1 = - hybrid_local_gamma * hybrid_local_k * &
(hybrid_gamma_th - 1.d0) / (hybrid_local_gamma - 1.d0) * &
- rho(i)**(hybrid_local_gamma - 1.d0) * inv_rho_gf**hybrid_local_gamma
+ rho(i)**(hybrid_local_gamma - 1.d0)
hybrid_dp_th2 = (hybrid_gamma_th - 1.d0) * eps(i) &
- (hybrid_gamma_th - 1.d0) * (hybrid_local_gamma - hybrid_gamma1) / &
(hybrid_gamma1 - 1.d0) / (hybrid_gamma2 - 1.d0) * &
- press_gf * hybrid_k1_cgs * inv_rho_gf**hybrid_gamma1 * &
+ hybrid_k1 * &
hybrid_rho_nuc**(hybrid_gamma1 - 1.d0)
dpdrhoe(i) = hybrid_dp_poly + max(0.0d0,hybrid_dp_th1 + hybrid_dp_th2)
@@ -269,8 +269,8 @@ subroutine EOS_Omni_EOS_DPressByDEps(eoskey,keytemp,rf_precision,npoints,&
! polytropic EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * poly_k_cgs * &
- (rho(i)*inv_rho_gf)**(poly_gamma) / &
+ eps(i) = poly_k * &
+ rho(i)**(poly_gamma) / &
(poly_gamma - 1.0d0) / rho(i)
enddo
endif
@@ -281,8 +281,8 @@ subroutine EOS_Omni_EOS_DPressByDEps(eoskey,keytemp,rf_precision,npoints,&
! gamma-law EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * gl_k_cgs * &
- (rho(i)*inv_rho_gf)**(gl_gamma) / &
+ eps(i) = gl_k * &
+ rho(i)**(gl_gamma) / &
(gl_gamma - 1.0d0) / rho(i)
enddo
endif
@@ -348,7 +348,7 @@ subroutine EOS_Omni_EOS_cs2(eoskey,keytemp,rf_precision,npoints,&
integer :: i
character(256) :: warnstring
real*8 :: xpress,xdpdrhoe,xdpderho
- real*8 :: hybrid_local_gamma, hybrid_local_k_cgs, &
+ real*8 :: hybrid_local_gamma, hybrid_local_k, &
hybrid_p_poly, hybrid_p_th
real*8,parameter :: zero = 0.0d0
! temporary vars for nuc_eos
@@ -364,14 +364,14 @@ subroutine EOS_Omni_EOS_cs2(eoskey,keytemp,rf_precision,npoints,&
! polytropic EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * poly_k_cgs * &
- (rho(i)*inv_rho_gf)**(poly_gamma) / &
+ eps(i) = poly_k * &
+ rho(i)**(poly_gamma) / &
(poly_gamma - 1.0d0) / rho(i)
enddo
endif
do i=1,npoints
- xpress = press_gf*poly_k_cgs * &
- (rho(i)*inv_rho_gf)**(poly_gamma)
+ xpress = poly_k * &
+ rho(i)**(poly_gamma)
cs2(i) = poly_gamma * xpress / rho(i) / &
(1 + eps(i) + xpress/rho(i))
enddo
@@ -379,8 +379,8 @@ subroutine EOS_Omni_EOS_cs2(eoskey,keytemp,rf_precision,npoints,&
! gamma-law EOS
if(keytemp.eq.1) then
do i=1,npoints
- eps(i) = press_gf * gl_k_cgs * &
- (rho(i)*inv_rho_gf)**(gl_gamma) / &
+ eps(i) = gl_k * &
+ rho(i)**(gl_gamma) / &
(gl_gamma - 1.0d0) / rho(i)
enddo
endif
@@ -396,20 +396,20 @@ subroutine EOS_Omni_EOS_cs2(eoskey,keytemp,rf_precision,npoints,&
do i=1,npoints
if(rho(i).gt.hybrid_rho_nuc) then
hybrid_local_gamma = hybrid_gamma2
- hybrid_local_k_cgs = hybrid_k2_cgs
+ hybrid_local_k = hybrid_k2
else
hybrid_local_gamma = hybrid_gamma1
- hybrid_local_k_cgs = hybrid_k1_cgs
+ hybrid_local_k = hybrid_k1
endif
! first calculate the pressure
- hybrid_p_poly = press_gf * hybrid_local_k_cgs * &
- (rho(i) * inv_rho_gf)**hybrid_local_gamma
- hybrid_p_th = - press_gf * hybrid_local_k_cgs * (hybrid_gamma_th - 1.d0) / &
- (hybrid_local_gamma - 1.0d0) * (rho(i) * inv_rho_gf)**hybrid_local_gamma + &
+ hybrid_p_poly = hybrid_local_k * &
+ rho(i)**hybrid_local_gamma
+ hybrid_p_th = - hybrid_local_k * (hybrid_gamma_th - 1.d0) / &
+ (hybrid_local_gamma - 1.0d0) * rho(i)**hybrid_local_gamma + &
(hybrid_gamma_th - 1.0d0) * rho(i) * eps(i) - &
(hybrid_gamma_th - 1.d0) * (hybrid_local_gamma - hybrid_gamma1) / &
(hybrid_gamma1 - 1.d0) / (hybrid_gamma2 - 1.d0) * &
- press_gf * hybrid_k1_cgs * inv_rho_gf**hybrid_gamma1 * &
+ hybrid_k1 * &
hybrid_rho_nuc**(hybrid_gamma1 - 1.d0) * rho(i)
hybrid_p_th = max(zero, hybrid_p_th)
xpress = hybrid_p_poly + hybrid_p_th
diff --git a/src/EOS_Omni_Startup.F90 b/src/EOS_Omni_Startup.F90
index e1fc6a3..2995393 100644
--- a/src/EOS_Omni_Startup.F90
+++ b/src/EOS_Omni_Startup.F90
@@ -11,13 +11,7 @@ subroutine EOS_Omni_Startup(CCTK_ARGUMENTS)
DECLARE_CCTK_PARAMETERS
DECLARE_CCTK_ARGUMENTS
- poly_k_cgs = poly_k * rho_gf**poly_gamma_ini / press_gf
-
- gl_k_cgs = gl_k * rho_gf**poly_gamma_ini / press_gf
-
- hybrid_k1_cgs = hybrid_k1 * rho_gf**poly_gamma_ini / press_gf
-
- hybrid_k2_cgs = hybrid_k1_cgs * &
- (hybrid_rho_nuc * inv_rho_gf)**(hybrid_gamma1-hybrid_gamma2)
+ hybrid_k2 = hybrid_k1 * &
+ hybrid_rho_nuc**(hybrid_gamma1-hybrid_gamma2)
end subroutine EOS_Omni_Startup