diff options
author | rhaas <rhaas@c83d129a-5a75-4d5a-9c4d-ed3a5855bf45> | 2011-09-15 16:49:53 +0000 |
---|---|---|
committer | rhaas <rhaas@c83d129a-5a75-4d5a-9c4d-ed3a5855bf45> | 2011-09-15 16:49:53 +0000 |
commit | e0dc2af4862d5ddb874328bd097f7f516231dd8c (patch) | |
tree | d2ee226c88cbe662530d9b847b2a4fe6d72ef32b /src/GRHydro_UpdateMask.F90 | |
parent | 374f96eabf2c562985209711c05b68624cd866e1 (diff) |
add Multipatch support to GRHydro
* not all features of GRHydro are supported yet, in particular only the
HLLE solver supports Mulitpatch yet.
Original commit by Christian Reisswig and Christian Ott
git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinEvolve/GRHydro/trunk@273 c83d129a-5a75-4d5a-9c4d-ed3a5855bf45
Diffstat (limited to 'src/GRHydro_UpdateMask.F90')
-rw-r--r-- | src/GRHydro_UpdateMask.F90 | 76 |
1 files changed, 38 insertions, 38 deletions
diff --git a/src/GRHydro_UpdateMask.F90 b/src/GRHydro_UpdateMask.F90 index d6bf540..0bb092c 100644 --- a/src/GRHydro_UpdateMask.F90 +++ b/src/GRHydro_UpdateMask.F90 @@ -14,15 +14,15 @@ #include "GRHydro_Macros.h" #include "SpaceMask.h" -#define velx(i,j,k) vel(i,j,k,1) -#define vely(i,j,k) vel(i,j,k,2) -#define velz(i,j,k) vel(i,j,k,3) -#define velx_p(i,j,k) vel_p(i,j,k,1) -#define vely_p(i,j,k) vel_p(i,j,k,2) -#define velz_p(i,j,k) vel_p(i,j,k,3) -#define velx_p_p(i,j,k) vel_p_p(i,j,k,1) -#define vely_p_p(i,j,k) vel_p_p(i,j,k,2) -#define velz_p_p(i,j,k) vel_p_p(i,j,k,3) +#define velx(i,j,k) lvel(i,j,k,1) +#define vely(i,j,k) lvel(i,j,k,2) +#define velz(i,j,k) lvel(i,j,k,3) +#define velx_p(i,j,k) lvel_p(i,j,k,1) +#define vely_p(i,j,k) lvel_p(i,j,k,2) +#define velz_p(i,j,k) lvel_p(i,j,k,3) +#define velx_p_p(i,j,k) lvel_p_p(i,j,k,1) +#define vely_p_p(i,j,k) lvel_p_p(i,j,k,2) +#define velz_p_p(i,j,k) lvel_p_p(i,j,k,3) subroutine GRHydroUpdateAtmosphereMask(CCTK_ARGUMENTS) @@ -246,9 +246,9 @@ subroutine GRHydro_AtmosphereReset(CCTK_ARGUMENTS) velx(i,j,k) = 0.0d0 vely(i,j,k) = 0.0d0 velz(i,j,k) = 0.0d0 - det = SPATIAL_DETERMINANT(gxx(i,j,k), gxy(i,j,k), gxz(i,j,k), \ - gyy(i,j,k), gyz(i,j,k), gzz(i,j,k)) - + det = SPATIAL_DETERMINANT(gaa(i,j,k), gab(i,j,k), gac(i,j,k), \ + gbb(i,j,k), gbc(i,j,k), gcc(i,j,k)) + if(evolve_temper.ne.0) then ! ! set the temperature to be relatively low temperature(i,j,k) = grhydro_hot_atmo_temp @@ -259,8 +259,8 @@ subroutine GRHydro_AtmosphereReset(CCTK_ARGUMENTS) press(i,j,k),keyerr,anyerr) call prim2con_hot(GRHydro_eos_handle, GRHydro_reflevel,& - i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),gxx(i,j,k),gxy(i,j,k),& - gxz(i,j,k),gyy(i,j,k),gyz(i,j,k),gzz(i,j,k), & + i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),gaa(i,j,k),gab(i,j,k),& + gac(i,j,k),gbb(i,j,k),gbc(i,j,k),gcc(i,j,k), & det,dens(i,j,k),scon(i,j,k,1), scon(i,j,k,2), scon(i,j,k,3), & tau(i,j,k), rho(i,j,k), velx(i,j,k), vely(i,j,k), & velz(i,j,k), eps(i,j,k), press(i,j,k), w_lorentz(i,j,k),& @@ -268,19 +268,19 @@ subroutine GRHydro_AtmosphereReset(CCTK_ARGUMENTS) y_e_con(i,j,k) = dens(i,j,k) * y_e(i,j,k) else call prim2conpolytype(GRHydro_polytrope_handle, & - gxx(i,j,k), gxy(i,j,k), gxz(i,j,k), & - gyy(i,j,k), gyz(i,j,k), gzz(i,j,k), det, & + gaa(i,j,k), gab(i,j,k), gac(i,j,k), & + gbb(i,j,k), gbc(i,j,k), gcc(i,j,k), det, & dens(i,j,k), scon(i,j,k,1), scon(i,j,k,2), scon(i,j,k,3), & tau(i,j,k), rho(i,j,k), velx(i,j,k), vely(i,j,k), & velz(i,j,k), eps(i,j,k), press(i,j,k), w_lorentz(i,j,k)) if (wk_atmosphere .eq. 0) then - atmosphere_mask(i, j, k) = 0 - SpaceMask_SetStateBitsF90(space_mask, i, j, k, type_bits,\ - not_atmosphere) + atmosphere_mask(i, j, k) = 0 + SpaceMask_SetStateBitsF90(space_mask, i, j, k, type_bits,\ + not_atmosphere) end if endif - end if + end if end do end do @@ -330,8 +330,8 @@ subroutine GRHydro_InitialAtmosphereReset(CCTK_ARGUMENTS) if (rho(i,j,k) .le. rho_min) then rho(i,j,k) = rho_min - det = SPATIAL_DETERMINANT(gxx(i,j,k), gxy(i,j,k), gxz(i,j,k), \ - gyy(i,j,k), gyz(i,j,k), gzz(i,j,k)) + det = SPATIAL_DETERMINANT(gaa(i,j,k), gab(i,j,k), gac(i,j,k), \ + gbb(i,j,k), gbc(i,j,k), gcc(i,j,k)) velx(i,j,k) = 0.0d0 vely(i,j,k) = 0.0d0 @@ -347,8 +347,8 @@ subroutine GRHydro_InitialAtmosphereReset(CCTK_ARGUMENTS) press(i,j,k),keyerr,anyerr) call prim2con_hot(GRHydro_eos_handle, GRHydro_reflevel,& - i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),gxx(i,j,k),gxy(i,j,k),& - gxz(i,j,k),gyy(i,j,k),gyz(i,j,k),gzz(i,j,k), & + i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),gaa(i,j,k),gab(i,j,k),& + gac(i,j,k),gbb(i,j,k),gbc(i,j,k),gcc(i,j,k), & det,dens(i,j,k),scon(i,j,k,1), scon(i,j,k,2), scon(i,j,k,3), & tau(i,j,k), rho(i,j,k), velx(i,j,k), vely(i,j,k), & velz(i,j,k), eps(i,j,k), press(i,j,k), w_lorentz(i,j,k),& @@ -360,8 +360,8 @@ subroutine GRHydro_InitialAtmosphereReset(CCTK_ARGUMENTS) call EOS_Omni_EpsFromPress(GRHydro_polytrope_handle,keytemp,GRHydro_eos_rf_prec,n,& rho(i,j,k),xeps,xtemp,xye,press(i,j,k),eps(i,j,k),keyerr,anyerr) call prim2conpolytype(eos_handle, & - gxx(i,j,k), gxy(i,j,k), gxz(i,j,k), & - gyy(i,j,k), gyz(i,j,k), gzz(i,j,k), det, & + gaa(i,j,k), gab(i,j,k), gac(i,j,k), & + gbb(i,j,k), gbc(i,j,k), gcc(i,j,k), det, & dens(i,j,k), scon(i,j,k,1), scon(i,j,k,2), scon(i,j,k,3), & tau(i,j,k), rho(i,j,k), velx(i,j,k), vely(i,j,k), & velz(i,j,k), eps(i,j,k), press(i,j,k), w_lorentz(i,j,k)) @@ -374,8 +374,8 @@ subroutine GRHydro_InitialAtmosphereReset(CCTK_ARGUMENTS) vely_p(i,j,k) = 0.0d0 velz_p(i,j,k) = 0.0d0 - det = SPATIAL_DETERMINANT(gxx_p(i,j,k), gxy_p(i,j,k), gxz_p(i,j,k), \ - gyy_p(i,j,k), gyz_p(i,j,k), gzz_p(i,j,k)) + det = SPATIAL_DETERMINANT(gaa_p(i,j,k), gab_p(i,j,k), gac_p(i,j,k), \ + gbb_p(i,j,k), gbc_p(i,j,k), gcc_p(i,j,k)) if(evolve_temper.ne.0) then ! set the temperature to be relatively low @@ -387,8 +387,8 @@ subroutine GRHydro_InitialAtmosphereReset(CCTK_ARGUMENTS) press_p(i,j,k),keyerr,anyerr) call prim2con_hot(GRHydro_eos_handle, GRHydro_reflevel,& - i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),gxx_p(i,j,k),gxy_p(i,j,k),& - gxz_p(i,j,k),gyy_p(i,j,k),gyz_p(i,j,k),gzz_p(i,j,k), & + i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),gaa_p(i,j,k),gab_p(i,j,k),& + gac_p(i,j,k),gbb_p(i,j,k),gbc_p(i,j,k),gcc_p(i,j,k), & det,dens_p(i,j,k),scon_p(i,j,k,1), scon_p(i,j,k,2), scon_p(i,j,k,3), & tau_p(i,j,k), rho_p(i,j,k), velx_p(i,j,k), vely_p(i,j,k), & velz_p(i,j,k), eps_p(i,j,k), press_p(i,j,k), w_lorentz_p(i,j,k),& @@ -400,8 +400,8 @@ subroutine GRHydro_InitialAtmosphereReset(CCTK_ARGUMENTS) call EOS_Omni_EpsFromPress(GRHydro_polytrope_handle,keytemp,GRHydro_eos_rf_prec,n,& rho_p(i,j,k),xeps,xtemp,xye,press_p(i,j,k),eps_p(i,j,k),keyerr,anyerr) call prim2conpolytype(eos_handle, & - gxx_p(i,j,k), gxy_p(i,j,k), gxz_p(i,j,k), & - gyy_p(i,j,k), gyz_p(i,j,k), gzz_p(i,j,k), det, & + gaa_p(i,j,k), gab_p(i,j,k), gac_p(i,j,k), & + gbb_p(i,j,k), gbc_p(i,j,k), gcc_p(i,j,k), det, & dens_p(i,j,k), scon_p(i,j,k,1), scon_p(i,j,k,2), scon_p(i,j,k,3), & tau_p(i,j,k), rho_p(i,j,k), velx_p(i,j,k), vely_p(i,j,k), & velz_p(i,j,k), eps_p(i,j,k), press_p(i,j,k), w_lorentz_p(i,j,k)) @@ -415,8 +415,8 @@ subroutine GRHydro_InitialAtmosphereReset(CCTK_ARGUMENTS) velx_p_p(i,j,k) = 0.0d0 vely_p_p(i,j,k) = 0.0d0 velz_p_p(i,j,k) = 0.0d0 - det = SPATIAL_DETERMINANT(gxx_p_p(i,j,k), gxy_p_p(i,j,k), gxz_p_p(i,j,k), \ - gyy_p_p(i,j,k), gyz_p_p(i,j,k), gzz_p_p(i,j,k)) + det = SPATIAL_DETERMINANT(gaa_p_p(i,j,k), gab_p_p(i,j,k), gac_p_p(i,j,k), \ + gbb_p_p(i,j,k), gbc_p_p(i,j,k), gcc_p_p(i,j,k)) if(evolve_temper.ne.0) then ! set the temperature to be relatively low @@ -427,8 +427,8 @@ subroutine GRHydro_InitialAtmosphereReset(CCTK_ARGUMENTS) rho_p_p(i,j,k),eps_p_p(i,j,k),temperature_p_p(i,j,k),y_e_p_p(i,j,k),& press_p_p(i,j,k),keyerr,anyerr) call prim2con_hot(GRHydro_eos_handle, GRHydro_reflevel,& - i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),gxx_p_p(i,j,k),gxy_p_p(i,j,k),& - gxz_p_p(i,j,k),gyy_p_p(i,j,k),gyz_p_p(i,j,k),gzz_p_p(i,j,k), & + i,j,k,x(i,j,k),y(i,j,k),z(i,j,k),gaa_p_p(i,j,k),gab_p_p(i,j,k),& + gac_p_p(i,j,k),gbb_p_p(i,j,k),gbc_p_p(i,j,k),gcc_p_p(i,j,k), & det,dens_p_p(i,j,k),scon_p_p(i,j,k,1), scon_p_p(i,j,k,2), scon_p_p(i,j,k,3), & tau_p_p(i,j,k), rho_p_p(i,j,k), velx_p_p(i,j,k), vely_p_p(i,j,k), & velz_p_p(i,j,k), eps_p_p(i,j,k), press_p_p(i,j,k), w_lorentz_p_p(i,j,k),& @@ -440,8 +440,8 @@ subroutine GRHydro_InitialAtmosphereReset(CCTK_ARGUMENTS) call EOS_Omni_EpsFromPress(GRHydro_polytrope_handle,keytemp,GRHydro_eos_rf_prec,n,& rho_p_p(i,j,k),xeps,xtemp,xye,press_p_p(i,j,k),eps_p_p(i,j,k),keyerr,anyerr) call prim2conpolytype(eos_handle, & - gxx_p_p(i,j,k), gxy_p_p(i,j,k), gxz_p_p(i,j,k), & - gyy_p_p(i,j,k), gyz_p_p(i,j,k), gzz_p_p(i,j,k), det, & + gaa_p_p(i,j,k), gab_p_p(i,j,k), gac_p_p(i,j,k), & + gbb_p_p(i,j,k), gbc_p_p(i,j,k), gcc_p_p(i,j,k), det, & dens_p_p(i,j,k), scon_p_p(i,j,k,1), scon_p_p(i,j,k,2), scon_p_p(i,j,k,3), & tau_p_p(i,j,k), rho_p_p(i,j,k), velx_p_p(i,j,k), vely_p_p(i,j,k), & velz_p_p(i,j,k), eps_p_p(i,j,k), press_p_p(i,j,k), w_lorentz_p_p(i,j,k)) |