
\section{Schedule} 


\parskip = 0pt


\noindent This section lists all the variables which are assigned storage by thorn Llama/WaveExtractL.  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:} \\ 
 MoncriefQ &  metric\_tmp\\ 
~ &  my\_out\_every\_det\\ 
~ &  l\_m\_modes\_info\_group\\ 
~ &  current\_detector\_group\\ 
~ &  current\_detector\_radius\_group\\ 
~ &  sym\_factor\_group handles\_group do\_nothing\_group\\ 
~ &  gridsizes\_group\\ 
~ &  surface\_arrays\\ 
~ &  surface\_integrands\\ 
~ &  interp\_metric\_arrays\\ 
~ &  Schwarzschild\_Mass\_Radius\_group\\ 
~ &  MoncriefQ\_Results\_group Schwarzschild\_Mass\_Radius\_Results\_group\\ 
~ &  current\_detector\_group current\_detector\_radius\_group\\ 
~ & ~\\ 
\end{tabular*} 


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

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

\hspace{5mm} wavextrl\_paramcheck 

\hspace{5mm}{\it check parameters for waveextract } 


\hspace{5mm}

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


\vspace{5mm}

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

\hspace{5mm} wavextrl\_startup 

\hspace{5mm}{\it register waveextract as an io method } 


\hspace{5mm}

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


\vspace{5mm}

\noindent {\bf WavExtrL\_CalcsAtDetector}   (conditional) 

\hspace{5mm} wavextrl\_subtrsphermetric 

\hspace{5mm}{\it substract spherical background part of metric from metric } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & wavextrl\_schwarzmassrad \\ 
~ & Language:  & fortran \\ 
~ & Options:  & global \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf WavExtrL\_CalcsAtDetector}   (conditional) 

\hspace{5mm} wavextrl\_moncriefq 

\hspace{5mm}{\it compute moncrief qeven, qodd from regge wheeler quantities } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & wavextrl\_subtrsphermetric \\ 
~ & Language:  & fortran \\ 
~ & Options:  & global \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf WavExtrL\_CalcsAtDetector}   (conditional) 

\hspace{5mm} wavextrl\_writedata 

\hspace{5mm}{\it write out results to disk and stdout - one file for each detector and (l,m) mode } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & wavextrl\_moncriefq \\ 
~ & Language:  & c \\ 
~ & Options:  & global \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf WavExtrL\_CalcsAtDetector}   (conditional) 

\hspace{5mm} wavextrl\_adjustdetector 

\hspace{5mm}{\it decrease current\_detector, go the the next detector } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & wavextrl\_writedata \\ 
~ & Language:  & c \\ 
~ & Options:  & global \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf WavExtrL\_CalcsAtDetector}   (conditional) 

\hspace{5mm} wavextrl\_adjustdetector 

\hspace{5mm}{\it decrease current\_detector, go the the next detector } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & wavextrl\_moncriefq \\ 
~ & Language:  & c \\ 
~ & Options:  & global \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf WavExtrL\_CalcsAtDetector}   (conditional) 

\hspace{5mm} wavextrl\_timerinfo 

\hspace{5mm}{\it output timer info if requested } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & wavextrl\_adjustdetector \\ 
~ & Language:  & c \\ 
~ & Options:  & global \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

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

\hspace{5mm} wavextrl\_writelotsofdata 

\hspace{5mm}{\it output one file per (l,m) mode, all detectors in one file } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & wavextrl\_calcsatdetector \\ 
~ & Language:  & c \\ 
~ & Options:  & global \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

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

\hspace{5mm} wavextrl\_init 

\hspace{5mm}{\it setup weights for integration } 


\hspace{5mm}

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


\vspace{5mm}

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

\hspace{5mm} wavextrl\_setup\_detectors 

\hspace{5mm}{\it initial setup of all detectors } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & spatialcoordinates \\ 
~ & Language:  & fortran \\ 
~ & Options:  & level \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

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

\hspace{5mm} wavextrl\_setup\_sphericalsurface 

\hspace{5mm}{\it setup detectors from spherical surface } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & sphericalsurface\_setup \\ 
~& ~ &wavextrl\_resetcurrdet\\ 
~ & Language:  & fortran \\ 
~ & Options:  & local \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

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

\hspace{5mm} wavextrl\_resetcurrdet 

\hspace{5mm}{\it reset the value of the current\_detector, needed for the while loop next } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & Before:  & wavextrl\_calcsatdetector \\ 
~ & Language:  & c \\ 
~ & Options:  & global \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

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

\hspace{5mm} wavextrl\_calcsatdetector 

\hspace{5mm}{\it calculations done for each detector, we loop over the detectors } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & wavextrl\_resetcurrdet \\ 
~ & Type:  & group \\ 
~ & While:  & waveextractl::current\_detector \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf WavExtrL\_CalcsAtDetector}   (conditional) 

\hspace{5mm} wavextrl\_setupsphere 

\hspace{5mm}{\it setup sintheta, sinphi arrays } 


\hspace{5mm}

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


\vspace{5mm}

\noindent {\bf WavExtrL\_CalcsAtDetector}   (conditional) 

\hspace{5mm} wavextrl\_projectsphere 

\hspace{5mm}{\it interpolate 3d quantities into 2d grid arrays (on the sphere), project onto sphere } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & wavextrl\_setupsphere \\ 
~ & Language:  & c \\ 
~ & Options:  & global \\ 
~ & Type:  & function \\ 
\end{tabular*} 


\vspace{5mm}

\noindent {\bf WavExtrL\_CalcsAtDetector}   (conditional) 

\hspace{5mm} wavextrl\_schwarzmassrad 

\hspace{5mm}{\it calculate schwarzschild radius and mass and spherical background } 


\hspace{5mm}

 \begin{tabular*}{160mm}{cll} 
~ & After:  & wavextrl\_projectsphere \\ 
~ & Language:  & fortran \\ 
~ & Options:  & global \\ 
~ & Type:  & function \\ 
\end{tabular*} 



\vspace{5mm}\parskip = 10pt 
