User: cott Date: 2010/07/23 10:29 AM
Modified: /trunk/src/ GRHydro_Con2Prim.F90, GRHydro_Eigenproblem.F90, GRHydro_Eigenproblem_Marquina.F90, GRHydro_Marquina.F90, GRHydro_Prim2Con.F90, GRHydro_RoeSolver.F90
Log: * remove incomplete and slow NaN checks.
File Changes:
Directory: /trunk/src/ ======================
File [modified]: GRHydro_Con2Prim.F90 Delta lines: +2 -47 =================================================================== --- trunk/src/GRHydro_Con2Prim.F90 2010-07-22 14:51:02 UTC (rev 140) +++ trunk/src/GRHydro_Con2Prim.F90 2010-07-23 15:29:56 UTC (rev 141) @@ -184,7 +184,7 @@
if (epsnegative) then
-#if 1 +#if 0 ! cott 2010/03/30: ! Set point to atmosphere, but continue evolution -- this is better than using ! the poly EOS -- it will lead the code to crash if this happens inside a (neutron) star, @@ -333,7 +333,7 @@ pold = sqrt(s2 + c2p_reset_pressure_to_value) - utau - udens else !$OMP CRITICAL - call CCTK_WARN(GRHydro_NaN_verbose, "c2p failed and being told not to reset the pressure") +!!!! call CCTK_WARN(GRHydro_NaN_verbose, "c2p failed and being told not to reset the pressure") GRHydro_C2P_failed = 1 !$OMP END CRITICAL endif @@ -349,15 +349,6 @@ epsilon = (sqrt( (utau + pold + udens)**2 - s2) - pold * w_lorentz - & udens)/udens
-!!$ BEGIN: Check for NaN value (1st check) - if (rho .ne. rho) then - !$OMP CRITICAL - write(warnline,'(a70,7g15.6)') 'NaN produced in sqrt(): (utau, pold, udens, s2, x, y, z)', utau, pold, udens, s2, x, y, z - call CCTK_WARN(GRHydro_NaN_verbose, warnline) - !$OMP END CRITICAL - endif -!!$ END: Check for NaN value (1st check) - !!$ Calculate the function
#if USE_EOS_OMNI @@ -450,15 +441,6 @@ f = pnew - EOS_Pressure(handle, rho, epsilon) #endif
- !check whether rho is NaN - if (rho .ne. rho) then - !$OMP CRITICAL - write(warnline,'(a20,g20.7)') 'rho is NaN: ',rho - call CCTK_WARN(GRHydro_NaN_verbose,warnline) - !$OMP END CRITICAL - goto 51 - end if - enddo
!!$ Polish the root @@ -504,15 +486,6 @@
enddo
-!!$ BEGIN: Check for NaN value (2nd check) - if (rho .ne. rho) then - !$OMP CRITICAL - write(warnline,'(a70,7g15.6)') 'NaN produced in sqrt(): (utau, pold, udens, s2, x, y, z)', utau, pold, udens, s2, x, y, z - call CCTK_WARN(GRHydro_NaN_verbose, warnline) - !$OMP END CRITICAL - endif -!!$ END: Check for NaN value (2nd check) - !!$ Calculate primitive variables from root
if (rho .le. GRHydro_rho_min*(1.d0+GRHydro_atmo_tolerance) ) then @@ -997,15 +970,6 @@
w_lorentz = sqrt(1.d0 + s2 / ( (udens*enthalpy)**2 ))
-!!$ BEGIN: Check for NaN value (1st check) - if (w_lorentz .ne. w_lorentz) then - !$OMP CRITICAL - write(warnline,'(a70,8g15.6)') 'NaN produced in sqrt(): (dens, det, s2, udens, enthalpy, x, y, z)', dens, det, s2, udens, enthalpy, x, y, z - call CCTK_WARN(GRHydro_NaN_verbose, warnline) - !$OMP END CRITICAL - endif -!!$ END: Check for NaN value (1st check) - #if USE_EOS_OMNI call EOS_Omni_press(poly_eoskey,keytemp,n,& rhoold,epsilon,xtemp,xye,press,keyerr,anyerr) @@ -1165,15 +1129,6 @@ w_lorentz = sqrt(1.d0 + s2 / ( (udens*enthalpy)**2 )) #endif
-!!$ BEGIN: Check for NaN value (2nd check) - if (w_lorentz .ne. w_lorentz) then - !$OMP CRITICAL - write(warnline,'(a70,6g15.6)') 'NaN produced in sqrt(): (s2, udens, enthalpy, x, y, z)', s2, udens, enthalpy, x, y, z - call CCTK_WARN(GRHydro_NaN_verbose, warnline) - !$OMP END CRITICAL - endif -!!$ END: Check for NaN value (2nd check) - #if USE_EOS_OMNI call EOS_Omni_press(poly_eoskey,keytemp,n,& rhonew,epsilon,xtemp,xye,press,keyerr,anyerr)
File [modified]: GRHydro_Eigenproblem.F90 Delta lines: +0 -64 =================================================================== --- trunk/src/GRHydro_Eigenproblem.F90 2010-07-22 14:51:02 UTC (rev 140) +++ trunk/src/GRHydro_Eigenproblem.F90 2010-07-23 15:29:56 UTC (rev 141) @@ -182,8 +182,6 @@ CCTK_REAL axp,axm,vxp,vxm,cxx,cxy,cxz,gam,xsi,dlt,vxa,vxb CCTK_INT handle
- character(len=150) NaN_WarnLine - !!$ Warning, warning. Nasty hack follows
#ifdef _EOS_BASE_INC_ @@ -253,13 +251,6 @@ lamm_nobeta = (velx*(one-cs2) - sqrt(cs2*(one-v2)*& (u*(one-v2*cs2) - velx**2*(one-cs2))))/(one-v2*cs2)
-!!$ BEGIN: Check for NaN value (1st check) - if (lamm_nobeta .ne. lamm_nobeta) then - write(NaN_WarnLine,'(a50,3g15.6)') 'NaN produced: (one, v2, cs2)', one, v2, cs2 - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (1st check) - lamp = lamp_nobeta - beta/alp lamm = lamm_nobeta - beta/alp
@@ -286,13 +277,6 @@
kappa = dpdeps / (dpdeps - rho * cs2)
-!!$ BEGIN: Check for NaN value (2nd check) - if (kappa .ne. kappa) then - write(NaN_WarnLine,'(a50,3g15.6)') 'NaN produced: (dpdeps, rho, cs2)', dpdeps, rho, cs2 - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (2nd check) - reivec1(1) = kappa / (enthalpy * w) reivec1(2) = vlowx reivec1(3) = vlowy @@ -583,8 +567,6 @@ CCTK_REAL axp,axm,vxp,vxm,cxx,cxy,cxz,gam,xsi,dlt CCTK_INT handle
- character(len=256) NaN_WarnLine - !!$ Warning, warning. Nasty hack follows
#ifdef _EOS_BASE_INC_ @@ -645,13 +627,6 @@ lamm_nobeta = (velx*(one-cs2) - sqrt(cs2*(one-v2)*& (u*(one-v2*cs2) - velx**2*(one-cs2))))/(one-v2*cs2)
-!!$ BEGIN: Check for NaN value (1st check) - if (lamm_nobeta .ne. lamm_nobeta) then - write(NaN_WarnLine,'(a50,3g15.6)') 'NaN produced: (one, v2, cs2)', one, v2, cs2 - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (1st check) - lamp = lamp_nobeta - beta/alp lamm = lamm_nobeta - beta/alp
@@ -678,13 +653,6 @@
kappa = dpdeps / (dpdeps - rho * cs2)
-!!$ BEGIN: Check for NaN value (2nd check) - if (kappa .ne. kappa) then - write(NaN_WarnLine,'(a50,3g15.6)') 'NaN produced: (dpdeps, rho, cs2)', dpdeps, rho, cs2 - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (2nd check) - reivec1(1) = kappa / (enthalpy * w) reivec1(2) = vlowx reivec1(3) = vlowy @@ -820,8 +788,6 @@ CCTK_REAL vlowx,vlowy,vlowz,v2,w CCTK_REAL lam1,lam2,lam3,lamm,lamp,lamm_nobeta,lamp_nobeta
- character(len=256) NaN_WarnLine - one = 1.0d0 two = 2.0d0
@@ -834,13 +800,6 @@
w = one / sqrt(one - v2)
-!!$ BEGIN: Check for NaN value (1st check) - if (w .ne. w) then - write(NaN_WarnLine,'(a50,2g15.6)') 'NaN produced: (one, v2)', one, v2 - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (1st check) - !!$ Calculate eigenvalues
lam1 = velx - beta/alp @@ -851,13 +810,6 @@ lamm_nobeta = (velx*(one-cs2) - sqrt(cs2*(one-v2)*& (u*(one-v2*cs2) - velx**2*(one-cs2))))/(one-v2*cs2)
-!!$ BEGIN: Check for NaN value (2nd check) - if (lamm_nobeta .ne. lamm_nobeta) then - write(NaN_WarnLine,'(a50,3g15.6)') 'NaN produced: (one, v2, cs2)', one, v2, cs2 - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (2nd check) - lamp = lamp_nobeta - beta/alp lamm = lamm_nobeta - beta/alp
@@ -917,8 +869,6 @@ CCTK_REAL press,dpdeps,enthalpy,kappa CCTK_REAL axp,axm,vxp,vxm,cxx,cxy,cxz,gam,xsi,dlt,vxa,vxb
- character(len=256) NaN_WarnLine - one = 1.0d0 two = 2.0d0
@@ -932,13 +882,6 @@
w = one / sqrt(one - v2)
-!!$ BEGIN: Check for NaN value (1st check) - if (w .ne. w) then - write(NaN_WarnLine,'(a50,2g15.6)') 'NaN produced: (one, v2)', one, v2 - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (1st check) - !!$Calculate eigenvalues and put them in conventional order
lam1 = velx - beta/alp @@ -950,13 +893,6 @@ lamm_nobeta = (velx*(one-cs2) - sqrt(cs2*(one-v2)*& (u*(one-v2*cs2) - velx**2*(one-cs2))))/(one-v2*cs2)
-!!$ BEGIN: Check for NaN value (2nd check) - if (lamm_nobeta .ne. lamm_nobeta) then - write(NaN_WarnLine,'(a50,3g15.6)') 'NaN produced: (one, v2, cs2)', one, v2, cs2 - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (2nd check) - lamp = lamp_nobeta - beta/alp lamm = lamm_nobeta - beta/alp
File [modified]: GRHydro_Eigenproblem_Marquina.F90 Delta lines: +0 -30 =================================================================== --- trunk/src/GRHydro_Eigenproblem_Marquina.F90 2010-07-22 14:51:02 UTC (rev 140) +++ trunk/src/GRHydro_Eigenproblem_Marquina.F90 2010-07-23 15:29:56 UTC (rev 141) @@ -61,8 +61,6 @@ CCTK_REAL flux1l,flux2l,flux3l,flux4l,flux5l CCTK_REAL flux1,flux2,flux3,flux4,flux5
- character(len=256) NaN_WarnLine - !!$ LOCAL VARS
CCTK_REAL du(5),aa(5,5),qdiff1,qdiff2,qdiff3,qdiff4,qdiff5 @@ -154,13 +152,6 @@
wl = one / sqrt(one - v2l)
-!!$ BEGIN: Check for NaN value (1st check) - if (wl .ne. wl) then - write(NaN_WarnLine,'(a100,2g15.6)') 'NaN produced: (one, v2l)', one, v2l - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (1st check) - !!$ EIGENVALUES
betainvalp = beta / alp @@ -175,13 +166,6 @@ lamp_nobetal = (velxl*(one-cs2l) + sqrt(lamp_tmp))*invfacl lamm_nobetal = (velxl*(one-cs2l) - sqrt(lamp_tmp))*invfacl
-!!$ BEGIN: Check for NaN value (2nd check) - if (lamp_nobetal .ne. lamp_nobetal) then - write(NaN_WarnLine,'(a150,5g15.6)') 'NaN produced: (cs2l, one, v2l, u, velxl)', cs2l, one, v2l, u, velxl - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (2nd check) - lampl = lamp_nobetal - betainvalp lamml = lamm_nobetal - betainvalp
@@ -220,13 +204,6 @@ !!$ Assume consistent primitive data wr = one / sqrt(one - v2r)
-!!$ BEGIN: Check for NaN value (3rd check) - if (wr .ne. wr) then - write(NaN_WarnLine,'(a100,2g15.6)') 'NaN produced: (one, v2r)', one, v2r - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (3rd check) - !!$ EIGENVALUES
lam1r = velxr - betainvalp @@ -240,13 +217,6 @@ lamp_nobetar = (velxr*(one-cs2r) + sqrt(lamp_tmp))*invfacr lamm_nobetar = (velxr*(one-cs2r) - sqrt(lamp_tmp))*invfacr
-!!$ BEGIN: Check for NaN value (4th check) - if (lamp_nobetar .ne. lamp_nobetar) then - write(NaN_WarnLine,'(a150,5g15.6)') 'NaN produced: (cs2r, one, v2r, u, velxr)', cs2r, one, v2r, u, velxr - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value (4th check) - lampr = lamp_nobetar - betainvalp lammr = lamm_nobetar - betainvalp
File [modified]: GRHydro_Marquina.F90 Delta lines: +0 -20 =================================================================== --- trunk/src/GRHydro_Marquina.F90 2010-07-22 14:51:02 UTC (rev 140) +++ trunk/src/GRHydro_Marquina.F90 2010-07-23 15:29:56 UTC (rev 141) @@ -48,7 +48,6 @@ tmp_w_lorentzp, tmp_w_lorentzm_i, w_lorentzp,w_lorentzm_i, usendh, psi4h integer :: m integer :: i,j,k - character(len=256) NaN_WarnLine
CCTK_INT :: type_bits, trivial, not_trivial
@@ -207,16 +206,6 @@ endif
-!!$ BEGIN: Check for NaN value (1st check) - if (w_lorentzp .ne. w_lorentzp) then - !$OMP CRITICAL - write(NaN_WarnLine,'(a100,3g15.6)') 'NaN produced in sqrt(): (primp(2), primp(3), primp(4))', primp(2), primp(3), primp(4) - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - !$OMP END CRITICAL - endif -!!$ END: Check for NaN value (1st check) - - !!$right state
tmp_w_lorentzm_i = gxxh*primm_i(2)*primm_i(2) + & @@ -230,15 +219,6 @@ w_lorentzm_i = 1.d0 / sqrt(1.d0 - tmp_w_lorentzm_i); endif
-!!$ BEGIN: Check for NaN value (2nd check) - if (w_lorentzm_i .ne. w_lorentzm_i) then - !$OMP CRITICAL - write(NaN_WarnLine,'(a100,3g15.6)') 'NaN produced in sqrt(): (primm_i(2), primm_i(3), primm_i(4))', primm_i(2), primm_i(3), primm_i(4) - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - !$OMP END CRITICAL - endif -!!$ END: Check for NaN value (2nd check) -
!!$eigenvalues and right eigenvectors
File [modified]: GRHydro_Prim2Con.F90 Delta lines: +0 -23 =================================================================== --- trunk/src/GRHydro_Prim2Con.F90 2010-07-22 14:51:02 UTC (rev 140) +++ trunk/src/GRHydro_Prim2Con.F90 2010-07-23 15:29:56 UTC (rev 141) @@ -128,7 +128,6 @@ CCTK_REAL :: ddens, dsx, dsy, dsz, dtau, drho, dvelx, dvely, dvelz,& deps, dpress, w, vlowx, vlowy, vlowz CCTK_INT :: handle - character(len=256) NaN_WarnLine
#include "EOS_Base.inc"
@@ -151,15 +150,6 @@ *dvelz*dvelz + 2*gxy*dvelx*dvely + 2*gxz*dvelx *dvelz + 2*gyz& *dvely*dvelz))
-!!$ BEGIN: Check for NaN value - if (w .ne. w) then - !$OMP CRITICAL - write(NaN_WarnLine,'(a100,3g15.6)') 'NaN produced in sqrt(): (dvelx,dvely,dvelz)', dvelx, dvely, dvelz - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - !$OMP END CRITICAL - endif -!!$ END: Check for NaN value - #if USE_EOS_OMNI call EOS_Omni_press(eoskey,keytemp,n,& drho,deps,xtemp,xye,dpress,keyerr,anyerr) @@ -316,14 +306,6 @@ rhoplus(i,j,k),velxplus(i,j,k),velyplus(i,j,k),& velzplus(i,j,k),epsplus(i,j,k),pressplus(i,j,k),& w_lorentzplus(i,j,k)) - if (densminus(i,j,k) .ne. densminus(i,j,k)) then - !$OMP CRITICAL - call CCTK_WARN(1, "NaN in densminus(i,j,k) (Prim2Con)") - write(warnline,' (a27,3g16.7)') 'avg_detl, velx, rhominus: ', & - avg_detl, velx(i,j,k), rhominus(i,j,k) - call CCTK_WARN(1, warnline) - !$OMP END CRITICAL - endif end do end do end do @@ -643,11 +625,6 @@ rhoplus(i,j,k),velxplus(i,j,k),velyplus(i,j,k),& velzplus(i,j,k),epsplus(i,j,k),pressplus(i,j,k),& w_lorentzplus(i,j,k)) - if (densminus(i,j,k) .ne. densminus(i,j,k)) then - !$OMP CRITICAL - call CCTK_WARN(1, "NaN in densminus(i,j,k) (Prim2Con)") - !$OMP END CRITICAL - endif end do end do end do
File [modified]: GRHydro_RoeSolver.F90 Delta lines: +0 -9 =================================================================== --- trunk/src/GRHydro_RoeSolver.F90 2010-07-22 14:51:02 UTC (rev 140) +++ trunk/src/GRHydro_RoeSolver.F90 2010-07-23 15:29:56 UTC (rev 141) @@ -47,8 +47,6 @@
CCTK_INT :: type_bits, trivial, not_trivial
- character(len=256) NaN_WarnLine - if (flux_direction == 1) then call SpaceMask_GetTypeBits(type_bits, "Hydro_RiemannProblemX") call SpaceMask_GetStateBits(trivial, "Hydro_RiemannProblemX", & @@ -222,13 +220,6 @@ gzzh*velzave*velzave + 2*gxyh*velxave*velyave + & 2*gxzh*velxave *velzave + 2*gyzh*velyave*velzave))
-!!$ BEGIN: Check for NaN value - if (w_lorentzave .ne. w_lorentzave) then - write(NaN_WarnLine,'(a100,3g15.6)') 'NaN produced in sqrt(): (velxave, velyave, velzave))', velxave, velyave, velzave - call CCTK_WARN(GRHydro_NaN_verbose, NaN_WarnLine) - endif -!!$ END: Check for NaN value - if (flux_direction == 1) then !!$ call prim2con(GRHydro_eos_handle,gxxh, gxyh, gxzh, gyyh, & !!$ gyzh, gzzh, avg_det, &
commits@lists.einsteintoolkit.org