[Commits] [svn:einsteintoolkit] GRHydro/trunk/ (Rev. 383)
rhaas at tapir.caltech.edu
rhaas at tapir.caltech.edu
Thu Jul 5 00:36:46 CDT 2012
User: rhaas
Date: 2012/07/05 12:36 AM
Modified:
/trunk/
schedule.ccl
/trunk/src/
GRHydro_UpdateMask.F90
Log:
GRHydro: copy integer atmosphere mask in Post_Recover_Variables
this is required since the real valued atmosphere mask is not
checkpointed. It is valid since atmosphere_mask_real is non-zero
wherever atmosphere_mask is non-zero due to GRHydroUpdateAtmosphereMask
and atmosphere_mask is non-zero wherever atmosphere_mask_real is
non-zero because of GRHydroPostSyncAtmosphereMask, ie. the two masks are
non-zero/zero at the same points.
File Changes:
Directory: /trunk/src/
======================
File [modified]: GRHydro_UpdateMask.F90
Delta lines: +40 -0
===================================================================
--- trunk/src/GRHydro_UpdateMask.F90 2012-07-05 05:36:43 UTC (rev 382)
+++ trunk/src/GRHydro_UpdateMask.F90 2012-07-05 05:36:45 UTC (rev 383)
@@ -109,6 +109,45 @@
/*@@
+ @routine GRHydroCopyIntegerMask
+ @date Wed Jul 4 15:40:16 PDT 2012
+ @author Roland Haas
+ @desc
+ Initializes real valued mask with integer valued one.
+ @enddesc
+ @calls
+ @calledby
+ @history
+
+ @endhistory
+
+@@*/
+
+subroutine GRHydroCopyIntegerMask(CCTK_ARGUMENTS)
+
+ implicit none
+
+ DECLARE_CCTK_ARGUMENTS
+ DECLARE_CCTK_PARAMETERS
+
+ CCTK_INT :: i,j,k
+
+!! This sets the real atmo mask based on the integer-valued atmo mask
+
+ !$OMP PARALLEL DO PRIVATE(k,j,i)
+ do k = 1, cctk_lsh(3)
+ do j = 1, cctk_lsh(2)
+ do i = 1, cctk_lsh(1)
+ atmosphere_mask_real(i,j,k) = atmosphere_mask(i,j,k)
+ end do
+ end do
+ end do
+ !$OMP END PARALLEL DO
+
+end subroutine GRHydroCopyIntegerMask
+
+
+ /*@@
@routine GRHydro_SetupMask
@date Thu Jun 20 13:27:28 2002
@author Ian Hawke
@@ -181,6 +220,7 @@
do i = 1, cctk_lsh(1)
if (rho(i,j,k) .le. GRHydro_rho_min) then
atmosphere_mask(i,j,k) = 1
+ atmosphere_mask_real(i,j,k) = 1
end if
end do
end do
Directory: /trunk/
==================
File [modified]: schedule.ccl
Delta lines: +7 -0
===================================================================
--- trunk/schedule.ccl 2012-07-05 05:36:43 UTC (rev 382)
+++ trunk/schedule.ccl 2012-07-05 05:36:45 UTC (rev 383)
@@ -485,6 +485,13 @@
LANG: Fortran
} "Initialize the atmosphere mask"
+# alternatively drop support for wk_atmosphere and schedule GRHydro_SetupMask
+# only in CCTK_BaseGrid
+schedule GRHydroCopyIntegerMask AT CCTK_POST_RECOVER_VARIABLES BEFORE HydroBase_PostStep
+{
+ LANG: Fortran
+} "Initialize the real valued atmosphere mask after checkpoint recovery"
+
# If using mesh refinement
schedule GRHydro_SetupMask AT POSTREGRID BEFORE MoL_PostStep AFTER (MaskOne,MaskZero)
{
More information about the Commits
mailing list