aboutsummaryrefslogtreecommitdiff
path: root/schedule.ccl
diff options
context:
space:
mode:
Diffstat (limited to 'schedule.ccl')
-rw-r--r--schedule.ccl414
1 files changed, 223 insertions, 191 deletions
diff --git a/schedule.ccl b/schedule.ccl
index e6b3fd4..b3bff78 100644
--- a/schedule.ccl
+++ b/schedule.ccl
@@ -3,41 +3,36 @@
if (CCTK_Equals(mode,"analysis"))
{
- STORAGE: level_set[1]
+ STORAGE: f[1]
}
else
{
- STORAGE: level_set[2]
- STORAGE: slevel_set
- STORAGE: dlevel_set
- STORAGE: eh_mask_all
- STORAGE: rep_mask
- STORAGE: ftmp_set
- STORAGE: level_bak
- STORAGE: mask_bak
+ STORAGE: f[2]
+ STORAGE: sf
+ STORAGE: ftmp
+ STORAGE: eh_mask
STORAGE: surface_arrays
- STORAGE: center_arrays
-# STORAGE: eh_area, eh_centroid
- STORAGE: eh_area2, eh_centroid2, eh_circumference2
+ STORAGE: eh_area2, eh_centroid2_x, eh_centroid2_y, eh_centroid2_x
+ STORAGE: eh_circ_eq2, eh_circ_pol2
STORAGE: find_surface_status
-# STORAGE: surface_index
+ STORAGE: levelset_integers
+ STORAGE: center_arrays
if ( evolve_generators )
{
- STORAGE: generators[2]
- STORAGE: generators_rhs
- STORAGE: generators_arrays
+ STORAGE: xg[2], yg[2], zg[2]
+ STORAGE: dxg, dyg, dzg
}
}
-if (CCTK_Equals(generator_tracking_method,"interpolate_after"))
-{
- STORAGE: generator_gf
-}
+#if (CCTK_Equals(generator_tracking_method,"interpolate_after"))
+#{
+# STORAGE: generator_gf
+#}
# Check for metric_state
-if (!CCTK_EQUALS(mode,"analysis"))
-{
+#if (!CCTK_EQUALS(mode,"analysis"))
+#{
schedule EHFinder_ParamCheck at CCTK_PARAMCHECK
{
@@ -90,141 +85,163 @@ if (use_mask)
schedule EHFinder_Init at CCTK_INITIAL
{
LANG: Fortran
- SYNC: level_set
+ SYNC: f
} "Setup local variables"
schedule EHFinder_Init_F at CCTK_INITIAL
{
LANG: Fortran
- SYNC: level_set
+ SYNC: f
} "Setup the initial surface"
schedule EHFinder_InitWeights at CCTK_INITIAL
{
- LANG: FORTRAN
+ LANG: Fortran
} "Setup weights for Simpson integration"
schedule EHFinder_Init at CCTK_POST_RECOVER_VARIABLES
{
LANG: Fortran
- SYNC: level_set
+ SYNC: f
} "Setup local variables"
schedule EHFinder_InitWeights at CCTK_POST_RECOVER_VARIABLES
{
- LANG: FORTRAN
+ LANG: Fortran
} "Setup weights for Simpson integration"
-schedule GROUP EHFinder_Surfaces at CCTK_ANALYSIS
+schedule GROUP EHFinder_Level_Sets at CCTK_ANALYSIS
+{
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
+} "Loop over the level set functions"
+
+schedule EHFinder_LevelSetLoopInit in EHFinder_Level_Sets
+{
+ LANG: Fortran
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
+} "Initialise the loop counter over the level set functions"
+
+schedule GROUP EHFinder_Surfaces in EHFinder_Level_Sets while ehfinder::more_levelsets
{
STORAGE: surface_integers
STORAGE: surface_reals
STORAGE: surface_index
-# STORAGE: eh_area2, eh_centroid2
- TRIGGERS: eh_area, eh_centroid, eh_circumference
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
} "Count the number of surfaces and integrate over them"
schedule EHFinder_CountSurfacesInit in EHFinder_Surfaces
{
LANG: Fortran
- TRIGGERS: eh_area, eh_centroid, eh_circumference
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
} "Initialise while loop control"
schedule GROUP EHFinder_CountMarkSurfaces in EHFinder_Surfaces after EHFinder_CountSurfacesInit WHILE ehfinder::more_surfaces
{
- TRIGGERS: eh_area, eh_centroid, eh_circumference
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
} "Counting and mark surfaces"
schedule EHFinder_CountSurfaces in EHFinder_CountMarkSurfaces
{
LANG: Fortran
- TRIGGERS: eh_area, eh_centroid, eh_circumference
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
SYNC: surface_index
} "Check if there are more surfaces"
schedule EHFinder_MarkSurfaces in EHFinder_CountMarkSurfaces after EHFinder_CountSurfaces WHILE ehfinder::more_points
{
LANG: Fortran
- TRIGGERS: eh_area, eh_centroid, eh_circumference
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
SYNC: surface_index
} "Mark points inside the current surface"
schedule EHFinder_InfoSurfaces in EHFinder_Surfaces after EHFinder_CountMarkSurfaces
{
LANG: Fortran
- TRIGGERS: eh_area, eh_centroid, eh_circumference
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
} "Output info about found surfaces"
schedule group EHFinder_Integration in EHFinder_Surfaces after EHFinder_InfoSurfaces while ehfinder::integrate_counter
{
- TRIGGERS: eh_area, eh_centroid, eh_circumference
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
} "Find and integrate over surfaces"
schedule EHFinder_FindSurface in EHFinder_Integration
{
LANG: Fortran
STORAGE: surface_tmp_arrays, surface_int_array
- TRIGGERS: eh_area, eh_centroid, eh_circumference
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
+ SYNC: surface_arrays
} "Find Surface"
schedule EHFinder_FindSurfaceElement in EHFinder_Integration after EHFinder_FindSurface
{
LANG: Fortran
STORAGE: surface_tmp_arrays, interp_metric_arrays
- TRIGGERS: eh_area, eh_centroid, eh_circumference
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
} "Find Surface Area Element"
schedule EHFinder_IntegrateArea in EHFinder_Integration after EHFinder_FindSurfaceElement
{
LANG: Fortran
STORAGE: integrate_tmp_array
- TRIGGERS: eh_area, eh_centroid, eh_circumference
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
} "Calculate area integrals"
schedule EHFinder_IntegrateCentroid in EHFinder_Integration after EHFinder_IntegrateArea
{
LANG: Fortran
STORAGE: surface_tmp_arrays, integrate_tmp_array
- TRIGGERS: eh_centroid
+ TRIGGERS: eh_centroid_x, eh_centroid_y, eh_centroid_z
} "Calculate centroid integrals"
schedule EHFinder_IntegrateEquatorial in EHFinder_Integration after EHFinder_IntegrateArea
{
LANG: Fortran
STORAGE: surface_tmp_arrays, integrate_tmp_array
- TRIGGERS: eh_circumference
+ TRIGGERS: eh_circ_eq, eh_circ_pol
} "Calculate circumferences"
-schedule EHFinder_CopyArea at CCTK_ANALYSIS after EHFinder_Surfaces
+schedule EHFinder_UpdateCounter in EHFinder_Surfaces
+{
+ LANG: Fortran
+ TRIGGERS: eh_area, eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_circ_eq, eh_circ_pol
+} "Update the loop variables"
+
+schedule EHFinder_CopyArea at CCTK_ANALYSIS after EHFinder_Level_Sets
{
LANG: Fortran
STORAGE: eh_area
TRIGGERS: eh_area
} "Copy areas to output variable"
-schedule EHFinder_CopyCentroid at CCTK_ANALYSIS after EHFinder_Surfaces
+schedule EHFinder_CopyCentroid at CCTK_ANALYSIS after EHFinder_Level_Sets
{
LANG: Fortran
- STORAGE: eh_centroid
- TRIGGERS: eh_centroid
+ STORAGE: eh_centroid_x, eh_centroid_y, eh_centroid_z
+ TRIGGERS: eh_centroid_x, eh_centroid_y, eh_centroid_z
} "Copy centroids to output variable"
-schedule EHFinder_CopyCircumference at CCTK_ANALYSIS after EHFinder_Surfaces
+schedule EHFinder_CopyCircumference at CCTK_ANALYSIS after EHFinder_Level_Sets
{
LANG: Fortran
- STORAGE: eh_circumference
- TRIGGERS: eh_circumference
+ STORAGE: eh_circ_eq, eh_circ_pol
+ TRIGGERS: eh_circ_eq, eh_circ_pol
} "Copy circumferences to output variable"
-#schedule EHFinder_Integrate at CCTK_ANALYSIS
-#schedule EHFinder_Integrate at CCTK_ANALYSIS
-#{
-# LANG: Fortran
-# STORAGE: eh_area
-# TRIGGERS: eh_area
-#} "Calculate integrals"
-
# Read in the data used in reconstructing the 4-metric if necessary
if (CCTK_Equals(eh_metric_type,"numerical"))
@@ -288,7 +305,7 @@ schedule EHFinder_SetSym at CCTK_BASEGRID
} "Register the symmetries for the level set function"
-# Set the initial eh_mask to at the physical outer boundaries.
+# Set the initial eh_mask at the physical outer boundaries.
schedule EHFinder_MaskInit at CCTK_POSTINITIAL after EHFinder_Init
{
@@ -306,6 +323,9 @@ if (CCTK_Equals(mode,"normal"))
schedule EHFinder_Sources in MoL_CalcRHS
{
LANG: Fortran
+ STORAGE: dfx
+ STORAGE: dfy
+ STORAGE: dfz
} "Calculate the source terms"
if ( evolve_generators)
@@ -315,6 +335,7 @@ if (CCTK_Equals(mode,"normal"))
schedule EHFinder_Generator_Sources in MoL_CalcRHS
{
LANG: Fortran
+ STORAGE: generator_arrays
} "Calculate the source terms for the generator evolution"
}
if (CCTK_Equals(generator_tracking_method,"interpolate_after"))
@@ -322,6 +343,7 @@ if (CCTK_Equals(mode,"normal"))
schedule EHFinder_Generator_Sources2 in MoL_CalcRHS after EHFinder_Sources
{
LANG: Fortran
+ STORAGE: generator_arrays
} "Calculate the source terms for the generator evolution"
}
}
@@ -334,150 +356,160 @@ if (CCTK_Equals(mode,"normal"))
schedule EHFinder_ApplySymF in EHFinder_PostStep
{
LANG: Fortran
- SYNC: level_set
+ SYNC: f
} "Apply symmetry boundaries"
- # Set up the schedule group for re-parametrization
-
- schedule GROUP EHFinder_ReParametrize at CCTK_POSTSTEP
- {
- } "Re-parametrize the level set function"
+# Set up the schedule group for re-parametrization
- if (CCTK_Equals(re_param_method,"pde") || CCTK_Equals(re_param_method,"approx") || CCTK_Equals(re_param_method,"mixed"))
- {
- # Schedule the control routine, that initialises re_param_control_approx
- # and re_param_control_pde if it is time for re-parametrization
+schedule GROUP EHFinder_ReParametrize at CCTK_POSTSTEP
+{
+ STORAGE: sftmp
+ STORAGE: fbak
+ STORAGE: eh_mask_bak
+ STORAGE: re_param_control_pde
+} "Re-parametrize the level set function"
- schedule EHFinder_ReParametrizeControl in EHFinder_ReParametrize
- {
- LANG: Fortran
- } "Initializes the re-parametrization control"
- }
+if (CCTK_Equals(re_param_method,"pde") || CCTK_Equals(re_param_method,"approx") || CCTK_Equals(re_param_method,"mixed"))
+{
+ # Schedule the control routine, that initialises re_param_control_approx
+ # and re_param_control_pde if it is time for re-parametrization
- if (CCTK_Equals(re_param_method,"pde") || CCTK_Equals(re_param_method,"mixed"))
+ schedule EHFinder_ReParametrizeControl in EHFinder_ReParametrize
{
- if (CCTK_Equals(re_param_int_method,"euler"))
- {
-
- # Set up the schedule group for euler re-parametrization using
- # re_param_control_pde to control the exit from the while loop.
-
- schedule GROUP Euler_ReParametrize in EHFinder_ReParametrize AFTER EHFinder_ReParametrizeControl WHILE ehfinder::re_param_control_pde
- {
- } "Schedule group for Euler re-parametrization"
-
- # Schedule the routine that does one Euler step
-
- schedule EHFinder_ReParametrizeEuler in Euler_ReParametrize
- {
- LANG: Fortran
-# SYNC: level_set
- } "Euler scheme"
+ LANG: Fortran
+ } "Initializes the re-parametrization control"
+}
- # Then synchronize the level set and apply symmetry boundary conditions.
-
- schedule EHFinder_ApplySymF in Euler_ReParametrize after EHFinder_ReParametrizeEuler
- {
- LANG: Fortran
- SYNC: level_set
- } "Apply symmetry boundaries and sync"
+if (CCTK_Equals(re_param_method,"pde") || CCTK_Equals(re_param_method,"mixed"))
+{
+ if (CCTK_Equals(re_param_int_method,"euler"))
+ {
- schedule EHFinder_ReParametrize_Check in EHFinder_ReParametrize AFTER Euler_ReParametrize
- {
- LANG: Fortran
- } "Check to see if re-parametrization has to be undone"
- }
+ # Set up the schedule group for euler re-parametrization using
+ # re_param_control_pde to control the exit from the while loop.
- if (CCTK_Equals(re_param_int_method,"rk2"))
+ schedule GROUP Euler_ReParametrize in EHFinder_ReParametrize AFTER EHFinder_ReParametrizeControl WHILE ehfinder::re_param_control_pde
{
+ } "Schedule group for Euler re-parametrization"
- # Set up the schedule group for rk2 re-parametrization using
- # re_param_control_pde to control the exit from the while loop.
-
- schedule GROUP RK2_ReParametrize in EHFinder_ReParametrize AFTER EHFinder_ReParametrize1 WHILE ehfinder::re_param_control_pde
- {
- } "Schedule group for RK2 re-parametrization"
-
- # Schedule the routine that does the first RK2 step
-
- schedule EHFinder_ReParametrizeRK2_1 in RK2_ReParametrize
- {
- LANG: Fortran
- } "Euler scheme"
-
- # Then synchronize the level set and apply symmetry boundary conditions.
-
- schedule EHFinder_ApplySymF AS Sym_RK2_1 in RK2_ReParametrize after EHFinder_ReParametrizeRK2_1
- {
- LANG: Fortran
- SYNC: level_set
- } "Apply symmetry boundaries and sync"
-
- # Schedule the routine that does the second RK2 step
+ # Schedule the routine that does one Euler step
- schedule EHFinder_ReParametrizeRK2_2 in RK2_ReParametrize after Sym_RK2_1
- {
- LANG: Fortran
- } "Euler scheme"
+ schedule EHFinder_ReParametrizeEuler in Euler_ReParametrize
+ {
+ LANG: Fortran
+ STORAGE: dfx
+ STORAGE: dfy
+ STORAGE: dfz
+ STORAGE: dfsq
+ SYNC: f
+ } "Euler scheme"
+
+ # Then synchronize the level set and apply symmetry boundary conditions.
+
+ schedule EHFinder_ApplySymF in Euler_ReParametrize after EHFinder_ReParametrizeEuler
+ {
+ LANG: Fortran
+ SYNC: f
+ } "Apply symmetry boundaries and sync"
- # Then synchronize the level set and apply symmetry boundary conditions.
-
- schedule EHFinder_ApplySymF AS Sym_RK2_2 in RK2_ReParametrize after EHFinder_ReParametrizeRK2_2
- {
- LANG: Fortran
- SYNC: level_set
- } "Apply symmetry boundaries and sync"
- }
+ schedule EHFinder_ReParametrize_Check in EHFinder_ReParametrize AFTER Euler_ReParametrize
+ {
+ LANG: Fortran
+ } "Check to see if re-parametrization has to be undone"
}
+#
+# if (CCTK_Equals(re_param_int_method,"rk2"))
+# {
+#
+# # Set up the schedule group for rk2 re-parametrization using
+# # re_param_control_pde to control the exit from the while loop.
+#
+# schedule GROUP RK2_ReParametrize in EHFinder_ReParametrize AFTER EHFinder_ReParametrize1 WHILE ehfinder::re_param_control_pde
+# {
+# } "Schedule group for RK2 re-parametrization"
+#
+# # Schedule the routine that does the first RK2 step
+#
+# schedule EHFinder_ReParametrizeRK2_1 in RK2_ReParametrize
+# {
+# LANG: Fortran
+# } "RK2 scheme step 1"
+#
+# # Then synchronize the level set and apply symmetry boundary conditions.
+#
+# schedule EHFinder_ApplySymF AS Sym_RK2_1 in RK2_ReParametrize after EHFinder_ReParametrizeRK2_1
+# {
+# LANG: Fortran
+# SYNC: f
+# } "Apply symmetry boundaries and sync"
+#
+# # Schedule the routine that does the second RK2 step
+#
+# schedule EHFinder_ReParametrizeRK2_2 in RK2_ReParametrize after Sym_RK2_1
+# {
+# LANG: Fortran
+# } "RK2 scheme step 2"
+#
+# # Then synchronize the level set and apply symmetry boundary conditions.
+#
+# schedule EHFinder_ApplySymF AS Sym_RK2_2 in RK2_ReParametrize after EHFinder_ReParametrizeRK2_2
+# {
+# LANG: Fortran
+# SYNC: f
+# } "Apply symmetry boundaries and sync"
+# }
+# }
- if (CCTK_Equals(re_param_method,"approx") || CCTK_Equals(re_param_method,"mixed"))
- {
+# if (CCTK_Equals(re_param_method,"approx") || CCTK_Equals(re_param_method,"mixed"))
+# {
- # Schedule a routine to update the points closest to the zero-level surface.
+# # Schedule a routine to update the points closest to the zero-level surface.
- schedule EHFinder_ReParametrize5 in EHFinder_ReParametrize after EHFinder_ReParametrizeControl
- {
- LANG: Fortran
- } "Update the points closest to the surface"
+# schedule EHFinder_ReParametrize5 in EHFinder_ReParametrize after EHFinder_ReParametrizeControl
+# {
+# LANG: Fortran
+# } "Update the points closest to the surface"
- schedule EHFinder_ApplySymFRep in EHFinder_ReParametrize after EHFinder_ReParametrize5
- {
- LANG: Fortran
- SYNC: level_set
- SYNC: rep_mask
- } "Apply symmetry boundaries and sync"
+# schedule EHFinder_ApplySymFRep in EHFinder_ReParametrize after EHFinder_ReParametrize5
+# {
+# LANG: Fortran
+# SYNC: level_set
+# SYNC: rep_mask
+# } "Apply symmetry boundaries and sync"
- # Set up the schedule group for approx re-parametrization using
- # re_param_control_approx to control the exit from the while loop.
+# # Set up the schedule group for approx re-parametrization using
+# # re_param_control_approx to control the exit from the while loop.
- schedule GROUP Approx_ReParametrize in EHFinder_ReParametrize AFTER EHFinder_ReParametrizeControl WHILE ehfinder::re_param_control_approx
- {
- } "Schedule group for Approximate re-parametrization"
+# schedule GROUP Approx_ReParametrize in EHFinder_ReParametrize AFTER EHFinder_ReParametrizeControl WHILE ehfinder::re_param_control_approx
+# {
+# } "Schedule group for Approximate re-parametrization"
- schedule EHFinder_ReParametrize6 in Approx_ReParametrize
- {
- LANG: Fortran
- } "Update cells with neighbours that have already been updated"
+# schedule EHFinder_ReParametrize6 in Approx_ReParametrize
+# {
+# LANG: Fortran
+# } "Update cells with neighbours that have already been updated"
- schedule EHFinder_ReParametrize7 in Approx_ReParametrize after ReParametrize6
- {
- LANG: Fortran
- } "Update rep_mask"
+# schedule EHFinder_ReParametrize7 in Approx_ReParametrize after ReParametrize6
+# {
+# LANG: Fortran
+# } "Update rep_mask"
- schedule EHFinder_ApplySymFRep in Approx_ReParametrize after EHFinder_ReParametrize7
- {
- LANG: Fortran
- SYNC: level_set
- SYNC: rep_mask
- } "Apply symmetry boundaries and sync"
- }
+# schedule EHFinder_ApplySymFRep in Approx_ReParametrize after EHFinder_ReParametrize7
+# {
+# LANG: Fortran
+# SYNC: level_set
+# SYNC: rep_mask
+# } "Apply symmetry boundaries and sync"
+
+}
# Schedule modifications of the mask in group EHFinder_SetMask
schedule GROUP EHFinder_SetMask at CCTK_POSTSTEP after EHFinder_ReParametrize
{
+ STORAGE: tm_mask
} "Set the mask"
# First schedule the routine that adds or removes cells from the mask
@@ -485,8 +517,8 @@ if (CCTK_Equals(mode,"normal"))
schedule EHFinder_SetMask1 in EHFinder_SetMask
{
LANG: Fortran
- SYNC: level_set
- SYNC: eh_mask_all
+ SYNC: f
+ SYNC: eh_mask, tm_mask
} "Start modifying the mask"
# Then apply the symmetry boundary conditions.
@@ -502,7 +534,7 @@ if (CCTK_Equals(mode,"normal"))
schedule EHFinder_SetMask2 in EHFinder_SetMask after EHFinder_ApplySymAll
{
LANG: Fortran
- SYNC: eh_mask_all
+ SYNC: eh_mask, tm_mask
} "Find excision boundaries"
schedule EHFinder_ApplySymMask as ASM1 in EHFinder_SetMask after EHFinder_SetMask2
@@ -513,7 +545,7 @@ if (CCTK_Equals(mode,"normal"))
schedule EHFinder_SetMask3 in EHFinder_SetMask after EHFinder_ASM1
{
LANG: Fortran
- SYNC: eh_mask_all
+ SYNC: eh_mask, tm_mask
} "Check to see if the mask needs to be modified"
schedule EHFinder_ApplySymMask as ASM2 in EHFinder_SetMask after EHFinder_SetMask3
@@ -524,7 +556,7 @@ if (CCTK_Equals(mode,"normal"))
schedule EHFinder_SetMask2 as SM2 in EHFinder_SetMask after ASM2
{
LANG: Fortran
- SYNC: eh_mask_all
+ SYNC: eh_mask, tm_mask
} "Find excision boundaries"
schedule EHFinder_ApplySymMask as ASM3 in EHFinder_SetMask after SM2
@@ -534,27 +566,27 @@ if (CCTK_Equals(mode,"normal"))
}
- if ( evolve_generators)
+if ( evolve_generators)
+{
+ if (CCTK_Equals(generator_tracking_method,"interpolate_before"))
{
- if (CCTK_Equals(generator_tracking_method,"interpolate_before"))
+ schedule EHFinder_Generator_Sources as EGS in MoL_CalcRHS
{
- schedule EHFinder_Generator_Sources as EGS in MoL_CalcRHS
- {
- LANG: Fortran
- } "Calculate the source terms for the generator evolution"
- }
- if (CCTK_Equals(generator_tracking_method,"interpolate_after"))
+ LANG: Fortran
+ STORAGE: generator_arrays
+ } "Calculate the source terms for the generator evolution"
+ }
+ if (CCTK_Equals(generator_tracking_method,"interpolate_after"))
+ {
+ schedule EHFinder_Generator_Sources2 as EGS2 in MoL_CalcRHS
{
- schedule EHFinder_Generator_Sources2 as EGS2 in MoL_CalcRHS after EHFinder_Sources
- {
- LANG: Fortran
- } "Calculate the source terms for the generator evolution"
- }
+ LANG: Fortran
+ STORAGE: generator_arrays
+ } "Calculate the source terms for the generator evolution"
}
-
-
}
+
#schedule EHFinder_ApplySym at CCTK_POSTINITIAL after EHFinder_MaskInit
#{
# LANG: Fortran