-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path_likelihood_two_tracks_8h_source.html
132 lines (130 loc) · 42.2 KB
/
_likelihood_two_tracks_8h_source.html
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>KLFitter: include/KLFitter/LikelihoodTwoTracks.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">KLFitter
 <span id="projectnumber">v1.3.2</span>
</div>
<div id="projectbrief">Documentation of the KLFitter library -- The Kinematic Likelihood Fitter</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8c11f2f0ed543956e5d99d70f8f89b79.html">KLFitter</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">LikelihoodTwoTracks.h</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2009--2018, the KLFitter developer team</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This file is part of KLFitter.</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * KLFitter is free software: you can redistribute it and/or modify it</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * under the terms of the GNU Lesser General Public License as published by</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> * the Free Software Foundation, either version 3 of the License, or (at</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * KLFitter is distributed in the hope that it will be useful, but WITHOUT</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * You should have received a copy of the GNU Lesser General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> * along with KLFitter. If not, see <http://www.gnu.org/licenses/>.</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment"> */</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> </div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#ifndef KLFITTER_LIKELIHOODTWOTRACKS_H_</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#define KLFITTER_LIKELIHOODTWOTRACKS_H_</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <iostream></span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "KLFitter/LikelihoodBase.h"</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="keyword">class </span>TLorentzVector;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment">// ---------------------------------------------------------</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">namespace </span><a class="code" href="namespace_k_l_fitter.html">KLFitter</a> {</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keyword">class </span>ResolutionBase;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html"> 43</a></span> <span class="keyword">class </span><a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html">LikelihoodTwoTracks</a> : <span class="keyword">public</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_base.html">LikelihoodBase</a> {</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <span class="comment">/* @{ */</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#ae9c4083fa3bcb37f1f0a609b1c64595e">LikelihoodTwoTracks</a>();</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> </div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#ab0b993c0d9ecb81cdddd4e2ccfefa6ea">~LikelihoodTwoTracks</a>();</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="comment">/* @} */</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <span class="keywordtype">double</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0413180616c90ef65670cde501cdbe0d">Log3DGaus</a>(<span class="keywordtype">double</span> x0, <span class="keywordtype">double</span> x1, <span class="keywordtype">double</span> x2,</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordtype">double</span> mean0, <span class="keywordtype">double</span> mean1, <span class="keywordtype">double</span> mean2,</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keywordtype">double</span> sigma00, <span class="keywordtype">double</span> sigma10, <span class="keywordtype">double</span> sigma11,</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordtype">double</span> sigma20, <span class="keywordtype">double</span> sigma21, <span class="keywordtype">double</span> sigma22);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa4d8bb8df52e7b7437933bae790c0c63b"> 77</a></span>  <span class="keyword">enum</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0f">Parameters</a> { <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa4d8bb8df52e7b7437933bae790c0c63b">parPiPlusPhi</a>, </div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa1b23abaef4227d279fed68cc53210c52"> 78</a></span>  <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa1b23abaef4227d279fed68cc53210c52">parPiPlusTheta</a>, </div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fad2fe4e5880ca4661b93c4e54b6c0ad0b"> 79</a></span>  <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fad2fe4e5880ca4661b93c4e54b6c0ad0b">parPiPlusP</a>, </div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0faa185de3728f42a2e3200b75c684a45ba"> 80</a></span>  <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0faa185de3728f42a2e3200b75c684a45ba">parPiMinusPhi</a>, </div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa8bb3850d4d1fb273d49719ee9e847ea9"> 81</a></span>  <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa8bb3850d4d1fb273d49719ee9e847ea9">parPiMinusTheta</a>, </div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0faabb0383e1d24f426086112a6f1e6f89f"> 82</a></span>  <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0faabb0383e1d24f426086112a6f1e6f89f">parPiMinusP</a>, </div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa3521b8484bd78a55dd5b9ce9a3031a38"> 83</a></span>  <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa3521b8484bd78a55dd5b9ce9a3031a38">parKShortM</a> </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  };</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="comment">/* @{ */</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="keywordtype">void</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#af55a99a9ff030a2a83f6fd85716b2c49">DefineParameters</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordtype">double</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a1a7b138f618acbfcf29d209993d23add">LogLikelihood</a>(<span class="keyword">const</span> std::vector<double>& parameters) <span class="keyword">override</span>;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  std::vector<double> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a6c824519ae7d06b4b7076cb2e2e53d4d">LogLikelihoodComponents</a>(std::vector<double> parameters) <span class="keyword">override</span>;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  std::vector<double> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a600c1c8da16d46a7b0fa963c9aa1d07a">GetInitialParameters</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a267bf32c2e268d8594f5e73fcb3d3b35"> 126</a></span>  <span class="keywordtype">int</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a267bf32c2e268d8594f5e73fcb3d3b35">SetET_miss_XY_SumET</a>(<span class="keywordtype">double</span> <span class="comment">/*etx*/</span>, <span class="keywordtype">double</span> <span class="comment">/*ety*/</span>, <span class="keywordtype">double</span> <span class="comment">/*sumet*/</span>)<span class="keyword"> override </span>{ <span class="keywordflow">return</span> 0; }</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a59a803582f34db5f6afc433e26a7bb46"> 129</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a59a803582f34db5f6afc433e26a7bb46">RequestResolutionFunctions</a>()<span class="keyword"> override </span>{ <span class="comment">/* do nothing */</span> }</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a54e683c628126967970db7ae8f1f0236"> 132</a></span>  <span class="keywordtype">int</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a54e683c628126967970db7ae8f1f0236">AdjustParameterRanges</a>()<span class="keyword"> override </span>{ <span class="keywordflow">return</span> 0; }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#af01f91806601b71fa4983dc5a0b324de"> 135</a></span>  <span class="keywordtype">int</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#af01f91806601b71fa4983dc5a0b324de">SaveResolutionFunctions</a>()<span class="keyword"> override </span>{ <span class="keywordflow">return</span> 0; }</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <span class="comment">/* @} */</span></div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="keyword">protected</span>:</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <span class="keywordtype">int</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#ab5bf2b0dd2cc59f6534e2aa322c62d46">CalculateLorentzVectors</a>(<span class="keyword">const</span> std::vector<double>& parameters) <span class="keyword">override</span>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keywordtype">int</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#aa2447d5f2021bfc78a98355c30a24d27">Initialize</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keywordtype">int</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a10766fd6cbeed875e18cc8771934372d">DefineModelParticles</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span> </div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <span class="keywordtype">int</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a1885868bdd540e7abe857fb7f659df6d">RemoveInvariantParticlePermutations</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span> </div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <span class="keywordtype">int</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#ab1a9f7d69afc56057f112d1432cb5abe">BuildModelParticles</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span> </div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  <span class="keywordtype">int</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a8d60bdfaa6871db0c5cd9d9a6b1941f4">SavePermutedParticles</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span> </div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="comment">/* @{ */</span></div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a1cc115af277d912cd15064deeca58362"> 174</a></span>  <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a1cc115af277d912cd15064deeca58362">m_pion_mass</a>;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#aad5ba3cc335a7a705e97034fc9617084"> 177</a></span>  <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#aad5ba3cc335a7a705e97034fc9617084">m_kshort_mass</a>;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#acbe28f5323c63df47e0dff1b95bb3ad5"> 180</a></span>  <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="class_k_l_fitter_1_1_likelihood_two_tracks.html#acbe28f5323c63df47e0dff1b95bb3ad5">m_kshort_width</a>;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  <span class="comment">/* @} */</span></div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <span class="comment">/* @{ */</span></div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keywordtype">double</span> m_t1_meas_phi;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <span class="keywordtype">double</span> m_t1_meas_theta;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="keywordtype">double</span> m_t1_meas_p;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span> </div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <span class="keywordtype">double</span> m_t1_meas_sigma00;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <span class="keywordtype">double</span> m_t1_meas_sigma10;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  <span class="keywordtype">double</span> m_t1_meas_sigma11;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  <span class="keywordtype">double</span> m_t1_meas_sigma20;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  <span class="keywordtype">double</span> m_t1_meas_sigma21;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  <span class="keywordtype">double</span> m_t1_meas_sigma22;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  <span class="keywordtype">double</span> m_t2_meas_phi;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  <span class="keywordtype">double</span> m_t2_meas_theta;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  <span class="keywordtype">double</span> m_t2_meas_p;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span> </div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  <span class="keywordtype">double</span> m_t2_meas_sigma00;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  <span class="keywordtype">double</span> m_t2_meas_sigma10;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <span class="keywordtype">double</span> m_t2_meas_sigma11;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <span class="keywordtype">double</span> m_t2_meas_sigma20;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  <span class="keywordtype">double</span> m_t2_meas_sigma21;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  <span class="keywordtype">double</span> m_t2_meas_sigma22;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  <span class="comment">/* @} */</span></div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <span class="comment">/* @{ */</span></div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span> </div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  <span class="keywordtype">double</span> m_t1_fit_phi;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  <span class="keywordtype">double</span> m_t1_fit_theta;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  <span class="keywordtype">double</span> m_t1_fit_p;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  <span class="keywordtype">double</span> m_t1_fit_m;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  <span class="keywordtype">double</span> m_t2_fit_phi;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <span class="keywordtype">double</span> m_t2_fit_theta;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  <span class="keywordtype">double</span> m_t2_fit_p;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="keywordtype">double</span> m_t2_fit_m;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span> </div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <span class="keywordtype">double</span> m_ks_fit_m;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <span class="comment">/* @} */</span></div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span> };</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span> } <span class="comment">// namespace KLFitter</span></div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="preprocessor">#endif // KLFITTER_LIKELIHOODTWOTRACKS_H_</span></div><div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a0413180616c90ef65670cde501cdbe0d"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0413180616c90ef65670cde501cdbe0d">KLFitter::LikelihoodTwoTracks::Log3DGaus</a></div><div class="ttdeci">double Log3DGaus(double x0, double x1, double x2, double mean0, double mean1, double mean2, double sigma00, double sigma10, double sigma11, double sigma20, double sigma21, double sigma22)</div><div class="ttdoc">Calculate 3D Gaussian. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:53</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a267bf32c2e268d8594f5e73fcb3d3b35"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a267bf32c2e268d8594f5e73fcb3d3b35">KLFitter::LikelihoodTwoTracks::SetET_miss_XY_SumET</a></div><div class="ttdeci">int SetET_miss_XY_SumET(double, double, double) override</div><div class="ttdoc">Dummy reimplementation of the base class function. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:126</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_acbe28f5323c63df47e0dff1b95bb3ad5"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#acbe28f5323c63df47e0dff1b95bb3ad5">KLFitter::LikelihoodTwoTracks::m_kshort_width</a></div><div class="ttdeci">const double m_kshort_width</div><div class="ttdoc">Decay width of k_short. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:180</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a0fa513e8b194432cb4073b1c66a0fc0f"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0f">KLFitter::LikelihoodTwoTracks::Parameters</a></div><div class="ttdeci">Parameters</div><div class="ttdoc">Enumerator for the parameters. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:77</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a1885868bdd540e7abe857fb7f659df6d"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a1885868bdd540e7abe857fb7f659df6d">KLFitter::LikelihoodTwoTracks::RemoveInvariantParticlePermutations</a></div><div class="ttdeci">int RemoveInvariantParticlePermutations() override</div><div class="ttdoc">Remove invariant particle permutations. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:157</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a54e683c628126967970db7ae8f1f0236"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a54e683c628126967970db7ae8f1f0236">KLFitter::LikelihoodTwoTracks::AdjustParameterRanges</a></div><div class="ttdeci">int AdjustParameterRanges() override</div><div class="ttdoc">Dummy reimplementation of the base class function. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:132</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a0fa513e8b194432cb4073b1c66a0fc0fa3521b8484bd78a55dd5b9ce9a3031a38"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa3521b8484bd78a55dd5b9ce9a3031a38">KLFitter::LikelihoodTwoTracks::parKShortM</a></div><div class="ttdoc">Mass of track particle. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:83</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a10766fd6cbeed875e18cc8771934372d"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a10766fd6cbeed875e18cc8771934372d">KLFitter::LikelihoodTwoTracks::DefineModelParticles</a></div><div class="ttdeci">int DefineModelParticles() override</div><div class="ttdoc">Define the model particles. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:78</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a0fa513e8b194432cb4073b1c66a0fc0fa1b23abaef4227d279fed68cc53210c52"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa1b23abaef4227d279fed68cc53210c52">KLFitter::LikelihoodTwoTracks::parPiPlusTheta</a></div><div class="ttdoc">First (positive) track theta. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:78</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html">KLFitter::LikelihoodTwoTracks</a></div><div class="ttdoc">This class implements a likelihood for the reconstruction of a particle decaying to two (oppositely) ...</div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:43</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_ab5bf2b0dd2cc59f6534e2aa322c62d46"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#ab5bf2b0dd2cc59f6534e2aa322c62d46">KLFitter::LikelihoodTwoTracks::CalculateLorentzVectors</a></div><div class="ttdeci">int CalculateLorentzVectors(const std::vector< double > &parameters) override</div><div class="ttdoc">Update 4-vectors of model particles. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:115</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a0fa513e8b194432cb4073b1c66a0fc0faa185de3728f42a2e3200b75c684a45ba"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0faa185de3728f42a2e3200b75c684a45ba">KLFitter::LikelihoodTwoTracks::parPiMinusPhi</a></div><div class="ttdoc">Second (negative) track phi. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:80</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_ab1a9f7d69afc56057f112d1432cb5abe"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#ab1a9f7d69afc56057f112d1432cb5abe">KLFitter::LikelihoodTwoTracks::BuildModelParticles</a></div><div class="ttdeci">int BuildModelParticles() override</div><div class="ttdoc">Build the model particles from the best fit parameters. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:246</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a8d60bdfaa6871db0c5cd9d9a6b1941f4"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a8d60bdfaa6871db0c5cd9d9a6b1941f4">KLFitter::LikelihoodTwoTracks::SavePermutedParticles</a></div><div class="ttdeci">int SavePermutedParticles() override</div><div class="ttdoc">Save permuted particles. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:217</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_af55a99a9ff030a2a83f6fd85716b2c49"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#af55a99a9ff030a2a83f6fd85716b2c49">KLFitter::LikelihoodTwoTracks::DefineParameters</a></div><div class="ttdeci">void DefineParameters() override</div><div class="ttdoc">Define the parameters of the fit. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:103</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_af01f91806601b71fa4983dc5a0b324de"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#af01f91806601b71fa4983dc5a0b324de">KLFitter::LikelihoodTwoTracks::SaveResolutionFunctions</a></div><div class="ttdeci">int SaveResolutionFunctions() override</div><div class="ttdoc">Dummy reimplementation of the base class function. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:135</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a59a803582f34db5f6afc433e26a7bb46"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a59a803582f34db5f6afc433e26a7bb46">KLFitter::LikelihoodTwoTracks::RequestResolutionFunctions</a></div><div class="ttdeci">void RequestResolutionFunctions() override</div><div class="ttdoc">Dummy reimplementation from the base class. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:129</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a0fa513e8b194432cb4073b1c66a0fc0fa4d8bb8df52e7b7437933bae790c0c63b"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa4d8bb8df52e7b7437933bae790c0c63b">KLFitter::LikelihoodTwoTracks::parPiPlusPhi</a></div><div class="ttdoc">First (positive) track phi. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:77</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a1a7b138f618acbfcf29d209993d23add"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a1a7b138f618acbfcf29d209993d23add">KLFitter::LikelihoodTwoTracks::LogLikelihood</a></div><div class="ttdeci">double LogLikelihood(const std::vector< double > &parameters) override</div><div class="ttdoc">The posterior probability definition, overloaded from BCModel. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:173</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_aad5ba3cc335a7a705e97034fc9617084"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#aad5ba3cc335a7a705e97034fc9617084">KLFitter::LikelihoodTwoTracks::m_kshort_mass</a></div><div class="ttdeci">const double m_kshort_mass</div><div class="ttdoc">Mass of k_short. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:177</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a0fa513e8b194432cb4073b1c66a0fc0faabb0383e1d24f426086112a6f1e6f89f"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0faabb0383e1d24f426086112a6f1e6f89f">KLFitter::LikelihoodTwoTracks::parPiMinusP</a></div><div class="ttdoc">Second (negative) track momentum. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:82</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a6c824519ae7d06b4b7076cb2e2e53d4d"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a6c824519ae7d06b4b7076cb2e2e53d4d">KLFitter::LikelihoodTwoTracks::LogLikelihoodComponents</a></div><div class="ttdeci">std::vector< double > LogLikelihoodComponents(std::vector< double > parameters) override</div><div class="ttdoc">The posterior probability definition, overloaded from BCModel. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:265</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a1cc115af277d912cd15064deeca58362"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a1cc115af277d912cd15064deeca58362">KLFitter::LikelihoodTwoTracks::m_pion_mass</a></div><div class="ttdeci">const double m_pion_mass</div><div class="ttdoc">Mass of the pion. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:174</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_ab0b993c0d9ecb81cdddd4e2ccfefa6ea"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#ab0b993c0d9ecb81cdddd4e2ccfefa6ea">KLFitter::LikelihoodTwoTracks::~LikelihoodTwoTracks</a></div><div class="ttdeci">~LikelihoodTwoTracks()</div><div class="ttdoc">The (defaulted) destructor. </div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a600c1c8da16d46a7b0fa963c9aa1d07a"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a600c1c8da16d46a7b0fa963c9aa1d07a">KLFitter::LikelihoodTwoTracks::GetInitialParameters</a></div><div class="ttdeci">std::vector< double > GetInitialParameters() override</div><div class="ttdoc">Get initial values for the parameters. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:191</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_ae9c4083fa3bcb37f1f0a609b1c64595e"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#ae9c4083fa3bcb37f1f0a609b1c64595e">KLFitter::LikelihoodTwoTracks::LikelihoodTwoTracks</a></div><div class="ttdeci">LikelihoodTwoTracks()</div><div class="ttdoc">The default constructor. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:35</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_base_html"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_base.html">KLFitter::LikelihoodBase</a></div><div class="ttdoc">A base class for likelihoods. </div><div class="ttdef"><b>Definition:</b> LikelihoodBase.h:46</div></div>
<div class="ttc" id="namespace_k_l_fitter_html"><div class="ttname"><a href="namespace_k_l_fitter.html">KLFitter</a></div><div class="ttdoc">The KLFitter namespace. </div><div class="ttdef"><b>Definition:</b> BoostedLikelihoodTopLeptonJets.h:28</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_aa2447d5f2021bfc78a98355c30a24d27"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#aa2447d5f2021bfc78a98355c30a24d27">KLFitter::LikelihoodTwoTracks::Initialize</a></div><div class="ttdeci">int Initialize() override</div><div class="ttdoc">Initialize the likelihood for the event. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.cxx:141</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a0fa513e8b194432cb4073b1c66a0fc0fa8bb3850d4d1fb273d49719ee9e847ea9"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fa8bb3850d4d1fb273d49719ee9e847ea9">KLFitter::LikelihoodTwoTracks::parPiMinusTheta</a></div><div class="ttdoc">Second (negative) track theta. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:81</div></div>
<div class="ttc" id="class_k_l_fitter_1_1_likelihood_two_tracks_html_a0fa513e8b194432cb4073b1c66a0fc0fad2fe4e5880ca4661b93c4e54b6c0ad0b"><div class="ttname"><a href="class_k_l_fitter_1_1_likelihood_two_tracks.html#a0fa513e8b194432cb4073b1c66a0fc0fad2fe4e5880ca4661b93c4e54b6c0ad0b">KLFitter::LikelihoodTwoTracks::parPiPlusP</a></div><div class="ttdoc">First (positive) track momentum. </div><div class="ttdef"><b>Definition:</b> LikelihoodTwoTracks.h:79</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>