diff options
-rw-r--r-- | interface.ccl | 2 | ||||
-rw-r--r-- | schedule.ccl | 6 | ||||
-rw-r--r-- | src/GRHydro_Boundaries.F90 | 6 | ||||
-rw-r--r-- | src/GRHydro_BoundariesM.F90 | 6 | ||||
-rw-r--r-- | src/GRHydro_Con2Prim.F90 | 27 | ||||
-rw-r--r-- | src/GRHydro_Prim2Con.F90 | 6 | ||||
-rw-r--r-- | src/GRHydro_RegisterGZ.cc | 12 | ||||
-rw-r--r-- | src/GRHydro_RegisterGZM.cc | 8 | ||||
-rw-r--r-- | src/GRHydro_RegisterVars.cc | 2 | ||||
-rw-r--r-- | src/GRHydro_RegisterVarsM.cc | 2 |
10 files changed, 52 insertions, 25 deletions
diff --git a/interface.ccl b/interface.ccl index 3fcbb41..4abae2e 100644 --- a/interface.ccl +++ b/interface.ccl @@ -345,7 +345,7 @@ real GRHydro_tracers[number_of_tracers] type = GF Timelevels = 3 tags='Prolongat tracer } "Tracers" -real w_lorentz type = GF Timelevels = 3 tags='ProlongationParameter="HydroBase::prolongation_type" tensortypealias="Scalar" tensorweight=+1.0 interpolator="matter"' "Lorentz factor" +#real w_lorentz type = GF Timelevels = 3 tags='ProlongationParameter="HydroBase::prolongation_type" tensortypealias="Scalar" tensorweight=+1.0 interpolator="matter"' "Lorentz factor" real psidc type = GF Timelevels = 3 tags='ProlongationParameter="HydroBase::prolongation_type" tensortypealias="Scalar" tensorweight=+1.0 interpolator="matter"' "Psi parameter for divergence cleaning" diff --git a/schedule.ccl b/schedule.ccl index 19a15ff..b7bc714 100644 --- a/schedule.ccl +++ b/schedule.ccl @@ -16,7 +16,6 @@ if (timelevels == 3) STORAGE:dens[3] STORAGE:tau[3] STORAGE:scon[3] - STORAGE:w_lorentz[3] if (number_of_particles) { STORAGE:particles[3] @@ -42,7 +41,6 @@ else STORAGE:dens[2] STORAGE:tau[2] STORAGE:scon[2] - STORAGE:w_lorentz[2] if (number_of_particles) { STORAGE:particles[2] @@ -375,7 +373,7 @@ if (EoS_Change) SYNC: dens SYNC: tau SYNC: scon - SYNC: w_lorentz + SYNC: hydrobase::w_lorentz SYNC: hydrobase::rho SYNC: hydrobase::press SYNC: hydrobase::eps @@ -1024,7 +1022,7 @@ schedule GRHydro_Boundaries IN HydroBase_Select_Boundaries AS GRHydro_Bound SYNC: dens SYNC: tau SYNC: scon - SYNC: w_lorentz + SYNC: HydroBase::w_lorentz SYNC: HydroBase::rho SYNC: HydroBase::press SYNC: HydroBase::eps diff --git a/src/GRHydro_Boundaries.F90 b/src/GRHydro_Boundaries.F90 index 1105eef..c2e418f 100644 --- a/src/GRHydro_Boundaries.F90 +++ b/src/GRHydro_Boundaries.F90 @@ -64,7 +64,7 @@ subroutine GRHydro_InitSymBound(CCTK_ARGUMENTS) call SetCartSymVN(ierr, cctkGH, sym, "HydroBase::press") call SetCartSymVN(ierr, cctkGH, sym, "GRHydro::dens") call SetCartSymVN(ierr, cctkGH, sym, "GRHydro::tau") - call SetCartSymVN(ierr, cctkGH, sym, "GRHydro::w_lorentz") + call SetCartSymVN(ierr, cctkGH, sym, "HydroBase::w_lorentz") call SetCartSymVN(ierr, cctkGH, sym, "HydroBase::eps") call SetCartSymVN(ierr, cctkGH, sym, "GRHydro::GRHydro_C2P_failed") if(evolve_mhd.ne.0.and.clean_divergence.ne.0) then @@ -157,7 +157,7 @@ subroutine GRHydro_Boundaries(CCTK_ARGUMENTS) ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & "GRHydro::scon", "Flat") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & - "GRHydro::w_lorentz", "Flat") + "HydroBase::w_lorentz", "Flat") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & "HydroBase::rho", "Flat") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & @@ -207,7 +207,7 @@ subroutine GRHydro_Boundaries(CCTK_ARGUMENTS) ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & "GRHydro::scon", "None") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & - "GRHydro::w_lorentz", "None") + "HydroBase::w_lorentz", "None") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & "HydroBase::rho", "None") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & diff --git a/src/GRHydro_BoundariesM.F90 b/src/GRHydro_BoundariesM.F90 index 86910f5..e19007f 100644 --- a/src/GRHydro_BoundariesM.F90 +++ b/src/GRHydro_BoundariesM.F90 @@ -64,7 +64,7 @@ subroutine GRHydro_InitSymBoundM(CCTK_ARGUMENTS) call SetCartSymVN(ierr, cctkGH, sym, "HydroBase::press") call SetCartSymVN(ierr, cctkGH, sym, "GRHydro::dens") call SetCartSymVN(ierr, cctkGH, sym, "GRHydro::tau") - call SetCartSymVN(ierr, cctkGH, sym, "GRHydro::w_lorentz") + call SetCartSymVN(ierr, cctkGH, sym, "HydroBase::w_lorentz") call SetCartSymVN(ierr, cctkGH, sym, "HydroBase::eps") call SetCartSymVN(ierr, cctkGH, sym, "GRHydro::GRHydro_C2P_failed") if(clean_divergence.ne.0) then @@ -152,7 +152,7 @@ subroutine GRHydro_BoundariesM(CCTK_ARGUMENTS) ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & "GRHydro::scon", "Flat") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & - "GRHydro::w_lorentz", "Flat") + "HydroBase::w_lorentz", "Flat") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & "HydroBase::rho", "Flat") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & @@ -192,7 +192,7 @@ subroutine GRHydro_BoundariesM(CCTK_ARGUMENTS) ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & "GRHydro::scon", "None") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & - "GRHydro::w_lorentz", "None") + "HydroBase::w_lorentz", "None") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & "HydroBase::rho", "None") ierr = Boundary_SelectGroupForBC(cctkGH, faces, GRHydro_stencil, -ione, & 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 diff --git a/src/GRHydro_Prim2Con.F90 b/src/GRHydro_Prim2Con.F90 index 24d70ac..9ba604b 100644 --- a/src/GRHydro_Prim2Con.F90 +++ b/src/GRHydro_Prim2Con.F90 @@ -269,7 +269,8 @@ subroutine prim2con_hot(handle, GRHydro_reflevel, ii, jj, kk, & ! This is a way of recovering even on finer refinement levels: ! Use the average temperature at the interface instead of the ! reconstructed specific internal energy. - !OMP CRITICAL +!! !OMP CRITICAL +#if 0 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) @@ -279,7 +280,8 @@ subroutine prim2con_hot(handle, GRHydro_reflevel, ii, jj, kk, & call CCTK_WARN(1,warnline) write(warnline,"(A10,i5)") "reflevel: ", GRHydro_reflevel call CCTK_WARN(1,warnline) - !OMP END CRITICAL +#endif +!!! !OMP END CRITICAL keytemp=1 temp = temp0 call EOS_Omni_press(handle,keytemp,GRHydro_eos_rf_prec,n,& diff --git a/src/GRHydro_RegisterGZ.cc b/src/GRHydro_RegisterGZ.cc index da6f76e..6029145 100644 --- a/src/GRHydro_RegisterGZ.cc +++ b/src/GRHydro_RegisterGZ.cc @@ -39,7 +39,7 @@ extern "C"void GRHydro_register_GZPatchSystem(CCTK_ARGUMENTS) if(clean_divergence) { string var[10] = {"HydroBase::rho", "HydroBase::press", "HydroBase::eps", "HydroBase::vel", - "GRHydro::dens", "GRHydro::tau", "GRHydro::w_lorentz", + "GRHydro::dens", "GRHydro::tau", "HydroBase::w_lorentz", "GRHydro::scon", "HydroBase::Bvec", "GRHydro::psidc"}; for (int i = 0; i < 10; i++) { @@ -58,7 +58,7 @@ extern "C"void GRHydro_register_GZPatchSystem(CCTK_ARGUMENTS) } else { string var[9] = {"HydroBase::rho", "HydroBase::press", "HydroBase::eps", "HydroBase::vel", - "GRHydro::dens", "GRHydro::tau", "GRHydro::w_lorentz", + "GRHydro::dens", "GRHydro::tau", "HydroBase::w_lorentz", "GRHydro::scon", "HydroBase::Bvec"}; for (int i = 0; i < 9; i++) { @@ -78,7 +78,7 @@ extern "C"void GRHydro_register_GZPatchSystem(CCTK_ARGUMENTS) } else { string var[8] = {"HydroBase::rho", "HydroBase::press", "HydroBase::eps", "HydroBase::vel", - "GRHydro::dens", "GRHydro::tau", "GRHydro::w_lorentz", + "GRHydro::dens", "GRHydro::tau", "HydroBase::w_lorentz", "GRHydro::scon"}; for (int i = 0; i < 8; i++) { @@ -110,7 +110,7 @@ extern "C"void GRHydro_register_GZPatchSystem(CCTK_ARGUMENTS) if(clean_divergence) { string var[13] = {"HydroBase::rho", "HydroBase::press", "HydroBase::eps", "HydroBase::vel", - "GRHydro::dens", "GRHydro::tau", "GRHydro::w_lorentz", + "GRHydro::dens", "GRHydro::tau", "HydroBase::w_lorentz", "GRHydro::scon", "HydroBase::Bvec", "GRHydro::psidc", "ADMBase::metric", "ADMBase::curv", "ADMBase::shift"}; for (int i = 0; i < 13; i++) @@ -131,7 +131,7 @@ extern "C"void GRHydro_register_GZPatchSystem(CCTK_ARGUMENTS) } else { string var[12] = {"HydroBase::rho", "HydroBase::press", "HydroBase::eps", "HydroBase::vel", - "GRHydro::dens", "GRHydro::tau", "GRHydro::w_lorentz", + "GRHydro::dens", "GRHydro::tau", "HydroBase::w_lorentz", "GRHydro::scon", "HydroBase::Bvec", "ADMBase::metric", "ADMBase::curv", "ADMBase::shift"}; for (int i = 0; i < 12; i++) @@ -154,7 +154,7 @@ extern "C"void GRHydro_register_GZPatchSystem(CCTK_ARGUMENTS) } else { string var[11] = {"HydroBase::rho", "HydroBase::press", "HydroBase::eps", "HydroBase::vel", - "GRHydro::dens", "GRHydro::tau", "GRHydro::w_lorentz", + "GRHydro::dens", "GRHydro::tau", "HydroBase::w_lorentz", "GRHydro::scon", "ADMBase::metric", "ADMBase::curv", "ADMBase::shift"}; for (int i = 0; i < 11; i++) diff --git a/src/GRHydro_RegisterGZM.cc b/src/GRHydro_RegisterGZM.cc index 99a3667..2e8ab81 100644 --- a/src/GRHydro_RegisterGZM.cc +++ b/src/GRHydro_RegisterGZM.cc @@ -38,7 +38,7 @@ extern "C"void GRHydro_register_GZPatchSystemM(CCTK_ARGUMENTS) if(clean_divergence) { string var[10] = {"HydroBase::rho", "HydroBase::press", "HydroBase::eps", "HydroBase::vel", - "GRHydro::dens", "GRHydro::tau", "GRHydro::w_lorentz", + "GRHydro::dens", "GRHydro::tau", "HydroBase::w_lorentz", "GRHydro::scon", "HydroBase::Bvec", "GRHydro::psidc"}; for (int i = 0; i < 10; i++) { @@ -57,7 +57,7 @@ extern "C"void GRHydro_register_GZPatchSystemM(CCTK_ARGUMENTS) } else { string var[9] = {"HydroBase::rho", "HydroBase::press", "HydroBase::eps", "HydroBase::vel", - "GRHydro::dens", "GRHydro::tau", "GRHydro::w_lorentz", + "GRHydro::dens", "GRHydro::tau", "HydroBase::w_lorentz", "GRHydro::scon", "HydroBase::Bvec"}; for (int i = 0; i < 9; i++) { @@ -89,7 +89,7 @@ extern "C"void GRHydro_register_GZPatchSystemM(CCTK_ARGUMENTS) if(clean_divergence) { string var[13] = {"HydroBase::rho", "HydroBase::press", "HydroBase::eps", "HydroBase::vel", - "GRHydro::dens", "GRHydro::tau", "GRHydro::w_lorentz", + "GRHydro::dens", "GRHydro::tau", "HydroBase::w_lorentz", "GRHydro::scon", "HydroBase::Bvec", "GRHydro::psidc", "ADMBase::metric", "ADMBase::curv", "ADMBase::shift"}; for (int i = 0; i < 13; i++) @@ -110,7 +110,7 @@ extern "C"void GRHydro_register_GZPatchSystemM(CCTK_ARGUMENTS) } else { string var[12] = {"HydroBase::rho", "HydroBase::press", "HydroBase::eps", "HydroBase::vel", - "GRHydro::dens", "GRHydro::tau", "GRHydro::w_lorentz", + "GRHydro::dens", "GRHydro::tau", "HydroBase::w_lorentz", "GRHydro::scon", "HydroBase::Bvec", "ADMBase::metric", "ADMBase::curv", "ADMBase::shift"}; for (int i = 0; i < 12; i++) diff --git a/src/GRHydro_RegisterVars.cc b/src/GRHydro_RegisterVars.cc index 1e35036..3ac815f 100644 --- a/src/GRHydro_RegisterVars.cc +++ b/src/GRHydro_RegisterVars.cc @@ -54,7 +54,7 @@ extern "C"void GRHydro_Register(CCTK_ARGUMENTS) register_constrained("HydroBase::press"); register_constrained("HydroBase::eps"); register_constrained("HydroBase::vel"); - register_constrained("GRHydro::w_lorentz"); + register_constrained("HydroBase::w_lorentz"); if (CCTK_EQUALS(evolution_method, "GRHydro")) { diff --git a/src/GRHydro_RegisterVarsM.cc b/src/GRHydro_RegisterVarsM.cc index efe6c6a..897ee28 100644 --- a/src/GRHydro_RegisterVarsM.cc +++ b/src/GRHydro_RegisterVarsM.cc @@ -54,7 +54,7 @@ extern "C"void GRHydro_RegisterM(CCTK_ARGUMENTS) register_constrained("HydroBase::press"); register_constrained("HydroBase::eps"); register_constrained("HydroBase::vel"); - register_constrained("GRHydro::w_lorentz"); + register_constrained("HydroBase::w_lorentz"); if (CCTK_EQUALS(evolution_method, "GRHydro")) { |