
\section{Schedule} 


\parskip = 0pt


\noindent This section lists all the variables which are assigned storage by thorn CanudaX/CanudaX\_BSSNMoL.  Storage can either last for the duration of the run ({\bf Always} means that if this thorn is activated storage will be assigned, {\bf Conditional} means that if this thorn is activated storage will be assigned for the duration of the run if some condition is met), or can be turned on for the duration of a schedule function.


\subsection*{Storage}

\hspace{5mm}

 \begin{tabular*}{160mm}{ll} 

{\bf Always:}& {\bf Conditional:} \\ 
 ADMBaseX::metric &  ADMBaseX::lapse\\ 
 beta &  ham\\ 
 conf\_fac\_rhs &  mom\\ 
 hmetric\_rhs & ~\\ 
 hcurv\_rhs & ~\\ 
 trk\_rhs & ~\\ 
 gammat\_rhs & ~\\ 
 alpha\_rhs & ~\\ 
 beta\_rhs & ~\\ 
 ADMBaseX::shift & ~\\ 
 ADMBaseX::curv & ~\\ 
 conf\_fac & ~\\ 
 hmetric & ~\\ 
 hcurv & ~\\ 
 trk & ~\\ 
 gammat & ~\\ 
 alpha & ~\\ 
~ & ~\\ 
\end{tabular*} 


\subsection*{Scheduled Functions}
\vspace{5mm}

\noindent {\bf CCTK\_INITIAL}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_initialgroup 

\hspace{5mm}{\it canudax\_bssnmol: initial bin } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & tmunubasex\_settmunuvars \\ 
~ & Type:  & group \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf ODESolvers\_PostStep}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_poststepgroup 

\hspace{5mm}{\it canudax\_bssnmol: post-step operations } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & Before:  & admbasex\_setadmvars \\ 
~ & Type:  & group \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_RHSGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_apply\_boundary\_conditions 

\hspace{5mm}{\it apply radiative boundary conditions  } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & canudax\_bssnmol\_calc\_bssn\_rhs \\ 
~ & Language:  & c \\ 
~ & Reads:  & alpha(interior) \\ 
~& ~ &beta(interior)\\ 
~& ~ &conf\_fac(interior)\\ 
~& ~ &hmetric(interior)\\ 
~& ~ &trk(interior)\\ 
~& ~ &hcurv(interior)\\ 
~& ~ &gammat(interior)\\ 
~& ~ &alpha\_rhs(interior)\\ 
~& ~ &beta\_rhs(interior)\\ 
~& ~ &conf\_fac\_rhs(interior)\\ 
~& ~ &trk\_rhs(interior)\\ 
~& ~ &hmetric\_rhs(interior)\\ 
~& ~ &hcurv\_rhs(interior)\\ 
~& ~ &gammat\_rhs(interior)\\ 
~ & Type:  & function \\ 
~ & Writes:  & alpha\_rhs(interior) \\ 
~& ~ &beta\_rhs(interior)\\ 
~& ~ &conf\_fac\_rhs(interior)\\ 
~& ~ &trk\_rhs(interior)\\ 
~& ~ &hmetric\_rhs(interior)\\ 
~& ~ &hcurv\_rhs(interior)\\ 
~& ~ &gammat\_rhs(interior)\\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_PostStepGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_sync 

\hspace{5mm}{\it sync state vector } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & Language:  & c \\ 
~ & Options:  & global \\ 
~ & Sync:  & alpha \\ 
~& ~ &beta\\ 
~& ~ &conf\_fac\\ 
~& ~ &hmetric\\ 
~& ~ &trk\\ 
~& ~ &hcurv\\ 
~& ~ &gammat\\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_PostStepGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_impose\_conf\_fac\_floor 

\hspace{5mm}{\it make sure conformal factor does not drop below specified value } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & Before:  & canudax\_bssnmol\_sync \\ 
~ & Language:  & c \\ 
~ & Reads:  & conf\_fac(interior) \\ 
~ & Type:  & function \\ 
~ & Writes:  & conf\_fac(interior) \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_PostStepGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_reset\_detmetric 

