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