diff options
-rw-r--r-- | param.ccl | 15 | ||||
-rw-r--r-- | src/GRHydro_Con2Prim.F90 | 3 |
2 files changed, 15 insertions, 3 deletions
@@ -288,14 +288,25 @@ boolean GRHydro_c2p_reset_eps_tau_hot_eos "As a last resort, reset tau" STEERABL REAL GRHydro_hot_atmo_temp "Temperature of the hot atmosphere in MeV" STEERABLE=ALWAYS { - 0:* :: "Larger than 0 MeV" + 0.0:* :: "Larger than 0 MeV" } 0.5e0 REAL GRHydro_hot_atmo_Y_e "Y_e of the hot atmosphere" STEERABLE=ALWAYS { - 0:* :: "Larger than 0" + 0.0:* :: "Larger than 0" } 0.5e0 +REAL GRHydro_Y_e_min "minimum allowed Y_e" STEERABLE=ALWAYS +{ + 0.0:* :: "Larger than or equal to zero" +} 0.0 + +REAL GRHydro_Y_e_max "maximum allowed Y_e" STEERABLE=ALWAYS +{ + 1.0:* :: "Larger than or equal to zero; 1 is default" +} 1.0 + + ####################### Other Parameters ############################## #Parameters controlling conservative <-> primitive change. diff --git a/src/GRHydro_Con2Prim.F90 b/src/GRHydro_Con2Prim.F90 index 801db2f..0f8f845 100644 --- a/src/GRHydro_Con2Prim.F90 +++ b/src/GRHydro_Con2Prim.F90 @@ -150,7 +150,8 @@ subroutine Conservative2Primitive(CCTK_ARGUMENTS) endif if(evolve_Y_e.ne.0) then - Y_e(i,j,k) = Y_e_con(i,j,k) / dens(i,j,k) + Y_e(i,j,k) = max(min(Y_e_con(i,j,k) / dens(i,j,k),GRHydro_Y_e_max),& + GRHydro_Y_e_min) endif if ( dens(i,j,k) .le. sqrt(det)*GRHydro_rho_min*(1.d0+GRHydro_atmo_tolerance) ) then |