Files
musrfit/doc/technical/html/classPFitter.html
2026-10-29 15:47:56 +00:00

2306 lines
140 KiB
HTML

<!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.17.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>musrfit: PFitter Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="codefolding.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="cookie.js"></script>
<script type="module">
import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.esm.min.mjs';
const theme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'default';
mermaid.initialize({ startOnLoad: true, theme: theme });
</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.12.1</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.17.0 -->
<script type="text/javascript">
document.addEventListener('DOMContentLoaded', codefold.init);
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
document.addEventListener('DOMContentLoaded', () => {
initMenu('',true);
});
</script>
<div id="main-nav-mobile">
</div><!-- main-nav-mobile -->
<div id="main-nav">
<ul class="sm sm-dox" id="main-menu">
<li id="searchBoxPos2" style="float:right">
</li>
</ul>
</div><!-- main-nav -->
</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">
document.addEventListener('DOMContentLoaded',() => { initNavTree('classPFitter.html','','classPFitter-members'); });
</script>
<div id="container">
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">PFitter Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="PFitter_8h_source.html">PFitter.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for PFitter:</div>
<div class="dyncontent">
<div class="center"><img src="classPFitter__coll__graph.png" border="0" usemap="#aPFitter_coll__map" loading="lazy" alt="Collaboration graph"/></div>
<map name="aPFitter_coll__map" id="aPFitter_coll__map">
<area shape="rect" title=" " alt="" coords="1114,145,1176,173"/>
<area shape="rect" href="classPMsrHandler.html" title="MSR file parser and manager for the musrfit framework." alt="" coords="318,105,418,133"/>
<area shape="poly" title=" " alt="" coords="434,123,726,147,849,152,971,154,1114,156,1113,161,971,159,848,157,726,152,433,128"/>
<area shape="rect" href="classPRunListCollection.html" title="Manager class for all processed μSR run data during fitting." alt="" coords="811,105,947,133"/>
<area shape="poly" title=" " alt="" coords="434,116,811,116,811,122,434,122"/>
<area shape="rect" href="classPRunDataHandler.html" title="Raw data file reader and format converter for μSR data." alt="" coords="573,43,702,70"/>
<area shape="poly" title=" " alt="" coords="433,102,574,68,576,73,434,107"/>
<area shape="rect" href="structPStartupOptions.html" title=" " alt="" coords="21,21,142,49"/>
<area shape="poly" title=" " alt="" coords="158,39,222,50,288,69,321,85,349,103,346,107,318,89,286,74,221,55,157,44"/>
<area shape="rect" href="classPMsrGlobalBlock.html" title=" " alt="" coords="19,77,144,105"/>
<area shape="poly" title=" " alt="" coords="160,96,318,112,317,117,159,101"/>
<area shape="rect" href="structPMsrFourierStructure.html" title=" " alt="" coords="7,133,156,161"/>
<area shape="poly" title=" " alt="" coords="171,147,228,145,286,139,322,131,323,136,287,144,229,150,171,152"/>
<area shape="rect" href="structPMsrStatisticStructure.html" title=" " alt="" coords="5,189,158,217"/>
<area shape="poly" title=" " alt="" coords="173,200,230,192,286,176,323,155,351,131,355,135,326,160,288,181,231,197,174,205"/>
<area shape="poly" title=" " alt="" coords="962,129,1114,152,1113,157,962,134"/>
<area shape="poly" title=" " alt="" coords="709,72,823,102,822,107,708,77"/>
<area shape="rect" href="structPAny2ManyInfo.html" title=" " alt="" coords="311,5,426,33"/>
<area shape="poly" title=" " alt="" coords="442,27,573,45,572,50,441,32"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-pub-methods" class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a981b523e5ca5f7cd66e01e2c45135d2b" id="r_a981b523e5ca5f7cd66e01e2c45135d2b"><td class="memItemLeft">&#160;</td><td class="memItemRight"><a class="el" href="#a981b523e5ca5f7cd66e01e2c45135d2b">PFitter</a> (<a class="el" href="classPMsrHandler.html">PMsrHandler</a> *runInfo, <a class="el" href="classPRunListCollection.html">PRunListCollection</a> *runListCollection, Bool_t chisq_only=false, Bool_t yaml_out=false)</td></tr>
<tr class="memdesc:a981b523e5ca5f7cd66e01e2c45135d2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor for the fitting engine. <br /></td></tr>
<tr class="memitem:a711ce9d116c066221fc72527f598abab" id="r_a711ce9d116c066221fc72527f598abab"><td class="memItemLeft">virtual&#160;</td><td class="memItemRight"><a class="el" href="#a711ce9d116c066221fc72527f598abab">~PFitter</a> ()</td></tr>
<tr class="memdesc:a711ce9d116c066221fc72527f598abab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor - Cleans up dynamically allocated resources. <br /></td></tr>
<tr class="memitem:a11e3f97aa99203a610016a12ecdf241d" id="r_a11e3f97aa99203a610016a12ecdf241d"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a11e3f97aa99203a610016a12ecdf241d">IsValid</a> ()</td></tr>
<tr class="memitem:a742aeacd1ce2f018b42d6283d6229623" id="r_a742aeacd1ce2f018b42d6283d6229623"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a742aeacd1ce2f018b42d6283d6229623">IsScanOnly</a> ()</td></tr>
<tr class="memitem:a21a2b58e59bc5a8920f41b618855319a" id="r_a21a2b58e59bc5a8920f41b618855319a"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a21a2b58e59bc5a8920f41b618855319a">HasConverged</a> ()</td></tr>
<tr class="memitem:a399447637761beccd19714caec025339" id="r_a399447637761beccd19714caec025339"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a399447637761beccd19714caec025339">DoFit</a> ()</td></tr>
<tr class="memdesc:a399447637761beccd19714caec025339"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main entry point for executing the fit. <br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-pri-methods" class="groupheader"><a id="pri-methods" name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:a8e9e7d418fa0adaf0f75581b8409d5e9" id="r_a8e9e7d418fa0adaf0f75581b8409d5e9"><td class="memItemLeft">void&#160;</td><td class="memItemRight"><a class="el" href="#a8e9e7d418fa0adaf0f75581b8409d5e9">GetPhaseParams</a> ()</td></tr>
<tr class="memdesc:a8e9e7d418fa0adaf0f75581b8409d5e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identifies which parameters represent phase angles. <br /></td></tr>
<tr class="memitem:a50cc50f520008b475796800c61127827" id="r_a50cc50f520008b475796800c61127827"><td class="memItemLeft"><a class="el" href="PMusr_8h.html#aa9c3d2033e27c38e4dbb98e26f1c4e54">PIntVector</a>&#160;</td><td class="memItemRight"><a class="el" href="#a50cc50f520008b475796800c61127827">GetParFromFun</a> (const TString funStr)</td></tr>
<tr class="memdesc:a50cc50f520008b475796800c61127827"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extracts parameter numbers from a FUNCTIONS block entry. <br /></td></tr>
<tr class="memitem:aae4edca748b0934d6ea96fe9db7f83f2" id="r_aae4edca748b0934d6ea96fe9db7f83f2"><td class="memItemLeft"><a class="el" href="PMusr_8h.html#aa9c3d2033e27c38e4dbb98e26f1c4e54">PIntVector</a>&#160;</td><td class="memItemRight"><a class="el" href="#aae4edca748b0934d6ea96fe9db7f83f2">GetParFromMap</a> (const TString mapStr)</td></tr>
<tr class="memdesc:aae4edca748b0934d6ea96fe9db7f83f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extracts parameter numbers from a map reference. <br /></td></tr>
<tr class="memitem:ac3961503e41b84dc8cc683ce274d2300" id="r_ac3961503e41b84dc8cc683ce274d2300"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#ac3961503e41b84dc8cc683ce274d2300">CheckCommands</a> ()</td></tr>
<tr class="memdesc:ac3961503e41b84dc8cc683ce274d2300"><td class="mdescLeft">&#160;</td><td class="mdescRight">Validates COMMANDS block syntax and builds execution queue. <br /></td></tr>
<tr class="memitem:a822fe28451f360fcda2aa7a334a63b16" id="r_a822fe28451f360fcda2aa7a334a63b16"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a822fe28451f360fcda2aa7a334a63b16">SetParameters</a> ()</td></tr>
<tr class="memdesc:a822fe28451f360fcda2aa7a334a63b16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transfers MSR parameters to Minuit2 parameter state. <br /></td></tr>
<tr class="memitem:a069a60f7cbb859b0bc0f4b63168dbfde" id="r_a069a60f7cbb859b0bc0f4b63168dbfde"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a069a60f7cbb859b0bc0f4b63168dbfde">ExecuteContours</a> ()</td></tr>
<tr class="memdesc:a069a60f7cbb859b0bc0f4b63168dbfde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes CONTOURS command (2D error contours). <br /></td></tr>
<tr class="memitem:acc32e99737b3abd781f06da5649ebd35" id="r_acc32e99737b3abd781f06da5649ebd35"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#acc32e99737b3abd781f06da5649ebd35">ExecuteFitRange</a> (UInt_t lineNo)</td></tr>
<tr class="memdesc:acc32e99737b3abd781f06da5649ebd35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes FIT_RANGE command (optimal time-window search). <br /></td></tr>
<tr class="memitem:ad40bd35fd795fa4be1e556a6042f4f88" id="r_ad40bd35fd795fa4be1e556a6042f4f88"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#ad40bd35fd795fa4be1e556a6042f4f88">ExecuteFix</a> (UInt_t lineNo)</td></tr>
<tr class="memdesc:ad40bd35fd795fa4be1e556a6042f4f88"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes FIX command (freeze parameters). <br /></td></tr>
<tr class="memitem:a9eb9b1257133ddacf57332dbca711943" id="r_a9eb9b1257133ddacf57332dbca711943"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a9eb9b1257133ddacf57332dbca711943">ExecuteHesse</a> ()</td></tr>
<tr class="memdesc:a9eb9b1257133ddacf57332dbca711943"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes HESSE command (calculate error matrix). <br /></td></tr>
<tr class="memitem:ababcfdb8205db798c84562afe70bad91" id="r_ababcfdb8205db798c84562afe70bad91"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#ababcfdb8205db798c84562afe70bad91">ExecuteMigrad</a> ()</td></tr>
<tr class="memdesc:ababcfdb8205db798c84562afe70bad91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes MIGRAD command (gradient descent minimization). <br /></td></tr>
<tr class="memitem:ab6523d1625c35a57caed401f9348c5ff" id="r_ab6523d1625c35a57caed401f9348c5ff"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#ab6523d1625c35a57caed401f9348c5ff">ExecuteMinimize</a> ()</td></tr>
<tr class="memdesc:ab6523d1625c35a57caed401f9348c5ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes MINIMIZE command (automatic algorithm selection). <br /></td></tr>
<tr class="memitem:aad0102694c267a1ddf497e6bc7cc9646" id="r_aad0102694c267a1ddf497e6bc7cc9646"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#aad0102694c267a1ddf497e6bc7cc9646">ExecuteMinos</a> ()</td></tr>
<tr class="memdesc:aad0102694c267a1ddf497e6bc7cc9646"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes MINOS command (asymmetric error analysis). <br /></td></tr>
<tr class="memitem:a08e3d9eb88730d1d4e9ab4b7d9a2b708" id="r_a08e3d9eb88730d1d4e9ab4b7d9a2b708"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a08e3d9eb88730d1d4e9ab4b7d9a2b708">ExecutePlot</a> ()</td></tr>
<tr class="memdesc:a08e3d9eb88730d1d4e9ab4b7d9a2b708"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes PLOT command (visualize scan/contour results). <br /></td></tr>
<tr class="memitem:a23f49efc107e75d189c2163aaffd406f" id="r_a23f49efc107e75d189c2163aaffd406f"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a23f49efc107e75d189c2163aaffd406f">ExecutePrintLevel</a> (UInt_t lineNo)</td></tr>
<tr class="memdesc:a23f49efc107e75d189c2163aaffd406f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes PRINT command (set verbosity level). <br /></td></tr>
<tr class="memitem:aab691691ca5d7cee66a16043c5c41940" id="r_aab691691ca5d7cee66a16043c5c41940"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#aab691691ca5d7cee66a16043c5c41940">ExecuteRelease</a> (UInt_t lineNo)</td></tr>
<tr class="memdesc:aab691691ca5d7cee66a16043c5c41940"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes RELEASE command (unfreeze parameters). <br /></td></tr>
<tr class="memitem:ac3094e6b657951d8d4a5ad934c2eb31a" id="r_ac3094e6b657951d8d4a5ad934c2eb31a"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#ac3094e6b657951d8d4a5ad934c2eb31a">ExecuteRestore</a> ()</td></tr>
<tr class="memdesc:ac3094e6b657951d8d4a5ad934c2eb31a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes RESTORE command (reload saved parameters). <br /></td></tr>
<tr class="memitem:a5f91281f9274f4dfe192a89e5b8b1069" id="r_a5f91281f9274f4dfe192a89e5b8b1069"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a5f91281f9274f4dfe192a89e5b8b1069">ExecuteScan</a> ()</td></tr>
<tr class="memdesc:a5f91281f9274f4dfe192a89e5b8b1069"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes SCAN command (1D parameter space scan). <br /></td></tr>
<tr class="memitem:a631cacca453cf66db5b944437cf507dd" id="r_a631cacca453cf66db5b944437cf507dd"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a631cacca453cf66db5b944437cf507dd">ExecuteSave</a> (Bool_t first)</td></tr>
<tr class="memdesc:a631cacca453cf66db5b944437cf507dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes SAVE command (store current parameters). <br /></td></tr>
<tr class="memitem:a7a08f7f6e29868337846a4d5f984a693" id="r_a7a08f7f6e29868337846a4d5f984a693"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a7a08f7f6e29868337846a4d5f984a693">ExecuteSimplex</a> ()</td></tr>
<tr class="memdesc:a7a08f7f6e29868337846a4d5f984a693"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes SIMPLEX command (non-gradient minimization). <br /></td></tr>
<tr class="memitem:ad62d0c925845fc266a07d26e12f28507" id="r_ad62d0c925845fc266a07d26e12f28507"><td class="memItemLeft">void&#160;</td><td class="memItemRight"><a class="el" href="#ad62d0c925845fc266a07d26e12f28507">PrepareSector</a> (<a class="el" href="PMusr_8h.html#ae689e7a4bf8a9c0ecf65bcd7d4a0ebde">PDoubleVector</a> &amp;param, <a class="el" href="PMusr_8h.html#ae689e7a4bf8a9c0ecf65bcd7d4a0ebde">PDoubleVector</a> &amp;error)</td></tr>
<tr class="memdesc:ad62d0c925845fc266a07d26e12f28507"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prepares sector χ² analysis data structures. <br /></td></tr>
<tr class="memitem:a85b2a235f516f062d62e295f08ffdf60" id="r_a85b2a235f516f062d62e295f08ffdf60"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a85b2a235f516f062d62e295f08ffdf60">ExecuteSector</a> (std::ofstream &amp;fout)</td></tr>
<tr class="memdesc:a85b2a235f516f062d62e295f08ffdf60"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes SECTOR command (time-dependent χ² analysis). <br /></td></tr>
<tr class="memitem:a313a48146cbacbf181a56838d5c52087" id="r_a313a48146cbacbf181a56838d5c52087"><td class="memItemLeft">Double_t&#160;</td><td class="memItemRight"><a class="el" href="#a313a48146cbacbf181a56838d5c52087">MilliTime</a> ()</td></tr>
<tr class="memdesc:a313a48146cbacbf181a56838d5c52087"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns current time in milliseconds. <br /></td></tr>
<tr class="memitem:a65dbfc5c91cea7c5d4577f14cf6e371b" id="r_a65dbfc5c91cea7c5d4577f14cf6e371b"><td class="memItemLeft"><a class="el" href="PMusr_8h.html#ae689e7a4bf8a9c0ecf65bcd7d4a0ebde">PDoubleVector</a>&#160;</td><td class="memItemRight"><a class="el" href="#a65dbfc5c91cea7c5d4577f14cf6e371b">ParamRound</a> (const <a class="el" href="PMusr_8h.html#ae689e7a4bf8a9c0ecf65bcd7d4a0ebde">PDoubleVector</a> &amp;par, const <a class="el" href="PMusr_8h.html#ae689e7a4bf8a9c0ecf65bcd7d4a0ebde">PDoubleVector</a> &amp;err, Bool_t &amp;ok)</td></tr>
<tr class="memdesc:a65dbfc5c91cea7c5d4577f14cf6e371b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rounds parameters for output with appropriate precision. <br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-pri-attribs" class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a18224fc86af43dcac49a5353ebeca614" id="r_a18224fc86af43dcac49a5353ebeca614"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a18224fc86af43dcac49a5353ebeca614">fIsValid</a></td></tr>
<tr class="memdesc:a18224fc86af43dcac49a5353ebeca614"><td class="mdescLeft">&#160;</td><td class="mdescRight">Overall validity flag: true if fitter initialized successfully. <br /></td></tr>
<tr class="memitem:a6f97d44fb0b291f7af9d01579c0e406c" id="r_a6f97d44fb0b291f7af9d01579c0e406c"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a6f97d44fb0b291f7af9d01579c0e406c">fIsScanOnly</a></td></tr>
<tr class="memdesc:a6f97d44fb0b291f7af9d01579c0e406c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scan mode flag: true if only parameter scans requested (no minimization). <br /></td></tr>
<tr class="memitem:ac41618f0b66f7ef4bfed953e9fea79bd" id="r_ac41618f0b66f7ef4bfed953e9fea79bd"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#ac41618f0b66f7ef4bfed953e9fea79bd">fConverged</a></td></tr>
<tr class="memdesc:ac41618f0b66f7ef4bfed953e9fea79bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convergence flag: true if fit converged to a valid minimum. <br /></td></tr>
<tr class="memitem:ac6b16f7adb7f4ebff7c6348aaa65f5b4" id="r_ac6b16f7adb7f4ebff7c6348aaa65f5b4"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#ac6b16f7adb7f4ebff7c6348aaa65f5b4">fChisqOnly</a></td></tr>
<tr class="memdesc:ac6b16f7adb7f4ebff7c6348aaa65f5b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Evaluation-only flag: true to calculate χ² without fitting. <br /></td></tr>
<tr class="memitem:a56ae801deb287de03641d87b6461d9f8" id="r_a56ae801deb287de03641d87b6461d9f8"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a56ae801deb287de03641d87b6461d9f8">fYamlOut</a></td></tr>
<tr class="memdesc:a56ae801deb287de03641d87b6461d9f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Output flag: true to generate YAML output file (MINUIT2.OUTPUT → yaml). <br /></td></tr>
<tr class="memitem:aec873931299b3bfab3b0d07d3f3cc719" id="r_aec873931299b3bfab3b0d07d3f3cc719"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#aec873931299b3bfab3b0d07d3f3cc719">fUseChi2</a></td></tr>
<tr class="memdesc:aec873931299b3bfab3b0d07d3f3cc719"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fit mode: true = χ² minimization, false = log-max-likelihood. <br /></td></tr>
<tr class="memitem:a62a705860d144d6f0184a9a907c83678" id="r_a62a705860d144d6f0184a9a907c83678"><td class="memItemLeft">UInt_t&#160;</td><td class="memItemRight"><a class="el" href="#a62a705860d144d6f0184a9a907c83678">fPrintLevel</a></td></tr>
<tr class="memdesc:a62a705860d144d6f0184a9a907c83678"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verbosity level: 0=quiet, 1=normal, 2=verbose (Minuit output). <br /></td></tr>
<tr class="memitem:a14588efda750524a6dd0c85a13199919" id="r_a14588efda750524a6dd0c85a13199919"><td class="memItemLeft">UInt_t&#160;</td><td class="memItemRight"><a class="el" href="#a14588efda750524a6dd0c85a13199919">fStrategy</a></td></tr>
<tr class="memdesc:a14588efda750524a6dd0c85a13199919"><td class="mdescLeft">&#160;</td><td class="mdescRight">Minuit2 strategy: 0=fast/low-accuracy, 1=default, 2=careful/high-accuracy. <br /></td></tr>
<tr class="memitem:aa53dfefa0389c5e3e093bb57bdef3f36" id="r_aa53dfefa0389c5e3e093bb57bdef3f36"><td class="memItemLeft"><a class="el" href="classPMsrHandler.html">PMsrHandler</a> *&#160;</td><td class="memItemRight"><a class="el" href="#aa53dfefa0389c5e3e093bb57bdef3f36">fRunInfo</a></td></tr>
<tr class="memdesc:aa53dfefa0389c5e3e093bb57bdef3f36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to MSR file handler (parameters, theory, commands). <br /></td></tr>
<tr class="memitem:a71fa2a64e6574b4582b21d4efe81991a" id="r_a71fa2a64e6574b4582b21d4efe81991a"><td class="memItemLeft"><a class="el" href="classPRunListCollection.html">PRunListCollection</a> *&#160;</td><td class="memItemRight"><a class="el" href="#a71fa2a64e6574b4582b21d4efe81991a">fRunListCollection</a></td></tr>
<tr class="memdesc:a71fa2a64e6574b4582b21d4efe81991a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to preprocessed run data collection. <br /></td></tr>
<tr class="memitem:aa2c27c84275a04414e67c8bdeaf6b3d6" id="r_aa2c27c84275a04414e67c8bdeaf6b3d6"><td class="memItemLeft"><a class="el" href="PMusr_8h.html#ab08a4f791c8d0001ed434bae845fe95c">PMsrParamList</a>&#160;</td><td class="memItemRight"><a class="el" href="#aa2c27c84275a04414e67c8bdeaf6b3d6">fParams</a></td></tr>
<tr class="memdesc:aa2c27c84275a04414e67c8bdeaf6b3d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy of parameter list from MSR file. <br /></td></tr>
<tr class="memitem:a7f894783312fb9a16e92b8c34141d734" id="r_a7f894783312fb9a16e92b8c34141d734"><td class="memItemLeft"><a class="el" href="PMusr_8h.html#a88b0f32c26fd54bdacfbef77212d951d">PMsrLines</a>&#160;</td><td class="memItemRight"><a class="el" href="#a7f894783312fb9a16e92b8c34141d734">fCmdLines</a></td></tr>
<tr class="memdesc:a7f894783312fb9a16e92b8c34141d734"><td class="mdescLeft">&#160;</td><td class="mdescRight">Raw command lines from MSR COMMANDS block. <br /></td></tr>
<tr class="memitem:a2aa78466f83e1a7329f7efcbdc217b4a" id="r_a2aa78466f83e1a7329f7efcbdc217b4a"><td class="memItemLeft"><a class="el" href="PMusr_8h.html#ace15e033fc9afd308f9fe173c582cf60">PIntPairVector</a>&#160;</td><td class="memItemRight"><a class="el" href="#a2aa78466f83e1a7329f7efcbdc217b4a">fCmdList</a></td></tr>
<tr class="memdesc:a2aa78466f83e1a7329f7efcbdc217b4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parsed commands: first=command ID, second=line number. <br /></td></tr>
<tr class="memitem:ae2bc81d1e8f0e54d3bededf879a5daa5" id="r_ae2bc81d1e8f0e54d3bededf879a5daa5"><td class="memItemLeft">std::unique_ptr&lt; <a class="el" href="classPFitterFcn.html">PFitterFcn</a> &gt;&#160;</td><td class="memItemRight"><a class="el" href="#ae2bc81d1e8f0e54d3bededf879a5daa5">fFitterFcn</a></td></tr>
<tr class="memdesc:ae2bc81d1e8f0e54d3bededf879a5daa5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Objective function for Minuit2 minimization. <br /></td></tr>
<tr class="memitem:ab9f144668483d590a54dace8fdbd62ed" id="r_ab9f144668483d590a54dace8fdbd62ed"><td class="memItemLeft">ROOT::Minuit2::MnUserParameters&#160;</td><td class="memItemRight"><a class="el" href="#ab9f144668483d590a54dace8fdbd62ed">fMnUserParams</a></td></tr>
<tr class="memdesc:ab9f144668483d590a54dace8fdbd62ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Minuit2 parameter state (values, errors, limits). <br /></td></tr>
<tr class="memitem:abd3b95f1716f479adb1bca83ddc19092" id="r_abd3b95f1716f479adb1bca83ddc19092"><td class="memItemLeft">std::unique_ptr&lt; ROOT::Minuit2::FunctionMinimum &gt;&#160;</td><td class="memItemRight"><a class="el" href="#abd3b95f1716f479adb1bca83ddc19092">fFcnMin</a></td></tr>
<tr class="memdesc:abd3b95f1716f479adb1bca83ddc19092"><td class="mdescLeft">&#160;</td><td class="mdescRight">Minuit2 function minimum result. <br /></td></tr>
<tr class="memitem:a691cf32e8aa08e70159450e3a3dc597b" id="r_a691cf32e8aa08e70159450e3a3dc597b"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a691cf32e8aa08e70159450e3a3dc597b">fScanAll</a></td></tr>
<tr class="memdesc:a691cf32e8aa08e70159450e3a3dc597b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multi-parameter scan flag: false=1D scan, true=2D scan (not fully implemented). <br /></td></tr>
<tr class="memitem:a3561550a7d70378a1b36971333d0d7a5" id="r_a3561550a7d70378a1b36971333d0d7a5"><td class="memItemLeft">UInt_t&#160;</td><td class="memItemRight"><a class="el" href="#a3561550a7d70378a1b36971333d0d7a5">fScanParameter</a> [2]</td></tr>
<tr class="memdesc:a3561550a7d70378a1b36971333d0d7a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parameter indices: [0]=primary scan/contour, [1]=secondary (contours only). <br /></td></tr>
<tr class="memitem:a0f965880a3bd8cb7489fedca61c45201" id="r_a0f965880a3bd8cb7489fedca61c45201"><td class="memItemLeft">UInt_t&#160;</td><td class="memItemRight"><a class="el" href="#a0f965880a3bd8cb7489fedca61c45201">fScanNoPoints</a></td></tr>
<tr class="memdesc:a0f965880a3bd8cb7489fedca61c45201"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of scan/contour evaluation points (default=41). <br /></td></tr>
<tr class="memitem:a94301c0e357ffb912db6380e2dd1a76a" id="r_a94301c0e357ffb912db6380e2dd1a76a"><td class="memItemLeft">Double_t&#160;</td><td class="memItemRight"><a class="el" href="#a94301c0e357ffb912db6380e2dd1a76a">fScanLow</a></td></tr>
<tr class="memdesc:a94301c0e357ffb912db6380e2dd1a76a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scan lower bound: 0.0 = auto (2σ below current value). <br /></td></tr>
<tr class="memitem:a15110762601d24e076e48c79ef056d16" id="r_a15110762601d24e076e48c79ef056d16"><td class="memItemLeft">Double_t&#160;</td><td class="memItemRight"><a class="el" href="#a15110762601d24e076e48c79ef056d16">fScanHigh</a></td></tr>
<tr class="memdesc:a15110762601d24e076e48c79ef056d16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scan upper bound: 0.0 = auto (2σ above current value). <br /></td></tr>
<tr class="memitem:ab156ab2b66ed243065045e47ea8d5762" id="r_ab156ab2b66ed243065045e47ea8d5762"><td class="memItemLeft"><a class="el" href="PMusr_8h.html#a93e3841e16074fd3c7648d8fc7b742f4">PDoublePairVector</a>&#160;</td><td class="memItemRight"><a class="el" href="#ab156ab2b66ed243065045e47ea8d5762">fScanData</a></td></tr>
<tr class="memdesc:ab156ab2b66ed243065045e47ea8d5762"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scan results: (parameter_value, χ²) pairs. <br /></td></tr>
<tr class="memitem:a0d49c71cedfb96367f8167877beba69d" id="r_a0d49c71cedfb96367f8167877beba69d"><td class="memItemLeft"><a class="el" href="PMusr_8h.html#a93e3841e16074fd3c7648d8fc7b742f4">PDoublePairVector</a>&#160;</td><td class="memItemRight"><a class="el" href="#a0d49c71cedfb96367f8167877beba69d">fOriginalFitRange</a></td></tr>
<tr class="memdesc:a0d49c71cedfb96367f8167877beba69d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Original fit ranges per run (saved for FIT_RANGE command). <br /></td></tr>
<tr class="memitem:a26ccf4d18cb80457389162eaa5af8729" id="r_a26ccf4d18cb80457389162eaa5af8729"><td class="memItemLeft"><a class="el" href="PMusr_8h.html#ae50e503cc0f1bbc1fda5b86735ea9983">PStringVector</a>&#160;</td><td class="memItemRight"><a class="el" href="#a26ccf4d18cb80457389162eaa5af8729">fElapsedTime</a></td></tr>
<tr class="memdesc:a26ccf4d18cb80457389162eaa5af8729"><td class="mdescLeft">&#160;</td><td class="mdescRight">Timing information for each fit command. <br /></td></tr>
<tr class="memitem:a52f438ddd04f6d220d6777c589495c9c" id="r_a52f438ddd04f6d220d6777c589495c9c"><td class="memItemLeft">Bool_t&#160;</td><td class="memItemRight"><a class="el" href="#a52f438ddd04f6d220d6777c589495c9c">fSectorFlag</a></td></tr>
<tr class="memdesc:a52f438ddd04f6d220d6777c589495c9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">SECTOR command present flag. <br /></td></tr>
<tr class="memitem:a81779d1412e22554f2656e28b9692c23" id="r_a81779d1412e22554f2656e28b9692c23"><td class="memItemLeft">std::vector&lt; <a class="el" href="classPSectorChisq.html">PSectorChisq</a> &gt;&#160;</td><td class="memItemRight"><a class="el" href="#a81779d1412e22554f2656e28b9692c23">fSector</a></td></tr>
<tr class="memdesc:a81779d1412e22554f2656e28b9692c23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sector analysis results (χ² vs. time windows). <br /></td></tr>
<tr class="memitem:ad5838c829ba15d41f95a8c452e380028" id="r_ad5838c829ba15d41f95a8c452e380028"><td class="memItemLeft">std::vector&lt; bool &gt;&#160;</td><td class="memItemRight"><a class="el" href="#ad5838c829ba15d41f95a8c452e380028">fPhase</a></td></tr>
<tr class="memdesc:ad5838c829ba15d41f95a8c452e380028"><td class="mdescLeft">&#160;</td><td class="mdescRight">Phase parameter flags: true if parameter is a phase angle. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Main fitting engine interfacing with ROOT Minuit2.</p>
<p><a class="el" href="classPFitter.html">PFitter</a> orchestrates the entire fitting process for musrfit:</p><ul>
<li>Initializes Minuit2 with parameters from MSR file</li>
<li>Executes COMMANDS block directives (MIGRAD, HESSE, MINOS, etc.)</li>
<li>Manages parameter fixing, releasing, and boundaries</li>
<li>Performs error analysis (Hessian, MINOS)</li>
<li>Conducts parameter scans and contour plots</li>
<li>Calculates sector χ² for time-window analysis</li>
<li>Generates fit output and statistics</li>
</ul>
<p><b>Fitting workflow:</b></p><ol type="1">
<li>Initialize parameters and set boundaries</li>
<li>Execute COMMANDS block sequentially:<ul>
<li>MIGRAD: Find minimum using gradient descent</li>
<li>HESSE: Calculate symmetric errors from covariance matrix</li>
<li>MINOS: Calculate asymmetric errors (optional, slower)</li>
<li>SAVE: Save parameter state</li>
</ul>
</li>
<li>Update MSR file with fitted parameters and statistics</li>
</ol>
<p><b>Minimization modes:</b></p><ul>
<li><b>χ² minimization:</b> Standard least-squares fitting</li>
<li><b>Maximum likelihood:</b> Poisson statistics (better for low counts)</li>
</ul>
<p><b>Example COMMANDS block:</b> </p><div class="fragment"><div class="line">COMMANDS</div>
<div class="line">SET PRINT 1</div>
<div class="line">MIGRAD</div>
<div class="line">MINOS</div>
<div class="line">SAVE</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00256">256</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
</div><a name="doc-constructors" id="doc-constructors"></a><h2 id="header-doc-constructors" class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a981b523e5ca5f7cd66e01e2c45135d2b" name="a981b523e5ca5f7cd66e01e2c45135d2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a981b523e5ca5f7cd66e01e2c45135d2b">&#9670;&#160;</a></span>PFitter()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">PFitter::PFitter </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classPMsrHandler.html">PMsrHandler</a> *</td> <td class="paramname"><span class="paramname"><em>runInfo</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classPRunListCollection.html">PRunListCollection</a> *</td> <td class="paramname"><span class="paramname"><em>runListCollection</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Bool_t</td> <td class="paramname"><span class="paramname"><em>chisq_only</em></span><span class="paramdefsep"> = </span><span class="paramdefval">false</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Bool_t</td> <td class="paramname"><span class="paramname"><em>yaml_out</em></span><span class="paramdefsep"> = </span><span class="paramdefval">false</span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor for the fitting engine. </p>
<p>Constructor for fitting engine.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">runInfo</td><td>Pointer to MSR handler containing fit configuration </td></tr>
<tr><td class="paramname">runListCollection</td><td>Pointer to collection of data runs to fit </td></tr>
<tr><td class="paramname">chisq_only</td><td>If true, only calculate χ² without fitting </td></tr>
<tr><td class="paramname">yaml_out</td><td>If true, generate YAML output file with fit results</td></tr>
</table>
</dd>
</dl>
<p>Initializes the fitter with MSR configuration and preprocessed data. Sets up the fitting environment including:</p><ul>
<li>Parameter lists and command queues</li>
<li>Fit mode (χ² vs. likelihood)</li>
<li>Strategy and print level defaults</li>
<li>Original fit ranges for RANGE commands</li>
<li>Phase parameter identification</li>
</ul>
<p>The constructor validates the COMMANDS block and creates the objective function (<a class="el" href="classPFitterFcn.html" title="Objective function interface for ROOT Minuit2 minimization.">PFitterFcn</a>) but does not start the fit. Call <a class="el" href="#a399447637761beccd19714caec025339" title="Main entry point for executing the fit.">DoFit()</a> to execute.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">runInfo</td><td>Pointer to MSR file handler containing fit configuration </td></tr>
<tr><td class="paramname">runListCollection</td><td>Pointer to preprocessed data collection </td></tr>
<tr><td class="paramname">chisq_only</td><td>If true, only evaluate χ² without fitting (useful for validation) </td></tr>
<tr><td class="paramname">yaml_out</td><td>If true, generate YAML output file with fit results</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>Sets fIsValid = false if command validation fails. Check <a class="el" href="#a11e3f97aa99203a610016a12ecdf241d">IsValid()</a> before <a class="el" href="#a399447637761beccd19714caec025339" title="Main entry point for executing the fit.">DoFit()</a>.</dd></dl>
<dl class="section user"><dt>Initialization sequence:</dt><dd><ol type="1">
<li>Copy parameters and commands from MSR handler</li>
<li>Store original fit ranges (for FIT_RANGE command)</li>
<li>Parse and validate COMMANDS block</li>
<li>Identify phase parameters (for angle wrapping)</li>
<li>Create objective function interface </li>
</ol>
</dd></dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l00289">289</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8h_source.html#l00298">fChisqOnly</a>, <a class="el" href="PFitter_8h_source.html#l00311">fCmdLines</a>, <a class="el" href="PFitter_8h_source.html#l00297">fConverged</a>, <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PFitter_8h_source.html#l00296">fIsScanOnly</a>, <a class="el" href="PFitter_8h_source.html#l00327">fOriginalFitRange</a>, <a class="el" href="PFitter_8h_source.html#l00309">fParams</a>, <a class="el" href="PFitter_8h_source.html#l00301">fPrintLevel</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8h_source.html#l00307">fRunListCollection</a>, <a class="el" href="PFitter_8h_source.html#l00320">fScanAll</a>, <a class="el" href="PFitter_8h_source.html#l00324">fScanHigh</a>, <a class="el" href="PFitter_8h_source.html#l00323">fScanLow</a>, <a class="el" href="PFitter_8h_source.html#l00322">fScanNoPoints</a>, <a class="el" href="PFitter_8h_source.html#l00321">fScanParameter</a>, <a class="el" href="PFitter_8h_source.html#l00332">fSectorFlag</a>, <a class="el" href="PFitter_8h_source.html#l00303">fStrategy</a>, <a class="el" href="PFitter_8h_source.html#l00300">fUseChi2</a>, <a class="el" href="PFitter_8h_source.html#l00299">fYamlOut</a>, <a class="el" href="PMusr_8cpp_source.html#l01154">PMsrGlobalBlock::GetFitRange()</a>, <a class="el" href="PMsrHandler_8h_source.html#l00186">PMsrHandler::GetMsrCommands()</a>, <a class="el" href="PMsrHandler_8h_source.html#l00176">PMsrHandler::GetMsrParamList()</a>, <a class="el" href="PFitter_8cpp_source.html#l00389">GetPhaseParams()</a>, and <a class="el" href="PMusr_8h_source.html#l00177">PMUSR_UNDEFINED</a>.</p>
</div>
</div>
<a id="a711ce9d116c066221fc72527f598abab" name="a711ce9d116c066221fc72527f598abab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a711ce9d116c066221fc72527f598abab">&#9670;&#160;</a></span>~PFitter()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">PFitter::~PFitter </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Destructor - Cleans up dynamically allocated resources. </p>
<p>Frees memory used by command lists, scan data, and timing information. Smart pointers (fFitterFcn, fFcnMin) are automatically cleaned up. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l00351">351</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00312">fCmdList</a>, <a class="el" href="PFitter_8h_source.html#l00329">fElapsedTime</a>, and <a class="el" href="PFitter_8h_source.html#l00325">fScanData</a>.</p>
</div>
</div>
<a name="doc-func-members" id="doc-func-members"></a><h2 id="header-doc-func-members" class="groupheader">Member Function Documentation</h2>
<a id="ac3961503e41b84dc8cc683ce274d2300" name="ac3961503e41b84dc8cc683ce274d2300"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac3961503e41b84dc8cc683ce274d2300">&#9670;&#160;</a></span>CheckCommands()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::CheckCommands </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Validates COMMANDS block syntax and builds execution queue. </p>
<p>Validates COMMANDS block and builds execution queue.</p>
<p>Parses all command lines, checks for syntax errors, extracts parameters, and populates fCmdList for sequential execution.</p>
<dl class="section return"><dt>Returns</dt><dd>true if all commands are valid, false on syntax errors</dd></dl>
<p>Parses all command lines from the MSR file's COMMANDS block, validates syntax and parameters, and constructs an ordered execution list. This ensures commands are executable before starting the fit.</p>
<dl class="section return"><dt>Returns</dt><dd>true if all commands are valid and parseable, false on any error</dd></dl>
<dl class="section user"><dt>Validation checks:</dt><dd><ul>
<li>Command keywords are recognized (MIGRAD, HESSE, MINOS, etc.)</li>
<li>Numeric arguments are valid (parameter indices, ranges, point counts)</li>
<li>Parameter references are within bounds</li>
<li>SCAN/CONTOURS have required arguments</li>
<li>FIX/RELEASE specify valid parameter lists</li>
</ul>
</dd></dl>
<dl class="section user"><dt>Side effects:</dt><dd><ul>
<li>Populates fCmdList with (command_ID, line_number) pairs</li>
<li>Sets fIsValid = false if any command is invalid</li>
<li>Configures scan parameters (fScanParameter, fScanNoPoints, etc.)</li>
<li>Detects SECTOR command presence (sets fSectorFlag)</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Called automatically by constructor. Errors are reported to stderr. </dd>
<dd>
Some legacy commands (SET BATCH, END RETURN) are silently ignored.</dd></dl>
<dl class="section see"><dt>See also</dt><dd>PMN_* command constants in <a class="el" href="PFitter_8h.html">PFitter.h</a> </dd></dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l00931">931</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00311">fCmdLines</a>, <a class="el" href="PFitter_8h_source.html#l00312">fCmdList</a>, <a class="el" href="PFitter_8h_source.html#l00296">fIsScanOnly</a>, <a class="el" href="PFitter_8h_source.html#l00295">fIsValid</a>, <a class="el" href="PFitter_8h_source.html#l00327">fOriginalFitRange</a>, <a class="el" href="PFitter_8h_source.html#l00309">fParams</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8h_source.html#l00320">fScanAll</a>, <a class="el" href="PFitter_8h_source.html#l00324">fScanHigh</a>, <a class="el" href="PFitter_8h_source.html#l00323">fScanLow</a>, <a class="el" href="PFitter_8h_source.html#l00322">fScanNoPoints</a>, <a class="el" href="PFitter_8h_source.html#l00321">fScanParameter</a>, <a class="el" href="PFitter_8h_source.html#l00333">fSector</a>, <a class="el" href="PFitter_8h_source.html#l00332">fSectorFlag</a>, <a class="el" href="PFitter_8h_source.html#l00303">fStrategy</a>, <a class="el" href="PFitter_8h_source.html#l00300">fUseChi2</a>, <a class="el" href="PFitter_8h_source.html#l00064">PMN_CONTOURS</a>, <a class="el" href="PFitter_8h_source.html#l00066">PMN_EIGEN</a>, <a class="el" href="PFitter_8h_source.html#l00068">PMN_FIT_RANGE</a>, <a class="el" href="PFitter_8h_source.html#l00070">PMN_FIX</a>, <a class="el" href="PFitter_8h_source.html#l00072">PMN_HESSE</a>, <a class="el" href="PFitter_8h_source.html#l00062">PMN_INTERACTIVE</a>, <a class="el" href="PFitter_8h_source.html#l00074">PMN_MACHINE_PRECISION</a>, <a class="el" href="PFitter_8h_source.html#l00076">PMN_MIGRAD</a>, <a class="el" href="PFitter_8h_source.html#l00078">PMN_MINIMIZE</a>, <a class="el" href="PFitter_8h_source.html#l00080">PMN_MINOS</a>, <a class="el" href="PFitter_8h_source.html#l00082">PMN_PLOT</a>, <a class="el" href="PFitter_8h_source.html#l00100">PMN_PRINT</a>, <a class="el" href="PFitter_8h_source.html#l00084">PMN_RELEASE</a>, <a class="el" href="PFitter_8h_source.html#l00086">PMN_RESTORE</a>, <a class="el" href="PFitter_8h_source.html#l00088">PMN_SAVE</a>, <a class="el" href="PFitter_8h_source.html#l00090">PMN_SCAN</a>, <a class="el" href="PFitter_8h_source.html#l00102">PMN_SECTOR</a>, <a class="el" href="PFitter_8h_source.html#l00092">PMN_SIMPLEX</a>, <a class="el" href="PFitter_8h_source.html#l00096">PMN_USER_COVARIANCE</a>, <a class="el" href="PFitter_8h_source.html#l00098">PMN_USER_PARAM_STATE</a>, <a class="el" href="PFitter_8cpp_source.html#l00108">PSectorChisq::SetRunFirstTime()</a>, <a class="el" href="PFitter_8h_source.html#l00140">PSectorChisq::SetSectorTime()</a>, and <a class="el" href="PStringUtils_8cpp_source.html#l00048">PStringUtils::Split()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a399447637761beccd19714caec025339" name="a399447637761beccd19714caec025339"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a399447637761beccd19714caec025339">&#9670;&#160;</a></span>DoFit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::DoFit </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Main entry point for executing the fit. </p>
<p>Executes the complete fitting procedure.</p>
<p>Processes all commands from the COMMANDS block sequentially, performs the fit, calculates errors, and prepares output statistics.</p>
<dl class="section return"><dt>Returns</dt><dd>true if fit completed successfully, false on error</dd></dl>
<p>This is the primary method that orchestrates the entire fitting process:</p><ol type="1">
<li>Transfers parameters from MSR to Minuit2</li>
<li>If chisq_only mode: calculates χ²/maxLH and returns</li>
<li>Otherwise: executes COMMANDS block sequentially</li>
<li>Updates MSR file with fit results and statistics</li>
</ol>
<dl class="section return"><dt>Returns</dt><dd>true if fit completed successfully (or chisq calculated), false on errors</dd></dl>
<dl class="section user"><dt>Execution modes:</dt><dd><ul>
<li><b>chisq_only = true:</b> Evaluates objective function once with current parameters, reports χ²/maxLH and NDF, useful for validating parameter sets</li>
<li><b>chisq_only = false:</b> Runs full fit according to COMMANDS block, which typically includes MIGRAD (minimization), HESSE (error matrix), optionally MINOS (asymmetric errors)</li>
</ul>
</dd></dl>
<dl class="section user"><dt>COMMANDS execution:</dt><dd>Commands are executed in the order they appear in the MSR file. Common sequence: <div class="fragment"><div class="line">SET PRINT 1 # Set verbosity</div>
<div class="line">MIGRAD # Find minimum</div>
<div class="line">HESSE # Calculate symmetric errors</div>
<div class="line">MINOS # Calculate asymmetric errors (optional)</div>
<div class="line">SAVE # Save results to MSR file</div>
</div><!-- fragment --></dd></dl>
<dl class="section note"><dt>Note</dt><dd>Check <a class="el" href="#a11e3f97aa99203a610016a12ecdf241d">IsValid()</a> before calling. Check <a class="el" href="#a21a2b58e59bc5a8920f41b618855319a">HasConverged()</a> after completion. </dd>
<dd>
Updates fRunInfo with final parameters, errors, and fit statistics. </dd>
<dd>
Prints detailed χ² breakdown per run if multiple runs are fitted.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="#ababcfdb8205db798c84562afe70bad91" title="Executes MIGRAD command (gradient descent minimization).">ExecuteMigrad()</a>, <a class="el" href="#a9eb9b1257133ddacf57332dbca711943" title="Executes HESSE command (calculate error matrix).">ExecuteHesse()</a>, <a class="el" href="#aad0102694c267a1ddf497e6bc7cc9646" title="Executes MINOS command (asymmetric error analysis).">ExecuteMinos()</a>, <a class="el" href="#a631cacca453cf66db5b944437cf507dd" title="Executes SAVE command (store current parameters).">ExecuteSave()</a> </dd></dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l00625">625</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8cpp_source.html#l01536">ExecuteContours()</a>, <a class="el" href="PFitter_8cpp_source.html#l01571">ExecuteFitRange()</a>, <a class="el" href="PFitter_8cpp_source.html#l01637">ExecuteFix()</a>, <a class="el" href="PFitter_8cpp_source.html#l01668">ExecuteHesse()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l01870">ExecuteMinos()</a>, <a class="el" href="PFitter_8cpp_source.html#l01939">ExecutePlot()</a>, <a class="el" href="PFitter_8cpp_source.html#l01959">ExecutePrintLevel()</a>, <a class="el" href="PFitter_8cpp_source.html#l02010">ExecuteRelease()</a>, <a class="el" href="PFitter_8cpp_source.html#l02045">ExecuteRestore()</a>, <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, <a class="el" href="PFitter_8cpp_source.html#l02067">ExecuteScan()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, <a class="el" href="PFitter_8h_source.html#l00298">fChisqOnly</a>, <a class="el" href="PFitter_8h_source.html#l00312">fCmdList</a>, <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, <a class="el" href="PFitter_8h_source.html#l00309">fParams</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8h_source.html#l00307">fRunListCollection</a>, <a class="el" href="PFitter_8h_source.html#l00333">fSector</a>, <a class="el" href="PFitter_8h_source.html#l00332">fSectorFlag</a>, <a class="el" href="PFitter_8h_source.html#l00300">fUseChi2</a>, <a class="el" href="PFitter_8h_source.html#l00273">IsValid()</a>, <a class="el" href="PFitter_8h_source.html#l00064">PMN_CONTOURS</a>, <a class="el" href="PFitter_8h_source.html#l00066">PMN_EIGEN</a>, <a class="el" href="PFitter_8h_source.html#l00068">PMN_FIT_RANGE</a>, <a class="el" href="PFitter_8h_source.html#l00070">PMN_FIX</a>, <a class="el" href="PFitter_8h_source.html#l00072">PMN_HESSE</a>, <a class="el" href="PFitter_8h_source.html#l00062">PMN_INTERACTIVE</a>, <a class="el" href="PFitter_8h_source.html#l00074">PMN_MACHINE_PRECISION</a>, <a class="el" href="PFitter_8h_source.html#l00076">PMN_MIGRAD</a>, <a class="el" href="PFitter_8h_source.html#l00078">PMN_MINIMIZE</a>, <a class="el" href="PFitter_8h_source.html#l00080">PMN_MINOS</a>, <a class="el" href="PFitter_8h_source.html#l00082">PMN_PLOT</a>, <a class="el" href="PFitter_8h_source.html#l00100">PMN_PRINT</a>, <a class="el" href="PFitter_8h_source.html#l00084">PMN_RELEASE</a>, <a class="el" href="PFitter_8h_source.html#l00086">PMN_RESTORE</a>, <a class="el" href="PFitter_8h_source.html#l00088">PMN_SAVE</a>, <a class="el" href="PFitter_8h_source.html#l00090">PMN_SCAN</a>, <a class="el" href="PFitter_8h_source.html#l00102">PMN_SECTOR</a>, <a class="el" href="PFitter_8h_source.html#l00092">PMN_SIMPLEX</a>, <a class="el" href="PFitter_8h_source.html#l00096">PMN_USER_COVARIANCE</a>, <a class="el" href="PFitter_8h_source.html#l00098">PMN_USER_PARAM_STATE</a>, <a class="el" href="PFitter_8cpp_source.html#l01488">SetParameters()</a>, and <a class="el" href="PStartupHandler_8cpp_source.html#l00105">status</a>.</p>
</div>
</div>
<a id="a069a60f7cbb859b0bc0f4b63168dbfde" name="a069a60f7cbb859b0bc0f4b63168dbfde"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a069a60f7cbb859b0bc0f4b63168dbfde">&#9670;&#160;</a></span>ExecuteContours()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteContours </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes CONTOURS command (2D error contours). </p>
<p>Calculates confidence regions in 2D parameter space by evaluating χ² on a grid around the minimum.</p>
<dl class="section return"><dt>Returns</dt><dd>true if contour calculation succeeded</dd></dl>
<p>Execute the minuit2 contour command. Makes sure that a valid minuit2 minimum is present.</p>
<p><b>return:</b> true if the contour command could be executed successfully, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l01536">1536</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00317">fFcnMin</a>, <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PFitter_8h_source.html#l00325">fScanData</a>, <a class="el" href="PFitter_8h_source.html#l00322">fScanNoPoints</a>, and <a class="el" href="PFitter_8h_source.html#l00321">fScanParameter</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="acc32e99737b3abd781f06da5649ebd35" name="acc32e99737b3abd781f06da5649ebd35"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc32e99737b3abd781f06da5649ebd35">&#9670;&#160;</a></span>ExecuteFitRange()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteFitRange </td>
<td>(</td>
<td class="paramtype">UInt_t</td> <td class="paramname"><span class="paramname"><em>lineNo</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes FIT_RANGE command (optimal time-window search). </p>
<p>Scans fit quality vs. fit start time to find the optimal first-good-bin. Useful for determining when background subtraction is adequate.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lineNo</td><td>Command line number in MSR file </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if range scan succeeded</dd></dl>
<p>Change the fit range via command block.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lineNo</td><td>the line number of the command block</td></tr>
</table>
</dd>
</dl>
<p><b>return:</b> true if done, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l01571">1571</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00311">fCmdLines</a>, <a class="el" href="PFitter_8h_source.html#l00327">fOriginalFitRange</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8h_source.html#l00307">fRunListCollection</a>, and <a class="el" href="PStringUtils_8cpp_source.html#l00048">PStringUtils::Split()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="ad40bd35fd795fa4be1e556a6042f4f88" name="ad40bd35fd795fa4be1e556a6042f4f88"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad40bd35fd795fa4be1e556a6042f4f88">&#9670;&#160;</a></span>ExecuteFix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteFix </td>
<td>(</td>
<td class="paramtype">UInt_t</td> <td class="paramname"><span class="paramname"><em>lineNo</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes FIX command (freeze parameters). </p>
<p>Prevents specified parameters from varying during subsequent minimization.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lineNo</td><td>Command line number in MSR file </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if parameters fixed successfully</dd></dl>
<p>Fix parameter list given at lineNo of the command block.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lineNo</td><td>the line number of the command block</td></tr>
</table>
</dd>
</dl>
<p><b>return:</b> true if done, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l01637">1637</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00311">fCmdLines</a>, <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, and <a class="el" href="PStringUtils_8cpp_source.html#l00048">PStringUtils::Split()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="a9eb9b1257133ddacf57332dbca711943" name="a9eb9b1257133ddacf57332dbca711943"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9eb9b1257133ddacf57332dbca711943">&#9670;&#160;</a></span>ExecuteHesse()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteHesse </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes HESSE command (calculate error matrix). </p>
<p>Computes the covariance matrix by evaluating second derivatives at the current minimum. Provides symmetric (parabolic) parameter errors.</p>
<dl class="section return"><dt>Returns</dt><dd>true if Hessian calculation succeeded</dd></dl>
<p>Execute the minuit2 hesse command.</p>
<p><b>return:</b> true if the hesse command could be executed successfully, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l01668">1668</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00329">fElapsedTime</a>, <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, <a class="el" href="PFitter_8h_source.html#l00309">fParams</a>, <a class="el" href="PFitter_8h_source.html#l00301">fPrintLevel</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, and <a class="el" href="PFitter_8cpp_source.html#l02849">MilliTime()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="ababcfdb8205db798c84562afe70bad91" name="ababcfdb8205db798c84562afe70bad91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ababcfdb8205db798c84562afe70bad91">&#9670;&#160;</a></span>ExecuteMigrad()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteMigrad </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes MIGRAD command (gradient descent minimization). </p>
<p>Runs Minuit2's MIGRAD algorithm, the recommended robust minimizer using first derivatives and approximate Hessian updates.</p>
<dl class="section return"><dt>Returns</dt><dd>true if MIGRAD converged to a valid minimum</dd></dl>
<p>Execute the minuit2 migrad command.</p>
<p><b>return:</b> true if the migrad command could be executed successfully, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l01717">1717</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00297">fConverged</a>, <a class="el" href="PFitter_8h_source.html#l00329">fElapsedTime</a>, <a class="el" href="PFitter_8h_source.html#l00317">fFcnMin</a>, <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PFitter_8h_source.html#l00295">fIsValid</a>, <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, <a class="el" href="PFitter_8h_source.html#l00309">fParams</a>, <a class="el" href="PFitter_8h_source.html#l00335">fPhase</a>, <a class="el" href="PFitter_8h_source.html#l00301">fPrintLevel</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8h_source.html#l00303">fStrategy</a>, and <a class="el" href="PFitter_8cpp_source.html#l02849">MilliTime()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="ab6523d1625c35a57caed401f9348c5ff" name="ab6523d1625c35a57caed401f9348c5ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab6523d1625c35a57caed401f9348c5ff">&#9670;&#160;</a></span>ExecuteMinimize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteMinimize </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes MINIMIZE command (automatic algorithm selection). </p>
<p>Lets Minuit2 choose the best minimization strategy. Usually equivalent to MIGRAD for well-behaved problems.</p>
<dl class="section return"><dt>Returns</dt><dd>true if minimization converged</dd></dl>
<p>Execute the minuit2 minimize command.</p>
<p><b>return:</b> true if the minimize command could be executed successfully, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l01793">1793</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00297">fConverged</a>, <a class="el" href="PFitter_8h_source.html#l00329">fElapsedTime</a>, <a class="el" href="PFitter_8h_source.html#l00317">fFcnMin</a>, <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PFitter_8h_source.html#l00295">fIsValid</a>, <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, <a class="el" href="PFitter_8h_source.html#l00309">fParams</a>, <a class="el" href="PFitter_8h_source.html#l00335">fPhase</a>, <a class="el" href="PFitter_8h_source.html#l00301">fPrintLevel</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8h_source.html#l00303">fStrategy</a>, and <a class="el" href="PFitter_8cpp_source.html#l02849">MilliTime()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="aad0102694c267a1ddf497e6bc7cc9646" name="aad0102694c267a1ddf497e6bc7cc9646"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad0102694c267a1ddf497e6bc7cc9646">&#9670;&#160;</a></span>ExecuteMinos()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteMinos </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes MINOS command (asymmetric error analysis). </p>
<p>Computes accurate asymmetric confidence intervals by scanning χ² along each parameter axis. Slower but more accurate than HESSE.</p>
<dl class="section return"><dt>Returns</dt><dd>true if MINOS analysis completed</dd></dl>
<p>Execute the minuit2 minos command.</p>
<p><b>return:</b> true if the minos command could be executed successfully, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l01870">1870</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00329">fElapsedTime</a>, <a class="el" href="PFitter_8h_source.html#l00317">fFcnMin</a>, <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, <a class="el" href="PFitter_8h_source.html#l00309">fParams</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, and <a class="el" href="PFitter_8cpp_source.html#l02849">MilliTime()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="a08e3d9eb88730d1d4e9ab4b7d9a2b708" name="a08e3d9eb88730d1d4e9ab4b7d9a2b708"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08e3d9eb88730d1d4e9ab4b7d9a2b708">&#9670;&#160;</a></span>ExecutePlot()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecutePlot </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes PLOT command (visualize scan/contour results). </p>
<p>Displays scan or contour data from previous SCAN/CONTOURS commands.</p>
<dl class="section return"><dt>Returns</dt><dd>true if plot generated successfully</dd></dl>
<p>Execute the minuit2 plot command.</p>
<p><b>return:</b> true. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l01939">1939</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00325">fScanData</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="a23f49efc107e75d189c2163aaffd406f" name="a23f49efc107e75d189c2163aaffd406f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23f49efc107e75d189c2163aaffd406f">&#9670;&#160;</a></span>ExecutePrintLevel()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecutePrintLevel </td>
<td>(</td>
<td class="paramtype">UInt_t</td> <td class="paramname"><span class="paramname"><em>lineNo</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes PRINT command (set verbosity level). </p>
<p>Controls Minuit2 output detail: 0=minimal, 1=normal, 2=debug.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lineNo</td><td>Command line number in MSR file </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if print level set successfully</dd></dl>
<p>Set the print level.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lineNo</td><td>the line number of the command block</td></tr>
</table>
</dd>
</dl>
<p><b>return:</b> true if done, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l01959">1959</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00311">fCmdLines</a>, <a class="el" href="PFitter_8h_source.html#l00301">fPrintLevel</a>, and <a class="el" href="PStringUtils_8cpp_source.html#l00048">PStringUtils::Split()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="aab691691ca5d7cee66a16043c5c41940" name="aab691691ca5d7cee66a16043c5c41940"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aab691691ca5d7cee66a16043c5c41940">&#9670;&#160;</a></span>ExecuteRelease()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteRelease </td>
<td>(</td>
<td class="paramtype">UInt_t</td> <td class="paramname"><span class="paramname"><em>lineNo</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes RELEASE command (unfreeze parameters). </p>
<p>Allows previously fixed parameters to vary in subsequent fits.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lineNo</td><td>Command line number in MSR file </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if parameters released successfully</dd></dl>
<p>Release parameter list given at lineNo of the command block.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lineNo</td><td>the line number of the command block</td></tr>
</table>
</dd>
</dl>
<p><b>return:</b> true if done, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l02010">2010</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00311">fCmdLines</a>, <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, and <a class="el" href="PStringUtils_8cpp_source.html#l00048">PStringUtils::Split()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="ac3094e6b657951d8d4a5ad934c2eb31a" name="ac3094e6b657951d8d4a5ad934c2eb31a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac3094e6b657951d8d4a5ad934c2eb31a">&#9670;&#160;</a></span>ExecuteRestore()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteRestore </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes RESTORE command (reload saved parameters). </p>
<p>Restores parameter values from the last SAVE command.</p>
<dl class="section return"><dt>Returns</dt><dd>true if parameters restored successfully</dd></dl>
<p>Release all fixed parameters</p>
<p><b>return:</b> true. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l02045">2045</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="a631cacca453cf66db5b944437cf507dd" name="a631cacca453cf66db5b944437cf507dd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a631cacca453cf66db5b944437cf507dd">&#9670;&#160;</a></span>ExecuteSave()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteSave </td>
<td>(</td>
<td class="paramtype">Bool_t</td> <td class="paramname"><span class="paramname"><em>firstSave</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes SAVE command (store current parameters). </p>
<p>Saves current parameter state for later RESTORE. Updates MSR file statistics on first save (after final fit).</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">first</td><td>True if this is the first SAVE command in the session </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if parameters saved successfully</dd></dl>
<p>Execute the save command.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">firstSave</td><td>flag indication if this is the first save call and hence write a fresh MINUIT2.OUTPUT</td></tr>
</table>
</dd>
</dl>
<p><b>return:</b> true if the valid minuit2 state is found, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l02094">2094</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8cpp_source.html#l02793">ExecuteSector()</a>, <a class="el" href="PFitter_8h_source.html#l00329">fElapsedTime</a>, <a class="el" href="PFitter_8h_source.html#l00317">fFcnMin</a>, <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PMusr_8h_source.html#l01349">PMsrStatisticStructure::fMin</a>, <a class="el" href="PMusr_8h_source.html#l01352">PMsrStatisticStructure::fMinExpected</a>, <a class="el" href="PMusr_8h_source.html#l01353">PMsrStatisticStructure::fMinExpectedPerHisto</a>, <a class="el" href="PMusr_8h_source.html#l01350">PMsrStatisticStructure::fMinPerHisto</a>, <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, <a class="el" href="PMusr_8h_source.html#l01351">PMsrStatisticStructure::fNdf</a>, <a class="el" href="PMusr_8h_source.html#l01354">PMsrStatisticStructure::fNdfPerHisto</a>, <a class="el" href="PFitter_8h_source.html#l00309">fParams</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8h_source.html#l00307">fRunListCollection</a>, <a class="el" href="PFitter_8h_source.html#l00332">fSectorFlag</a>, <a class="el" href="PFitter_8h_source.html#l00300">fUseChi2</a>, <a class="el" href="PFitter_8h_source.html#l00299">fYamlOut</a>, <a class="el" href="PMusr_8cpp_source.html#l01154">PMsrGlobalBlock::GetFitRange()</a>, <a class="el" href="PFitter_8cpp_source.html#l02872">ParamRound()</a>, <a class="el" href="PMusr_8h_source.html#l00177">PMUSR_UNDEFINED</a>, and <a class="el" href="PFitter_8cpp_source.html#l02680">PrepareSector()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="a5f91281f9274f4dfe192a89e5b8b1069" name="a5f91281f9274f4dfe192a89e5b8b1069"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f91281f9274f4dfe192a89e5b8b1069">&#9670;&#160;</a></span>ExecuteScan()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteScan </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes SCAN command (1D parameter space scan). </p>
<p>Evaluates χ² along one or two parameter axes to visualize the objective function landscape near the minimum.</p>
<dl class="section return"><dt>Returns</dt><dd>true if scan completed</dd></dl>
<p>Execute the minuit2 scan command.</p>
<p><b>return:</b> true. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l02067">2067</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00297">fConverged</a>, <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, <a class="el" href="PFitter_8h_source.html#l00320">fScanAll</a>, <a class="el" href="PFitter_8h_source.html#l00325">fScanData</a>, <a class="el" href="PFitter_8h_source.html#l00324">fScanHigh</a>, <a class="el" href="PFitter_8h_source.html#l00323">fScanLow</a>, <a class="el" href="PFitter_8h_source.html#l00322">fScanNoPoints</a>, and <a class="el" href="PFitter_8h_source.html#l00321">fScanParameter</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="a85b2a235f516f062d62e295f08ffdf60" name="a85b2a235f516f062d62e295f08ffdf60"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85b2a235f516f062d62e295f08ffdf60">&#9670;&#160;</a></span>ExecuteSector()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteSector </td>
<td>(</td>
<td class="paramtype">std::ofstream &amp;</td> <td class="paramname"><span class="paramname"><em>fout</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes SECTOR command (time-dependent χ² analysis). </p>
<p>Calculates χ² for progressively wider time windows to identify optimal fit ranges and systematic time-dependent effects.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">fout</td><td>Output stream for sector analysis results </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if sector analysis completed</dd></dl>
<p>Write all chisq/maxLH sector information to MINUIT.OUTPUT and dump it to stdout.</p>
<p><b>return:</b> if the sector command was successful, otherwise return flase. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l02793">2793</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00333">fSector</a>, and <a class="el" href="PFitter_8h_source.html#l00300">fUseChi2</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>.</p>
</div>
</div>
<a id="a7a08f7f6e29868337846a4d5f984a693" name="a7a08f7f6e29868337846a4d5f984a693"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7a08f7f6e29868337846a4d5f984a693">&#9670;&#160;</a></span>ExecuteSimplex()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::ExecuteSimplex </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Executes SIMPLEX command (non-gradient minimization). </p>
<p>Runs the Nelder-Mead simplex algorithm. Robust for rough objective functions but slow to converge. Often used before MIGRAD for difficult fits.</p>
<dl class="section return"><dt>Returns</dt><dd>true if SIMPLEX found a minimum</dd></dl>
<p>Execute the minuit2 simplex command.</p>
<p><b>return:</b> true if the simplex command could be executed successfully, otherwise returns false. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l02603">2603</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00297">fConverged</a>, <a class="el" href="PFitter_8h_source.html#l00329">fElapsedTime</a>, <a class="el" href="PFitter_8h_source.html#l00317">fFcnMin</a>, <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PFitter_8h_source.html#l00295">fIsValid</a>, <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, <a class="el" href="PFitter_8h_source.html#l00309">fParams</a>, <a class="el" href="PFitter_8h_source.html#l00335">fPhase</a>, <a class="el" href="PFitter_8h_source.html#l00301">fPrintLevel</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8h_source.html#l00303">fStrategy</a>, and <a class="el" href="PFitter_8cpp_source.html#l02849">MilliTime()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="a50cc50f520008b475796800c61127827" name="a50cc50f520008b475796800c61127827"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a50cc50f520008b475796800c61127827">&#9670;&#160;</a></span>GetParFromFun()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="PMusr_8h.html#aa9c3d2033e27c38e4dbb98e26f1c4e54">PIntVector</a> PFitter::GetParFromFun </td>
<td>(</td>
<td class="paramtype">const TString</td> <td class="paramname"><span class="paramname"><em>funStr</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Extracts parameter numbers from a FUNCTIONS block entry. </p>
<p>Parses "funX" references in theory lines to find all parameters used in the function definition.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">funStr</td><td>Function identifier string (e.g., "fun1", "fun23") </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Vector of parameter numbers (1-indexed) used in the function</dd></dl>
<p>Parses a function definition to find all parameters it references. Recursively handles nested map references within the function.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">funStr</td><td>Function identifier (e.g., "fun1", "fun23") </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Vector of parameter numbers (1-indexed) used in the function</dd></dl>
<dl class="section user"><dt>Example:</dt><dd>If FUNCTIONS block contains: <div class="fragment"><div class="line">fun1 = par3 * par7 + map2</div>
</div><!-- fragment --> Then GetParFromFun("fun1") returns [3, 7, ...params from map2...]</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Returns empty vector if function not found or parsing fails. </dd></dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l00478">478</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8cpp_source.html#l00548">GetParFromMap()</a>, and <a class="el" href="PStringUtils_8cpp_source.html#l00048">PStringUtils::Split()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00389">GetPhaseParams()</a>.</p>
</div>
</div>
<a id="aae4edca748b0934d6ea96fe9db7f83f2" name="aae4edca748b0934d6ea96fe9db7f83f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae4edca748b0934d6ea96fe9db7f83f2">&#9670;&#160;</a></span>GetParFromMap()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="PMusr_8h.html#aa9c3d2033e27c38e4dbb98e26f1c4e54">PIntVector</a> PFitter::GetParFromMap </td>
<td>(</td>
<td class="paramtype">const TString</td> <td class="paramname"><span class="paramname"><em>mapStr</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Extracts parameter numbers from a map reference. </p>
<p>Parses "mapX" references to find mapped parameters across all runs. Maps allow different runs to use different parameters for the same theoretical component.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mapStr</td><td>Map identifier string (e.g., "map1", "map5") </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Vector of parameter numbers (1-indexed) referenced by the map</dd></dl>
<p>Parses "mapX" to find which parameters are mapped to the X-th position across all RUN blocks. Maps allow different runs to use different parameters for the same theoretical component, enabling multi-run fits with run-dependent parameters.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mapStr</td><td>Map identifier (e.g., "map1", "map5") </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Vector of parameter numbers (1-indexed) mapped at this position</dd></dl>
<dl class="section user"><dt>Example:</dt><dd>If RUN blocks have: <div class="fragment"><div class="line">RUN 1: map 7 8 9</div>
<div class="line">RUN 2: map 10 11 12</div>
</div><!-- fragment --> Then GetParFromMap("map1") returns [7, 10] (first map entry per run)</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Returns empty vector if map index is out of range or invalid. </dd></dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l00548">548</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00478">GetParFromFun()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00389">GetPhaseParams()</a>.</p>
</div>
</div>
<a id="a8e9e7d418fa0adaf0f75581b8409d5e9" name="a8e9e7d418fa0adaf0f75581b8409d5e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8e9e7d418fa0adaf0f75581b8409d5e9">&#9670;&#160;</a></span>GetPhaseParams()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PFitter::GetPhaseParams </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Identifies which parameters represent phase angles. </p>
<p>Scans the THEORY block to detect parameters used as phases in standard functions (TFieldCos, bessel, etc.). Phase parameters are constrained to [-360°, +360°] during fitting.</p>
<p>Scans the THEORY block to detect parameters used as phases in standard muSR functions. Phase parameters are flagged to enable automatic wrapping to the interval [-360°, +360°] during fitting, preventing meaningless phase values outside this range.</p>
<p>Recognized phase-containing functions:</p><ul>
<li>TFieldCos/tf: phase is 1st parameter</li>
<li>bessel/b: phase is 1st parameter</li>
<li>skewedGss/skg: phase is 1st parameter</li>
<li>staticNKTF/snktf: phase is 1st parameter</li>
<li>dynamicNKTF/dnktf: phase is 1st parameter</li>
<li>internFld/if: phase is 2nd parameter</li>
<li>internBsl/ib: phase is 2nd parameter</li>
<li>muMinusExpTF/mmsetf: phase is 5th parameter</li>
</ul>
<p>Phase references can be:</p><ul>
<li>Direct parameter numbers (e.g., "7" → par7)</li>
<li>Function references (e.g., "fun3" → all params in function 3)</li>
<li>Map references (e.g., "map2" → parameters mapped across runs)</li>
</ul>
<dl class="section note"><dt>Note</dt><dd>Populates fPhase vector where fPhase[i] = true means parameter i+1 is a phase. </dd>
<dd>
User-defined functions cannot be automatically analyzed for phases. </dd></dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l00389">389</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00335">fPhase</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8cpp_source.html#l00478">GetParFromFun()</a>, <a class="el" href="PFitter_8cpp_source.html#l00548">GetParFromMap()</a>, and <a class="el" href="PStringUtils_8cpp_source.html#l00048">PStringUtils::Split()</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a21a2b58e59bc5a8920f41b618855319a" name="a21a2b58e59bc5a8920f41b618855319a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21a2b58e59bc5a8920f41b618855319a">&#9670;&#160;</a></span>HasConverged()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::HasConverged </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if fit converged successfully </p><dl class="section return"><dt>Returns</dt><dd>Convergence status </dd></dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00281">281</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00297">fConverged</a>.</p>
</div>
</div>
<a id="a742aeacd1ce2f018b42d6283d6229623" name="a742aeacd1ce2f018b42d6283d6229623"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a742aeacd1ce2f018b42d6283d6229623">&#9670;&#160;</a></span>IsScanOnly()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::IsScanOnly </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if only parameter scan requested (no minimization) </p><dl class="section return"><dt>Returns</dt><dd>Scan-only flag </dd></dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00277">277</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00296">fIsScanOnly</a>.</p>
</div>
</div>
<a id="a11e3f97aa99203a610016a12ecdf241d" name="a11e3f97aa99203a610016a12ecdf241d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11e3f97aa99203a610016a12ecdf241d">&#9670;&#160;</a></span>IsValid()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::IsValid </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if fitter initialized successfully </p><dl class="section return"><dt>Returns</dt><dd>Validity status </dd></dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00273">273</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00295">fIsValid</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a id="a313a48146cbacbf181a56838d5c52087" name="a313a48146cbacbf181a56838d5c52087"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a313a48146cbacbf181a56838d5c52087">&#9670;&#160;</a></span>MilliTime()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Double_t PFitter::MilliTime </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns current time in milliseconds. </p>
<p>Used for timing fit commands and generating performance statistics.</p>
<dl class="section return"><dt>Returns</dt><dd>Timestamp in milliseconds since epoch</dd></dl>
<p><b>return:</b> </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l02849">2849</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l01668">ExecuteHesse()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l01870">ExecuteMinos()</a>, and <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>.</p>
</div>
</div>
<a id="a65dbfc5c91cea7c5d4577f14cf6e371b" name="a65dbfc5c91cea7c5d4577f14cf6e371b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65dbfc5c91cea7c5d4577f14cf6e371b">&#9670;&#160;</a></span>ParamRound()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="PMusr_8h.html#ae689e7a4bf8a9c0ecf65bcd7d4a0ebde">PDoubleVector</a> PFitter::ParamRound </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="PMusr_8h.html#ae689e7a4bf8a9c0ecf65bcd7d4a0ebde">PDoubleVector</a> &amp;</td> <td class="paramname"><span class="paramname"><em>par</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="PMusr_8h.html#ae689e7a4bf8a9c0ecf65bcd7d4a0ebde">PDoubleVector</a> &amp;</td> <td class="paramname"><span class="paramname"><em>err</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Bool_t &amp;</td> <td class="paramname"><span class="paramname"><em>ok</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Rounds parameters for output with appropriate precision. </p>
<p>Determines significant figures based on errors and formats parameters for display in MSR file output.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">par</td><td>Parameter values </td></tr>
<tr><td class="paramname">err</td><td>Parameter errors </td></tr>
<tr><td class="paramname">ok</td><td>Output flag: false if rounding failed </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Rounded parameter values</dd></dl>
<p>Rounds the parameter vector value according to the given error estimate, so that the msr-file value and the fitter result are consistent with each other. This means that musrfit -c, and musrfit -e -t should give essentially the same values of expected chisq (up to small rounding values).</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">par</td><td>parameter value vector </td></tr>
<tr><td class="paramname">err</td><td>error value vector </td></tr>
<tr><td class="paramname">ok</td><td>true if size of par and err are identically, otherwise false.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>rounded parameter value vector, compatible with the msr-file output. </dd></dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l02872">2872</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>.</p>
</div>
</div>
<a id="ad62d0c925845fc266a07d26e12f28507" name="ad62d0c925845fc266a07d26e12f28507"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad62d0c925845fc266a07d26e12f28507">&#9670;&#160;</a></span>PrepareSector()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PFitter::PrepareSector </td>
<td>(</td>
<td class="paramtype"><a class="el" href="PMusr_8h.html#ae689e7a4bf8a9c0ecf65bcd7d4a0ebde">PDoubleVector</a> &amp;</td> <td class="paramname"><span class="paramname"><em>param</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="PMusr_8h.html#ae689e7a4bf8a9c0ecf65bcd7d4a0ebde">PDoubleVector</a> &amp;</td> <td class="paramname"><span class="paramname"><em>error</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Prepares sector χ² analysis data structures. </p>
<p>Initializes sector time windows and allocates storage for sector results.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">param</td><td>Current parameter values </td></tr>
<tr><td class="paramname">error</td><td>Current parameter errors</td></tr>
</table>
</dd>
</dl>
<p>Collect all the necessary chisq/maxLH sector information.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">param</td><td>parameter value vector of the converged fit. </td></tr>
<tr><td class="paramname">error</td><td>step value vector of the converged fit. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l02680">2680</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00314">fFitterFcn</a>, <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>, <a class="el" href="PFitter_8h_source.html#l00307">fRunListCollection</a>, <a class="el" href="PFitter_8h_source.html#l00333">fSector</a>, and <a class="el" href="PFitter_8h_source.html#l00300">fUseChi2</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>.</p>
</div>
</div>
<a id="a822fe28451f360fcda2aa7a334a63b16" name="a822fe28451f360fcda2aa7a334a63b16"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a822fe28451f360fcda2aa7a334a63b16">&#9670;&#160;</a></span>SetParameters()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::SetParameters </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Transfers MSR parameters to Minuit2 parameter state. </p>
<p>Initializes fMnUserParams with values, errors, and bounds from the MSR file's PARAMETERS block.</p>
<dl class="section return"><dt>Returns</dt><dd>true if parameters set successfully</dd></dl>
<p>Feeds the internal minuit2 fit parameters. It also makes sure that unused parameters are fixed.</p>
<p><b>return:</b> true. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8cpp_source.html#l01488">1488</a> of file <a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a>.</p>
<p class="reference">References <a class="el" href="PFitter_8h_source.html#l00316">fMnUserParams</a>, <a class="el" href="PFitter_8h_source.html#l00309">fParams</a>, and <a class="el" href="PFitter_8h_source.html#l00306">fRunInfo</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>.</p>
</div>
</div>
<a name="doc-variable-members" id="doc-variable-members"></a><h2 id="header-doc-variable-members" class="groupheader">Member Data Documentation</h2>
<a id="ac6b16f7adb7f4ebff7c6348aaa65f5b4" name="ac6b16f7adb7f4ebff7c6348aaa65f5b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac6b16f7adb7f4ebff7c6348aaa65f5b4">&#9670;&#160;</a></span>fChisqOnly</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::fChisqOnly</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Evaluation-only flag: true to calculate χ² without fitting. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00298">298</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a7f894783312fb9a16e92b8c34141d734" name="a7f894783312fb9a16e92b8c34141d734"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f894783312fb9a16e92b8c34141d734">&#9670;&#160;</a></span>fCmdLines</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="PMusr_8h.html#a88b0f32c26fd54bdacfbef77212d951d">PMsrLines</a> PFitter::fCmdLines</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Raw command lines from MSR COMMANDS block. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00311">311</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l01571">ExecuteFitRange()</a>, <a class="el" href="PFitter_8cpp_source.html#l01637">ExecuteFix()</a>, <a class="el" href="PFitter_8cpp_source.html#l01959">ExecutePrintLevel()</a>, <a class="el" href="PFitter_8cpp_source.html#l02010">ExecuteRelease()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a2aa78466f83e1a7329f7efcbdc217b4a" name="a2aa78466f83e1a7329f7efcbdc217b4a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2aa78466f83e1a7329f7efcbdc217b4a">&#9670;&#160;</a></span>fCmdList</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="PMusr_8h.html#ace15e033fc9afd308f9fe173c582cf60">PIntPairVector</a> PFitter::fCmdList</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Parsed commands: first=command ID, second=line number. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00312">312</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00351">~PFitter()</a>.</p>
</div>
</div>
<a id="ac41618f0b66f7ef4bfed953e9fea79bd" name="ac41618f0b66f7ef4bfed953e9fea79bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac41618f0b66f7ef4bfed953e9fea79bd">&#9670;&#160;</a></span>fConverged</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::fConverged</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Convergence flag: true if fit converged to a valid minimum. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00297">297</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l02067">ExecuteScan()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, <a class="el" href="PFitter_8h_source.html#l00281">HasConverged()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a26ccf4d18cb80457389162eaa5af8729" name="a26ccf4d18cb80457389162eaa5af8729"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a26ccf4d18cb80457389162eaa5af8729">&#9670;&#160;</a></span>fElapsedTime</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="PMusr_8h.html#ae50e503cc0f1bbc1fda5b86735ea9983">PStringVector</a> PFitter::fElapsedTime</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Timing information for each fit command. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00329">329</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l01668">ExecuteHesse()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l01870">ExecuteMinos()</a>, <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00351">~PFitter()</a>.</p>
</div>
</div>
<a id="abd3b95f1716f479adb1bca83ddc19092" name="abd3b95f1716f479adb1bca83ddc19092"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd3b95f1716f479adb1bca83ddc19092">&#9670;&#160;</a></span>fFcnMin</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::unique_ptr&lt;ROOT::Minuit2::FunctionMinimum&gt; PFitter::fFcnMin</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Minuit2 function minimum result. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00317">317</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l01536">ExecuteContours()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l01870">ExecuteMinos()</a>, <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, and <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>.</p>
</div>
</div>
<a id="ae2bc81d1e8f0e54d3bededf879a5daa5" name="ae2bc81d1e8f0e54d3bededf879a5daa5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae2bc81d1e8f0e54d3bededf879a5daa5">&#9670;&#160;</a></span>fFitterFcn</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::unique_ptr&lt;<a class="el" href="classPFitterFcn.html">PFitterFcn</a>&gt; PFitter::fFitterFcn</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Objective function for Minuit2 minimization. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00314">314</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>, <a class="el" href="PFitter_8cpp_source.html#l01536">ExecuteContours()</a>, <a class="el" href="PFitter_8cpp_source.html#l01668">ExecuteHesse()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l01870">ExecuteMinos()</a>, <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, <a class="el" href="PFitter_8cpp_source.html#l02067">ExecuteScan()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>, and <a class="el" href="PFitter_8cpp_source.html#l02680">PrepareSector()</a>.</p>
</div>
</div>
<a id="a6f97d44fb0b291f7af9d01579c0e406c" name="a6f97d44fb0b291f7af9d01579c0e406c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6f97d44fb0b291f7af9d01579c0e406c">&#9670;&#160;</a></span>fIsScanOnly</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::fIsScanOnly</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Scan mode flag: true if only parameter scans requested (no minimization). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00296">296</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8h_source.html#l00277">IsScanOnly()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a18224fc86af43dcac49a5353ebeca614" name="a18224fc86af43dcac49a5353ebeca614"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18224fc86af43dcac49a5353ebeca614">&#9670;&#160;</a></span>fIsValid</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::fIsValid</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Overall validity flag: true if fitter initialized successfully. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00295">295</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, and <a class="el" href="PFitter_8h_source.html#l00273">IsValid()</a>.</p>
</div>
</div>
<a id="ab9f144668483d590a54dace8fdbd62ed" name="ab9f144668483d590a54dace8fdbd62ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab9f144668483d590a54dace8fdbd62ed">&#9670;&#160;</a></span>fMnUserParams</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ROOT::Minuit2::MnUserParameters PFitter::fMnUserParams</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Minuit2 parameter state (values, errors, limits). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00316">316</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>, <a class="el" href="PFitter_8cpp_source.html#l01637">ExecuteFix()</a>, <a class="el" href="PFitter_8cpp_source.html#l01668">ExecuteHesse()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l01870">ExecuteMinos()</a>, <a class="el" href="PFitter_8cpp_source.html#l02010">ExecuteRelease()</a>, <a class="el" href="PFitter_8cpp_source.html#l02045">ExecuteRestore()</a>, <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, <a class="el" href="PFitter_8cpp_source.html#l02067">ExecuteScan()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, and <a class="el" href="PFitter_8cpp_source.html#l01488">SetParameters()</a>.</p>
</div>
</div>
<a id="a0d49c71cedfb96367f8167877beba69d" name="a0d49c71cedfb96367f8167877beba69d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0d49c71cedfb96367f8167877beba69d">&#9670;&#160;</a></span>fOriginalFitRange</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="PMusr_8h.html#a93e3841e16074fd3c7648d8fc7b742f4">PDoublePairVector</a> PFitter::fOriginalFitRange</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Original fit ranges per run (saved for FIT_RANGE command). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00327">327</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l01571">ExecuteFitRange()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="aa2c27c84275a04414e67c8bdeaf6b3d6" name="aa2c27c84275a04414e67c8bdeaf6b3d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2c27c84275a04414e67c8bdeaf6b3d6">&#9670;&#160;</a></span>fParams</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="PMusr_8h.html#ab08a4f791c8d0001ed434bae845fe95c">PMsrParamList</a> PFitter::fParams</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Copy of parameter list from MSR file. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00309">309</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>, <a class="el" href="PFitter_8cpp_source.html#l01668">ExecuteHesse()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l01870">ExecuteMinos()</a>, <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>, and <a class="el" href="PFitter_8cpp_source.html#l01488">SetParameters()</a>.</p>
</div>
</div>
<a id="ad5838c829ba15d41f95a8c452e380028" name="ad5838c829ba15d41f95a8c452e380028"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad5838c829ba15d41f95a8c452e380028">&#9670;&#160;</a></span>fPhase</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;bool&gt; PFitter::fPhase</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Phase parameter flags: true if parameter is a phase angle. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00335">335</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00389">GetPhaseParams()</a>.</p>
</div>
</div>
<a id="a62a705860d144d6f0184a9a907c83678" name="a62a705860d144d6f0184a9a907c83678"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62a705860d144d6f0184a9a907c83678">&#9670;&#160;</a></span>fPrintLevel</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">UInt_t PFitter::fPrintLevel</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Verbosity level: 0=quiet, 1=normal, 2=verbose (Minuit output). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00301">301</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l01668">ExecuteHesse()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l01959">ExecutePrintLevel()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="aa53dfefa0389c5e3e093bb57bdef3f36" name="aa53dfefa0389c5e3e093bb57bdef3f36"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa53dfefa0389c5e3e093bb57bdef3f36">&#9670;&#160;</a></span>fRunInfo</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classPMsrHandler.html">PMsrHandler</a>* PFitter::fRunInfo</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Pointer to MSR file handler (parameters, theory, commands). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00306">306</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>, <a class="el" href="PFitter_8cpp_source.html#l01571">ExecuteFitRange()</a>, <a class="el" href="PFitter_8cpp_source.html#l01668">ExecuteHesse()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l01870">ExecuteMinos()</a>, <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, <a class="el" href="PFitter_8cpp_source.html#l00478">GetParFromFun()</a>, <a class="el" href="PFitter_8cpp_source.html#l00548">GetParFromMap()</a>, <a class="el" href="PFitter_8cpp_source.html#l00389">GetPhaseParams()</a>, <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>, <a class="el" href="PFitter_8cpp_source.html#l02680">PrepareSector()</a>, and <a class="el" href="PFitter_8cpp_source.html#l01488">SetParameters()</a>.</p>
</div>
</div>
<a id="a71fa2a64e6574b4582b21d4efe81991a" name="a71fa2a64e6574b4582b21d4efe81991a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71fa2a64e6574b4582b21d4efe81991a">&#9670;&#160;</a></span>fRunListCollection</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classPRunListCollection.html">PRunListCollection</a>* PFitter::fRunListCollection</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Pointer to preprocessed run data collection. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00307">307</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>, <a class="el" href="PFitter_8cpp_source.html#l01571">ExecuteFitRange()</a>, <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>, and <a class="el" href="PFitter_8cpp_source.html#l02680">PrepareSector()</a>.</p>
</div>
</div>
<a id="a691cf32e8aa08e70159450e3a3dc597b" name="a691cf32e8aa08e70159450e3a3dc597b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a691cf32e8aa08e70159450e3a3dc597b">&#9670;&#160;</a></span>fScanAll</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::fScanAll</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Multi-parameter scan flag: false=1D scan, true=2D scan (not fully implemented). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00320">320</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l02067">ExecuteScan()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="ab156ab2b66ed243065045e47ea8d5762" name="ab156ab2b66ed243065045e47ea8d5762"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab156ab2b66ed243065045e47ea8d5762">&#9670;&#160;</a></span>fScanData</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="PMusr_8h.html#a93e3841e16074fd3c7648d8fc7b742f4">PDoublePairVector</a> PFitter::fScanData</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Scan results: (parameter_value, χ²) pairs. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00325">325</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l01536">ExecuteContours()</a>, <a class="el" href="PFitter_8cpp_source.html#l01939">ExecutePlot()</a>, <a class="el" href="PFitter_8cpp_source.html#l02067">ExecuteScan()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00351">~PFitter()</a>.</p>
</div>
</div>
<a id="a15110762601d24e076e48c79ef056d16" name="a15110762601d24e076e48c79ef056d16"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a15110762601d24e076e48c79ef056d16">&#9670;&#160;</a></span>fScanHigh</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Double_t PFitter::fScanHigh</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Scan upper bound: 0.0 = auto (2σ above current value). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00324">324</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l02067">ExecuteScan()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a94301c0e357ffb912db6380e2dd1a76a" name="a94301c0e357ffb912db6380e2dd1a76a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94301c0e357ffb912db6380e2dd1a76a">&#9670;&#160;</a></span>fScanLow</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Double_t PFitter::fScanLow</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Scan lower bound: 0.0 = auto (2σ below current value). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00323">323</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l02067">ExecuteScan()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a0f965880a3bd8cb7489fedca61c45201" name="a0f965880a3bd8cb7489fedca61c45201"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f965880a3bd8cb7489fedca61c45201">&#9670;&#160;</a></span>fScanNoPoints</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">UInt_t PFitter::fScanNoPoints</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Number of scan/contour evaluation points (default=41). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00322">322</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l01536">ExecuteContours()</a>, <a class="el" href="PFitter_8cpp_source.html#l02067">ExecuteScan()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a3561550a7d70378a1b36971333d0d7a5" name="a3561550a7d70378a1b36971333d0d7a5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3561550a7d70378a1b36971333d0d7a5">&#9670;&#160;</a></span>fScanParameter</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">UInt_t PFitter::fScanParameter[2]</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Parameter indices: [0]=primary scan/contour, [1]=secondary (contours only). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00321">321</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l01536">ExecuteContours()</a>, <a class="el" href="PFitter_8cpp_source.html#l02067">ExecuteScan()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a81779d1412e22554f2656e28b9692c23" name="a81779d1412e22554f2656e28b9692c23"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a81779d1412e22554f2656e28b9692c23">&#9670;&#160;</a></span>fSector</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classPSectorChisq.html">PSectorChisq</a>&gt; PFitter::fSector</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sector analysis results (χ² vs. time windows). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00333">333</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>, <a class="el" href="PFitter_8cpp_source.html#l02793">ExecuteSector()</a>, and <a class="el" href="PFitter_8cpp_source.html#l02680">PrepareSector()</a>.</p>
</div>
</div>
<a id="a52f438ddd04f6d220d6777c589495c9c" name="a52f438ddd04f6d220d6777c589495c9c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52f438ddd04f6d220d6777c589495c9c">&#9670;&#160;</a></span>fSectorFlag</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::fSectorFlag</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>SECTOR command present flag. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00332">332</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>, <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="a14588efda750524a6dd0c85a13199919" name="a14588efda750524a6dd0c85a13199919"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14588efda750524a6dd0c85a13199919">&#9670;&#160;</a></span>fStrategy</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">UInt_t PFitter::fStrategy</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Minuit2 strategy: 0=fast/low-accuracy, 1=default, 2=careful/high-accuracy. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00303">303</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l01717">ExecuteMigrad()</a>, <a class="el" href="PFitter_8cpp_source.html#l01793">ExecuteMinimize()</a>, <a class="el" href="PFitter_8cpp_source.html#l02603">ExecuteSimplex()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<a id="aec873931299b3bfab3b0d07d3f3cc719" name="aec873931299b3bfab3b0d07d3f3cc719"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec873931299b3bfab3b0d07d3f3cc719">&#9670;&#160;</a></span>fUseChi2</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::fUseChi2</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Fit mode: true = χ² minimization, false = log-max-likelihood. </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00300">300</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l00931">CheckCommands()</a>, <a class="el" href="PFitter_8cpp_source.html#l00625">DoFit()</a>, <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, <a class="el" href="PFitter_8cpp_source.html#l02793">ExecuteSector()</a>, <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>, and <a class="el" href="PFitter_8cpp_source.html#l02680">PrepareSector()</a>.</p>
</div>
</div>
<a id="a56ae801deb287de03641d87b6461d9f8" name="a56ae801deb287de03641d87b6461d9f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a56ae801deb287de03641d87b6461d9f8">&#9670;&#160;</a></span>fYamlOut</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bool_t PFitter::fYamlOut</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Output flag: true to generate YAML output file (MINUIT2.OUTPUT → yaml). </p>
<p class="definition">Definition at line <a class="el" href="PFitter_8h_source.html#l00299">299</a> of file <a class="el" href="PFitter_8h_source.html">PFitter.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="PFitter_8cpp_source.html#l02094">ExecuteSave()</a>, and <a class="el" href="PFitter_8cpp_source.html#l00289">PFitter()</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>/workspace/LMU/musrfit/src/include/<a class="el" href="PFitter_8h_source.html">PFitter.h</a></li>
<li>/workspace/LMU/musrfit/src/classes/<a class="el" href="PFitter_8cpp_source.html">PFitter.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a href="classPFitter.html">PFitter</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.17.0 </li>
</ul>
</div>
</body>
</html>