# Schedule definitions for thorn ADMBase # $Header$ STORAGE: shift_state, dtlapse_state, dtshift_state, metric[1], curv[1], lapse[1] SCHEDULE ADMBase_ParamCheck at CCTK_PARAMCHECK { LANG: C OPTIONS: global } "Check consistency of parameters" # Schedule group for setting initial data SCHEDULE group ADMBase_InitialData at CCTK_INITIAL { } "Schedule group for calculating ADM initial data" SCHEDULE group ADMBase_InitialGauge at CCTK_INITIAL after ADMBase_InitialData { } "Schedule group for the ADM initial gauge condition" SCHEDULE group ADMBase_PostInitial at CCTK_INITIAL after ADMBase_InitialGauge { } "Schedule group for modifying the ADM initial data, such as e.g. adding noise" # Initial data for the spatial slices if(CCTK_Equals(initial_data, "Cartesian Minkowski")) { SCHEDULE ADMBase_CartesianMinkowski in ADMBase_InitialData { LANG: C } "Set the metric and extrinsic curvature to cartesian minkowski values" } # Initial data for the lapse if(CCTK_Equals(initial_lapse, "one")) { SCHEDULE ADMBase_LapseOne in ADMBase_InitialGauge { LANG: C } "Set the lapse to 1 at all points" } # Do we have storage for the shift ? if (!CCTK_Equals(initial_shift, "none")) { STORAGE: shift[1] SCHEDULE ADMBase_SetShiftStateOn at CCTK_BASEGRID { LANG: C } "Set the shift_state variable to 1" } else { SCHEDULE ADMBase_SetShiftStateOff at CCTK_BASEGRID { LANG: C } "Set the shift_state variable to 0" } # Do we have storage for dtlapse? if (! CCTK_Equals(initial_dtlapse, "none")) { SCHEDULE ADMBase_SetDtLapseStateOn at CCTK_BASEGRID { LANG: C } "Set the dtlapse_state variable to 1" } else { STORAGE: dtlapse[1] SCHEDULE ADMBase_SetDtLapseStateOff at CCTK_BASEGRID { LANG: C } "Set the dtlapse_state variable to 0" } # Do we have storage for dtshift? if (! CCTK_Equals(initial_dtshift, "none")) { SCHEDULE ADMBase_SetDtShiftStateOn at CCTK_BASEGRID { LANG: C } "Set the dtshift_state variable to 1" } else { SCHEDULE ADMBase_SetDtShiftStateOff at CCTK_BASEGRID { LANG: C } "Set the dtshift_state variable to 0" } # Initial data for the shift if (CCTK_Equals(initial_shift, "zero")) { SCHEDULE ADMBase_ShiftZero in ADMBase_InitialGauge { LANG: C } "Set the shift to 0 at all points" } # Initial data for dtlapse if (CCTK_Equals(initial_dtlapse, "zero")) { STORAGE: dtshift[1] SCHEDULE ADMBase_DtLapseZero in ADMBase_InitialGauge { LANG: C } "Set the dtlapse to 0 at all points" } # Initial data for dtshift if (CCTK_Equals(initial_dtshift, "zero")) { SCHEDULE ADMBase_DtShiftZero in ADMBase_InitialGauge { LANG: C } "Set the dtshift to 0 at all points" } if (CCTK_Equals(lapse_evolution_method, "static")) { SCHEDULE ADMBase_LapseStatic in CCTK_PRESTEP { LANG: C } "Copy the lapse to the current time level" } if (CCTK_Equals(shift_evolution_method, "static")) { SCHEDULE ADMBase_ShiftStatic in CCTK_PRESTEP { LANG: C } "Copy the shift to the current time level" } if (CCTK_Equals(evolution_method, "static") || CCTK_Equals(evolution_method, "none")) { SCHEDULE ADMBase_Static in CCTK_PRESTEP { LANG: C } "Copy the metric and extrinsic curvature to the current time level" } # FIXME: Remove this when symmetries done better schedule Einstein_InitSymBound at CCTK_WRAGH { LANG: C OPTIONS: global } "Set up GF symmetries"