aboutsummaryrefslogtreecommitdiff
path: root/ML_WaveToy/schedule.ccl
blob: 2d0b0319050b8d81e54b12ea57e5b896e61154c5 (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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File produced by Kranc


if (other_timelevels == 1)
{
  STORAGE: WT_eps[1]
}

if (timelevels == 1)
{
  STORAGE: WT_rho[1]
}
if (timelevels == 2)
{
  STORAGE: WT_rho[2]
}

if (timelevels == 1)
{
  STORAGE: WT_u[1]
}
if (timelevels == 2)
{
  STORAGE: WT_u[2]
}

if (rhs_timelevels == 1)
{
  STORAGE: WT_rhorhs[1]
}
if (rhs_timelevels == 2)
{
  STORAGE: WT_rhorhs[2]
}

if (rhs_timelevels == 1)
{
  STORAGE: WT_urhs[1]
}
if (rhs_timelevels == 2)
{
  STORAGE: WT_urhs[2]
}

schedule ML_WaveToy_Startup at STARTUP
{
  LANG: C
  OPTIONS: meta
} "create banner"

schedule ML_WaveToy_RegisterSymmetries in SymmetryRegister
{
  LANG: C
  OPTIONS: meta
} "register symmetries"


if (CCTK_EQUALS(initial_data, "Gaussian"))
{
  schedule WT_Gaussian AT initial
  {
    LANG: C
    READS:    grid::r
    WRITES:   ML_WaveToy::rho
    WRITES:   ML_WaveToy::u
  } "WT_Gaussian"
}


if (CCTK_EQUALS(initial_data, "Standing"))
{
  schedule WT_Standing AT initial
  {
    LANG: C
    READS:    grid::x
    READS:    grid::y
    READS:    grid::z
    WRITES:   ML_WaveToy::rho
    WRITES:   ML_WaveToy::u
  } "WT_Standing"
}

schedule WT_RHS IN MoL_CalcRHS
{
  LANG: C
  READS:    ML_WaveToy::rho
  READS:    ML_WaveToy::u
  WRITES:   ML_WaveToy::rhorhs
  WRITES:   ML_WaveToy::urhs
} "WT_RHS"

schedule WT_Dirichlet IN MoL_CalcRHS
{
  LANG: C
  WRITES:   ML_WaveToy::rhorhs
  WRITES:   ML_WaveToy::urhs
} "WT_Dirichlet"

schedule WT_Dirichlet AT analysis
{
  LANG: C
  SYNC: WT_rhorhs
  SYNC: WT_urhs
  WRITES:   ML_WaveToy::rhorhs
  WRITES:   ML_WaveToy::urhs
} "WT_Dirichlet"

schedule WT_Energy AT analysis
{
  LANG: C
  SYNC: WT_eps
  READS:    ML_WaveToy::rho
  READS:    ML_WaveToy::u
  WRITES:   ML_WaveToy::eps
} "WT_Energy"

schedule WT_EnergyBoundary AT analysis
{
  LANG: C
  SYNC: WT_eps
  WRITES:   ML_WaveToy::eps
} "WT_EnergyBoundary"

schedule ML_WaveToy_SelectBoundConds in MoL_PostStep
{
  LANG: C
  OPTIONS: level
  SYNC: WT_rho
  SYNC: WT_u
} "select boundary conditions"

schedule ML_WaveToy_CheckBoundaries at BASEGRID
{
  LANG: C
  OPTIONS: meta
} "check boundaries treatment"

schedule ML_WaveToy_RegisterVars in MoL_Register
{
  LANG: C
  OPTIONS: meta
} "Register Variables for MoL"

schedule group ApplyBCs as ML_WaveToy_ApplyBCs in MoL_PostStep after ML_WaveToy_SelectBoundConds
{
  # no language specified
} "Apply boundary conditions controlled by thorn Boundary"