User: rhaas Date: 2013/05/13 01:11 PM
Removed: /trunk/src/ GRHydro_InterfacesAM.h
Modified: /trunk/src/ GRHydro_Con2PrimAM.F90
Log: GRHydro: remove duplicate (and incorrect) GRHydro_InterfacesAM.h
sync up GRHydro_Con2PrimAM with GRHydro_Con2PrimM
File Changes:
Directory: /trunk/src/ ======================
File [modified]: GRHydro_Con2PrimAM.F90 Delta lines: +35 -6 =================================================================== --- trunk/src/GRHydro_Con2PrimAM.F90 2013-05-13 17:54:52 UTC (rev 516) +++ trunk/src/GRHydro_Con2PrimAM.F90 2013-05-13 18:11:19 UTC (rev 517) @@ -13,7 +13,6 @@ #include "cctk_Arguments.h" #include "cctk_Functions.h" #include "SpaceMask.h" -#include "GRHydro_InterfacesAM.h" #include "GRHydro_Macros.h"
#define ITER_TOL (1.0e-8) @@ -349,6 +348,18 @@ !of the comoving B-field, b^{\mu} b_{\mu}. It is overwritten !in this routine, but we may need to find a better notation !avoid future confusions. + if(GRHydro_eos_handle .eq. 1 .or. GRHydro_eos_handle .eq. 2) then + + call GRHydro_Con2PrimM_ptold(GRHydro_eos_handle, local_gam(1), dens(i,j,k), & + scon(i,j,k,1),scon(i,j,k,2),scon(i,j,k,3), tau(i,j,k), & + Bconsx_tmp,Bconsy_tmp,Bconsz_tmp,rho_tmp, & + velx_tmp,vely_tmp,velz_tmp,eps_tmp,press_tmp, & + Bvecx_tmp,Bvecy_tmp,Bvecz_tmp,b2, w_lorentz_tmp,& + g11(i,j,k),g12(i,j,k),g13(i,j,k),g22(i,j,k),g23(i,j,k),g33(i,j,k), & + uxx,uxy,uxz,uyy,uyz,uzz,det, & + epsnegative,GRHydro_C2P_failed(i,j,k)) + + else call GRHydro_Con2PrimM_pt2(GRHydro_eos_handle, keytemp, GRHydro_eos_rf_prec, GRHydro_perc_ptol, local_gam(1), dens(i,j,k), & scon(i,j,k,1),scon(i,j,k,2),scon(i,j,k,3), tau(i,j,k), & Bconsx_tmp, Bconsy_tmp, Bconsz_tmp,xye(1), & @@ -358,9 +369,16 @@ g22(i,j,k),g23(i,j,k),g33(i,j,k), & uxx,uxy,uxz,uyy,uyz,uzz,det, & epsnegative,GRHydro_C2P_failed(i,j,k)) + endif
if(evolve_entropy.ne.0) then + if(GRHydro_C2P_failed(i,j,k).ne.0) then + !Use previous time step for rho: entropy(i,j,k) = entropycons(i,j,k)/dens(i,j,k)*rho(i,j,k) + else + !Use the current correct value of rho returned by con2prim: + entropy(i,j,k) = entropycons(i,j,k)/dens(i,j,k)*rho_tmp + endif endif
if(GRHydro_C2P_failed(i,j,k).ne.0) then @@ -449,6 +467,19 @@ Bconsy_tmp = sdet*Bvecy_tmp Bconsz_tmp = sdet*Bvecz_tmp
+ if(evolve_entropy.ne.0) then + call GRHydro_Con2PrimM_ptee(GRHydro_eos_handle, keytemp, & + GRHydro_eos_rf_prec, local_gam(1), dens(i,j,k), & + scon(i,j,k,1),scon(i,j,k,2),scon(i,j,k,3), tau(i,j,k), & + Bconsx_tmp,Bconsy_tmp,Bconsz_tmp, & + entropycons(i,j,k), xye(1), & + xtemp(1),rho_tmp,velx_tmp,vely_tmp,velz_tmp,& + eps_tmp,press_tmp,Bvecx_tmp,Bvecy_tmp,Bvecz_tmp,b2,& + w_lorentz_tmp,g11(i,j,k),g12(i,j,k),g13(i,j,k),& + g22(i,j,k),g23(i,j,k),g33(i,j,k), & + uxx,uxy,uxz,uyy,uyz,uzz,det, & + epsnegative,GRHydro_C2P_failed(i,j,k)) + else call GRHydro_Con2PrimM_Polytype_pt(GRHydro_eos_handle, local_pgam, & dens(i,j,k),scon(i,j,k,1),scon(i,j,k,2),scon(i,j,k,3), sc, & Bconsx_tmp, Bconsy_tmp, Bconsz_tmp, rho_tmp,& @@ -457,6 +488,7 @@ g11(i,j,k),g12(i,j,k),g13(i,j,k),g22(i,j,k),g23(i,j,k),g33(i,j,k), & uxx,uxy,uxz,uyy,uyz,uzz,det, & epsnegative,GRHydro_C2P_failed(i,j,k)) + end if
rho(i,j,k) = rho_tmp press(i,j,k) = press_tmp @@ -682,12 +714,8 @@
!!$ tau does need to take into account the existing B-field !!$ with w_lorentz=1, we find tau = sqrtdet*(rho (1+eps+b^2/2)) - dens [Press drops out] - tau(i,j,k) = sdet * (rho(i,j,k)*(1.0+eps(i,j,k)+b2/2.0)) - dens(i,j,k) + tau(i,j,k) = sdet * (rho(i,j,k)*eps(i,j,k)+b2/2.0)
- if(tau(i,j,k).le.sdet*b2*0.5d0)then - tau(i,j,k) = GRHydro_tau_min + sdet*b2*0.5d0 - endif - end if
end do @@ -870,6 +898,7 @@ if(evolve_Y_e.ne.0) then Y_e(i,j,k) = Y_e_con(i,j,k) / dens(i,j,k) endif + Bconsx_tmp = sqrt(avg_detl)*Bvecxminus(i,j,k) Bconsy_tmp = sqrt(avg_detl)*Bvecyminus(i,j,k) Bconsz_tmp = sqrt(avg_detl)*Bveczminus(i,j,k)
File [removed]: GRHydro_InterfacesAM.h Delta lines: +0 -95 =================================================================== --- trunk/src/GRHydro_InterfacesAM.h 2013-05-13 17:54:52 UTC (rev 516) +++ trunk/src/GRHydro_InterfacesAM.h 2013-05-13 18:11:19 UTC (rev 517) @@ -1,95 +0,0 @@ -module Con2PrimAM_fortran_interfaces - implicit none - - interface - - subroutine GRHydro_Con2PrimM_pt( handle, keytemp, prec, & - local_gam, dens, & - sx, sy, sz, & - tau, & - Bconsx, Bconsy, Bconsz, & - xye, xtemp, & - rho, & - velx, vely, velz,& - epsilon, pressure,& - Bx, By, Bz, & - bsq,& - w_lorentz, & - gxx, gxy, gxz, & - gyy, gyz, gzz, & - uxx, uxy, uxz,& - uyy, uyz, uzz,& - det,& - epsnegative, & - retval) - - implicit none - CCTK_INT handle - CCTK_INT keytemp - CCTK_REAL prec - CCTK_REAL local_gam - CCTK_REAL dens - CCTK_REAL sx, sy, sz - CCTK_REAL tau - CCTK_REAL Bconsx, Bconsy, Bconsz - CCTK_REAL xye - CCTK_REAL xtemp - CCTK_REAL rho - CCTK_REAL velx, vely, velz - CCTK_REAL epsilon, pressure - CCTK_REAL Bx, By, Bz - CCTK_REAL bsq - CCTK_REAL w_lorentz - CCTK_REAL gxx, gxy, gxz - CCTK_REAL gyy, gyz, gzz - CCTK_REAL uxx, uxy, uxz - CCTK_REAL uyy, uyz, uzz - CCTK_REAL det - CCTK_INT epsnegative - CCTK_REAL retval - end subroutine GRHydro_Con2PrimM_pt - - subroutine GRHydro_Con2PrimM_Polytype_pt( handle, local_gam,& - dens, & - sx, sy, sz, & - sc, & - Bconsx, Bconsy, Bconsz, & - rho, & - velx, vely, velz,& - epsilon, pressure,& - Bx, By, Bz, & - bsq,& - w_lorentz, & - gxx, gxy, gxz, & - gyy, gyz, gzz, & - uxx, uxy, uxz,& - uyy, uyz, uzz,& - det,& - epsnegative, & - retval) - - implicit none - CCTK_INT handle - CCTK_REAL local_gam - CCTK_REAL dens - CCTK_REAL sx, sy, sz - CCTK_REAL sc - CCTK_REAL Bconsx, Bconsy, Bconsz - CCTK_REAL rho - CCTK_REAL velx, vely, velz - CCTK_REAL epsilon, pressure - CCTK_REAL Bx, By, Bz - CCTK_REAL bsq - CCTK_REAL w_lorentz - CCTK_REAL gxx, gxy, gxz - CCTK_REAL gyy, gyz, gzz - CCTK_REAL uxx, uxy, uxz - CCTK_REAL uyy, uyz, uzz - CCTK_REAL det - CCTK_INT epsnegative - CCTK_REAL retval - end subroutine GRHydro_Con2PrimM_Polytype_pt - - end interface - -end module Con2PrimAM_fortran_interfaces
commits@lists.einsteintoolkit.org