aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrhaas <rhaas@c83d129a-5a75-4d5a-9c4d-ed3a5855bf45>2012-10-25 16:37:02 +0000
committerrhaas <rhaas@c83d129a-5a75-4d5a-9c4d-ed3a5855bf45>2012-10-25 16:37:02 +0000
commit72a0532057c4270ab82157eb257aa9286ceb2f11 (patch)
tree64a2b6ead0ae4e6d8c83f993cee1a97479cd00b8
parentfc7d0ec3fb8c96476bff5e025255818eaf44ed1a (diff)
GRHydro: Unify function interface for GRHydro_Con2PrimM_pt.c and GRHydro_Con2PrimM_pt_EOSOmni.c
* Interestingly Cactus doesn't complain about the function interface in interface.ccl. It has the old set of arguments for that function and declare it as written in Fortran instead of C. * Cylindrical explosion works again with GRHydro_Con2PrimM_pt.c routine. You can just swap both routines in make.code.defn From: Bruno Coutinho Mundim <bcmsma@astro.rit.edu> git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinEvolve/GRHydro/trunk@427 c83d129a-5a75-4d5a-9c4d-ed3a5855bf45
-rw-r--r--src/GRHydro_Con2PrimM_pt.c10
-rw-r--r--src/GRHydro_Con2PrimM_pt_EOSOmni.c10
-rw-r--r--src/make.code.defn2
3 files changed, 17 insertions, 5 deletions
diff --git a/src/GRHydro_Con2PrimM_pt.c b/src/GRHydro_Con2PrimM_pt.c
index bbd326e..2a85ba7 100644
--- a/src/GRHydro_Con2PrimM_pt.c
+++ b/src/GRHydro_Con2PrimM_pt.c
@@ -104,12 +104,13 @@ static CCTK_REAL pressure_rho0_w(CCTK_REAL rho0, CCTK_REAL w,CCTK_REAL gammaeos)
return((gammaeos-1.)*(w - rho0)/gammaeos) ;
}
-
void CCTK_FCALL CCTK_FNAME(GRHydro_Con2PrimM_pt) (
- CCTK_INT *handle, CCTK_REAL *gamma_eos,
+ CCTK_INT *handle, CCTK_INT *keytemp, CCTK_REAL *prec,
+ CCTK_REAL *gamma_eos,
CCTK_REAL *dens_in,
CCTK_REAL *sx_in, CCTK_REAL *sy_in, CCTK_REAL *sz_in,
CCTK_REAL *tau_in, CCTK_REAL *Bconsx_in, CCTK_REAL *Bconsy_in, CCTK_REAL *Bconsz_in,
+ CCTK_REAL *y_e_in, CCTK_REAL *temp_in,
CCTK_REAL *rho,
CCTK_REAL *velx, CCTK_REAL *vely, CCTK_REAL *velz,
CCTK_REAL *epsilon, CCTK_REAL *pressure,
@@ -185,12 +186,15 @@ RETURN VALUE: of retval = (i*100 + j) where
( used to be 5 -> failure: rho,uu <= 0 but now sets epsnegative to non-zero )
**********************************************************************************/
+
void CCTK_FCALL CCTK_FNAME(GRHydro_Con2PrimM_pt) (
- CCTK_INT *handle, CCTK_REAL *gamma_eos,
+ CCTK_INT *handle, CCTK_INT *keytemp, CCTK_REAL *prec,
+ CCTK_REAL *gamma_eos,
CCTK_REAL *dens_in,
CCTK_REAL *sx_in, CCTK_REAL *sy_in, CCTK_REAL *sz_in,
CCTK_REAL *tau_in,
CCTK_REAL *Bconsx_in, CCTK_REAL *Bconsy_in, CCTK_REAL *Bconsz_in,
+ CCTK_REAL *y_e_in, CCTK_REAL* temp_in,
CCTK_REAL *rho,
CCTK_REAL *velx, CCTK_REAL *vely, CCTK_REAL *velz,
CCTK_REAL *epsilon, CCTK_REAL *pressure,
diff --git a/src/GRHydro_Con2PrimM_pt_EOSOmni.c b/src/GRHydro_Con2PrimM_pt_EOSOmni.c
index 4a52414..8a72a6b 100644
--- a/src/GRHydro_Con2PrimM_pt_EOSOmni.c
+++ b/src/GRHydro_Con2PrimM_pt_EOSOmni.c
@@ -369,7 +369,12 @@ void CCTK_FCALL CCTK_FNAME(GRHydro_Con2PrimM_pt) (
CCTK_REAL dum1,dum2;
p = pressure_rho0_eps_eosomni(rho0,*epsilon,&dum1,&dum2,&eosvars) ; // EOSOMNI
- // p = pressure_rho0_u(rho0,u,gammaeos) ; // EOS
+ CCTK_REAL p2 = pressure_rho0_u(rho0,u,gammaeos) ; // EOS
+
+ if (fabs(p-p2) > 1.0e-8){
+ printf("p = %20.16g, p2 = %20.16g, delta pressure = %20.16g \n",p, p2, p-p2);
+ }
+
w = rho0 + u + p ;
W_last = w*gammasq ;
@@ -406,6 +411,9 @@ void CCTK_FCALL CCTK_FNAME(GRHydro_Con2PrimM_pt) (
if( ((*retval) != 0.) || (W == FAIL_VAL) ) {
*retval = *retval*100.+1.;
fprintf(stdout," *retval = %26.16e \n", *retval );
+ fprintf(stdout," x_3d[%d] = %26.16e \n", 0, x_3d[0] );
+ fprintf(stdout," x_3d[%d] = %26.16e \n", 1, x_3d[1] );
+ fprintf(stdout," x_3d[%d] = %26.16e \n", 2, x_3d[2] );
return;
}
else{
diff --git a/src/make.code.defn b/src/make.code.defn
index b1042c7..0100cae 100644
--- a/src/make.code.defn
+++ b/src/make.code.defn
@@ -45,7 +45,7 @@ SRCS = Utils.F90 \
GRHydro_EoSChangeGamma.F90 \
GRHydro_Tmunu.F90 \
GRHydro_Con2PrimM.F90 \
- GRHydro_Con2PrimM_pt_EOSOmni.c \
+ GRHydro_Con2PrimM_pt.c \
GRHydro_Con2PrimM_polytype_pt.c \
GRHydro_EigenproblemM.F90 \
GRHydro_FluxM.F90 \