Files
musrfit/doc/technical/html/PFitterFcn_8cpp_source.html
Gitea Actions 8a8eac55b7 Deploy site
2025-12-27 12:57:44 +00:00

207 lines
26 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>musrfit: /workspace/LMU/musrfit/src/classes/PFitterFcn.cpp 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>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></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 id="projectrow">
<td id="projectalign">
<div id="projectname">musrfit<span id="projectnumber">&#160;1.9.9</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',false,false,'search.php','Search',true);
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){initNavTree('PFitterFcn_8cpp_source.html',''); initResizable(true); });
/* @license-end */
</script>
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">PFitterFcn.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="PFitterFcn_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/***************************************************************************</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"></span> </div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> PFitterFcn.cpp</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"></span> </div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> Author: Andreas Suter</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> e-mail: andreas.suter@psi.ch</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"></span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment">***************************************************************************/</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment">/***************************************************************************</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> * Copyright (C) 2007-2025 by Andreas Suter *</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> * andreas.suter@psi.ch *</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment"> * *</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="comment"> * This program is free software; you can redistribute it and/or modify *</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="comment"> * it under the terms of the GNU General Public License as published by *</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="comment"> * (at your option) any later version. *</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="comment"> * *</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment"> * This program is distributed in the hope that it will be useful, *</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of *</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment"> * GNU General Public License for more details. *</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment"> * *</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="comment"> * You should have received a copy of the GNU General Public License *</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment"> * along with this program; if not, write to the *</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment"> * Free Software Foundation, Inc., *</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"> * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment"> ***************************************************************************/</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="preprocessor">#include &quot;<a class="code" href="PFitterFcn_8h.html">PFitterFcn.h</a>&quot;</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> </div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="comment">// Constructor</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="foldopen" id="foldopen00041" data-start="{" data-end="}">
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="classPFitterFcn.html#aca141b73bdd8ea1648e24e10d873071f"> 41</a></span><a class="code hl_function" href="classPFitterFcn.html#aca141b73bdd8ea1648e24e10d873071f">PFitterFcn::PFitterFcn</a>(<a class="code hl_class" href="classPRunListCollection.html">PRunListCollection</a> *runList, Bool_t useChi2)</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span>{</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <a class="code hl_variable" href="classPFitterFcn.html#ac8bd7bd48c10a805d6d3735106b51d4f">fUseChi2</a> = useChi2;</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> </div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="classPFitterFcn.html#ac8bd7bd48c10a805d6d3735106b51d4f">fUseChi2</a>)</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <a class="code hl_variable" href="classPFitterFcn.html#a6a7c88008d214c406f905e88880eb82c">fUp</a> = 1.0;</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <a class="code hl_variable" href="classPFitterFcn.html#a6a7c88008d214c406f905e88880eb82c">fUp</a> = 0.5;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a> = runList;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span>}</div>
</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span><span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="comment">// Destructor</span></div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="foldopen" id="foldopen00059" data-start="{" data-end="}">
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"><a class="line" href="classPFitterFcn.html#a583614a566b194b6af759a13faee8b16"> 59</a></span><a class="code hl_function" href="classPFitterFcn.html#a583614a566b194b6af759a13faee8b16">PFitterFcn::~PFitterFcn</a>()</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span>{</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span>}</div>
</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span><span class="comment">// operator()</span></div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span><span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="foldopen" id="foldopen00071" data-start="{" data-end="}">
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"><a class="line" href="classPFitterFcn.html#a8d4e0fcd2a1cab6c700167c568dc1a05"> 71</a></span>Double_t <a class="code hl_function" href="classPFitterFcn.html#a8d4e0fcd2a1cab6c700167c568dc1a05">PFitterFcn::operator()</a>(<span class="keyword">const</span> std::vector&lt;Double_t&gt;&amp; par)<span class="keyword"> const</span></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span><span class="keyword"></span>{</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> Double_t value = 0.0;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="classPFitterFcn.html#ac8bd7bd48c10a805d6d3735106b51d4f">fUseChi2</a>) { <span class="comment">// chi square</span></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetSingleHistoChisq(par);</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetSingleHistoRRFChisq(par);</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetAsymmetryChisq(par);</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetAsymmetryRRFChisq(par);</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetAsymmetryBNMRChisq(par);</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetMuMinusChisq(par);</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetNonMusrChisq(par);</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> } <span class="keywordflow">else</span> { <span class="comment">// max likelihood</span></div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetSingleHistoMaximumLikelihood(par);</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetSingleHistoRRFMaximumLikelihood(par);</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetAsymmetryMaximumLikelihood(par);</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetAsymmetryRRFMaximumLikelihood(par);</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetAsymmetryBNMRMaximumLikelihood(par);</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetMuMinusMaximumLikelihood(par);</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> value += <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetNonMusrMaximumLikelihood(par);</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> }</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> </div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">return</span> value;</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span>}</div>
</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> </div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span><span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span><span class="comment">// CalcExpectedChiSquare()</span></div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span><span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="foldopen" id="foldopen00106" data-start="{" data-end="}">
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"><a class="line" href="classPFitterFcn.html#a47dd253617cb0347c5dfe23a3b0bad8e"> 106</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="classPFitterFcn.html#a47dd253617cb0347c5dfe23a3b0bad8e">PFitterFcn::CalcExpectedChiSquare</a>(<span class="keyword">const</span> std::vector&lt;Double_t&gt; &amp;par, Double_t &amp;totalExpectedChisq, std::vector&lt;Double_t&gt; &amp;expectedChisqPerRun)</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span>{</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <span class="comment">// init expected chisq related variables</span></div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> totalExpectedChisq = 0.0;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> expectedChisqPerRun.clear();</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> </div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> Double_t value = 0.0;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="classPFitterFcn.html#ac8bd7bd48c10a805d6d3735106b51d4f">fUseChi2</a>) {</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="comment">// single histo</span></div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">for</span> (UInt_t i=0; i&lt;<a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetNoOfSingleHisto(); i++) {</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> value = <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetSingleRunChisqExpected(par, i); <span class="comment">// calculate the expected chisq for single histo run block &#39;i&#39;</span></div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> expectedChisqPerRun.push_back(value);</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> totalExpectedChisq += value;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> }</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> } <span class="keywordflow">else</span> { <span class="comment">// log max. likelihood</span></div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <span class="comment">// single histo</span></div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">for</span> (UInt_t i=0; i&lt;<a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetNoOfSingleHisto(); i++) {</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> value = <a class="code hl_variable" href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">fRunListCollection</a>-&gt;GetSingleRunMaximumLikelihoodExpected(par, i); <span class="comment">// calculate the expected mlh for single histo run block &#39;i&#39;</span></div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> expectedChisqPerRun.push_back(value);</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> totalExpectedChisq += value;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> }</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> }</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span>}</div>
</div>
<div class="ttc" id="aPFitterFcn_8h_html"><div class="ttname"><a href="PFitterFcn_8h.html">PFitterFcn.h</a></div></div>
<div class="ttc" id="aclassPFitterFcn_html_a0a9887fbd00a8df475cd6127e1f4c80e"><div class="ttname"><a href="classPFitterFcn.html#a0a9887fbd00a8df475cd6127e1f4c80e">PFitterFcn::fRunListCollection</a></div><div class="ttdeci">PRunListCollection * fRunListCollection</div><div class="ttdoc">Pointer to preprocessed muSR data collection.</div><div class="ttdef"><b>Definition</b> <a href="PFitterFcn_8h_source.html#l00168">PFitterFcn.h:168</a></div></div>
<div class="ttc" id="aclassPFitterFcn_html_a47dd253617cb0347c5dfe23a3b0bad8e"><div class="ttname"><a href="classPFitterFcn.html#a47dd253617cb0347c5dfe23a3b0bad8e">PFitterFcn::CalcExpectedChiSquare</a></div><div class="ttdeci">void CalcExpectedChiSquare(const std::vector&lt; Double_t &gt; &amp;par, Double_t &amp;totalExpectedChisq, std::vector&lt; Double_t &gt; &amp;expectedChisqPerRun)</div><div class="ttdoc">Calculates expected χ² (or maxLH) for quality assessment.</div><div class="ttdef"><b>Definition</b> <a href="#l00106">PFitterFcn.cpp:106</a></div></div>
<div class="ttc" id="aclassPFitterFcn_html_a583614a566b194b6af759a13faee8b16"><div class="ttname"><a href="classPFitterFcn.html#a583614a566b194b6af759a13faee8b16">PFitterFcn::~PFitterFcn</a></div><div class="ttdeci">~PFitterFcn()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition</b> <a href="#l00059">PFitterFcn.cpp:59</a></div></div>
<div class="ttc" id="aclassPFitterFcn_html_a6a7c88008d214c406f905e88880eb82c"><div class="ttname"><a href="classPFitterFcn.html#a6a7c88008d214c406f905e88880eb82c">PFitterFcn::fUp</a></div><div class="ttdeci">Double_t fUp</div><div class="ttdoc">Error definition: 1.0 for χ² (1σ = Δχ²=1), 0.5 for maxLH (1σ = ΔmaxLH=0.5)</div><div class="ttdef"><b>Definition</b> <a href="PFitterFcn_8h_source.html#l00166">PFitterFcn.h:166</a></div></div>
<div class="ttc" id="aclassPFitterFcn_html_a8d4e0fcd2a1cab6c700167c568dc1a05"><div class="ttname"><a href="classPFitterFcn.html#a8d4e0fcd2a1cab6c700167c568dc1a05">PFitterFcn::operator()</a></div><div class="ttdeci">Double_t operator()(const std::vector&lt; Double_t &gt; &amp;par) const</div><div class="ttdoc">Evaluates objective function for given parameters.</div><div class="ttdef"><b>Definition</b> <a href="#l00071">PFitterFcn.cpp:71</a></div></div>
<div class="ttc" id="aclassPFitterFcn_html_ac8bd7bd48c10a805d6d3735106b51d4f"><div class="ttname"><a href="classPFitterFcn.html#ac8bd7bd48c10a805d6d3735106b51d4f">PFitterFcn::fUseChi2</a></div><div class="ttdeci">Bool_t fUseChi2</div><div class="ttdoc">Fit mode flag: true = χ² minimization, false = max log-likelihood.</div><div class="ttdef"><b>Definition</b> <a href="PFitterFcn_8h_source.html#l00167">PFitterFcn.h:167</a></div></div>
<div class="ttc" id="aclassPFitterFcn_html_aca141b73bdd8ea1648e24e10d873071f"><div class="ttname"><a href="classPFitterFcn.html#aca141b73bdd8ea1648e24e10d873071f">PFitterFcn::PFitterFcn</a></div><div class="ttdeci">PFitterFcn(PRunListCollection *runList, Bool_t useChi2)</div><div class="ttdoc">Constructor for objective function.</div><div class="ttdef"><b>Definition</b> <a href="#l00041">PFitterFcn.cpp:41</a></div></div>
<div class="ttc" id="aclassPRunListCollection_html"><div class="ttname"><a href="classPRunListCollection.html">PRunListCollection</a></div><div class="ttdoc">Manager class for all processed μSR run data during fitting.</div><div class="ttdef"><b>Definition</b> <a href="PRunListCollection_8h_source.html#l00140">PRunListCollection.h:141</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_018e9aafb459e6e1a4953404cb0c0b1d.html">classes</a></li><li class="navelem"><a class="el" href="PFitterFcn_8cpp.html">PFitterFcn.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>
</html>