diff options
Diffstat (limited to 'src/GRHydro_Con2Prim.F90')
-rw-r--r-- | src/GRHydro_Con2Prim.F90 | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/GRHydro_Con2Prim.F90 b/src/GRHydro_Con2Prim.F90 index 6bfbb64..f9b249e 100644 --- a/src/GRHydro_Con2Prim.F90 +++ b/src/GRHydro_Con2Prim.F90 @@ -561,6 +561,7 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve ! error handling if(anyerr.ne.0) then if (GRHydro_reflevel.ge.GRHydro_c2p_warn_from_reflevel) then + !OMP CRITICAL call CCTK_WARN(failinfomode,"EOS error in c2p 0") write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z call CCTK_WARN(failinfomode,warnline) @@ -569,6 +570,8 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve write(warnline,"(A7,i8)") "code: ",keyerr(1) call CCTK_WARN(failinfomode,warnline) write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel + write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel + !OMP END CRITICAL if(keyerr(1).eq.667.and.GRHydro_eos_hot_eps_fix.ne.0) then ! Handling of the case when no new temperature can be ! found for a given epsilon. The amount of times @@ -582,11 +585,14 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve rho,epsilon,temp,ye,xpress,keyerr,anyerr) nf = nf + 1 enddo + !OMP CRITICAL write(warnline,"(A30,i5)") "Iterations of heat injection: ",nf call CCTK_WARN(failinfomode,warnline) write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z call CCTK_WARN(failinfomode,warnline) + !OMP END CRITICAL if(nf.gt.nfudgemax) then + !OMP CRITICAL call CCTK_WARN(failinfomode,"EOS error in c2p 1: injected heat too many times") write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z call CCTK_WARN(failinfomode,warnline) @@ -597,10 +603,13 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel call CCTK_WARN(failinfomode,warnline) call CCTK_WARN(failwarnmode,"Aborting!!!") + !OMP END CRITICAL endif else + !OMP CRITICAL call CCTK_WARN(failinfomode,warnline) call CCTK_WARN(failwarnmode,"Aborting!!!") + !OMP END CRITICAL endif endif endif @@ -636,6 +645,7 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve ! error handling if(anyerr.ne.0) then if (GRHydro_reflevel.ge.GRHydro_c2p_warn_from_reflevel) then + !OMP CRITICAL call CCTK_WARN(failinfomode,"EOS error in c2p 1") write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z call CCTK_WARN(failinfomode,warnline) @@ -644,6 +654,8 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve write(warnline,"(A7,i8)") "code: ",keyerr(1) call CCTK_WARN(failinfomode,warnline) write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel + call CCTK_WARN(failinfomode,warnline) + !OMP END CRITICAL if(keyerr(1).eq.667.and.GRHydro_eos_hot_eps_fix.ne.0) then ! Handling of the case when no new temperature can be ! found for a given epsilon. The amount of times @@ -657,11 +669,14 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve rho,epsilon,temp,ye,xpress,keyerr,anyerr) nf = nf + 1 enddo + !OMP CRITICAL write(warnline,"(A30,i5)") "Iterations of heat injection: ",nf call CCTK_WARN(failinfomode,warnline) write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z call CCTK_WARN(failinfomode,warnline) + !OMP END CRITICAL if(nf.gt.nfudgemax) then + !OMP CRITICAL call CCTK_WARN(failinfomode,"EOS error in c2p 1: injected heat too many times") write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z call CCTK_WARN(failinfomode,warnline) @@ -672,10 +687,13 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel call CCTK_WARN(failinfomode,warnline) call CCTK_WARN(failwarnmode,"Aborting!!!") + !OMP END CRITICAL endif else + !OMP CRITICAL call CCTK_WARN(failinfomode,warnline) call CCTK_WARN(failwarnmode,"Aborting!!!") + !OMP END CRITICAL endif endif endif @@ -729,6 +747,7 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve ! error handling if(anyerr.ne.0) then if (GRHydro_reflevel.ge.GRHydro_c2p_warn_from_reflevel) then + !OMP CRITICAL call CCTK_WARN(failinfomode,"EOS error in c2p 2") write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z call CCTK_WARN(failinfomode,warnline) @@ -737,6 +756,8 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve write(warnline,"(A7,i8)") "code: ",keyerr(1) call CCTK_WARN(failinfomode,warnline) write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel + call CCTK_WARN(failinfomode,warnline) + !OMP END CRITICAL if(keyerr(1).eq.667.and.GRHydro_eos_hot_eps_fix.ne.0) then ! Handling of the case when no new temperature can be ! found for a given epsilon. The amount of times @@ -750,11 +771,14 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve rho,epsilon,temp,ye,xpress,keyerr,anyerr) nf = nf + 1 enddo + !OMP CRITICAL write(warnline,"(A30,i5)") "Iterations of heat injection: ",nf call CCTK_WARN(failinfomode,warnline) write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z call CCTK_WARN(failinfomode,warnline) + !OMP END CRITICAL if(nf.gt.nfudgemax) then + !OMP CRITICAL call CCTK_WARN(failinfomode,"EOS error in c2p 1: injected heat too many times") write(warnline,"(3i5,1P10E15.6)") ii,jj,kk,x,y,z call CCTK_WARN(failinfomode,warnline) @@ -765,10 +789,13 @@ subroutine Con2Prim_pt_hot(ii,jj,kk,handle, dens, sx, sy, sz, tau, rho, velx, ve write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel call CCTK_WARN(failinfomode,warnline) call CCTK_WARN(failwarnmode,"Aborting!!!") + !OMP END CRITICAL endif else + !OMP CRITICAL call CCTK_WARN(failinfomode,warnline) call CCTK_WARN(failwarnmode,"Aborting!!!") + !OMP END CRITICAL endif endif endif |