# Schedule definitions for thorn HydroBase ####################################################################### ### We leave the storage on all the time for the variables required ### ### by MoL. There is probably a better way of doing this. ### ####################################################################### if (timelevels == 3) { STORAGE:rho[3] STORAGE:press[3] STORAGE:eps[3] STORAGE:vel[3] if (use_Y_e) { STORAGE:Y_e[3] } } else if (timelevels == 2) { STORAGE:rho[2] STORAGE:press[2] STORAGE:eps[2] STORAGE:vel[2] if (use_Y_e) { STORAGE:Y_e[2] } } else if (timelevels == 1) { STORAGE:rho[1] STORAGE:press[1] STORAGE:eps[1] STORAGE:vel[1] if (use_Y_e) { STORAGE:Y_e[1] } } schedule group HydroBase_Initial AT Initial after ADMBase_InitialData after ADMBase_InitialGauge after IOUtil_RecoverIDFromDatafiles before ADMBase_PostInitial before SetTmunu { } "HydroBase initial data group" ############################### ### Register startup banner ### ############################### schedule HydroBase_StartUp AT WRAGH { LANG: C } "Startup banner" schedule group HydroBase_RHS IN MoL_CalcRHS { } "Groups for scheduling tasks for calculating RHS of hydro variables" schedule group HydroBase_PostStep IN MoL_PostStep BEFORE SetTmunu { } "Post step tasks for hydro thorns" schedule group HydroBase_PostStep AT POSTRESTRICTINITIAL { } "Post step tasks for hydro thorns" # Hydro thorns should not schedule something in group HydroBase_Boundaries # (schedule them in HydroBase_Select_Boundaries), but they can refer to it # in order to schedule own routines before or after the boundary # treatment or they can schedule the whole group schedule group HydroBase_Boundaries IN HydroBase_PostStep BEFORE HydroBase_Con2Prim { } "HydroBase-internal Boundary conditions group" # Here codes would have to schedule functions to specify which boundary conditions # should be applied to which variables schedule group HydroBase_Select_Boundaries IN HydroBase_Boundaries { } "Group to schedule the boundary condition functions" # This will then later actually apply all the selected boundary conditions. Thorns # using HydroBase should not need to change something here. schedule group ApplyBCs AS HydroBase_ApplyBCs IN HydroBase_Boundaries AFTER HydroBase_Select_Boundaries { } "Apply the boundary conditions of HydroBase" # This is a group to schedule Con2Prim routines, scheduled at different times during # an evolution schedule group HydroBase_Con2Prim IN HydroBase_PostStep { } "Convert from conservative to primitive variables" schedule group HydroBase_Con2Prim AT CCTK_PostPostInitial AS Con2Prim BEFORE ADMConstraintsGroup { } "Convert from conservative to primitive variables (might be redundant)" # Schedule prim2con after initial data schedule group HydroBase_Prim2ConInitial AT Initial AFTER HydroBase_Initial { } "Recover the conservative variables from the primitive variables"