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

rhaas at tapir.caltech.edu rhaas at tapir.caltech.edu
Tue Jul 17 12:08:18 CDT 2012


User: rhaas
Date: 2012/07/17 12:08 PM

Modified:
 /trunk/src/
  GRHydro_Prim2Con.F90

Log:
 * improve treatment of hot EOS warning
 
 From: Christian Ott <cott at bethe.tapir.caltech.edu>

File Changes:

Directory: /trunk/src/
======================

File [modified]: GRHydro_Prim2Con.F90
Delta lines: +24 -18
===================================================================
--- trunk/src/GRHydro_Prim2Con.F90	2012-07-11 15:26:05 UTC (rev 392)
+++ trunk/src/GRHydro_Prim2Con.F90	2012-07-17 17:08:18 UTC (rev 393)
@@ -153,7 +153,9 @@
               xtemp(1) = 0.5d0*(temperature(i,j,k) + &
                    temperature(i-xoffset,j-yoffset,k-zoffset))
               call prim2con_hot(GRHydro_eos_handle, GRHydro_reflevel,&
-                   i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),g11l,g12l,g13l,g22l,& 
+                   cctk_iteration,i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),&
+                   r(i,j,k),&
+                   g11l,g12l,g13l,g22l,& 
                    g23l,g33l, &
                    avg_detl,densminus(i,j,k),sxminus(i,j,k),&
                    syminus(i,j,k),szminus(i,j,k),tauminus(i,j,k),&
@@ -170,8 +172,10 @@
               xtemp(1) = 0.5d0*(temperature(i,j,k) + &
                    temperature(i+xoffset,j+yoffset,k+zoffset))
               call prim2con_hot(GRHydro_eos_handle, GRHydro_reflevel, &
-                   i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),g11r,g12r,g13r,&
-                   g22r,g23r,g33r, &
+                   cctk_iteration,i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),&
+                   r(i,j,k),&
+                   g11r,g12r,g13r,&
+                   g22r,g23r,g33r,&
                    avg_detr, densplus(i,j,k),sxplus(i,j,k),&
                    syplus(i,j,k),szplus(i,j ,k),tauplus(i,j,k),&
                    rhoplus(i,j,k),velxplus(i,j,k),velyplus(i,j,k),&
@@ -241,8 +245,8 @@
 end subroutine prim2con
 
 
-subroutine prim2con_hot(handle, GRHydro_reflevel, ii, jj, kk, &
-     x, y, z, gxx, gxy, gxz, gyy, gyz, gzz, det, ddens, &
+subroutine prim2con_hot(handle, GRHydro_reflevel, cctk_iteration, ii, jj, kk, &
+     x, y, z, r, gxx, gxy, gxz, gyy, gyz, gzz, det, ddens, &
      dsx, dsy, dsz, dtau , drho, dvelx, dvely, dvelz, deps, dpress, w, &
      temp,ye) 
   
@@ -254,8 +258,8 @@
   CCTK_REAL :: gxx, gxy, gxz, gyy, gyz, gzz, det
   CCTK_REAL :: ddens, dsx, dsy, dsz, dtau, drho(1), dvelx, dvely, dvelz,&
        deps(1), dpress(1), w, vlowx, vlowy, vlowz   
-  CCTK_REAL :: temp(1),ye(1), x, y, z
-  CCTK_INT :: handle, GRHydro_reflevel, ii, jj, kk
+  CCTK_REAL :: temp(1),ye(1), x, y, z, r
+  CCTK_INT :: handle, GRHydro_reflevel, cctk_iteration, ii, jj, kk
   CCTK_REAL :: sdet, h
   character(len=512) warnline
 
@@ -287,7 +291,7 @@
         if(anyerr.ne.0) then
            !$OMP CRITICAL
            call CCTK_WARN(1,"EOS error in prim2con_hot: lev 2")
-           write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z
+           write(warnline,"(i8,3i5,1P10E15.6)") cctk_iteration,ii,jj,kk,x,y,z,r
            call CCTK_WARN(1,warnline)
            write(warnline,"(1P10E15.6)") drho,deps,temp,ye
            call CCTK_WARN(1,warnline)
@@ -302,15 +306,17 @@
         ! Use the average temperature at the interface instead of the
         ! reconstructed specific internal energy.
         !$OMP CRITICAL
-        call CCTK_WARN(1,"EOS error in prim2con_hot: NOW using averaged temp!")
-        write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z
-        call CCTK_WARN(1,warnline)
-        write(warnline,"(1P10E15.6)") drho,deps,temp0,ye
-        call CCTK_WARN(1,warnline)
-        write(warnline,"(A7,i8)") "code: ",keyerr(1)
-        call CCTK_WARN(1,warnline)
-        write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel
-        call CCTK_WARN(1,warnline)
+        if(GRHydro_eos_hot_prim2con_warn.ne.0) then
+           call CCTK_WARN(1,"EOS error in prim2con_hot: NOW using averaged temp!")
+           write(warnline,"(i8,3i5,1P10E15.6)") cctk_iteration,ii,jj,kk,x,y,z,r
+           call CCTK_WARN(1,warnline)
+           write(warnline,"(1P10E15.6)") drho,deps,temp0,ye
+           call CCTK_WARN(1,warnline)
+           write(warnline,"(A7,i8)") "code: ",keyerr(1)
+           call CCTK_WARN(1,warnline)
+           write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel
+           call CCTK_WARN(1,warnline)
+        endif
         !$OMP END CRITICAL
         keytemp=1
         temp = temp0
@@ -320,7 +326,7 @@
         if(anyerr.ne.0) then
            !$OMP CRITICAL
            call CCTK_WARN(1,"EOS error in prim2con_hot")
-           write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z
+           write(warnline,"(i8,3i5,1P10E15.6)") cctk_iteration,ii,jj,kk,x,y,z,r
            call CCTK_WARN(1,warnline)
            write(warnline,"(1P10E15.6)") drho,deps,temp,ye
            call CCTK_WARN(1,warnline)



More information about the Commits mailing list