\hspace{5mm}{\it reset dethh = 1 } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & canudax\_bssnmol\_impose\_conf\_fac\_floor \\ 
~ & Before:  & canudax\_bssnmol\_sync \\ 
~ & Language:  & c \\ 
~ & Reads:  & hmetric(interior) \\ 
~ & Type:  & function \\ 
~ & Writes:  & hmetric(interior) \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_PostStepGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_remove\_tra 

\hspace{5mm}{\it remove trace of a } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & canudax\_bssnmol\_reset\_detmetric \\ 
~ & Before:  & canudax\_bssnmol\_sync \\ 
~ & Language:  & c \\ 
~ & Reads:  & hcurv(interior) \\ 
~& ~ &hmetric(interior)\\ 
~ & Type:  & function \\ 
~ & Writes:  & hcurv(interior) \\ 
~& ~ &hmetric(interior)\\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_PostStepGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_bssn2adm 

\hspace{5mm}{\it convert variables back to the adm ones } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & canudax\_bssnmol\_sync \\ 
~ & Before:  & admbasex\_setadmvars \\ 
~ & Language:  & c \\ 
~ & Options:  & local \\ 
~ & Reads:  & alpha(everywhere) \\ 
~& ~ &beta(everywhere)\\ 
~& ~ &conf\_fac(everywhere)\\ 
~& ~ &hmetric(everywhere)\\ 
~& ~ &trk(everywhere)\\ 
~& ~ &hcurv(everywhere)\\ 
~& ~ &gammat(everywhere)\\ 
~ & Type:  & function \\ 
~ & Writes:  & admbasex::metric(everywhere) \\ 
~& ~ &admbasex::curv(everywhere)\\ 
~& ~ &admbasex::lapse(everywhere)\\ 
~& ~ &admbasex::shift(everywhere)\\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CCTK\_ANALYSIS}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_bssn\_constraints 

\hspace{5mm}{\it compute constraints } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & Language:  & c \\ 
~ & Reads:  & alpha(everywhere) \\ 
~& ~ &beta(everywhere)\\ 
~& ~ &conf\_fac(everywhere)\\ 
~& ~ &hmetric(everywhere)\\ 
~& ~ &trk(everywhere)\\ 
~& ~ &hcurv(everywhere)\\ 
~& ~ &gammat(everywhere)\\ 
~& ~ &tmunubasex::ettt(interior)\\ 
~& ~ &tmunubasex::etti(interior)\\ 
~& ~ &tmunubasex::etij(interior)\\ 
~ & Type:  & function \\ 
~ & Writes:  & ham(interior) \\ 
~& ~ &mom(interior)\\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf ODESolvers\_RHS}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_rhsgroup 

\hspace{5mm}{\it canudax\_bssnmol: calculate bssn rhs } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & Type:  & group \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CCTK\_PARAMCHECK}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_paramcheck 

\hspace{5mm}{\it check canudax\_bssnmol parameters for consistency } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & Language:  & c \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_InitialGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_adm2bssn 

\hspace{5mm}{\it convert initial data into bssn variables } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & Language:  & c \\ 
~ & Options:  & local \\ 
~ & Reads:  & admbasex::metric(everywhere) \\ 
~& ~ &admbasex::curv(everywhere)\\ 
~& ~ &admbasex::lapse(everywhere)\\ 
~& ~ &admbasex::shift(everywhere)\\ 
~ & Type:  & function \\ 
~ & Writes:  & alpha(everywhere) \\ 
~& ~ &beta(everywhere)\\ 
~& ~ &conf\_fac(everywhere)\\ 
~& ~ &hmetric(everywhere)\\ 
~& ~ &hcurv(everywhere)\\ 
~& ~ &trk(everywhere)\\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_InitialGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_gammat 

