\section{marlintpc\-:\-:Track\-Fitter\-Likelihood\-Processor Class Reference}
\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor}\index{marlintpc\-::\-Track\-Fitter\-Likelihood\-Processor@{marlintpc\-::\-Track\-Fitter\-Likelihood\-Processor}}


\doxyref{Track\-Fitter\-Likelihood\-Processor}{p.}{classmarlintpc_1_1TrackFitterLikelihoodProcessor} \-: This class takes post-\/amplified data from a readout pad and reconstructs the track based on the location of each signal.  




{\ttfamily \#include $<$Track\-Fitter\-Likelihood\-Processor.\-h$>$}

Inheritance diagram for marlintpc\-:\-:Track\-Fitter\-Likelihood\-Processor\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classmarlintpc_1_1TrackFitterLikelihoodProcessor}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
{\bf Track\-Fitter\-Likelihood\-Processor} ()\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor_aefc2b882c97b2eeee29483feda3c9595}

\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item 
{\bf $\sim$\-Track\-Fitter\-Likelihood\-Processor} ()\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor_ac21409d8cfc7a465592d0a53bd9b3e6b}

\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
marlin\-::\-Processor $\ast$ {\bf new\-Processor} ()\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor_a1372db59673ee090e705b3507b13c8ed}

\begin{DoxyCompactList}\small\item\em Return a new instance of this processor. \end{DoxyCompactList}\item 
void {\bf init} ()\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor_aa0c239fcb25ccf4380a93d0e4314b57d}

\begin{DoxyCompactList}\small\item\em Called at the begin of the job before anything is read. \end{DoxyCompactList}\item 
void {\bf process\-Run\-Header} (lcio\-::\-L\-C\-Run\-Header $\ast$run)\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor_ac427b624be40e09a5d6afce6d5a017bb}

\begin{DoxyCompactList}\small\item\em Called once per run to process the event's header. \end{DoxyCompactList}\item 
virtual void {\bf process\-Event} (lcio\-::\-L\-C\-Event $\ast$evt)\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor_ab1dc8386d5d758114c5ad0f88566c61c}

\begin{DoxyCompactList}\small\item\em Called for every event -\/ the working horse. \end{DoxyCompactList}\item 
virtual double {\bf operator()} (const std\-::vector$<$ double $>$ \&x) const 
\begin{DoxyCompactList}\small\item\em The meaning of the vector of parameters is of course defined by the user, who uses the values of those parameters to calculate his function value. \end{DoxyCompactList}\item 
virtual double {\bf Up} () const 
\begin{DoxyCompactList}\small\item\em Error definition of the function. \end{DoxyCompactList}\item 
virtual void {\bf check} (lcio\-::\-L\-C\-Event $\ast$evt)\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor_a66d3ff881a46a0cfc5bd8a56320f4293}

\begin{DoxyCompactList}\small\item\em Called for every event -\/ right after \doxyref{process\-Event()}{p.}{classmarlintpc_1_1TrackFitterLikelihoodProcessor_ab1dc8386d5d758114c5ad0f88566c61c} has been called for all processors. \end{DoxyCompactList}\item 
virtual void {\bf end} ()\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor_a239e7f21f8d58a93b949344f4b0513dd}

\begin{DoxyCompactList}\small\item\em Called after data processing for clean up in the inverse order of the \doxyref{init()}{p.}{classmarlintpc_1_1TrackFitterLikelihoodProcessor_aa0c239fcb25ccf4380a93d0e4314b57d} method so that resources allocated in the first processor also will be available for all following processors. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
\doxyref{Track\-Fitter\-Likelihood\-Processor}{p.}{classmarlintpc_1_1TrackFitterLikelihoodProcessor} \-: This class takes post-\/amplified data from a readout pad and reconstructs the track based on the location of each signal. 

The algorithm was developed by Dean Karlen at U\-Vic \begin{DoxyAuthor}{Author}
J. Abernathy (U\-Vic)\par
 
\end{DoxyAuthor}


\subsection{Member Function Documentation}
\index{marlintpc\-::\-Track\-Fitter\-Likelihood\-Processor@{marlintpc\-::\-Track\-Fitter\-Likelihood\-Processor}!operator()@{operator()}}
\index{operator()@{operator()}!marlintpc::TrackFitterLikelihoodProcessor@{marlintpc\-::\-Track\-Fitter\-Likelihood\-Processor}}
\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}double marlintpc\-::\-Track\-Fitter\-Likelihood\-Processor\-::operator() (
\begin{DoxyParamCaption}
\item[{const std\-::vector$<$ double $>$ \&}]{x}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor_a0eb759e67203a3d8f5bd62e0d195e507}


The meaning of the vector of parameters is of course defined by the user, who uses the values of those parameters to calculate his function value. 

The order and the position of these parameters is strictly the one specified by the user when supplying the starting values for minimization. The starting values must be specified by the user, either via an std\-::vector$<$double$>$ or the Mn\-User\-Parameters supplied as input to the M\-I\-N\-U\-I\-T minimizers such as Variable\-Metric\-Minimizer or Mn\-Migrad. Later values are determined by M\-I\-N\-U\-I\-T as it searches for the minimum or performs whatever analysis is requested by the user.


\begin{DoxyParams}{Parameters}
{\em par} & function parameters as defined by the user.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
the value of the function.
\end{DoxyReturn}
\begin{DoxySeeAlso}{See Also}
Mn\-User\-Parameters 

Variable\-Metric\-Minimizer 

Mn\-Migrad 
\end{DoxySeeAlso}
\index{marlintpc\-::\-Track\-Fitter\-Likelihood\-Processor@{marlintpc\-::\-Track\-Fitter\-Likelihood\-Processor}!Up@{Up}}
\index{Up@{Up}!marlintpc::TrackFitterLikelihoodProcessor@{marlintpc\-::\-Track\-Fitter\-Likelihood\-Processor}}
\subsubsection[{Up}]{\setlength{\rightskip}{0pt plus 5cm}double marlintpc\-::\-Track\-Fitter\-Likelihood\-Processor\-::\-Up (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1TrackFitterLikelihoodProcessor_a3d4e96e05c27d6941da054a8ea12f375}


Error definition of the function. 

M\-I\-N\-U\-I\-T defines parameter errors as the change in parameter value required to change the function value by up. Normally, for chisquared fits it is 1, and for negative log likelihood, its value is 0.\-5. If the user wants instead the 2-\/sigma errors for chisquared fits, it becomes 4, as Chi2(x+n$\ast$sigma) = Chi2(x) + n$\ast$n. \begin{DoxyRefDesc}{Todo}
\item[{\bf Todo}]Comment a little bit better with links!!!!!!!!!!!!!!!!! Idem for error\-Def() \end{DoxyRefDesc}


The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
Track\-Fitter\-Likelihood\-Processor.\-h\item 
Track\-Fitter\-Likelihood\-Processor.\-cc\end{DoxyCompactItemize}
