aboutsummaryrefslogtreecommitdiff
path: root/schedule.ccl
blob: 89b89dc709489cc6afb10027efc296a58aab946b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# Schedule definitions for thorn TOVSolver

schedule TOV_C_ParamCheck AT PARAMCHECK
{
  LANG: C
  OPTIONS: GLOBAL
} "Check parameters"

schedule TOV_C_AllocateMemory AT WRAGH
{
  LANG: C
  OPTIONS: GLOBAL
} "Allocate memory for TOVSolver_C"

if (!TOV_fake_evolution)
{
  schedule TOV_C_FreeMemory AT POSTPOSTINITIAL
  {
    LANG: C
    OPTIONS: GLOBAL
  } "Free memory from TOVSolver_C"
}

schedule GROUP TOV_Initial_Data IN HydroBase_Initial
{
#  STORAGE: TOV_Scalars
#  STORAGE: TOV_Arrays
  SYNC:ADMBase::metric,ADMBase::curv,ADMBase::lapse,ADMBase::shift
  SYNC: rho
  SYNC: press
  SYNC: eps
  SYNC: vel
  SYNC: w_lorentz
} "Group for the TOV initial data"

schedule TOV_C_Integrate_RHS IN TOV_Initial_Data
{
  LANG: C
  OPTIONS: GLOBAL
} "Integrate the 1d equations for the TOV star"

if (!CCTK_Equals(TOV_save_to_datafile,""))
{
  schedule TOV_write_1D_datafile IN TOV_Initial_Data AFTER TOV_C_Integrate_RHS BEFORE TOV_C_Exact
  {
    LANG: C
    OPTIONS: GLOBAL
  } "Save data to file and exit"
}

if (TOV_ProperPosition)
{
  schedule TOV_Set_ProperPositions in TOV_Initial_Data after TOV_C_Integrate_RHS before TOV_C_Exact
  {
    LANG: C
    Options: GLOBAL
  } "Steer NS position parameters according to proper distance"
}

if (CCTK_Equals(initial_data, "tov") || CCTK_Equals(initial_hydro, "tov") ||
    (TOV_Use_Old_Initial_Data > 0) || TOV_Enforce_Interpolation)
{
  schedule TOV_C_Exact IN TOV_Initial_Data AFTER TOV_C_Integrate_RHS
  {
    LANG: C
  } "Set up the 3d quantities for the TOV star"
}

if (TOV_fake_evolution)
{
  schedule TOV_Prepare_Fake_Evolution AFTER TOV_C_Exact
  {
    LANG: C
  } "prepare for fake evolution"
  schedule TOV_C_Exact IN MoL_PostStep AFTER GRHydro_PostStep
  {
    LANG: C
  } "use fake evolution"
}