\hspace{5mm}{\it set gammat initial data } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & canudax\_bssnmol\_adm2bssn \\ 
~ & Language:  & c \\ 
~ & Options:  & local \\ 
~ & Reads:  & hmetric(everywhere) \\ 
~ & Sync:  & gammat \\ 
~ & Type:  & function \\ 
~ & Writes:  & gammat(interior) \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_InitialGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_estimate\_error 

\hspace{5mm}{\it estimate error for regridding } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & canudax\_bssnmol\_sync \\ 
~ & Language:  & c \\ 
~ & Reads:  & conf\_fac(everywhere) \\ 
~ & Type:  & function \\ 
~ & Writes:  & carpetxregrid::regrid\_error(interior) \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf ODESolvers\_EstimateError}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_estimate\_error 

\hspace{5mm}{\it estimate error for regridding } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & Language:  & c \\ 
~ & Reads:  & conf\_fac(everywhere) \\ 
~ & Type:  & function \\ 
~ & Writes:  & carpetxregrid::regrid\_error(interior) \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_RHSGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_calc\_bssn\_rhs 

\hspace{5mm}{\it mol rhs calculation } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & Language:  & c \\ 
~ & Reads:  & alpha(everywhere) \\ 
~& ~ &beta(everywhere)\\ 
~& ~ &conf\_fac(everywhere)\\ 
~& ~ &hmetric(everywhere)\\ 
~& ~ &trk(everywhere)\\ 
~& ~ &hcurv(everywhere)\\ 
~& ~ &gammat(everywhere)\\ 
~& ~ &tmunubasex::ettt(interior)\\ 
~& ~ &tmunubasex::etti(interior)\\ 
~& ~ &tmunubasex::etij(interior)\\ 
~ & Type:  & function \\ 
~ & Writes:  & alpha\_rhs(interior) \\ 
~& ~ &beta\_rhs(interior)\\ 
~& ~ &conf\_fac\_rhs(interior)\\ 
~& ~ &trk\_rhs(interior)\\ 
~& ~ &hmetric\_rhs(interior)\\ 
~& ~ &hcurv\_rhs(interior)\\ 
~& ~ &gammat\_rhs(interior)\\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf CanudaX\_BSSNMoL\_RHSGroup}   (conditional) 

\hspace{5mm} canudax\_bssnmol\_add\_dissipation 

\hspace{5mm}{\it add ko dissipation } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & canudax\_bssnmol\_calc\_bssn\_rhs \\ 
~ & Before:  & canudax\_bssnmol\_apply\_boundary\_conditions \\ 
~ & Language:  & c \\ 
~ & Reads:  & alpha(everywhere) \\ 
~& ~ &beta(everywhere)\\ 
~& ~ &conf\_fac(everywhere)\\ 
~& ~ &hmetric(everywhere)\\ 
~& ~ &trk(everywhere)\\ 
~& ~ &hcurv(everywhere)\\ 
~& ~ &gammat(everywhere)\\ 
~& ~ &alpha\_rhs(interior)\\ 
~& ~ &beta\_rhs(interior)\\ 
~& ~ &conf\_fac\_rhs(interior)\\ 
~& ~ &trk\_rhs(interior)\\ 
~& ~ &hmetric\_rhs(interior)\\ 
~& ~ &hcurv\_rhs(interior)\\ 
~& ~ &gammat\_rhs(interior)\\ 
~ & Type:  & function \\ 
~ & Writes:  & alpha\_rhs(interior) \\ 
~& ~ &beta\_rhs(interior)\\ 
~& ~ &conf\_fac\_rhs(interior)\\ 
~& ~ &trk\_rhs(interior)\\ 
~& ~ &hmetric\_rhs(interior)\\ 
~& ~ &hcurv\_rhs(interior)\\ 
~& ~ &gammat\_rhs(interior)\\ 
\end{tabular*} 



\vspace{5mm}\parskip = 10pt 
