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

rhaas at tapir.caltech.edu rhaas at tapir.caltech.edu
Tue Aug 13 09:56:08 CDT 2013


User: rhaas
Date: 2013/08/13 09:56 AM

Modified:
 /trunk/src/
  GRHydro_Con2PrimHot.F90

Log:
 expand warnings in GRHydro_Con2PrimHot
 
 * compute reflevel in GRHydro_Con2PrimHot to be sure it is current
 * only output warnings if we want them
 
 From: Christian Ott <cott at tapir.caltech.edu>

File Changes:

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

File [modified]: GRHydro_Con2PrimHot.F90
Delta lines: +20 -16
===================================================================
--- trunk/src/GRHydro_Con2PrimHot.F90	2013-08-13 14:56:05 UTC (rev 566)
+++ trunk/src/GRHydro_Con2PrimHot.F90	2013-08-13 14:56:08 UTC (rev 567)
@@ -28,6 +28,7 @@
   
   CCTK_REAL :: local_min_tracer
   CCTK_REAL :: local_perc_ptol
+  integer :: reflevel
 
   ! save memory when MP is not used
   CCTK_INT :: GRHydro_UseGeneralCoordinates
@@ -42,6 +43,7 @@
 ! end EOS Omni vars
 
   myproc = CCTK_MyProc(cctkGH)
+  reflevel = int(log10(dble(cctk_levfac(1)))/log10(2.0d0))
 
   ! save memory when MP is not used
   if (GRHydro_UseGeneralCoordinates(cctkGH).ne.0) then
@@ -155,7 +157,7 @@
                press(i,j,k),w_lorentz(i,j,k), &
                uxx,uxy,uxz,uyy,uyz,uzz,sdet,x(i,j,k),y(i,j,k), &
                z(i,j,k),r(i,j,k),epsnegative,GRHydro_rho_min,pmin, epsmin, & 
-               GRHydro_reflevel, GRHydro_C2P_failed(i,j,k), GRHydro_perc_ptol)
+               reflevel, GRHydro_C2P_failed(i,j,k), GRHydro_perc_ptol)
 
           if(temperature(i,j,k).gt.GRHydro_max_temp) then
              !$OMP CRITICAL
@@ -172,7 +174,7 @@
              call CCTK_WARN(1,warnline)
              write(warnline,"(A7,i8)") "code: ",keyerr(1)
              call CCTK_WARN(1,warnline)
-             write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel
+             write(warnline,"(A10,i5)") "reflevel: ", reflevel
              call CCTK_WARN(1,warnline)
              call CCTK_WARN(0,"Aborting!!!")
              !$OMP END CRITICAL
@@ -200,12 +202,12 @@
                   temperature(i,j,k),y_e(i,j,k),press(i,j,k),w_lorentz(i,j,k), &
                   uxx,uxy,uxz,uyy,uyz,uzz,sdet,x(i,j,k),y(i,j,k), &
                   z(i,j,k),r(i,j,k),epsnegative,GRHydro_rho_min,pmin, epsmin, & 
-                  GRHydro_reflevel, GRHydro_C2P_failed(i,j,k), local_perc_ptol)
+                  reflevel, GRHydro_C2P_failed(i,j,k), local_perc_ptol)
              if( abs(GRHydro_C2P_failed(i,j,k)-2.0d0) .lt. 1.0d-10) then
                 !$OMP CRITICAL
-                if (GRHydro_reflevel.ge.GRHydro_c2p_warn_from_reflevel) then
+                if (reflevel.ge.GRHydro_c2p_warn_from_reflevel) then
                    call CCTK_WARN(1,"Convergence problem in c2p")
-                   write(warnline,"(A10,i5)") "reflevel: ",GRHydro_reflevel
+                   write(warnline,"(A10,i5)") "reflevel: ",reflevel
                    call CCTK_WARN(1,warnline)
                    write(warnline,"(A10,i10)") "iteration: ",cctk_iteration
                    call CCTK_WARN(1,warnline)
@@ -228,17 +230,19 @@
              ! the temperature of the atmosphere.
              ! Now reset this point to minimum temperature.
              GRHydro_C2P_failed(i,j,k) = 0
-             !$OMP CRITICAL
-             write(warnline,"(A10,i7,4i5,1P10E15.6)") "reset T:",&
-                  cctk_iteration,GRHydro_Reflevel,&
-                  i,j,k,rho(i,j,k),&
-                  eps(i,j,k),temperature(i,j,k),y_e(i,j,k)
-             call CCTK_WARN(1,warnline)
-             write(warnline,"(A10,i7,4i5,1P10E15.6)") "reset T:",&
-                  cctk_iteration,GRHydro_Reflevel,&
-                  i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),r(i,j,k)
-             call CCTK_WARN(1,warnline)
-             !$OMP END CRITICAL
+             if (reflevel.ge.GRHydro_c2p_warn_from_reflevel) then
+                !$OMP CRITICAL
+                write(warnline,"(A10,i7,4i5,1P10E15.6)") "reset T:",&
+                     cctk_iteration,GRHydro_Reflevel,&
+                     i,j,k,rho(i,j,k),&
+                     eps(i,j,k),temperature(i,j,k),y_e(i,j,k)
+                call CCTK_WARN(1,warnline)
+                write(warnline,"(A10,i7,4i5,1P10E15.6)") "reset T:",&
+                     cctk_iteration,GRHydro_Reflevel,&
+                     i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),r(i,j,k)
+                call CCTK_WARN(1,warnline)
+                !$OMP END CRITICAL
+             endif
              temperature(i,j,k) = GRHydro_hot_atmo_temp
              keytemp = 1
              call EOS_Omni_press(GRHydro_eos_handle,keytemp,GRHydro_eos_rf_prec,n,&



More information about the Commits mailing list