diff options
author | cott <cott@ac85fae7-cede-4708-beff-ae01c7fa1c26> | 2010-08-18 18:15:02 +0000 |
---|---|---|
committer | cott <cott@ac85fae7-cede-4708-beff-ae01c7fa1c26> | 2010-08-18 18:15:02 +0000 |
commit | 8fc217e9d9b586969b3b2379ae40cb1741242983 (patch) | |
tree | bd638e10986b0b712a49be619c4540938896f828 | |
parent | 6d9223545bdf349c91c1d21cffd668f1b7ac80d1 (diff) |
* add EOS Omni functions to interface.ccl
* correct syntax in F90 files
git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinInitialData/GRHydro_InitData/trunk@112 ac85fae7-cede-4708-beff-ae01c7fa1c26
-rw-r--r-- | interface.ccl | 37 | ||||
-rw-r--r-- | src/GRHydro_ReadConformalData.F90 | 14 | ||||
-rw-r--r-- | src/GRHydro_SimpleWave.F90 | 11 |
3 files changed, 48 insertions, 14 deletions
diff --git a/interface.ccl b/interface.ccl index 52f1998..8da93f2 100644 --- a/interface.ccl +++ b/interface.ccl @@ -4,9 +4,9 @@ implements: GRHydro_init_data inherits: GRHydro grid -USES INCLUDE: EOS_Base.inc +#USES INCLUDE: EOS_Base.inc USES INCLUDE: SpaceMask.h -USES INCLUDE: EOS_Base.h +#USES INCLUDE: EOS_Base.h SUBROUTINE SpatialDet(CCTK_REAL IN gxx, CCTK_REAL IN gxy, \ @@ -58,6 +58,39 @@ USES FUNCTION Prim2ConPoly USES FUNCTION Prim2ConGen USES FUNCTION Con2PrimPoly +CCTK_INT FUNCTION EOS_Omni_GetHandle(CCTK_STRING IN name) +USES FUNCTION EOS_Omni_GetHandle + + +void FUNCTION EOS_Omni_press(CCTK_INT IN eoshandle, \ + CCTK_INT IN havetemp, \ + CCTK_INT IN npoints, \ + CCTK_REAL IN ARRAY rho, \ + CCTK_REAL INOUT ARRAY eps, \ + CCTK_REAL INOUT ARRAY temp, \ + CCTK_REAL IN ARRAY ye, \ + CCTK_REAL OUT ARRAY press, \ + CCTK_INT OUT ARRAY keyerr, \ + CCTK_INT OUT anyerr) + +USES FUNCTION EOS_Omni_press + +void FUNCTION EOS_Omni_EpsFromPress(CCTK_INT IN eoshandle, \ + CCTK_INT IN havetemp, \ + CCTK_INT IN npoints, \ + CCTK_REAL IN ARRAY rho, \ + CCTK_REAL INOUT ARRAY eps, \ + CCTK_REAL INOUT ARRAY temp, \ + CCTK_REAL IN ARRAY ye, \ + CCTK_REAL IN ARRAY press, \ + CCTK_REAL OUT ARRAY xeps, \ + CCTK_INT OUT ARRAY keyerr, \ + CCTK_INT OUT anyerr) + +USES FUNCTION EOS_Omni_EpsFromPress + + + protected: CCTK_REAL simple_wave_grid_functions TYPE=GF TIMELEVELS=1 tags='checkpoint="no"' diff --git a/src/GRHydro_ReadConformalData.F90 b/src/GRHydro_ReadConformalData.F90 index 4513f47..aaf6cf3 100644 --- a/src/GRHydro_ReadConformalData.F90 +++ b/src/GRHydro_ReadConformalData.F90 @@ -61,11 +61,11 @@ subroutine GRHydro_ReadConformalData(CCTK_ARGUMENTS) integer :: keytemp = 0 integer :: anyerr = 0 integer :: keyerr(1) = 0 - real*8 :: xpress = 0.0d0 - real*8 :: xeps = 0.0d0 - real*8 :: xtemp = 0.0d0 - real*8 :: xye = 0.0d0 - poly_eoskey = GRHydro_poly_eoskey + real*8 :: xpress(1) = 0.0d0 + real*8 :: xeps(1) = 0.0d0 + real*8 :: xtemp(1) = 0.0d0 + real*8 :: xye(1) = 0.0d0 + poly_eoskey = EOS_Omni_GetHandle("2D_Polytrope") ! end EOS Omni vars #endif @@ -155,8 +155,8 @@ subroutine GRHydro_ReadConformalData(CCTK_ARGUMENTS) do j=1,cctk_lsh(2) do k=1,cctk_lsh(3) #ifdef USE_EOS_OMNI - call EOS_Omni_EpsFromPress(poly_eoskey,keytemp,n,& - rho(i,j,k),xeps,xtemp,xye,press(i,j,k),eps(i,j,k),keyerr,anyerr) + call EOS_Omni_EpsFromPress(poly_eoskey,keytemp,n,rho(i,j,k),xeps,xtemp,xye,& + press(i,j,k),eps(i,j,k),keyerr,anyerr) #else eps(i,j,k) = EOS_SpecificIntEnergy(GRHydro_eos_handle,rho(i,j,k),press(i,j,k)) diff --git a/src/GRHydro_SimpleWave.F90 b/src/GRHydro_SimpleWave.F90 index 2274790..85e191a 100644 --- a/src/GRHydro_SimpleWave.F90 +++ b/src/GRHydro_SimpleWave.F90 @@ -62,10 +62,10 @@ subroutine GRHydro_SimpleWave(CCTK_ARGUMENTS) integer :: keytemp = 0 integer :: anyerr = 0 integer :: keyerr(1) = 0 - real*8 :: xpress = 0.0d0 - real*8 :: xeps = 0.0d0 - real*8 :: xtemp = 0.0d0 - real*8 :: xye = 0.0d0 + real*8 :: xpress(1) = 0.0d0 + real*8 :: xeps(1) = 0.0d0 + real*8 :: xtemp(1) = 0.0d0 + real*8 :: xye(1) = 0.0d0 ! end EOS Omni vars #endif @@ -149,8 +149,9 @@ subroutine GRHydro_SimpleWave(CCTK_ARGUMENTS) velx(i,1,1) = 0.d0 w_lorentz(i,1,1) = 1.d0 #if USE_EOS_OMNI + xeps = 1.0d0 call EOS_Omni_press(GRHydro_polytrope_handle,keytemp,n,& - rho(i,1,1),1.0d0,xtemp,xye,press(i,1,1),keyerr,anyerr) + rho(i,1,1),xeps,xtemp,xye,press(i,1,1),keyerr,anyerr) #else press(i,1,1) = EOS_Pressure(GRHydro_polytrope_handle, rho(i,1,1), 1.0d0) #endif |