[Commits] [svn:einsteintoolkit] GRHydro/trunk/src/ (Rev. 141)

cott at tapir.caltech.edu cott at tapir.caltech.edu
Fri Jul 23 10:29:56 CDT 2010


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, &



More information about the Commits mailing list